We're not craftsmen and craftswomen

  • Thomas Abraham (1/15/2014)


    We're just not, we're not craftspeople, at least not most of us. We do what we need to do at work. We get systems working just enough. We get by.

    I think this is a pretty broad brush. On some things, I do just enough to get it working. Those are one-offs, or situations where I've determined that the cost of a better solution is not worth the investment of more time.

    Except that for many people working in this industry, I think it's what they do. They just get by.

    However, and I don't think this is unusual, I also do a fair bit of craftsperson-type work on any given day. I especially do this when, for example, doing database design/modeling. Here I am making decisions that have long-reaching consequences. A small investment of time here, thinking of how data will be used, and how the data may change over time, pays big benefits. On the other hand, if I'm doing an ad hoc report, I don't spend a lot of time making it pretty.

    Getting that balance of time invested versus quality of finished product is, IMO, one of the signs of a craftsperson. If I'm a cabinet maker, I don't worry about the grain pattern on the wood that I use for the back of a drawer. It's not worth it, no matter how good a craftsperson I am. To worry about it would be obsessive - not the mark of a person that cares about quality. However, the grain of the wood that goes into the top of a table, now that's fairly important. To not care about it, and spend some extra time getting it right, that would be just stupid.

    Making tradeoffs in time versus quality in just the right places, that's what a craftsperson does.

    Agree. This is what craftsmanship is. It's caring when it's needed, and not when it's not. It's getting work done, but having pride and caring.

  • Tom Bakerman (1/15/2014)


    Sorry Steve, but I disagree with you. I think it's a good thing that we are not craftspeople.

    Doing just enough to complete a job

    is NOT the sign of an amateur, it's the sign of a professional who knows how to make trade-offs among the competing resources and priorities.

    Doing the bare minimum to be functional

    provides us the opportunity to check in with the user community to see if we are developing what they want, not what we think they want. And to adjust for changes ("I know I said that's what I want when we started, but now that I see it, I want something different").

    I feel that software developers aiming to be craftspeople is part of the problem of software development. It's one of the arguments I've heard from developers for not implementing or following standards ("Standards stifle my creativity"). It's possibly one of the reasons so many projects fail or are over-budget.

    I do agree that we need to continue advancing ourselves, but I don't understand what that has to do with being a craftsperson or not.

    Cheers,

    Tom

    Perhaps this doesn't apply to you, but to many I think it does. Too many people do half the job. Craftsmanship isn't making it perfect the first time, but as you noted, it's getting things done in a proper way. That is checking in with the user community and making it better. However, far to many people do more than necessary the first time, don't check in, and never improve the work. That wouldn't be craftsmanship, IMHO. That would be doing the bare minimum to get by.

    Craftspeople care. They take pride in their work. If you improve your system over time, that's craft and caring. If you don't, that's just knocking it off.

  • Steve Jones - SSC Editor (1/15/2014)


    Perhaps this doesn't apply to you, but to many I think it does. Too many people do half the job. Craftsmanship isn't making it perfect the first time, but as you noted, it's getting things done in a proper way. That is checking in with the user community and making it better. However, far to many people do more than necessary the first time, don't check in, and never improve the work. That wouldn't be craftsmanship, IMHO. That would be doing the bare minimum to get by.

    Craftspeople care. They take pride in their work. If you improve your system over time, that's craft and caring. If you don't, that's just knocking it off.

    Yes, with this definition, I agree 100%.

  • Steve Jones - SSC Editor (1/15/2014)


    below86 (1/15/2014)


    You get pulled into so many different projects with so little time it impossible to 'craft' the perfect solution. As they say 'A jack of many trades, master of NONE."

    Craftsmanship isn't perfection. It's aiming to build something you're proud of, is well done, adheres to good, or best, practices for your area.

    I think this line is what 'set' me off: "Doing just enough to complete a job is the sign of a amateur, not a craftsman."

    Doing just enough to complete the job doesn't mean it isn't quality work, or work you're not proud of it. Like I said you don't always have time to do it exactly the way you would prefer to do it, a lot of time it is 'get this done, because you have all this other to do to'. "Time is money."

    -------------------------------------------------------------
    we travel not to escape life but for life not to escape us
    Don't fear failure, fear regret.

  • below86 (1/15/2014)


    Steve Jones - SSC Editor (1/15/2014)


    below86 (1/15/2014)


    You get pulled into so many different projects with so little time it impossible to 'craft' the perfect solution. As they say 'A jack of many trades, master of NONE."

    Craftsmanship isn't perfection. It's aiming to build something you're proud of, is well done, adheres to good, or best, practices for your area.

    I think this line is what 'set' me off: "Doing just enough to complete a job is the sign of a amateur, not a craftsman."

    Doing just enough to complete the job doesn't mean it isn't quality work, or work you're not proud of it. Like I said you don't always have time to do it exactly the way you would prefer to do it, a lot of time it is 'get this done, because you have all this other to do to'. "Time is money."

    In my experience, doing just enough to complete a job has resulted (most of the times) in errors that require extra work and more time invested than just doing it right in the first place.

    Companies and managers should understand that quality work requires an adequate time and working 20 hours a day won't increase productivity.

    Luis C.
    General Disclaimer:
    Are you seriously taking the advice and code from someone from the internet without testing it? Do you at least understand it? Or can it easily kill your server?

    How to post data/code on a forum to get the best help: Option 1 / Option 2
  • below86 (1/15/2014)


    I think this line is what 'set' me off: "Doing just enough to complete a job is the sign of a amateur, not a craftsman."

    Doing just enough to complete the job doesn't mean it isn't quality work, or work you're not proud of it. Like I said you don't always have time to do it exactly the way you would prefer to do it, a lot of time it is 'get this done, because you have all this other to do to'. "Time is money."

    Fair enough, but I'd argue that doing just enough, doing the bare minimum, isn't caring. Caring is when you will do a little more than the bare minimum to get something functioning.

  • Steve Jones - SSC Editor (1/15/2014)


    below86 (1/15/2014)


    I think this line is what 'set' me off: "Doing just enough to complete a job is the sign of a amateur, not a craftsman."

    Doing just enough to complete the job doesn't mean it isn't quality work, or work you're not proud of it. Like I said you don't always have time to do it exactly the way you would prefer to do it, a lot of time it is 'get this done, because you have all this other to do to'. "Time is money."

    Fair enough, but I'd argue that doing just enough, doing the bare minimum, isn't caring. Caring is when you will do a little more than the bare minimum to get something functioning.

    And I would say that in your example Norm Abram could do the bare minimum to build a book shelve, and he would still turn out better quality work(and faster) than if I spend a lot of time 'caring' for mine. Different skill sets will determine the quality of the job done not necessarily the 'time/caring' spent.

    -------------------------------------------------------------
    we travel not to escape life but for life not to escape us
    Don't fear failure, fear regret.

  • SQL Server encompasses a wide variety of products. I happen to where mutiple hats that cover several of them. If you do reporting through SSRS you can just do the minimum and create a simple report or you can make it a work of art! Because SSRS has so many ways of presenting data it can take on many of the characteristics of an application. I work directly with business partners who start out wanting a simple report but find out they can get much more. You can be a craftsman!

  • Luis Cazares (1/15/2014)


    below86 (1/15/2014)


    Steve Jones - SSC Editor (1/15/2014)


    below86 (1/15/2014)


    You get pulled into so many different projects with so little time it impossible to 'craft' the perfect solution. As they say 'A jack of many trades, master of NONE."

    Craftsmanship isn't perfection. It's aiming to build something you're proud of, is well done, adheres to good, or best, practices for your area.

    I think this line is what 'set' me off: "Doing just enough to complete a job is the sign of a amateur, not a craftsman."

    Doing just enough to complete the job doesn't mean it isn't quality work, or work you're not proud of it. Like I said you don't always have time to do it exactly the way you would prefer to do it, a lot of time it is 'get this done, because you have all this other to do to'. "Time is money."

    In my experience, doing just enough to complete a job has resulted (most of the times) in errors that require extra work and more time invested than just doing it right in the first place.

    Companies and managers should understand that quality work requires an adequate time and working 20 hours a day won't increase productivity.

    I like to think of it as a sales job on the part of the developer, theres a way to do a job that implements a function that as a result of that implementation the function becomes a reality. Theres also a way of implementing that in addition to bringing that function to life, is also maintainable, adaptable to future requirement changes, is documented, is transparent and modular and resists bugs and is coded for edge cases, etc etc, and these are the attributes maybe developers should do a better job of selling to those who provide the resources.

  • I'm actually a little shocked at some of the responses from the editorial. I thought the editorial was absolutely spot on.

    For all those who think that you shouldn't be striving to do a better job (NOTE: I didn't say always going to absolute perfection), I have to ask this: Have you looked at code you wrote 2/5/10 years ago? If so, are you looking at it and saying, "Yep, good enough" or are you looking at it and spotting issues that you would love to address if you had time because, as I usually refer to myself, old me was an idiot, and he really didn't know what he was doing.

    If the former, I'll be completely blunt, I don't want to hire you and I'll bet working with you isn't a picnic either. I'll put down money you've said recently, "But we've always done it this way" with no further justification for avoiding whatever change was being discussed. I'm sure you get stuck on a lot of maintenance tasks instead of setting up the nifty new Availability Group or working on the wild new development project that's going to revolutionize the company. Instead of 10 years of experience, it's likely that you have a single year of experience multiplied 10 times.

    Being a craftsman doesn't mean being a perfectionist. It does mean striving for better. Trying to do more. Trying to be more efficient. Trying to learn and grow and expand your knowledge base. I don't see that as a bad thing at all.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • below86 (1/15/2014)


    And I would say that in your example Norm Abram could do the bare minimum to build a book shelve, and he would still turn out better quality work(and faster) than if I spend a lot of time 'caring' for mine. Different skill sets will determine the quality of the job done not necessarily the 'time/caring' spent.

    I'm sorry if I upset you, and perhaps I wasn't talking to you. However I'm not sure I implied more time spent on a project was the idea. It's about caring, taking pride, being professional, getting better, and doing a job that you see as the best you can do, given your resources.

    That's also why I mentioned improving your skills. That's what a craftsman does, and it's what so few do in this business.

  • Grant Fritchey (1/15/2014)


    I'm actually a little shocked at some of the responses from the editorial. I thought the editorial was absolutely spot on.

    For all those who think that you shouldn't be striving to do a better job (NOTE: I didn't say always going to absolute perfection), I have to ask this: Have you looked at code you wrote 2/5/10 years ago? If so, are you looking at it and saying, "Yep, good enough" or are you looking at it and spotting issues that you would love to address if you had time because, as I usually refer to myself, old me was an idiot, and he really didn't know what he was doing.

    If the former, I'll be completely blunt, I don't want to hire you and I'll bet working with you isn't a picnic either. I'll put down money you've said recently, "But we've always done it this way" with no further justification for avoiding whatever change was being discussed. I'm sure you get stuck on a lot of maintenance tasks instead of setting up the nifty new Availability Group or working on the wild new development project that's going to revolutionize the company. Instead of 10 years of experience, it's likely that you have a single year of experience multiplied 10 times.

    Being a craftsman doesn't mean being a perfectionist. It does mean striving for better. Trying to do more. Trying to be more efficient. Trying to learn and grow and expand your knowledge base. I don't see that as a bad thing at all.

    I agree that I've looked at what I've done 2/5/10 years ago and think "what the 'H' was I thinking". And yes you would love to go back and fix it, if you had the time. But I guess I look at it a little different. What takes me 30 minutes to do today may have taken me several hours(or days) to do before. Does that mean it is poorer 'craftsmanship'? Not to me, it means I'm honing my craft. And I'm sure 2/5/10 years from now I'll look back at what I did today and say "what the 'H' was I thinking". But it will also mean it's been working for 2/5/10 years. So what does that tell us about the work?

    -------------------------------------------------------------
    we travel not to escape life but for life not to escape us
    Don't fear failure, fear regret.

  • Steve Jones - SSC Editor (1/15/2014)


    below86 (1/15/2014)


    And I would say that in your example Norm Abram could do the bare minimum to build a book shelve, and he would still turn out better quality work(and faster) than if I spend a lot of time 'caring' for mine. Different skill sets will determine the quality of the job done not necessarily the 'time/caring' spent.

    I'm sorry if I upset you, and perhaps I wasn't talking to you. However I'm not sure I implied more time spent on a project was the idea. It's about caring, taking pride, being professional, getting better, and doing a job that you see as the best you can do, given your resources.

    That's also why I mentioned improving your skills. That's what a craftsman does, and it's what so few do in this business.

    I'm not upset, just trying to get across the point that doing the bare minimum isn't always a bad thing.:-)

    -------------------------------------------------------------
    we travel not to escape life but for life not to escape us
    Don't fear failure, fear regret.

  • Luis Cazares (1/15/2014)


    In my experience, doing just enough to complete a job has resulted (most of the times) in errors that require extra work and more time invested than just doing it right in the first place.

    Companies and managers should understand that quality work requires an adequate time and working 20 hours a day won't increase productivity.

    I would claim that in this situation, the person did NOT do just enough to complete the job. If the results are incorrect, then the job is not completed. If I put wax on a piece of furniture meant for outdoor use, it doesn't matter how good a craftsman I am, the piece is not "fit for purpose".

  • If I want a beautiful table that is almost a piece of art, with matching grain and fine details, I would go to a craftsman.

    If I want a pretty table that is solid and works well, looks nice but is more affordable I'll go to a department store.

    If I want a functional table, don't care about pretty, and am not concerned if it wiggles a little (I can tighten the screws on the legs periodically and accept that as normal) I'll go to a thrift store.

    The same can be said about our profession. Some people will be craftsman level, some will "build it with jigs", and some will "just get by".

    And different companies will hire different levels of people, depending on the corporate goals.

    So I would say some of us are craftsman, some of us fit other roles. The world is not black and white, but shades of grey. I don't mind working with "non-craftsman" so long as they are open to improving themselves or at least listening to my ideas about improvement of process or product. I don't work well with head-in-the-sand folks, and I don't care for "but we've always done it that way", however I've learned techniques to change the conversation and the dynamics of working with those people. To my mind that's part of being a professional.

    I believe a craftsman balances the stated needs of the business with their own desire to build a better product. When those come into conflict, it's time to find a new employer whose goals more closely match your own professional goals. Sometimes you can "up-sell" to the business, sometimes you can't. And sometimes the stated needs of a business don't match the "hidden needs".

    It's a squishy messy world out there, and making blanket statements about our profession or industry will always get a reaction from those who have a different perspective - and a different reality. It's certainly a great way to get a conversation going.


    Here there be dragons...,

    Steph Brown

Viewing 15 posts - 16 through 30 (of 58 total)

You must be logged in to reply to this topic. Login to reply