Marc Andreessen famously said that Why Software Is Eating the World. There is a lot of truth in this but if we think about it a bit more it feels that, nowadays, the way this is happening is via machine learning and analytics. These are the tools that can move personalization to the next level and, with it, changing the way services interact with customers.
All that is just to justify why I've started the first lesson of Real-Time Analytics with Apache Storm, a free Udacity course. Recently I've tried to narrow down things I do to a few relevant ones, instead of being too spread out into many unrelated tasks. And, as I wrote at the start of the post, I truly believe real-time analytics is the next big software revolution (well, arguably is already ongoing, not that I'm a visionary of any kind) so, as a developer, any effort on it is worth the time.
So, how was it? The course has 4 lessons and today I've finished the first one. This is an introductory lesson in which you set up your environment and you learn some of the pitfalls of real-time analytics along what's the role of Storm in this field.
Code wise you have some very simple problems in which you modify existing topologies, but I feel these basic exercises help you getting familiar with Storm's architecture. Judging by the advice and some of the steps required, the lessons are aimed to people with minimal knowledge of Java and Maven but that's not bad (you will do that part faster if you know them).
Waiting to see how the second lesson works out for me.
You can find my solutions in Github.