Why office machines and gadgets hate me (and why I hate them back)

I consider myself a luddite when it comes to most forms of technology, particularly with those devices that are said to “just work.” This includes photocopiers, fax machines, complex phones (e.g. multi-line phone systems, cell phones), printers, home theater systems, and other unholy bastard combinations of these devices. Somehow, they don’t “just work” for me.

Microsoft is very rare at “getting it right,” but on some things they have: one of the goals of Microsoft’s Office 2007 was to help its users more easily and quickly create good looking documents. Doing it quickly makes the user feel smart; having it look good makes the user look smart too.

When I’m fumbling around with inane office equipment and devices, trying to figure out what some flashing LED with meaningless icon is trying to convey, or trying to figure out what combinations of buttons must be pushed in what order to make some device perform some magic function, I don’t feel very smart. When I cannot get these devices to work the way I want them to, it makes me feel stupid and don’t want to use the device again, and become bitter about it (as if I wasn’t bitter enough already).

This is probably the basis for the luddite attitude of many people, for both gadgets and technology as well as computers.

I don’t think this is our fault…

Besides many manufacturers’ complete ineptitude in usability and market testing, many, many manufacturers cut corners and have electrical and hardware engineers write software and design interfaces, instead of hiring dedicated software engineers and usability experts. Just because an electrical/hardware engineer knows how to program, it does not mean they can produce good software, or even know what they are doing.

High-speed Internet access through cellular phone networks

I’m a T-Mobile Hotspot subscriber, but I cannot say I’m particularly happy with it. Reliability is in general pretty good, but there have been a few times a certain hotspot has been flaky, and these tend to be the times I needed access the most. It’s also a pain to have to go somewhere to get Internet access, especially when, for example, I don’t like Starbuck’s coffee. I rather have the Internet come to me.

EnterEVDO. It’s a 3rd generation cellular technology that allows for broadband-like speeds, typically almost everywhere you have a cellular phone signal. There are different speeds depending on what network is available in a particular location:

  • 1xRTT, allowing for 144 Kbps/144 Kbps download/upload speeds
  • EVDO 1x Rev 0, allowing for 2.45 Mbps/150 Kbps
  • EVDO 1x Rev A, allowing for 3.1 Mbps/1.8 Mbps speeds.

All three types of networks are available can be found in the United States, and a typical provider’s access plan lets you roam between them anywhere in the country for free.

Access comes through a provider-specific modem (i.e. you cannot use one provider’s modem with another provider). These usually are PCMCIA cards, reminiscent of the 802.11b network cards people used before WiFi was built-into notebook computers. Connection to a provider usually is provided throughPPPsoftware. Most the modems available on the market today are a little oddball: they expose a USB controller, which then exposes a USB serial interface which controls a virtual modem. Yes, it’s strange, especially when these devices aren’t actually modems (there is no MOdulation or DEModulation taking place, the devices are more “network bridges”), but thankfully it allows these devices to easily work with alternative operating systems like Linux and MacOS X.

In the USA, there are essentially three major EVDO providers: Sprint, Verizon Wireless, and Alltell, with Sprint and Verizon having the largest networks by far. What differentiates the Sprint and Verizon, I think, is pricing and policies. If you do not want to sign a contract, both providers cost the same. If you want to sign a contract for 2 yrs, you only get a discount rate with Verizon if you’ve a qualifying voice plan—Sprint has no such limitation to get a discounted rate.

Verizon does a bit of questionable marketing: they advertise their service as “unlimited,” but they pull a trick often used in contract writing and specifically define “unlimited” as 5 GB/month. If you go over this limit, you’re breaking Verizon’s terms of service. Verizon often cancels subscribers accounts, and assumes you are a criminal, downloading illegal music or software. An article in the Washington Post, Bandwidth Bandit, discusses about one subscriber’s woes. Their terms of service disallows many popular Internet applications as well, such as VoIP, video conferencing, or any online gaming. Sprint’s terms of service are more vague and do not explicitly disallow these things, but reports from their subscribers say that they don’t have unreasonably low bandwidth limits nor have draconian policy enforcement assuming you guilty until proven innocent.

This wouldn’t be a good summary without me discussing what new bleeding-edge technology was right around the corner. EVDO Rev B, allowing for at least 4.9 Mbps/1.8 Mbps speeds, has been deployed in a few places in Asia, but given how backward North America tends to be in technology adoption, won’t be in the United States anytime soon. WiMAX, a 4th generation cellular technology allowing for speeds of at least 10 Mbps, will probably take the place of EVDO. Sprint is the only major provider dedicated to building a WiMAX network, with plans to begin deployment at the end of 2007.

Some external links with good information:

Microsoft Windows Vista and the end of the computer hardware industry

Peter Gutmann, a cryptography expert at the University of Auckland, has written a Cost Analysis of Windows Vista, where he discusses how the “content protection” and trusted platform features described in the Microsoft Windows Vista “security” specification will destroy reliability and innovation in the computer hardware industry, as well as make life miserable for us, the users.

Doomsday scenarios like this were brought up when Microsoft Windows XP was about to be released, and though it was enough to make me switch away from Windows to Linux, most of the concerns did not materialize. I don’t know if Vista will be any different of a situation, but if the notion that they definitely want this kind of control (irrespective of whether they can actually do it, or whether the market will let them) doesn’t make anyone who enjoys using their computer want to switch, I don’t know what will.

Connecting to the Columbia Medical Center’s Athens WiFi network with Linux

Columbia University’s Medical Center, like many university campuses, has many WiFi access points. To meet HIPAA privacy regulations all their wireless networks require use of VPNs or sophisticated encryption protocols.

Connecting to their athens wireless network, which uses IEEE-802.1x authentication, is a little non-obvious with Linux, but is possible given your wireless card supports WPA and works with wpa_supplicant.

To save the many weeks I spent fiddling, the magic wpa_supplicant.conf stanza that works for me:

network={ ssid="athens" key_mgmt=WPA-EAP eap=TTLS pairwise=TKIP group=TKIP phase2="auth=PAP" identity="foo" password="bar" priority=2 }

Replace foo with your Columbia University UNI and bar with your password.

Wikimania 2006

Wikimania 2006, a conference for Wikimedia and Wikipedia people, fans, and advocates, finished up today. I attended as a visitor, to just see the seminars and sessions and soak up enthusiasm about wikis in general.

A separate event held before Wikimania, the Wikimania Hacking Days, had many of MediaWiki and Wikipedia developers come to discuss future directions of the infrastructure and software architectural of Wikiedia. Even though it was held at the offices where I work, the OLPC, I did not attend any of the seminars or hacking sessions. Most were heavily focused on MediaWiki, which I can honestly say I do not like much: the Wiki syntax is awful, and it is slow (I think Wikipedia is the fastest MediaWiki-powered site I know of).

Some of the interesting stuff I liked at Wikimania:

  • Chuck Smith’s Wiki Markup Mess poster detailed the many different types of Wiki markup in use, and put forth a “standard” Wiki markup to be adopted by all. I personally think this is the way standards should be made, that is, after-the-fact based on things that are already working in the wild. Interesting enough, ErfurtWiki, which I used on my old website, supports the syntax unification they were proposing.
  • Lawrence Lessig’s Ethics of a Free Culture Movement talk was excellent. While the presentation he used was a little corny, it detracted nothing from his message: copyright law has stinted the culture of the last 100 yrs, and new laws are needed for the new culture of the next 100 yrs
  • Markus Krötzsch’s Semantic MediaWiki extension, demonstrated as part of the Wikipedia and the Semantic Web panel, was very interesting to me. Lack of structure to information in wikis is a pet peeve with me; semantically tagging bits of information so they can be pulled out from articles with automated tools is just cool.

New MediaWiki skin based off of MySkin: NullBook

I’ve created a new theme for MediaWiki-based sites (by proxy, Wikipedia as well) called NullBook.

I do not like Monobook; I feel as if it wastes too much space on the screen, difficult to read, and doesn’t follow established web usability guidelines. Some of NullBook’s features:

  • Fixed-position “tab bar”, set to use GUI colors, that stays with you as you scroll down a page. The tab bar contains the contents of the “Views” menu, as well as the go/search box.
  • No font size definitions; uses your browser’s default. Skin (mostly) scales well with font size changes.
  • Underlined links, and more recognizable link colors. Blue for unvisited links, purple for visited links, and green for broken (or uncreated) links. Moving over a link highlights it to red.
  • Removed sidebar to stop wasting vertical screen real-estate, and relocated it to the bottom of the page. Also hid the other languages list since I tend to only look at English Wikipedia articles.

You can find more information about NullBook (including screenshots) by looking at the NullBook section of WikiMedia’s Gallery of user styles.

India’s rejection of the OLPC $100 laptop

India’s Ministry of Education has said that India will not take part in the $100 laptop project [The Register]. Quoting the news article:

Education dismissed the laptop as “pedagogically suspect”. Education Secretary Sudeep Banerjee said: “We cannot visualise a situation for decades when we can go beyond the pilot stage. We need classrooms and teachers more urgently than fancy tools.”

The Playground, as well as many Internet commentators, think this is “fair reasoning.” I don’t see how—who ever said the laptop would replace teachers or classrooms? How exactly would they do that—is this supposed to make any sense?

Yes, the $100 laptop is a “fancy tool.” It is a fancy tool to facilitate a new age of electronic learning. Funds used to purchase these laptops should not be taken away from providing facilities and teachers, but instead on school supplies such as paper, pencils, and textbooks which themselves are generally expensive.

While India and much of the developing world may need more teachers and classrooms, yes, it’s a completely different problem that the $100 laptop isn’t meant to address. I’m waiting to see if there is valid criticism from India’s government in the future.

T-Mobile WiFi Hotspot login script

T-Mobile’s WiFi Hotspot service, thankfully, forgoes a proprietary authentication mechanism for a solution that while cross platform (i.e. it works with Linux), can be extremely annoying. On opening a web browser and attempting to go to any website, you’re required to login on an SSL-protected website with your account username and password before you can use the connection. If your web browser automatically tries to open many pages on startup, such as when you’re using the Session Saving extension for Firefox, you get T-Mobile’s Hotspot login page in every tab—extremely annoying!

I’ve written a small Python script that can login programatically without use of a web browser.

Read more…

A quick shell include for setting paths for programs installed in non-traditional locations

A page in the Beyond Linux from Scratch manual describes environment variables that should be set when installing software in a non-traditional location (e.g. your home directory).

I’ve written a sh/bash include that can be included from .bashrc to set these variables, as well as PYTHON_PATH for separately installed Python libraries:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
#!/bin/bash

PREFIX=$HOME/usr

export PATH="$PREFIX/bin:$PATH"
export PYTHONPATH="$PREFIX/lib/python2.4/site-packages:$PYTHON_PATH"
export MANPATH="$PREFIX/man:$MANPATH"
export INFOPATH="$PREFIX/info:$INFOPATH"
export LD_LIBRARY_PATH="$PREFIX/lib:$LD_LIBRARY_PATH"
export PKG_CONFIG_PATH="$PREFIX/lib/pkgconfig:$PKG_CONFIG_PATH"
export CPPFLAGS="-I$PREFIX/includes $CPPFLAGS"
export LDFLAGS="-L$PREFIX/lib $LDFLAGS"

The philosophical difference between math and science

Contemporary society lumps math and science as one thing, but they are not the same. Reading a passage in Simon Blackburn’s Think, I saw some insight about this, which I will paraphrase and expand on here.

Math is based on abstractions, and relationships between abstractions. Abstractions in math are generally absolute truths, meaning it is impossible that the abstraction is not true. Very few things that are accepted in mathematics get retracted later. New abstractions can be formed from existing ones, usually from those that are absolute truths, and these new abstractions can be formed by simply sitting at a desk and thinking about it long enough: there’s an adage, a mathematician is a machine that turns coffee into theorems.

The basis of science is empiricism. One observes something about the natural world, and tries to create their own model of how it works or occurs—they try to turn it into math. When the conversion is successful, we can use the new math to create technology, to invent and engineer new things.

Verification of a model is usually not absolute, and through repetition and logic something is “believed” to be true when as far as anyone can tell there’s no evidence that it is false. The only way to verify something in science is to repeat it: you’re not going to get the next scientific breakthrough by only sitting at your desk. Because science is often not based on absolute truths, many things in science that are once accepted get retracted from days to centuries layer.

This philosophical difference I think explains how there can exist child prodigies, and their distribution among math and the sciences… There are many children who are math prodigies, fewer who are prodigies of physics, and almost none of chemistry. Child prodigies in biology and the life sciences are completely unheard of.