June 02, 2009

The Meaning of (Pragmatic) Life

As you may have heard, we're launching a new series of books under the banner Pragmatic Life. It includes books for your life beyond coding.

You're a professional, you're good at what you do, and (if the ton of email we get is any indication) you like our books that treat you as a professional--someone who's good at what you do, but there's something new you need to learn. We've got you covered.

Our first two books in the series include The Passionate Programmer and Land the Tech Job You Love. We'll be following up later this year with books on geek hobbies, health and lifestyle topics. Tomorrow, we're going to launch our first fiction book.

Now, when I was young, I rarely read fiction, because I considered it to be "not true." It wasn't until I was older that I finally realized that good fiction exposes far more truth than most history or technical works can.

Will this fiction book be to everyone's liking and taste? Probably not. But we like it, we think your kids will like it, and we hope you will too.

We're here to help make developer's lives easier and more interesting. And because life doesn't stop at the office door, neither will we. Join us in celebrating the pragmatic life.

/\ndy



May 18, 2009

Daydreaming is hard work

This article has made all the rounds, but just in case you missed it: your brain is much more active during daydreaming than was commonly thought.

Functional MRI scans showed that the area of the brain responsible for complex problem solving does not go dormant when you daydream, but in fact becomes very active.

As I suggest in Pragmatic Thinking & Learning, these researchers concluded that:

"The quantity and quality of brain activity suggests that people struggling to solve complicated problems might be better off switching to a simpler task and letting their mind wander."

Putting your feet up on the desk while daydreaming is optional...

/\ndy


May 12, 2009

Lack of sleep causes cumulative cognitive dysfunction

If you don't get enough sleep on a regular basis, you'll "seriously impair waking neurobehavioral functions" in otherwise healthy adults, according to this study.

Even just a relatively small amount of consistent sleep deprivation (say, getting only 6 hours of sleep a night) causes cumulative problems with cognitive ability. After two weeks at this level, subjects were affected as if they had stayed up for two days straight.

However, the subjects didn't notice anything particularly wrong: they didn't feel sleepy or impaired. That's a big danger with sleep deprivation—you cannot accurately judge it's impact on your own performance.

So get a good night's sleep consistently, and enjoy better cognitive performance—consistently.

/\ndy

Thanks to Jeff Hemmelgarn for spotting this.


May 01, 2009

You are what you do

This NY Times piece reinforces a number of themes from my Pragmatic Thinking & Learning book:

  • There is no expertise without experience
  • It takes something on the order of ten years/ 10,000 hours of practice to be expert in a field
  • Deliberate, thoughtful practice is what makes the difference—not just going through the motions.
  • Practice doesn't make perfect, but it does make permanent: neuroplasticity will cause your brain to re-wire itself according to what you do.
You may not become what you dream, or what you aspire to be, but you will become what you do.

This weekend is a good time to start...

/\ndy


April 28, 2009

Speaking in Charolotte tonight

I'm speaking at Agile Carolinas in Charlotte, NC this evening, details available here.

Hope to see you there!

/\ndy


April 23, 2009

Review on DZone

There's a nice comprehensive review on DZone this morning of Pragmatic Thinking and Learning. We have some in stock here, but a lot of places are out -- the next reprint should start arriving in a week or two.

/\ndy


April 15, 2009

Pragmatic Thinking in London

I’ll be giving my Pragmatic Thinking and Learning workshop in London on May 11th. Details are available here. Seats are going fast, so be sure to reserve a spot today if you’re in the area.

I’ll also be stopping by the Øresund Development conference in Copenhagen on May 14th.

Hope to see you there!

/\ndy



April 06, 2009

Broken Windows proved in the Netherlands

Seems like The Economist is reporting on what we've suspected for years:The “broken windows” theory of crime is correct. New experiments in the Netherlands confirm the theory that one instance of disorder, such as graffiti or littering, can indeed encourage another, more serious form, such as stealing. In fact, this new research showed that people were twice as likely to steal when placed in a condition of disorder.

I keep harping on the idea that Context matters, and here is another clear example. An environment that is "broken" in some significant way can lead to further damage, which breaks the environment even more, and you can quickly get a snowball effect to complete disaster. Not that that ever happens on a software project...

Our advice back at the turn of the century (ahem) in The Pragmatic Programmer was to avoid technical debt like the plague. Don't get into it if you can, and if you have it, make concrete plans to begin reducing it. Just like real debt :-).

Even if it seems minor at the time, remember than one thing will lead to another. And the next one will be worse.

/\ndy

(Thanks to Georg Tuparev for passing this on)


April 02, 2009

Emerging Tech interview

While at the Philly Emerging Tech for the Enterprise conference, I had the pleasure of being interviewed by Ken Rimple on the Chariot Tech Cast podcast about Refactoring Your Wetware.

Give a listen!

/\ndy


April 01, 2009

What IS the most important thing?

The other day an interviewer asked me to volunteer what I thought were the most important factors to successful software development.

That's a really good question.

I don't think you can have a definitive answer, but off the top of my head I thought of three things. These might not be the _most_ important, but they are certainly _very_ important.


1) Learning what is to be built. I say learning, not knowing, to emphasize that it is an ongoing process. At day one on the project, you know the least about the project and the needs of the users. By the end of the project, you will have learned the most about it. Learning continues throughout the project lifecycle, and reaches it's height closer to the end than the beginning. Therefore it makes sense to use an agile and iterative approach; to defer critical decision making until late in the project; and to fundamentally to realize that we will be constantly working with incomplete knowledge.

2) Correctly applying skill levels. There is a vast difference in performance between highly skilled developers and moderately skilled or novice developers. A project can produce more code, more quickly, with 2 or 3 highly skilled developers than it can with 20 of lesser skills. Teams of novices need to be treated as "farm teams" and developed within the organization to produce highly skilled developers for the demanding production-ready small teams. Developers need to be compensated according to the value they deliver to the organization; we're not interchangeable based on our stated "salary grade" or years of experience; these are unreliable measures.

3) Maintaining good hygiene. In most professions, there are standards and regulations to keep the workplace clean to prevent injury or product damage. We are no different: every project needs robust and reliable version control and backup strategies (including offsite backup and support for mobile-enabled version control). Every project needs developer-level unit tests in place for all submitted code, and all code should be examined by at least one other developer other than it's author, whether by formal or informal code reviews or continuous review as in pair-programming.

The most important things? Probably not. But it's a good start.

What do you think the most important thing is?

/\ndy


About Me

  • Andy Hunt is co-founder of The Pragmatic Programmers, LLC, and is well known as a programmer, author, and publisher. His email signature, "/\ndy", dates back to the paleolithic days of uucp and ihnp4.

    See my home page.

    Subscribe
AddThis Social Bookmark Button

Twitter Updates

    follow me on Twitter

    Books I've authored

    Where I'm Speaking

    Are you a nerd?

    • I am nerdier than 96% of
all people. Are you nerdier? Click here to find out!