• Frustration with Windows

    Yesterday I had to install some maps onto my Garmin iQue 3600 for a trip back east. I had everything installed on my Windows machine, but wanted to put it in VMWare on my Mac so I could finally get rid of the Windows machine. I downloaded all the installers from the web and tried to install, but kept getting an error message that it couldn't connect to installengine.com to download some component. After searching and futzing for several hours, I finally gave up and installed from the original CD which worked fine. I then did all the upgrades and live was fine. For some stupid reason, InstallShield (one of the most popular installer technologies for Windows), has the install engine separate from the installer. While this sounds like a great idea so that the engine can be installed separately, it isn't if you're dealing with an installer that is several years old. Apple's Installer on Mac OS X does something similar, but the difference is backwards compatibility and the engine is built into the OS. Why is everything so much harder on Windows? Is it simply that I'm not familiar with it or does it really suck?

    Compounding my frustration, I went to wipe down the Windows machine to give to my father and when I went to reinstall the OS, I couldn't figure out how to install the drivers. The OS (Windows XP) installed fine, just all the drivers didn't want to install. I ended up just making it my father's problem and gave him all the CDs and said good luck. All the drivers were on the CD, but I had to pick and choose which ones I needed. On the Mac, you insert the CD/DVD and install the OS. Granted you need drivers for scanners and other 3rd party stuff, but not for networking or the video like there is on my Dell machine.

  • Frozen in New Jersey

    This past week's trip to New Jersey/New York reminded me why I live in San Diego. The lows in San Diego were higher than the highs in New Jersey. 40-50 degrees Fahrenheit is just too cold too live for me. While the trees changing colors was pretty, I'll take San Diego seasons any day.

  • XML vs Binary vs SQLite for CoreData

    When I started ReceiptWallet almost a year ago, I chose to use the XML format for my CoreData stores. This was mainly because I was unsure of CoreData and if I messed something up, I could look at the file in a text editor and change it. Except for the first few weeks developing, I've only touched the data file once for a customer where CoreData improperly encoded an entity and made the XML invalid.

    Last week I decided to try the Binary format (I put code in awhile ago to try Binary, XML, or SQLite). Wow, the startup time dropped as CoreData no longer had to parse the XML. Next I tried SQLite and again, it appeared to be a bit faster. So, I've decided to make SQLite the default database format for ReceiptWallet and DocumentWallet (it can be changed with a plist change). The only downside to SQLite vs XML and Binary is that an SQLite file can't be opened by two users at once, so I added a preference that allows the user to share the database (everyone except the primary user has to view it as read only) which changes the database format to Binary if it was SQLite.

    So, I'm crossing my fingers that I don't run into any problems with SQLite; lots of programs use it, so I should be OK. I did have a bug where I used an NSPredicate with "MATCHES" in it where I should have used "LIKE" which failed with the SQLite store. I'm not sure why that worked in the other database formats, but it did.

  • Leopard, one week later

    Now that I've been using Leopard for a week, I'm started to get used to it and like many of the features. However, there are few things that I don't like.

    Likes

    • Preview You can add, remove and re-arrange pages in a PDF. This actually made me stop a product I was developing as Apple's implementation is so slick.
    • Time Machine While I still do a daily backup with SuperDuper!, having another, automatic backup is nice. I bought a 250 GB Western Digital Passport drive just for Time Machine and to have an extra SuperDuper! clone of my drive.
    • iChat I like that iChat shows which buddies are mobile as I have a number of buddies that use the mobile feature.
    • Xcode 3.0 So far the coolest feature is the ability for Interface Builder to automatically read the Class files from the header file without having to manually tell IB to read in the file.
    • Mail IMAP Idle is cool, but sometimes it just doesn't seem to work. I also like that the Mail Activity can be put in the lower left of the main window. Like any geek, I like to see what is happening.
    • Stacks Yes, I sort of like them. I created a folder with my current projects in it and added that to the Dock. Now I can quickly get to my current projects.
    • AirPort Utility You read that correctly. The new AirPort Utility has a feature that shows the current list of DHCP Clients. Right now I see 11 DHCP clients on my network. In addition, you can see the signal strength for any wireless client.

    Not sure about

    • iChat I'm not sure I like tabbed chats. I know I can turn them off, but I use iChat all the time and a ton of windows can get distracting. I know I can put them in a Space, but I'm not sure about that either.
    • Spaces I like the concept of Spaces, but am having trouble getting used to it. I use the Finder a lot and Spaces (by default) puts the Finder windows in whatever space you created them in. I thought that applications could only be in one space. Someone suggested that I tell Spaces to put Finder windows in all Spaces. I'll give that a try (the Finder is in /System/Library/CoreServices if you need to add it to Spaces). The problem with the Finder windows being in different spaces is that I drag files to other programs that may be in other spaces requiring me to start dragging, command tab to the other app and then drop it. In addition, I notice that sometimes Spaces just switches the current Space on me if an alert pops up or something like that.
    • Terminal The tabs in terminal are interesting, but I'm just not sure about them. I use terminal all the time with multiple windows open. Tabs would clean up the clutter, but then again so would Spaces.

    I guess I didn't have anything that I completely disliked which is good. All in all, I think that Leopard is a good upgrade and hope all my users switch to it so that I can drop Tiger support and take advantage of all the cool developer things in Leopard!