DEV Community

Discussion on: What's the worst part about the JS ecosystem?

 
pigozzifr profile image
Francesco Pigozzi

Thanks for your reply, very helpful!

Long live TypeScript! πŸ›‘οΈ

Thread Thread
 
jonrandy profile image
Jon Randy πŸŽ–οΈ

I hate Typescript

Thread Thread
 
pigozzifr profile image
Francesco Pigozzi

I used to think the same but I realised I wasn’t hating TypeScript: I was hating its lack of good documentation, its unjustified complexity and its learning curve for newcomers.

The hatred decreased with the increase of my knowledge and now, it’s hard to admit it, I can’t use plain JS anymore even with the easiest pet project.

Thread Thread
 
jonrandy profile image
Jon Randy πŸŽ–οΈ

Nah, it's definitely TypeScript for me

Thread Thread
 
pigozzifr profile image
Francesco Pigozzi

Lol, got it πŸ˜…

Future readers might find more details useful πŸ‘Œ

Thread Thread
 
peerreynders profile image
peerreynders • Edited

If you open "JavaScript the good parts" …

Douglas Crockford, JavaScript - The Good Parts, 2008; p.2:

JavaScript is most despised because it isn’t some other language. If you are good in some other language and you have to program in an environment that only supports JavaScript, then you are forced to use JavaScript, and that is annoying. Most people in that situation don’t even bother to learn JavaScript first, and then they are surprised when JavaScript turns out to have significant differences from the some other language they would rather be using, and that those differences matter.

The bulk of "JavaScript the Good Parts" (before those appendices) was about dealing with JavaScript successfully on its own terms - which relied heavily on leaving behind any preconceived notions carried over from other programming languages.


I strongly dislike giving beginners bad habits of working without types.

On the surface the argument to start with a statically typed language for the sake of "safety" makes sense but people who have dedicated their career to computer science education have come to a different conclusion; The Structure and Interpretation of the Computer Science Curriculum:

The lack of a type system means that we don’t have to spend energy on finding and explaining type errors with the same care with which we explain syntax errors. Better yet, when we use Scheme to teach design principles we can informally superimpose a type system and use the types for program design. In particular, it is easy to define and use sets and subsets of Scheme values. This comes close to students’ intuitions about classes and subclasses in object-oriented programs and thus provides a good transition for the second course.

I haven't noticed that TypeScript compels people to actually think in terms of types which is the important part of program design. Just like working with an OOP doesn't teach OO, working with types doesn't automatically foster thinking in types. Dynamic typing doesn't impede thinking in types.


Future readers might find more details useful πŸ‘Œ

I left my take in this comment earlier this year.