I'm curious what specific mistakes you're thinking of that application developers make when they don't understand computer networks. In my limited experience, the rudimentary abstraction "messages are sent, they're not instant and they might not make it" has generally been sufficient, aside from DNS issues. I learned some networking in college (CS241 at UIUC) and it was really interesting, but I feel I've forgotten almost everything from lack of use. Maybe I've done terrible things as a result. I think I and many others could really benefit from a list of common pitfalls by networking newbs.