All articles, tagged with “product reviews”


Being Cocky Will Ruin Your Product: A Western Digital Passport Case Study

Product managers, engineers, marketers, and those who support them can be amazingly pretentious. If you are involved in designing a product, please make sure that you understand this important point: it doesn’t matter what you build, or how good a job you do, your product is not cool enough to force on everyone and expect them to like it. Yes, this is a universal law. Yes, even for Apple. Eventually you will find out how much you have alienated your customers.

The Western Digital Passport drives are a perfect example. I recently needed to buy an external backup drive for work. I really liked the Passport drives: lots of storage packed into a sleek form factor small enough to be tossed in a laptop bag. However, they ruined the drives with their awful backup software *ahem* rootkit. They implemented this “feature” in the most awful way possible; it is on the drive taking up space, but the firmware makes it look like a read-only CD image. It is really hard to remove, but it might be possible to disable it with a tool available at Western Digital’s web site. Unfortunately for me, the tool bricked my drive (and lost my data). I guess they posted the tool because removing the software would look like admitting a mistake. I am actually glad it failed because then it was easy to return the drive and get a SeaGate FreeAgent.

If I was in the market for a backup solution, I would have bought a product marketed as a backup solution. Western Digital: I wouldn’t be offended that you gave me free software if you put it on the drive like every other sane manufacturer. All of your funny business adds confusion and gets in the way of me using the drive for its intended purpose: dumb file storage.

The lesson for product designers is clear: understand that every option you remove limits your customer base, and options that look senselessly removed make for angry former customers. If you can provide ease of use without limiting flexibility, exerting control just makes you look like a jerk. Being cocky can ruin your product.

By the way, though not quite as small and sleek as the Passport, the Seagate FreeAgent Go provides more storage per dollar, a significantly longer warranty, and works fuss free.

Thank you Seagate for providing an excellent alternative.

[ Read More | 0 comments | 0 pingbacks | , , ]

Kubuntu Karmic on Dell Mini 10

Background to Buying a Linux System

My family switched to all-Linux in 2002. Mid-2004 was the last time I purchased a Windows license for personal use; though I have a copy of XP that I still occasionally load in a VM. 2004 was the year I bought an HP laptop that came with Windows, and I put Linux on it during its first boot. Since then I have purchased a Lenovo Thinkpad and four Dells with Linux pre-installed. It is infuriatingly difficult to avoid the Microsoft Tax, but it is possible. A lot of vendors offer FreeDOS systems these days. More important than not paying Microsoft (and more difficult) is finding a machine with Linux pre-installed.

This is not as difficult as it was. Not long ago, the only way to obtain a machine pre-installed with Linux was to purchase from a reseller like Emperor Linux. These resellers don’t have the resources of the manufacturer, and they likely paid the Microsoft Tax for you before they put Linux on the device. However, options are gradually improving. The manufacturers have experimented with Linux systems and HP, Lenovo, and Dell all sold consumer equipment pre-installed with Linux in the recent past. (I hear Sony does too, but I refuse to buy Sony products given their history of proprietary technologies, root kits, etc.) Unfortunately, all these manufacturers stopped selling the systems after a short time. After a couple of failed experiments, Dell seems to have figured things out and turned into a reliable Linux distributor with a decent selection of systems. Here is the secret to buying a Linux system from Dell: many of the best Linux configurations are only available when using the “Small and Medium Business” section of their site; the open source offerings page does not list all of their Linux offerings. The rest of this blog post details the other sad secret: Linux systems from Dell don’t necessarily play nicely with Linux.

Before we proceed, I should point out three reasons why it is worth putting in the effort to get a system with Linux pre-installed:

  • Since the manufacturer is willing to support Linux running on the hardware, it is reasonable to expect that it should be easier to configure with Linux than other equipment.
  • Being officially counted as a Linux user sends a direct message to the market that manufacturers should support Linux.
  • Buying a machine with Linux pre-installed confers moral superiority.

Okay, so the second and third reasons are probably imaginary. I am sorry to report that the first reason is largely a fiction as well. It would be more accurate to say: since the manufacturer is willing to support Linux running on the hardware, I know that someone, somewhere got Linux to at least sort-of run.

Notice that saving money is not on the list. I am not sure what back-room deals make it as expensive to buy a machine installed with Redmond’s proprietary OS as it is to purchase a freely available OS like FreeDOS or Linux, but that is how Dell’s pricing model currently works. In other words, at the current time paying the Windows Tax, and then putting Linux on yourself is just as economical a decision as purchasing Linux pre-installed. This is good for Emperor Linux.

Buying a Dell

Dell has been shipping systems pre-installed with Ubuntu for over two years now. The ten minutes I spent playing with the stock OS were impressive. However, I choose to reinstall with the latest stock Kubuntu release for a few reasons:

  • I am a control freak and want to know exactly what is on the system.
  • I am a KDE fan, and Dell ships Gnome by default.
  • The Dell releases are pretty old (they are still shipping 8.04).
  • I don’t see much value in having an officially licensed DVD and MP3 player, though others might.

I bought an Inspiron 530 with Ubuntu over eighteen months ago. It took stock Kubuntu flawlessly and has run great the entire time. It has been the perfect Linux desktop for my kids’ machine. I highly recommend this product.

I have purchased two Inspiron Mini 10v netbooks with Ubuntu since last September. I really like these machines. They took stock Kubuntu okay—you have to install a binary blob for the wireless card (you can get the details in the Mini 10 section below), but everything else worked out-of-the-box. They are reliable machines, though I hated the touchpad for a long time. After three months I am starting to get used to it. These machines are so great that I can’t seem to keep them—family members keep buying them from me and then I have to order myself another.

I was so happy with my previous experiences that I decided to buy the top-of-the-line Linux netbook: the Inspiron Mini 10. This model must be purchased through the “Small and Medium Business” website. It has a much nicer screen, a multi-touch touchpad, faster processor, and more memory. However, getting stock Kubuntu to work on it was not as easy as I expected. Here are the details.

Kubuntu on a Dell Inspiron Mini 10

Proprietary drivers: bringing the pains of Windows to Linux!

Though I don’t know the exact reason Dell ships their Linux netbooks with a lot of binary-only proprietary drivers, I suspect that it has to do with their desire to pack in as much power per battery mWh as possible. The Mini 10 series does have impressive battery life—I am constantly surprised at how long I can go without plugging in (I plug it in most nights and haven’t run out of juice yet). I guess that Dell feels like the only way to achieve that is to use the Intel Poulsbo Chipset that requires a proprietary graphics driver. I suspect similar logic is behind the awful Broadcom wireless card as well.

Broadcom wireless driver

These Dell netbooks are not very useful until you get wireless networking setup. I had to install using a wired connection for both the Mini 10 and the Mini 10v. It is then necessary to setup the binary Broadcom driver. My understanding is that the new Jocky hardware tool will take care of this once all the correct packages are pulled down, but I am more comfortable with the command line.

aptitude install dkms patch bcmwl-kernel-source b43-fwcutter

That command is all it takes, but I’ll offer a little bit of explanation:

  • dkms: This is the Dynamic Kernel Module Support framework. It is a really nice way of making sure that picky kernel modules are always correctly built against the currently running kernel. Not only does this make binary drivers easier to manage, it also solved my constant problems with updates breaking VirtualBox (on my development box—I would not recommend running VirtualBox on these netbooks).
  • patch: This is required for the script to edit the bcmwl package before compilation. It should really be a dependency. It took me a while to realize the error I was getting was due to patch not being installed.
  • bcmwl-kernel-source: This is the proprietary driver for Broadcom wireless cards.
  • b43-fwcutter: This is a tool to install the binary blob into the Broadcom 43XX firmware. I’m not certain that it is necessary. I installed this before I realized that the DKMS driver was failing to build because of the missing patch dependency. I suspect that I would have eventually had problems if I hadn’t installed this tool.

As part of the install, dpkg correctly compiled the kernel module, inserted the binary blob, and got everything setup. KNetworkManager appeared to see the wireless at that point, but KNetworkManager hates my WPA2 setup, so I always use wicd. Don’t forget to manually tell wicd that eth1 is the wireless interface, or wicd will report that no networks are found even though iwconfig will work and wlist scan will show networks.

Sound

Remember to turn up the volume of the PCM channel.

Multi-touch touchpad

Works great:

  • 1 finger tap: left click
  • 2 finger tap: middle click
  • 3 finger tap: right click
  • place 1 finger, drag one finger: scroll (vertical only)

I don’t currently have horizontal scroll or pinch zoom working.

Video

The biggest let down with the Dell Mini 10 is the Intel Poulsbo chipset. The larger resolution of the 10 is the most appealing feature to justify the upgrade from the 10v. Unfortunately, Intel didn’t open source the driver like they have with their other GPUs because the Poulsbo is based on third party technologies. If you think the Intel name will guarantee good Linux support, you are mistaken. Ars Technica has a good rundown on the problem.

The summary is that the binary driver is only supported by Dell on the versions of Ubuntu that they are shipping. Getting packages for other versions and distributions is challenging and not very reliable. However, I was able to get the driver to work on Kubuntu Karmic Koala (9.10).

Here are the basic steps, distilled from a Launchpad Bug Report:

  1. Add this PPA to ”/etc/apt/sources.list”:

    deb http://ppa.launchpad.net/lucazade/gma500/ubuntu/ karmic main
    deb-src http://ppa.launchpad.net/lucazade/gma500/ubuntu/ karmic main
    
  2. Get this missing package: wget xorg-video-psb.deb. Install it with dpkg -i.

  3. Run this command:

    aptitude update; aptitude install psb-kernel-headers psb-kernel-source psb-modules psb-firmware libdrm-poulsbo1 poulsbo-driver-2d poulsbo-driver-3d xpsb-glx
    
  4. Create this file: “/etc/X11/xorg.conf” with these contents:

    Section "Device"
            Identifier "Configured Video Device"
            Option "IgnoreACPI"
            Option "AccelMethod" "exa"
            Option "MigrationHeuristic" "greedy"
            Option "NoDDC"
            Driver "psb"
    EndSection
    
    Section "DRI"
        Mode 0666
    EndSection
    
    Section "Monitor"
            Identifier "Configured Monitor"
    EndSection
    
    Section "Screen"
            Identifier "Default Screen"
            Monitor "Configured Monitor"
            Device "Configured Video Device"
    EndSection
    
    #Added for mouse pad
    Section "InputDevice"
            Identifier "Mouse0"
            Driver "synaptics"
            Option "Protocol" "auto"
            Option "Device" "/dev/input/mouse0"
            Option "ZAxisMapping" "4 5 6 7"
            Option "CorePointer"
            Option "HorizEdgeScroll" "1"
    EndSection
    
  5. Reboot

Once it all works, you are rewarded with a very nice display which makes the netbook significantly more usable.

HDMI out

Video worked fine after enabling the external display with xrandr.

I couldn’t get audio working. Here is what I tried:

  • Unmuted the IEC958 channel in alsa-mixer (and enabled it in KMix to be sure.
  • Changed the device order in System Settings -> Multimedia.

Remaining problems

  • Enabling desktop effects completely broke KDE. I had to revert to a backup.
  • The driver cannot keep up with a full screen Hulu video, even when the video was fully buffered and at a non-HD resolution.
  • The panel that is the top menu for Kubuntu Netbook Remix cannot be resized. On the high resolution screen the lock / logout buttons are very tiny and cannot be configured to be any bigger.
  • I am getting lots of these errors: hda-intel: spurious response 0x0:0x0, last cmd=0x . . . but I don’t see any negative effects.

Conclusion

I am undecided whether the Dell Mini 10 is worth the hassle. I really like the multi-touch touchpad, the additional RAM, and the bigger memory. On the other hand, the significantly cheaper Mini 10v just works. If Intel and Dell could get the video driver problems ironed out, this netbook would be great.

[ Read More | 2 comments | 0 pingbacks | , , , , , ]

Kubuntu Karmic

I am about to start a big project for work, and I wanted to get the latest tools on my machine because I know I won’t have the opportunity for a while. Unfortunately, my install of Kubuntu Hardy 8.04 is starting to feel behind-the-times and the latest versions of my applications are getting increasingly hard to install as they depend on newer libraries. However, I have been very nervous to upgrade. I love KDE 3.5; it is a nearly perfect mix of stability, configurability, and usability; perhaps I’ve just grown very used to it. I avoided upgrading to the unfinished KDE 4.0, and have been following KDE4 closely while waiting for it to get complete enough not to drive me crazy. It looks almost there. So last week, when the project start got delayed yet again, I tackled upgrading to the freshly released Alpha 6 of Kubuntu Karmic.

Now I understand that alpha-quality software is not for production use. I also understand that the jump from KDE3 to KDE4 is a big one. However, Karmic is coming along nicely, and Alpha 6 looks almost there. My logic went like this: get the reinstall out of the way, upgrade to ext4, get used to KDE4, get the configuration file merging headache out of the way, and get everything working in the KDE4 version of my most important apps. Then it should be easy to aptitude dist-upgrade through the betas to the release even in the middle of a firestorm.

I expected this project would take a day or two, and it went more or less according to plan, but the experience was more painful than I expected. Perhaps my notes might help out others.

Before upgrading I did some due diligence. I checked the bug database, and didn’t see anything that would obviously effect me. I reviewed the development mailing list logs. Finally, I hung out on IRC for a couple of days and got opinions on the stability of the development branch. At that point I had collected enough courage to jump in.

Impressions of Karmic

For me the big change from Hardy to Karmic is KDE4. However, I did notice:

  • The installer is really fast and easy to use.
  • The system boots far faster.
  • There is no more grub screen by default.
  • I have a bunch of new folders in my home directory that I don’t need and don’t want: Documents, Pictures, Videos, Templates. The Desktop folder is being deprecated. And now they make me use a Download folder (instead of sticking it in Desktop). I’m sure this can all be configured away.

Impressions of KDE4

Summary

It is usable, but not yet as good as 3.5.

Plasma

My first impression of plasma was overwhelmingly negative. I could appreciate the configurability, but found it exceptionally painful to get things organized in a way that supported my preferred workflow. I find plasma’s interaction between panels, activities, dashboards, and virtual desktops to be too complex—especially on my dual monitor setup. It’s a lot simpler with the “one activity per virtual desktop” setting introduced in KDE 4.3, but it still isn’t intuitive. Riddle-me this: 3 virtual desktops across 2 monitors with 1 separate dashboard equals 8 activity panes. It also isn’t obvious what will happen when I disconnect a display. I suspect some of the confusion is related to inconsistent behavior as a result of bugginess.

I also find plasma to be slower than KDE 3.5. Again, it is mostly the effect of zooming out to configure my activities and desktops (the slowness contributes to the feeling of bugginess). It doesn’t seem as snappy and responsive. On the other hand, there are lots of nice effects and they run a lot faster than equivalent effects under the compiz setup I played with previously (and then turned off). The effects are well integrated into system settings and much easier to navigate and tweak than under compiz.

Perhaps the problem with plasma is just having non-intuitive defaults. Things got easier once I deciphered the nomenclature (the weirdest is how they call the “edit plasmoid bubble” a “cashew”; while figuring out the desktop I started feeling an overwhelming urge to get a snack). I started over by deleting all my activities and I let the “one activity per virtual desktop” button set everything up for me. I think I had gotten myself into a bad state while playing around. Now that I’m actually able to use the setup, plasma is really growing on me. It does make it easy to do things that were previously hard to conceive.

I think the paradigm can be just as useful and a lot simpler by merging the idea of activities and virtual desktops. There should then be an option for “virtual desktop per monitor” or “virtual desktop across all monitors”.

Scorecard

Problems with Clean Solutions

  • Kopete fails to connect to Google Talk. Workaround: aptitude install qca-tls.
  • KNetworkManager doesn’t like WPA on my access point. Workaround: use wicd. Bug#: 434342
  • Default weather widgets won’t search for my city. Workaround: use plasma-widget-weatherforecast. Bug#: 434254
  • The change monitor button (Fn-F7, a.k.a. the video button) didn’t work on my ThinkPad T61. This is the same as previous version of Ubuntu (but the monitor naming changed a little bit). Thinkwiki has a solution. Essentially, drop the script into /usr/local/bin, and create a file in /etc/acpi/events/ibmvideobtn that says:
    event=ibm/hotkey HKEY 00000080 00001007
    action=/usr/local/bin/thinkpad-fn-f7
    A copy of the script is here.

Problems with Ugly Workarounds

  • Logging out crashes X and takes the keyboard with it. Workaround: reboot. Bug#: 428662
  • Can’t unlock screen. Workaround: run killall kscreenlocker from a virtual terminal. Bug#: 434276
  • Spaces break bash tab completion. Workaround: prepend command with a slash (). Bug#: 419509
  • Kopete won’t connect to jabber through a CNAME. Workaround: Use the A record or IP address. Bug#: 434214
  • Kmail can’t pass options to GVim. Workaround: use gvim -f %f as the command and lose the options. Bug#: 434180
  • Weird cups problems where cupsctl wants a password on bootup, and then reports “unathorized”. This is easy to ignore, but I got another authorization error while trying to install one of my printers—it reported my password as incorrect. It turns out that temporarily disabling apparmor with /etc/init.d/apparmor stop allowed me to get the task done. Debian Bug#: 543468.
  • Corner actions in SystemSettings→Desktop→Screen Edges conflicts with the ones in SystemSettings→Desktop→Screen Saver→Advanced Options. I didn’t log this one.

Annoying Missing Features

  • Severity 1: It does not appear to be possible to get the Application Launcher to display under the mouse pointer through a click on the background. I use this all the time, and it drives me crazy to have to move my mouse all the way to the panel on the edge of my dual-monitor widescreen display. Typing it makes it sound petty, but it drives me nuts.
  • Severity 4: Konsole doesn’t save a default window size anymore. Whatever size my last closed window has is the size the next one will open with. It’s annoying because I like my terminals to be exactly half of my screen, but sometimes I will adjust it for a specific task. Now every time I adjust it I have to fiddle it back.

Summary

The good news is that in my judgment KDE 4.3 has only one really annoying missing feature. That means that KDE 4.3 is pretty feature complete in comparison to KDE 3.5. Now that I’ve got a usable system, I’m really happy with it. Though this is definitely a usable alpha, I am anxiously looking forward to the final release of Karmic Koala. Hopefully it will include fixes to some of these problems.

Getting Back to Work

Of course the moment I pass the no-turning-back point of the upgrade, I got notified of the start of my project. That means that messing with the alpha has put me behind schedule. I’d better stop submitting bug reports and buckle-down to put my shiny new tools to work.

[ Read More | 2 comments | 0 pingbacks | , , , , , , , ]

Transparency in the Pricing of Digital Pianos

Summary: Herein, the author purchases a digital piano.

My grandparents wanted to help us buy a piano for our little family. Between their contribution and the money we had saved, our budget allowed us to make the single biggest cash purchase of our lives. We did a couple of months of research before settling on a digital piano. Our reasons for getting a digital piano where as follows, in order of decreasing importance:

  1. We can plug in the ear phones and practice during nap time without waking the kids up,
  2. We can get a near-grand-piano sound for the same price as an upright,
  3. I’m still feeling pretty nomadic, and I didn’t want a heavy piece of furniture to move,
  4. There are lots of fun buttons to play with,
  5. If we get really interested, we use the computer to master decent recordings.

Now let me be clear on my lack of credentials. Neither my wife nor I know how to play the piano. She plays the flute, but I’m pretty much a musical moron. Before piano shopping we asked a lot of people about pianos, and tried to do some research, but we were going pretty blind. Still, I think we made a good purchase.

We ended up purchasing a Yamaha Clavinova CVP307 (Dark Rosewood) from The Piano Gallery in Orem, Utah. The Piano Gallery was really good to work with, and gave us a great discount for paying in cash.

After seeing the Clavinova in the store, I found a blog entry where someone talked about how much they loved theirs. After doing some research, and playing the one in the store, we decided to get one. It has mostly lived up to our expectations.

The CVP-307 is a good looking digital piano that serves well as both an instrument and as an attractive piece of furniture. It was easy to assemble, and has a pretty good sound. Though we paid extra for the top of the line model which is supposed to sound as good as the real thing ($1000 more than the near identical CVP-305), as my ear has gotten better I can tell that it’s a digital. Chords loop as they fade, and have an artificial hint. However, it has taken me a couple of hours of playing to notice the differences, and I still have to really look for it. The worst “feature” of the Clavinova line is the crappy DRM on the music formats; I wish they had advertised that upfront.

The most frustrating thing about buying a piano is that the manufactures have worked very hard to prevent comparative pricing. When I called around to get competing quotes, sales people claimed that they had contractual obligations not to give out prices over the phone. After checking our local stores, I ended up finding some Internet prices in foreign currencies that after conversion showed I wasn’t getting an awful deal. I want to make the process a little easier for others. These prices reflect my research in Utah between Salt Lake City and Provo, early 2006. I only bothered saving price quotes for the Yamaha pianos.

  • Yamaha Upright M500F (Light Oak): $5,075
  • Yamaha Upright M425: $3,812
  • Yamaha Upright M500C (Used, priced through a dealer): $3,200
  • Yamaha Upright T116 (Satin): $5,149, bulk buy $3,795
  • Yamaha Clavinova CVP-307: $9,000, $6,095 sale (our cash discount was a little less).
  • Yamaha Clavinova CVP-303: $5,400, $3,995 sale
[ Read More | 0 comments | 0 pingbacks | , ]

Hawking Technology 11M Wireless Ethernet PCMCIA Car

This card has a prism2 chipset and works like a charm. I think it is a great card, and it only cost about $40, including shipping charges. I would recommend this card.

I started off trying to get the linux-wlan-ng driver to work because that is what every HOWTO I found recommended. I found the wlan driver to be a pain to set up, and not very feature complete. I couldn’t get WEP to work, nor could I specify an SSID. The documentation was really poor. To do anything with the card, you need to edit the wlan driver’s configuration files, but the documentation gives no syntax suggestions or examples. I wanted to be able to use different network settings (WEP keys, SSIDs) on my home network than on my work network, but I could find no suggestions how to set that up. It looked like I had to have separate network interfaces for each network setting. Not very helpful.

Recently my friend suggested using the Orinoco driver. I would have tried it earlier, but I didn’t think that it supported prism2 chipsets. It does, and it is sweet. It is much easier to use than linux-wlan-ng. Here is how to set it up under Linux 2.4.22:

  1. Recompile the kernel:
    1. Include no PCMCIA/CardBus support under General setup—>PCMCIA/CardBus support.
    2. Include basic Wireless LAN (non-hamradio) support under Network device support.
    3. Do not include support for any of the specific drivers under Wireless LAN (non-hamradio).
  2. Install pcmcia-cs. Check to make sure that it compiled the Orinoco driver in /lib/modules/pcmcia.
  3. Install wireless-tools. This should give you the iwconfig utility.
  4. Start the cardmgr service.
  5. Put the card in the bus, and see if you get an IP address.
  6. It isn’t very difficult. If you have a problem, check the output of the configuration script when you start to compile pcmcia-cs; it can give you some pointers.

The process is almost the same with the 2.6 kernel, except that the driver is included in the actual kernel. I am very happy with the driver over all.

[ Read More | 0 comments | 0 pingbacks | , , ]

Email: Password:
OpenID URL:
Forgot Login? Close