The productive programmer

Suggests ways for software developers and programmers to work " better, faster, and cheaper." Offers advice on tools for and the mechanics of productivity - "how to work smarter, spurn interruptions, get the most out of your computer, and avoid repetition. ... [Recommends] practices t...

Full description

Bibliographic Details
Main Author: Ford, Neal
Format: eBook
Published: Sebastopol, Calif. O'Reilly Media 2008
Series:Theory in practice
Online Access:
Collection: O'Reilly - Collection details see MPG.ReNa
Table of Contents:
  • Use a Canonical Build MachineIndirection; Taming Eclipse Plug-ins; Syncing JEdit Macros; TextMate Bundles; Canonical Configuration; Use Virtualization; DRY Impedance Mismatches; Data Mapping; Migrations; Rake migrations; dbDeploy; DRY Documentation; SVN2Wiki; Class Diagrams; Database Schemas; Summary; Part II. Practice; Chapter 6. Test-Driven Design; Evolving Tests; TDDing Unit Tests; Measurements; Design Impact; Code Coverage; Chapter 7. Static Analysis; Byte Code Analysis; Source Analysis; Generate Metrics with Panopticode; Analysis for Dynamic Languages; Chapter 8. Good Citizenship
  • Windows address barMac OS X Finder; Clipboard(s); Remember History; There and Back; Command Prompts at Your Fingertips; Command Prompt Explorer Bar; Here!; Development Accelerators; Search Trumps Navigation in Tools, Too; Macros; Macro Recorder; Key Macro Tools; Summary; Chapter 3. Focus; Kill Distractions; Blocking Strategies; Turn Off Needless Notifications; Create Quiet Time; Search Trumps Navigation; Find Hard Targets; Use Rooted Views; Rooted Views in Windows; Rooted Views in OS X; Use Sticky Attributes; Use Project-Based Shortcuts; Multiply Your Monitors
  • Table of Contents; Foreword; Preface; Who This Book Is For; Conventions Used in This Book; Using Code Examples; How to Contact Us; Safari® Enabled; Acknowledgments; Chapter 1. Introduction; Why a Book on Programmer Productivity?; Address Completion in Browsers; Internet Explorer; Firefox; What This Book Is About; Part I: Mechanics (The Productivity Principles); Part II: Practice (Philosophy); Where to Go Now?; Part I. Mechanics; Chapter 2. Acceleration; Launching Pad; Launchers; Creating a Windows Launching Pad; Mac OS X; Launching in Linux; Accelerators; Operating System Accelerators
  • Segregate Your Workspace with Virtual DesktopsSummary; Chapter 4. Automation; Don't Reinvent Wheels; Cache Stuff Locally; Automate Your Interaction with Web Sites; Interact with RSS Feeds; Subvert Ant for Non-Build Tasks; Subvert Rake for Common Tasks; Subvert Selenium to Walk Web Pages; Use Bash to Harvest Exception Counts; Replace Batch Files with Windows Power Shell; Use Mac OS X Automator to Delete Old Downloads; Tame Command-Line Subversion; Build a SQL Splitter in Ruby; Justifying Automation; Don't Shave Yaks; Summary; Chapter 5. Canonicality; DRY Version Control
  • Breaking EncapsulationConstructors; Static Methods; Criminal Behavior; Chapter 9. YAGNI; Chapter 10. Ancient Philosophers; Aristotle's Essential and Accidental Properties; Occam's Razor; The Law of Demeter; Software Lore; Chapter 11. Question Authority; Angry Monkeys; Fluent Interfaces; Anti-Objects; Chapter 12. Meta-Programming; Java and Reflection; Testing Java with Groovy; Writing Fluent Interfaces; Whither Meta-Programming?; Chapter 13. Composed Method and SLAP; Composed Method in Action; SLAP; Chapter 14. Polyglot Programming; How Did We Get Here? And Where Exactly Is Here?