|
|
|
|
|
by gavinray
2129 days ago
|
|
> TypeScript caters to developers who are not good at coding and thus lack confidence in their coding ability Any text editor besides notepad caters to developers who are not good at coding and lack confidence in their coding ability. In fact, a good developer doesn't even need to run the code to test it works, they just know. So basically, unless you're writing your production apps in notepad and shipping it without ever running it, you suck. |
|
This seems like a perfectly reasonable goal to aim for even though it's not attainable beyond a certain degree. If your goal is to become so skilled that you can write an entire program which works perfectly from the first time without writing any tests, that seems like a pretty good goal to aim for. All developers should be aiming to write perfect bug-free code; if you do it long enough (intensively for over a decade), you will gain more confidence and coding becomes really easy and pleasant.
I've known several developers who instinctively know where bugs are within a few minutes of looking at very complex code. This skill needs to be trained and requires a certain degree of mental tension to do effectively (the brain is like a muscle). In my view, TypeScript reduces mental tension and does not train the alertness, awareness or 'I care' part of the brain. JavaScript forces me to keep a lot of stuff in my head and it helps me to reason about complex things better and gives me an incentive to minimize complexity as much as possible since I can't rely on my IDE for thought-completion. Also it makes me 100% responsible for the logic I produce; again because of less reliance on tools.
Training yourself to become more productive at coding is great. In my case it gives me a lot of spare time to write long comments on HN. I'm managing several large complex open source and commercial projects right now but you wouldn't know it given how much spare time I have left to waste on HN. In contrast, I've seen many other projects of similar sizes where the people who wrote the code spend almost all of their time fixing bugs for years after having released the thing. It's not because of the choice of language, it's not even because of the amount of testing, the problem is just that they don't really care about the product and their incentives were not aligned with making a product that works well.