Who are you, and what do you do?
I'm Judd Vinet. I'm a software engineer who likes open source software and startups. I tend to try and combine the two whenever I can.
On the Internet, I'm best known as the creator of the Arch Linux distribution, a little project I started back in 2001 when I was in university. Thirteen years later, Arch has grown into one of the more popular distributions on the planet and has a respectable number of offshoots and derivatives under it, as well as high-quality documentation for experts and newcomers alike. In 2007, I stepped down from my lead role at Arch due to time constraints. Now I'm just a cheerleader.
In my dayjob, I'm the CTO of a little startup called Bet Smart Media. We build software for the sports gaming industry, and it has some interesting challenges that tend to keep us quite busy. I also get to watch sports while I work, which is a nice perk!
When I'm not in front of a keyboard, I enjoy outdoor pursuits, music, and a few sports. You'll either find me underwater (swimming), on two wheels (cycling), strumming (guitar), or cheering at a baseball stadium (or pub) somewhere.
What hardware do you use?
Gone are the days when I had 15 desktop computers in my bedroom as build clusters for Arch Linux. Today I'm more of a minimalist, prioritizing mobility over screen size or computing power.
I presently carry a 2012 MacBook Air 11" around with me wherever I go. I maxed out the RAM (8GB) and put an SSD in it, and it's just a beautiful little machine. I'm not a big fan of OS X though, so it runs Arch.
I'm almost always listening to music if I'm moving about or working, so I tend to keep some good-quality headphones in my midst. For over-ear style, I use Sennheiser Momentum cans, and when I want IEMs, I use a pair of Etymotic HF5 buds with a Fiio E11 portable headphone amplifier.
For phones, I typically buy the latest Nexus product from Google each year. I'm currently on a Nexus 5, which has been a great little device. I still have a Motorola Xoom kicking around at home, but it's mostly just a Netflix machine for me these days.
At work, I plug my Air into a couple external monitors. One is an Asus 27" and the other is a cool little 15" USB-powered LCD monitor, an AOC e1649Fwu. It doesn't require any external power beyond the USB connection, and it's quite portable, fitting into laptop bags with ease.
I don't use the mouse/trackpad a lot when I'm working, but if I do need to move a pointer around, I'll use a Logitech Anywhere MX if I'm on a desktop surface. If I'm on the road or working off my lap, then the trackpad suffices.
I also keep an older MacBook Pro on my desk that does run OS X. This computer mostly serves as a build machine for iOS apps.
And what software?
First and foremost is Arch Linux. On top of that, I use the i3 tiling window manager, which I've customized with a couple patches and a number of homegrown utilities that I use to keep myself productive. Examples include a custom notification system, dynamic per-workspace LCD backlighting, and a few other sundry scripts that integrate with i3 over its IPC channel.
On top of i3, I spend almost all of my time in terminals and web browsers. I run my terminals inside a tmux session, which lets me do fun things like detach from running sessions, broadcast keystrokes to multiple terminals at once (useful when you're doing sysadmin chores on a cluster), and not losing your work if your terminal emulator crashes on you.
In half of my multitudinous terminal sessions, you will find Vim instances. Vim has been my editor of choice since I left the womb, and because of the entrenched muscle memory of typing things like ":wq", I can barely function in other editors.
I typically use two web browsers in tandem. Because I'm fairly cognizant of web security, I run one "clean" browser (Firefox) and one "dirty" browser (Chrome). The browser I use depends on the website I'm visiting.
For example, since a Facebook widget exists on basically every site on our green Earth, Facebook can easily see what sites you visit on any given day. So I will only login to Facebook on my dirty browser through an Incognito window. If I'm inspecting the DOM of a web application or trawling through code on GitHub, then I'll use my clean browser, which has been more fine-tuned to my tastes with customized configuration and useful browser extensions.
I rely heavily on keyboard shortcuts for my favourite applications. In fact, most of the time I have the mouse/trackpad disabled. I can run my window manager, editor, and web browser (mostly) without an active pointing device. This eases any RSI strain on my wrist/elbow and probably helps keep my mind sharp as I memorize hundreds of key combinations. Probably.
In addition to these major parts of my working environment, I lean on a number of tools, programming languages, message queues, and database systems to build my software. To name a few:
- Tools: rsync, ssh, git, TrueCrypt, Lsyncd, ranger, tinc
- Languages: bash, Python, JavaScript (nodejs), Lua, Go, C, PHP
- MQ and DB: Redis, RabbitMQ, ZeroMQ, MySQL, Postgres, SQLite
What would be your dream setup?
To be honest, I'm already pretty close to it. I've spent a lot of hours refining my workflow, and I'm fairly happy with things on the software side.
As for hardware, I love the form factor of the 11" MacBook Air, and I will probably buy a new one this year, when they refresh the lineup. It could stand to get an upgrade to a higher-resolution screen. As well, Apple left quite a big bezel around the screen. If they minimized the bezel, I think they could fit a 12" screen in the same form factor.
I hope wireless charging advances to ubiquity in the next few years. Cords suck.
Oh, and more battery life in everything, please.