Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

This topic transcends Locksmithing, obviously. Being a faster programmer means people expect more in less time for less pay.


Yes, definitely. In systems administration, too, you become less valuable the better you are at your job. People only value "firefighting" and so the people who set up systems that don't need constant maintenance are penalized, while those who constantly make trouble are rewarded for their "heroics" ... even if they caused the problems to begin with.

Upper management neither knows nor cares to be informed, sadly.


You're certainly correct there, but they only value "firefighting" for a brief moment too. Unless you've been firefighting directly for upper management - they'll forget, or not even know of your effort shortly after it happens. You're only likely to get rewarded for efficiency in smaller companies where the management has enough technical knowledge to appreciate your efficiency.


have you seen acts_as_enterprisey http://agilewebdevelopment.com/plugins/acts_as_enterprisey ?

Quote: How does acts_as_enterprisey make webapp development look hard? Well, the only way your client can judge your app is by playing around with it. What better gives the feeling of heavy weights being lifted behind the scenes than slow response times? Exactly. That’s what acts_as_enterprisey does. So while your client clicks, …waits…, and then gets the page, you can blather on heroically about wrestling with clustered indexes, cache expiration strategies, n log n seek times, etc ad nauseam.


This is a big part of weaseling for the benefit of the customer.

Back when I was still working with customer project, I noticed an inverse relation with the required effort to do a feature and the effort customers think it requires. So, they'd ask for something "simple" which actually involved quite a lot of changes to the code. Or alternatively the customers could be almost hesitant to suggest some other change, already fearing it would cost them dozens or hundreds of hours while I could do in half a day.

First I did it honestly: the simple thing was finished in a day and the customer would first be baffled and then very soon asking for more of the same, possibly feeling they had been ripped off somehow. The difficult thing took its time and the customer was waiting and complaining all the time, while I re-established that what they asked was a big change eventhough they couldn't possibly see why without knowing the source code. And they were possibly feeling they had been ripped off somehow, again.

Then later I changed tactics. The customers were much more happy to wait for a week or two for the easy feature which I had already coded, probably the first day. Delivering on the next week still made me ahead of schedule because the customer had their internal expectations of a much greater effort. Conversely, I checked the truly difficult problem by simply explaining that I'll do "that easy thing" last because it's easy and I wanted to focus on the "that difficult effort" first. In reality I spent the time programming the other while I was supposed to be working on the other.

Now, the customer reaction was totally opposite. They were very happy to see that I went through all the effort to produce the "difficult" thing and even if it took a week or two (because I was coding the "easy" thing) to deliver, they were just pleased to even get that far. After all, the "difficult" task was probably nearly impossible so anything I could make to work was on the surplus side. As an added bonus, they appreciated that I could still throw in the "easy" feature (which I had been coding all the time), despite the efforts poured into the "difficult" feature.

Moral of the story: working from the customer's perceptions keeps the customer happy, even if the actuality will sing another song. Maybe it's because customers like to be right or maybe it's because human beings like to remain fixed on ideas and preconceptions.

If I was a locksmith, I'd probably spend around five minutes on opening each door, making it feel long, doing manual work, and possibly talking with the customer about that particular make of lock. Not because I wanted to rip off my customers but to give them something they paid for. I suspect that many would be happier to pay $100 for five minutes of hard, manual labor than $50 for applying an automatic device for one second.

(I don't think I would even end up doing fewer customers per day, either, you can waste five minutes in traffic very easily.)


I was thinking exactly the same thing.

Perhaps after a certain level of speed/competence, you should look to get paid on a per-project basis, and provide a summary of results instead of a summary of hours.




Consider applying for YC's Summer 2026 batch! Applications are open till May 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: