Site Overlay

How I work

Home office, remake (yet again)

This is my home-office. It’s where I work 99% of the time and also the place I used as my audio recording studio. As you will read below, it has everything I need to do both things well.

First, if you already haven’t noticed, I’m into the computer software business. I work as a software developer and project team lead, as well as a researcher in some computer sciences topics. That said, I need an environment that allow me to experiment and run tests without being afraid of breaking something. That’s why I took the approach of using Virtual Machines (VMs). Basically, they are systems that run on top of a host system, sharing resources with the host.

My host system is a desktop PC. It has a 4-way 2.4 GHz, 64-bit Intel processor, 4GB of RAM and runs Windows XP Professional. The guest VMs are all Gentoo Linux and each one has it’s own IP address in my network.

Many people ask me why I don’t run Linux as a host. The answer is simple: this isn’t adedicated VM server, as I use it for gaming, audio recording and image processing. And there are simply no Linux software that suits my needs for those. In fact, Windows is the best OS for those purposes, so I’m using it.

Since it has 4 cores and plenty of RAM, I can use the host system as a general purpose desktop while still serving the VMs. It has a Creative Audigy 2 ZS Platinum card hooked to a hybrid Edifier sound system (C1 amplifier and subwoofer, M1310 speakers), so I can listen to music while working (I use the iTunes software as a media player and the even nicer remote control in my Logitech LX710 keyboard to control it). I can also connect any of my laptops to it and play media from them, as I leave a handy P2-RCA stereo cable available connected to the Audigy Panel (usually the MacBook is connected all the time). Besides that, it also runs Microsoft Outlook, although my main calendar/contacts/e-mail system is the Mac – this is just a backup of everything. The calendar, ToDo’s and contact list are synchronized with my BlackBerry Pearl, Dell X51v PDA and laptops, so I basically have the same calendar and contacts data in all my devices to access wherever and whenever I want. This way I don’t miss any meetings and I can join conference calls from pretty much anywhere in the world.

All the VMs and laptops have their X servers configured so that I can export X windows from one system to another (and to/from my laptops too). The monitor, a 23” Samsung P2370, has a large enough resolution (1920×1080) so that VM windows don’t become a burden. I also have VNC servers setup on everything so I can use the machines from everywhere I want.

The IBM ThinkPad T60 laptop is the main development box and everything company-related happens there. It runs Gentoo Linux and it’s my mobile office, so it’s always connected to the corporate VPN and has my IP phone software open. This way, I can receive my calls when people dial to my office number. If I’m doing any hardcore development work that needs brute force, like building gcc or something like that, I can always use the power of my desktop by running distcc and distributing the load to the VMs.

That T60 suffered a role change in March 2009. Now it sits on the shelf below my desk and I use everything in it remotely, either by exporting X windows through a SSH tunnel or via VNC (first option preferred), since I prefer to use the big screen. The current setup is: e-mail/intranet browsing/IM are exported to the MacBook display and terminals/editors go to the larger screen in my desktop, so I can take advantage of my Logitech LX710 mouse/keyboard too. Whenever I need to drive to the company office or go on a business trip, I can easily take it off the shelf, put into my backpack and go.

The MacBook is the machine I use for Ph.D. research and runs MacOS X Leopard, plus a Linux VM when necessary. This one has 4 virtual desktops, plus the dashboard, which has some handy widgets, like stock quotes, notepads, calculator, Wikipedia and world clock. The good thing about Macs is that Mac OS X (Darwin, more specifically) is a Unix system, so everything a developer needs is accessible via a terminal window. I also have Darwin ports installed, so I have any development dependencies I need.

As for connectivity, I use cables to connect everything to a Linksys WRT54G, which connects to the cable modem. The Linksys router with a high gain 7dBi antenna plus a repeating station on the ground floor allows me to connect everywhere in the house when I need mobility. For outside data connections, a Motorola cable modem provides me broadband connectivity. And as for phones, I use a 5.8 GHz Panasonic wireless phone (with a Samsung headset attached, so I can use it hands free) in my landline and a BlackBerry Pearl cell for mobile voice and data connections.

One thing you may have noticed is that I don’t have paper on my desk. Simple explanation: I don’t use paper. I have this Epson printer/scanner, but I don’t use it much. The only analog thing I still use a lot is the whiteboard for brainstorming. This is a must for every software developer. Oh, and books, of course. I have a bookshelf full of them: engineering, telecommunications, programming, management and other non-technical ones.

And, of course, the office is comfortable. During the day, it gets plenty of daylight (actually, between 7AM and 10AM it’s so sunny that I have to use those black blinders to control the lighting) and the big windows allow natural ventilation; carpet on the floor cuts sound reverberation and keep the ambient quiet (plus, allow me to take my shoes off and walk comfortably around). I also have power sockets everywhere (4 on the floor, under the desk; 4 on the desk and 3 on the bookshelf). The furniture is kinda old and it’s all mahogany (desk and bookshelf).

And my chair of choice is a custom-made large office model, all leather, with full-length back, armrests and height/tilt adjustments. A fully-supplied fridge is available a few steps away with all kinds of beverages and snacks; and the piano right next to the desk completes the perfect working scenario.

by

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.