97 Things Every Programmer Should Know
Subtitle: collective wisdom from the experts
Publisher: O'Reilly
Published: 2010
Place of publication: Sebastopol, Calif.
Language: eng
Format: Paperback
Number of pages: 256
ISBN-13: 9780596809485
Table of contents: title: Act with Prudence; title: Apply Functional Programming Principles; title: Ask, "What Would the User Do?" (You Are Not the User); title: Automate Your Coding Standard; title: Beauty Is in Simplicity; title: Before You Refactor; title: Beware the Share; title: The Boy Scout Rule; title: Check Your Code First Before Looking to Blame Others; title: Choose Your Tools with Care; title: Code in the Language of the Domain; title: Code Is Design; title: Code Layout Matters; title: Code Reviews; title: Coding with Reason; title: A Comment on Comments; title: Comment Only What the Code Cannot Say; title: Continuous Learning; title: Convenience Is Not an -ility; title: Deploy Early and Often; title: Distinguish Business Exceptions from Technical; title: Do Lots of Deliberate Practice; title: Domain-Specific Languages; title: Don't Be Afraid to Break Things; title: Don't Be Cute with Your Test Data; title: Don't Ignore That Error!; title: Don't Just Learn the Language, Understand Its Culture; title: Don't Nail Your Program into the Upright Position; title: Don't Rely on "Magic Happens Here"; title: Don't Repeat Yourself; title: Don't Touch That Code!; title: Encapsulate Behavior, Not Just State; title: Floating-Point Numbers Aren't Real; title: Fulfill Your Ambitions with Open Source; title: The Golden Rule of API Design; title: The Guru Myth; title: Hard Work Does Not Pay Off; title: How to Use a Bug Tracker; title: Improve Code by Removing It; title: Install Me; title: Interprocess Communication Affects Application Response Time; title: Keep the Build Clean; title: Know How to Use Command-Line Tools; title: Know Well More Than Two Programming Languages; title: Know Your IDE; title: Know Your Limits; title: Know Your Next Commit; title: Large, Interconnected Data Belongs to a Database; title: Learn Foreign Languages; title: Learn to Estimate; title: Learn to Say, "Hello, World"; title: Let Your Project Speak for Itself; title: The Linker Is Not a Magical Program; title: The Longevity of Interim Solutions; title: Make Interfaces Easy to Use Correctly and Hard to Use Incorrectly; title: Make the Invisible More Visible; title: Message Passing Leads to Better Scalability in Parallel Systems; title: A Message to the Future; title: Missing Opportunities for Polymorphism; title: News of the Weird: Testers Are Your Friends; title: One Binary; title: Only the Code Tells the Truth; title: Own (and Refactor) the Build; title: Pair Program and Feel the Flow; title: Prefer Domain-Specific Types to Primitive Types; title: Prevent Errors; title: The Professional Programmer; title: Put Everything Under Version Control; title: Put the Mouse Down and Step Away from the Keyboard; title: Read Code; title: Read the Humanities; title: Reinvent the Wheel Often; title: Resist the Temptation of the Singleton Pattern; title: The Road to Performance Is Littered with Dirty Code Bombs; title: Simplicity Comes from Reduction; title: The Single Responsibility Principle; title: Start from Yes; title: Step Back and Automate, Automate, Automate; title: Take Advantage of Code Analysis Tools; title: Test for Required Behavior, Not Incidental Behavior; title: Test Precisely and Concretely; title: Test While You Sleep (and over Weekends); title: Testing Is the Engineering Rigor of Software Development; title: Thinking in States; title: Two Heads Are Often Better Than One; title: Two Wrongs Can Make a Right (and Are Difficult to Fix); title: Ubuntu Coding for Your Friends; title: The Unix Tools Are Your Friends; title: Use the Right Algorithm and Data Structure; title: Verbose Logging Will Disturb Your Sleep; title: WET Dilutes Performance Bottlenecks; title: When Programmers and Testers Collaborate; title: Write Code As If You Had to Support It for the Rest of Your Life; title: Write Small Functions Using Examples; title: Write Tests for People; title: You Gotta Care About the Code; title: Your Customers Do Not Mean What They Say