This will contain opinions and my personal preferences. If something bothers you ... to bad, deal with it. Majority of this comes from the perspective of me as a PHP developer and especially with a framework such as Laravel.
Often in casual conversation or while doing support for Laravel, I get asked about what I use to develop with and then often why. These are some of my feelings and thoughts on the matter from my perspective. I highly recommend these things I will mention below.
People who know me, know that I love Sublime, Sublime Text 3 in particular. This is an absolutely phenominal editor. It changed the world for me. Before finding this beauty I was tweaking gEdit to have all the fun features that a developer would want.
To me you honestly can't beat the speed of Sublime. It is super fast and highly extendable. The real power of it to me comes with how one can move around in it extremely fast. I have done all of my Laravel development and support with Sublime.
This editor changed the landscape which is why many many people still use it today even when they have other options and even have IDEs that they use from day to day. Anyone who uses it seriously should buy a license and help out the developer of this amazing product.
A lot of people use Atom. It's free and highly customizable. These are great things.
In my personal opinion, we know that Atom is trying to be Sublime in another way. Competition is a good thing and will push forward features in all editors.
My biggest issue with Atom is its speed. Some people say its not an issue, but it is a noticeably slower editor for me; not the blazing speed of Sublime that I am used to.
Yes we all know how much people love VIM. Enough already, we know its amazing, I use it everyday, but I also live in the year 2016 and use a graphical desktop environment. My days of doing everything from virtual consoles and terminals is over. For the first several years I used Linux (starting in 1998) I tried to do everything from the vitual consoles. Music, browsing and especially development were all done via virtual consoles.
It could be my age and lack of desire to have to mess around with things as much, that I do almost nothing in virtual consoles anymore; they are a fallback measure to have a command prompt if something isn’t working properly in X. If you need a terminal interface, load your terminal emulator. Its as simple as that. There is no need to leave X unless something is wrong any more.
No matter how much you like the console, it can’t compare to how you can visually setup an editor or IDE to have constant awareness, there just isn’t the screen space involved with a terminal for the most part. Oh yea and using a cursor is a good thing. If I only wanted to use a keyboard, I would use all the keybindings that are provided to do that in an editor/IDE. One does not need to use a terminal to use a keyboard.
If you love VIM that much and also like the idea of … graphics, almost all these editors/IDEs will have either a VIM mode or VIM bindings so you can feel more at home.
Having said that, I use VIM every day. I do use the terminal especially for quick things, and on servers, if VIM isn't installed, you are doing something wrong :).
I came to Komodo IDE in version 9, had used it in the distant past also. In all fairness, it isn’t as intuitive as one would expect at first and has some performance issues that go along with it, especially as time goes by. The difference in performance from an editor to and IDE is expected though as IDEs in general are doing a lot more than what an editor does. One must keep this in mind at first and will take a little bit of time to get used to. Its a nice product without a doubt, but I am not a huge IDE person myself. I am in a position where I understand PHP well and especially Laravel. The extra features an IDE offers, I have always been fine without and my flow with Sublime is fast.
Without embracing the differences between and editor and an IDE, I often found myself jumping back to Sublime to get some things done or for navigation purposes, as the “Go to Anything” and other shortcuts are amazing in Sublime.
Komodo also has these features in its “Commando” utility.
Things have changed in a big way. Komodo IDE 10 is in alpha at the moment and I have been using it daily. This marks a very large step for Komodo and I think people should not pass it over.
Though this is in Alpha, I am using it and enjoying it very much. The speed has improved greatly, the interface looks amazing and the best part is it makes more sense. Things are just more intuitive; there has been a major UI/UX adjustment and it is wildly apparent.
I just couldn’t fully get into using Komodo IDE 9, version 10 changes that for me and should make you consider giving it a try.
The major benefits right off the bat from 9 to 10 are the speed and visual improvements. These are the first things you will notice. After that there are many things you will notice have been improved upon, and most of them go along with the speed improvements. Commando works great, the fuzzy searching is what I expect. The positioning of tools and the bars you use to navigate are great.
To me version X is a game changer. This should hoist Komodo IDE back into the running when people are looking at modern IDEs.
If you want the real feature list, please refer to the Komodo website.
Komodo unlike many IDEs currently available, is not Java based. This is a very big plus for me. Personally, I am not very comfortable with the look and feel of Java applications. They are never quite “native” enough for my liking. This isn’t the case with Komodo; feels as native as any other application. For other people they do not mind these Java applications, and many of them are hands down absolutely amazing applications. Its just a personal preference for me that I can’t easily get past. PHPStorm, NetBeans and IntelliJ are great products and if they feel right to you, use them :).
Note - Komodo IDE 10 is in its alpha stage. I use it every day, but if you want to use it you will encounter bugs. Any bugs I have found I have filed issues for and have been taken care of very quickly. I also have had the oppurtunity to talk with people who are developing it every day. It is a very awesome group of people who are very interested in making this a great product.
I will always recommend Sublime Text to people as it is a fantastic editor. This is a product that if you are using every day you probably should buy a license. If you are looking for something free, perhaps Komodo Edit might work for you or maybe Atom.
For an IDE I have enjoyed Komodo IDE. There are other options out there and you should probably try them all. All these tools are meant to help you in your day to day. You will be using them often, so find the right fit for you.
If you are not used to an IDE it may take some time to get used to. Almost anyone who uses one will tell you it is worth it. Though people may not have the time to get comfortable with many of them, pick one and see how it feels after a few days. One single day probably wont be enough to get past the initial discomfort.
In the future I will have an article and maybe a video about Sublime and how I use it to get around projects in blazing fast speeds. This will go into why I think its a tool you should have and how to improve your speed while using it. A big part of not using an IDE is learning about the structure of your application and the framework you use. You kinda have to as you will have to dive through it often.
Following those as Komodo 10 reaches maturatiy and becomes stable, I will have some information available about it in general and how to use it in your development flow.
Here are some Sublime plugins that I have used that you might find useful.
- Better Coffeescript
- Laravel 5 Snippets
- Laravel Blade Highlighter
- Markdown Extended
- Package Control
- Xdebug Client
- SublimeCodeIntel ?
There are others I have installed, but they aren't all as important.
One of the best things you can do is find a nice theme and color scheme that you like.