Scala University is an initiative of Scala practitioners from Pune. It was started by developers at ThoughtWorks who are passionate Scala users for many years. The idea is to promote continuous learning and teaching of Scala in the form of free public workshops. As of now, we are specifically interested in helping communities in and around cities where ThoughtWorks has offices.

How did it start?

We are using Scala in anger for a long time. In the process, we have learnt a lot about Scala and also about good programming practices. We have been using many open source tools, libraries offered by wonderful Scala community. Many of us have greatly benefited from the Coursera courses on Scala and Reactive programming. The whole journey has been fun. “Scala University” is an attempt to give back to the community.

As a first step, we 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
  • We selected 30 candidates 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 grad to people with 12+ years of experience.

The workshop also generated huge amount of goodwill for us in the local community. Enthused with the success, we conducted our 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. We are talking to folks in Hyderabad, Singapore and Bangalore ThoughtWorks offices to see if we can cover those cities next. You can keep track of list of all events conducted so far.

How does it work?

The Scala deep-dive workshop that we are currently offering covers language fundamentals with hands on assignments. The workshop is always planned around the weekend. So, each attendee (which include ThoughtWorkers) has to invest 2 working days and a full weekend for the workshop. People have suggested compressing the workshop to 3 days, but we feel that you need at least 4 full days to give a complete perspective of the basic language.

Our colleagues from local ThoughtWorks offices are critical for organizing and logistics. Tushar Garg from Gurgaon and Aravindh S from Chennai have driven the respective workshops. Local office colleagues also help with the code reviews. Reviewing so many code submission is the most difficult task. Kudos to all our colleagues who helped!

We announce the workshop 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. In our experience, 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, we 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 which is scheduled on 15-August.
Next steps

We also want to do this in other cities where ThoughtWorks has offices. And we 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 us know in which cities you would like to attend these workshops. Based on that data, we may also plan a workshop in cities where ThoughtWorks does not have a office (for example, Mumbai or Nagpur).

Many have requested us to do workshops on advanced/focused topics. We are thinking of covering following topics eventually:

  • Reactive programming (futures, promises, streams and actors)
  • Tools (Sbt, Play, Akka)
  • Big data computing (Spark stack)

We want to hear of your preferences!