I’m a big fan of communities, which is why I enjoy being part of them a lot. I have been active at a local Inline-Speedskating Club for more than 10 years now and just thought it would be time for helping at another community as well. This second community turned out to be the CoderDojo Linz, which does great work in my opinion. I teamed up with my friend Matthias, who was a mentor already, and got my feet wet very fast by doing a workshop about Android Development for kids together with him.
I never did a workshop like this before and I have to admit that I was freaking nervous before it started. So I tried to prepare very nicely and listened to another session to learn about the basic structure of those events.
Ok, so now I started talking about workshops, the CoderDojo and preparation, but what is all of this actually about? The CoderDojo is a club for kids and teens from 8 to 17 years who want to (learn to) code. In general there are regular meetups where the participants can work on various projects. The mentors are there to help them wherever it is needed. Due to COVID-19 it is not possible to make those meetups at the moment. Therefore the CoderDojo is held online. There are some workshops each week, where the mentors present various topics to the kids. All of this is organized in a very nice and relaxed manner, which makes joining and helping there a lot of fun.
Choosing a Topic
Choosing a topic was quite easy. As you may know from one of my previous posts, Matthias and me are currently a lot into the Map Reactions Project that phonetically maps a sentence to a route that sounds similar and can be displayed on a map. Thus, we decided to build a simple app that acts as the frontend for this tool. When opening the app the user can enter a phrase which is then phonetically mapped to a list of places that sound similar. This list is fetched from the already existing backend and then displayed as a route on a map.
Preparing the Android App
As quite some time passed since I worked as an Android developer I decided to build the complete app upfront to be nicely prepared for our first workshop. Just after downloading Android Studio and creating a new project I realized that a lot has changed in the last years. The new things I noticed immediately were the Navigation component and the new layouting options which I enjoyed a lot. Also the WYSIWYG editor for resource files improved a lot, which is nice for a workshop with kids. A very positive thing I have to point out is that those features really make it easy to get into Android development for a beginner.
As you can see in the pictures below the app consists of two screens. One where the user can input a phrase and a second one, where he sees the route for this phrase on a map.
I spent quite some time to style the app as I wanted to build a very nice looking app that the kids can proudly present their friends. After discussing it with Matthias we decided to keep the app as simple as possible when building it together with the kids, which means that (at least for the beginning) all this styling won’t be part of the workshop.
After preparation was done, it was time to finally do the workshop. A few hours before I tested my mic and audio and everything seemed to be good, so I was ready and waited for it to start. When the meeting started, guess what, my mic and audio weren’t working. Fortunately Matthias could start the workshop and I came up with a workaround to “fix” everything. So about a quarter of an hour later I could finally join as well.
There were not too much participants in the workshop, which was on the one hand a little bit disappointing but on the other hand it was great as the two kids that joined were quite experienced and we could really make some nice progress. Actually we managed to create the app with navigation, the phrase input and also could fetch the route from the server and parse it at the end of the first session (2 hours).
The main topic of the second session was to show the route of the fetched places on the map. Again two highly motivated kids joined and we managed to finish the app within the workshop. This means we used osmdroid to display the places we fetched, created some overlays for the markers and the route and even asked the user for the permission to store the map tiles on his phone.
I really enjoyed the workshops with the kids. Especially the second one was nice as they asked a lot of questions and also suggested some nice ideas. Another recap of the workshops is available on the CoderDojo website. There you will find instructions on how to implement the app (including styling and some other bonus tasks) yourself. Please note that those instructions are written in German.
I joined the CoderDojo Linz and did two workshops about Android App Development with my friend Matthias. Together with the kids we built an app that phonetically maps a sentence to a route that sounds similar and can be displayed on a map (see Implementing XKCD’s Map Reactions). The (german) instructions to implement the app are available here. It was a great experience for me.
Originally published at https://ksick.dev on August 17, 2020.