Billy Fagan

Software developer, doing mostly web stuff these days.
Aberdeen, Scotland
https://github.com/billythekid @billythekidUK

My machine

My main iMac for work has these specs:

27-inch iMac with Retina 5K display running OSX "Sierra"

With the following configuration:

• 4.0GHz quad-core Intel Core i7, Turbo Boost up to 4.2GHz

• 32GB 1867MHz DDR3 SDRAM - four 8GB

• 2TB Fusion Drive

• AMD Radeon R9 M395 with 2GB video memory

I also have a home machine which is this old thing:

my about screen

Low level stuff

this is essential if you have a mac.

running zsh with Oh My ZSH

I have a ton of aliases (on top of all the things I have set in oh my zsh) that help me out. For example I seldom need to ssh into a server in more than 3 characters. Can't be wearing out my keyboard right?

Free Mac tool for sorting your windows out. I don't think you can ever have enough monitors but this does its bit to help me out.

ClipMenu is my favourite but unfortunately the developer has broken the dropbox link to it so on my home machine I'm using CopyClip. These are clipboard managers that I pretty much only use because they store my clipboard history in them. This is essential when using a computer in any capacity I reckon.

For the web

I know as a webDev I have all the browsers, however this is my go-to browser for regular work and play.

The best web dev IDE by a mile, imho. This has WebStorm built in too so if you're usually a front-ender who only works in JS this will still rock. I use this via the JetBrains Toolbox App which is just a kind of launcher for JetBrains suite of products.

I've gotten most of the guys I work with onto using valet. It's just so convenient for local development. You can simply throw an index file into a folder on your machine called 'mywebsite', hit mywebsite.dev in your browser and boom, you're seeing the index page.

I use the ruby version of sass mostly, however my front-end workmate uses the node-sass so I turn it off when working on his stuff and just use his gulp setup. Honestly this stuff isn't worth getting worked up about. Use what's best for the team, not you. If I'm using gulp I use the terminal in PHP Storm to run the watcher. If I'm using my own stuff I set a File Watcher in PHP Storm itself to do the magic. (Have I mentioned how much I love PHP Storm?)

I have no idea how this is a free tool. It's a brilliant database tool which can connect to everything, even via SSH tunnels.

Version control

I work for various agencies around town as well as on my own work so I need accounts all over the place. These are the most common providers I use. Pretty much all repos are using git anyway and PHP Storm has git support built in so I seldom run git stuff in the terminal. If I'm using GitHub or Bitbucket I tend to use webhooks for deployment (i.e. I have git installed on the server and when I push to a branch it'll pull). For Beanstalk I use their built in deployments (SFTP/SSH/whatever)

Hosting/Domains

Because I work around a number of agencies I use a number of hosting services etc.

I'm using Hover exclusively for my domain management these days. I don't even bother shopping around for deals. Their interface is excellent and customer support is bang on. Only thing I can fault them on is their lack of provision for .uk domain stuff, such as domain privacy on .uk domains. Their hands might be tied though so this might be unfair.

For my own work and client work I'm using Linode and Laravel Forge to handle the server 'admin' stuff as well as provisioning new servers. Linode because they're rock-solid and have been around forever. Forge because the interface is superb but doesn't tie you in to using it. I could do it all on the server if I wanted and Forge doesn't care. Also Taylor who runs Forge is amazing at getting back to you about any queries you may have.

This is a solid offering but frustrating at times. It's so much more than just hosting. It takes the headaches about hosting away too as their support is really good, however it's ticket-based. Mostly your questions can be answered in their FAQ area. Webfaction are *not* bleeding edge however. Want to roll Letsencrypt certs? It's more than a couple of clicks (I've yet to get my CRON renewals to work after months of trying) That said though, if you're not a server admin, running a webfaction setup might be good for you. You don't have root (or sudo) privileges so you're probably not going to mess anything up there too badly!

One agency I work for use Cloudabove for almost all their clients, although they get the clients to set it up themselves. It's a more "traditional" hosting setup, cPanel as standard but seems to be pretty solid. Locally mounting a disk is the easiest way to deploy to these servers I've found. (And PHP Storm makes that a snip, of course)

Email

I was grandfathered in to this as a long-term user so it's actually free for me to use this. I'd probably pay for it though if I had to

This is a Chrome extension that allows you to use PGP encryption in Gmail.

Passwords

I use both of these password managers, occasionally syncing them with each other. I'm leaning towards LastPass recently because it's a bit more integrated with my browser. I'm not going to be leaving passpack though because it's never let me down yet.

Other browser extensions

Ad blocker, the best one, 'nuff said.

This one I could probably just use the developer console for, but it's a handy convenience that I like. Mostly I use it for inspecting rather than editing.

RES

Another essential. If you use Reddit, use this.

Vue is a javascript framework that I seem to be using more and more recently. This extension helps it integrate with your developer console.

This just lets me use strikethrough text in Gmail because I'm hilarious like that and need to make sorry not sorry comments all the time.

Gotta keep those prying eyes off your stuff right?!