Recently in Technology Category

I watched a video recording of Steve Blank discussing the history of Silicon Valley at Google today. Surprisingly, the tech capital of the world has its roots in the electronic warfare of WWII. I’ve loved reading WWII history since I was a kid and the speaker even includes clips from several WWII movies during his presentation.

It’s an hour, but was very informative and enjoyable to watch. Highly recommended for anyone who loves WWII history, technology, or both.

Quote: Brian Kernighan

| Comments (0)

Words I try to live by.

Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.

iPhone Update

| Comments (0)

About a year ago, I predicted that Apple’s iPhone would sell really well. A recently released market study by Canalys claims that the iPhone has a 27% market share in the North American smart phone market. 2nd place isn’t bad for a first-time product. Blackberry has a small lead, and Windows-based phones (all of them as a group) are in 3rd place.

It will be interesting to see if Apple can continue their success in the international market. I suspect that they can. I’m still hoping to find some justification for getting one at some point. :-)

Marking Spam as Read in Gmail

| Comments (0)

I’ve always been annoyed that the link to my spam folder in GMail showed up as bold text because there were unread messages inside. At first, I tried using Greasemonkey scripts or other forms of hacking the style sheet so that the word “Spam” wouldn’t be so attention grabbing. These worked until I’d use a new computer or reinstall my browser (like after my hard drive crashed at work).

After reading Matthew Gallant’s note about how he uses filters to automatically mark his spam as read, I tried it out. After a few tweaks, it’s working great. I only get a few spam messages a month that causes me to open my Spam folder. In one case, it was a legitimate email that I was glad not to have missed.

The basic idea is to create a filter that marks everything in the Spam folder as read unless it contains one (or more) keywords you specify, like your real name. That way, most spam will just be ignored, but misclassified emails will show up as unread which you can then verify by hand. Very nice.

Hard Drive Crash at Mozy

| Comments (0)

Well, yesterday the hard drive in my computer at work failed. I find this more than a bit funny as I work at Mozy which is company that does online backups. It gave me an opportunity to experience the process of restoring my files first hand.

When arrived at work yesterday morning, I noticed that my computer was freezing for a minute or two at a time. I thought it was some run-away process on my computer, but didn’t think much of it at first. Eventually, it got annoying enough that I decided to reboot my computer to get rid of it. That was the last I saw of my computer.

Eventually, I did manage to get the computer to boot into “single-user mode” which is designed for diagnosing and fixing problems. A few obscure terminal commands later, I discovered that the file systems on both partitions on my drive were badly corrupted. For those interested, the super block and all of its backups were bad on both partitions. Not good.

Apparently, the crash was caused by a power failure or brown-out over the weekend. The company is a bit behind in getting backup power supplies (UPS) to all of their new employees. They have several on order, but it’s going to be a week too late for me. I’d been through 4 brown-outs so far this year and hadn’t had any problems. My luck couldn’t last forever, I guess.

Anyway, since I’d been using Mozy to backup my important files. I got to see how Mozy’s restore process worked and discovered a few things that could help the process go a lot more smoothly. Just after losing a drive, our customers are wondering if they’ll ever see their files again. Getting their files back quickly and easily would make them incredibly happy.

I use the Mac version of Mozy, so I’ll avoid commenting on the Windows version. We try to make both versions similar, but I’m sure there are some differences. So here’s the list for happy customers:

  1. Consistency — get the files back at all.
  2. Accuracy — get the files in their exact original state.
  3. Speed — get the files as quickly as possible.
  4. Usability — having a simple, easy, quick process for doing it all.

Looking at this list, it strikes me that this is probably the correct order in which to focus our attention. The Mac version does a good job on everything, but can improve on #2 and #4.

The current version of Mozy does not backup some types of files correctly, including symbolic links and resource forks. It also has some UI issues with bundles. These problems have already been fixed for inclusion in the next release and are in testing now. They were some of the last bugs necessary for Mozy to get out of it’s beta state.

UPDATE: Version 0.9 (and later) of Mozy supports resource forks, symbolic links, and bundles.

The main improvements needed before restoring files with Mozy can be a joyful process (“Yes, it worked!”) are:

  1. The ability to restore files to their original locations.
  2. An option to “synchronize” a folder by deleting files that don’t exist on Mozy’s servers.
  3. Support for restoring a “backup set” instead of just browsing for files.

Right now, it is possible to restore files to their original locations by choosing the root folder as the destination and selecting all of the highest-level folders for restoration. You get one warning about overwriting files. Since this is probably a very common desire (it’s what I wanted after my reinstall), I think Mozy should make it easier.

I also found that there were some default files and folders on my computer that I didn’t want after restoring. In particular, I had to delete the default files for iCal and Mail before restoring to make things work right. Since I knew that I’d backed up my entire Mail folder, it would have been awesome if Mozy could have restored my Mail folder to be exactly like Mozy’s copy of that same folder. There could even be some type of “merge” process that displays what Mozy is going to do (including files that will be overwritten) and ask for permission to proceed.

When you configure which files and folders you want Mozy to back up, you can choose to back up a “set” of files from a list or browse the filesystem directly. When restoring files, the only option is to browse. Since our website allows users to restore files by choosing from the sets they backed up, it makes sense that the Mozy application should too.

Overall, I was able to get my files back without too much trouble. Since I’m the one responsible for eliminating that “trouble” for our customers, I’ve added these ideas to our list of things to do. I don’t think I would’ve volunteered to destroy all my data just to see what it’s like, but maybe I should have. In any case, I hope to improve Mozy’s restore process soon.

Mephisto vs Movable Type

| Comments (5)

Recently, I changed the software I use to create my website from Mephisto to Movable Type. After using Movable Type for a few weeks, I want to say that I’m happy with the change. I really like Mephiso, but the new Movable Type 4 is just better.

First, Mephisto is written in Ruby. I love Ruby as a programming language, but it’s horribly slow right now. Using Ruby also limits my choice of where to host my site because Ruby support is still rare. Since I’m hoping to spend my time writing articles instead of programming blog software, I decided that the implementation language doesn’t really matter.

Second, Movable Type will “publish” my site by creating static pages instead of constructing each page dynamically. Because the web server doesn’t have to do as much work each time someone wants to read something, my site performs better.

Third, Movable Type has a much larger user-base. Anytime I have a problem or need a bug fixed or want to change something about my site, my chances of finding a solution are higher with Movable Type. Mephisto development has dropped to almost (but not quite) zero over the last 6 months.

Fourth, my biggest complaint about Mephisto is that it doesn’t support pagination, and that it’s authors don’t intend to add it. Pagination is those links at the bottom of an article that point to other articles. Not having them is a big pain.

I haven’t finished setting up my site the way I want it — the look of the site needs a lot of help — but I have found Movable Type to be much better at supporting what I want to do than Mephisto was.

Age and Creativity

| Comments (0)

Marc Andreessen just wrote an article about how age affects creativity, specifically targeting what age is best for entrepreneurship. He’s going to address the topic in two parts: first trying to get some real data, second to give his opinion.

He spends quite a bit of time quoting from the research of Dean Simonton at University of California Davis, who has spent his career studying how age affects creativity in different fields. I have to admit I’m sort of a junkie for well written research supported by hard data, and Simonton certainly qualifies.

Java vs Objective-C

| Comments (0)

I’m a long-time Java developer (applications, not websites) who started doing a lot of Objective-C programming for Macs about a year and a half ago. I thought I’d comment on my impressions of both languages now that I have some experience in both.

Objective-C is a great language, but there are a few things I miss from Java:

  • Not needing to worry about linking
  • Having all relevant information in once source file (.java) instead of two (.m and .h)
  • Not needing to think about file organization
  • Having warnings printed every time I compile instead of just once, when the file is first changed
  • Easy bulk renames in Eclipse (Java), which are much more difficult in Xcode (Objective-C) though I hear this may change soon
  • Debugging in Eclipse — Xcode’s debugger isn’t very helpful
  • No memory leaks

Overall, these issues aren’t big enough to annoy me anymore. I guess I’ve gotten used to programming for a native platform again. Hopefully, the new versions of Objective-C and Xcode coming out in a few months will eliminate the last 3 items from this list. That’d be great.

On the flip-side, there are a few things I really like about Objective-C:

  • Being able to extend the built-in classes easily
  • Creating a user interface in Interface Builder is dead-simple

I haven’t found that the dynamic nature of the language has been all that wonderful. It certainly hasn’t hurt though. I’m sure I haven’t used it to its fullest potential yet, so I guess I’ll reserve judgment for now.

Programming: Master and Expert

I found an article written by Zed Shaw that describes perfectly how I find myself approaching my keyboard recently. He compares programming to martial arts and comments on how he finds himself disdaining complicated solutions in favor of simpler, more effective, approaches.

Summize is a cool idea for a search engine based around summarizing (of course) existing product reviews. I like how you can see the distribution of good vs bad reviews, in addition to the average, all at a glance. Much better than Amazon’s star rating system.

UPDATE 7/3/07: Amazon has started summarizing their ratings using something similar. Didn’t take long. :-)

About this Archive

This page is a archive of recent entries in the Technology category.

Science is the previous category.

Find recent content on the main index or look in the archives to find all content.