My thoughts on switching to PHPStorm

Over the past year I’ve transitioned myself from using Sublime Text to using PHPStorm as my IDE at work and at home.

Before Sublime Text, I used Eclipse PDT, which is the PHP version of the popular Eclipse IDE. I was perfectly happy with all the IDE bells and whistles that came with it, but eventually, I realized how slow and finicky the IDE had gotten, and I decided I needed to transition to a new one.

Sublime Text was the pretty popular choice at the time, and using it was like a breath of fresh air. No longer do I have to wait an insane amount of time before I can even start to edit my code or have to suffer through light-hearted ridicule from my colleagues for using an outdated IDE. Sublime Text at the time was everybody’s choice due to it’s speed, flexibility, modularity and fame.

I used Sublime Text for most of my time working at Bright and for a while it served as a pretty awesome “IDE”. Slowly though, I started missing the features I used to enjoy with a full-featured IDE. Things like PHPUnit integration, a terminal that’s built-in, XDebug integration, documentation hints, and code analysis that told me if I had syntax issues in my code. The biggest one though, was the ability to click-through classes and methods to go to them. These are things that simply cannot be done in Sublime Text, since it requires a PHP runtime that continually analyzes your code to link these things together.

I’m an avid fan of Jeffrey Way’s Laracasts, and coincidentally, he came out with a PHPStorm series (if you haven’t yet, you should definitely sign up! It’s not just about Laravel). I watched it, and immediately felt like I was meeting an old friend, Eclipse PDT. Almost everything I loved about Eclipse PDT was here, and none of the issues I had before (granted, my workstation was better so that might have been it). I watched the whole series with earnest, and made sure to learn all of the shortcuts and features I used to utilize in Eclipse, as well as any new things that PHPStorm had to offer, like built-in Composer support. It was definitely helpful that Jeffrey Way is one of the best teachers I’ve ever had the pleasure of learning from – he definitely has a knack for teaching complicated things. One other thing that was definitely helpful in my road to PHPStorm mastery was this plugin called Key Promoter, which will “pester” you with an annoyingly helpful notification that tells you the shortcut as well as the number of times you’ve ignored to use it whenever you use the mouse to do something if a keyboard shortcut is available.

Key_promoter_266

Image from plugins.jetbrains.com

Some of my co-workers swear by vim, and some still use Sublime Text. I introduced them to PHPStorm, but it doesn’t really work for them, and that’s totally fine. You should always strive to find tools that complement your working-style, but that doesn’t mean you shouldn’t try out new things as well. Who knows, you might just discover something new that works pretty well with your style, like I did with Sublime Text, or even rediscover something you already know works, like I did with PHPStorm. Always keep in mind that these are only tools – they’re meant to help you with your work and not hinder you from getting shit done.

4 thoughts on “My thoughts on switching to PHPStorm

  1. Basically, moving from an editor (i.e. Sublime) to an IDE (i.e. PhpStorm, Eclipse, VisualStudio) is an eye opener for a developer. However, PhpStorm has always come short of expectations, every time I have to work with it. Its just like a badly designed non-matching pieces of Lego quickly thrown together. And this is much so, as JetBrains had only one good IDE (Intelij IDEA). Its a no brainer they wanted to expand into the PHP, Node,js, Python, etc markets on top of it. But all these other versions are all cut down, and frankly all of them being an after thought

    Moving from PhpStorm to NetBeans will be another eye opener for you. Its the WOW factor, you have in this article, multiplied by a hundred. All is matching awesome together, working straight out of the box, exactly as it should. Its simply brilliant.

    1. Hi Milan,

      I’ve tried Netbeans before but I’ve never really used it as my main IDE. I do disagree that PHPStorm is like a non-matching LEGO set. My experience with it thus far has been great – integration with Composer, PHPUnit, Vagrant and other modern PHP tools have been pretty well done in my opinion. Can you expound on the integration of these tools in Netbeans?

      In any case, thank you for reading the article!

      1. All the features you mentioned, are now more or less default in every decent PHP IDE.

        PhpStorm is more for junior to mid range developers. It first started in end of 2010. Not very mature, features cut off, to allow for multiple IDEs. Whenever I work with it, I find it very counterproductive, and not intuitive. Lots is left to be desired. Easy to start with for novices though, and they are quite happy.

        Netbeans is more suited for professional developers. It was first started back in 1997, and has about 20 years development history by names like Sun and Oracle. Its harder to get full grasp of all Netbeans features (not all PHP related, i.e. check the Netbeans Platform), and junior to mid levels will not feel at home out of the box. I have seen many check it out for few hours and give up. And this is excellent, as PhpStorm has to have customers, too 🙂

        Besides, being an Open Source IDE, Netbeans has many plugins available, and you may do your own, if you wish.

Leave a Reply