flak rss random

sad tale of Lenovo

The new Apple Macbook Pro released today reminded me I want a new Thinkpad. Unfortunately, Lenovo seems determined to convince me I’d rather have a Mac. I currently own and use two Thinkpads, a big T60 and a tiny X200s. I’d consider replacing either one or getting something in between. My first concern is that the Thinkpad’s legendary reliability is slowly becoming the stuff of legend not reality. And there’s nothing either with a nice 1400x1050 screen or as lightweight. But I’ll probably get by, even with the new keyboard.

more...

Posted 11 Jun 2012 23:42 by tedu Updated: 09 Mar 2013 18:19
Tagged: computers rants

rthreads lookback

With the conclusion of the rthreads hackathon a short while ago, the OpenBSD Journal ran a series of interviews with some of the participants. I figured I’d add a little more to the story, although there’s not really anything new to say. My involvement with rthreads has been pretty minimal recently, but I’ll start from the beginning. Like I said, nothing new, but sometimes it’s nice to have the whole narrative in one piece.

more...

Posted 06 Jun 2012 21:47 by tedu Updated: 26 Dec 2014 04:47
Tagged: openbsd programming software

timezones

Timezone support in software is tricky. A lot of the time when you’re sharing information, there are several timezones involved. But it would horribly clutter the UI to display all of them, so one is picked. For instance, with email should we display the time formatted according to the local timezone or sender’s timezone? Do we care when we received it or when they sent it? For Mailtanium, I chose to display all local times in list view, so emails sort in some semblance of visual order, but to display in the native sender timezone in detail view, to remind me it’s really 3:00am in Europe. I don’t think this is an original idea, I copied it from any number of other clients.

A more perplexing case is the iPhone calendar. The calendar is unfortunately timezone aware when I don’t want it to be. My typical (practically only) use case is to enter my flight info in the calendar. I would like to enter the local time my flight leaves, as that’s the time I get from the airline website. But then my phone assumes that’s when the event occurs in my current timezone, such that when I’m two hours away, it has now “corrected” the time to be two hours different. There is a menagerie of options controlling whether my phone’s time should auto update (Yes, please! I need to know when lunch is.) and how the calender should adjust. The best I’ve found so far is to keep the calendar always pegged to a single timezone, but this means alerts go off at the wrong time because the phone still knows where it is. I would really like a simple option to say that all events take place in the “right here” timezone. I can understand that timezone correction is a nice feature for travelers who need reminders about the weekly sales call on Monday, but that’s not me. All of my events are occurring locally, I want to enter exclusively local times.

Posted 24 May 2012 03:34 by tedu Updated: 01 Sep 2012 22:29
Tagged: software thoughts

okcupid questions

I’ve been trying out OKCupid recently, and while entire essays, if not books, could be written about the experience, the questions it asks, and the way it asks them, is an issue for me. It’s not that the questions are weird or repetitive, or seem bizarrely unlikely to result in reliable rankings, all of which is true, but that the manner in which the questions is phrased is technically poor.

First thing to review is how OKCupid asks questions. There’s a bunch of questions, you pick one answer for you, then pick as many answers as you like that are acceptable for a potential match to give. My first issue is simply with the phrasing. Many questions ask if I would “consider” doing something. There seems to be a wide range of interpretations of what consider means.

The next issue is that many questions are too indirect, like “Would you date a smoker?” I don’t smoke, but I may say yes. But another non-smoker may only put no as the acceptable answer, rejecting me even though I don’t smoke. The direct version, “Do you smoke?”, seems like a major improvement. Lots of questions are like this. They seem designed to determine not just how intolerant I am, but how intolerant my match must be. The fact that people who are 100% compatible but differ only in their tolerance for incompatibilities could be rejected seems like a flaw to me, but maybe that’s the magic to a good matching algorithm.

Another drawback of some questions is the frequent necessity to invert the question when picking acceptable answers. A question about height that can be answered “I like to be taller” or “I like to be shorter” is a good example. The acceptable answer should be the opposite of the picked answer. In fact, there shouldn’t be a need to identify acceptable answers for such questions. People don’t seem to do a good job with the logic here. Arguably, I shouldn’t be concerned because I’m not much interested in people who fail at logic, but it clearly reduces the efficiency of the matching system as a whole.

Posted 02 May 2012 20:08 by tedu Updated: 02 May 2012 20:08
Tagged: review

windows update suckery

I notice that the latest round of Windows Updates includes a Thinkpad Display 1400x1050 update. And there’s a link for details. But following the link tells me that Winqual has moved! Follow the new link and I’m redirected to a sign in form for the Windows Developer Center Dashboard. Seriously? I have to sign up as a developer to find out what a recently installed driver update does? That sounds like something an open source operating system would make me do!

Posted 29 Apr 2012 04:37 by tedu Updated: 23 Jan 2014 21:00
Tagged: bugs rants software windows

google logout lockout

Have I mentioned I hate how Google Accounts work? Today I noticed I was still logged in while looking at some movie showtimes. Clicked logout. The page goes blank, the browser follows a couple redirects, and I wind up back at the same page... Still logged in! Other people complain they’ve been locked out of their Google accounts, I’m locked in.

Posted 19 Apr 2012 16:40 by tedu Updated: 19 Apr 2012 16:40
Tagged: bugs rants

maitanium sync design

A critical feature for me was offline access. Not “I hope my IMAP client cached that email” offline access, but real “I can read any email, ever” offline access. The problem is that every client I’m familiar with that could do that basically worked locally. The price paid for offline access was single computer access. In theory, multiple desktops could fetch mail and process it, but the tags and filters would get out of sync. I don’t know anyone who has pulled this off. I needed to build a system where despite running independent clients against independent mail stores, the state of the universe would be kept roughly in sync.

more...

Posted 12 Apr 2012 03:45 by tedu Updated: 12 Apr 2012 03:45
Tagged: mailtanium

sinatra mime types

Sinatra (the ruby web app framework) has a handy method to indicate that the response is an attachment and should be saved: attachment filename. It even sets the content type correctly. Unless it can’t guess from the filename. Then it throws an unrecoverable error.

Discovered this little fact trying to download a .tgz file. The documentation says if I find a mime type Sinatra doesn’t understand, I’m supposed to run mime_type :tgz, 'application/octet-stream'. OK, great. So where’s the list of already known types? Never mind that, I’m really supposed to make up a list of every mime type I might want to download at some point and register them all up front? Insanity. In theory, I think rack is supposed to already be using a default of application/octet-stream, but it appears I’m just unlucky.

Posted 08 Apr 2012 02:40 by tedu Updated: 11 Apr 2013 21:34
Tagged: mailtanium rants software web

software reliability and utility

Following up on the previous post about software reliability, let’s consider the concept of utility functions. There’s a few definitions for utility function, but I’ll say it’s something along the lines of a function that maps the raw measure of something to its value to the user. A common example given for money is the natural log function, which explains why a dollar to a millionaire is worth less than a dollar to a poor person, even though the raw measure ($1) remains the same: log(11) - log(10) > log(1e6 + 1) - log(1e6). Law of diminishing returns.

more...

Posted 06 Apr 2012 23:45 by tedu Updated: 09 Mar 2013 18:19
Tagged: software thoughts

software reliability and kernels

OpenBSD 5.1 preorders are now up on the site. And minix 3.2 was also released recently. Here are some reflections on why microkernels don’t matter. I’m not saying microkernels are worse, or slow, or anything like that; they just aren’t that much better. There’s a somewhat long two part argument coming up. One part is that microkernel reliability is overstated, the second part is that the value of reliability is itself overrated.

more...

Posted 06 Apr 2012 23:43 by tedu Updated: 09 Mar 2013 18:34
Tagged: software thoughts