| I don't particularly like TypeScript.
It slows me down because of several reasons: - Compile time means that it takes more time to debug anything. - The rigid interfaces mean that I need to spend more time researching how to use various modules/libraries (maybe code completion would offset this problem but this is only possible with a heavy IDE that has intellisense or similar - Not Atom). - When I want to test something quickly, I often get annoying compile-time errors along the lines of 'code is unreachable...' among others. - It requires more planning to do anything (since you have to design the interfaces before you can start to implement). This is also not good if you just want to try something quickly and then roll back later. - Changes to one class/interface tend to have a large cascading effect on other classes/interfaces so it takes more time to make changes to code - This happens with JS too but to a much lesser extent. - Adds lots of unnecessary dependencies to my project. - Complicates setup and DevOps tasks, Dockerizing, (E.g. due to version mismatches and thousands of other potential issues) etc... The reason why I don't like heavy IDEs is because: - They're slow and clunky (sometimes they freeze for a long time in order to index content) - The use up a ton of memory. - They make your team lazy when it comes to structuring your source code into proper folders (since you start to rely more on search features of the IDE to find things). - They take ages to install. - Support fewer operating systems. - Are usually proprietary and difficult to customize. - More prone to bugs. |
- They're slow and clunky Not anything I've used. Eclipse and Visual Studio run nice and smooth on a decent machine.
- The use up a ton of memory. Who cares. Slack and anything based on electron uses hundreds of megabytes. Chrome regularly uses gigs. Most of the IDE's I use take less than 500 megabytes of ram, even phones have plenty.
- They make your team lazy when it comes to structuring your source code into proper folders Absolutely not. Your reasoning is that making things easier = making code worse. The IDE you use has nothing to do with your dev culture
- They take ages to install. Some of them do, notably Visual Studio. All the other ones I've used just take a few minutes. Also, who cares??? You only have to install it once, what is 5 minutes for an app you're going to use for thousands of hours???
- Support fewer operating systems. No. IDE's based on java run on almost anything. Again I think you're speaking from the experience of using visual studio.
- Are usually proprietary and difficult to customize. Also no. Every IDE I've used supports plugins and an unholy amount of configuration options. Every IDE I use is open source, again except visual studio.
- More prone to bugs. What? Why? How?