Thursday, October 29, 2009

My Workspace

I've gotten a few comments on how I run my work computers, so I think I'll go over my work setup. Normally people like to talk about their hardware setup, but I think I've found a seriously productive and versatile software setup.

Two boxes, one Windows, one Linux.

The Windows box has a dual monitor setup, and all inputs (mouse, keyboard) connected to it. The task bar is set vertically to increase the amount of windows it can display while showing title title text. Horizontally the similar programs either clump into one item, or shrink until only the icon is visible. The vertical bar lets me see everything. Windows taskbar lets you set your own shortcuts, and in the vertical position, I have some width to fit shortcuts to all the programs I use easily. I very rarely have to use the start menu.

The Linux box is a Red Hat flavor that runs headless (has no monitor/mouse/keyboard, only network connection and power), and runs GNOME for simplicity. It runs a VNC server that I connect to from my Windows box, and full screen on the entire left monitor.

VNC is a remote connection software that gets a bad rap from people who use it on windows (I was one of them) because on windows it's slow and annoying. Using it on anything other than a LAN connection meant "painting" the screen with your cursor every time you click on something and other annoyances. VNC servers on linux, however, are more like RDP. Seriously, you can watch youtube videos with it. The VNC fullscreen is a true fullscreen, and catches all keypresses and combinations with no latency on a LAN. (But make sure you match your duplex settings. On auto I experience lag)

At first, my GNOME desktop ran four virtual desktops (four separate screens you can flip through on your one monitor) that I rarely used. But after I assigned a keyboard shortcut to switching left and right through virtual desktops it became much easier to flip between different programs on different desktops.

My resolution is actually rather low. Because the LCDs I work with max out at 1280x1024, I had to make the most of the limited space by using multiple desktops on my Linux box, and the vertical taskbar on my windows box.

The amount of desktops I had on my linux session gradually grew. As it became easier to move between them, it just made more sense to put different windows on different desktops to keep different types of work separate. Compared to alt-tabbing or finding and clicking on the taskbar, finding the windows I want is much easier when I know what desktop they're on.

I currently run with 10 virtual desktops.

I do most of my work on my linux box, so my windows box rarely has to be rebooted, but my linux box does have one problem... Firefox.

Since I tend to run my PCs hard, it's very common that I'll have many windows of firefox with many tabs open on each, that I'll leave running for days at a time. The reason I don't leave them open for weeks at a time, is because Firefox will eventually crash, peg my CPU, hog my memory, or just lag intolerably. I've hit every update they've released, and tried every fix I've read. Same issue. I've come to the conclusion that Firefox just wasn't meant to be run like this.

Firefox aside, the linux box has been exceedingly stable at continuous running of mysql servers, terminal server connections, security scans, various scripts I run, and pretty much anything else I can throw at it. It's only a 1.2ghz box with 1gb of ram, but it runs like a champ. Every few months, I do get the occasional nautilus crash which is easily recovered from, and once or twice a year, I get a kswap0 freak-out that can only be resolved by restarting my X server, but those problems are nothing compared the stability I get on this configuration.

The windows box runs only the programs that won't run on linux or need to run locally. Most of my interface with the ticketting and database resources are done through the terminal server connection on the linux box. But the windows box is the only one with a soundcard, so the only browsing it does is online radio, media player, and the odd youtube video. This has kept the windows box running pretty strong. It will still get the occasional program run amok, but I'm quick on the draw with the end task button on the task manager.

I think it's a strong, productive, stable workspace that I've found perfect for processing work orders, engaging with customers, keeping research data available, writing and testing code, and pretty much any other odd job that gets sent my way.

1 comment:

Fletch said...

Current count of open windows and tabs across both systems: 66