4 ms·
> Wow. It's amazing to find people who still write code in a text editor. Umm... Why? Personally, I find it amazing how much some developers rely so much on ID
by jm4 18y ago
> Wow. It's amazing to find people who still write code in a text editor.
Umm... Why? Personally, I find it amazing how much some developers rely so much on IDEs and are unable to write even the most trivial programs in a text editor. An IDE can be a crutch that will slow you down in the long run. Sure, they're great for verbose languages like Java and C#, but they have very little to offer when developing in some of the other languages you mentioned.
- Tichy 18y agoHow would they slow you down? Even with less verbose languages, after a while there will be a fair amount of functions, objects (maybe), modules... Why would an IDE not be useful in navigating those? I recently had a 500 lines Javascript program and some navigation features would have really helped (and 500 lines is not much).
- jm4 18y agoEven just typing can be slower in an IDE as it looks for ways to complete the code for you. Compiling in the background and code analysis takes a toll too. I also find the little completion popups distracting at times. Same thing with code folding. I guess it's just a personal preference. I know all those things can be adjusted or turned off, but at that point I might as well use just use the best text editor available. When I'm using Java I consider an IDE almost necessary and I use IntelliJ, but for pretty much everything else I prefer Emacs or EditPadPro. Developing with a text editor is definitely slower at first as you commit things to memory that an IDE may take care of, but in the long run I think it pays off since you're not bound to a particular tool. I've seen enough developers that can do next to nothing without an IDE. I don't want to be one of them.
- Tichy 18y agoHm, I never had speed issues with Eclipse. I tried Netbeans recently because it supposedly has good Rails integration. For some reason I found it unusable - now that you mention it, I think Netbeans was indeed going a bit overboard with helpers, background compilation and stuff. But as I said, I never felt such pains with Eclipse. Working on a 1,2GhZ mobile CPU, so not the fastest computer, either. So what you mention can indeed be an issue, but hardly a reason to dismiss IDEs in general.
- jm4 18y agoDon't get me wrong- this isn't a blanket dismissal of IDEs. I was just responding to someone who was amazed that there are still people that write code in text editors. I believe in using the right tool for the job and there are cases that call for a text editor as well as cases that call for an IDE. I actually happen to use an IDE on a Java project every day at work. I think Java can be a difficult language to work with otherwise. It's verbose so you end up with an enormous amount of code and there's a very slow feedback cycle. These are areas where an IDE can really help. I rarely find myself wanting an IDE when I'm coding in Perl, Python, Javascript or pretty much everything else I use. Then again, maybe it's because I haven't seen an IDE with much to offer other than code completion when working with these languages. I have almost zero need or want for code completion. For me, some of the best an IDE has to offer is the ability to find things quickly and refactoring. Many of them don't do a particularly good job at this with languages other than Java.
- Tichy 18y agoTrue, not much on offer as IDEs for other languages. At least Eclipse gives a code outline for JavaScript, though.
- jasonkester 18y agoDo you honestly have the entire class library for your language memorized? And all the member names of all your classes? And all the public interfaces of all the 3rd party libraries installed on your machine? And the entire Windows API? Do you never deal with long member names that would benefit from a quick ctrl+space? Are you really that quick at opening code files and scrolling down by hand to method definitions? Do you genuinely prefer to use command-line tools to search your codebase? And replace? And if so, how do you safely rename variables, methods and member names? I don't think that language choice has all that much to do with it. I'm currently working on a medium sized Python project, and spend maybe an hour a day cursing Eclipse for not knowing the contents of my own classes, let alone the Python and Django libraries. Honestly, I don't feel sped up!
- jm4 18y agoOf course I don't memorize everything. I do memorize the things I use most often so that code completion is hardly necessary. This takes much longer to do when you have a crutch to lean on. I typically have my code on one monitor and documentation on another when dealing with something unfamiliar. I definitely agree with you on the Eclipse issue, though. It's just a bad IDE and people just keep using it. It's sort of like the IE of IDEs.
- rcoder 18y ago...And the entire Windows API? Quite simply, you've shown why some of us prefer to work with compact frameworks in the online space. The normal web stack, as a vocabulary, is really only a few thousand "words" in size: HTTP verbs, HTML tags, CSS selectors, JavaScript/jQuery/etc. API, and your choice of agile web framework interfaces (perhaps with a little SQL mixed in for good measure). Once you're relatively literate in the weird pidgin that is the modern web stack, it's pretty easy to rely on the auto-complete engine already wired into your head. If your class member names are too long, or your method defs are buried inside some 10Kloc monster source file, perhaps you should consider some light refactoring to clean things up. Similarly, if you find yourself heavily relying on search-and-replace outside of single files, you may may have a bit of a coupling problem in your system.
- etal 18y ago