News from OpenFlights, the site for flight logging, mapping, stats and sharing


Animate your flights with FlightGlobe

There’s a long-standing feature request to create an animated “slide show” of your OpenFlights, and I was delighted to find out recently that it’s been done in the best way possible — by somebody else!

FlightGlobe is a nifty desktop application for Mac and Windows that takes an OpenFlights CSV export (“List flights”, then click on “CSV”) and displays them on an animated 3D globe that spins about as you criss-cross the world, providing a neat way of viewing your travels if you’ve been methodical about recording your flight dates.  While the current version is simple and straightforward, the Java source code is available so any programmers out there can try their hand at adding bells and whistles.  Give it a spin!


1 Comment

Improvements to FlightMemory imports

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!

Continue reading


Farewell to Facebook

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.)


Leave a comment

New map servers online

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 change: Profile box out, application tab in

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, 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).

While this is a hassle, the change is not all bad, since at least from now on we’ll have 520 pixels to play with (instead of the previous 184), so we’re open to suggestions to what we should do with our new real estate.  Something like the “Analyze” stats and charts, perhaps?  Alas, enabling a full-fledged “slippy map” like the website is still out of the question, as Facebook’s JavaScript support is far too crippled for the OpenLayers goodness we would need to implement it.

Losing face,

Leave a comment

Slicing, dicing and spinning route maps

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,

Leave a comment

Important: Password reset required for some pre-2009 users

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.

Loquaciously passwordy,


Yet another Facebook application issue

It’s only been a few weeks since we last pestered you, but it turns out our changes to the Facebook app weren’t quite enough, and that for a certain set of users flight notifications were still not working properly.  This time, though, we’re pretty sure we’ve got it licked, so let’s try this one last time — or so I hope.  Please go to:

If it says “Automatic refreshing active” at the bottom, the app should be working fine and no action is needed.  However, if it says “Step 1“, then please follow the instructions: click the link, grant the “publish” and “remember me” permissions, and then “Activate/Update preferences”.  You should get a “Thank you!” box after this, and then the application should finally work.  And if it doesn’t…  let us know!

<geek> Turns out that publish_stream isn’t enough, offline_access is required as well before Facebook will deign to grant a session key usable for offline stream publishing, and we were recording the wrong, temporary ones. Fortunately, we can request both and use the users_hasAppPermission() call to verify that the permission has duly been granted before recording the session key, and everything should now be peachy keen. </geek>

Facepalmed by Facebook,


Facebook application changed, your action required to keep posting flights

Recent changes inside Facebook have broken the existing OpenFlights Facebook application‘s ability to  post recently added and/or today’s flights to your Facebook Wall.  To fix your copy, please go to this URL:

Right below “Step 1″, click on the link entitled “Grant permission to publish posts”, click on “Allow publishing” in the dialog that pops up, and then click one last time on “Update preferences”.  That’s it — and as a complimentary bonus, the flight map posted to your profile should now always be up to date.

Geek version: Effective today, Facebook has discontinued the old “template bundle” functionality, which used the offline_publish permission.  We’ve replaced it with stream publishing, but to work this requires the separate stream_publish permission instead.  In addition, we’re now calling fbml.refreshImgSrc after all profile changes to make sure the dynamically generated map is refreshed as well.

As always, the Facebook application code is available in the OpenFlights SVN, take a look if interested.  index.php is the core application, while updater.php is a standalone command line app that handles Wal updates.

Unbundled and streamlined,


200,000+ flights, geographical maps back online

Just a quick heads-up: OpenFlights now has well over 200,000 flights, but you’ll have to wait for 250,000 until the next installment of State of the Data.  With any luck, the quarter-million milestone may be reached before the end of the year.

The other news of note is that the NASA OnEarth (Hypercube) geographical world map layer, which was broken for a while, is back online.  To activate it, click on the top right  icon, then choose “Base Layer > Geographical (NASA)”, and the background of your OpenFlights map will now be the real world, not a light shade of beige.   Due to the richness of detail, the map is quite a bit slower than the default one, but it can be pretty gorgeous especially when zoomed in; take a look at the area around Nassau, Bahamas (NAS) if you don’t believe me!

Virtually exploring the world,