I've used a number of text editors in my short time developing. DreamWeaver, SubmlimeText, and Atom to name a few. I've considered a true IDE like PHP/Web Storm but haven't taken the leap. What are you using for development and what was the deciding factor for you?
Before we get the "It depends" responses lets set some ground rules:
It's just a personal preference, and here's mine: I use IntelliJ for both back-end and front-end development.
I think that has his pro's and con's, but for me and how we develop here (Java/Angular), it fits perfectly.
But like I said... it all comes to the preferences, I have colleagues that use IntelliJ for back-end and VS Code for front-end.
VSCode.
I have been using it for almost 2 years. I use this to:
I am currently using VSCode.
I've used Dreamweaver (a lot time ago), Sublime, Brackets, Atom, Notepad++, a bunch of others and now VSCode. VSCode is my favorite one so far. It can be just a text editor but then the extensions can bring it closer to an IDE.
For IDEs it depends on what I'm working with and what OS I'm using. I'm usually going with Visual Studio or something from JetBrains.
Benefits of using VS Code
Extensions I use :
Note: There are many extensions available, which might suit your development enviroment.
Intelliji IDEA for Scala and Java.
VSCODE for Javascript, Python and others.
Although for a while I used Webstorm/IDEA for javascript, and paid the very expensive license fee for it, but VSCODE is so much better and free. Once I switched I haven't looked back.
I kept using sublime text because of its speed then recently shifted to visual studio code. Have tried Atom & Brackets ... slow af ... at least in my setups.... Sublime and Visual studio both are pretty fast and have enough plugins for a perfect workflow, but VS code has terminal built inside ... which gives you a bit more power & the recent live sharing feature .. is just perfect, themes are almost same in both editors , almost all developers build themes for both editors.
Personally, I do web-dev as my day job and game-dev as a hoby. For that reason, I use JetBrains IDEA at the company (UI + Java or NodeJS server), JetBrains WebStorm at home (UI + NodeJS server) and JetBrains CLion (Rust, C and C++). In addition to that, I usually use Kate for quick text editing. JetBrain products are paid products, and I pay for them because I earn money with them and need professional tools. As for CLion, I paid, because it's not expensive at all and I am willing to put a bit of money into my hobbies. Before I started using paid products, though, I used NetBeans, which is highly underrated imho. It is still actively developed, though not by Oracle anymore (which might be a good thing, actually; old website here).
The reasons to choose these tools are mainly because they are very feature-rich, providing everything I need, in a very easy to access, intuitive and clean fashion. Also, they all are cross-platform, which allows me to have the same development environment across Linux and Windows (without using Wine).
Now, let's take a look at your requirements and see how my environment would fit the criteria :)
I've considered a true IDE like PHP/Web Storm but haven't taken the leap
While using editors with plugins will get you through most small projects, having a full blown IDE will greatly simplify everything. An IDE usually is set up for a quick start with a pleasurable usage (lean interface with all the right knobs in all the right places) and has very simple menus to config some aspects. You usually also don't have to worry about setting up stuff like installing dependencies, setting up debugging or how to make the project configuration portable for all your possible editors or setups. You install the IDE, and it will just work(tm). There are people who like to puzzle together their IDE, and while I like doing that for my OS (Gentoo is one of the most masochistic experiences so far, but still my main system), I really enjoy having a comfy time with my dev-tools. I recommend going for an IDE (maybe a free one) and see if it's the right thing for you. What do you like? What do you dislike? What are you missing in comparison with an editor, like Atom? You will have to find out for yourself, if you really want an IDE or do the tool integration yourself.
Working with the web either managing a website or web application
For administrative tasks, you don't really need an IDE. Any text editor should be enough to edit config files. If you use a Windows server, Kate is a nice tool, but you might be more accustomed to Notepad++. MS Notepad, in the latest version, finally received support for UNIX line-endings, so that should work, too (finally).
Editing more than just html and css
What exactly is "more"? JS? Python? Kotlin? Elexir? Go? For HTML and CSS, a simple text editor with highlighting is enough, so Kate would fit the bill. If "more" means you also want to do a lot of JS or TS, then WebStorm is a very nice IDE which supports all the latest features and has awesome autocomplete (given you document your code using JSDoc or TS definition files). I never really tried anything else with it, but there is a whole load of plugins and you can go wild!
Regularly debugging a programming language like JavaScript, PHP, or Ruby on Rails
I just re-visited the whole JetBrains licensing model in order to answer your question. It is complicated. You either buy PHPStorm and RubyMine, or you get IDEA, which has plugins for everything JetBrains has to offer (with the exception of Rust debugging). IDEA is expensive, though, and you might get discounts for licensing more than one IDE. Personally, answering this question made me realize, that I should prolly re-visit my subscriptions and check if I am still using the best/cheapest options...
If you want to go the free-way, NetBeans provides everything you need. I do not recommend Eclipse, as it is cluttered and very non-intuitive. It is slow and stutter-y. Many people say good things about Visual Code and Atom, however I never got along with them and in the case of Code, Microsoft has a lot of suspicious license clauses imposed on you, so no thanks.
For me it's Flo's Notepad2
flos-freeware.ch/notepad2.html
It's Scintilla based without being a total piece of Scite. I say, I say, that's a joke son...
As a rule of thumb I dislike IDE's for the same reason I dislike a lot of more modern editors -- they try to shove everything into one window through tabbed interfaces; a massive step BACKWARDS in functionality if you're a multi-display user. It's nice to be able to open up three different files -- PHP, CSS, and JS for example -- side-by-side-by-side so I can see the code for all three and how they interact with each-other. It's just more productive that way.
Same goes for the stupid toolbar and panel bullshit that just sucks down screen space for nothing of value.. much like a lot of the artsy BS people crap into layouts wasting screen space on everything EXCEPT the content. In the case of many IDE's they waste screen space on pointless crap that would be better utilized to just SHOW ME THE HUFFING CODE!!!
Whilst there are a lot of editor features I like -- block level tabbing, indent rules, long-line rules, word-wrap indicators, tab to space / space to tab conversion, brace matching, multiple character set support, regex search and replace -- there are far more things slopped into 'modern' editors that just piss me off or get in the damned way.
Autocompletion is a great example of this, where most of the time I spend more time correcting or more time trying to figure out what the editor is doing for me, than I would if it just let me type the damned thing in! All I want to do is type some damned code, not jump through rings of fire because "wah wah, eye dunz wanna tiepz"
Colour syntax highlighting is something else that just pisses me off for being an illegible acid trip. I've watched people screw up and be unable to find their errors BECAUSE they were using it and thanks to the illegible colour contrasts of their favorite "gee ain't it neat" theme. I didn't like it when I first encountered it in Turbo Pascal 4 some thirty-odd years ago, and I've seen ZERO improvement in what it does or how it works since then. As cute as being able to see "hey you didn't close that string" is (what I rely on brace matching for) the simple fact is the rainbow-striping of the text makes the actual text range from painful to outright impossible to read! (seriously, the next joker that thinks blue on black text belongs in their editor is getting my 3 pound lump hammer introduced to their groin with great ferocity and passion!)
... and that's a good deal of why I like Flo's Notepad 2, it either lacks those 'features' or lets me turn them off.
More than anything I'd be a lot more forgiving in certain editors if they provided more options for turning annoyances OFF.
The relatively low memory footprint and fast load times garner it high marks as well. I don't need to waste 35 megabytes and 40 seconds on starting up A FREAKING TEXT EDITOR!!! (sorry sublime and Atom, but you inhale upon the proverbial equine of diminutive stature!)
I don't want or need compiler integration, I know how to use the command line. I don't want or need browser integration, that's why I keep all three native browser engines open along with two VM's so I can test ALL engines not just whatever outdated version is built into the editor.
Of course that it just uses the windows standard shortcuts (^X^C^V^G^H^F) instead of agonizingly vague/cryptic bullshit -- like say what vi/vim/emacs does, and just lets me TYPE THE HUFFING CODE instead of dicking around between command and entry mode (like emacs) helps too. I wanted to screw around with that nonsense I'd still be using wordstar commands like it was 1984. ^K this uncle-huffer!
So many "professional" editors are just filled with garbage tools, garbage methodologies, and stuff that "Just gets in the damned way" when ALL you should really need is a overglorified notepad replacement. There are just far too many times in other editors where I end up screaming at the display "Oh for F* SAKE JUST LET ME EDIT THE DAMNED CODE!!!"
It's hard to say what's worse -- the garbage 'modern' tools slopped in there that do nothing but get in the way, or the needlessly cryptic outdated trash like 'vi' where it's almost like these asshat clowns miss the days of Wordstar and Edlin. I wanted to waste time dicking around with pointlessly cryptic editor commands I'd drag out my Trash-80 model 12's Xenix so I can use 'ed'.
As with a great many things, I prefer the middle-ground atwixt the two.
I use VSCode. It does everything I need it to and has enough plugins for different languages to satisfy the most diverse of stacks. I particularly like the way it works with TypeScript to show me auto-complete hints when I start typing a class name, the linting 'fix-on-save' stuff it can be set up to do, and the nice tight integration with GitHub (and, more recently, Team Services).
Can't beat it for a piece of free software IMO.
Vscode is lit! Its really handy plus lots of plugin to use and still its faast. I used atom it was good too. There are like 19-20. Anyone can win
Developing is a lot more than typing code, so I think a powerful IDE is better than an editor, however elegant. I also think it'll be easier to use / switch to an IDE rather than trying to slowly turn an editor into an IDE with extensions.
As for which specific one, you can choose based on your needs and budget. Personally I tried Eclipse quite a bit and some others more superficially, but I'm very happy to have switched to JetBrains IDEs (like the Storms you mention) (mostly IDEA, PyCharm and CLion). The only downside is that they're expensive, but I spend so much time programming that it seems worth the cost. Some have community versions which still offer IDE-level features, or free student/open-source versions.
EDIT A few notes to address other comments:
{ for example, if you type { it will enter {} (cursor in middle), but if you type {} it will still enter {}, not {}}. Still applies with stuff in the middle.Memory use and startup times are complaints that are true. I think coding conveniences are a good use of memory, and I only start the IDE once a day at most, but if your PC only has 512MB then no, don't use PyCharm.
Paul Lefebvre
Xojo Developer Evangelist
For a text editor, I primarily use BBEdit . I've tried Visual Studio Code as well, but bbEdit seems to fit the Mac better so that's what I use 90% of the time.
For an IDE, I primarily use Xojo to make cross-platform apps.