kai_mactane: (Default)

I received a phone call at work this past week, while I was in the middle of debugging some complicated JavaScript. Usually, my desk phone shows the internal extension that’s calling me; this time, it showed a series of asterisks. Intrigued and confused, I picked it up… and discovered it was a recruiter calling me. Apparently a row of asterisks must be how this phone indicates “Caller ID blocked”. (Now I know.)

The next morning at 7:53, I got a call at home from a number that didn’t report any name. I always let those go to voice-mail. I heard another recruiter leave a message, including “it’s eleven o’clock”.

Two different recruiters in two days, making such elementary mistakes? I’ve been working on this article on the back burner for a couple of years, but it’s obviously time I finished it up and posted it.

Never Call a Prospect At Work

And I really do mean, never. You don’t know if your prospect’s current employer monitors calls. You don’t know if your prospect has already told their employer that they’re looking for other opportunities — but it’s safest to assume that they haven’t, because it is definitely not safe for an employee to tell their employer that. Especially in “at-will employment” states (like California), where an employer can terminate an employee at any time, for any reason or none at all, there’s an all-too-real possibility that the employer will just fire the worker immediately. (I’m not saying this would be a smart thing for the employer to do. And I’m not saying the likelihood is high. But it does exist, and it’s too much risk for the employee to take.)

Telling your employer that you’re looking for a new job can get you canned, posthaste. Having your employer find out from some third party that you’re looking for a new job can also get you canned. You know what’s the one thing that would be even worse than getting fired for being on the job market before you can find a new job?

Read the rest of this entry »

Originally published at Coyote Tracks. You can comment here or there.

kai_mactane: (Default)

When a company says “we can’t afford a QA department”, what they’re really saying is, “we accept that our software will be infested with bugs, and quality is not important to us.” When they compound this basic error by saying, “the developers will just have to do their own QA”, they prove that they have no respect for developers or QA people, and you shouldn’t work for such a company in either capacity.

(Of course, a company like that isn’t about to hire any QA testers, so you folks haven’t got the option of working for them. And I’m not a QA tester, I’m a developer. So the rest of my advice is pretty much aimed at fellow devs — but that doesn’t mean I don’t respect you QA folks. Seriously, y’all deserve a lot more respect than you get, and I love it when you make my life easier by finding my bugs for me.)

The skills, talents, and basic mindset that make a good developer are entirely different from the ones that make a good QA person. Asking one to do the other’s job is a mistake as fundamental as expecting graphic designers and accountants to swap places. Let me explain:

Developers hate repetition. We hate having to repeat anything more than once or twice; that’s why some of us become developers in the first place: because we can write programs that automate repetitive drudgery, and hence banish it from our lives.

Read the rest of this entry »

Originally published at Coyote Tracks. You can comment here or there.

kai_mactane: (Default)

Apparently tomorrow will be the “National Day of Unplugging”, when people who are ready to “take the unplug challenge” will obey the call to “put down your cell phone, sign out of email, stop your Facebook and Twitter updates”. But this isn’t just some kind of stunt or willpower exercise; there’s a point to it. Unplugging is supposed to help people “reclaim time, slow down their lives and reconnect with friends, family, the community and themselves.”

Uh, what?

Let me get this straight: Not posting any updates on Facebook, and not checking my friends and family’s Facebook updates, is supposed to help me connect with them? Turning off my cell phone, and refusing to send or check my email is supposed to bring me more into connection with other people?

What in the world do this event’s organizers think the rest of us are doing with Facebook, with email, and with cell phones?

The organizers are a group called the Sabbath Manifesto, and they espouse ten principles. The first two are “avoid technology” and “connect with loved ones”, respectively.

How the hell am I supposed to connect with my loved ones without using technology? Fewer than 10% of my friends, and absolutely none of my family, live within walking distance of me. (And I’m a fast and powerful distance-walker.) If I drive down the Peninsula, or take CalTrain to go see a friend, that’s using technology. If I quit using technology, I’d have to give up at least 90% of my social circle.

Read the rest of this entry »

Originally published at Coyote Tracks. You can comment here or there.

kai_mactane: (Default)

Why I’m In Favor of WikiLeaks’ Professed Ideals and Aims

I am not a fan of government secrecy. Maybe some things should be kept secret, but by and large? Our government has overused that excuse to the point of absurdity. We can no longer trust the government to keep its citizens informed about what it’s doing.

Since the run-up to the Iraq War, it’s been pretty obvious that we can no longer trust the news media to keep us informed, either. At that point, journalism utterly failed in its civic duty to question the government and inform the populace about critical issues. Someone needs to step into that gap.

Why I’m Not Pro-WikiLeaks

Some of the information they leaked includes data that identifies people in the field. This puts real people at real risk — people who are trying to do good. This is not responsible reporting.

For all the reasons that it was bad when the Bush Administration blew Valerie Plame’s cover, it’s also bad now that WikiLeaks has blown the cover of various sources in the field. I can’t support that.

Why I’m Very Much Anti-Anti-WikiLeaks

For all the danger that WikiLeaks’ cover-blowing has caused, I feel much more threatened by the attempts to censor the Internet and shut down discussion. The idea that Senator Joe Lieberman can ask ask Amazon to pull the plug on any organization’s Web presence and have it done in under a day is absolutely chilling.

Now, upstream providers are denying service to WikiLeaks mirrors as well. There’s a concerted effort to turn WikiLeaks into the Internet equivalent of an unperson. And “unpersoning” people is not the action of a free society. It’s the way a totalitarian regime operates, not the way I want my democracy to behave.

I’m disgusted with the number of financial institutions that will happily process donations to the Ku Klux Klan, but not to WikiLeaks. It’s been pointed out with some accuracy that it’s now easier to send donations to al-Qaeda than to WikiLeaks.

This says something about who and what it is we really oppose. And I don’t like what it says. We need to stand for freedom, for an informed citizenry, and for justice.

(In that vein, AlterNet’s list of Six Companies That Haven’t Wussed Out of Working With WikiLeaks is somewhat encouraging.)

Regarding DDoSes as A Form of Protest

I agree with the EFF’s statement that it “doesn’t condone cyber-vigilantism, be it against MasterCard or WikiLeaks. The answer to bad speech is more speech.”

Regarding the Pentagon Papers Parallel

The argument that this is in any way different from Daniel Ellsberg’s leak of the Pentagon Papers is ridiculous. The two are very similar. If you ever wonder how you would have stood during that incident (”sure, it’s easy to see in hindsight what was right… but would I have done the right thing back then?”)… take a look at your reaction to WikiLeaks. The two parallel each other pretty well.

To the journalists who are calling for Assange’s prosecution: Are you mad at him because he’s doing the job you should have been doing? Are you so full of spite that you’d advocate to eviscerate the First Amendment that protects your own profession? Oh, right — many of you weren’t really making use of the First Amendment’s protection anyway, since you’re not rocking the boat. That’s why Assange had to rock it instead.

Regarding Rape Allegations Against Julian Assange

There has been a lot of disinformation about this. The pro-WikiLeaks side have been claiming some things that are completely untrue. The only reason I can think of to spread such disinformation is that they don’t want anyone to know the real allegations. That doesn’t make them sound like they’re very confident in Assange’s innocence, by the way.

The charges against Julian Assange include allegations that he tore a woman’s clothing off, that he had sex with a woman without her permission while she was asleep, and that he held a woman down by her arms and pinned her with his body weight.

These are real charges of real rape activity, and the things you may have heard about “a condom broke”, or some bizarre thing called “sex by surprise” are all 100% fiction.

Furthermore, the pro-WikiLeaks side’s false claims haven’t just been about the charges against Assange, but also about the women who brought the charges. For example, there’s a claim that one of them is “a feminist” — as if wanting equal rights should be used as an excuse to deny her justice? There’s the claim that she wrote some kind of “article about how to get even with men”, which is also completely false: she translated a preexisting English eHow.com article on revenge in general, not “against men”. Then there are the claims that either or both of the women are in the pay of the CIA — claims that have not a shred of evidence to back them up.

Assange’s supporters have gone beyond simply smearing these women, and have posted their names, addresses, and other identifying information. In many cases, people claiming to support Julian Assange have threatened to rape his accusers. Then they’ve gone ahead and harassed and bullied other women who had the temerity to point out that the “it was just a broken condom” claim was a lie. And of course, that harassment includes death threats — threatening to kill people merely for trying to speak out publicly.

This behavior is completely unacceptable. It’s inhuman. It’s disgusting.

I am in favor of the free flow of information. But I’m also in favor of taking rape charges seriously. And I’m in favor of whistleblowers, accusers, and those why cry “An injustice has been done!” being able to get a fair hearing without being subjected to death threats. That applies to the Swedish women’s accusations against Assange just as much as it does to WikiLeaks’ revelations about the actions of world governments.

Originally published at Coyote Tracks. You can comment here or there.

kai_mactane: (Default)

Once upon a time, Netscape invented the <blink> tag. And people saw the <blink> tag, and put it on their web pages, and thought it was good. And the rest of us saw the <blink> tags on those pages, and screamed, “No, you morons, it is bad! It distracteth the user mightily, for lo, our eyes are built to take especial note of motion and changes in light, for they might signal the approach of predators.”

And so, in the fullness of time, most people learned to never, ever use the <blink> tag. And that was good, for a while. But more recently, people have started putting new — and even worse — moving doo-dads on their sites: Animated Twitter feeds.

I’m talking about the kind of feeds that refresh or scroll every five seconds (or sometimes more frequently). You can see them all across the web. Here are just a few examples:

  • Any comments page on Whedonesque (Joss Whedon’s site). Try to read the text, and your gaze gets pulled over to the constantly-updating “Twitteresque” box on the right.
  • Any article on WikiHow. You have to scroll down one screen before the “Recent Changes” box becomes visible on the right — but that just means the problem isn’t apparent to a cursory, design-level glance; it only becomes obvious when you try to actually use the site for its intended purpose, by reading the content that’s published on it.
  • Even Webmonkey has gotten in on the action. Again, you need to scroll down a screen (unless your browser is way taller than mine), but the “Recent Articles” box will try to grab your attention as soon as you read past the screenshot in the main article text.
  • Like Webmonkey, you’d think TechCrunch would know better than to do this. Admittedly, they do put their “PostUp Beta World’s Best Tweeters” box further down the page, but their articles are longer, too.

Why would someone put something on their web page that effectively says, “Hey, don’t waste your time reading my content! Go look at my Twitter feed instead! Or even at some total stranger’s Twitter feed!” I’m honestly mystified. (That’s why my own Twitter-feed widget, Hummingbird, does not and never will have any kind of auto-scroll feature.)

But what mystifies me even more is: Why would people who (I presume) would sneer in disgust at the very idea of putting a <blink> tag on one of their pages — even for just one or two words — then turn around and put a much larger, more annoying motion distraction on every page in their site?

The fact that it uses AJAX and a Web 2.0, RESTful API doesn’t make a paragraph-sized chunk of never-ending motion any less of a design and usability nightmare. And this is not exactly a new concept: the W3C advised against constant motion back in 1999.

At that, they were Johnny-come-latelies compared to Jakob Nielsen, who called out “constantly running animations” as far back as 1996. In other words: The days of Netscape Navigator version 2.0x called. They have some usability advice for you… that you apparently still haven’t learned yet.

It can’t be that hard to figure out… can it?

Originally published at Coyote Tracks. You can comment here or there.

kai_mactane: (Default)
First, a note about pingbacks: Pingbacks simply let you know when another LJ user posts an entry (on LJ) that links to one of yours. It does this by adding a screened comment to your entry, which also means you get your usual comment notification. If you take no action, nobody else sees a thing. (You could unscreen the comment, if you want.)

I have no problem with this.

Then there's that Facebook crosspost feature. That's a little more dodgy. Just to make clear what it does and doesn't do (based on Livejournal's FAQ entry called "How do I update my Facebook or Twitter when I post to LiveJournal?"):
  • If you set it to crosspost your own entries by default (or automatically), it will do just that — but only for public entries. As I understand it, it will not send your friends-locked posts to other services.
  • If you set it to crosspost your comments by default (or automatically), it will crosspost every comment you write... even if that comment is on someone else's journal. Even if that comment is on someone else's friends-locked post.

Note that I'm taking Livejournal's word on this, perforce, because I deleted my Facebook account a few months ago. (Yes, because of privacy concerns. Funny, that.)

A public comment on the announcement about this sums up the problem pretty well: “Say, for example, you complain about your manager at work under f-lock. Someone can then reply with, "Man, your manager sounds like a bitch", and crosspost that to their Facebook. The possibility for badness is epic.” (I see no problem in linking to or quoting a public post. The main substance of the objections to this is that it tends to publicize information that was intended to be friends-locked.)

Some people have pointed out that a person who can see one of your protected entries can always copy-paste the whole thing. True enough, and that's not even really a technological problem; it's a social problem. If you tell a friend a secret verbally, they can always violate your confidence and spread the "secret" far and wide. No technology can guard against people deliberately breaking trust with you.

However, this setting would automatically and habitually publish one's comments to Facebook, without the person having to take any deliberate action. This makes it very easy to forget about. And totally aside from the way people can leak information by posting things that make it obvious what they're responding to, there are also the people who sometimes quote part of the post they're responding to.

In general, this is a good thing. Heck, I do it myself whenever I feel it's warranted. But until now, we've all done so with the knowledge and understanding that what we copied and quoted was staying on the same page, with the same read permissions.

That's no longer true. Now, if Joe or Jane responds to someone's friends-locked post, their comment can be automatically crossposted to Facebook without my even thinking about it, based on a checkbox they ticked at some point in the past.

Or, more apropos to my life: If I write a locked post, and my friend Stan writes a response that quotes some of my text (because it's the sensible thing to do in that context), Stan can accidentally export my words out to a service that I've deliberately severed all ties with. Even if he'd never consciously, deliberately do so.

That's what bugs so many people about this. That what bugs me about it, too.

My policy has always been that if I post something publicly, with no friends-lock, that means it's intended to be public. Link to it freely, no permission needed. I see no reason to change that policy, and you'll note that I've made this post public.

But to my friends who comment on my journal: Please, don't crosspost my locked stuff to other services. And don't crosspost text that makes it obvious what I must have written, either. I locked it for a reason.
kai_mactane: (Default)

One of the biggest problems with Flash isn’t Flash itself. It’s Flash designers. More particularly, it’s Flash designers’ basic failure to understand why certain UI elements are the way they are. This leads to one of the most common Flash designer diseases: The drive to reinvent basic UI elements. Poorly.

Page Transitions

When a user clicks a link, they’re sending a specific message with a specific intent. That intent is “show me the information I’m interested in”. It’s not “show me a nifty animation effect that takes another 5 seconds out of my busy schedule”.

Users (rightly) consider page transitions to be the space in between what they’re actually interested in. Don’t force them to pay even more attention to them.

Reinventing Scroll Bars

This error is so common, and people screw it up so badly, that I’ve already written an entire post about it. However, I’d be remiss in not listing it here, as well.

Auto-Playing Sound

Speaking of things I’ve written about before… people have been complaining about auto-playing sound since Netscape Navigator first gave us the ability to include such an abomination, way back around 1994. Eleven years later, I listed auto-playing music as a “no-brainer”, in the sense that excluding it from your site should be a no-brainer decision.

Some people will apparently never learn.

Assuming Everyone Has Enormous Bandwidth

Yes, broadband is much more common in the United States now than it used to be. That means that people are less ready to wait a long time for your page to load, not more. And a designer, developer, or other professional who understands how HTML, CSS, and JavaScript work can arrange things so that at least part of the page (or AJAXified web app, or whatever) is usable when only part of the code has arrived at the user’s browser.

If it’s possible to provide the user with something more useful than a “Loading…” indicator before all the code has arrived, then why do Flash developers never actually do so? (This is a real, not rhetorical, questions, and an open invitation for Flash designers and developers to answer it.)

Here’s Why So Many People Disparage Flash “Designers”

For a trifecta of awfulness, check out the site for Alembic, a bar in San Francisco. On my fiber-optic, 6 Mbit connection, it takes nearly 10 seconds just for the site’s intro to load. Then, once the little rocks glass is full of liquor, the page blasts some sound at me — sound that doesn’t even convey any information. (Believe it or not, I already know what a crowded bar sounds like.)

Then there are the slow transitions from sub-page to sub-page. All told, it took me a ridiculous amount of time just to find out what their hours were. But for a true dose of awfulness, try clicking on “Menus”. Then try clicking on one of the other main menu items. The site’s “background” doesn’t even realize that there’s still a “window” open in front of it… even though both the “background” and the “popup” are just visual elements of the same Flash object!

The real kicker comes when you try clicking on one of the menu pages. Rolling over zooms them a bit, but clicking? Launches a PDF document! A separate one for each page! That zoom effect was apparently just a red herring, and trying to get the place’s full menu would require seven separate PDF downloads.

I suppose they could, somehow, have disrespected their users a little more. At least the page doesn’t literally throw a drink in the user’s face. Just figuratively.

Please, if you’re designing your sites in Flash, don’t make them like this. Don’t be the web equivalent of “that guy”.

Originally published at Coyote Tracks. You can comment here or there.

kai_mactane: (Default)

Here are a few things that I consider to be basic requirements for functionality in a smartphone, along with notes on how my Palm Prē fails to deliver:

When I press the power switch, the phone should turn on.
(Assuming the battery is charged, of course. And I’m willing to accept that a modern smartphone needs to be charged every night. No problem there.) But given that, when I press the “on” switch, I should see the screen light up within, say, one second. It should not take ten seconds. By the time ten seconds go by, I’ll assume that I must not have pressed the power switch hard enough, and I’ll try pressing it a second time.

Did you know that the Palm Prē stores power-switch presses in its input buffer? That means that when the phone finally does get around to waking up, it processes the first impulse, lights up the screen… and then immediately blanks it again as it processes the second impulse. This is extremely frustrating.
When the screen lights up and shows me an “unlock” icon, it should actually let me unlock the unit.
I’m not complaining about the fact that it shows me that icon. I recognize that it’s there to conserve my battery life by making me prove that I’m a human being, and not an inanimate object that jostled the phone in a crowded purse or backpack. I’m fine with that.

What I’m not fine with is having to try three-to-five times to get the icon to recognize my input. And it’s not like the Prē stores this stimulus in its input buffer, so if I just wait for it to catch up… it blanks out the screen and I have to try again.

Read the rest of this entry »

Originally published at Coyote Tracks. You can comment here or there.

kai_mactane: (Default)

I went to find a package to install Git. The page at http://www.slackware.com/packages/ still says that the Slackware Package Browser has been moved to http://packages.slackware.it/ — it’s said this for years, and I keep wondering when they’re going to move the package browser back onto the main Slackware site.

But this time, when I followed that link, I found a page that’s so short, I can reproduce it in its entirety here:

The Slackware Package Browser

The old package browser was broken — instead of trying to fix it I am creating a new one from scratch. I’ll be using the Django framework. I’m also looking into Solr and Haystack to see if they can be of some use here.

It’s not going to take a lot of time and I will publish the working portions of the Package Browser as I finish and test them. Also, we’ll have some other thing to announce in a few days, so stay tuned ;-)

You should follow us on Twitter here.

The cherry on top of this sundae of fail awaits at the Twitter feed: the last tweet in it is from October 23rd, 2009. As of the time I’m writing this, that’s four months ago.

The one saving grace is that that last tweet includes a link to a web-browsable repository where I was able to download the package I needed. And yes, I do realize that Slackware’s essentially a volunteer project in Patrick Volkerding’s spare time. And I really do appreciate and love the distro’s commitment to remaining Unix-like.

But I need something that’s a little more rigorously maintained.

(Now I need to figure out what to migrate to. That’s likely to be quite a headache.)

Originally published at Coyote Tracks. You can comment here or there.

kai_mactane: (Default)

If you haven’t been getting as much email as usual this past week, the culprit may be SpamAssassin. It turns out that SpamAssassin 3.2.5 (the current version, released in June of 2008) has a Year 2010 Bug.

The problem lies in the core configuration file 72_active.cf, which contains a wide variety of “currently active” rules. On line 543, it says:

header FH_DATE_PAST_20XX Date =~ /20[1-9][0-9]/ [if-unset: 2006]

For those who don’t read regular expressions, this rule will match any Date: header that contains a string like 201x, 202x, 203x, etc., where “x” could be replaced by any digit. So, back in 2008, this rule would catch email that claimed to hail from the year 2010 or later. (Well, up to 2099.)

Starting on the morning of last Friday, this rule started triggering on pretty much all mail that hadn’t been delayed, thus adding 3.384 points to every piece of incoming email. Naturally, this could easily push mail over the threshold from “not spam” into “spam” when it doesn’t belong there.

If you’ve been expecting some mail that hasn’t arrived, and your mail host uses SpamAssassin, you might want to check your spam folder.

According to a note on the SpamAssassin project’s main page, you can easily correct this problem in either of two ways:

  1. If your system is configured to use sa-update, run it now.
  2. Remove the FH_DATE_PAST_20XX rule altogether by putting “score FH_DATE_PAST_20XX 0″ at the end of your local.cf file.

Alternatively, if you’re the mail administrator, and you don’t mind setting up a Year 2020 Bug for yourself, you could always change the part that says Date =~ /20[1-9][0-9]/ so that it says Date =~ /20[2-9][0-9]/ instead. After all, stuff that claims to be from years in the future (or past) is likely to be something you don’t feel like reading. But if you do this, I strongly urge you to find some way to send yourself an alert around December of 2019, warning yourself that you need to fix that problem. (And that may be easier said than done.)

Originally published at Coyote Tracks. You can comment here or there.

kai_mactane: (Default)

The following is a copy of what I just posted on the Palm Prē forums:

I woke up this morning to find that the webOS 1.2 upgrade had been pushed to my Prē automatically. I was happy, until the reboot finished and I saw:

Signed Out

You are no longer signed in to your Palm Profile on this phone.

If you plan to use this phone again, you can leave the files on your USB drive intact.

If you’re done using this phone, you can erase all your data on the phone and return to its factory default.

[Just Restart]
[Erase All Data]

The [things in brackets] represent buttons.

Read the rest of this entry »

Originally published at Coyote Tracks. You can comment here or there.

kai_mactane: (Default)

So, Palm was recently caught spying on its users. Major kudos, by the way, to Joey Hess, who initially broke this story. For those who haven’t kept up, various other news outlets and blogs have also been reporting on it.

Palm’s response to this problem is a single paragraph of corporate PR-speak:

Palm takes privacy very seriously, and offers users ways to turn data collecting services on and off. Our privacy policy is like many policies in the industry and includes very detailed language about potential scenarios in which we might use a customer’s information, all toward a goal of offering a great user experience. For instance, when location based services are used, we collect their information to give them relevant local results in Google Maps. We appreciate the trust that users give us with their information, and have no intention to violate that trust.

The problems with this statement are:

  1. There is no indication of how to turn off this particular piece of data collection. Not on Palm’s web site, not in the user manual that came with the Prē, and not in the Prē’s user interface.
  2. For all the “detailed language” in Palm’s privacy policy, there is no slightest indication — anywhere — that they collect information about what applications the user runs.

It’s particularly interesting to look at the “On-Device Services” part of the privacy policy: It mentions types of data that will be collected “If you use services we provide” (emphasis added). For example, they say, “When you use a remote diagnostics or software update service, we will collect information related to your device (including serial number, diagnostic information, crash logs, or application configurations)”. This is the only mention of collection data about a user’s applications, and it clearly starts with “when you use a diagnostic service”.

It doesn’t say “once per day, no matter what”.

Other items under “On-Device Services” start with “When you use a back-up and restore service…” and “When you use location based services”.

All of this suggests that users have some sort of control over what gets sent and when. The Palm Prē’s “Location Services” preferences item has a control labeled “Background Data Collection”, with the caption: “Allows Google to automatically collect anonymous location data to improve the quality of location services.” (This is after other controls labeled “Auto Locate”, “Use GPS”, as shown at right. If you turn on Auto Locate, you also get a control labeled “Geotag Photos”.)

It doesn’t say that Google (or anyone else) will collect data on what apps a user is running. And it strongly implies that this data will only be collected when I actually run an app that uses location services — for example, Google Maps, or OpenTable (which wants to know where I am so it can try to find nearby restaurants).

And it blatantly claims that if I turn off that switch, it won’t send my data off to big corporations any more.

So far, I’ve verified a few things:

  1. The application data log includes installs, uninstalls, and launch and close times for all apps, not just Palm’s official ones. Homebrew and third-party apps are included.
  2. Flipping the Background Data Collection switch does not turn off the contextupload process that’s responsible for sending the information to Palm’s servers.
  3. Nor does it stop logging application launch and close times. I’ll repeat that: My Prē is still logging application launch and close times into /var/context/contextfile, even though I have Background Data Collection turned off.

We in the technology business have a technical term for what Palm is doing when it claims that it “offers users ways to turn data collecting services on and off” in the context of this particular data. That term is: lying. Palm is lying to us, pure and simple.

Originally published at Coyote Tracks. You can comment here or there.

kai_mactane: (Default)

Note, Added A Few Days Later: This post does not tell the whole story. This is a wail of anguish, and is not intended to be balanced. For a more balanced look at the Palm Prē, read my later, and broader, evaluation of it as well as this post.

There are a lot of good things about the Prē, but right now, they’re almost all being overshadowed by the catastrophic mistake the webOS developers made with the Memo Pad and Task List. They appear to have been swayed by the general Google-based philosophy that “If you’ve got really good search, you don’t need any internal structure or divisions.”

This idea is completely wrong.

Not allowing me to divide things into categories and subcategories is a painful thing. The excuse that “you can find anything you want, just by searching”, misses the point that I don’t always want to search at all — sometimes I want to browse.

Sometimes, I don’t want to select a single item. Instead, I want to see which items are available. Dividing things into categories is also an exploration of the ways that things are connected to one another. Allowing access only by searching demolishes those interconnections.

The only thing that’s more wrong than denying the user the ability to sort things into categories from the beginning, as Gmail does, is to take away the categories a user has already set up. And that’s what the Memo Pad and Task List in webOS did with my imported data from PalmOS.

I used to have 237 memos, sorted into 11 different categories that relate to various hobbies and interests, projects I’m working on, my girlfriend, and so on. And within each category, memos were automatically sorted alphabetically by title. And I had 50 To-Do items arranged in 11 other categories, these ranging from locations (i.e., “things that can only be done at home”) to types of shopping trip (e.g., “things to pick up at the supermarket” vs. “things to pick up at Fry’s”).

These internal divisions are now completely gone. My 237 memos are now arranged in the order they were created in, which is absolutely useless to me. I can, apparently, assign each memo one of four colors, and I can drag them to reorder them, but I’d still be stuck trying to deal with a list of 237 items, where previously no category had more than about 2 dozen. This is the difference between a manageable list, and one that is completely unmanageable.

(As you might guess, I also had a bunch of categories in my Date Book — only 10, as it turns out. But categories aren’t quite as indispensable there, because a calendar app has a natural way of organizing data that’s more primary. Months and weeks even subdivide time for you automatically. So while I sorely miss the categories in my Date Book, their lack isn’t a complete, crippling, deal-breaker.)

To add to the difficulty of a 237-item list, webOS doesn’t seem to have scrollbars. The content will scroll just fine, but there’s nothing to indicate where you are in the list. Are you right at the top? Halfway through? There is no way to know. There is also no way to go quickly or easily from one end to the other; you have to laboriously traverse all the territory in between.

Confronted with such a nightmare, my first thought is, “What if I just throw away all my old memos and start fresh?” Admittedly, there is some cruft in there. (In fact, I do occasionally archive stale memos to my computer’s hard drive and then delete them. It could be worse; it’s not like I’ve kept everything.)

The mere fact that I’m considering nuking all my old data, just because the new system can’t handle it, is a tragedy of poor software design and backward incompatibility. But honestly, even that wouldn’t really help:

The very nature of the new memo pad means that it cannot handle very many memos before it becomes unwieldy. With no scroll bar and no way to filter the view, the user is forced to confront all of the information that’s present, instead of having any way of interacting with a reasonable subset of it.

Once there are more than, say, three or four dozen memos in the new memo-pad system, it will be unusable again.

And this means I’m going to have to find a new way to organize my stuff. My notes. My thoughts. My ways of remembering stuff when I’m on the go.

Maybe Palm will eventually put categories back in. I dearly hope so, because their lack is a calamity for me. But by the time they do such a thing, I’ll probably have found some completely new way to keep myself organized.

I am very upset right now. And this has all just been about one particular problem; it’s not like the Prē doesn’t have some other flaws. (The lack of a D-pad is pretty annoying.)

It has some nice features, and I really ought to write about them at some point, just for balance. But right now, confronting the complete breakdown of my organizational system, it’s hard for me to see any of the good stuff that lies beyond.

Edited to Add: It seems the To-Do List or Task List app actually does have a feature that effectively allows a single-level category grouping. It’s just somewhat easy to overlook at first. The Calendar will color-code items based on their source — for example, all items derived from Google Calendar might be blue, while ones from MS Exchange might be red. I think this is silly; I’d rather have, for example, parties in red, work tasks in blue, social appointments in green, and what-have-you.

Right now, all my items are green, indicating that they all came from the same source. I really hope later ones don’t pick up some other color; I’d rather have no categorization than color-coding that doesn’t match my thoughts and that I can’t turn off.

Originally published at Coyote Tracks. You can comment here or there.

kai_mactane: (Default)

I found an interesting UI problem today, on a site that I will be kind enough not to actually link to. Instead, I’ll just reproduce the general concept and problem here:

The links all just link straight to the nav bar itself, so if you scroll your browser view so that the list isn’t right at the top, you’ll be able to tell when you’ve clicked one of the links. See what happens?

You roll over one of the list items, and you get an immediate visual reaction: not only does the background change color, but the mouse cursor even becomes a pointer. It’s not just suggesting that your cursor is over a clickable item; it’s flat-out asserting that to be the case.

And it’s lying.

The clickable area is nothing but the text in the very center of the nav bar item, and the only feedback you’ll get when you hover over that is the destination URL appearing in your browser’s status bar — if you have that turned on; many browsers leave the status bar off by default.

I’m fairly sure the people at Anonycorp didn’t mean to do this. I think it was just an ill-considered (and poorly QA-ed!) mistake in choosing which CSS rules to apply on which elements. But it’s a horrible, cruel UI trick to play on your visitors and users. Don’t do this.

Originally published at Coyote Tracks. You can comment here or there.


kai_mactane: (Default)

July 2011

101112 13141516


RSS Atom

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 21st, 2017 06:36 am
Powered by Dreamwidth Studios