The John Wick of PHP Software Development
In 2012 I lived in a two bedroom, 500sqft apartment with one of my best friends. In 2013, I moved in with my (then future) wife. In late 2014, we moved to Edmond Oklahoma where we rented a house, and started a software development business together. Fast forward to 2016, where we are now living in our new house.
One of the biggest perks about building a house (and working from home), is figuring out exactly what you want to do with your working space. It’s been a long time coming, but I finally have an office to be proud of.
I originally found the Skeletek rack from someone who posted a recommendation on reddit for a larger version. I knew I wanted a small, sturdy, two post rack. Skeletek 12U fit the bill, apparently holds like a thousand pounds, and one of their selling points is they sell a kit that turns it into a 24U rack. I bought the 2U shelf because it was reasonably short, and had a weight capacity of 50lbs, which was plenty for my cat to jump up and down on it. I intentionally went with a two post rack as I didn’t think a four post footprint would work for my needs, what this means is that I have extra constraints when picking out server chassis’, and while I could technically center mount servers, I’m going to stick with things that work with the rack ears.
When I originally conceived the new office, I wanted every single room to have CAT6 cabling. All the cables were then pulled into the office and terminated for me. After lots and lots of searching, I came across keystone jacks, which come in punch down or female to female RJ-45. The pass through patch panel really cleans up the cabling for me, and I’ve been really happy with it. Only thing to note about the power strips is that they have plugs on front and back, which allows me to have easy access to power from either side. UPS is behind the rack.
I went all Ubiquiti. The Security Gateway (the router) running off of the Unifi software (Vyatta fork) is limiting as opposed to something like pfSense or a Sophos box as it doesn’t really have any “security” features except port control, however there is great value in having a fully connected software suite. When I originally ordered the switch, I actually ordered a 250W 24 port switch, but it came stuck in a reboot loop and I had to RMA it. Instead of waiting a long lead time for backordered 250W system, I spent the extra money to bump it to a 500W system. Both the Security Gateway and the Switch had really whiney fans (apparently this has been fixed with the new revisions), so I purchased some tiny Noctua’s that keep it whisper quiet and the temps low. The AP has been rock solid, and currently hangs in the kitchen powered from POE. After a month, I added the second 24 port non POE switch, for extra networking for IPMI, and redundant links to the super micro servers.
I started by purchasing a Supermicro barebones kit off of Amazon. I added a Xeon E3-1275 v5, bought 64GB of ram, and 250GB Evo 850 for it. I threw in Proxmox and had a little virtualization lab. I eventually ran across two short depth servers on Ebay, with the original Xeon E3-1270 with 8GB of ram, and pulled the trigger. I replaced the blower fans in both refurb units to something a little quieter. The refurb units both run Proxmox, and stay off until I have a workload for them. The custom is running 24x7. All 3 servers are set to run backups to my Synology’s.
I originally purchased a 716+ when the plus line was recommended to me (Note, the 716+ has been replaced with the 716+II with a slightly different processor). Formatted it with Btrfs as the 716+ was one of the first to support it. I purchased an 8GB ram module, and voided the warranty immediately by bumping up from the original 2GB. To be honest, I hardly ever use more than 2GB of ram and would’ve been just fine with the originally installed amount. After getting my photos, movies, music collections all running through the 716+, I started running snapshots from all my servers and set it to as the time machine target from the OS X server. I went on Amazon Business (different from the normal consumer Amazon), and they had the 213 for $60 off. I bought all 4 of my 2TB HGST Ultrastars from two different batches at $50/ea, which seemed like an incredible deal at the time.
I’ve been tinkering around with Raspberry Pi’s for a while now. The Raspberry Pi 2 runs as a Pi Hole, whereas the Pi 3 runs as a little testbed unit. The real unique thing about my setup is the POE splitters. If you look on Amazon there are tons of options in the $5-10 range. I no longer have to run extra power cables, just plug the Pi into a POE splitter and now it’s powered off the switch. I recently added two Unifi dome cameras that both run via POE in the front and back of the house. They run off the Unifi Video controller that runs on the Supermicro, which records video files to the Synology. I plan on adding several UVC-Micro’s when they are updated later in 2016.
Office furniture is expensive. I’ve wanted a standing desk for about 3 years now, however I’ve always been put off by reviews talking about “wobbling.” I almost bought a pricey Steelcase standing desk, before deciding to look up wooden tops (I thought I might be interested in building a desk from scratch at one point). After looking at custom tops, I ran across cheaper workbench tops, which led me looking at workbenches, which led me to some of the nicest workbenches I’ve ever seen, from Gladiator Garage Works. My dad had a Gladiator set in his garage a long time ago, so I already had some bias going into looking at the workbenches. They claim to hold 3000lbs each, and don’t move or wobble at all.
I ended up getting at Imprint mats after several friends recommended them. They had a really good deal (35-40% off), and I ended up purchasing 3 of them. Originally I thought I might buy a drafting chair, but they are pretty expensive ($300-1XXX), and I was concerned about where to put them. Barstools ended up being the perfect balance of height, affordability, matching (looking good), and storability.
Main machine, OS X:
Built this computer as a high end machine in college with one of my best friends as a database server. Now serves as my daily machine. I’ve changed operating systems 4-5 times as most of my code / development setup is stored on a NAS and server. Currently it’s hackintosh’ed, but I’ve had Ubuntu and Windows Insider Preview on it as well. No real strong opinions on why this is better / worse than any other machine, it just works for me. The GTX 960 was the cheapest card with 4 monitor inputs (3 display ports) when I bought it. My current setup has two 4k displays and one 16:10 display all running through the 960, and the other 16:10 display running on integrated graphics, all via display port with 60Hz refresh rates. I don’t game much, so I don’t run into almost any issues.
Secondary machine, 2009 Mac Pro, OS X Server:
Purchased in 2015 to replace my main machine. It’s technically a 2009 Mac Pro that was firmware upgraded so they could throw in the six core Xeon W3680 (Westmere) processor. Ultimately ended up liking my other machine more, even though the 6 core Xeon benchmarks better than the 4771. Case is pretty damaged. I keep this around as an OS X server & testing device. I use it daily with VNC server. The weakest potion of this machine is the graphics, as the GT120 is really really old and weak. Newer “flashed” Mac video cards cost an arm and a leg for what you get, so I just bought a little headless display adapter, and use it to offload work to.
Chromebook Pixel & Macbook Pro 13" are both used by my wife, Rachel. I occasionally share the Macbook Pro depending on working environment. Thinkpad was my original laptop, and serves primarily as a test device. Chromebook 11 serves as my travel device. As an aside, we love ChromeOS in this household. We use Google Apps exclusively for our business, and ChromeOS requires literally 0 maintenance. Love it. You might notice at this point there is nothing running Windows. That's not on purpose. We do have a couple of older Windows machines that we pull out 3-4 times a year for taxes.
All four displays are connected via display port to the GTX 960 / integrated graphics. I originally started out with 1 of the 1920x1200 displays and loved it so much I bought another one. The second one’s screen temperature didn’t quite match the first, and had to go through a lot of calibration. Upgraded to the 4k displays in early 2015 on an Amazon sale. Keeping the old displays paid off big time when I moved to my new office.
The star of the show is my keyboard, which I really enjoy. MX clears are comfortable, and not too loud with the o-rings installed. The next best purchase I’ve made would be the headphone stand. Super cheap, well made, holds the my noise canceling headphones, and has 3 USB 3.0 ports. To be honest, the reason why the headphone stand is my next best purchase is because having a USB hub is new for me, and easy access to my flash drives and Yubikey’s are a big plus. Typically I use my iPad to steam music and podcasts to the Wren bluetooth speaker, and I use my headphones for Skype / Hangouts meetings. The Bose QC’s are the older, wired model, but the noise canceling is top notch. Great for just putting on even to block out lawn mowers and the like.