---
post_title: Spawnfest 2017!
author: dreat
layout: post
published: true
post_date: 2017-12-12 20:31:22
tags: [archived, spawnfest, hackaton]
categories: [old_blog, hackatons, spawnfests]
---
Last weekend (9-10.12) I took part in <a href="https://spawnfest.github.io/" target="_blank" rel="noopener">SpawnFest2017</a> and I've got some thoughts to share
<h3>What is it?</h3>
SpawnFest is a hackaton (programming challenge to write a project in some limited time) that was all about BEAM - Erlang's virtual machine. All projects have to run on top of that (so you had to write it in Erlang/Elixir/LFE or something other from this family). You could add JS for frontend, use some third-party libs, etc. This was first edition in 5 years, so I had to take a part as I'm big BEAM enthusiast.
<h3>Warning, personal stuff below!</h3>
It was my firs (organised) hackaton. 48h deadline was quite stressful, and a lot of things didn't work. Being at beginner+ level didn't help either. But it was so much fun! I worked with my 3 friends on silly idea that we managed to bring to life. I learned a lot about not only Elixir, but developing and working under that kind of a stress. Memes were created and we never lost good spirit. A lot of code created was poor quality, but it didn't matter. We did something in language we're excited about, together, in less than 48 hours. That was magical. I cannot recommend enough taking part in SpawnFest - it was well organised, everyone was welcome and all the good things I cannot describe with words. It felt really awesome! Funny thing, when this all was over I was reminded that there are winners and prizes (Judges are still voting), but for me I already got the best prize - which is experience from this event
<h3>So, what did we do?</h3>
Application to monitor plants. We planned to have thermometer and proximity sensor, but we didn't manage to get it work in time, so we added buzzer to hydration and humidity sensors. This app (written using Nerves) communicated from Raspberry Pi to our webapp written in Elixir, that was deployed in Heroku. What was shocking - how damn fast it was! Below I'll paste README description of short video demo that we made.
<blockquote>There's Elixir app with Phoenix fronend opened, showing sensor output. Sensors are connected to raspberry pi. When sensors are dry it will show cactus, when wet it will show water drop. First there's humidity sensor - if we spray it, the second image will change. As it was not dried properly you can see some changes later, as water drops flows down the sensor. Next there's hydration sensor put in the glass of water - first image will change. Below the images are charts with sensors data grouped by hour.

Finally "warning" button is pressed, and buzzer turns on. "Warning" button is a switch, so pressing it again turns the buzzer off.
</blockquote>
See you next year! :)
