if i were you, i'd start with something simple first, to find my way round the system. it's probably also not a bad idea, as someone else suggested, to write a few small programs for plan 9 itself, just to see the differences. write a silly concurrent program using thread(2), for instance, and perhaps a little file server; but don't start writing your own until you've read some of the existing ones. for porting, both examples you've suggested are somewhat bigger than huge, and perhaps not good things to try first.