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

The 10x thing is an understatement..but say 10x is accurate.

Take an average programmer, and try to convince him that he could be two times more productive..a junior programmer might buy it, but any average programmer with "experience" isn't going to believe it. Forget about telling him that he could be 4 times of 5 times more productive.

Now move up to the manager and tell him that his team could be 2x more productive. No way will your average manager believe it if for no other reason than it makes them seem pretty incompetent.

I've tried the experiment before. An example...A small team was complaining about their workload and kept saying they needed to double the team size. Management agreed and was trying to get budget. This dragged on for a while (along with the complaining). I asked why, instead of doubling the team size, they simply didn't double the productivity. The concept of even thinking about being more productive was completely foreign to them. They wouldn't talk about what might improve productivity - there was no point because clearly the hard working team couldn't work any harder...working smarter? Nonsense..they were experienced developers.

The point? Everyone thinks they are better than average. Admitting that you could be 2x (forget about 5x) more productive is like admitting (in people's minds) that they are slacking off. This works at the individual, management and company level.

More productive programmers aren't paid more because, while everyone knows some programmers are 10x more productive, every employee thinks he/she has little room to grow, and every manager believes his team is awesome.



    > Now move up to the manager and tell him that his team
    > could be 2x more productive. No way will your average
    > manager believe it if for no other reason than it makes
    > them seem pretty incompetent.
Unless you're selling a tool or methodology, apparently.


Did you propose a 2x salary increase to accompany the 2x productivity increase? It could get the programmers, if not the managers, to decide your way was worth a try.


Why should anyone require a salary increase for somehow to show them how to do their job in an easier way? Unproductive programmers are unproductive because they do too many things manually and don't automate repetitive parts of their jobs.

I know programmers who still, after years and being told to use rsync and automate the pushing of their code to production, still manually open up an ftp client and one by one upload just the files they know they changed. Dudes could save probably a few hours a week easily and do less work but the fear of... learning something prevents them from doing it.


They fact that the choice is 'rsync' or 'ftp' scares the heck out of me. Doesn't everyone use a packaging system with reproducible builds, deploying these packages to staging first, testing it, then deploying the same signed package live using real configuration management (eg. Puppet) ...?


The vast majority of companies don't do this. It's scary, but it's life.


It's not scary at all, having that kind of process for a small shop would be absurd. When your developers are the only tech guys you have, and do all system administration, database administration, new programming, bug fixes, and deployment, you don't need or want red tape between yourself and yourself.

That kind of process works for large teams where different people are doing those jobs and need to collaborate effectively without finger pointing; but it's not for a small cowboy team at all. You simply can't maintain that kind of formality and process when you're doing everything.


Honestly, that's red tape that just isn't necessary for the vast majority of small business applications. Making a fix in dev environment, testing it, and pushing the fix live by a single developer is and should be the norm.


What's signing a package?


"Why should anyone require a salary increase for somehow to show them how to do their job in an easier way?"

Perhaps because making some parts of a job easier doesn't make the job as a whole easier. It is quite conceivable that by eliminating all of the repetitive work, they would be forced to spend more time on difficult problems rather than trivial ones.

Personally, I think that's a great result, but people who don't like learning new things probably won't appreciate it.


rsync or ftp? seriously?

A serious discussion merits at least the use of a source code versioning tool, like SVN or Mercurial or GIT.

And now for a more serious answer: How do you know that the lack of productivity is caused by lack of skill when it could be just because of lack of perceived proper compensation?

Some of these guys could be working at home creating software that can make your company obsolete.


Some of these guys could be working at home creating software that can make your company obsolete.

Very very rare. Orders of magnitude more will have e.g. families that they like better than computers. Of the remaining, few will have business-killing ideas in the first place.

I agree that morale can play a part in the amount of effort and/or sophistication a given employee will put into their job.

As for SCMs, there are plenty of companies in the middle. I've seen companies whose deployment process consists of running "svn up" on the production server.


Perhaps I forgot to mention, this is the .Net world, those versioning tools are not at all popular; doesn't mean one isn't used but versioning and publishing to production have little to do with each other.

Can you use a pull from version control to do an automated build and deploy it, sure, but that's an unnecessary hassle for a small team. It's more productive to simply build on your machine and push up the new version. An automated rsync deploy is more than sufficient.


Telling a programmer they could be more productive is like telling a runner they could "run faster". Yes, they could theoretically be X times as productive but it's absolutely useless unless you can show them how to improve their technique, workflow etc., assuming they are trying at their job. Because if they knew how they would probably already be doing it.


As I said, "they wouldn't talk about what might improve productivity."


They wouldn't talk about what might improve productivity

They being management, or the devs themselves? Because anyone will have a shopping list of how they could be more productive. I'm currently badgering my manager for an upgraded PC (from 4G to 32G RAM) for everyone in my team so we can run entire virtualized environments, for example. This will be a massive boost to use because we'll no longer need to rely on another team to do provisioning for us, and we'll no longer tread on each other's toes in the existing environment we have, requiring work to be re-done. She's smart so she'll probably go for it.




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

Search: