In this post I'll be talking a little bit about how I work and which tools I use in my day-to-day life. I'll briefly explain each of the tools and why I use them.

The Machine

I develop primarily on a Mac these days, though that wasn't always the case. I've been a Windows user for a long time but recently switched to OS X for 90% of the tasks I do. I've been working with OS X for a few years at work and since Windows was just limiting me too much in terms of development, I've bought a brand new Macbook Pro Retina 15".

Windows was a nightmare for me, here's a couple of the main reasons I've switched:

  • Docker didn't function well - the installation of boot2docker was a hassle.
  • Docker compose wasn't available on Windows, the first release for Windows was available after I had switched to OS X.
  • Lack of ansible support, too many work arounds.
  • Lack of proper applications, I've gotten so used to Sequel Pro at work and Windows alternatives were just too heavy, and ugly.

Every time I felt like starting a new project, I first had to wrestle with Windows to get a decent development environment set up which met my requirements. As a result, I always ended up losing interest in the project before I even started it.

Before I end this rant, yes, I've also considered Linux as an option. However, it also lacked a few critical requirements, but those will become clear when you see the applications I can't live without!

The Weapons

So here they are, the weapons I use nearly every day and can't live without.

PhpStorm

Screenshot of PHPStorm with some random code

I've only been using PhpStorm for a couple of weeks, but man do I love it. I always had my doubts, IDE's are always bulky and packed with features I may not use. They are usually slow, ugly and take a long time to load.

To some extent that is also the case with PhpStorm, but once it's done indexing your project - it sure makes your job a hell of a lot easier. Of course it depends a lot on your hardware, the faster your device is, the faster it will run. I can say it runs fine on a 2011 Macbook Pro 13" with an SSD (Used to have and HDD) and 8GB memory.

My advice is, if you are doubting the switch to PhpStorm, try the trial and use it! Just force yourself to use it for a few weeks; Learn the keybinds or customize them to your needs; Install and remove the packages you need and don't need; Add live templates; Install a theme and syntax highlighting you like; And just go code!

Additional plugins I have installed:

  • Material Theme UI
  • Markdown
  • PHP Annotations
  • Symfony2 Plugin
  • Wakatime (I like statistics)

Sequel Pro

Screenshot of SequelPro

This is probably the best database management tool I've used. It's simple, performant and has a user-friendly interface. But best of all, it's completely free!

1Password

1Password is an application I've only been using for a few months now, I tried the trial after a colleague at work recommended it. While I had negative experience with password managers in the past, 1Password managed to convince me into buying it. The main reasons were that it didn't need my data on their servers, I can sync the data wherever I choose. Apart from a user friendly app and browser extentions, it also doesn't mess up forms in the browser like other managers (that i've tried) do.

Honorable mentions

  • Music: Spotify
  • Instant Messaging: Slack
  • Browser: Chrome
  • E-mail: Not sure yet, currently switching between Nylas and Airmail but I'd like to try Polymail.