from Hacker News

Ask HN: Must programmers be fast?

by morphir on 11/6/10, 8:03 PM with 4 comments

How fast do employers expect me to program?

I'm fond of programming in general, however, when I'm being stressed and have to meet deadlines here at my university I get uncomfortable. And I feel like a code generating machine, where I cant afford enjoy the activity by honing my assignment. Will this change when (if) I become a working programmer?

  • by mprny on 11/6/10, 9:26 PM

    If you are working for someone, yes there will be always someone on your back. Just get it done. Quick and dirty.

    A good place for a programmer is founding or co-founding a startup. The deadlines will be self imposed. Self imposed deadlines are a lot more achievable and realistic. However being a part of a startup brings with it the headaches of generating revenue and/or wooing investors.

  • by nck4222 on 11/6/10, 8:32 PM

    When you're close to a deadline you're stressed and a code generating machine? That sounds like you do pretty well actually. Stress can be incredibly beneficial for you (in fact if it weren't it probably wouldn't have been naturally selected in every animal on earth): http://en.wikipedia.org/wiki/Eustress

    "I cant afford enjoy the activity by honing my assignment."

    I don't know if this is your case (correct me if not), but it sounds like you're striving for a perfect project, and can't get to it because of the deadline. At some point you have to say "this is good enough."

    "Will this change when (if) I become a working programmer?"

    It'll change if you get a lax job with a low work expectancy (corporate job). But if you have a job with high expectancies and quick deadlines (startup), then no it probably won't change.

  • by PKeeble on 11/6/10, 10:32 PM

    In industry you often get to set the estimates yourself. Missing the deadline has less severe consequences because its unlikely you'll get fired for missing the deadline by a day. But on your course its a fixed date and a big fat 0 awaits those who miss it.

    Its worth mentioning that estimates are not plans to deliver. Make sure that as you give them in units that represent the amount of confidence you have. Industry recognises things aren't perfect and so often deadlines are a bit more fluid.

    If someone else is setting your deadlines and estimating on your behalf its best to treat those with the contempt they deserve and provide your own estimate. Its a sad fact of our industry that this happens so frequently, but its best to nip it in the bud.

    In general things are a lot more fluid in industry, the requirements need detailed understanding and the estimates are never right. The pressure is normally less severe, but it really depends on your boss and your dynamic with him/her. In a startup its self imposed pressure so you get to choose how severe it is and how hard you end up working.

    Its important as a young developer to make sure you learn the things you are working with well. You need to avoid spending too much time at work so you can get in the necessary reading and practice that makes a better craftsman.

  • by variety on 11/8/10, 6:11 PM

    Yes, it gets better. Much better.

    One big difference you'll encounter after working for just a bit in the commercial world is the amazing, energizing power of a (fat, steady) paycheck. Which somehow really, really helps us bear down and get that (let's face it) nasty slog of niggly, piggly, nose-in-the-mud gruntwork that is most commercial development.

    You'll also encounter the opposite, from time to time, i.e. employers who just don't grasp the incredibly demotivating effects of the skimpy, late, or consistently unreliable paycheck (and their sidekicks: poor physical working conditions, bumbling junior management, conflicting and/or basically impossible goalposts, and my favorite, utterly made-up deadlines with no connection to business or technical reality).

    But fear not: once you've had a steady enough taste of the former type of environment, you'll be able to recognize (and pivot yourself out of) the negative/unstable environments, before too much damage has been done to your savings and/or your resume.