About learning and self-improvement

97 views
Skip to first unread message

Sidu Ponnappa

unread,
Dec 9, 2010, 7:25:18 AM12/9/10
to software_cr...@googlegroups.com
Hello everyone,

When interviewing programmers in India, a fairly constant response to
'What personal projects do you hack on in your spare time?' that I've
received has been 'I don't take my work home,' 'I prefer to maintain a
work life balance' or 'I expect the company to pay for professional
training during work hours.'

A recent comment along similar lines to a three year old blog post of
mine on ThoughtWorks' recruiting workflow led me to respond with a
blog post ( http://x.c42.in/hhF2Kl ). I would be interested to know
both your opinions on the subject, and also if similar patterns are
common in other parts of the world too.

Best,
Sidu.
http://c42.in

Josmas Flores

unread,
Dec 9, 2010, 8:22:57 AM12/9/10
to software_cr...@googlegroups.com
Hey Sidu,

great post. I think it happens everywhere in the world but I wouldn't
be inclined to conclude that if you don't hack on your spare time then
I don't want to hire/work with you.
It might be a bit more complex than that. If you work in a place where
no one values your work, learning is not in the menu, you are
consistently sidetracked and have to go in earlier than anyone or stay
later than anyone to get anything done, then I wouldn't expect anyone
to be happy to 'take work home'.
I'm afraid there's tons of people in similar situations, without an
easy way out. Candidates might be trying to get away from an
environment like that.
Maybe questions such as why did you decide to start programming or
what got you hooked in first instance, could allow for spotting the
potential for a good hire which is currently in the wrong social
environment. Just an opinion! :)

cheers,
Jos

> --
> You received this message because you are subscribed to the Google Groups "software_craftsmanship" group.
> To post to this group, send email to software_cr...@googlegroups.com.
> To unsubscribe from this group, send email to software_craftsma...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/software_craftsmanship?hl=en.
>
>

Steven Smith

unread,
Dec 9, 2010, 8:36:46 AM12/9/10
to software_cr...@googlegroups.com
First, I'm amazed someone thought your post was just completely wrong
- don't pay attention to that guy...

I agree with you. I only want to hire and work with programmers who
are passionate about what they are doing. I would extend that to any
occupation, I think, though I'm sure if I thought about it long enough
I could come up with necessary occupations that one can do without
spending much time outside of work on them. Mostly these would be in
fields or industries that are not changing rapidly (e.g. cleaning
offices), but even in these cases I think a case can be made for being
passionate about one's craft. I saw an interesting tweet this week
that read something like "Each person's job is a self-portrait of the
kind of person doing it". If you're just marking time or punching a
clock but aren't really present in what you're doing, it will show.
If you care and are passionate, that too will show.

I think it's also important to recognize that not everybody who is a
programmer loves programming. This is perhaps unfortunate, but
altogether common. I consider myself to be extremely fortunate to get
to do something I really enjoy (programming and problem solving) and
get paid for it. And because I enjoy it I also do it in my spare time
and enjoy learning about it while not at work, etc. But there are
plenty of people in any industry who are there because it's a job and
they need to pay their bills and that's that. Or who once enjoyed it
but now would rather be doing other things. And there is plenty of
work for these folks, but again all things being equal I'll hire the
programmer who loves their craft over the one who's just collecting a
paycheck.

Steve
--
Pick up your 2011 Software Craftsmanship Calendar today: http://bit.ly/SC_2011

> --
> You received this message because you are subscribed to the Google Groups "software_craftsmanship" group.
> To post to this group, send email to software_cr...@googlegroups.com.
> To unsubscribe from this group, send email to software_craftsma...@googlegroups.com.
> For more options, visit this group at http://groups.google.com/group/software_craftsmanship?hl=en.
>
>

--
Steve Smith
http://SteveSmithBlog.com/
http://twitter.com/ardalis

Melanio Reyes

unread,
Dec 9, 2010, 2:14:16 PM12/9/10
to software_cr...@googlegroups.com
I don't know if this is off topic. But the conversation so far
reminds me of a recent Seth Godin post.
http://sethgodin.typepad.com/seths_blog/2010/12/wheres-your-platform.html

John Daniels

unread,
Dec 10, 2010, 8:46:21 AM12/10/10
to software_cr...@googlegroups.com
> I only want to hire and work with programmers who
> are passionate about what they are doing.

I totally agree, but it doesn't necessarily follow that passionate
programmers spend their leisure time programming. I'd look for
evidence of their passion in their broader attitude to continuous
learning, and in contributing their ideas to the community. I think
it's a good sign if they do at least some of that in their own time.

Conversely, I might not be very impressed by someone who spends all
day programming then rushes home and spends their evenings and
weekends for months on end in the solitary pursuit of some open-source
project. It shows passion, yes, but is that the sort of passion I want
to hire?

--John

Pablosan

unread,
Dec 10, 2010, 10:33:54 AM12/10/10
to software_craftsmanship
I have very strong opinions on this subject but rather than rant, let
me give you a concrete example: namely, me.

I went through a very dark time in my career as a software developer.
I had bounced from job to job, working in some pretty nasty situations
and the experiences had sapped my passion to the point that I was
looking for a new career.

As a developer, I am very good at what I do. I've always been one of
the best players on the team... except for those dark days. Even
though my coding ability was top-notch, my apathy buried my ability.

During that time, had I been asked "what are you coding for fun on
your own time?" I would have answered honestly: "absolutely nothing."
And you know what? Even though I had tons of ability, asking that
question would have given the interviewer a hint that maybe they
shouldn't hire me. And they would be right. Nobody should have hired
me. I was a liability.

Recently, I've found myself stating in several conversations around
dealing with dead weight or hiring the right people "we're not running
a charity." It may be harsh, but it is not my goal to rehabilitate
someone who is wallowing in apathy.

The happy ending is that I was able to find the personal fortitude to
rise above the negative impact of my environment. I realized that if I
wanted to attract the attention of the right kind of employer I had to
regain my passion. Since that time, I've never had to look for a job.
They've come looking for me, including the company that I'm starting
with 3 January, 2011: ThoughtWorks.

Ben Fulton

unread,
Dec 10, 2010, 5:10:51 PM12/10/10
to software_cr...@googlegroups.com
On Fri, Dec 10, 2010 at 8:46 AM, John Daniels <j...@syntropy.co.uk> wrote:

I totally agree, but it doesn't necessarily follow that passionate
programmers spend their leisure time programming.

+1 

Especially for those of us with kids :)  Extra time available for programming goes out the window for people with families.

Dave Hoover

unread,
Dec 10, 2010, 6:54:45 PM12/10/10
to software_cr...@googlegroups.com
-1

Extra time available for programming is something you decide to do, regardless of whether you have a family or not.

Cory Foy

unread,
Dec 10, 2010, 7:18:35 PM12/10/10
to software_cr...@googlegroups.com
Hi Dave,

I want to add to your post...


...in our culture.

Here in the US we tend to have a "go all out" culture, with the family understanding around that. In your post you mentioned that your wife supported it (even though it caused problems), meaning your and her parents did too (implicitly, at a minimum). We also have a culture of "fastness". One of the things that surprised me when we spent some time in Germany was that the waiter doesn't bring your check, or ask you about it, until you do - no matter how long it takes. The 20 hours gets you closer to mastery (10k hours) faster. But if I put in 40 hours a week, with 15% of that devoted to innovation and learning (ala 3M or Google) I'm going to get to mastery without the need to spend an additional 20 hours a week. It will just take me longer.

But we have a culture in states that is go, go, go. In fact, I was chatting with someone at the Philly ALT.NET group this week who just spend several months working in France. His amount of learning has gone *down* since coming back to the states because of the demands of US employers and the culture of employability in the States. He's trying to catch back up by paying people to create books-on-tape for his commute so he can get that time back in.

I do think that it is possible to find time (I have a 3 and 4 year old), and I do that by talking about it with my wife and finding something that works for both of us. I don't get as much time as I want, and I don't learn as much as I could, but the balance works for us.

Cory

Dave Hoover

unread,
Dec 11, 2010, 11:01:29 AM12/11/10
to software_cr...@googlegroups.com
Thanks Cory.

I tend to have a knee-jerk reaction against the "available for programming goes out the window for people with families" because of my own history with programming, and the sacrifices I chose to make to ensure I was making progress.

Jerry Andrews

unread,
Dec 14, 2010, 9:53:27 AM12/14/10
to software_cr...@googlegroups.com
Everyone makes decisions about their priorities.  When you're raising kids, they often want time that single people can devote to programming.  If you choose to program instead of giving them that time, it's a choice you are free to make, but others will prioritize differently. Who's to say which is the better choice for you and your family? My wife raised her kids by herself (she wasn't married to me at the time). Could she find time to program when her babies needed attention? My dad's career didn't go where he wanted it to, in part because he felt it was important to be home for dinner every night. Would I have turned out differently if he hadn't?  I don't have any way to evaluate that.

We each make our choices. I have to respect that some people will choose to work, and others will choose to spend their limited time on other things.  I can't see that either choice is "better" in any objective sense.

Dave Hoover

unread,
Dec 14, 2010, 10:14:08 AM12/14/10
to software_cr...@googlegroups.com
True that.

For me, I sacrificed neither time with my family, nor time at work. Instead, I sacrificed sleep. (Which impact family and work). It was a tenuous balancing act that I'm still walking.


On Tue, Dec 14, 2010 at 8:53 AM, Jerry Andrews <jerryd...@gmail.com> wrote:
Everyone makes decisions about their priorities.  When you're raising kids, they often want time that single people can devote to programming.  If you choose to program instead of giving them that time, it's a choice you are free to make, but others will prioritize differently. Who's to say which is the better choice for you and your family? My wife raised her kids by herself (she wasn't married to me at the time). Could she find time to program when her babies needed attention? My dad's career didn't go where he wanted it to, in part because he felt it was important to be home for dinner every night. Would I have turned out differently if he hadn't?  I don't have any way to evaluate that.

We each make our choices. I have to respect that some people will choose to work, and others will choose to spend their limited time on other things.  I can't see that either choice is "better" in any objective sense.

--

Pablosan

unread,
Dec 14, 2010, 11:17:23 AM12/14/10
to software_craftsmanship
I actually have a family and still make time for coding for fun. It is
not an easy balance, and I'm sure I haven't found the right balance.
It's hard, but important enough to my career that I look for ways to
squeeze it in.

Jussi Mononen

unread,
Dec 14, 2010, 3:24:52 PM12/14/10
to software_cr...@googlegroups.com
>> Especially for those of us with kids :)  Extra time available for
>> programming goes out the window for people with families.
>
> I actually have a family and still make time for coding for fun. It is
> not an easy balance, and I'm sure I haven't found the right balance.
> It's hard, but important enough to my career that I look for ways to
> squeeze it in.

Ditto. I just have less time for coding @ home. But that is ok, I
guess and hope that my time with code and other related areas will
grow at the same time as my kids grow older. Thank god my $work allows
me to have some slack that I can use for my craftsman journey.

--
"Progress doesn't come from early risers — progress is made by lazy
men looking for easier ways to do things." - Robert. A. Heinlein

Robert Martin

unread,
Dec 14, 2010, 10:32:18 PM12/14/10
to software_cr...@googlegroups.com
In 1988 I joined a startup company.  We were all going to make a trillion dollars!  All we had to do was work really really hard for a year or two and then we'd be rich, rich, rich.  My boss told me: "It's not the quantity of time you spend with your family, it's the _quality_".  

What a load of horse-apples!  Here's a tip:  Your family needs quality _and_ quantity!  A professional is not someone without a family life.  A professional struggles to keep both profession and family in balance. And, believe me, family members see that struggle, and learn from it.  There can hardly be a better role model for children than to see their parents working at that balancing act.

But this is not a simple one-sided argument. There are 168 hours in a week.  If you manage to spend only 40 on your career; then you have a job and not a profession; and in software you will be outclassed by your colleagues.  Again, you can be sure that family members will take note of that.  When rainy days come, as they always do, do you want your family wondering why you didn't work harder on their behalf to remain competitive?

Your point about a single-parent is valid.  Raising both children and a profession by yourself is very difficult.  The movie "The Pursuit of Happiness" tells the story of just how hard that is.  Unfortunately, his story is not the way that most single-parent homes turn out.  Single-parent homes are far more likely to live below the poverty line than two-parent homes.  


On Dec 14, 2010, at 19:08 , software_crafts...@googlegroups.com wrote:


     
    Everyone makes decisions about their priorities. When you're raising kids,
    they often want time that single people can devote to programming. If you
    choose to program instead of giving them that time, it's a choice you are
    free to make, but others will prioritize differently. Who's to say which is
    the better choice *for you and your family*? My wife raised her kids by

    herself (she wasn't married to me at the time). Could she find time to
    program when her babies needed attention? My dad's career didn't go where he
    wanted it to, in part because he felt it was important to be home for dinner
    every night. Would I have turned out differently if he hadn't? I don't have
    any way to evaluate that.
     
    We each make our choices. I have to respect that some people will choose to
    work, and others will choose to spend their limited time on other things. I
    can't see that either choice is "better" in any objective sense.

    ----
    Robert C. Martin (Uncle Bob) | uncl...@cleancoder.com
    Uncle Bob Consulting LLC.    | @unclebobmartin
    847.922.0563                 | web: objectmentor.com




    Joel Helbling

    unread,
    Dec 15, 2010, 12:22:25 AM12/15/10
    to software_craftsmanship
    At one point a few years ago, I was a telecommuting programmer for a
    dot-com startup, a single father, and I was homeschooling my son.
    Three big jobs, and I never felt that I was doing decently at more
    than one of them at any given time. Two things would slide while the
    third enjoyed focus for a while. Over time I have come to the
    conclusion that this may be alright.

    The idea that there is some perfect balance which incorporates of all
    our objectives and priorities --optimizing each for robust growth-- is
    silly. If this were so, we could set it and forget it, and everything
    in our lives would hum along nicely. But we are not baking cupcakes
    or stamping license plates here, we are raising children and growing
    as software craftsmen. Those two pursuits certainly benefit from
    foresight and planning, but the fact is that to be effective at each,
    we must maintain an adaptive stance and a willingness to respond to
    change.

    I'll be honest; there are times in my life when I feel rather blase
    about programming. I have learned to not be too concerned about these
    times. They pass. Often these are times with rich experiences in my
    relationships; conversations and shared experiences with loved ones
    which I wouldn't miss for the world. Naturally, in these times I
    still have to earn a living. And I remain committed to practicing and
    growing as a software craftsman. It just takes a bit more grit for
    what feels like less return.

    And at other times my appetite for practice and craft return with such
    energy that I am easily absorbed for 14 hours at a time, at the end of
    which I suddenly discover that I am parched, starving and I have to
    pee like a racehorse. I like times like those; my learning and skill
    re-accelerates and it's loads of fun. And in those times I make a
    point to periodically break away from all that fascinating stuff in
    order to connect with my family and be a regular human for a while
    every day.

    The cycles used to exasperate me. Not so much anymore. I'm thinking
    they may be part of the natural order of things, and if that's the
    case, then I believe they are good and beneficial for me when handled
    appropriately. If you love your family, you will invest in them. And
    If you really love developing software, you'll continue to pursue it
    even in the times when you feel like you're doomed to suck at it.

    On Dec 14, 10:32 pm, Robert Martin <uncle...@cleancoder.com> wrote:
    > In 1988 I joined a startup company.  We were all going to make a trillion dollars!  All we had to do was work really really hard for a year or two and then we'd be rich, rich, rich.  My boss told me: "It's not the quantity of time you spend with your family, it's the _quality_".  
    >
    > What a load of horse-apples!  Here's a tip:  Your family needs quality _and_ quantity!  A professional is not someone without a family life.  A professional struggles to keep both profession and family in balance. And, believe me, family members see that struggle, and learn from it.  There can hardly be a better role model for children than to see their parents working at that balancing act.
    >
    > But this is not a simple one-sided argument. There are 168 hours in a week.  If you manage to spend only 40 on your career; then you have a job and not a profession; and in software you will be outclassed by your colleagues.  Again, you can be sure that family members will take note of that.  When rainy days come, as they always do, do you want your family wondering why you didn't work harder on their behalf to remain competitive?
    >
    > Your point about a single-parent is valid.  Raising both children and a profession by yourself is very difficult.  The movie "The Pursuit of Happiness" tells the story of just how hard that is.  Unfortunately, his story is not the way that most single-parent homes turn out.  Single-parent homes are far more likely to live below the poverty line than two-parent homes.  
    >
    > On Dec 14, 2010, at 19:08 , software_crafts...@googlegroups.com wrote:
    >
    >
    >
    >
    >
    >
    >
    >
    >
    > > Jerry Andrews <jerrydandr...@gmail.com> Dec 14 08:53AM -0600 ^
    >
    > > Everyone makes decisions about their priorities. When you're raising kids,
    > > they often want time that single people can devote to programming. If you
    > > choose to program instead of giving them that time, it's a choice you are
    > > free to make, but others will prioritize differently. Who's to say which is
    > > the better choice *for you and your family*? My wife raised her kids by
    > > herself (she wasn't married to me at the time). Could she find time to
    > > program when her babies needed attention? My dad's career didn't go where he
    > > wanted it to, in part because he felt it was important to be home for dinner
    > > every night. Would I have turned out differently if he hadn't? I don't have
    > > any way to evaluate that.
    >
    > > We each make our choices. I have to respect that some people will choose to
    > > work, and others will choose to spend their limited time on other things. I
    > > can't see that either choice is "better" in any objective sense.
    >
    > ----
    > Robert C. Martin (Uncle Bob) | uncle...@cleancoder.com

    Cory Foy

    unread,
    Dec 15, 2010, 10:48:20 AM12/15/10
    to software_cr...@googlegroups.com
    Hi Bob,


    On Dec 14, 2010, at 22:32, Robert Martin <uncl...@cleancoder.com> wrote:

    > But this is not a simple one-sided argument. There are 168 hours in a week. If you manage to spend only 40 on your career; then you have a job and not a profession; and in software you will be outclassed by your colleagues. Again, you can be sure that family members will take note of that. When rainy days come, as they always do, do you want your family wondering why you didn't work harder on their behalf to remain competitive?

    It's rare for a statement to take me to this level, but that's a bunch of horsecrap. I can only hope you were being sarcastic.

    There is no reason for anyone to sacrifice their family time for a profession, a career, or a passion. Absolutely none. It comes out of our sick US culture that says that we have to punch a clock and that anything outside of that is on our own.

    In other words, if you want to grow, your only option is to do that outside of "work" since "work" is not a place for learning, exploration and growth.

    I get that some people work in places which don't value learning, and to change their company they have to spend time outside of work to do that. But that should be an exception, not a rule. We should be holding up those organizations which value their employees and understand that productivity and innovation can be fostered during the work week.

    My family will never wonder why I "didn't work harder" because they come first. Does that mean that I'm not able to do the things I want, and mean that I don't know thngs as well as others? Damn right.

    This obsession that to be the best at what you do requires sacrifice of your family - I don't buy it, because we aren't addressing the root cause of what leads to not being able to grow during your day job.

    Should you have a passion outside of your job? Absolutely. Should you have the passion to want to do things outside of your comfort area? Absolutely! Should you sacrifice family time to do so?

    I would say with great caution, and with buy-in from your family and a definitive goal in mind. But outside of that, so what if I'm outclassed? So what if my colleague has learned 20 languages this year and I've only been able to play with one or two? Am I still capable of delivering value to my customers in the best way possible? You better darn believe it. And I have something even greater - many, many memories of spending time with my kids at museums, parks and at home.

    You *can* be a craftsman and a family person. I firmly reject the notion that you have to sacrifice your family for the love of your craft, and that if you don't you'll be left on the streets in the rain with your family shaking their heads saying, "Oh Dad, why, oh, why didn't you spend more time working than with us?"

    Cory

    Jeff Langr

    unread,
    Dec 15, 2010, 12:02:59 PM12/15/10
    to software_cr...@googlegroups.com
    Hi Cory,

    > You *can* be a craftsman and a family person.

    Indeed.

    > I firmly reject the notion that you have to sacrifice your family for the love of your craft, and that if you
    > don't you'll be left on the streets in the rain with your family shaking their heads saying, "Oh Dad, why,
    > oh, why didn't you spend more time working than with us?"

    An extra hour each weeknight to keep updated can be enough. Put the
    kids to bed, spend some time with the wife, then go learn for an hour.
    I did this when my kids were younger, learning and writing after 10pm.
    I didn't sacrifice my family.

    I know of programmers (including a good personal friend) who spent
    months, and some close to a year, out of work. They weren't afforded
    any real extra opportunities to grow their career while at work, and
    unimaginatively figured that their work would keep them relevant.
    Unemployment is very hard on a family, and very real in smaller
    markets--and in some cases, the only escape is *real* sacrifice of
    traveling to a job or moving.

    It's up to each individual to decide, but I believe doing 40 hours of
    unrewarding/non-career-forwarding work and then refusing to invest any
    additional time is a poor choice. I suspect few posting here would
    ever make that choice.

    Jeff

    Langr Software Solutions
    http://langrsoft.com
    http://agileinaflash.com

    Jason L. van Brackel

    unread,
    Dec 15, 2010, 12:11:55 PM12/15/10
    to software_cr...@googlegroups.com
    Cory,

    I can second Jeff and Uncle Bob on this one. I found out I was being
    laid off on 3 December. I've taken a route similar to what Jeff
    describes over the last several years. Because of my time spent
    outside of the 9 to 5, I am very marketable. I finish my current job
    today. I start another tomorrow. I have two boys and spend time with
    them and my wife each day. One can do both, but to expect to
    significantly and competitively grow within the confines of the 9 to 5
    is likely unreasonable.

    Jason

    Jason L. van Brackel
    ja...@vanbrackel.net

    Jason L. van Brackel

    unread,
    Dec 15, 2010, 12:18:35 PM12/15/10
    to software_cr...@googlegroups.com
    Let me append this a little. Cory I do absolutely agree we have a
    culture problem and that many companies care little for the value of
    continual self improvement. It's very difficult to get bottomline
    companies to see the ROI on learning and other non-billable
    activities. Nonetheless, we who would aspire to master craftsmanship
    must rise above the circumstances of the job.

    And I too see the family as very important. I have often put
    self-improvement time aside for some extra floor time with the boys.

    I just didn't want you to feel I was just piling on, because we do
    agree to a certain level.

    Jason

    Jason L. van Brackel
    ja...@vanbrackel.net

    Sidu Ponnappa

    unread,
    Dec 15, 2010, 3:14:23 PM12/15/10
    to software_cr...@googlegroups.com
    I think the conversation about one's work-life balance has gone
    somewhat to extremes, but I would nevertheless like to offer an
    additional perspective.

    From what I've seen, it is sometimes very hard for those in the first
    world to understand the complete lack of social safety nets in the
    third world (where I live and work). This lack of safety nets
    effectively forces many of us to focus on stable, successful careers
    to a degree verging on obsession. We have to fend for ourselves, our
    children and our parents. Nothing is provided by the state - we have
    to plan for our own healthcare, our children's education and often our
    parents healthcare as well. A single serious illness can force the
    average middle class family to liquidate all their assets to pay for
    healthcare, possibly bankrupting them. The average savings rate here
    hovers around 25%, and with good reason. Sabbaticals are almost
    unheard of, and are considered career killers; the only exception in
    my experience was ThoughtWorks (where I used to work), but then that's
    a fundamentally more friendly place to work than most.

    Remaining skilled and eminently employable in such an environment is
    absolutely essential. I'm not suggesting that families or personal
    considerations should be ignored - just that things aren't the same
    everywhere, and while a balance is essential, the point where that
    balance lies may move based on the situation.

    Indeed, in the case of much of the low cost software services industry
    in India (which employs the vast majority of our engineers), a little
    study might offer a path out of a mind-numbing job where you're forced
    to work twelve hour days to compensate for incompetent management,
    badly written software and (consequently) irate clients while earning
    a pittance.

    Best,
    Sidu.
    http://c42.in

    Robert Martin

    unread,
    Dec 16, 2010, 1:56:14 AM12/16/10
    to software_cr...@googlegroups.com
    Cory:

    I think you'd better go back and read what I wrote.  I was not suggesting that you sacrifice your family for your career.  I was suggesting that an investment in your career is one of the ways you support your family.  I was also suggesting that 40 hours per week is not a serious investment.
       
      There is no reason for anyone to sacrifice their family time for a profession, a career, or a passion. Absolutely none.
    Tell that to the troops.
    Tell that to the long-haul truck drivers.  
    Tell that to the fishermen catching our food.  
    Tell that to the hunter who's returning empty handed for the third day in a row.
    Tell that to anybody who's out looking for a job right now.  
      It comes out of our sick US culture that says that we have to punch a clock and that anything outside of that is on our own.
    It comes out of the need to survive and compete.  It has nothing to do with punching a clock.

      In other words, if you want to grow, your only option is to do that outside of "work" since "work" is not a place for learning, exploration and growth.
    You can learn at work.  Of course you can.  But you will learn what work wants to teach you not necessarily what is best for your career.  You _don't_ want to entrust your career to your employer!
       
      I get that some people work in places which don't value learning, and to change their company they have to spend time outside of work to do that. But that should be an exception, not a rule.
    Why?  

      We should be holding up those organizations which value their employees and understand that productivity and innovation can be fostered during the work week.
    Nice idea.  But when the crunch comes all those ideals evaporate.  Our employers are not our mommies and they are not on our side.  Employers are for themselves; any other view is naive.  We can have a good relationship with an employer so long as that relationship is mutually beneficial.  When either employer or employee decides that the benefit is not mutual, the relationship is terminated.  
       
      My family will never wonder why I "didn't work harder" because they come first. Does that mean that I'm not able to do the things I want, and mean that I don't know thngs as well as others? Damn right.
    I don't understand that statement.  If you are saying that you sacrifice some learning time for your family, well of course you do.  But I imagine that you also make time for your career.  After all, the time it took to write this letter came from somewhere. 
      This obsession that to be the best at what you do requires sacrifice of your family - I don't buy it, because we aren't addressing the root cause of what leads to not being able to grow during your day job. 
    Everything requires the sacrifice of something else.  You could spend much more time with your family if you didn't work.  Growing during your day job is possible; but constrained.  Your day job may not be taking you in the direction you think best.  To get a better job, you may need to go to night school.
      Should you have a passion outside of your job? Absolutely. Should you have the passion to want to do things outside of your comfort area? Absolutely! Should you sacrifice family time to do so?
    Again, everything you choose to do means that something else gets sacrificed.  You'll have to borrow time from other places to get it done.  Inevitably, this means taking some time from your family.   That doesn't mean that you don't spend time with your family, of course you do.  But it might mean that you do your homework while your kids are doing theirs.  
      I would say with great caution, and with buy-in from your family and a definitive goal in mind. But outside of that, so what if I'm outclassed? So what if my colleague has learned 20 languages this year and I've only been able to play with one or two? Am I still capable of delivering value to my customers in the best way possible? You better darn believe it.
    What makes you so sure?  You don't think people have been out-competed for jobs before?  You don't think that complacent employees have found themselves on the street because they couldn't compete with others?  What makes you so sure that you can perform as well as others?  Are you investing the time necessary to be sure of it?
      And I have something even greater - many, many memories of spending time with my kids at museums, parks and at home. 
    And you should build more memories like that.  It would be terrible to have to give up all that lovely family time. But if you want to keep having care free time with your family then take care of your career.
       
      You *can* be a craftsman and a family person.
    Of course you can.  
      I firmly reject the notion that you have to sacrifice your family for the love of your craft, and that if you don't you'll be left on the streets in the rain with your family shaking their heads saying, "Oh Dad, why, oh, why didn't you spend more time working than with us?"
    You may, of course, reject anything you like.  But the truth remains that it is your career that enables that rich family life.  So if you like that family life, you'd better take care of your career.  


    ----
    Robert C. Martin (Uncle Bob) | uncl...@cleancoder.com

    Robert Martin

    unread,
    Dec 16, 2010, 2:02:31 AM12/16/10
    to software_cr...@googlegroups.com
    Sidu,

    Nicely put.  Let me just add that given the current global economic situation anyone who thinks that the social saftey nets are actually safe is missing a few marbles.  Safety nets are promises made by politicians who, having been elected because of those promises, leave their fulfillment to others.

    Note also the effect that the supposed safety nets have on the need to excel ...


    On Dec 15, 2010, at 20:00 , software_crafts...@googlegroups.com wrote:

    J. B. Rainsberger

    unread,
    Dec 16, 2010, 8:42:01 AM12/16/10
    to software_cr...@googlegroups.com
    On Wed, Dec 15, 2010 at 12:11, Jason L. van Brackel <ja...@vanbrackel.net> wrote:

    I can second Jeff and Uncle Bob on this one.  I found out I was being
    laid off on 3 December.  I've taken a route similar to what Jeff
    describes over the last several years.  Because of my time spent
    outside of the 9 to 5, I am very marketable.  I finish my current job
    today.  I start another tomorrow.  I have two boys and spend time with
    them and my wife each day.  One can do both, but to expect to
    significantly and competitively grow within the confines of the 9 to 5
    is likely unreasonable.

    In general, no. In 2001 I told IBM that I would no longer work overtime. I didn't. I still learned and grew at work, using a simple formula: don't do stupid things at work. Whenever the process forced me to do something repetitive, pointless, and stupid, I found a way to automate it. That process allowed me to work and grow. In addition, I performed better than a nontrivial number of people around me, and I converted that extra productivity into slack, which I used to learn, rather than converting it into near-heroic levels of achievement that didn't translate into near-heroic levels of salary.

    In short, I learned and grew within the 9 to 5, and that served me pretty damn well.
    -- 
    J. B. (Joe) Rainsberger :: http://www.jbrains.ca :: http://blog.thecodewhisperer.com
    Diaspar Software Services :: http://www.diasparsoftware.com
    Author, JUnit Recipes
    2005 Gordon Pask Award for contribution to Agile practice :: Agile 2010: Learn. Practice. Explore.

    George Dinwiddie

    unread,
    Dec 16, 2010, 11:54:18 AM12/16/10
    to software_cr...@googlegroups.com
    Joel

    On 12/15/10 12:22 AM, Joel Helbling wrote:
    > At one point a few years ago, I was a telecommuting programmer for a
    > dot-com startup, a single father, and I was homeschooling my son.
    > Three big jobs, and I never felt that I was doing decently at more
    > than one of them at any given time. Two things would slide while the
    > third enjoyed focus for a while. Over time I have come to the
    > conclusion that this may be alright.
    >
    > The idea that there is some perfect balance which incorporates of all
    > our objectives and priorities --optimizing each for robust growth-- is
    > silly. If this were so, we could set it and forget it, and everything
    > in our lives would hum along nicely. But we are not baking cupcakes
    > or stamping license plates here, we are raising children and growing
    > as software craftsmen. Those two pursuits certainly benefit from
    > foresight and planning, but the fact is that to be effective at each,
    > we must maintain an adaptive stance and a willingness to respond to
    > change.

    Yes, it's a dynamic balance, not a static one. It always takes attention.

    - George

    --
    ----------------------------------------------------------------------
    * George Dinwiddie * http://blog.gdinwiddie.com
    Software Development http://www.idiacomputing.com
    Consultant and Coach http://www.agilemaryland.org
    ----------------------------------------------------------------------

    Frank Tuma

    unread,
    Dec 16, 2010, 12:05:52 PM12/16/10
    to software_cr...@googlegroups.com
    Anybody have any helpful tools/tricks for monitoring this delicate
    balance? I normally just "feel" that one area is lacking, so I shift
    focus for a while -- a very un-disciplined approach. I just started
    reading "Apprenticeship Patterns" and it seems like it will be a good
    start.

    -Frank

    Corey Haines

    unread,
    Dec 16, 2010, 1:20:49 PM12/16/10
    to software_cr...@googlegroups.com
    :) MercuryApp.com ? This would be a great app for it.

    Sign up for an invitation, and I'll get you one. I think this is a
    great use-case for the application.

    -Corey

    --
    http://www.coreyhaines.com
    The Internet's Premiere source of information about Corey Haines

    Paul Pagel

    unread,
    Dec 16, 2010, 2:28:05 PM12/16/10
    to software_cr...@googlegroups.com
    Frank,

    I often practice/learn using the pomodora technique(http://www.pomodorotechnique.com/) and the mac pomodoro app.  Then will do a quick retro at the end of the week to see how many hours I spent.  I use it to make sure I am spending enough time, but the opposite is easily tracked as well.  It really comes down to a gut feeling of what I should be spending, just making sure I am conscious of the sacrifices I am making and the direction I am heading.  And I like measuring things.

    Paul

    Peter Bell

    unread,
    Dec 16, 2010, 2:34:52 PM12/16/10
    to software_cr...@googlegroups.com
    +1 for poms. I work on a lot of different projects a year and write articles, present at conferences and still put aside time for learning (and running business, doing accounts, etc). I find poms plus time tracking (I use textmate and transfer into Harvest most evenings) a great way to track time as well as a wonderful tool for helping with focus, starting large projects, improving task level estimation, etc.

    I check that my billable % of time stays above 50% (usually I like 60%) every week and check once a week to ensure that I hit my learning targets (10% for pure learning, closer to 30% if you include presentations, prep for them, articles, meetups, etc).

    Best Wishes,
    Peter

    tal...@gmail.com

    unread,
    Dec 16, 2010, 10:33:38 PM12/16/10
    to software_cr...@googlegroups.com
    I've faced this too, but don't have any foolproof tips. What worked for me is having short term attainable goals for one of the things that I'm doing.
    For example, I'm training for a half marathon right now (it's in January). Till then, I find myself devoting less time to my other interests. Once I complete the half marathon, I know running will become less important (not that I'll stop running, but it'll be on autopilot, will be shorter runs, and I won't be thinking about it all the time). I'll pick up the next goal and work towards that.

    This used to be frustrating initially - when I found that it's not possible to spend equal amounts of time and pay attention to each and every small detail for every activity. Now I've found the goal oriented approach to be much more sustainable - as long as the other activities are not completely ignored. I keep track of the other activities by doing a review every weekend. Setting reminders helps (this won't work for most people related stuff, of course, but it works for personal learning).

    Hope this helps.

    - Hrish
    You can't be normal and expect abnormal returns - Jeffrey Pfeffer
    ------------------------------------------
    http://www.deepinspace.net
    ------------------------------------------

    Robert Martin

    unread,
    Dec 17, 2010, 1:09:37 AM12/17/10
    to software_cr...@googlegroups.com

    On Dec 16, 2010, at 19:02 , software_crafts...@googlegroups.com wrote:

      In short, I learned and grew within the 9 to 5, and that served me pretty
      damn well.
    And then you wrote a book.  No extra hours in that.

    I think refusing overtime at IBM was a wise choice.  And, yes, with experience you can learn to work more efficiently -- no doubt about it. 9-5 SHOULD serve you well at your job.  If you have to work more than 40 hours for your employer on a regular basis, something is wrong.  

    But, J.B., are you saying that you didn't read books at home, that you didn't write "fun" code at home, that you didn't spend time at home improving your career?

    Robert Martin

    unread,
    Dec 17, 2010, 1:15:38 AM12/17/10
    to software_cr...@googlegroups.com
    On Dec 16, 2010, at 19:02 , software_crafts...@googlegroups.com wrote:

      Anybody have any helpful tools/tricks for monitoring this delicate
      balance? 
    Ask your family.  Whenever I needed some extra time to work on one of my home projects I'd negotiate the time with my wife.  She was always very helpful about this.  I usually got the hours between 10:30 and midnight.  

    Jason Gorman

    unread,
    Dec 17, 2010, 9:50:46 AM12/17/10
    to software_craftsmanship
    I think there's a very interesting point being made here, and thanks
    for highlighting it.

    The mythical 10,000 hours of dedicated practice it takes to become a
    true master of something seems pretty challenging IF you're starting
    later in life. It's one reason why no good piano teacher worth his or
    her salt would take me on as a 40-yr-old student.

    Not only because I'd be 60 by the time I was a maestro pianist, but
    because as a 40-yr-old I have the crippling commitments of of your
    average modern 40-yr-old, which leaves little time for becoming a
    concert pianist.

    Of course, I COULD re-arrange my life to make the time. And if I did
    that, it must mean that I really, really want to be a concert pianist
    - more than anything else. Which is why I won't do it. More than
    anything else, I want to be a software developer. I kind of enjoy it.
    It's not a burden and rarely feels like work, so I don't notice how
    much time I'm putting in. When I have kids, I may well feel
    differently about it. I may be even more keen to spend time
    programming, if other people's kids are anything to go by ;)

    But there's a serious point here. If the learning process starts early
    in life, like it does for many other complex practical disciplines
    like speaking foreign languages, playing sport, ballet dancing or
    playing musical instruments, then the 10,000 hours is far more
    achievable.

    Which is one reason hwy increasingly I find myself focusing my
    thoughts on programming in school and university. When I was a kid,
    lots of today's best programmers cut their teeth on Sinclair
    Spectrums, Commodore 64s and Acorn Micros, spending hour after hour
    programming games and wotnot in their bedrooms. Those days are gone,
    alas. Kids spend thousands of hours playing computer games written by
    the kids who learned to program in the 80's when you had to program to
    operate a computer.

    We need to get that back somehow. And Programming and software
    development needs to be cut a clear educational path, distinct from
    computer science and mathematics, where's it's treated as practical
    skill like playing the piano and where education is much more
    vocational from ages 16 onwards. A 21 yr-old who's been coding for 2
    hours a day since she was 11 would have 6,000 of her 10,000 hours. If
    she served a full-time apprenticeship from age 18-21, she could quite
    possibly have achieved 10,000 hours.

    There's still hope for us old-timers, of course. But making the time
    requires much greater and more challenging sacrifices. In the long
    term, the next generation of software craftsmen we desperately need
    tod rive our information economies is not going to come from our
    generation in the majority of cases. The challenge is just to great.

    Jason Gorman
    www.codemanship.com


    On Dec 9, 12:25 pm, Sidu Ponnappa <ckponna...@gmail.com> wrote:
    > Hello everyone,
    >
    > When interviewing programmers in India, a fairly constant response to
    > 'What personal projects do you hack on in your spare time?' that I've
    > received has been 'I don't take my work home,' 'I prefer to maintain a
    > work life balance' or 'I expect the company to pay for professional
    > training during work hours.'
    >
    > A recent comment along similar lines to a three year old blog post of
    > mine on ThoughtWorks' recruiting workflow led me to respond with a
    > blog post (http://x.c42.in/hhF2Kl). I would be interested to know
    > both your opinions on the subject, and also if similar patterns are
    > common in other parts of the world too.
    >
    > Best,
    > Sidu.http://c42.in

    Jon Jagger

    unread,
    Dec 17, 2010, 10:24:15 AM12/17/10
    to software_cr...@googlegroups.com
    On Fri, Dec 17, 2010 at 2:50 PM, Jason Gorman <goo...@parlezuml.com> wrote:
    > I think there's a very interesting point being made here, and thanks
    > for highlighting it.
    >
    > The mythical 10,000 hours of dedicated practice it takes to become a
    > true master of something seems pretty challenging IF you're starting
    > later in life.

    I'm not quite sure what you mean by mythical here.
    My understanding is there seems to be good consensus on 10,000 hours
    of the right kind of practice IF you want to become a world class
    expert. But there's nothing wrong with simply wanting to get better,
    or even to simply make a start, rather than immediately aim for being
    world class.

    > It's one reason why no good piano teacher worth his or
    > her salt would take me on as a 40-yr-old student.
    > Not only because I'd be 60 by the time I was a maestro pianist, but
    > because as a 40-yr-old I have the crippling commitments of of your
    > average modern 40-yr-old, which leaves little time for becoming a
    > concert pianist.

    So don't aim for becoming a concert pianist. Simply aim to get a bit better.
    A good piano teacher would probably welcome someone with enthusiasm to
    get better - regardless of their age. Someone starting to learn the
    piano who is 40 years old is likely to have that enthusiasm simply
    because they're 40 and they wouldn't be asking otherwise!

    Cheers
    Jon

    Alastair Smith

    unread,
    Dec 17, 2010, 10:56:18 AM12/17/10
    to software_cr...@googlegroups.com
    A good piano teacher would probably welcome someone with enthusiasm to get better 

    Agreed.  I'm a keen bassoon player, and my last three teachers have all said they much prefer teaching adults over kids, simply because they are there out of choice and want to learn and improve rather than being dumped there by their parents.  Equally, I've enjoyed my lessons much more in the last three years, partly because I've taken ownership of my development as a player and partly because my teachers are more enthusiastic.  As a result, my orchestral playing has improved, and I even plucked up the courage to put on a solo recital a couple of months ago.  

    In the last two years or so, I have started to take the same approach with my craft, and I now enjoy development much more than I did before.  I'm not aiming to be a concert pianist just yet (I'm still early into my career), but I do aim to learn something from each problem I tackle, and thereby level up a little at a time.  

    Alastair

    --
    Alastair Smith MEng, MBCS, DipABRSM
    http://www.alastairsmith.me.uk/


    George Dinwiddie

    unread,
    Dec 17, 2010, 11:02:14 AM12/17/10
    to software_cr...@googlegroups.com
    Jason,

    On 12/17/10 9:50 AM, Jason Gorman wrote:
    > I think there's a very interesting point being made here, and thanks
    > for highlighting it.
    >
    > The mythical 10,000 hours of dedicated practice it takes to become a
    > true master of something seems pretty challenging IF you're starting
    > later in life. It's one reason why no good piano teacher worth his or
    > her salt would take me on as a 40-yr-old student.

    I think J.B.'s point is important here. You *can* learn while working,
    if you pay attention to what you're doing and not just go through the
    motions. (Uncle Bob's point that you might not be able to make it
    /only/ at work is also valid.) At 6 hours a day, 10,000 hours is less
    than 7 years working time. And you can be pretty damn good before
    you're a true master.

    > There's still hope for us old-timers, of course. But making the time
    > requires much greater and more challenging sacrifices. In the long
    > term, the next generation of software craftsmen we desperately need
    > tod rive our information economies is not going to come from our
    > generation in the majority of cases. The challenge is just to great.

    It's a tautology that "the next generation ... is not going to come from
    our generation." And it's great that you're reaching out to younger people.

    But there's no reason anyone can't become a decent craftsman. I worked
    with a client who had developers writing crap, and who didn't want to
    learn anything new. The scrummaster said "they're too old to learn."
    BS! They were a decade younger than me.

    Every journey starts with a single step, and it starts where you are.
    Don't worry too much where the final destination will be. Take that
    step and enjoy the path along the way.

    Josmas Flores

    unread,
    Dec 17, 2010, 11:17:22 AM12/17/10
    to software_cr...@googlegroups.com
    on a different note:

    > When I was a kid,
    > lots of today's best programmers cut their teeth on Sinclair
    > Spectrums, Commodore 64s and Acorn Micros, spending hour after hour
    > programming games and wotnot in their bedrooms. Those days are gone,
    > alas. Kids spend thousands of hours playing computer games written by
    > the kids who learned to program in the 80's when you had to program to
    > operate a computer.
    >
    > We need to get that back somehow.

    I wouldn't be so sure that those days are gone. A quick look at
    scratch's homepage (http://scratch.mit.edu/) shows almost 1.5 million
    downloads available, which means that kids all over the globe are
    making little games and other apps with that software (which is not
    the only system available out there to do this kind of thing anyway).
    Gaming is very powerful and it is not all about playing... think about
    mods for instance http://en.wikipedia.org/wiki/Mod_(computer_gaming)

    Sure it is different from the times we used to type code listings from
    magazines into our 8-bits machines plugged in to the telly, but aren't
    we all about feedback nowadays? what better than uploading your game
    to the internet for anyone to grab? you are not only 'programming'
    now, you are actually dealing with 'competitors', getting 'feedback
    from customers', and a lot more; obviously at a level that most of
    these things don't really matter... or do they?

    cheers,
    Jos

    Jason Gorman

    unread,
    Dec 17, 2010, 1:56:33 PM12/17/10
    to software_craftsmanship
    A consensus among Malcom Gladwell? ;) Outliers is folk science (just
    like his other books), but a reasonable figure to aim for based on
    common sense, all the same

    I totally agree about aiming to get better. All this talk of 10,000
    hours (urban myth or not) is guaranteed to alienate the folk for whome
    100 hours of focused practice would elevate their code from "crappy"
    to "not as crappy", and 1,000 hours practice might lift it to
    "reasonably good for many purposes".

    But we were discussing "mastery", as I understood it, and the whole
    Malcom Gladwell Outliers idea applied to programming. Where will the
    next generation of master programmers come from? Indeed, some of them
    are probably already working as programmers and will make the space to
    do it. But my point is that kids have a much better chance of finding
    that time and energy, which is why a portion of my focus is shifting
    to schools and colleges and what programming experience kids can get.

    But I'm 100% with you on the value of focusing on getter better
    wherever you're starting from, and I worry about the effect on
    external perceptions of all this talk of devotion and sacrifice and
    mastery. If every working programmer got 100 hours of TDD, refactoring
    and OO design practice over a year, it _would_ make a difference to
    the quality of their code.

    Jason Gorman

    unread,
    Dec 17, 2010, 2:02:39 PM12/17/10
    to software_craftsmanship
    I agree there are music teachers who will very happily take on mature
    students. But when we're talking about the best of the best of the
    cream of the elite of the crop (etc), most tutors will have a very
    strong preference for children. Can you think of many examples of
    someone who became a world-renowned concert pianist after taking the
    instrument up later in life?

    On the other hand, getting _good_ at playing an instrument and
    enjoying the process of getting better year on year applies at any
    age, for sure. And there are many teachers who get a real kick out of
    helping students to do that, just not the truly elite teachers. Our
    mistake would be to confuse the need for one with the futility of the
    other. "I'm not going to be the best guitar player in the world,
    therefore there's no point in finding 20 mins a day to practice my
    scales".

    I'm never going to be the world's greatest software developer, but I
    still believe that an hour or two a day of focused, dedicated, mindful
    practice is definitely worth it.

    On Dec 17, 3:56 pm, Alastair Smith <alast...@alastairsmith.me.uk>
    wrote:
    > > A good piano teacher would probably welcome someone with enthusiasm to get
    > > better
    >
    > Agreed.  I'm a keen bassoon <http://en.wikipedia.org/wiki/Bassoon> player,
    > and my last three teachers have all said they *much* prefer teaching adults
    > over kids, simply because they are there out of choice and want to learn and
    > improve rather than being dumped there by their parents.  Equally, I've
    > enjoyed my lessons much more in the last three years, partly because I've
    > taken ownership of my development as a player and partly because my teachers
    > are more enthusiastic.  As a result, my orchestral playing has improved, and
    > I even plucked up the courage to put on a solo recital a couple of months
    > ago.
    >
    > In the last two years or so, I have started to take the same approach with
    > my craft, and I now enjoy development much more than I did before.  I'm not
    > aiming to be a concert pianist just yet (I'm still early into my career),
    > but I do aim to learn something from each problem I tackle, and thereby
    > level up a little at a time.
    >
    > Alastair
    >
    > --
    > Alastair Smith MEng, MBCS, DipABRSMhttp://www.alastairsmith.me.uk/
    > > software_craftsma...@googlegroups.com<software_craftsmanship%­2Bunsu...@googlegroups.com>
    > > .
    > > For more options, visit this group at
    > >http://groups.google.com/group/software_craftsmanship?hl=en.- Hide quoted text -
    >
    > - Show quoted text -

    Jason Gorman

    unread,
    Dec 17, 2010, 2:04:31 PM12/17/10
    to software_craftsmanship
    I agree. You CAN work while learning, though the majority seem to
    learn very slowly that way, because after a while they're just
    retreading the same old ground - the old adage of someone having "ten
    years experience vs. one year's experience ten times". Dedicated,
    mindful practice is also necessary to ensure you work the muscles that
    your job isn't working :)

    Jason Gorman

    unread,
    Dec 17, 2010, 2:05:41 PM12/17/10
    to software_craftsmanship
    I think the interest in these new tools for learning/teaching
    programming is very encouraging, but one wonders how many of those 1.5
    million might be kids and how many are well-meaning parents or
    teachers. Are there any statistics on that?

    On Dec 17, 4:17 pm, Josmas Flores <josmasflo...@gmail.com> wrote:
    > on a different note:
    >
    > > When I was a kid,
    > > lots of today's best programmers cut their teeth on Sinclair
    > > Spectrums, Commodore 64s and Acorn Micros, spending hour after hour
    > > programming games and wotnot in their bedrooms. Those days are gone,
    > > alas. Kids spend thousands of hours playing computer games written by
    > > the kids who learned to program in the 80's when you had to program to
    > > operate a computer.
    >
    > > We need to get that back somehow.
    >
    > I wouldn't be so sure that those days are gone. A quick look at
    > scratch's homepage (http://scratch.mit.edu/) shows almost 1.5 million
    > downloads available, which means that kids all over the globe are
    > making little games and other apps with that software (which is not
    > the only system available out there to do this kind of thing anyway).
    > Gaming is very powerful and it is not all about playing... think about
    > mods for instancehttp://en.wikipedia.org/wiki/Mod_(computer_gaming)
    > > For more options, visit this group athttp://groups.google.com/group/software_craftsmanship?hl=en.- Hide quoted text -

    Erik Przekop

    unread,
    Dec 17, 2010, 2:33:29 PM12/17/10
    to software_craftsmanship
    Well put.

    I feel that I spend enough time with my family now, but I felt
    differently when my daughter was much younger. My main issue now is
    *forming the habit* of learning new things on my own time. Far too
    often I either don't put in the time, or spend it doing something for
    my employer, rather than myself. At SCNA 2010, I remember you saying
    something along the lines of "...[except in rare circumstances] I
    don't do anything I *have to* do after 5:00 P.M."

    It sounds like good advice, but I don't feel that I have formed the
    right habits to get the most out of this. Any thoughts on how to get
    into the groove of honing my craft for my own benefit? Maybe some
    criteria for choosing what to work on (or more appropriately, what to
    play with?)

    - E


    On Dec 16, 1:56 am, Robert Martin <uncle...@cleancoder.com> wrote:
    > Cory:
    >
    > I think you'd better go back and read what I wrote.  I was not suggesting that you sacrifice your family for your career.  I was suggesting

    ...

    Josmas Flores

    unread,
    Dec 18, 2010, 7:23:56 AM12/18/10
    to software_cr...@googlegroups.com
    wow, for a minute there you kicked me right back to school when I was
    questioned about having done the homework myself or having my older
    brother doing it for me. It was not nice then. still not nice now. Bit
    like that 'Head of Architecture' I used to work for, that wouldn't
    allow us to write unit test cause he thought it would make us feel
    good about the quality of the code, when we all knew how crappy
    developers we all were.

    Sure there aren't any statistics on that but, in my opinion, a bit of
    faith and trust in people/children's abilities would go a long way.
    Just an opinion!

    cheers,
    Jos

    Adrian Howard

    unread,
    Dec 18, 2010, 1:15:00 PM12/18/10
    to software_cr...@googlegroups.com

    On 17 Dec 2010, at 19:04, Jason Gorman wrote:

    > I agree. You CAN work while learning, though the majority seem to
    > learn very slowly that way, because after a while they're just
    > retreading the same old ground - the old adage of someone having "ten
    > years experience vs. one year's experience ten times".
    >
    > Dedicated,
    > mindful practice is also necessary to ensure you work the muscles that
    > your job isn't working :)

    Doesn't that depend on how you manage your career? :-)

    I know I've chosen to leave jobs where I've been doing the same thing again and moved to new jobs where I'll be doing something new that I need/want to learn.

    Personally - the skill levels I encounter seem much less to do with the number of hours people spend, and much more to do with how mindful people are about how they spend those hours.

    In particular I'm thinking of one developer I worked with years back who was - quite frankly - brilliant. He also was religious about only spending 35 hours a week in front of a computer. Sat down at 9am. Left at 5pm. One hour lunch outside the building every day. Didn't have a computer at home. Didn't want one.

    When he was at his desk working however he had the most focussed work patterns I've ever come across. He spent _all_ of that time honing his craft. Unlike my behaviour of continuously distracting myself with usenet (in those far off pre-web days of yore :-)

    I can think of several examples of the opposite pattern. Folk who work a fifty hour, and hack for N hours at home on the Nth instance of a home-brew game, but still don't really make much progress in their craft....

    But perhaps that's just me :-)

    Cheers,

    Adrian
    --
    http://quietstars.com adr...@quietstars.com twitter.com/adrianh
    t. +44 (0)7752 419080 skype adrianjohnhoward del.icio.us/adrianh

    lokeshk

    unread,
    Dec 18, 2010, 8:47:29 PM12/18/10
    to software_craftsmanship
    If the work you are doing at office is your passion, then you do not
    have to put any time in anything else at home. Because you will be
    working on your passion at home also anyway.

    And if the work you are doing at office is just for paying bills, then
    you have to put hours into something that you are passionate about, to
    hone your craft.

    And if your work is your passion, then no one is going to ask this
    question to you at interview, because you will not go looking for
    job :)

    To be good at any art, you have to put enough hours of practice a day.

    philip schwarz

    unread,
    Dec 18, 2010, 8:51:13 AM12/18/10
    to software_craftsmanship
    that reminds me that I ought to thank my wife more often for never
    complaining about me taking the time after 10pm for learning
    (following my own agenda, that is - opportunistic learning happens at
    work). Most nights I try to hit the sack by 11:30pm, sometimes, e.g.
    if someone is wrong on the internet, I might carry on until 1am, but
    then the next day I skip a session to recover (I get up at 6am). It
    helps if I have a coffe just before leaving work. Since my daughter
    was born, the best time for sharpening the saw is on train/tube
    journeys and at night.

    On Dec 17, 6:15 am, Robert Martin <uncle...@cleancoder.com> wrote:
    > On Dec 16, 2010, at 19:02 , software_crafts...@googlegroups.com wrote:
    >
    > > Anybody have any helpful tools/tricks for monitoring this delicate
    > > balance?
    >
    > Ask your family.  Whenever I needed some extra time to work on one of my home projects I'd negotiate the time with my wife.  She was always very helpful about this.  I usually got the hours between 10:30 and midnight.  
    > ----
    > Robert C. Martin (Uncle Bob) | uncle...@cleancoder.com

    Ben Fulton

    unread,
    Dec 19, 2010, 8:21:53 PM12/19/10
    to software_cr...@googlegroups.com
    I think there's a difference, though.  When I played Blockout or Space Invaders on my C-64 it wasn't too hard to at least envision how I would write a comparable game, so it was pretty encouraging to do a little poking around with the Basic interpreter and see how to do it.  It was a nice, fast positive feedback loop.

    But I can't play Call of Duty for a couple of hours and figure out how I would reproduce it in Scratch.  It's pretty clear that anything you write with Scratch will be a toy.  Maybe there's something that could be done with Android or Arduino boards that would bring back the experience of, "Yeah, I could write something like that" that is at the core of the hacker ethos.

    On Fri, Dec 17, 2010 at 11:17 AM, Josmas Flores <josmas...@gmail.com> wrote:
    on a different note:
    > When I was a kid,
    > lots of today's best programmers cut their teeth on Sinclair
    > Spectrums, Commodore 64s and Acorn Micros, spending hour after hour
    > programming games and wotnot in their bedrooms. 
     
    I wouldn't be so sure that those days are gone. A quick look at

    Chris Parsons

    unread,
    Dec 20, 2010, 5:56:25 PM12/20/10
    to software_cr...@googlegroups.com
    On 20 December 2010 01:21, Ben Fulton <benmar...@gmail.com> wrote:
    I think there's a difference, though.  When I played Blockout or Space Invaders on my C-64 it wasn't too hard to at least envision how I would write a comparable game, so it was pretty encouraging to do a little poking around with the Basic interpreter and see how to do it.  It was a nice, fast positive feedback loop.

    But I can't play Call of Duty for a couple of hours and figure out how I would reproduce it in Scratch.  It's pretty clear that anything you write with Scratch will be a toy.  Maybe there's something that could be done with Android or Arduino boards that would bring back the experience of, "Yeah, I could write something like that" that is at the core of the hacker ethos.

    It's matured to the same point as the movie industry, and home movies vs. blockbusters. No-one watches 'Avatar' and thinks: "I'll make something like that that, right now!" But they do screw around with their home movies and get some experience: the tools are there for them to make an impression.

    Same with video games for example. Some years back I interviewed developers for video game programming roles. Mostly it was about what they'd done off their own back, given the resources they had. There's enough stuff out there to at least make something, and it's the drive to do that we were looking for.

    Same principal applies now, when I'm looking at hiring software crafters. It's not whether they code in the evenings or not, it's the choices they've made given the opportunities they had. The more initiative/get up and go/passion they have for what they do, the more interested I am in trialling them, regardless of qualifications.

    Chris
    Reply all
    Reply to author
    Forward
    0 new messages