This article describes a real-word software port, with examples of how various porting challenges are resolved. If you are a software developer porting software to UNIX, you will find these techniques invaluable in avoiding common pitfalls, resolving bugs, and improving your productivity.