Decent browsers on mobile phones: Are we there yet?!

Brion Vibber summarises from OSCON on the future of browsers on mobile phones.

Some quick thoughts - capable smartphones are expensive (e.g. $350 to $1000), and the basic phones below that price point tend to be pretty limited and have small screens (but they’re cheap and fairly tough, so as an actual phone they work fine, but as an internet-enable communication device, they suck).

The good news that is that people turn over their phones relatively quickly (e.g. in Aus approx 11 million phones were sold for the last few years to a population base of 21 million, so average active phone lifespan presumably is around 1.9 years). So even if everyone bought only capable smartphones from this point onwards, it would take most of 2 years to get to sufficient market saturation that a phone with a capable browser could be assumed. But the fact is that people won’t all start buying smartphones (without a truly compelling reason to), and people who have smartphones won’t all sign up to mobile internet packages (it’s better in the US I think, but in Aus you usually have to pay extra for this, and you typically get an allowance of anything from 100 Mb to several gigs per month of bandwidth, and if you go over that you get slapped hard with extra usage charges - I’ve heard up to $1 per megabyte, but that’s so scary I hope it’s not true). So yeah, it puts people off. Realistically, probably 4 or more likely 5 years before this mess is sorted out and most people have a decent enough phone with a reasonable browser with mobile internet.

And for things like GPS, I say “BOO!” to only native apps being able to access that. GPS badly needs a standardised JavaScript interface, that can do stuff like say “do you have GPS?” and get a boolean answer, “do you have a signal?” and get a boolean answer, and then ask “what is the long + lat?” and get back an array of two decimal numbers. When this is native and works and runs without throwing errors in all browsers (both on phones and on desktops), then it’s going to be fricken awesome (e.g. walk around and have your phone display the Wikipedia article for the nearest landmark, walk around the city/go skiing and see where your mates are on a map on your phone and so be able to easily meet up with them for lunch/coffee, go to a new city and get a tour on your phone that knows where you are and tells you the most interesting tourist highlights that are closest to your location and that you haven’t visited yet, and so on and so forth). When it happens it’s going to be heaven-on-a-stick, but getting there feels like it could be painful and slow.

Pronunciation of Dutch names vs anglo-Australian naming

Gosh, Dutch names are hard to pronounce correctly. I just finished a business phone call to South Africa, and the person I was after had the surname of “Van Wyk”. My British/Australian upbringing tells me to pronounce that as “Van Wick”. So I did, and was met with complete and utter bafflement as to who I was after. On realising that I was a) not making a crank call b) calling from overseas c) after a person who did work there, the kindly secretary gave me a brief pronunciation lesson, and it’s pronounced “Van Veek”, as far as I could tell. The secretary also assured me that they probably couldn’t pronounce Australian names properly either… but I didn’t have to heart to tell them that actually no, they’d probably be fine, as anglo-Australians use surnames fairly sparingly, and often like to name people with very short words (example first names/nicknames: “Sharon”, “Kylie”, “Gazza”, “Mark”), and to name places in a relatively unimaginative fashion (e.g. Sydney has a harbour, so it’s called “Sydney Harbour”; there’s a bridge over that water, so it’s called the “Sydney Harbour Bridge”; there’s a tunnel under that water, so it’s called the “Sydney Harbour Tunnel”; the other side of the water is to the north, so it’s called the “North Shore”; the suburbs to the east/south/west of the city are called the eastern/southern/western suburbs; and so on and so forth). Personally, I quite like the shortness and simplicity of this style of naming, but as a consequence, I suspect it results in many Aussie names being comparatively easy to pronounce. Of course, Aboriginal place names are harder, but these generally use phonetic spelling.

Firefox T-shirt shipping madness

So the Mozilla store has released new T-shirts for Firefox 3. I don’t particular like the new T-shirt logo, and I thought the old logo was better. What’s really insane though is the cost of international shipping.

Cost of one Firefox T-shirt: US$17 = AUS$17.80

Cost of one Firefox T-shirt with delivery to Australia: US$110.64 = AUS$115.65

My guess on the total number of resulting Firefox T-shirts sales shipped to Australia at those prices: approximately zero.

NRMA feedback fail

It’s that time of year to renew my car registration, and buy the accompanying compulsory third-party insurance. So I tried the NRMA, and price-wise their quote was okay, but I wanted it mailed to me in the post so that I can pay it closer to when I actually need it. Trying to tell the NRMA this proved to be impossible:

… and then clicking the submit button gives this:

Feedback rejected

… forbidding all English punctuation - that’s a really nice touch! So I removed all commas, full stops, apostrophes, and question marks, leaving one continuous string of text, and clicked submit again. The result is this:

Wow, that’s impressively crap. Being that bad at listening to people’s feedback doesn’t just happen, it takes serious dedication and practise and commitment.

Response to “Where did all the PHP programmers go?”

Ok, I’ll bite in response to this “Where did all the PHP programmers go?” blog post:

What I cannot understand is why people with more than one Bachelor Degree in Computer Science recommend using bubble sort.

Sounds wrong but harmless, as you don’t write a sort implementation from scratch in PHP. You write the comparators used for the sort order, but the actual sort implementation is provided for you by language. I presume it uses qsort internally, but don’t know for sure. I have a degree in CS, and I can scarcely even recall the bubble sort algorithm (or even most of the sort algorithms for that matter), for the simple reason that it doesn’t matter in the real world (in 99% of cases) for web developers using scripting languages. That may sound (gasp) shocking, but it’s true - PHP is not a performance-orientated language, and it’s a fairly high-level language with a decent library of native functions, so you don’t generally write sort algorithms (rather you use the library ones that are provided for you, unless you have an overwhelmingly good reason not to).

The question you need to ask is: are you running a Computer Science class on sorting algorithms, or are you looking for people who know PHP and can get your thing built?

“What is the difference between the stack (also known as FILO) and the queue (also known as pipe, also known as FIFO)?”

Maybe rephrase the question to “you want to store multiple bits of information in a data structure or an array or a collection of some sort. How would you add data to the beginning of that data structure, and how would you remove data from the end?”

I.e. focus less on the Computer Science theory, and more on the application of it.

“Using PHP programming language, create a list to store information about people. For each person you’ll need to store name, age, and gender. Populate the list with three sample records. Then, print out an alphabetically sorted list of names of all males in that list. Bonus points for not using the database.”

Here’s a trivial implementation just using arrays, I don’t claim it’s remotely pretty or elegant, and I wrote just to see what’s involved in the above task:

<?php
error_reporting( E_STRICT | E_ALL );

function sort_by_name( $a, $b ) {
       if( $a['name'] === $b['name'] ) return 0;
       return $a['name'] > $b['name'];
}

function printMales( $array ) {
        foreach( $array as $person ) {
                if( $person['gender'] != 'male') continue;
                print "Name: " . $person['name'] . "\n";
        }
}

$people = array( array( 'name' => 'Bob'      , 'age' => 36, 'gender' => 'male'   ),
                 array( 'name' => 'Alice'    , 'age' => 23, 'gender' => 'female' ),
                 array( 'name' => 'Doug'     , 'age' => 63, 'gender' => 'male'   ),
                );

print "Before:\n";
print_r( $people );
usort( $people, 'sort_by_name' );
print "After:\n";
print_r( $people );
print "\n";
printMales( $people );

?>

But you know what? I had to look up the PHP manual for usort because I couldn’t recall off the top of my head whether it was “u_sort” or “usort”, and I couldn’t recall the parameters and their order. Also I had 3 trivial syntax errors that I fixed in 15 seconds. Now, I really hope for this pen-and-paper test that you are giving people access to the PHP manual, or if you are not that you are being very tolerant of minor syntactical errors or people who can’t recall whether the function name has an underscore, or who can’t recall the exact order of the parameters, and so forth. Because the question is: Is this a test of whether someone has memorized the entire PHP manual, or is this a test of whether people who can do what you want? Because when they are working, then you will give them access to the PHP manual - right?! If you want to distress people in the interview, then sure, treat it as a rote memory test of the PHP manual and Computer Science theory, and make it awkward if they get anything wrong - but if you’ve want to solve the problem of finding people then there has to be some leeway for recollection of technical trivia that you can find through Google in a few seconds.

Look, I’ve been in a similar situation of looking for PHP people to hire (the candidates were from China in this case), and the approach we used was to give them a test beforehand that they could do (in 24 hours of their own time), and then if they looked okay then they could get called in for an interview. This allowed culling people who were very bad, or who gave code that didn’t run - as there really is very little excuse for code that’s invalid or that doesn’t work if you’ve got 24 hours and access to the internet and your own computer. Most of the people weren’t great, some were very bad, and some were okay. If it helps, that PHP test is here, and it’s only intended to be a very simple test.

Sydney BarCamp 3, day 1 notes

My quick notes from the first day of Sydney BarCamp 3 - apologies if they are quite terse:

  • Making computing cool - Let’s make everything objects, and hide file systems and devices from applications, with an on object layer. Benefits in reducing all the glue everywhere when communicating data over the wire or between apps; Could also allow apps to be migrated from one machine to another; Could even have a login of standard apps that follows you everywhere via the cloud., including retained state from your last login, but without using something like Citrix.
  • Processing and the demo scene. Gave a background to the demos and the demoscene. Introduced processing, which is a Java-based tool, built by 2 guys who have been working on it for about 4 years. Artists are one of the target audiences. More info at http://processing.org.
  • Sydney free wireless project. Currently trying to work out what standard hardware to use for the city-wide mesh, now that there are concerns over Meraki becoming much less open and losing their way (who have introduced a more restrictive EULA and have made flashing the hardware much harder). Open mesh dashboard is an open fork from Meraki, but still need to sort out a reasonable cost for the hardware including shipping to Aus. Also want the mesh to interoperate with other meshes – e.g. want to be able to automatically connect this mesh and an OLPC mesh, if at all possible.
  • Spoke to someone using 3 mobile networking on their laptop - uses a PC card with HSDPA. Recommended it, $15 per month for 1 Gb, or $49 for 5 Gb, and the modem is ~$298, or free if you sign a 24 month contract. There is currently a price war going on between Vodafone, 3, etc. over mobile broadband, prices are improving.
  • Quotes: “The problem with Domain Specific Languages (DSLs) is that they are Domain Specific”. “The tipping point for data portability is the user expectation of having data-portability between web apps.”
  • Some lessons from a start-up biz:
  1. Advertising is useful. Measure it carefully.
  2. Tech roadmap is about PR - tells customers “what’s coming next” - you need one - not binding - “announce before you announce”.
  3. Take a punt on marketing. Hard work getting the word out about your product. You have 9 lives when marketing - one failure won’t kill you.
  4. Make mistakes properly. Failing is okay, but do it properly. Fail in spectacular fashion.
  5. Everything takes longer than you think. It’s true.
  6. Be unconventional.
  7. Q: What mistake cost the most time? A: Messing around with landing pages. Company wisdom is that you should make a lot of them and test to see what is most effective. Need a lot of volume to perform useful tests. A case of premature optimisation.
  8. Q: Do we need to talk a lot of lawyers and accountants at start-up? A: No, not when in the initial stages. However when you have worked out what your idea is, and have money coming in, then need to talk to both. But be aware of the risks.
  • grails - previously called “groovy on rails”. Person now working on getting http://memsavvy.com/ off the ground. Grails is based on Java. (Java, spring, hibernate and Apache app.) Grails currently has 63 plugins (one for adding search, one for web objects, etc.). Grails solves a technical problem. An out-of-the-box MVC system. Sky.com, using grails, serving 186m pages/month.
  • A business owner is 3 people: 1) Entrepreneur 2) Manager who keeps the biz afloat 3) Technician who built the product
  • “Start-up kitchen” is a start-up incubator. It provides a practical solution to continuous cash flows. Has an office in St Leonards. For start-up cash flows, you are hired in a part-time way (2 or 3 days a week) (work depends on the skill set that someone has; may be internal work; or external IT shop work for blue-chip clients), which gives you cash flow.
  • “Talking to rich guys”. (about what angel or VC people are looking for in a company). Investors want a biz capable of $100m of in 4 to 5 years. In the valley there are lots of VCs. In Australia, not so much - want to do late stage buyouts and make money charging fees to a company. There is plenty of money available; there are just not enough REAL businesses that can make good use of that money. As a rule, investors don’t like software, or web apps. To get in front of a dozen to 50 rich people, need to have a good story (need a business, a real business). Most Australian angel investors are retired or semi-retired engineers who love gadgets. For the first 100,000 units want to manufacture locally. “IM” is an information memorandum - like a prospectus, but a lower standard (because is not covered by regulations). Example: A company is looking for $1m. Angels want 35% ownership of the company, but will rarely get it. (Investment range of 200k to 500k is angels, and $1m + is small institutions). Watch out for fees - e.g. one guy wanted 250k in fees to raise 500k. Brains are the cheapest thing you can buy. E.g. “women on boards” who want a paid position on boards - e.g. 35k per annum, and for this they would have to go to 8 meetings per year, and are personally liable for the business if anything goes wrong. Women are much cheaper than blokes (there are institutionalised problems for women in business trying to get equal pay). Anything above this, pay cash-in-hand $100 per hour. To get money have to be able to give a good answer to “WIT FM?” for the investor - “What’s In It For Me?”
  • Good places to get stock photos for $1 or $2 a pop: istockphoto.com or luckyoliver.com
  • BarCamp Canberra is on in 2 weeks. (sat 19th April).
  • Sociability design. This is like usability design for applications - which is making the app as usable for your user as possible, so that it is pleasant and intuitive to use. Sociability design is making a socially useful system, such as social sites like LinkedIn, Facebook, and MySpace. There are parallels between usability – especially Jacob Nielsen’s 10 main types of usability – and the basics of how you make a pleasing social user experience. Table of comparisons. The speaker’s blog. The language used to describe relationships needs to be richer, whilst still being diplomatic.
  • Open coffee - a coffee meeting for people starting up. Runs every second Thursday.
  • Twitter – got a quick intro to this. 140 character microblogging / updates. Max of 240 free SMSes per week in Australia.
  • The bar opened, and I played 3 rounds of the Werewolves + Seekers + Healers + Villagers game (rules are here or here, we played with a healer), which was a fun social game. There were between 11 and 15 people at the start of each round. It just confirmed what I always known – that I am a really bad at deception - I was found out fairly quickly when I was a werewolf!

ABC video downloads seem quite low res

It’s great that I can legally download ABC shows that I missed directly from their website (e.g. Sunday’s first so-so episode of East of Everything). However the video resolution seems quite low, at 320 x 180. Can’t we at least get a download that’s bigger than a postage stamp? For comparison purposes, on a 4:3 CRT TV, a 45 minute XviD at 624 x 352 is completely watchable, and has a file size of 360 Mb (versus 188 Mb for the ABC video at 55 minutes long). So, for around twice the file size, it becomes significantly less blurry and more pleasant to watch, and therefore more useful. Isn’t it at least worth giving the option of the bigger download, for people that aren’t watching on a small screen portable device, like an iPod or mobile phone? Hopefully ABC playback (which is now in a by-invitation beta phase) will offer much higher resolutions. However, downloading an hour-long video is far preferable to watching it in a browser using flash, in my personal opinion - although I can see that the ABC might be concerned that this could cannibalise sales of DVDs through ABC stores.

I vote holiday!

Just back from a week’s holiday blissing-out in Tonga, on a postcard-perfect tropical island surrounded by coral.

Fortunately this meant I missed the end of the Australian Election (yay!), and got to vote early (highly recommended - much calmer and less fuss than doing it on polling day) so as to satisfy Australia’s compulsory voting requirement (and avoid the fine if you don’t vote).

Our flight to Tonga was delayed by 3 hours, as an 83-year-old on the plane’s inbound flight had died half way through the flight, so a number of ambulances and police cars pulled up at the gate when it arrived and the passengers were not able to leave until the paperwork had been processed. This meant we arrived in Tonga at about 1 AM, and got a boat to the island in the middle of the night, and arrived at about 2 AM.

Our fale (Tongan word for hut or house) was great; it used a traditional design largely open to the tropical air (good) and the mosquitoes (bad). Lots of space and privacy though. Map of Fafa island. There was no Internet, no phones in the room, no newspapers, no radio, no TV … love it! And the food was superb - there was fresh delicious seafood every day - especially lobster and fish - all locally caught daily from the surrounding ocean, and often cooked in coconut milk and served with rice. I gained about 2 kilos in a week!

I have to confess to being a total wuss when it comes to deep water and big sharks (I should never have watched Jaws, or Open Water). However, I deeply enjoy snorkeling coral reefs, and seeing smallish sharks in the wild. So when Rebecca saw a 1-metre Blacktip reef shark attacking a school of small fish a few metres out from the shoreline, I just had to go in and see if I could watch it up close. So put my mask and fins on, and swam out about five metres and stopped in the middle of the school of fish. The water was cloudy from all the sand stirred up in the water from the waves on the shore, so I spent about three minutes carefully looking to the left, looking to the right, looking straight ahead, before concluding that it wasn’t there any more, and swimming back in. I stood up and yelled “It’s not here any more - sorry, no shark!”… And then I noticed that Rebecca was wildly pointing and hopping up and down with frustration, and she told me that just after I had swam out, the shark had done a big circuit around me, and then had stopped dead in the water a few metres behind me with its dorsal fin sticking out of the water, and had just studied me for a few minutes as I was looking around, and had then swam off when I started turning around to swim in. And who says sharks don’t possess a sense of irony?

Then on the daytime flight back to Sydney, we had a great view of the North Minerva Reef. I forgot to take a photo: sorry! However, this reef looks fantastic, and also rather out-of-place. It’s roughly 500 kilometres of open Pacific Ocean away from the nearest land, surrounded by pure deep blue ocean, and then in the middle of the open ocean there’s this circular reef all by itself, with no land or islands anywhere to be seen. The quality of the diving and snorkeling must be amazing - with that much distance to the nearest land the visibility would be stunning, and there would be no pollution, and hopefully few enough visitors to keep it pristine. The pilot described it thus: “The Minerva Reefs are a great place for yachties to be when the weather is good. However, you really want to avoid it when the weather turns bad”. Sounds interesting - if I ever get a chance to go there, I think I’ll have to do it!

Mac ads, Spider-man 3, APEC annoyances

  • Most of the Mac ads are a bit so-so, with the counsellor and the confirm-or-deny one probably being the best. But they are just begging for a comic response like this.
  • Saw Spiderman 3 on Monday. Primary plot themes: forgiveness; wrestling with your internal demons; everyone has a choice; being self-absorbed; revenge; father-child relationship. I enjoyed it, but thought Spiderman 2 was a better film, with its central plot theme of balancing personal life versus the greater good. Oh, and Monday night is my new cinema night - we were 2 of only 8 people in a 420 seat theatre - love it!
  • As part of the APEC summit in September:
    • large parts of Sydney’s CBD will be sealed off (causing traffic gridlock)
    • the mobile phone coverage in the city may be partially jammed (apparently to stop people bombing George Bush via text message)
    • three inner-city train stations will be closed
    • the police have just been given extraordinary stop-and-search powers and the power to incarcerate “suspicious” people without charge until the conference is over (yet another strike against due-process)
    • and no doubt people protesting globalisation will be tempted to run amuck like lunatics smashing windows and burning things

    … Gee, I can hardly wait! Some local politicians have been heard to question why APEC even needs to be held in Sydney at all - couldn’t it be in Canberra instead? I’m inclined to agree; the whole reason Canberra even exists is because 100 years ago, Sydney and Melbourne squabbled like little children over which of them should be the nation’s capital - and the compromise solution was that nobody should be happy, and that a new artificial capital city should be build, at significant taxpayer expense, in the middle of nowhere, half-way between the two cities, thus pissing off everyone equally (seriously - you can’t make stuff like this up). Now, if there are any benefits to my tax dollars subsidising an artificial capital in the middle of nowhere, surely hosting conferences that nobody normal wants should be one of those benefits? If not, then I just have to ask: what the hell is the point of Canberra? … Thus far, the one and only redeeming factor to APEC is that Friday the 7th September has been declared a public holiday - Yay!

Email bug wastes 4 days

Jeez, I hate software sometimes. At the start of Wednesday morning last week, Outlook 2000 ate my email, and it took me until the end of Saturday afternoon (4 frustrating days) to recover most of it.

The bug:

  • Specifically, there is a data corruption bug: when you reach around 2 gigabytes of data, Outlook will corrupt its PST mail store file, so that it can no longer read it (which is what happened last Wednesday morning). There is a tool though for repairing corruption in that file, which is shipped with Outlook. However, it dies with a cryptic 8-digit error code when you try to repair one of these 2-gigabyte files. So, not only does Outlook reproducibly corrupt its data (thus making all email, notes, calendar items, to-do items, etc in that file inaccessible), there is simply no way to recover the data using the tools that the product ships with.
  • Microsoft are aware of the problem, and they have a “solution” of sorts: chop off the end of the file using a tool (thus losing any data contained in the removed portion), run the recovery tool again, and try to recover your data. They claim that you can just cut off 25 to 50 megabytes, but this is incorrect - and the reason it is incorrect is that the repair process significant increases the file size, which can easily cause the recovered file to exceed 2 gigabytes, thus causing the recovery tool to fail again. By a process of trial and error (and each attempt took around 3 hours of non-stop hard-disk thrashing to succeed or fail), I was able to find that trimming 355 megabytes of mail (thus deleting around 17% of my data) would make the tool run successfully, whilst just avoiding the 2-gigabyte limit.

So, what do we learn about software in general from this? For me, these were the most important points:

  • Test your software. First and foremost, this bug represents a failure to test (because I doubt anyone actually intended for data corruption to happen). The minimal test case for this would have been: Create a new email, attach a 100 MB file, save the draft email, and close the email item: Repeat 25 times; Close program, open program, verify that the program opens without errors. This test (verifying that you can read your own data) would have demonstrated data corruption, and it does not require sending any email, or talking to the network at all - so would have been a comparatively simple test to preform.
  • Fix severe problems quickly. This problem existed in Outlook 97 through to Outlook 2002, which (from the list of office versions) meant it was in the latest-and-greatest editions of office from Dec 1996 through to Nov 2003 (i.e. 7 years). Seven years is way too long have a severe data corruption bug like this.
  • Test your fixes. There is an update that is claimed to “prevent Outlook from allowing the .PST file to exceed the 2 GB maximum size”. Since I has this update installed at the time, all I can say is that the fix seems broken to me.
  • Fix severe problems in multiple ways. Bugs happen: I’ve certainly made plenty of mistakes, including ones that lost data. For the most severe ones though, I try to make it a point to fix them in multiple ways, at every point where I have made a bad assumption, or where I could be checking the passed data obeys certain constraints. My personal record is fixing a logic bug in 4 different ways, although 3-way fixes are slightly more common, and 2-way fixes are fairly standard - and when you fix bugs thoroughly like this, you never see them again. It’s the same in aviation, where they use the Swiss Cheese model - which basically says that for any accident, there are usually many cumulative failures, and you need to fix all of them to stop the same mistake happening again. Now, this particular email bug was not one bug: rather, it was two (at the very least). The first bug is that corruption occurs. The second bug is that when corruption occurs, you cannot recover from it. Microsoft only attempted to fix the first bug (and failed). If they had attempted to fix the second bug (making data recovery work), and succeeded, it would have been much less of a problem. I even tried to recover the data in a virtual machine, running the free 60-day trial edition of Outlook 2007 (the latest version), which you can download from the Microsoft site. It didn’t work, and the recovery tool still failed to recover data. As a result, this bug (making data recovery work for oversized PST files) is still unfixed in the latest edition of office (and has been present for 10.5 years now, and counting).
  • Automate the backup of your data. My last backup of email data was from May 2005. Backing up my data was on my TODO list, however that TODO list was stored in the very file that got corrupted (yay, irony!). I’ve come to the realisation that if it’s not automated, I probably won’t back up my data - and I suspect most people are the same. I’m currently planning to buy one of those small network-drive devices that runs Linux, install samba, and script it to once a day delete the oldest backups until there is 10 gig of free space, then make a copy of yesterday’s data, and then reach out across the network and rsync yesterday’s data remotely against the current data, and then share out all my data as read-only and password protected. This way, I should be able get back to a previous state from any day in the last 30 days; and even if I get a severe virus or accidentally try to delete my backup, it can’t be deleted or altered because it’s read-only.
  • Proprietary data formats suck. If my email had been stored in mbox format, I would have able to open it another app, even when Outlook could not. If my notes were in text files, I would have been able to open them in a text editor. If my calendar items were in iCalendar format, I could have been able to import them into other calendaring software. As it was, the data was in a proprietary format, so none of these things were possible. However, because of the point below, it’s still not clear what to do about that:
  • There still appears to be no email plus Personal Information manager open-source killer-app. Despite everything, there still seems to be no free email app that’s doing what Firefox did for web browsers, or what OpenOffice is doing now for word processing and spreadsheets: Provide a fully-featured, cross-platform, kick-arse implementation, that’s easy to switch to. There are many email clients, but none that seem suitable replacements. Mozilla Thunderbird for example is clear that “It is not a personal information manager” - which is fine, but not what I’m looking for (although having builds available for Windows, Mac and Linux is a definite plus, because I want the option to change platforms at any point, and bring all my data and favourite apps with me). However, I’m looking for email + calendaring + TODO task lists + notes, well integrated in one app, rather than 4 separate apps. The closest candidate seems to be Novell Evolution, which feature-wise seems closest, but which is limited in two regards: 1) It’s part of the GNOME desktop, thus philosophically tied somewhat to a single platform, and not officially available for Windows (there are people working on a Windows port, but builds happen on an ad-hoc basis, rather than being a first-class citizens with automated nightly builds like Firefox), and 2) there seems to be no mechanism for importing data from Outlook (originally requested, twice 5 years ago), which is a missed opportunity because Outlook is a pretty popular email client, and I’m sure a lot of people and corporations would switch to an open-source app if there was a compelling pathway for them to do so.
  • If you run Outlook, check now that your PST file is significantly smaller than 2 gigabytes. If it’s getting close, take action now.