Chances to Learn
Most aspects of the first round between Dancer and Mojo are covered in Alexis' post - a recommended read. However - with your approval, or not - I'd like to add another side of it, our overall developer understanding of the contest.
While it seems fun to "win" something, what we the developers (and I'm assuming it's pretty much the same for the Mojo people) liked most about the competition was that we'd get a complete understanding of the end-user learning experience.
Here are a few things we understood (and most corrected by now):
- A user might be a Windows user. We need to make sure the tests pass on Windows as well.
- A user might miss the "strict and warnings are on by default" in Dancer (the way Moose and Modern::Perl do). It should be clearer in the documentation.
- A user might want to remove warnings on production code. Regardless of how I (or others) might feel about "warnings" in production, each user might see it differently and they should be able to control it, easily.
- Strict doesn't get the same treatment though. :)
One really important lesson is that: if a user did something wrong - and they're not complete idiots and have a relatively fine understanding of Perl - it's probably our fault.
Since we put Dancer up on the community development dancefloor, we've accepted quite a few patches from people on documentation. People who email the mailing list or come to the IRC channel and ask for clarifications - once had the issue clarified - are kindly asked to contribute what they understood back to the documentation to help others who would be in that situation. This overlaps the lesson mst tried to teach in a post a while back.
Winning the competition would be a nice achievement but compared to the intellectual might of our adversaries and their immense experience in this field (along with a longer running project), we don't expect to necessarily win the gold here. However, our gold is measured by improving our project: understanding what the user wants, what they understand, what they try to do and where they've failed.
And that is a gold medal which can be shared by more than one party. :)
I the part about use strict and warnings really a problem? I mean either you add it yourself, which AFAIK doesn't cause problems or it enabled it for you. In both cases you should be fine. Additionally it's in the man page. I agree the Cookbook isn't the right place, but the whole manual is important.
I agree with you, if you ment it should be put in the main Dancer manual, but in big fat and as an additional chapter or something.
I also hope this problems gets solved, because more and more modules require Modern::Perl.
Maybe strict and warnings could also be enabled by default by 'use $recent_perl_version;', so you have to disable it, if you don't like it.