This post was published by the Fusion tech + product team, and not the Fusion newsroom. Want to build quality digital media products? Check out our available positions. We’re ramping up the Fusion tech + product team in 2015.
Who are you, and what do you do?
I’m Nathaniel Taintor, an engineer at Fusion. I’m an unschooling parent of three, and my family is making the transition from settled life (in lovely – but insular, dark, and allergy-inducing – Portland) to full-time nomadic life. Over the next year, we’ll be driving across the country and up and down the east coast in a pair of cozy RVs.
I’m a self-taught polyglot programmer with a background in graphic design. Most recently, I’ve come from a UX and web dev role at Janrain, a product company which builds tools for customer identity management through login, registration, and engagement solutions. I’m fascinated by the ever-changing world of front-end development.
Like many people, my first experience in scripting languages came from mucking around in WordPress template files and learning PHP. I’ve been developing for WordPress since about version 2.2, and seen the community mature a lot. I think the fact that the WP community welcomes new developers is one of its greatest strengths—among other things, it means that we avoid some of the worst elitism and hipsterism that infect other programming communities.
The WordPress community’s focus on stability, security, and convention makes it easy for non-magicians to get involved and contribute in a meaningful way. At the same time, it comes with a sort of conservatism of approach that clashes with my basic impatience. When I look at huge technical advances being made in other frameworks—Ember is a good example, with Fastboot, Glimmer, and all the other amazing features that have been built in a very short time—I’m envious, and I dream about what WordPress could become with a radical enough vision. I’m excited to be working on a team where I can bring some of my ideas to life and build the next generation of WP front-end performance.
What’s your preferred hardware and software setup?
My personal computing philosophy is something like what you’d get if Richard Stallman did a rewrite of Alex Payne’s Rules for Computing Happiness. I prefer to run free and open-source software everywhere possible. I prefer text-based formats for data and configurations over binary formats wherever possible. In general I use local, CLI-based apps for all of my individual work; and web, GUI-based apps for communication.
I’ve used various flavors of Ubuntu/Debian for the past several years, and its with a bit of resentment that I’m moving back to a Mac for my development machine. (Unfortunately, using a Mac is basically essential for front-end web development work, since Apple doesn’t offer developer VMs there’s no other way of troubleshooting problems specific to OS X/iOS operating systems or the Safari browser.)
I spend most of my work time reading and editing text files in vim inside of tmux. I’ve tried a couple of tiling window managers but never gotten past the learning curve, and tmux does a good enough job at what I need from a window manager that I’ve never needed to jump in headfirst. For image manipulations beyond what command-line tools can manage, I’ll open up inkscape or Photoshop (or whatever tool is appropriate for the job). I always have TweetDeck, Gmail, Github, Trello, and Slack open in browser tabs.
I like to optimize my work setup for immediate feedback on any changes I make. I’m a big fan of running unit tests on every save, and watch the results in a tmux split. I make heavy use of build tasks and livereload (usually in Grunt, but I’ll try out other build systems) so that I can see my updates in a browser as I save them.
My favorite pieces of software at the moment are probably git and bittorrent, because each one exemplifies the software development philosophy that if you start designing a system by planning out the data structures needed to represent the relationships you want to build, everything else—features, interface, and design—will follow from there. Also, both git and bittorrent are inherently social pieces of software: they transform the way in which people create and consume content in the digital world in a fundamental way.
How do you consume media? Any favorite formats or publications?
I get most of my news filtered through Twitter and Facebook. I follow a lot of curators of news as well as activists directly involved in issues that interest me, so I find that the immediacy and unfiltered style of breaking news outweighs the dangers of being stuck in a filter bubble. I check my perspective every now and then by reading through the headline news on a few major publications, just to make sure the view I’m getting from my filter bubble makes sense in the mainstream.
At one time, I had a well-curated library: rooms full of bookshelves on all the topics I wanted to consider myself educated on. (I also had a decent-sized record collection that I put just as much thought into curating and organizing.) These things aren’t practical when your home is a 23′ motor home, so having the world’s information accessible as ebooks, pdfs, blog posts, and Spotify streams is hugely important.
What excites you most about what’s coming next at Fusion?
I see Fusion as a very interesting journalistic experiment in defining and reaching an audience that is underserved by serious media today.
Before working in the tech industry, I worked on a community newspaper project that used the “full fountain pen” technique — where technical people (journalists, community activists) pair with non-technical people to transcribe and publish their stories — amplifying the discussions happening among ordinary people and spreading news between communities to build a shared collective consciousness. Web technologies and digital storytelling methods offer new and exciting ways to do this kind of journalism and outreach.
Fusion has a number of people on its journalistic team who are well-situated to identify and articulate emerging popular discussions and attitudes, and on the technology team we are full of ideas for new technical ways to enable that interaction. I’m proud to be working on a team where open source work is an explicit priority. As software engineers, we can work to move the entire field forward by open-sourcing tools which allow other organizations to make use of the sorts of investigation, visualization, and publication that Fusion is pioneering.