How about:
5 apps in 50 weeks challenge? Write 5 useful, stable, well designed and tested apps in 50 weeks. Use whatever language/database seems easiest and most productive.
I understand the desire to learn a lot of new things, but the hard part of coding is not the first week. Practicing the first week over and over won't get you many useful skills.
The hard parts of development are the marathon (keeping your focus/motivation), and making everything actually perfect.
In the first week you can just get it to 'good enough'.
Subsequent weeks, you enhance things... this is where the flaws in what you wrote in the first week really come out.
This is interesting but the thought of installing and configuring all of the underlying platforms, languages, frameworks and databases (assuming we all have hardware to run them) gives me a headache.
I'd much rather see a 50 apps in 50 weeks with a much smaller base number of languages. Almost like a 50 design patterns/recipes in 50 weeks for a few languages.
I agree that the context switching costs are quite high, reducing the time actually spent on coding. It might be better to focus on one language/framework for five straight weeks, for example, while still changing specific design patterns/recipes per week. It reduces switching costs, gives devs time to grok new languages if need be, and should result in higher quality code for each weekly project.
You might also let devs post fragments of their code as they work on it, and links to their github repos. The reason is that a dev who is really learning a lot, not just exercising existing skills, might get far off track if working in isolation, like a plane that takes off at a heading that is slightly off, and ends up hundreds of kilometers from its target. Plus, it would give more time for people to discuss/debate alternate implementations, and that debate itself would also be a great source of learning.
Even though I signed up and am going to try my best to do something with this, I do agree. If you're targeting different languages / frameworks / etc, it seems like even something simple like doing a code kata in a brand new language is a decent accomplishment for a week.
Will the ideas for each week be suggested, along with what language to code in? Or is it completely up to the participant what and when they want to make?
I think a well-defined plan that everyone follows would be more useful, since we won't waste a lot of time trying to think of ideas, and we'll be more likely to hit all the points. Plus, it'll keep everyone on the same page, allowing people to share resources while trying to set up and learn the platforms each week.
Not sure if I'll manage to code for all these different plattforms, but what the hell. Other people will have the same problem and we'll all learn together.
I understand the desire to learn a lot of new things, but the hard part of coding is not the first week. Practicing the first week over and over won't get you many useful skills.
The hard parts of development are the marathon (keeping your focus/motivation), and making everything actually perfect.
In the first week you can just get it to 'good enough'.
Subsequent weeks, you enhance things... this is where the flaws in what you wrote in the first week really come out.