Programmable LED strips are a great way to have fun. Their protocol is easy to implement, by simply writing a bit pattern to an SPI bus. So it's the right thing for kids to get into programming? Wrong! especially if you want to start animating the LEDs. Follow me in my hobby project and down into my rabbit hole. What started as a DSL developed for and with my son grew into a fully fletched library. This talk is not only about the library itself, but also about the learnings on the way. How to * create a DSL * creatively (to not say mis-)use 'use' * do some AST magic to make things easy AND flexible * auto-generate functions (and the issues you might run into) * create mix tasks * Issues in redefining functions
Matthias is an Electrical Engineer by education with more than 20 years of software development experience (>10 years mobile creating a mobile operating system, >10years big distributed systems) working in various roles: researcher, developer, architect, engineering manager, consultant, … . Responsible for systems in production, worked even with undocumented/untested legacy systems (hacked toghether over 10years) and brought them back from the dead. Currently helping to build up Tesco's new development site in Budapest which is growing rapidly He likes to think outside the box and learn from completely unrelated domains. For example, long before Docker appeared (~2002), he was fascinated by how Industrial Container Ships are standardized and operated and thought that we should operate software the same way. He see parallels between Information Theory and how we communicate which explains why our communication often breaks down even before considering psychological effects (He gave a talk about it in Feb 2018) He was a reviewer of the book “37 Things One Architect Knows About IT Transformation” by Gregor Hohpe. He likes to collect and share ideas. He resonates with the idea of journeyman years. So far he visited more than 30 different countries, lived in 6 of them, and speak 5 languages (apart from computing languages, otherwise that number would be much higher). He believes in constant learning and direct human interaction, but avoids to leave too many social media traces.