Desktop Setup For a Sysadmin
My Mac is a finely tuned machine. I have been using a Mac for Unix systems administration work since 2006, starting with a PowerMac G4, and have developed a smooth and efficient workflow. Most of the important tools are open source, and the ones that are not are very high quality.
I’ve noticed a tendency in my Mac setup to veer towards higher levels of complexity. In truth, I’d rather not use anything outside of the Apple provided ecosystem, but for one reason or another I’m constantly drawn to other apps and command line tools. It is a struggle to find balance between applications that actually enhance my productivity, and distractions that pull me away from the task I’m attempting to use my computer for.
iTunes Gets A Bad Rap
I’ve searched high and low for an alternative to iTunes, but I’ve yet to find a suitable replacement. I use iTunes for playing music, mainly over AirPlay in my home office, and it works great. I’ve got smart playlists, star ratings, and an iTunes Match account to keep everything in sync between home, work, and mobile. Given my investment of time and money over the years, it’s possible that I may be suffering from some type of sunk cost fallacy, but honestly I really enjoy iTunes.
Energy Saver Preferences
My MacBook at work sits on my desk all day and all night. When I sit down to work on it, I expect it to be ready for me, and ready to ask how high when I tell it to jump. I get a bit annoyed if I come back after a few minutes or an hour and find that the Mac has gone to sleep while I’ve been gone. So, I spent a few minutes in the Energy Saver preference pane to configure the machine to my schedule.
The Computer User I Want To Be
Learning about computers can be a dangerous thing. Breaking though the veneer of graphical interfaces reveals inefficiencies and inaccurate metaphors. For example, rsync copies files faster and uses fewer resources than the Finder. Copying lots of files is what rsync does best, but being a command line power tool there are a few subtleties with using it that are not readily apparent. As your skill grows, so to does the tendency to eschew modern tools in favor of “power tools”. You begin to see the inefficiencies of graphical tools as problems, problems that you need to fix. I’ve been down that road.
New Mac Essentials - MacVim
Investing time learning a text editor is a serious commitment. Over time, you find yourself reaching for the editor’s built-in shortcut keys everywhere you type. In my case, I do almost all of my writing in MacVim. Unfortunately, MacVim comes with a fairly steep learning curve that many are unwilling to tackle. Part of the complexity of Vim, from which MacVim is derived, is the configuration. Over the years I’ve come up with a setup that works for me.
Living In The Technical Past
New Mac Essentials - Quicksilver
Text Editing in MacVim
The venerable BBEdit recently received a big upgrade, and looks poised to attract users of TextMate, which, by all accounts, has been abandoned by its developer. I tried to love BBEdit, but it always felt like trying on someone else’s clothes. They might look good, but that does not mean the clothes will be comfortable for you. Recent conversations about text editors on Build and Analyze led me to rethink my position, and examine in more detail how I came to choose MacVim.
OS X Lion is a big step forward in personal computing, and, over the next few years, we are going to see a lot of our preconceptions about how computers work begin to melt away. Apple is setting a high bar for themselves and their developers. Lion is an ambitious release with ambitious goals that are going to take some time to actually come to fruition. However, as futuristic as Lion is, Mission Control feels like a step back.
Desktop wallpaper is a cheap trick. It’s only purpose is to make your computer screen look pretty, but I have yet to come across a photo or a work of art that I found to be anything but distracting. There is very little difference between UI elements like windows and objects depicted in a picture behind the windows. If you can see it, your brain needs to identify it.
Brent Simmons recently wrote about his dislike of the iCal interface in the latest developer preview of OS X 10.7. In his article, he says how the torn paper present in the interface of the latest build would eventually force him to find an alternative, because he would always want to finish tearing the paper off. What caught my attention in the article more than iCal was how Brent deals with the Trash in the Dock. He constantly empties the trash, a habit I share.
Like many who are interested enough in the tech industry to attempt to stay up to date on current happenings, I’ve been struggling with an ever increasing number of interesting sites and feeds. In the past I would categorize the feeds into folders with names like “Blogs”, “News”, “Design”, and “Friends”, but eventually I’d wind up with a folder with a name like “MetaBlogs” or some such ridiculousness. While the multiple folders did help to organize the feeds, they did not help with what I needed; keeping up with what was important.
Keyboard Driven Safari
As a carpenter has his tools, so do I, as a “knowledge worker” have my computer. I spend many hours a day with my Mac. I have my workflow honed and finely tuned, and I know when something is wrong with my computer, when there is more friction than there needs to be. I am a Systems Administrator, so my knowledge work is to ensure that other people can get their work done. My job is to keep the servers, services, and systems I support up and running 24x7. The tools I use to get this job done mean a lot to me, and over the years I’ve tried many of them with varying levels of success. I know exactly what my ideal setup is, and I’m working towards filling out my toolbox with the very best as I strive to bring my craft to the next level of mastery.
At home, my computer is college, entertainment, finance, photos, blogging, and fun. Mostly fun. There have been times when I’ve walked away from even owning a computer at home, seeing it as a distraction more than anything, but I always come back to wanting one around, if for nothing else than as an outlet for creativity.
In the years that I’ve been using computers, I’ve found that I desire simplicity more than configurability. Favoring fewer options over more. The machine I use needs to be beautiful to look at, because I spend a lot of time looking at it. It needs to be simple to use, because I have work to do, photos to edit, words to write, and I don’t want to have to mess with anti-virus updates or X windows crashing because of some beta driver bug that made its way into the mainstream release. I just want my computer to let me do what needs to be done.
Beautifully designed and crafted, simple to use, powerful… my computer needs to be a Mac. No one else on the market can release a computer that matches a Mac. I’m not sure why, it’s like they don’t know how. They try, but they fail.
Open source operating systems like Ubuntu are not as good because there are far too many cooks in the kitchen. Ubuntu is not an operating system like OS X is an operating system. It’s the Linux kernel, the ext4 filesystem, the Xwindow system, the Gnome desktop, the Firefox browser, and thousands of other open source packages and applications that work loosely together, and are developed by different teams. OS X is developed by Apple.
Windows XP is a suitable operating system to work with at the office, but I am far more productive on a Mac. With tools like Yojimbo, Spotlight, and Quicklook, Macs are far better suited for information management. I hear Windows 7 is nice. My wife has it on her PC, and so far, it is still just a PC.
As much as I love Macs for their design and ease of use, I also see the faults of some business decisions Apple has made in the past few years. The App Store is either a resounding success or a horrible failure, depending on who you talk to. In sheer volume, 200,000 apps is a lot of applications, but like Windows was last decade, most of them are crap. Apple’s decision to approve each app in the store is admirable to a degree, but they are not executing well at all. Some people are philosophically opposed to the app store, saying that the iPod/IPad/iPhone ecosystems should be open for any application to run on them, as is the case on the Mac. I do not care about this aspect, but I do wish that Apple would fix their approval process to make the system much more transparent. There should be clear cut guidelines on what is acceptable and what is not, and those guidelines should be applied across the board. Random app store rejections are the running gag of the current implementation. Its wrong, and it needs to be fixed.
Is the Apple today the same as the Apple so many fell in love with in the ’80s and ’90s? The scrappy underdog that just won’t die? No, and I couldn’t care less. I find it interesting that the era that some romanticize is actually one of the worst in the history of the company. Back when Apple was allowing clones and releasing crap with the Apple logo on it. Good riddance to bad rubbish. OS 9 was not interesting to me. OS X is.
I was using Linux and OpenBSD when I first heard of OS X, my first iBook was a revelation. Finally, someone had put a decent GUI on a Unix box. Apple has only gotten better from there.
I know there are a lot of very smart people who disagree with me. Lets let the next twenty years decide who is right.
Along with the app store debacle, there is Apple’s stance on Flash. My personal feeling is that if Flash were a true open standard, if anyone could create Flash applications without relying on Adobe, it’d be a whole different ball game. As it is, Flash is controlled by Adobe in its entirety, and that seems wrong for the Internet. The Web is the great leveling field, a mechanic in Kansas has the same chance of creating an awesome web site as a multi-billion dollar corporation. All the tools to create amazing web sites are free, and the specs for building the sties are readily available. All you need is a computer, Internet access, and a text editor. With Flash, you need some pretty expensive software. Also, having run a video serving site in the past, I can tell you that HTML 5 would have been a Godsend back then. It would have been so much simpler to just drop a .mov or .ogg file enclosed in video tags than the junk code I had to put in.
I’d like to watch Hulu on my iPad. Netflix already rocks on it. Flash is not a necessity.
Finally, there’s Google. I used to love Google, back when it was a search engine. They could have been happy with just being the best search engine in the world, and making billions, hand over fist, but no… they had to go and get greedy. Eric Schmidt sat on the Apple board of directors and saw what Apple was doing, and thought to himself… Google could do that. So, they “stabbed Apple in the back”, and released Android, and then the Nexus One, a direct competitor to Apple’s iPhone. Bad form, old boy, bad form indeed.
Also, I don’t like Google’s business model any more. I used to be fine with it, when they would show ads on the search results. Now though, Google wants to watch everything you do online, and figure out a way to monazite your activity. Your email, calendar, RSS feeds, photographs, friends, chats, videos, music, there’s even Google Health where you can put your medical record in Google. It all goes into the big black box that is Google, to be analyzed for who knows how long. Me, I like to be a little more honesty with my transactions. That’s why I pay for my email service. I give Apple money, they give me an email address, and a few other perks. It’s as simple as it gets.
I think that about does it for the major topics of the day. Of course, in all these things, I might be wrong. However, if I am wrong, and you want to call me out on it, I suggest you do your homework first. I’ve done mine. I have several years of experience, and a finely honed sense of craftsmanship.
I am, after all, strongly opinionated.
A Work in Progress
A few days ago I decided that I was not going to use anyone else’s theme on my site. It happened after I stumbled across another site using the exact same theme as mine. Unavoidable really, as long as you are using someone else’s theme. So, the decision was to either stop using Wordpress, or to design my own theme. I love Wordpress, so I decided to go with the latter.
Designing a web site is a strange mix of code and graphic design. In my case, I’ve had to go back to php, a language I left a long time ago, and start learning CSS. Since I’ve been fooling around in Cocoa for quite a while, going back to php is just painful. Objective-C is a beautiful programming language. Mixing php and html… well, that’s just plain ugly. However, that being said, it’s familiar territory, so I almost feel like I’m coming home. One concept that I’ve learned with Cocoa is the Modal-View-Controller method, basically separating out the presentation code from the application code (yes, I know there is a lot, lot, lot more to it than that… no I’m not going to get into it here), using CSS kind of reminds me of the MVC method, in your php/xhtml code you define what objects are going to be displayed, and in CSS you define where and how to display them. I like the separation… keeps it clean.
At any rate, I’ve been busy coming up with the overall look and feel of the site. One thing I believe about software is that simplicity always wins. At least where I’m concerned it does, that’s why I use a lot of the apps that I use, because they are simple to use. Think about the Google home page. Simple, and it wins.
I’d appreciate any comments on the design, and please keep in mind this is only a very early mockup. Also, I’m going to be using this as my avatar for everywhere that I’ve got an account online: A friend of mine, who actually is a designer, laughed when I told him about the tools I’ve been using to do the design so far. First, the initial concept was created in OmniGraffle. From OmniGraffle, I’d export it as a Photoshop file and open it in Pixelmator to add the leaves and other touch ups. Right now, that’s as far as I’ve got. I’ll finish the design in the next couple of days, and then move into chopping the file up and getting deep into some code. Hopefully, I’ll have this finished in two or three weeks.
Inspired by Mark Pilgrim’s Essentials post, I thought I’d come up with my own list of essential software.