Now for sale: my book for programmers entering industry, the New Programmer’s Survival Manual, is available in ebook and paper form.
I expect readers of this book to fall into a couple categories:
College students taking Computer Science classes and wondering, “is this what programming is like in the real world?” (Short answer: no.)
College grads already in industry, who have noticed first-hand that the answer to the first question is “no,” trying to get their heads around the disparity.
Professionals from other backgrounds who got into programming as a hobby or side job, now wanting to take it on full-time.
Programming at industry level requires new skills–you’ll build programs that dwarf anything you’ve done on your own. This book introduces you to practices for working on large-scale, long-lived programs at a professional level of quality. You’ll find out how to work efficiently with your tools, and discover essential new tools.
But the tools are only part of the story; you’ve got to get street-smart too. Succeeding in the corporate working environment requires its own savvy. You’ll learn how to navigate the office, work with your teammates, and how to deal with other people outside of your department. You’ll understand where you fit into the big picture and how you contribute to the company’s success. You’ll also get a candid look at the tougher aspects of the job: stress, conflict, and office politics.
Finally, programming is a job you can do for the long haul. This book helps you look ahead to the years to come, and your future opportunities–either as a programmer or in another role you grow into.
There’s nothing quite like the satisfaction of shipping a product and knowing, “I built that.” Whether you work on embedded systems or web-based applications, in trendy technologies or legacy systems, this book helps you get from raw skill to an accomplished professional.
(Note: If you’re read along with my previous writing on this subject, all of the best material (and lots more) is in the final book. And you’ll be relieved to know I dropped the bits about assembly language.)