The Good, The Bad, and The Lazy

21 Sep 2017

Do coding standards contribute to the quality of code? Is it important enough to stress others to improve upon it? Probably. But how important?

Consider this line of code: for (let i = 0; i < arr.length; i++) { //do something } Does it upset you? Does it make you feel annoyed at how there are much better ways to go about looping nowadays? If it doesn’t, you’re in the majority. Sure, I’ll say that underscore is an incredibly helpful library that you can use for many things. However, all these developments in new library and new syntax makes everything so saturated. Of course you can argue that it’s only to make things better but is it as beneficial as having to learn new technologies every year?

Java and C are languages that remain relatively unchanged in the may years they have been in use. You read a book on C published 30 years ago and it’s still as valuable today as it was then. Yet that doesn’t diminish its value as a programming language, in fact, it makes it more valuable. A language that you can use without such a violatile nature. I believe it is more beneficial to have one super-duper good language from the start.

Javascript actually has a history for having an ugly side. That’s why there are books published such as this one. It wasn’t until later on that the language became the king of the web. But now that everyone’s embraced it, everyone wants their own piece of the pie, and to make their own library. I don’t want to downplay the importance of a lot of these libraries because some are used on the biggest websites in the world. My main target are the ones that are gonna be used by at most tens of.. people. There’s too much concern for the little stuff like arrow functions and for loops, when we should be more concerned about code that makes life easier, not code that makes makes coding easier.

But that’s just me. I can see the “elegancy” of this move toward minimalist coding but overall it just makes it harder for newcomers to get up to speed with it. First they have to learn the old way of doing things so they are able to read older code. Then they’re taught to use the newer ways to keep up with the technology. But along the way, core concepts are glossed over like closure and prototype inheritance. With already so many nuances to learn about a language, syntax is trivial in comparison to understanding how to use the language effectively.