After about a week of coding using ESLint with IntelliJ, my initial impressions leave me uncertain as to how subjecting myself to these strict coding standards will benefit myself or anyone else reading my code, although I expect that once I get accustomed to using it more often and in larger scale coding projects, I might begin to see the advantages of ESLint as opposed to something that just slows down my coding.
During the preceding weekend and throughout the week of classes, I completed a number of fairly standard coding assignments while using ESLint. As the previous week had me becoming proficient with the Javascript Underscore library, I was tasked with creating a few functions that modified arrays using Underscore all while doing so to the standards of ESLint. Once I got the projects setup and ready to code, things were much of the same, albeit far more spaces between every word or character and newlines for just about anything that doesn’t come paired with brackets. The real annoyance came in the form of excessive setup, whether it be needing to copy and paste the “.eslintrc”, “.gitignore”, and “package.json” files and installing the Node Package Manager into my project directory or having to navigate through IntelliJ’s encyclopedia of settings in order to disable every inspection setting then navigating a further to enable ESLint for each and every project. The later issue, I’ve found out could be taken care of by configuring IntelliJ’s default settings, unfortunately not before the WOD where I needed to perform this time consuming setup under time constraint. These things will of course become less and less of a problem the more projects I create, so then what does it do for me while I’m coding? Again I didn’t notice much of a difference other than formating. The abundant amount of newlines could be pretty helpful when dealing with Underscore functions, as many nested functions can quickly become very difficult to comprehend at a glance, however a far better coding standard for this particular situation would be to keep the function calls separate instead of having them all together in the same single command. This unfortunately, isn’t enforced by ESLint. Maybe I’m just a decent enough programmer to not leave around variables that never get used in my code, as this seems to be the only positive thing that’s been able to catch my eye, or maybe ESLint is suited more for especially beginner programmers who just don’t know how their code should be formatted. I could go on, but I think my thoughts on ESLint are clear.
Of course, these are still just my first impressions. If anything, I anticipate ESLint to step up and really prove its worth once I start creating much larger programs, or certainly when it comes time for me to read someone else’s of which I haven’t contributed to prior. In that type of situation, at least theoretically, ESLint would have kept that other person coding in the exact same way it would keep me. So although I’m not at all impressed so far, I’m willing to continue to code with ESLint in the hopes of an overall programming experience.