Reindent and reformat.
Update to compile against a backwards-incompatible version of an API.
<ocrete> twi: I’m porting farstream to [GStreamer] 0.11 this week
Rewrite to use a different widget set and network library.
You should port Sojourner to Qt4!
Reimplement in an entirely different programming language.
Translate into a different data format.
Using Semantics3’s web crawlers, we were able to get hold of the data within a half hour, after which we spent a further half hour cleaning up the data and porting it to SQL.