Choosing the Right IDE
Nerval's Lobster writes: Modern software development often requires working with multiple tools in a variety of languages. The complexity can give even the most skilled developer a nasty headache, which is why many try to rely on Integrated Development Environments (IDEs) to accomplish most of the work; in addition to source-code editors and automation, some even feature intelligent code completion. With so much choice out there, it's hard to settle on an IDE, so we interviewed several developers, who collectively offered up a list of useful questions to ask when evaluating a particular IDE for use. But do developers even need an IDE at all? When you go to smaller, newer developer shops, you're seeing a lot more standalone editors and command-line tools; depending on what you do, you might just need a good editor, and to master the command-line tools for the languages you use.
What IDE do you prefer, if any, and why?
Emacs. Next question.
Dewey, what part of this looks like authorities should be involved?
C-x-C-c
IDE's don't do any of the work- they take care of the things aren't actually programming.
love is just extroverted narcissism
This is a fucking microsoft ad.
Mod me down, my New Earth Global Warmingist friends!
I use QtCreator a lot.
It's great for C and C++ even if you don't use Qt.
In term of useful features, I'd rank it above Visual Studio, because its features are actually fast and often handy in my experience.
Use whatever makes you most productive and understand that it will vary from developer to developer. 99% of IDE / Editor debates make stuff all difference to the outcome. Instead focus on:1. Only implementing exactly what you need. 2 Testing the thing, then going back and reviewing the testing with a view to adding more tests. 3. Not let the implementation get ahead of the tests. 5. Get someone else to test. 6 .. Test.
.. test
Test.. test
"Nerval's Lobster writes: "
I'll bet it is a Dice article.
Back in the days I used to use Windows I used PFE, a multi window editor. For the past 14 or so year I have been using Linux and Kate is my favorite editor now. Does syntax highlighting, tabs vs. spaces, tiled views, profiles for project management, and allows multiple windows on multiple monitors. I'm not sure what more I can ask an editor. It's funny how some of us make the editor our "IDE" and do everything else on the command line like you say.
Is that a roll of dimes in your pocket or are you happy to see me?
But do developers even need an IDE at all? When you go to smaller, newer developer shops, you're seeing a lot more standalone editors and command-line tools; depending on what you do, you might just need a good editor, and to master the command-line tools for the languages you use.
Oh, yeah, i remember "standalone editors and command-line tools" from the old days - now they are "trendy"? I have some punch cards to sell them, so they can be "super-fucking-trendy"...
Antisthenes: "Wisdom begins by examining the words/names." - excuse my English, i am (slightly...) better with my Greek!
Delphi. There is still nothing better.
I guarantee that you're not going to find good advice about what IDE is best on a Dice "insights" clickbait page.
Fi on vi, I say, fi! If I must use a CLI editor, I use Mork's editor, nano. Not only is it a full-screen editor (We all know that vi was designed to be used with a teletype as an input device and never outgrew its limitations.) it has the most important editing commands at the bottom of the screen, including the all-important ^G that brings up the rest of the program's help. IMAO, the only reason for anybody to learn such a user-hostile "editor" as vi is for the bragging rights of having done so, and the only reason to continue using it once you've mastered it is masochism, pure and simple.
Good, inexpensive web hosting
Real men don't need IDEs.
http://boingboing.net/2015/05/...
You are welcome on my lawn.
I second the love for Kate. It's beautiful and powerful.
Has anyone here tried KDevelop? It's built on top of Kate and supposed to be a great IDE.
Agreed. The Unix way is to use modular tools. IDE's are the antithesis of that. Eclipse is systemd of development, one size fits few and shitily. Completely inflexible. Emacs is by far the best option available, on any platform. Used to be you'd be laughed off this forum if you suggested anything else.
an ill wind that blows no good
Moving past a text editor is a big help. Sure, it's good to understand the command line and all that, but having a tool that understands code and allows you to manipulate it is really useful. Refactoring support matters. A lot, actually. Safe delete, rename, extract method/parameter/etc. are all basic tools that can make a code base better. Code completion (intellsense, etc) support matters too. What does this thing do. Does it do what I think it should? Why or why not. Add in things like smart templates, etc. and even the most code aware text editors just look like nothing more than keyword colorers.
Personally, I can't recommend Visual Studio/Resharper or the IntelliJ product line enough. Worth every single penny and then some. JetBrains has a laser like focus on just getting things done. High DPI support was a problem for their IDEs, so instead of waiting on Java 8/2D to catch up, they forked it just to get it work, and they admitted it was not a great solution, but a workaround.
The question is: "What language are you writing this project in?"
The language dictates the best IDE for the job.
I do not fail; I succeed at finding out what does not work.
What a lot of programmers don't realize is that an IDE is just a lens with a glamorous frame around it. Don't grow too attached or you'll risk going out of style along with it and that's when people start looking at you funny. No one should care what you program with as long as you keep to the style guidelines and the code you check in does the job.
I prefer Eclipse for Java, PyCharm for Python, Sublime/YCMD for C++ with Valgrind on Linux and WinDbg on Windows, etc; but requirements and individual tastes may differ. That's why I use cross-platform shell scripts and makefiles. This allows me and anyone else I work with to use whatever IDE on whatever platform they are most comfortable with without the fear of vendor lock-in.
One question I always ask when evaluating a new whizz-bang high sparkle product is: can I turn the features off?
If you use more than one application in your development, you're always bumping into interface inconsistencies. Having to stop and look at the result of what you typed is annoying, time consuming and distracting.
I can type <tab> really, *really* fast, so it makes absolutely no sense to try to overcomplicate things by having the editor try to do some sort of indentation for me - it only means that I have to stop and look every time, and I can't get used to the feature because no other application does it the same way.
For emacs in particular, all the various "electric $LANG" modes have different ideas of which characters are electric, what their behaviour is, and what coding style I should be using. Selecting a coding style to use is about 2 hours of internet search, editing the profile, restarting, and testing. (And that's if you're using one of the approved styles, otherwise you're either stuck or forced to learn lisp. *shudder*)
(And for the record, turning off electric-mode in emacs is wildly difficult to actually do. One pitfall example: having "save state" turned on will override the profile file, leaving you wondering why the profile command from the online tutorial didn't work.)
You can't get used to it, you can't develop muscle memory or take your eyes off the screen because the minute you switch to something else (the browser, E-mail client, putty terminal, LibreOffice or anything else), muscle memory results in errors.
Lots of applications have these inconsistencies. Clicking in a text editor will place the cursor where the mouse is, while clicking on the address bar in the browser *selects* the line and places the cursor at the end. It takes 1 click to insert text normally, it takes 3 clicks to insert into the address bar. Muscles don't remember that.
People spend an inordinate amount of time fumbling the interface without actually thinking about it. Your "rich, user experience" isn't warranted and reduces efficiency.
Just give me a simple, direct interface.
*Shrug!* I haven't done any programming since the Second Millennium ended. I only need a CLI editor for config files or shell scripts in Linux, and nano does what I want, the way I want it. If you find that vim (or even, Heaven forbid vi) works best for you, use it. Just don't think that you're earning any geek cred with the old-timers of programming because you aren't. I started out with punched cards, went from there to line editors and was very happy, TYVM, when full screen editors came along and I could recycle all the neurons I'd been forced to dedicate to those obscure, counter-intuitive commands.
Good, inexpensive web hosting
for .NET dev.
I like the IntelliJ family for other stuff.
If you were me, you'd be good lookin'. - six string samurai
If the langugage is Java (or even Python to a lesser degree), then I haven't come across anything that even comes close to IntelliJ. It's code completion and introspection are so good, that I find I don't need to test as often. And I rarely find any issues when I do.
I also use Eclipse and Netbeans, and everything seems to take an extra step or two and that really adds up, over time. Netbeans is good for C++ though, so I muddle through with it.
According to the article: "Some people love syntax highlighting; others hate it with the fiery passion of a thousand suns."
Is that really true? I've never met someone who hated syntax hilighting.
"First they came for the slanderers and i said nothing."
Visual Studio/C# with Resharper is my preferred environment. I've also had good experiences working in Zend Studio/PHP and Eclipse/Java.
Notepad++ is my daily driver.
While I have coded without an IDE in the past, and I still do it occasionally for one-off throwaway programs, when it comes to larger projects, I do find that having an IDE dramatically boosts my productivity. All of the things I do with an IDE could theoretically also be done with vi and an appropriate suite of tools, but for myself, the point of using an IDE is to really just have it all bundled in as one, and not have to switch to a different window just to show a call graph or function definition for what is at the current cursor, for example, when a simple hover-window can do the same thing, and since the window disappears as soon as I start typing or otherwise navigating, I don't even need to switch windows again when I resume editing.
File under 'M' for 'Manic ranting'
My favorite IDE is a computer. When I wrote programs without a computer it was much harder. (I wish I was joking)
“Common sense is not so common.” — Voltaire
Joe's Own Editor. I don't use a traditional IDE, but do still use JOE. Am I alone with this? *sigh*
When I log into my Xenix system with my 110 baud teletype, both vi *and* Emacs are just too damn slow. They print useless messages like, 'C-h for help' and '"foo" File is read only'. So I use the editor that doesn't waste my VALUABLE time.
Ed, man! !man ed
ED(1) UNIX Programmer's Manual ED(1)
NAME
ed - text editor
SYNOPSIS
ed [ - ] [ -x ] [ name ]
DESCRIPTION
Ed is the standard text editor.
---
Computer Scientists love ed, not just because it comes first alphabetically, but because it's the standard. Everyone else loves ed because it's ED!
"Ed is the standard text editor."
And ed doesn't waste space on my Timex Sinclair. Just look:
-rwxr-xr-x 1 root 24 Oct 29 1929 /bin/ed /usr/ucb/vi /usr/bin/emacs
-rwxr-xr-t 4 root 1310720 Jan 1 1970
-rwxr-xr-x 1 root 5.89824e37 Oct 22 1990
Of course, on the system *I* administrate, vi is symlinked to ed. Emacs has been replaced by a shell script which 1) Generates a syslog message at level LOG_EMERG; 2) reduces the user's disk quota by 100K; and 3) RUNS ED!!!!!!
"Ed is the standard text editor."
Let's look at a typical novice's session with the mighty ed:
golem> ed
?
help
?
?
?
quit
?
exit
?
bye
?
hello?
?
eat flaming death
?
^C
?
^C
?
^D
?
---
Note the consistent user interface and error reportage. Ed is generous enough to flag errors, yet prudent enough not to overwhelm the novice with verbosity.
"Ed is the standard text editor."
Ed, the greatest WYGIWYG editor of all.
ED IS THE TRUE PATH TO NIRVANA! ED HAS BEEN THE CHOICE OF EDUCATED AND IGNORANT ALIKE FOR CENTURIES! ED WILL NOT CORRUPT YOUR PRECIOUS BODILY FLUIDS!! ED IS THE STANDARD TEXT EDITOR! ED MAKES THE SUN SHINE AND THE BIRDS SING AND THE GRASS GREEN!!
When I use an editor, I don't want eight extra KILOBYTES of worthless help screens and cursor positioning code! I just want an EDitor!! Not a "viitor". Not a "emacsitor". Those aren't even WORDS!!!! ED! ED! ED IS THE STANDARD!!!
TEXT EDITOR.
When IBM, in its ever-present omnipotence, needed to base their "edlin" on a UNIX standard, did they mimic vi? No. Emacs? Surely you jest. They chose the most karmic editor of all. The standard.
Ed is for those who can *remember* what they are working on. If you are an idiot, you should use Emacs. If you are an Emacs, you should not be vi. If you use ED, you are on THE PATH TO REDEMPTION. THE SO-CALLED "VISUAL" EDITORS HAVE BEEN PLACED HERE BY ED TO TEMPT THE FAITHLESS. DO NOT GIVE IN!!! THE MIGHTY ED HAS SPOKEN!!!
In the past few years I've largely use Eclipse. I tend to write small programs in C, C++, or CUDA C. I like Eclipse because it's free, has easy support for all these languages and others that I expect to use (Python, Java), runs on Debian/Ubuntu/etc., and there's tons of support online.
Personally, I find Vi to be a fast and efficient text editor. The ones built in to an IDE are inevitably inefficient for me.
Some languages have so much boiler plate that it makes sense to start in an IDE (I'm looking at YOU Java), but I generally prefer languages that don't need that. Vim handles syntax highlighting just fine. It doesn't help that so many IDEs seemingly want 12 terabytes of ram.
So far I used Eclipse for Android development, but that's coming to an end. Google forces me to use Android Studio, which is terrible. Which makes me think: how can so many developers prefer AS over Eclipse? What does that say about developers? About me?
no, I don't have a sig
I work mostly with Go and HTML/JS so my "IDE" of choice is Sublime Text 3 + GoSublime/TernJS/SublimeGit+HTML-CSS-JS Prettify plugins.
Omg pico/nano/etc are really awful unless all you are doing is typing text and saving it. If you can't even minimally script it, it's worthless.
Vi and emacs are the kings of text editing, and every programmer should know how to use them both even for just simple editing.
Whenever I use a new system and EDITOR gets set to some shitty version of pico or nano, I just want to uninstall the effing package. It actually enrages me when it runs because it's literally a waste of disk space.
you can argue all day about whether chocolate ice cream is better than vanilla and there is really no possible way that anything interesting will result from the conversation
Visual Studio 6 for lyfe
Using the command line on Windows is a truly painful experience, even for those who live on the CLI like I do. The difference is, when you are on UNIX the CLI can actually do things instead of being mostly useless like in Windows.
Try UNIX from the command-line some time. You'll like it; I promise.
Or try using Cygwin... though it's not nearly as nice as a real UNIX environment, because it's gotta bridge the gap over to all that awful Windows garbage...
No, using an IDE means you are a productive programmer. I swear most of these vi/emacs hipsters are still students or are unemployed.
Don't be an idiot. I am a vim guy, but claiming that vim is better than emacs, or vice versa, is great for meme style joking around, but to say it in an actual serious discussion and mean it is a sign of shear stupidity.
Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
Hey! Then guess what?! You are completely off topic and in the wrong story thread! If we ever need the opinion of a layperson with almost no skills on the subject and limited and outdated experience we will be sure to contact you immediately!
Guns don't kill people; Physics kills people! - John Lithgow as Dick Solomon on Third Rock From The Sun
... because I like to be a white hot ball of rage before noon.
+1
VIM for C, Scripting, PHP and all command line work
Intellji when I need to do larger web development work.
Xaramin when I need to do C# / GTK#
Visual Studio when I need to do raw C# on Windows
MPLAB X when I have to do Microchip development
Atmel Studio for Atmel development
I'm sure I'm missing a bunch, but you can't just have one, you need the right IDE for the right job and none of them do it all.
It actually enrages me when it runs because it's literally a waste of disk space.
That's exactly what I think of vi. I have no use for scripting inside an editor; I just want it to work in the way I find natural, and vi doesn't.
Good, inexpensive web hosting
I second that. Geany is everything other IDE's are not. The closest experience to it's speed? Turbo Pascal on CPM in 27 Kb. I kid you not.
There's your problem DOS command prompt is a stretch to call it a "tool". Windows was not designed to make doing work easy. Switch over to Unix or Mac and get real work done with a real command line designed to get stuff done. Or install Cygwin on your system.
I've seen several embedded development systems for Windows out there that come with Cygwin or MinGW tools, even if they're under the hood.
IBM VisualAge. Its heir, Eclipse, is a worthy IDE. I got to watch the whole evolution. Eric Gamma and others in Zurich morphed the VisualAge Smalltalk IDE into VisualAge Java. Then Eric and Kent Beck morphed that into Eclipse. IDEs derived from Eclipse are still the shin dizzle, AFAIAC.
Does the editor allow you to see multiple windows of code at the same time? The thing I hate most about IDEs I've used is that they're using this bizarre MDI model, big file list or class browser on one side, command output or such at the bottom, menu bar and icons at the top, and one big space wasting code window in the middle. I want to see file A on the left and file B on the right while I'm editing file C in the middle.
The perfect IDE for me that might get me to use one:
- multiple code windows simultaneously
- not written in Java so it's fast
- does not try to second guess me
- lets me configure it fully, I want emacs keybindings dammit, not mock-emacs
- let me plug and play different components from different vendors. Don't force the vendor lockin or tool lockin. I want to replace the editor or the debugger or whatnot. And do not suggest that Eclipse can do this because it can not.
- get the pointless windows and GUI fluff out of the way when I am not using them. If I have a modern high resolution monitor then I want to get more stuff on the screen rather than just higher resolution fonts.
- don't force me to use its lame project management system, use my own Makefile or set of scripts (because no one's yet come up with a suitable replacement), don't do something moronic like assuming every file in a directory is a part of the project, don't insist on a directory layout style, let the user be in charge.
- make it easy to program instead of making me struggle locating obscure hidden menu entries
- don't make me point and click.
Get a good hint from Genera on the old Symbolics Lisp machines. A GUI designed by smart people for smart people.
In my beginning CS classes the professors all were using eclipse. Which was frustrating until I tried Netbeans. Which makes eclipse feel nasty. I have tried several IDEs, but netbeans works the best for me. My only problem with it is that sometimes it takes a lot of memory...
Currently, Sublime Text.
It can... although usually I dock all my editor windows to one pane, and use tabs.... but the IDE I use allows me to add any number of panes.
It's interesting that many of the things you've mentioned are ideal for you actually are preferences of mine as well, and in fact, why I use the IDE that I do. It's written in Java, but it performs adequately on my hardware, which for me is all that really matters.
File under 'M' for 'Manic ranting'
Most of the people I know that use vim as their main text editor have it pimped out to a full IDE anyway. They just don't realize it.
people can't ever post this kind under their own account without being bullied and/or losing karma.
/.ers being /.ers.
"I decided I could write something better than everything out there in two weeks. And I was right." - Linus Torvalds
Go on then. Demonstrate it.
The IDE that works, is free/FOSS and runs cross-plattform is the best for me. That would be Netbeans for me, since I mostly do PHP. QtCreator looks neat aswell. And after Anjuta, CodeBlocks and whatnot crashing on Ubuntu for me or not being supported for OS X it seems like a good candidate for C/C++.
In fact, I'd go as far and say that not having a good IDE that runs on Mac, Linux and perhaps Windows is actually a dealbreaker for a new programming language for me.
Example: ... Couldn't say though that I'm all ready for this cross-compiled for JavaScript fad that's going on right now, so I'm not gonna hold my breath.
Yesterday I came across Dart again and clicked through a few websites on it. I still have it in the back of my head and haven't dismissed it yet because - Tadaa! - Google offers a chrome based IDE for it.
That's my take on IDEs.
We suffer more in our imagination than in reality. - Seneca
That's it.
is for Windows or Office, Visual Studio Community. Plus, I'm not that good so I rely heavily on intellisense.
I wonder what IDE the developers of MS Windows use? I wonder what IDE Linux kernel developers use. Which one is more robust?
Must be nice to only work with systems having plenty of resources and huge default installs. and always over high bandwidth low latency connections. Not all of us have that luxury, and the one editor you can always count on exists on a limited system, and the best editor for use over high latency connections, is vi.
If you know it well, that is. Otherwise you simply can't work efficiently under those conditions. Which you evidently never have to do.
If you start with Vim you'll get a great text editor with a focus on actual text editing. You can then add plugins to add IDE-like features.
My favourite plugins:
* fugitive
* dbext
* syntastic
* YouCompleteMe
* Command-T
* Unite
* multiple-cursors
* gundo
* sparkup
* easy-align
I'm a .NET guy working in a .NET shop, and Visual Studios is part and parcel for my days. Occasionally I'll flip to Eclipse for php and java work, but any more VS is getting better about dealing with the those too so, hopefully, in the near future I won't have to.
At home it's VS as well - typically for my python and other side work.
With the wave of plugins and templates available - as well as an ever expanding reach for new languages bolted in - Visual Studios is becoming hard to beat. Unity support, Minecraft mod support, actual python, web dev, etc. Heck - the Community Edition is now supporting localized reports (for free!) so that's a major plus. Also the snippet system is nice to fill in with repeated code chunks.
Go on then. Demonstrate it.
http://stackoverflow.com/
SJW n. One who posts facts.
Slashdot, please stop posting stories that come from dice.com. Thanks.
Democracy Now! - your daily, uncensored, corporate-free
you’ll want to be able to set the language for the file type. In the case of Web development, you’ll often have three languages in one file, such as PHP, HTML, and JavaScript; if you do, and you need syntax highlighting, you’ll want to make sure that the tool can handle all three at once. If this is how you organize your code, with three languages intermixed in one file, your choice of graphical tool set is irrelevant to your success. An IDE is not a substitute for good code organization and separation of concerns. Yes, it will help you untangle code. Good. Even better to not tangle it up in the first place.
Eclipse for Java and Scala. Notepad++ for SQL, HTML and javascript.
If I need a full-featured IDE, it's typically NetBeans. That was the first IDE I used while learning every flavor of java for my associate degree in computer programming. (The school couldn't afford to renew the Microsoft site license for a few years.) Otherwise, it's Notepad++ for Windows and Text Wrangler for Mac.
The reason I picked nano is that it's strictly text-based, needs nothing more than an xterm, but still doesn't force you to pretend you're using a teletype or remember obscure, unintuitive commands. Just because you can point to one or two rare corner-cases where vi is convenient for you doesn't mean that it's best for everybody; it just means that you've persuaded yourself that you like it because it's so old-school.
Good, inexpensive web hosting
Are you trying to make the case that embedded systems requiring text file reconfiguration and low bandwidth connectivity to such systems is something *rare*?
Indeed you are.
Remind me never to pay attention to your quite uninformed opinion.
Oh, and anything on a command line is "obscure" and "unintuitive" until learned. I don't find vi to be either. That you do speaks more of you than of vi.
Are you trying to make the case that embedded systems requiring text file reconfiguration and low bandwidth connectivity to such systems is something *rare*?
For the average user, yes, they are. Just because you work with them daily doesn't mean that everybody else does. And, nothing I've written in this thread means that I give a rats ass about what tools you use to do your job because it's none of my business. All I've been doing here is stating why I dislike vi and prefer nano. YMMV, and obviously does. If it makes you happy to pretend that you're still stuck in the 1970s, go for it; I lived through them, as an adult, and I'm glad that the rest of the world has moved on.
Good, inexpensive web hosting
The "average user" does not use an IDE, does not do programming and will use neither nano nor vim, and thus has no relevance to this /. posting. The average *developer* is quite likely to find the need to perform changes or updates on embedded systems or over dicey connections, and therefore has quite valid reasons to use vi which has nothing to do with your dislike of anything well tested.
"The rest of the world" tends to use vi and emacs. You're the one stuck in some form of rut, and posting to get that rut validated. Get with the times, vi today is not what you remember from back when you (possibly) had a valid opinion on the subject.
Why do you assume that your IDE has features that Emacs doesn't? It's been in active development for 39 years to be a great, productive programming environment. Do you honestly believe that it's had 4 decades of worldwide contribution and not become reasonably good at helping people write software?
Without exception, everyone I've heard decry Emacs and Vim as "just text editors" has never used them beyond "open file / type / save" and has no idea what they were working with. It's like dismissing Linux because you've only used it as an AWS shell, and you feel sorry for people who won't upgrade to Windows so that they can use a web browser.
Dewey, what part of this looks like authorities should be involved?
"The rest of the world" tends to use vi and emacs.
If all I had to choose from were those two, I'd go back to using emacs. The only reason I don't use it now is that I ran across nano and found it more to my liking. And, on a side note, I find your zealotry and insistence that there's One True Editor amusing. Maybe, by the time you're half my age you'll have grown out of it.
Good, inexpensive web hosting
4GB RAM on a dev system is seriously deficient.
Wealth is the gift that keeps on giving.
Where have I "insisted" there's "One True Editor"? Your arguments against vi grow out of some kind of small minded misunderstanding you acquired back when I was selling my first software commercially (if, indeed, you used it during the 1970's), and that is what I reacted against. Nothing else.
Maybe by the time you act your age you'll realize how absurdly you're acting, spitting venom on an editor you last used as intended decades ago (if ever) on a /. thread where using IDE's and editors as intended is discussed. But I won't be holding my breath. Keep pushing your opinion on what is the best editor for occasional one line edits on a thread discussing heavy duty programming as if it's relevant, no skin off my back.
While any developer worth their salt should be able to write code in a text editor, any developer worth their salt will also know that it can easily become a slow, error-prone process when dealing with larger or more complex code bases. Using a decent IDE can dramatically speed up development and reduce the likelihood of introducing errors.
Myself, I've used a number of IDEs in the past - Eclipse, NetBeans, IntelliJ IDEA - and I have to say that IntelliJ IDEA is really hands down (in my opinion) the best one out there.
A few reasons why:
It's fast. It's extremely customizable, and there are hundreds, if not thousands, of plugins available to extend the IDE's functionality. It supports dozens of languages and file types. It's got an excellent debugger. Git and Maven integration are fantastic. Refactoring can be done perfectly in seconds or minutes instead of potentially hours if done manually. Navigating the code base is made super easy with "Find usages" and "Go to source."
Also, because the company (JetBrains) is in the business of making money, they actually sell their products instead of just giving them away for free (although there are free, reduced-functionality versions available), they have a lot more money to pour into their products than other options out there, and it shows.
Basically, as a software developer, I want to spend my time writing code, not dealing with associated peripheral tasks, i.e. noise. Using a good IDE can help you do this.
Good luck with your decision making process!
Keep pushing your opinion on what is the best editor for occasional one line edits on a thread discussing heavy duty programming as if it's relevant, no skin off my back.
At what point in this discussion did I ever insist that nano was the best editor for anybody other than myself? My whole point in commenting has been to explain why I personally like it and why others who's tastes are similar might like it. And, for that matter, this entire thread started off as a remark that with the proper CLI tools you don't need an IDE and it's drifted (as threads often do here) off into a discussion of the merits of various editors. You like vi. Fine; use it if it makes you feel empowered. I've outgrown the need to use obsolete programs just because I can, and use whatever serves my current purposes best, be it GUI or CLI.
Good, inexpensive web hosting
Anything more and you are far too pampered.
The editor you use is just as obsolete as vi. This is what you fail to comprehend and acknowledge. You make this into some form of "newer exists so the older is inherently inferior", and this is precisely wrong. Just because something does not fit in your brain does not mean it is obsolete. If anything, it is likely to mean *you* are obsolete.
I refuse to believe you use whatever serves your current purpose best because you present a dogmatic attitude. That means you will choose based on incorrect criteria. That you do not even realize this makes your position worse.
you present a dogmatic attitude.
If anybody's being dogmatic, it's you. I, OTOH, keep telling you that I don't care what editor you use while you keep denigrating my choice and making ad hominem comments about me because I dare to differ with you. Why does the fact that I don't agree with you make you feel so threatened, especially as I keep telling you to use whatever editor you want?
Good, inexpensive web hosting
If your Emacs has all the features of my IDE, then it's an IDE.
So you can't.
Then why am I a vi/emacs hipster to you?
Dewey, what part of this looks like authorities should be involved?
The right balance of close to the metal, clean edit functions, extension manager is good. Like the vertical editing function. Some extensions get a bit behind. O well. jedit.org Zero dollars. Thanks jEdit!
Jesus Christ I thought you were *JOKING*.
Are you honestly so stupid you think any drooling moron placed in front of an IDE is productive???
I can demonstrate it by pointing to a few of the drooling morons I know who have somehow become employed as programmers, or you know the legions of idiots on stack exchange.
SJW n. One who posts facts.
I am quite curious how it's dogmatic to simply use the best tool for the job, without trying to make the claim that one or the other is "obsolete".
You've got a serious maturity problem, kiddo.
You're obviously an amateur, or someone who works on very small projects.
You're obviously an amateur, or someone who works on very small projects.
And you obviously lack a basic understanding of logic. Let's say we accept your absurd premise that one needs an IDE to be productive.
That makes an IDE necessary but not sufficient to be productive. If you put a monkey in front of an IDE, you wouldn't have a productive programmer.
The fact that you seem to think an IDE makes even very bad people productive is a strong indication that you either don't work in programming at all or you only ever work with the bottom 20% so you don't know what a productive programmer actually looks like.
SJW n. One who posts facts.
Our sysadmin once made a Linux VM unusable with nano. He used it to edit the pam.conf file and nano helpfully wrapped a long line by putting a line feed in at the last space before 80 characters. After that, nobody could log in anymore, not even the sysadmin who had logged out to test the change he had made.
We got the system back with a Linux live CD and the sysadmin started the vi tutorial the same day.
All I want is a secure system where it's easy to do anything I want. Is that too much to ask ~~ Randall Munroe
The dogmatic part is insisting that everybody uses that tool just because you like it best.
And how, pray tell, do I have maturity problems simply because I don't like the same text editor that you do, but don't insist that you use the one I like?
Good, inexpensive web hosting
So where do I insist on anyone using any particular tool?
You have a maturity problem because it's not enough to dislike something; you have to justify it by calling it obsolete, and insulting people who disagree with your attempt at justifying your opinion.
Maybe when you get to be half my age you'll know better. But I'm not holding my breath, youngster. Now git off my lawn!
We got the system back with a Linux live CD and the sysadmin started the vi tutorial the same day.
That's one way to prevent that from happening again. Another way, of course, is turning off line wrapping in whatever editor you prefer to use. Personally, I have nano aliased to include -w to disable wrapping. The fact that one sysadmin managed to misuse nano doesn't mean that it's a bad editor; it's just a tool like any other.
Good, inexpensive web hosting
Maybe when you get to be half my age you'll know better. But I'm not holding my breath, youngster. Now git off my lawn!
Unless you're more than 130 years old, I'm at least half your age, and am possibly older than you are. Hint: I was on the Gun Line in Tonkin Gulf in 1972 doing shore bombardment during the Easter Offensive, before leaving the Navy and going back to computers. Before I joined up, I'd been using an IBM 1620, with punched cards. Want to try a different ad hominem attack?
Good, inexpensive web hosting
McDonalds versus Homemade
You're not fooling anyone. You gave it away with the lazy slashdot stereotype of StackOverflow. Spending 3 hours on an issue that a StackOverflow search would have found you the key to in seconds is not being a productive programmer. And it's certainly not being a professional one.
You're a poser, not a programmer. You don't do this for a living. You have far too much to learn.
Ducking and weaving, ducking and weaving. Oh and invective and ad homenim too.
All to avoid admitting your original point was flat out wrong and illogical. Still if it comforts to do so, please be my guest and keep on fooling yourself :)
SJW n. One who posts facts.
You're stil not fooling anyone. Your comments are as foolish as a carpenter saying he only ever uses hand tools. When you're learning to be a carpenter, then of course you'll learn to use hand tools. But professional carpenters in this day and age are using power tools for most of their work.
Your comments are as foolish as a carpenter saying he only ever uses hand tools.
Oh analogy time. Firstly, my comments are nothing like that. If you think so then your reading comprehension is so low then there's little chance of you ever understanding this post. But whatever, I'll use your analogy, because bits of it work (also carpentry is a hobby of mine as it happens---though I'm not especially good).
Your original claim is like saying that sticking anyone in front of power tools will make them a productive carpenter.
But professional carpenters in this day and age are using power tools for most of their work.
This is hilarious. Remember your claim that "anyone in front of an IDE is productive", translates to "anyone in front of power tools is productive". If you let someone completely incompetent into a good woodworking shop with actual proper power tools, you're more likely to end up with a pile of fingers on the floor and broken machines than anything coherent made out of wood.
Because tools alone are not sufficient to make someone productive.
That last line is really the crux. The fact that you appear to not understand it is quite frankly astonishing. I do hope you're not in charge of any hiring decisions. Because according to what you're espousing here, you can hire literally anyone, stick them in front of an IDE (or powerful woodworking tools---why not) and have a productive member of the work force.
Anyway your analogy still sucks, because all of the IDE related tools are available with equal or more power outside the IDE.
SJW n. One who posts facts.
I pretty much use the same tools for Windows / Java / OS X/ iOS and started my career about the same time. Pick the best IDE for the target environment / source language rather than one to rule them all.
I started my professional career writing Windows apps in C++ and never saw the point of the 80 character per line limited text mode editors that were available on Windows / DOS at the time. After college it was a long number of years before I saw Unix again, and by then I was accustomed to GUI based editing. I will never forget fighting with folks in the early 90s who wanted to impose a 80 character line limit as part of our coding standards because that's all they could see in their text mode editors. Bogus!
I have to say though that the worst IDE I have used is Eclipse. I spent about 6 months in Eclipse 3 years ago before a more senior Java developer showed me IntelliJ and I never looked back. Major gripes:
When you start Eclipse, the UI is already in a bad state. The toolbar buttons are enabled as if you are debugging. If you click the "Stop the Debugger" button, you get a dialog telling you that the button you just pressed is not enabled. Uh, yeah it was otherwise how did I press it to get this dialog? If you can't even get the initial UI state right, it doesn't inspire confidence! I still saw this in the last version I tried. I'm assuming that the design of the code must be so bad that this must be very hard to fix so it stays broken in version after version. And no, I'm not going to pull down the code and try to fix it when the community version of IntelliJ is free of cost and works fine.
So many times Eclipse would show all these red underlines in my code but when I compiled the code from the command line there were no warnings or errors. Deal breaker! Absolutely unacceptable waste of my time! All of the files had been saved. If it has no errors from the command line compiler it shouldn't be showing errors in the IDE. It's like the IDE is senile or something...
When I was developing servlets, every month or so the integrated Tomcat would just stop working for no apparent reason. I never had a problem with IntelliJ and standalone Tomcat.
Having to reset your font and color settings for each workspace is tedious. Having the IDE forget some of your key mappings when you start it, even if you haven't changed workspace is downright annoying. Another waste of my time. The whole thing just feels so brittle.
You really are an incompetent. Your entire argument is based on a misquote.
Anyway your analogy still sucks, because all of the IDE related tools are available with equal or more power outside the IDE.
You're showing your ignorance again. An IDE is about productivity. You can for example type a complex command in a CLI to do a refactor, but there's no usable interface there to examine preview of the refactor before you do it.
The IDE user leaves you and your primitive tools in the dust.
BTW, I see you are still waiting for a single person to agree with your dumb argument.
You really are an incompetent. Your entire argument is based on a misquote.
lolno
Do you deny you actually said precisely this:
No, using an IDE means you are a productive programmer
Because the meaning is entirely clear. I like how you have now admitted that you've lost (by claiming I've "misquoted" you even though the quote is entirely clear). Well done. Nice to see you admit defeat with honour and good grace.
SJW n. One who posts facts.
Do you deny you actually said precisely this:
No, using an IDE means you are a productive programmer
Do you deny that you made precisely this incorrect quote: "anyone in front of an IDE is productive"
Obviously tools like cut'n'paste are beyond you. You're also too stupid to realise they don't even mean the same thing. You lose.
And I see you're still waiting for a single person to agree with you.
And I see you're still waiting for a single person to agree with you.
Ah I see you're using sociallogic. It's not about the reasoning it's all about the number of likes!
You're right, what I was giving wasn't s direct quote, it's a logical conclusion of what your quote means. If using an IDE means you are a productive programmer, then an idiot who caan't even figure out fizzbuzz using an IDE is, according to your reasoning, a productive programmer.
End result: you said something stupid. Stop trying to defend it, just own it and move on.
SJW n. One who posts facts.
Nope. It was the answer to the question "If I use an IDE, does it mean I'm a bad programmer". Implicit in the question is whether that particular tool makes him a bad programmer. Everything else is out of context (context, something you'd understand if you were a programmer). Returning the answer in the same framing (context) means that that particular tool makes him more productive.
Everyone else got it. Hence the +5 Insightful. And hence your downmods.
Now, are you going to continue being an ignorant arsehole?
Nope. It was the answer to the question "If I use an IDE, does it mean I'm a bad programmer".
And your reply was that it makes him a productive programmer. Which it doesn't: if he's a bad programmer (irrespective of IDE use), using an IDE won't make him productive. It will make him a bad programmer with an IDE.
So your assertion that an IDE will make him a productive programmer is vapid.
Returning the answer in the same framing (context) means that that particular tool makes him more productive.
MORE is the crucial word there. You didn't use it. So basically this entire thread is due to your inability to actually write clearly and say what you mean. You've as good as admitted it there when you subtly modified what you said to change the meaning entirely. Of course you don't actually have the good grace to come out and say that, but I'll accept what you write as an admission of defeat.
Everyone else got it. Hence the +5 Insightful. And hence your downmods.
Why not take the argument over to facebook to see who gets the most likes, or twitter to see who gets the most retweets? Do you really feel populism is a substitute for reason?
Now, are you going to continue being an ignorant arsehole?
Now I know I've won :) :) :)
SJW n. One who posts facts.
Now, are you going to continue being an ignorant arsehole?
Now I know I've won :) :) :)
That'd be a yes then.
And still not a single person agrees with you.
I'm glad and surprised you conceded. Well, props to you for admitting it.
And still not a single person agrees with you.
You seem to believe I care.
You should try using your mind for logic and reason than using it for worrying about how popular you are, especially with random people on the internet.
SJW n. One who posts facts.
What an imbecile you are.
What an imbecile you are.
If you think so...
Bear in mind, I'm not the one making illogical statements and then judging their value on how many "likes" I get.
SJW n. One who posts facts.
If you don't like it, you can also try to play around with semantic patching (like coccinelle)
"Sufficiently advanced satire is indistinguishable from reality." - [Tips: 1DrYakQDKCQ6y52z6QbnkxHXAocMZJE61o ]