Hacker News new | ask | show | jobs
by zukzuk 961 days ago
Typescript has a lot of momentum on all fronts and is almost certainly the future of Javascript.

The big problem is that it still requires transpilation, which can set up all sorts of shitty traps. Not to mention that the Javascript ecosystem in general is a horrendous mess, which Typescript on its own can’t fix.

1 comments

The future of JavaScript is in the past. Get rid of all the stupid transpilers and frameworks and just use plain JavaScript in the browser.
Yeah once they implement the proposal to add types we will
The whole point of JavaScript is that it's dynamically-typed. If you want static typing just use C++ or any other established programming language.
> it's dynamically-typed

Yet, most of the code people write has statically defined types.

Anyway, the whole point of JavaScript is that it runs on the browser. Outside of that, it has no strong points. Even though most of them are not weak enough to immediately abandon the language, its type system is one of the weakest.

Javascript's dynamic typing is fine if you aren't a really shitty programmer.
I’m not sure how people are supposed to do that in the browser. This feels like an excessively dismissive comment.
Have you not heard of WebAssembly?
WebAssembly is not without tradeoffs either. I'm not an expert, but it's often heavier due to bundling the native language's stdlib; it's annoying to interop with the browser environment because that's still JavaScript-tailored; it's also just hard to write code that can be compiled into WASM (e.g. in Rust, it needs to be `#[no_std]`)
With possibly the exception of Typescript, I agree. Practically all the tools commonly being thrown at JavaScript today are destroying the developer experience and causing more problems that begat even more tools. It's easier than ever to use plain JavaScript in ways that use proper scoping, but so many developers today speak as if this is impossible ("it just doesn't scale bruh"). That's how you know you're talking to someone who didn't write software before ~2011. It's fine if someone prefers to use said tools, but the idea that more tools are are necessary is an example of poor engineering.