I’ll be frank: the bit of code for importing flights from our friends at FlightMemory to OpenFlights has long been riddled with bugs, and that’s why we’ve at long last thrown out the bulk of the plumbing and rebuilt it with shiny new pipe. This has already fixed a number of bugs (most notably, accented characters getting lost), but there may be loose fittings somewhere, so please let us know ASAP if something’s leaking on the floor somewhere. The next roaches in queue to be swatted are this (can’t handle ICAO codes for airlines) and this (duplicates in database). And if you’d be really keen on one-step imports (that is, give the site your FM password and it’ll slurp up all your flights), now would be a good time to say so!
Like many other developers, I have hated the way Facebook handles applications for a long time: the APIs are buggy as hell, poorly documented, change constantly, crippled beyond belief, completely proprietary, a vast pain to test and debug, and increasingly obviously geared towards moving everything off the open Web and into Facebook itself. But with several thousand OpenFlights users happily using the app, we put up with the pain.
But now the camel’s back is broken. Only a few short weeks ago, Facebook announced that profile boxes were doomed and that all applications had to migrate to profile tabs. We duly did so, only to get smacked in the face with another wet trout: as of today, profile tabs are also gone. Their replacement? Nothing: all applications have to live on their own pages within Facebook, and users aren’t allowed to attach them to their profiles in any way, shape or form. Too bad if you want to share your flight map with your friends, because as of now, you can’t.
So we’re going to do the only thing we can: say a nice, big hearty “fuck you” to Facebook and start looking for alternatives. Any suggestions?
(And just to be clear: the part of the OpenFlights Facebook app that feeds your flights to your Wall is not affected and not going away for the moment. However, it’s a matter of time until Facebook breaks it again, and at that point we’ll probably nuke the app for good.)
Half a million user-entered flights! That’s a pretty respectable number, and the way things are going, we’ll be looking at the Big One-Oh-Oh-Oh-Oh-Oh-Oh sometime early next year. What’s changed since 250,000?
Top 10 Airlines
|Airline||250k rank||World rank|
|3||United Airlines||2 (-1)||4|
|4||American Airlines||3 (-1)||3|
|5||Air France-KLM||7 (+2)||6|
|6||Continental Air Lines||4 (-2)||9|
|7||British Airways||6 (-1)||?|
The big news is that Delta-Northwest grabs the top spot in both IATA’s 2009 stats and on OpenFlights, beating Lufthansa by a hair. Similarly, Air France-KLM has leapt ahead and Ryanair continues its inexorable ascent, grabbing the 8th position in both lists. So once again we’ve got 8 out of 10: as ever, world #2 Southwest remains striking in its absence, although it did creep up two spots to OpenFlights #19, and world #7 China Southern Airlines is a mere #49 in OpenFlights. Chinese flyers, where are you?
A statistical sidenote: on OpenFlights, we figure out airlines from flight numbers, so regional affiliates not using their parents’ codes are not going to show up here. Since all the majors have their own sidelines, I figure they’re all disadvantaged more or less equally, and this thus probably doesn’t make a huge difference.
Top 10 Airports
|Airport||250k rank||World rank|
|1||Frankfurt Main (FRA)||1||9|
|3||Chicago Ohare Intl (ORD)||3||4|
|4||Charles de Gaulle (CDG)||6 (+2)||6|
|5||Munchen (MUC)||4 (-1)||30|
|6||Los Angeles Intl (LAX)||5 (-1)||7|
|7||Amsterdam-Schiphol (AMS)||8 (+1)||14|
|8||Atlanta-Hartsfield (ATL)||10 (+2)||1|
|9||New York-John F Kennedy Intl (JFK)||9||12|
|10||San Francisco Intl (SFO)||11 (+1)||20|
No change in the top three, with Frankfurt still reigning supreme. Charles de Gaulle, new at 250k, has climbed up another two notches to number 4, and world #1 Atlanta has avoided the ignominy of falling off the list and moved up to a more secure perch at #8. On the other hand, Houston’s George Bush Intercontinental, which made it as high as #4 in the 100,000 stats, has now collapsed to #11. Still no sign of Beijing or Haneda, will this change now that HND is fielding more international flights?
The next job in the never-ending OpenFlights task queue is reworking our flight import system, which is a bit too buggy for comfort at the moment, but after that is autocompletion and, yes, that should finally include using previous flight data to suggest source and destination airports, plus possibly flight times as well. Stay tuned!
Looking forward to his first million,
We’ve been having a bit of trouble with our map servers lately, so I’m delighted to announce that we’ve just switched to new and, hopefully, more stable ones today.
The default “political” blue-and-gray map is the same as it ever was, only it’s now hosted by the Open Source Geospatial Foundation (OSGeo). OSGeo are also the folks behind the OpenLayers map system that powers the entire site, so please show your love on their Donations page.
The full-color geographical “world” map has been offline ever since NASA pulled the plug on their Blue Marble map server a few months back, but today it’s back courtesy of OpenGeo, another non-profit which, confusingly enough, is entirely separate from OSGeo. If you haven’t seen this before, here’s how to activate it: click on the top right icon, then choose “Base Layer > Geographical (OpenGeo)”, and the background of your OpenFlights map will now be the real world. The two caveats are that 1) it’s considerably slower than the political map, since there’s so much more detail, and 2) OpenGeo’s map isn’t quite as high-res as the original, so you can’t zoom in all the way to the airport runways like you could previously.
Tiled and ready to go,
Facebook, in their grandmotherly kindness, has once again decided to break the OpenFlights Facebook application. Today’s change is that the “profile box” we’ve come to know and love is going away on August 23, 2010:
And it will be replaced by the profile “application tab”, visible only if you browse to the user’s profile and click on the “OpenFlights” tab there:
To add the application tab to your profile, browse to http://apps.facebook.com/openflights, look for “Step 3: Click the button below to add the OpenFlights application tab to your Facebook profile”, click the button and follow the instructions. Once done, you should have a new tab in your Profile, and the application should tell you “You have added the OpenFlights application tab to your profile” (you may need to reload the page once to see this).
The route map we created with our airline route data a while back has been a bit of a sleeper hit: it’s now used on 16 language versions of Wikipedia, drawn excited reactions from blogs and — my personal favorite — claimed by a logistics company as their cargo network! But it’s a boring old square, and recently, we received a request to make a round version of it. Never ones to let a challenge pass us by, we set the number-crunchers to work, and here was our first attempt:
“Hmm,” is probably your first reaction, “that looks kinda strange.” That’s because it shows the entire world squished to a disc, including even the parts you couldn’t actually see, at least not all at once, if you were in outer space looking down at the Earth. (For you mapping nerds out there, it’s a Lambert azimuthal equal-area projection.) The only way to make this happen is to stretch the bits around the edges, which is why poor Australia looks so strange. So how to make it more realistic? Back to the drawing board!
Our second attempt used an orthographic projection, which is Greek for “true writing” and thus pretty close to what you’d actually see from space. The only problem this time is that you can only see around half the world at any time, which means you also only see half the airline routes. How could we show them all? The solution was to add time to the equation, and turn it into a video:
Or, if you’re on a slower connection, here’s a non-HD version that should load a little faster. And while I was at it, I created my own routemap as a video as well:
Nifty, eh? We’re considering a campaign that will create route map videos for all users who help contribute to the site, so if you’d be willing to chip in a bit in exchange for a shiny new video, let us know! Up next, a hardcore geek posting that will reveal the PHP ninja secrets of making maps and videos like this yourself.
Doin’ the rotomotion,
OpenFlights has been in bug fixing mode lately, but today we rolled out a small but handy feature: the ability to reset your own password if you’ve forgotten it. We use the same mechanism as every other site out there, namely mailing you a link to check that it’s you, and then giving you a new random password once you click on the link. While we were at it, we also nuked a pesky longstanding bug that had prevented some users from changing their password, so you’re not stuck with random gibberish afterwards.
Now, there’s one more change afoot for users who registered before January 9, 2009 and whose usernames contain uppercase letters: due to changes in our login system, you will be unable to login after Saturday, May 15th, and you will have to reset your passwords to get your access back. To emphasize, this applies only to users who fulfill both conditions: if your username contains no uppercase latters or you signed up anytime after January 9, 2009, you don’t need to do anything at all. If you want to check whether or not you are affected, browse here and find out:
For affected users, the reset can be done at any time (before or after May 15th) and after you have changed the password, your account will be OK. According to our count, there are 123 of you, and while we will try to reach 82 by e-mail, here’s hoping this catches some of the rest of you. The remaining unlucky 41, being email-less, cannot use the reset functionality and will instead need to login and change their password under Settings.
And if you’re wondering why we don’t just change your passwords for you, the answer is simply that we can’t: passwords are always stored encrypted (one-way hash), which means that even we can’t read them.