Friday, November 09, 2007

Windows Technology Frameworks (p&p, day 5)

The wrap-up.

When our speaker asks, "how many of you think this stuff is so complicated that you'll never be able to learn it all?" and all the hands go up, well, that's encouraging.

He likens the .NET Framework to shopping at Home Depot. We wander around from aisle to aisle, with some kind of broken home widget in our hands, desperately searching for something that resembles the widget, so we can zero in on a replacement for the widget, and if/when we get to the right item, we turn it over and the installation instructions make no sense.

"How many of you have looked up the documentation for the DoSomething() method and found that its sole contents are: 'Does something'?"

"ASP.NET: the most impressive kludge in the history of software development." A pretty reasonable attempt to layer a real programming language over browser-based development.

"If the root problem is complexity, EntLib is not the solution."

Agile, TDD, software factories, etc., touted as panaceas... really an attempt to spackle over the real problem, complexity. And now, we kick around a Peter-P-who-shall-not-be-named, for his pairing and TDD presentations at p&p last year (which, wow, I remember!)...

Pair programming had better produce twice the value of one programmer programming alone. We've talked about how hard it is to find good developers. If you put two bad programmers together, do they become > 2 good ones?

If TDD means you write 2 lines of test for every line of production code, then that prod code had better be three times better. (If not, you're just feeding a substance abuse problem.)

If everybody pairs, and everybody writes 2 lines of test per line of code, and every team has 2 testers per dev, the only possible conclusion is that we suck. (Our ratio of testers to developers causes #DIV/0!, so don't assume the converse.)

Fueled by iPods, "people are waking up to the idea that simplicity has value and complexity has cost."

Simplicity Manifesto v1.0
  • Stop adding features
  • Make help helpful
  • Fix the bugs
  • CRUD for free
  • Hide the plumbing
  • Get better names
"HTML: the COBOL of the internet"... we've pushed it way, way beyond what it was envisioned to do.

"Treat simplicity as a feature" and demand simplicity in tools, too.

Boldly go, y'all.

No comments: