Who are you, and what do you do?
I am Zed A. Shaw and my life can currently be carved into three pieces of the pie:
I have written software for other people, and also created my own open source projects like Mongrel, Lamson, Mongrel2, and a bunch of others.
I now tend to write books teaching people to code, insane satirical blog posts to piss people off, essays on various topics, and I am the creator of one software methodology. Included in this is frequent speaking gigs at different conferences, teaching classes on programming, and just generally being a kind of Clown-Pauper-Prince of the software world.
I also attempt to make music and post everything I make, good or bad, as part of the act. I created Fretwar as an experiment in getting other people to give people a reason to make music and put it online. I've also built 3 guitars, two of which really suck and one which I love and play a lot.
What hardware do you use?
When it comes to hardware it doesn't really matter what I use. I tend to use whatever computer the end user will be working with or something close to it. If I'm writing software for OS X, I use a white MacBook I bought years ago. If I'm working on my server software then I use a couple of junky Linux laptops. I honestly could probably code with nearly anything, so having the same setup as the end user is more important than having the most awesome piece of tech ever.
For writing books I work almost exclusively on my junk Linux laptops, since they're already sitting on my desk. I have things setup so that I can switch between the PC/Linux laptops and my MacBook easily, so again the hardware seems to not matter. With book writing there's not as much of a long compile phase so fast awesome hardware doesn't help as much. Although I do find writing rants easier on my worst computer. Maybe the discomfort brings out more of the hate?
Now music is really where the hardware comes out. First off I have a policy of "no keyboards in the studio". For about a year I tried doing the whole "plug guitar into computer" thing and it's much too fragile and hard to use. Now I record everything into an H4N or DP-008 then do post production later. I've got this recording setup down to where I can record whole live jam sessions with one touch and no setup. Just walk in, flick a switch to turn everything on, press record, and start goofing off. I find this removal of friction in the creative process helps with letting random ideas flow and also makes it easier to just practice whenever I want.
I also have a nice set of pedals I've crafted after years of trying many different ones. I've got a Carl Martin Quattro pedal, which is my primary effect chain. That feeds into a Line 6 M5 for extra arbitrary effects. Those then feed into a Boomerang III Looper which is the most awesome looper ever. Finally, I have a Boss DR880 that feeds into a secondary channel in the signal chain so I can actually loop drum tracks in the looper and apply effects to them. All of this then goes into a Surprise Sound Labs Rock Block Tube Amp then to the H4N so I have this complete setup for crafting improvised full recording sessions with almost no friction on the process.
I have way too many guitars. My favorite guitar is a G&L ASAT Classic S, but it has single coil pickups so it's hard to record with it. I then have a G&L Comanche that has stainless steel frets as my main recording guitar. I also have a Will Ray ASAT that is a ton of fun, with a sick B-bender. After that I have some random ones, but they aren't in my regular practice rotation like these. These three are very high quality and easy to play so I love them and use them whenever I can.
Lastly, I recently built a custom Bass VI that is quickly becoming my favorite improvisation instrument. I built it from parts at Warmoth and used a cream white body, thick compound radius maple neck, and made my own electronics for it. It's got 3 Seymour Duncan Rails pickups that solves my noise issues but still sound great. I then put in Torres Engineering Varitone with an extra push-pull blend knob wired to coil-tap switches and three independent on-off switches for each pickup. This gives me all sorts of strange tone shaping possibilities, and I've also got it setup so one of the capacitors in the Varitone circuit will overload in the bass frequencies and then distort with a nice creamy fuzz sound.
My Bass VI is great for improvising with my looper pedal because it has a range of notes from E1 to E5. That lets me do bass lines, deep organ sounding chord structures, tighter guitar rhythm chords, or full guitar lead lines and even vocal parts. Combine that with all of the different effects pedals and the tone shaping circuits and I can pretty much make anything I think up.
And what software?
For programming I use mostly vim with MacVim on the mac. I use awesome for my window manager on Linux since it's mostly keyboard based. After that it's just whatever language I happen to need at the time: C, Python, Lua, Ruby, Objective-C or sometimes Java.
For writing I'm using a combination of LaTeX and Dexy to build my books. I first used Sphinx but it was too hard to get good PDF typography out of and really only works if you document projects the way the Sphinx authors do. For a full-on book the way I'm doing them now with LaTex works better. Dexy is also the bomb, since it lets you write "code books" in a literate style without carving your code base into tons of chunks. It can just sneak in and grab whatever you need to inject into your prose.
For music I've got my setup narrowed down to not needing much software to create music. For post-production though I use REAPER which is seriously the best $60 bucks I ever spent. The REAPER forums alone are worth that much with all the advice they have.
For publishing all this stuff I've got a little project I wrote I call "Astroturf Blog Foundation" which is basically like "continuous integration for building sites/docs/books". It's not released yet, but eventually I'll be using it to automatically build all my writing and music sites automatically. I had to write it mostly because I tend to do funny little one-shot joke sites and this made it easy to crank those out. Eventually it was capable enough to build any site so now I use it on most of my stuff.
What would be your dream setup?
This is my dream setup. It's a constant work in progress, but if I'm going to spend most of my days and nights doing something I'm going to invest the time and money to have nice good tools. That's part of the fun of technology. You can envision something that you want to try or produce and then go looking around for a piece of tech to build or buy.
For example, I would rather have a small foot pedal that did my drum loops rather than the Boss DR880. There's not really anything out there that let's you play your guitar into a small pedal and produce drum sounds. I tried various midi-guitar connectors going into a laptop, but again it's just bulky and hard to work with to record. I'm currently cooking up a small pedal that has a true bypass in/out, but when you kick it on it analyzes your guitar hits and spits out a specific drum sample. Flip it on, switch it to "kick drum", then hit the guitar and "thud". Once I have that built I won't really need a drum machine anymore, except maybe for practicing.
Well, I would like to build another guitar too. Maybe a Jaguar or a split Jazzmaster. Something black with gold hardware. Yum.