I’m trying to decide what to include in an article on NIO. Here’s a provisional list of the topics I think people probably want to know about (and which I can write on :)). Each would easily be an article in it’s own right.
EDIT: I’m only talking about using nio for networking…
EDIT: When I say “IO” below, I mean “networking using the old IO routines and classes”, which means "java.io.* and java.net.". Much of the java.io. stuff is replaced with java.nio.* stuff, but the java.net.* stuff is replaced by stuff in the java.nio.channels.* package (there is no “java.nnet.*” package, which might make things a bit more obvious here! The .net to .nio.channels change makes sense because networking and file I/O have been unified a bit more, so it’s no longer appropriate to speak only in terms of net)
[]Using NIO in a game: Where, How, Why
[]Should I use NIO, or just plain IO?
[]Patterns/architectures for NIO servers
[]Gotchas, bugs (in nio), platform-dependencies, etc
[]Useful dev and debugging tools (specifically for NIO development - i.e. not IDE’s, but e.g. stress-testing tools)
[]Introduction to planning your server for a game: Mesage-protocols, msg-formats, transport layers, app-layers, app-layer semantics, distribution architectures (p2p, c-s, etc)
[*]Attaining peak performance with NIO
…if you could let me know which of those is most useful to you, I’ll get writing. Equally, any other suggestions, comments, etc? Maybe there’s something else you want to know, more useful than what I have included in that list?
I’m not expecting that people want to know how to get a basic NIO server running - that’s the ONLY part of NIO that’s adequately covered by millions of free tutorials on the web. However, if people have trouble finding them, or running them, perhaps I could pull together a small set of examples?

