This is going to be a brain dump of the last two weeks using the MacBook.
I have been a Windows user from the beginning. I didn't like Macs a lot ("where's the right mouse button?"), until I saw the release of Mac OS X. And finally I got my own MacBook. It felt like an alien dropped by and gave me his laptop. Every shortcut I knew in Windows needs to be rewired in my brain.
Very nice machine. Besides being impressed by the hardware and OS, I was mostly impressed by getting started to develop for the mac and iphone/ipod touch.
I love the fact that I can drop into a terminal window and have unix commands at my fingertips. I have done some remote unix server admin, although I still need to learn a lot in this area.
Installing applications is dead easy...dragging into the Applications folder. You want to uninstall? You just remove it from the Applications folder! Hah. Although I have found a small application called AppDelete which will make sure to remove any config files, etc which won't be used any more.
Why oh why didn't I switch to a Mac ages ago? Money is always the problem.
I got the Macbook for development. So I got a second hand Macbook and I want to plug it to a keyboard and monitor (considering KVM switch until I put my Windows machine down). I also got a Mini-DVI to DVI connector, so now I'm using SGI 1600sw as the primary monitor and the Macbook as the secondary monitor. The SGI is quite old now but IMHO it is still a very good monitor :D. I like this dual monitor setup... on the macbook I keep the documentation and on the SGI I keep XCode windows.
Which reminds me about XCode and Objective-C. Currently I'm learning about Objective-C which apparently was released in the same year as C++, but I didn't hear about it before this year. It has some interesting concepts like categories, and I missed the fact of passing functions as parameters. I have used Java to much now. Got me lazy with that garbage collector :) Finding it annoying now to have to use reference counting to properly release variables. Got a lot to learn...
I started an OpenGL ES application for the IPhone. That just only means that I let XCode generate the template :) I'm still looking at tutorials. First stumbling block was drawing text. There are two ways how to do that. You either create a texture for the text you want to show, but that leads to a problem if you are changing the text every frame plus its memory inefficient. The second approach is creating a single texture containing all the characters and keep track of each characters kerning and spacing. Ughhh I had done the latter ages ago on Windows. Guess someday I will need to reimplement it unless I find some ready made class (which I have found yet). For now I will create a texture for each string :(.