Hi, The IPMC does share its experiences and tools it uses, and it's up to podlings (with their mentors help) to find out how best to use them for their releases. There's unlikely to be a single solution that fits all podlings without a lot more work on the podling side, which would probably cause some loud objections.
Tooling/automation can't catch all issues with the LICENSE/NOTICE and some other issues. Plain text is hard to parse and understand by computers, it often contains errors and is unclear or imprecise. Even if we moved to SPDX, (or something similar that is easier for code to parse), it would be much more work for podlings than what we currently do. I know that being a bunch of people who like coding, we tend to think that a solution to an issue can be solved by more code. Most (more than 1/2) of the severe issues caught by IPMC voting on releases would be very unlikely to be caught by tooling. (For examples see recent votes). Release checking tooling and automating that are useful tools, and will undoubtedly catch some minor and some severe issues. I'm all for using them, but the output of tools like Rat (and others) require tuning and interpretation, and currently, I don't think that on their own can replace human eyeballs or catch all issues in a release. These tools do have some room for improvement, but tooling is complementary to manual inspection and only enhances it, it doesn’t replace it. People (adult learners) also learn best by doing, offloading that to automation means that a podling may not learn the essential values behind why a release needs to be the way it is or may not even care what those values are. Is this what we want? While some podlings may have an issue with the first release, past this the majority of podlings don't have any major issues. Around 80% of releases pass the IPMC vote, ignoring the first couple of releases that means about 90-95% of all releases pass. So what we are talking about are the exceptions to what commonly occurs, and I think the problem needs to be framed in that context. The main areas I believe where this can be improved are mentor engagement, mentor education and looking into how those values, skills and knowledge are transferred to the podling. Better documentation, relaxing ASF policy or putting off stuff until graduation might improve things, but propobably doesn't solve the core issue. When you ask an expert baker how to make bread, they say "just add yeast and flour and water, kneed, let rise and bake", they may not even give amounts or times. They know from experience what to do, and may not even be conscious of that knowledge or of the reasons why they do things in a certain way. They will change the ingredient amounts based on the current conditions, how humid it is, the type of flour, how it feels when kneading etc. Again, they may not be conscious of doing it, let along be able to communicate that information clearly to others. There are of course exceptions to this, but in general, they seem to think that it's intuitive and easy to do, and may be puzzled when other people don't get it. That's why experts sometimes don't make the best teachers or the best people to pass on their experience, skills and knowledge. Adult learners (in general) want to know how to do something just before they do it, they tend not to want to know the theory behind it, but want simple, practical guidance. They also learn in different ways; having it written down is a start but not enough. The material with the best learning outcomes engages people in multiple sensory ways to impart the skills and knowledge required. The best way of learning how to do something is to try it out. So back to making bread, you can give someone a step by recipe to work with and someone will be able to make bread. Their first try may not work, but they should get better with each try, especially with help. It may not be as good as made by the professional baker, but it is likely to be good enough to eat. If you want to learn how to make releases, I would suggest you read about the Apache Way, read ASF policies, go listen to a couple of talks on this from previous ApacheCons, look at previous release votes here on this list, and ask your mentors (or IPMC) for advice, but most importantly try doing it for yourself. Once you worked out the best way to do it, then start automating that. Thanks, Justin --------------------------------------------------------------------- To unsubscribe, e-mail: general-unsubscr...@incubator.apache.org For additional commands, e-mail: general-h...@incubator.apache.org