Monday, March 06, 2006

Ultimate Geek Computer

Well, I must confess, I recently did a bit of self-indulgent spending - I bought a 12" Mac Powerbook. Why a Mac? There are several reasons. The first is while in Seattle I got the chance to use a friend's Mac and really grew to liking it. At first it was a bit awkward coming from a Microsoft Windows world, but I quickly appreciated the slick design of both the physical machine and its software functionality. Coincidentally, when I got home from the trip, my 3+ year-old Dell laptop began to misbehave (as can be seen in this picture of its garbled video screen).

So that, combined with a decent tax return, pushed me over the edge and I decided to make a new PC purchase. Over the past couple years I had read a bit about the new Macs based on OS X. While the graphical interface is probably what the Macs are best known for, for me a strong selling point was behind the scenes these machines are now running a version of Unix. I had been using Unix-based systems for over ten years in my previous job, and I knew there are a lot of interesting things you can do with a Unix-based system. It's probably not something most computer users would care about, but for someone who is a programmer, and a compuer hobbiest, having a Unix-based computer offers a lot of potential. Combine that with the very nice software that comes with a Mac and I made my decision.

Friends at work have jokingly told me I've gone over to the "dark side", as the Mac is better known for graphic arts and design. But, if they took the time to see what you can do with these OS X systems, they would realize it is a very nice toy... errr.. tool for computer geeks, too. It's amazing the amount of flexibility Apple has designed into this thing. Almost every program that comes with the Mac has the ability to be automated using a scripting language called Applescript. For example, for publishing photos on this blog, I used to have to manually resize my photos and save them as web-sized copies, then upload them to my web server, and then make sure I remembered what I named them on the web server so I could reference them in my blog entry. Now, I have it all automated via a simple Applescript which I wrote. I just click on one or more photos and choose to run them through my script. Behind the scenes, the Mac automatically makes smaller-sized copies of the photos, sends them to my web server, and copies the name of the files to my clipboard so I can just paste the image reference into my blog. What used to take me several minutes now takes literally 1 or 2 seconds.

One downside of all this is it's just too much fun learning all the underlying details of this system. Since I have very little free time as it is, I find I've been staying up a bit later than I should lately trying to learn more about the system. I was recently surprised to discover Apple even includes a full software development system for free with the Mac. In a folder aptly named "/Developer", there is a program called Xcode which is a full interactive development environment (IDE) for writing software in C/C++, Java, and a few other programming languages. Very nice!

So, if you like tinkering with computers and are in the market for a new system, I'd highly recommend you consider a Mac.


TheRamblingElder said...

I've always had a thing for macs...and with this new /developer folder, it is a wonder why windows is even an option!

I'm learning a bit about coding in my comp sci class in school, so it might be fun to tinker around with. (mainly because im not good enough to make a full fledged program yet"

Can the programs you create on it be distributed or is it just for your use? I wouldnt have a preference either way, but I'm just curious.

Nick! said...

Macs are great, the only problem is that a windows emulator costs like 300$...and I use a lot of windows only files. Also in your laptop picture, were you trying to fix it or was it partially open because the casing broke?

Mostly Torn said...

Hi Rambling(not my)Elder,

The programs developed with Xcode can be full redistributable applications. It's a full C/C++ programming environment (along with some other languages, as well). As a learning exercise, I'll most-likely first port my Life program to Mac OS X. If you are interested in the source code to get an idea what the C/C++ stuff (with OpenGL) looks like, let me know. Maybe I'll have a chance to get it working this weekend.

Also, Nick!, to answer your question, I had taken part of my old laptop apart to figure out whether the video problem was related to a poor cable/socket connection. Apparantly it's something else, as re-seating the video connector had no affect on the garbled display.