Scala University: A free continuous learning initiative for the Scala Programming Language by ThoughtWorks Pune
Scala University is an initiative of Scala practitioners from Pune – who want to drive continuous learning/teaching of Scala in the form of free public workshops. It was started by developers at ThoughtWorks who are passionate Scala users for many years. As of now, Scala University is specifically interested in helping communities in and around cities where ThoughtWorks has offices.
How did it start?
The people who started Scala University felt that they have benefitted a great deal from the open source Scala Language, the wonderful Scala community, and from other free and open resources around the web, for example, like Coursera courses on Scala and Reactive programming. They felt that they should give back to the community, and that is why “Scala University”
As a first step, they conducted a 4-day Scala Workshop in Pune on 20-23 June 2014. The event was “free” for all those who could clear a coding test. The response was overwhelming:
- It got 350 registrations
- 95 of them submitted the coding assignments
- 30 candidates were selected after code review
- 29 of them confirmed and attended all 4 days of the training!
- Along with them, 10 ThoughtWorkers also attended, taking the total batch size to 40
- Apart from developers there were 5 Quality Analysts and 1 Project Manager
- The experience level varied widely: from 1st year engineering grads to people with 12+ years of experience.
The workshop also generated huge amount of goodwill in the local community. Enthused with the success, they conducted the 2nd workshop in Gurgaon on 24-27 July. The numbers were similar (around 25 people including 6 ThoughtWorkers attended). The 3rd workshop is scheduled in Chennai on 4-7 Sep. Workshops in Hyderabad, Singapore and Bangalore are being considered. You can keep track of list of all events conducted so far.
How does it work?
The Scala deep-dive workshop currently covers language fundamentals with hands on assignments. The workshop is always planned around the weekend. So, each attendee (which include ThoughtWorkers) have to invest 2 working days, plus a full weekend for the workshop. People have suggested compressing the workshop to 3 days, but it needs at least 4 full days to give a complete perspective of the basic language.
Folks from local ThoughtWorks offices are critical for organizing and logistics. They also help with the code reviews. Reviewing so many code submission is the most difficult task.
The workshop is announced around 1 month in advance. Roughly 25% of those who register submit the code, and 30% of those who submit the code qualify for the workshop. The course turns out to be ‘intense and fun’ for smart developers.
What are the rewards?
Learning and teaching Scala is a joy which in itself is a big reward. But there are other good side effects of this initiative:
- Building local community around Scala
- Building internal Scala capability within ThoughWorks
- Positively influencing hiring. Some attendees from the 1st workshop applied to ThoughtWorks, and ThoughtWorks ended up making 2 offers!
- Companies in the local markets find out about the workshop with requests for doing a dedicated commercial training.
- The workshop model has inspired similar trainings by other ThoughtWorkers. See Agile Dev Bootcamp w- hich is scheduled on 15-August.
Scala University also wants to do this in other cities where ThoughtWorks has offices, and they want to do multiple batches at each location if there is enough interest. If you are are a ThoughtWorker interested in doing a batch of “Scala University” in your city, please get in touch. If you are a potential attendee, please let them know in which cities you would like to attend these workshops. Based on that data, they might also plan a workshop in cities where ThoughtWorks does not have a office (for example, Mumbai or Nagpur).
Many have requested workshops on advanced/focused topics. The following topics are being considered:
- Reactive programming (futures, promises, streams and actors)
- Tools (Sbt, Play, Akka)
- Big data computing (Spark stack)
If you’re interested, let them know about your preferences