#StandWithUkraine

PHPStorm [software worth buying]

phpstorm_icon When it comes to tools of trade it is much easier to justify commercial software that ends up paying for itself by providing better convenience and productivity.

Since PHP (more precisely WordPress) development had became my main occupation I began to look more actively for good software to use and ended up moving from NetBeans to PHPStorm – PHP (as well as HTML/CSS and JS) IDE that claims to focus on productivity.

What it does

PHPStorm is cross-platform IDE that runs on Java. It aims to provide highly productive development experience with focus on convenient interface, streamlined common operations and extensive set of features.

phpstorm_interface

It does not feel much different at first, concept and most of panels/tolbars are very much like those in any other IDE. It’s not something that suddenly makes you productive, it is software that gives you such option if you spend effort to pursue it.

Strong features

The cornerstone of productivity improvement is aptly named Productivity Guide available in menu under Help. It gives you table of features with breakdown how much use each one saw so far. It is continuously useful, both to jumpstart you on functionality initially and check what more can you use more in the long run.

I am big fan of incremental search and its implementation in PHPStorm is pretty much nirvana. After search hotkeys set in – searching for anything (from files to class methods) is extremely snappy. Much less time spent digging through folders and constructing search queries, much more time spent dealing with actual code.

Refactoring (boring? necessary!) has plenty of functionality related to it. It is especially impressive that you can command to globally rename something and get accurate preview of changes (not only in code but in non-code text as well) and selectively tweak which parts to refactor or skip.

PHPStorm comes with extensive out-of-the-box support of version control systems. Subversion implementation is very solid. Mercurial is bit more raw and I had no chance to use Git parts yet. It also supports FTP and SFTP deployments. You can even put everything together and commit to different repositories and upload results to site all in single action.

Downsides

The concept of projects in PHPStorm is kind of weak. Projects are very folder-centric and basic stuff like renaming the thing is just not there. Projects also force separate windows (with tabs being for current project) and when you have three projects named www things get confusing fast.

I ended up constructing huge single project, combining multiple virtual hosts in Uniform Server with a lot of directories set to exclude and favorites lists acting as logical sub-projects. Worked out with some effort, but I miss more flexible and configurable projects in NetBeans.

Pricing

The IDE is free for open source projects and educational institutions, I guess for such it is no-brainer to go for.

For the rest there is one month trial (no function limitations) and $100-$200 price tag (with occasional 50% off promotions) that gets you one year of major updates.

Overall

This is not the software to treat lightly. It is serious tool with considerable learning curve and it takes effort to get most use out of it.

Home http://www.jetbrains.com/phpstorm/

Download http://www.jetbrains.com/phpstorm/download/index.html

Related Posts

4 Comments

  • Deryk #

    I switched recently from Coda to phpStorm and I really like it. Coda is more for fiddling with templates and phpStorm is a genuine IDE - great for more complex plugin development. I was worried that speed would be a problem, but so far it's not, even running as a java virtual machine, it's quite fast.
  • Rarst #

    @Deryk Yep, performance is very nice. I do manage to choke it at times with complex search queries and such, but my computer is getting oldish so no wonder.
  • Brian Fegter #

    I use KomodoEdit and love it. I'll check this one out too.
  • Rarst #

    @Brian Fegter I think I've tried it in the past (before I got deep into WordPress), but didn't like it that much. Went with NetBeans back then and used it till switched to PhpStorm.