My 2017 Web Development Setup (Software)

So this is part two of my 2017 Web Development Setup post. The first post focused on hardware, this post will be focusing on some of the software tools, utilities, and operating systems I use on a day to day basis while developing software.

Just like my hardware, my software is always changing depending on the tools I need for the task at hand, but there are some pieces of software that are always part of my daily setup.

Operating System

Desktop: For my desktop workstation I use Ubuntu 17.04, I get a lot of questions as to why I chose to develop on a linux operating system instead of Windows or Mac. The truth is there are a lot of benefits when you use a linux operating system, I started using linux as my primary operating system in 2007 and have never looked back. Knowing my way around linux made it very easy to set up servers as I already knew all of the commands to set up a lamp server on linux, this came very handy when dealing with AWS EC2 instances.

Laptop: I dualboot my macbook pro, I am running the latest version of OSX and I dual book Xubuntu 16.04. I mainly use my macbook for development when I travel and use Xubuntu unless I need to do design work.

 

Main IDE

Best IDE for PHP Developers

My text editor/IDE journey has been a long one and I have evolved from a simple text editor to a complex IDE. Most of my work has been with HTML, CSS, Javascript, PHP, and JAVA, and Python so the IDE/Text Editors I list here are unique to the tools I  needed or wanted to use based on the languages I was using. I started off with Microsoft Notepad in the early 2000’s, at around 2004 I switched to Dreamweaver for a bit, eventually I made my way to use Notepad++ which I loved for a long time until I found Activestate Komodo IDE, around the time I started using Komodo IDE I also started to develop in Python this was around 2009 and was using the IDLE text editor. In 2010 my Python work was done and I went back to coding in PHP on a daily basis at this time I started using Netbeans and I stayed with netbeans until around 2015 when I started using PHPStorm.

To this day I use PHPStorm by Jetbrains, it is the most complete IDE when it comes to PHP development. This year I started using DataGrip for Database management and SQL, replacing SQL Workbench, and I started using WebStorm for Javascript development. Both of those products are also made by Jetbrains. Some of the development I do involves writing in LUA to develop mobile apps, for this I really enjoy using Sublime Text along with a few Sublime Text plugins.

 

Server Environment

Because I am primarily a backend php developer I mainly work on the LAMP stack, which means my primary server environment is Linux based. There are a lot of great Linux server environment CentOS, Fedora, and Debian come to mind. My OS choice for server is a debian based operating system, I chose to run Ubuntu server on most of my main servers (staging, test, and live servers). The reason why I chose Ubuntu is because I am very comfortable using Ubuntu, I run it is my Primary OS on my desktop workstation and have been using Ubuntu for years.

 

I hope you have enjoyed this insight on some of the applications I use to develop, there are a lot of other tools I use and some non to essential bits of software I use to get me through my day such as Google Music to keep the tunes going while I code. In the end of the day I use the tools that are fitting for the job and find myself refreshing the tools I use every few months or years depending on what type of projects I am working on.