Live data from Hacker News

Signs that you are a bad programmer

yacoset.com

41–50 of 177 posts

Re: Signs that you are a bad programmer

#41
I found the "Alternative careers" hilarious.

My version:

  Your code sucks.
  Alternative careers: "Do you want fries with that?"
OP's version:

  1. Inability to determine the order of program execution
  Alternative careers: Electrician, Plumber, Architect, Civil engineer
  
  2. Insufficient ability to think abstractly
  Alternative careers: Contract negotiator, Method actor
  
  3. Collyer Brothers syndrome
  Alternative careers: Antique dealer, Bag lady
  
  4. Dysfunctional sense of causality
  Alternative careers: Playing the slot machines in Vegas
  
  5. Indifference to outcomes
  Alternative careers: Debt collection, Telemarketing
So the real test of a good programmer is one who can write a routine that crawls the source code of a bad programmer and tells them what they should really be doing.

Re: Signs that you are a bad programmer

#43
post #3

The opposite approach is much simpler. There's only one sign that you are a great programmer: Clients and fellow programmers are still happy with your work two years after you've delivered it. (Of course: "still" implies that they we're happy at delivery, which includes actually shipping working software in a timely fashion.)

"Clients and fellow programmers are still happy with your work two years after you've delivered it." Disagree. The first system I wrote kept the client happy for years. It was a mess, but it was literally millions of dollars better than not having any system. If what you mean is something like "focus on doing work of long-term value, and consider programming skill as such an input", then I'd agree with that.

That was an AND, not an OR.

Re: Signs that you are a bad programmer

#47

There is one surefire sign you're a bad programmer: faced with a problem, your reaction is "pshaw, I see how I can solve this..." Whereas a good programmer has the reaction, "uh-oh. I see how I can solve this..." And knows that this is just half the battle, and what he's getting himself into.

Well, that's just experience. After a while, you lose your confidence that you are the new hawtness, and you start seeing all the ways things can go wrong... and ways you can avoid them.

Re: Signs that you are a bad programmer

#48

Earlier quoted context omitted.

Not only that, the purpose of refactoring isn't simply for reuse, but also for readability. If you break out chuncks that aren't reusable, but enhance the readability of the code then you've likely improved the code. Given the choice between reusability and readability I'd say that readability should usually win (although it is a false choice).

I would contend that if you're having code readability issues, it'd be better to fix it by sprucing up your whitespace and comments, instead of saying "Well, let's chunk it into more functions" and have method(), which returns method1(), which returns method2(), which returns method3()... Chunking for the sake of itself doesn't seem like a viable strategy to me.

When you add a new-line or two into a section of code, you're usually saying:

"These two blocks of code do something different"

Thats what is normally called a method. If it's only for one class then by all means make it private and name it well, so the caller remains readable.

Re: Signs that you are a bad programmer

#49

"You seriously consider malice to be a reason why the compiler rejects your program" Of course it's malice.

the compiler in many simple cases could have tried to repair the program, like attempting to insert(remove) missing(extra) ';' or '}' for example. While it may be not a malice, it is definitely an absence of a good will. Note: i did work on a real product which had parser inside that had such style of repair implemented, and such approach is also quickly mentioned in the dragon book as well

It's possible that such automatic repair would create a bug. Much safer to have a human check and ensure that the ; goes in the right place.

A better point is that the error messages from many compilers can be very obscure. This was particularly true 10-15 years ago.

Re: Signs that you are a bad programmer

#50

Is it odd that any tense of the word "ship" does not appear in this article?

Believe it or not, sometimes we code for purposes other than selling stuff.

But you still have something to ship, even if it's just to your buddies on github.
Post reply on HN