Appendix A. Building Blocks
Command lines are wonderful things. If you know the magical commands, the command line is usually the quickest route from intention to execution. Once upon a time, developers had no choice—they had to learn all the incantations by heart, and computer magazines filled up with all the interesting nuances of how DOS worked (and frequently, didn’t work). When Windows conquered the users’ desktops, the developers followed, and only us “seasoned” developers knew how to use the real dark magic under the skin.
Even though IDEs make novice developers more productive, the most productive developers still rely, even thrive, on this command-line Judo. Automating tasks through scripting, linking the inputs and outputs of existing tools, and performing small tasks on local and remote files is still best done at the blinking cursor. But first, you have to make sure you have the right blinking cursor. If you are on Unix or Mac OS X, you can skip the next section. If you are on Windows, you desperately need to read it.
As a Windows user, have you ever gotten jealous of the sheer amount of stuff that comes with a Linux distribution? Compilers for a dozen languages, debuggers, text editors, drawing tools, web servers, databases, publishing tools…the list goes on and on. You can have all that on top of Windows, too—thanks to Cygwin.
Cygwin is a combination of several ...