Every last Friday of the month we organize an internal Sourcelabs meetup. Main goal of our meetups is to gain new knowledge, share insights, get some hands-on experience with relevant populair technologies, but more importantly have some fun together while doing so.
Theme
Our meetups are focused around a specific theme, we identify topics and technologies we think are relevant to us (I will write a future blog post explaining how this process works). The theme of our last meetup was front end development with TypeScript and (the latest version) of Angular (https://angular.io/).
Mob Programming
We started the day by watching a GOTO Conf video about Mob Programming (play at least at 1.5x speed).
You might wonder what Mob Programming has to do with front end development? Nothing at all, but we wanted to experiment if this approach would be suitable for collectively learning new technologies. Since none of us used Mob Programming before, we wanted to have a common understanding of what this entails.
TypeScript
Since Angular applications are mostly written using TypeScript (instead of plain JavaScript), we thought it might be a good idea to refresh our TypeScript knowledge a bit. We started by watching a 12 minute basic TypeScript tutorial on youtube.
One of the challenges when learning new technologies is to find the right up-to-date and relevant content or (youtube) videos. After watching a video we are very eager to do some ‘hacking’ ourselves and try out cases that are not covered by the content. Each person would individually start ‘hacking’ some code but since we wanted to try the Mob Programming approach we did things differently this time.
Applying Mob Programming
We kindly asked Tim to become the ‘driver’ (the one sitting behind and operating the keyboard) and Arno to be the ‘navigator’ (the one telling the driver what to do next). Other people present are the observers. These roles rotate every 10 minutes.
One of the interesting things about Mob Programming is that it is really a group effort. When used for learning new technologies, everybody reaches the same level of understanding. While it might sound a bit inefficiënt at first, it is super efficient in the sense that you don’t need to verify afterwards if the group actually reached the same level.
Angular
After ‘hacking’ some code we decided to move on to the next topic: Angular. For this subject we used a youtube series about Angular. Most of us have some experience writing Angular 1.x applications, but Angular 2 and onwards is a whole new ballgame.
Again we used the Mob Programming approach here. We started by installing some prerequisites like the proper node and npm versions and the Angular CLI npm package. We used the Angular CLI to generate an Angular application and to add new components to the existing application as we progressed with the tutorials. We did not complete all of the videos in the series but managed to write some Angular components and getting to know the (infra)structure of an Angular application.
Wrapping up
We all felt that time flew by that day. For me personally it was really fun to see that Mob Programming can be applied successfully for collectively learning new technologies. It really helps keeping the group focused and gain the same level of understanding.
As usual we ended the day with some bites and (soft) drinks! A big thanks to all colleagues for making this day a success!