Normaly I’m not a sucker for new programming languages that pop up seemingly out of nowhere. I was notably skeptical about Ruby and the Rails hype and even with languages that the world needs – such as Rust and Go – I do support them, but don’t jump all over them right away. Dart however I’ve been weary about ever since it showed up on my radar a few years ago. Yet another language that transpiles to JS? Do we really need this? And if not, it uses it’s on VM? Yet another runtime? Not all very intriguing.
However, there are approaches I like about it and that puts Dart in a special place amoung JS transpilers, and on a position that it a close second to TypeScript in my own little world and its opinions. Dart is a language I’m genuinely curious about. It supports modern and hip paradigms while doing very well at being approachable as a multi-purpose language. Dart sees its kindred spirit in Kotlin, Swift and modern features in and around the web and JS worlds – and all this shows. In a good way. Concurrency – one of the hot and more difficult topics of todays multi-core computerworld – is nigh trivial in Dart and its concurrency primites bring down concurrency to Basic-level simplicity. That’s “Basic”, with a capital “B”.
The hottest thing about Dart is the latest haven it found in Flutter, a cross-plattform client toolkit that chose Dart as its programming language. Here is where things get interesting. I did non-trivial Flash/ActionScript2 development in the zero-years. and Flutter is the first time a serious potential successor to Flashs concept of truely write-once, run everywhere cross-platform development has come around. I never thought this would happen, but here we are. There is another solid reason I start feeling excited about development again and why I haven’t been as excited about a PL in a long time as I am excited about Dart right now.
VDOM hype still not trusted all that much
The web these days still seems stuck in concepts that are neat in narrow cases, but apear clunky and tacky. I still don’t know what to make of the VDom craze with Angular, ReactJS and Vue bringing on a development model more akin to some massive convoluted Java Stack than the nimble agility I would rather associate with developing for the web-stack. Flutter does so many things right, it’s hard not to be ingrigued about the zero-fuss toolstack Google seems to offer with their newest brainchild. Component-centric (“Widgets” in Flutter) cross-plattform development with a fast runtime and a very low-level glue layer to the underlying system. It works and has Dart as a language back in a more prominent position, tied to the newest kid on the block.
I’m going to give Dart and Flutter a spin and see how productive I can really be with this new power-combination that is gaining so much attention right now. Stay tuned.