The analogy of a "horseless carriage" kicked off a cascade of comparisons in my head of how businesses are handling not only mobile, but distributed applications and more. Interesting article.
I should add that I do appreciate how the article encouraged more than one language, and emphasized that you need to think through how and with what kind of development do you want to make money - not just 'which language'...
Dare I be the first to offer what some may think of as cliche advice: find the language(s) you love working in first, then make money at them (and that might require moving to a different market). I was a data warehouse architect for a while - and was paid more than most of my time as an app dev, but I was miserable doing it. Then I spent time in all layers of .NET (C#), and while I enjoyed it, my passion is really open web tech (focusing on the client mostly). In Nashville, .NET is one of the top money makers for devs, so whenever I discussed moving out of .NET to focus on HTML/js, the conversation always turned to "but .NET pays the bills!" Thankfully I can say that I've landed a job that lets me do what I love, not stressing over "OH man, I have to learn platform X - which I hate - just to the bills." My own personal version of hell would be having to specialize in SharePoint....
I've had the chance to see this project develop over time as the author has explored different approaches. A lot of what I currently do (using underscore templates primarily, but some others) is already very model-driven, so the possibility of DOM-fragments-as-templates is something I find very compelling. Excited to see this grow....
Well said. I've used the second pattern you described as well. If I find myself in a situation where I'm tempted to treat the message as mutable, it usually indicates I've hit the point where I need to (potentially) use some sort of transformation pipeline, and the steps in that transformation should ideally be encapsulated inside a component and not publicly exposed on the bus itself.