Most developers implemented Granny first in Java and Spring, according to our staff dev guide for a comparable experience. Then after many moons, they implemented it in their assigned "new" language. Aside from the overall guidance above (be "quintessential" and "conventional"), nothing was dictated, like "use higher order functions" or "declare your types." Then each developer was asked some basic questions.
- What makes this language special?
- What did you like about it?
- What frameworks and runtimes did you use?
- What IDE, editor, and so on did you use?
- How did you build Granny?
- Now that you're done, would you find it easier to implement Granny again in Java (or whatever language you are most skilled in) or in the new language we assigned you?
- What things did you learn that you will take back to your "day job"?
- Where did you get your questions answered?
- Would you recommend using this language on a project; if so, where/when?
- What was the biggest drawback (besides lack of familiarity)?
Following you will find the takeaways from this experiment in programming language transition, as told by each Granny's Addressbook developer.