I have been developing on Ubuntu-based boxes for many years. I finally decided to write a post about how my current development
box is set up. I am running Ubuntu 14.04 LTS (Trusty Tahr) on a old Dell Optiplex 780 upgraded to 8gig RAM. The easiest starting point is to boot into an installer from a USB stick. You can create a bootable USB stick on a PC by following these instructions. Be sure to download the version of Ubuntu that is correct for your computer’s architecture.
Why I chose Ubuntu
I use a PC (and occasionally a Mac) at my day job. I have nothing (well, not TOO much) against Microsoft and Windows. But, I found the Linux community, functionality, and available software to fit my style and tastes. Plus, as a web developer I am working with Linux on the server side on a daily basis. So, I wanted to better understand the OS. And, it is just cool to work in a Linux environment. In fact, I like Ubuntu so much that I have VirtualBox set up on my work PC with an instance of Ubuntu desktop on it.
Getting the OS set up
Setting up Ubuntu is pretty easy and straightforward. Plus, there are complete instructions here. So, I am not going to go into the details of the setup. Please do make sure that the computer you are setting up is clear of all data – save anything you want to keep elsewhere. I recommend a computer that is dedicated to development. You may at times push the computer to its limits. Keep things you don’t want to lose on a different box, or in cloud storage.
I like to put the launcher to the left side of the screen, and set it to auto-hide. That way I get as much usable screen real estate as possible. To set your launcher, click on the icon in the top-right; it looks like a sun combined with a switch. You’ll get a drop-down menu; choose ‘System Settings…’ on this menu.
Turn on autohide with the slider switch on the right. I like to set reveal sensitivity to High. There is no ‘OK’ button. Simply close the screen; your settings will be saved.
As a developer you work in the terminal a lot. I like to set the transparency such that I can just leave the terminal window open while I read instructions. This saves me from continuously ALT-TABing between windows. Set the transparency level to your liking by opening a terminal (Ctrl-ALT-TAB), then right-click within the terminal window. Hover over ‘Profiles’, then select ‘Profile Preferences’. On the dialog window, choose the ‘Background’ tab, then set the slider to the transparency level you like – mine is at about 70%.
The first bit of software I install is Chrome. Ubuntu comes with Firefox, which is fine. But, I am more comfortable with the Chrome Developer tools (Perhaps I’ll write a post about those). Use Firefox to go to the Chrome download page. Download the installation package. When you open the package, Ubuntu will walk you through the install.
I use Vim as my command line editor. Python-software-properties for ppa packages, Curl for downloading packages, Composer if you are doing PHP dev, and Git is of course required. Here’s how to get them all with 2 lines in the terminal:
$ sudo apt-get update $ sudo apt-get install vim curl git python-software-properties
Coming up you’ll see how to add Vagrant for installing and running virtual server setups. But, for a down-and-dirty quick local server for smaller projects, I run Nginx with php5-fpm, and install Composer system-wide for a way to run things faster than on a VM.
$ sudo add-apt-repository ppa:ondrej/php5 $ sudo apt-get update $ sudo apt-get install nginx php5-fpm php5-cli php5-curl $ curl -sS https://getcomposer.org/installer | php $ sudo mv composer.phar /usr/bin/composer
That last command moves composer to the bin and lets you run it without typing the full path to the composer phar
Vagrant / VirtualBox
For true server testing and development I use Vagrant and VirtualBox. You can install both from .deb packages from their websites VirtualBox Downloads and Vagrant Downloads just be sure to choose the .deb, and the correct one for your computer’s architecture.
My IDE of choice is PHPStorm from JetBrains (A paid product, well worth the $99 it costs). If you use PHPStorm, or another IDE that requires Java, you’ll need to install Java on your box. I have not had good luck with OpenJDK. I recently switched to the Oracle JDK from webupd8team. Here is the easy way to get it (these instructions are for Java 8):
$ sudo add-apt-repository ppa:webupd8team/java $ sudo apt-get install oracle-java8-installer $ sudo apt-get install oracle-java8-set-default
Be sure to explore the Ubuntu Software Center (there is a link in the launcher). I also have The Gimp and InkScape graphics programs install on my development box. There is a plethera of software aavailable.
Best of luck and I hope you find this post helpful. PLEASE post, in the comments, any corrections or problems you encounter. I want to improve this post anywhere improvement is needed.Share with your social networks