Intro

It’s November 20th, 6pm on a friday, a perfect time to start a weekend project: The farmhack 2020. I’ve teamed up with Manuel Blechschmidt and Julian Schroeter but it was clear from the beginning that we were open and looking for additional team members. We had already started to think about possible topics like 2 weeks before while talking about possible collaborations like the ISOXML Service . After iterating through several ideas, we came up with the following rough idea: „Find good spots to open a popup restaurant during corona“. Honestly, Manuel and Julian did the major research part and advised to use mapbox with deck.gl for visualisation and tensorflow for the optimization part, an awesome good combination, which is fun to play with (as Julian has done afterwards).

In the initial call session, Alexander Eistrup, Florian Tröber, Jamina Zaugg and Fabian Helmke join our team and we start building what will be called „PopupPlaces – Orte finden, Kunden binden“. With a team of 7 and a time of less than 1 day, we decide to split into a business team and a development team. Manuel leads the development team, Julian, Florian and I are jumpers, we switch team every now and than to keep both teams in sync.

The development environment

As mentioned above, we use mapbox, deck.gl and tensorflow, (so, we’re on a HTML-Website that includes JavaScript). The whole project runs within the browser, there is no own backend at all. For a hackathon that’s a real advantage as the setup requirements for each team member are very low and we can just start. As IDE we use Visual Studio code with the Live share plugin to work on one code base. By committing the codes to github we make sure, that everyone could potentially fork it and add own features. However, by using the Live share plugin, we can just work on Manuels code base. As Manuel forwarded a browser sync port to a publicly available server, we can not only see the code but a live update of the page every time we save the file.

Remote mob programming setup

My developers experience

We accept Manuels idea to develop in mob programmings sessions, so each team member gets 15 minutes of „driver time“ to work on the code while the others are advisors or issue researchers (and sometimes also living ducks for rubber duck debugging 😀 ). It’s my first mob programming session and I have to admit, that it’s definitely an effective and especially collaborative way of development. For testing mob programming, it turns to be an advantage that I did not research the technology stack as much as Manuel and Julian, this way I can experience the role of „the one person to ask dump questions“. Not my favorite role though, but for the test quite useful. Sometimes I experience a moment of „wait, what did he do there?“ or „where did he find that solution?“ but that’s not really an issue. I can just ask for the source of the solution and if I didn’t get what they did there after – at a maximum – 45 minutes, I can just check back when it’s my turn. The same happens, when I switched to the business team for a while and try to get back into the code when returning to the development team. Most understanding issues are solved quite fast and we make a good progress.

Remote mob programming however requires some discipline. While in a normal mob programming session, only one person has the physical keyboard on his hands, in a Visual Studio Live share session everyone can potentially add code at any time. So, after a while the drivers sometimes wonder, why our page looks different from what they expected, just because „someone“ (… sorry! 😉 ) had an idea that „could not wait“. This access issue can be handled in the Tool (Read/Write-Access), but for a hackathon it’s a funny experience.

The user interface of PopupPlaces

Business

The business team checks the initial idea and first comes up with a pivot for the after-corona-phase (yes, we are positive people and there’s still some hope 😀 ): While our first customers are restaurants to setup improvised popup restaurants, food trucks are an evolving business concept that is a perfect fit for our technology. We create a rough setup of a business model, a pitchdeck as well as a rough business website.

Extract of the pitch deck

The pitch and a woohoo

It’s after 6 pm on monday, November 23rd, the results are presented, finally time for our pitch (anyone beating my high score in saying „genau“?). It turn’s out, that „genau“ is not our only high score: We win the farmhack2020… woohooo.

At this point, it’s time for a big thank you to Manuel, Julian, Alexander, Jamina, Florian and Fabian. Great team and a good job, I had a lot of fun this weekend 🙂 .

Conclusion

Let’s sum it up

  • Farmhack is definitly worth it. Not only is it a hackathon – a thing I would advice anyone, unimportant if you’re a coder – but I especially like the focus an food and agriculture.
  • Mob programming rocks! You’re not lost in code, you work with other people and the mess of bug research is solved way faster if multiple people look for solutions
  • Live share programming rocks but needs discipline.
  • DeckGL, MapBox deliver great user experience with maps
  • Tensorflow might be worth a deeper look. The start is not too hard, but actually it’s a bit complex for just-a-day projects to get really useful results out of it
  • Teams win! Maybe, one coder had built his solution faster. Maybe a BWL geek (do those exist?) would have created the perfect business model. But only the combination of our teams lead to this success.

What’s next?

„Never change a winning team“ is a good advice here, so Manuel, Julian and I will try to collaborate in the future, e.g. by developing the ISOXML Service or extending the project of PopUpPlaces (give a request and a proper funding for that one). If you’re looking for a team to build a prototype within a week, feel free to contact me.

Thanks for reading, feedback for this very first blog post ever is very welcome.