4 ms·
I really don't understand why some developers are so happy with Typescript. Javascript was already years ago highly improved with transpilers like Coffeescript,
by uranian 10y ago
I really don't understand why some developers are so happy with Typescript. Javascript was already years ago highly improved with transpilers like Coffeescript, Livescript etc..
IMHO this whole Babel, ES5, ES6, ES7, ES???, Typescript thing with it's countless options is much worse than simply Coffeescript with a dynamic type checker. I use the latter in quite some production environments currently. No need for Babel, Typescript, linters etc.. It really makes my life way, way easier, less npm modules, less bugs, less lines of code, much more readable, etc, etc..
And please, before you start preaching all those 'amazing' benefits of Babel, Typescript, linters, ES5, ES6, ESx, I come from that misery and it sucks!
- kgabis 10y agoWould you rather have your program fail at runtime instead of using a statically typed language? It really baffles me why so many people prefer dynamically typed languages and write large projects in them.
- uranian 10y agoMy apps don't fail at runtime because of type errors, at least, not that I remember. It really baffles me how many people need Typescript to avoid having type errors at runtime, what the hack are they doing wrong then? This is not C++, we only have a few types in JS, really hard to mess up for me.
- kgabis 10y agoAre you serious? You can define custom types in javascript, nobody programs using only primitives like strings, numbers and booleans.
- choward 10y agoWhat exactly does coffeescript buy you besides the sugar? How does it prevent bugs?
- uranian 10y agoIt buys you a proper modern language that even the creator of Javascript praises. It prevents bugs because it's a better language than Javascript in many ways. Just write a few projects in it and you'll see for yourself. Functions in Coffeescript: -> => Functions in Javascript: var myFunc = function(){}; function myFunc(){} var myFunc = () => {}; in objects: myFunc: function(){} in classes: myFunc(){} Inconsistency in code is a recipe for bugs.