I Need A Drummer
Posted by postfuturist on 2010-08-08 12:14:27

Some years ago, I fancied myself some sort of garage musician. I had a guitar, that's all you need, right? I wrote and home-recorded a few songs. I was going to school, so, I didn't know too much about the difficulties of doing music as a profession. Plenty of people involve themselves in creating music as a hobby or small part of their life. I have some friends who are composers for a living. Being a professional rock star is a bit unlikely for most people, regardless of talent. But, if you have musical talent and skill, you can be a composer. You just need a bunch of equipment (or really, just a computer, microphone(s), keyboard(s), and some instruments) and a nerdy drive to create music causing you to invest the thousands of hours necessary to become skilled enough to sell your work. As an aside, becoming a professional software developer is very similar, though in this case the equipment is just the computer and a reliable internet connection.

Back when I had some small musical aspirations of my own, if a genie had appeared and granted me 3 wishes, one of those would have been a drummer, right after world peace and right before a delicious taco. Y'know, just some guy who would come over and jam whenever I wanted to. I know, they invented drum machines, but, well, they suck for rock music. You need a living beat, to hang the rest of the music on. I experimented on occasion with programming my own beats, but they felt rigid and awkward. I just didn't have the skill or drive to program beats.

I've left all musical aspirations behind, and I'm fine with that. I was never as passionate as friends of mine who started bands, taught music lessons to support themselves and figured out how to be successful composers. I did find something to be passionate about. It was programming computers. Specifically, I wanted to become a video game developer. It took me a few years and thousands of hours of practice, but I became a software developer at a game studio.

Becoming a video game developer was a bit like successfully forming a touring rock band. Once you get there, you realize that the work is hard, not glamorous, and doesn't pay very well (at least not at first). After a year in the trenches, I realized that I staying in the game industry meant low pay, high stress, and less fun than I had hoped. I also realized that I was now qualified to work in other areas of software development. After doing some quick calculations, I realized that I would be happier in just about any other software field. Video games are a bit like hot dogs, delicious until you see the process required to make them.

Before I "made it" into the video game industry, I spent some time doing QA and software development for a company that made hardware and software products for saw mills. They didn't make saws, but the systems that controlled the saws to cut the maximum value out of the dead trees. I learned enough from QA to have an appreciation for good software development practices. These are not done within the video game industry as far as I could see.

Fast-forward to the present. Now I work as a developer of web applications or a web developer, or a senior software developer specializing in web technologies. Or whatever. I program the internets, OK? As a web developer, there are a minimum of two computers I have to worry about, the server and the client. In real life, there are proxies and load balancers, front-end and database machines, caching servers and all assortment of machines to deal with on the back-end.

The back-end is actually easy, though. The state of the art is plowing along nicely. I'm not much of a sysadmin, but I can manage Apache and Nginx configurations if necessary. I could probably configure a basic multi-server configuration given an afternoon and plenty of coffee. It's just a matter of researching best-practice configurations given the needs of the project at hand. Simple. I can spec out the work in terms of time and caffeine.

But there is this one little piece that bugs me. It's the part the user sees, if I'm building a web application. I haven't invested enough time and energy in developing a sense of how to build aesthetically pleasing interfaces. I can certainly build usable, functional interfaces, but they are not beautiful. I can tell you if an interface is ugly, but I can't tell you how to make a beautiful one, other than this: hire a designer.

Now, if the genie appeared with the wishes, you can bet I would wish for a designer, you know just some guy I could email and he'd supply me with blobs of HTML and CSS that were visually appealing interfaces for whatever I wanted to create. I can and do write oodles of HTML or code that generates it as needed. I also know how CSS works, but understanding how to use a paintbrush hardly qualifies you as a painter.

I created this blog's design on my own. And, well, it sucks. It's only saving grace is minimalism. I need a designer. I need a visual framework to hang the functionality on. Developing a skill in visual design is something I could probably do if I invested enough time in it. But, honestly, if it's anything like playing an instrument or programming computers, thousands of hours would be required to be any good at it. That would take time away from any other pursuits, especially programming itself.


blog comments powered by Disqus