Archive for the ‘Software’ Category

UI For Programmers

Sunday, October 19th, 2003

UI_For_Programmers.jpg Just finished reading Joel Spolsky’s (of Joel On Software fame) book, “User Interface Design for Programmers.” There is a Slashdot review of it.

I like this book a lot. It is fun to read, amusing, and Joel tells it like it is. He presents rules for interface design, like “Every time you provide an option, you’re asking the user to make a decision.” Then he explains the rule, explores it, and illustrates it. (”The problem comes when you ask the user to make a choice that they don’t care about,” like the Setup Wizard for Windows Help: “Minimize database size, Maximize search capabilities, Custom search capabilities.” The user just wanted help on a particular task they were trying to accomplish!)

Open Source Viability

Friday, October 3rd, 2003

Forrester has a new research report on Open Source Strategy that has some interesting data. Of the firms they interviewed, 72% plan to use more open source. The biggest reason for using open source? — 68% responded with cost as the primary factor. And 80% say that the SCO lawsuit has no effect on their plans. (Thank you, I’m glad that people get that SCO is “smoking crack,” as Linus said.) Their analysis concludes with “open source will move relentless up the software stack.”

They evaluate the major open source players, including Linux, MySQL, Tomcat, and JBoss. They deem Linux is ready for the enterprise, but JBoss is not. Check out the “Forrester Wave” graph on the right to see what other open source software they say has enterprise visibility.

Firebird

Tuesday, September 30th, 2003

I just installed Mozilla Firebird 0.6.1. Wow, this thing is fast. It’s also smaller and better. I’m dumping the old Mozilla Navigator browser immediately.

The default download offered for Linux is missing xft support that enables anti-aliased fonts under RedHat. I can’t stand reading text that isn’t anti-aliased. Such text rendering should be banned. I found a version with xft and svg, and now I’m golden.

Get SMART

Saturday, September 20th, 2003

I’ve been looking into ways to better protect my data. You may remember that I recently experienced a failure on a large hard disk that nearly devastated me. So, now I’ve gotten SMART — Self-Monitoring Analysis and Reporting Technology System. SMART is built into most modern ATA and SCSI hard disks. In many cases, it can provide advanced warning of hard disk failure. When it’s enabled, the disk records attributes like seek/read error rate, calibration retries, and reallocated sectors. (Note that my disk failed after it filled its sector reallocation table.)

So I installed the SmartMon Tools on my Linux boxes. It enables SMART on your disks and monitors changes in performance attributes. The disk manufacturer decided which attributes to expose and what threshold values indicate you should worry about it. An attribute may indicate the disk will fail (”pre-fail”) or that it has worn-out past its intended life (”old-age”). For example, power-on hours is an old-age attribute, while calibration retries is pre-fail.

SmartMon just enables and monitors the SMART attributes. It can take action when an attribute reaches its threshold, or when it simply changes. Actions can be an e-mail messages or running a script. The best part about SMART is that it doesn’t impact the performance of your drive, as long as you use online attributes. SmartMon can also occassionally (every four hours) check offline attibutes, which brings the drive offline during an idle period to run a short (and more thorough) test (usually lasting just seconds).

Add to my list of improvements for a distro to have SmartMon running as a default service. (Along with starting services asynchronously to improve the
boot time.) Man, are Microsoft OSes doing SMART? Because they are missing out once again.

Yellow Dog Linux

Sunday, August 24th, 2003

ydl_in_motion.jpg I’ve been having problems with my wife’s iMac. It’s the original (1998, revision A) iMac with archaic MacOS 8.1. It crashes a lot, and I frequently have problems sharing printers to it over Appletalk from Linux (using netatalk). My wife complains about it, so I told her I was going to “upgrade” it. :) So I start checking out Yellow Dog Linux, distributed by Terra Soft. (They also own the singular license to distribute Apple hardware with Linux pre-installed.) There’s even a video on their site with a pretty girl telling me, “My computer is not just a machine, it’s a reflection of who I am,” while techno music plays in the background (image on right). Linux chicks are cool. :) (more…)

Memory Loss

Sunday, August 17th, 2003

My main hard disk that stores /home and most of my important stuff recently failed. I went to save a file to a directory, only to find the directory missing. After seeing “IO error” all over the logs, I thought rebooting was needed to clear up a buggy controller or driver. Big mistake! The first sector, the MBR where the boot loader and partition table live, was already bad, making the drive unusable by the OS.

Lesson One: when you notice IO errors, immediately begin copying files to a safe disk.

I reboot, and at this point, I see my OS telling me “drive is unusable.” So I freaked out, thinking about the 16 months of digital pictures, years of e-mail, thousands of hours of source code all lost. I decided I would recover the drive no matter what the cost. I called half a dozen places like OnTrack and Drive Savers and got the bad news: with an 80 gig drive, it’s gonna cost in the range of $1000 to well over $3000. I felt sick, very sick.

Lesson Two: do your research and don’t let people take advantage of you.

So I keep hearing about and seeing web sites for data recovery software that doesn’t require the expensive trip to the clean room. In particular, I find software from R-TT that supports ext2 and is good quality. Unfortunately, the open source programs out there like e2extract are a little scary at alpha level and no documentation.

I was able to recover my data! And I didn’t even have to put my hard disk in the freezer (I’m speaking literally — this apparently works on drives with heads crashed on the platter). It turned out the disk was covered in bad sectors, but I still got 99% of my data back. And I learned a few things about super nodes and block groups along the way.

Lesson Three: backup your data! It’s not “if” your drive will fail, it’s “when.” Hard drives last on average 3-5 years. With 7200 RPM drives, the heat build-up makes them more likely to fail.

So now I am shopping for a RAID-5 controller card with 4 channels. The ATA RAID cards from Promise look very attractive. Maybe a bigger case with lots of fans too.

Dashboard for End Users

Wednesday, July 23rd, 2003

There’s quite a buzz about a Dashboard demo shown at OSCON during the keynote by Miguel de Icaza and Nat Friedman (infamous GNOME hackers and founders of Ximian). It’s not a corporate dashboard like the ones so many Fortune 500’s are putting up — it’s for end-users!

Dashboard is a little GUI window that displays information related to what you are currently doing on your computer. It gets “clue packets” from the front-end applications you use, like mail and IM. So if you are chatting with a friend over IM, Dashboard might display the last few e-mails you received from them, previous conversations, and their latest blog entries.

This reminds me of “agents” that were popular to talk about in AI circles. Agents were supposed to learn your habits and preferences, then make smart decisions for you, like finding a book you might like at a discount price. Why do I want an AI to try and second guess me? What I like about Dashboard is that it is taking cues from the user to make information easier to access. It puts the user in control, and doesn’t try to make decisions for them.

So is Dashboard going to be a “killer app”? We’ve had apps like Visicalc, Lotus 123, and Office in the corporate world. It’s about time we had a revolution for the end user.

Why is Storage Mechanical?

Monday, July 14th, 2003

I was cleaning out a “junk drawer” when I found an old audio tape. It struck me how the cassette contains mechanical parts that allow you to access its data. I thought about how DVD/CDs are superior because they contain no moving parts. Except that — when you put them in a reader — they are spun around mechanically to access data once again!

Having little parts spinning around in my computer to access data makes me feel like I have a Fred Flintstone computer with little dinosaurs inside making things work. I realize that these devices must operate within a physical world, but they should defer mechanical operation until required. My computer should be using data to light up pixels and undulate air into sound, but I shouldn’t hear platters spinning up like an airplane so I can read my e-mail.

We have solid state media today, but more data can be fit on a hard disk platter for less money. Lasers led to the invention of the Compact Disc. Hopefully, some new technology using molecules or quantum mechanics will lead to solid state storage for the masses. I can’t wait to have vast amounts of data on a little card that just plugs in.

Replacing Exchange

Friday, July 11th, 2003

Another one of my software ideas just got picked up and implemented while I twiddled my thumbs. Open Groupware is an open-source replacement for Microsoft Exchange. These guys were rather sneaky about getting around the problem of reverse-engineering the protocol of Exchange. Instead, they wrote a plugin for Outlook that converts MAPI into standard WebDAV-based calls.

Pretty soon there will be a window of opportunity for an infrastructure company that converts small offices to Linux. With a desktop environment like GNOME, Mozilla, Open Office, and server support with Apache, Cyrus IMAP, and Open Groupware, an office could run totally open source.

SuSE vs Redhat Approach to Software

Monday, May 12th, 2003

There’s an article at Open Magazine about Openexchange server from SuSE. It’s groupware to compete with Microsoft Exchange and Lotus Notes. Openexchange is a web-based application that uses Apache, Tomcat, Postfix, Cyrus IMAP, SpamAssassin, OpenLDAP, and PostgreSQL. Dang, I had this idea! It seems everyone is packaging Open Source Software as a commercial package nowadays. The idea is simple: core OSS components are solid, but lack packaged integration and a polished interface. I’m not happy with the way SuSE implemented this however …
(more…)