The Productive Programmer

by
Edition: 1st
Format: Paperback
Pub. Date: 2008-07-01
Publisher(s): Oreilly & Associates Inc
  • Free Shipping Icon

    This Item Qualifies for Free Shipping!*

    *Excludes marketplace orders.

List Price: $39.99

Buy New

Usually Ships in 2-3 Business Days
$39.59

Rent Book

Select for Price
There was a problem. Please try again later.

Rent Digital

Rent Digital Options
Online:1825 Days access
Downloadable:Lifetime Access
$38.39
*To support the delivery of the digital material to you, a digital delivery fee of $3.99 will be charged on each digital item.
$38.39*

Used Book

We're Sorry
Sold Out

How Marketplace Works:

  • This item is offered by an independent seller and not shipped from our warehouse
  • Item details like edition and cover design may differ from our description; see seller's comments before ordering.
  • Sellers much confirm and ship within two business days; otherwise, the order will be cancelled and refunded.
  • Marketplace purchases cannot be returned to eCampus.com. Contact the seller directly for inquiries; if no response within two days, contact customer service.
  • Additional shipping costs apply to Marketplace purchases. Review shipping costs at checkout.

Summary

This book shows how to improve your life (and career) in software development by taking advantage of four key principles: acceleration, focus, automation, and DRYness. Learn from a highly experience master developer how to make your work time more effective. Discover how to avoid interruptions that break your focus; learn how discover the best tools for the job, and use them effectively; find out how to avoid repeating yourself as you're coding. Get the most you possibly can out of your tools, from your laptop or workstation to your development environment. We only get 24 hours in a day. Use them well.

Author Biography

Neal Ford is an Application Architect at ThoughtWorks, a global IT consultancy with an exclusive focus on end-to-end software development and delivery. Before joining ThoughtWorks, Neal was the Chief Technology Officer at The DSW Group, Ltd., a nationally recognized training and development firm. Neal has a degree in Computer Science from Georgia State University specializing in languages and compilers and a minor in mathematics specializing in statistical analysis. He is also the designer and developer of applications, instructional materials, magazine articles, video presentations, and author of the books Developing with Delphi: Object-Oriented Techniques (Prentice-Hall, 1996), JBuilder 3 Unleashed (Sams, 1999) (as the lead author), Art of Java Web Development (Manning, 2003), and No Fluff, Just Stuff Anthology: The 2006 Edition (editor and contributor). His language proficiencies include Java, C#/.NET, Ruby, Object Pascal, C++, and C. His primary consulting focus is the design and construction of large-scale enterprise applications. Neal has taught on-site classes nationally and internationally to all phases of the military and to many Fortune 500 companies. He is also an internationally acclaimed speaker, having spoken at numerous developer conferences worldwide.If you have an insatiable curiosity about Neal, visit his web site at http://www.nealford.com. He welcomes feedback and can be reached at nford@thoughtworks.com.

Table of Contents

Forewordp. vii
Prefacep. ix
Introductionp. 1
Why a Book on Programmer Productivity?p. 2
What This Book Is Aboutp. 3
Where to Go Now?p. 5
Mechanics
Accelerationp. 9
Launching Padp. 10
Acceleratorsp. 18
Macrosp. 33
Summaryp. 35
Focusp. 37
Kill Distractionsp. 38
Search Trumps Navigationp. 40
Find Hard Targetsp. 42
Use Rooted Viewsp. 44
Use Sticky Attributesp. 46
Use Project-Based Shortcutsp. 47
Multiply Your Monitorsp. 48
Segregate Your Workspace with Virtual Desktopsp. 48
Summaryp. 50
Automationp. 51
Don't Reinvent Wheelsp. 53
Cache Stuff Locallyp. 53
Automate Your Interaction with Web Sitesp. 54
Interact with RSS Feedsp. 54
Subvert Ant for Non-Build Tasksp. 56
Subvert Rake for Common Tasksp. 57
Subvert Selenium to Walk Web Pagesp. 58
Use Bash to Harvest Exception Countsp. 60
Replace Batch Files with Windows Power Shellp. 61
Use Mac OS X Automator to Delete Old Downloadsp. 62
Tame Command-Line Subversionp. 62
Build a SQL Splitter in Rubyp. 64
Justifying Automationp. 65
Don't Shave Yaksp. 67
Summaryp. 68
Canonicalityp. 69
DRY Version Controlp. 70
Use a Canonical Build Machinep. 72
Indirectionp. 73
Use Virtualizationp. 80
DRY Impedance Mismatchesp. 80
DRY Documentationp. 88
Summaryp. 93
Practice
Test-Driven Designp. 97
Evolving Testsp. 99
Code Coveragep. 105
Static Analysisp. 109
Byte Code Analysisp. 110
Source Analysisp. 112
Generate Metrics with Panopticodep. 113
Analysis for Dynamic Languagesp. 116
Good Citizenshipp. 119
Breaking Encapsulationp. 120
Constructorsp. 121
Static Methodsp. 121
Criminal Behaviorp. 126
Yagnip. 129
Ancient Philosophersp. 135
Aristotle's Essential and Accidental Propertiesp. 136
Occam's Razorp. 137
The Law of Demeterp. 140
Software Lorep. 141
Question Authorityp. 143
Angry Monkeysp. 144
Fluent Interfacesp. 145
Anti-Objectsp. 147
Meta-Programmingp. 149
Java and Reflectionp. 150
Testing Java with Groovyp. 151
Writing Fluent Interfacesp. 152
Whither Meta-Programming?p. 154
Composed Method and Slapp. 155
Composed Method in Actionp. 156
Slapp. 160
Polyglot Programmingp. 165
How Did We Get Here? And Where Exactly Is Here?p. 166
Where Are We Going? And How Do We Get There?p. 169
Ola's Pyramidp. 173
Find the Perfect Toolsp. 175
The Quest for the Perfect Editorp. 176
The Candidatesp. 179
Choosing the Right Tool for the Jobp. 180
Un-Choosing the Wrong Toolsp. 186
Conclusion: Carrying on the Conversationp. 189
Building Blocksp. 191
Indexp. 199
Table of Contents provided by Ingram. All Rights Reserved.

An electronic version of this book is available through VitalSource.

This book is viewable on PC, Mac, iPhone, iPad, iPod Touch, and most smartphones.

By purchasing, you will be able to view this book online, as well as download it, for the chosen number of days.

Digital License

You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.

More details can be found here.

A downloadable version of this book is available through the eCampus Reader or compatible Adobe readers.

Applications are available on iOS, Android, PC, Mac, and Windows Mobile platforms.

Please view the compatibility matrix prior to purchase.