Have you ever had a conversation with your friends which goes something like this?
You: Let’s go grab some burgers for dinner tonight!
Friend 1: Not burgers, anything else is fine.
Friend 2: Thai?
Food is something we’re very passionate about here at Algolia (along with coding). In fact, there’s an animated discussion about where we should go for lunch every single day – pretty much like the conversation described above.
What Did We do at PolyConf?
PolyConf, now in its eleventh edition, is a tech conference for programmers interested in a polyglot approach to software development. This year’s edition was held in Poznan and we had the chance to enjoy three intense days full of awesome talks about programming languages and technology. We also had the opportunity to host a workshop (more on that later)!
Back to the workshop. With Algolia being a polyglot programming company itself (we have over 15 API clients!), it wasn’t very hard for us to work with a topic which could interest programmers with a large variety of skillsets. We decided to host a workshop which would teach participants to build a full-stack application using different technologies that we use daily.
Introducing Project Burger
After a couple of discussions we decided to build Burger, an app which can be used to find lunch venues with people who have similar culinary tastes – a sort of meetup app for meals if you will; we wanted to mainly demonstrate how to integrate different technologies and languages to build a conceptual -yet plausible- app from the ground up.
Here’s a small demo of the App:
We implemented the app by using React, Redux and a REST API Service by using Scala, a JVM functional / Object Oriented language; we also indexed all the venues in Poznan by using FourSquare’s API in order to make sure it had some Algolia magic.
That way we had all the ingredients for our workshop: a little bit of Back-end, with some Front-end, topped off with an overview of how to integrate these technologies with a 3rd party API such as Algolia. Et Voila! Burger was born.
What We Learnt Along the Way
It was our very first time organizing a 3-hour workshop and we learnt quite a bit along the way. Here’s a brief recap:
- Keep the scope small
We didn’t quite realise while building Burger that it would probably be a bit hard to build an entire app from scratch in 3 hours. We ended up almost running out of time and just about managed to cover all the topics we needed to in order to have a functional application at the end. This is also because we tried to cover too many topics without accounting for enough time for the participants to apply them.
If given the chance to redo it, we’d probably narrow the scope: go for choosing either of the two – front-end or back-end.
- Focus on concepts and material
If we could go back we’d probably spend more time preparing material and exercises to keep participants engaged and involved until the end without focusing too much on the implementation details.
Integration examples are great
Integrating a third party API into an application is something that every developer knows by heart; it’s a great example of how leveraging existing libraries can help achieve speed and productivity in such a short amount of time.
PolyConf was a great experience for us and we were really lucky to find ourselves amidst coders with very varied skill-sets – in fact, after our workshop, we attended several sessions on functional programming and we found ourselves newly enriched with knowledge of Clojure and Elm – we actually hacked a possible first draft of an Elm Algolia Client!
Apart from the conference, we also got a bit of time to do some sightseeing and of course ate our fill of Burgers:
How could we not?
Our Favorite Part
Organizing a successful workshop is no easy job but we believe we’ve learned some important lessons for the next round; we also hope that some of the attendees will try to apply the ideas we exchanged in their work or in their personal projects (and let us know, please!).
As developers, we absolutely loved PolyConf: interesting talks, nice food and a lot of ideas coming from different coder communities. It was a pleasant experience and we’d definitely like to thank the organizing crew, particularly Zaiste and Martyna. Thank you for making it happen! See you next year!