Hacker News new | ask | show | jobs
by michaelochurch 5369 days ago
Disclaimer: I'm still in university.

I can tell. I would have written what you did at that age. Now I'm older and jaded I don't know if that makes me wiser or stupider.

In school, you can actually ace every course. In fact, it's structured so that if you have a good work ethic, above-average talent, and a little bit of luck, getting a 4.00 GPA is possible. It's not easy (I didn't) but certainly within striking distance.

In the "real world" of work, you can't actually ace everything and please everyone while developing your career at the same time. It's not humanly possible to do everything that you "should" do. If you're trying to do five different things, you're probably doing none of them well. If you're trying to "be the best cog you can be", you won't have any energy left for the side projects that might lead to liberation from your boring corporate job. That might be the right approach; maybe your boring corporate job is one rung below a very interesting job in the same company. (Not all corporate jobs suck.) It might not be. But you have to pick and choose. What are you going to do a great job of, what are you going to get by on "good enough", and what can you cut (perhaps an unfruitful side project) for the time being?

Being "the best cog in the machine" doesn't provide much reward over being a marginally acceptable cog. You might get a 8% raise instead of 5%. Big whoop; not worth the extra hours and sweat. On the other hand, if someone in the company (possibly your manager, possibly someone else) decides to take you on in a mentor/protege role and look out for your career, then it makes sense for you to put your all into that work.

In school, you can get the sense that hard work is always rewarding and virtuous. In real life, sometimes hard work is just wasted effort. You have to discriminate.

What is very unpleasant is dealing with the aftermath of people who took "working strategically" too far and edged into the unethical: people who wrote garbage code fast, were promoted away from maintenance, and left an albatross for their juniors. That happens a lot in software. It sucks.

1 comments

My perceptions might change in the future, but I think we still agree on these points:

>> But you have to pick and choose.

1. The less time you spend doing things you won't do great at, the more you have to focus on doing great things.

2. If you want to do something great, you have to spend effort. You must try to understand all aspects of it.

What we are disagreeing on is:

1. I am saying you should only do great things.

2. You are saying we have too many things to do, and have not enough time to do all of them great.

>> You might get a 8% raise instead of 5%.

Being pedantic here, but 5% is 0% and 8% is 3%, after inflation.

1. I am saying you should only do great things.

I disagree. Most of the things you'll be expected to do are not great and to attempt to do great work will actually get you in trouble. You'll get into personality conflicts with people who don't care as much as you do, and your pace of work will be considered slow.

It usually demands 3 times as much time and 10 times as much energy to do a great job of something than a passable job. Sometimes, a passable job is enough and more is wasted effort. People who have to do a great job of everything they are asked to do end up getting asked to do a lot of things, some unrewarding, and eventually burn out because they just can't do everything that people want done.

Example of minimal effort being ideal: your boss says you need to be in at work at 9:00 am, even though there's no hard reason (it's just a demonstration of power). Let's say your commute is under 40 minutes 98% of the time. A passable job would be to leave at 8:20 and be on time almost every day, and average 8:40-8:50. You won't get yelled at for being a few minutes late once every couple of months. The "great job" would be to leave for work at 7:30 and arrive at 7:50-8:10, when no one is in the office, thereby ensuring that (unless something very unusual happens) you'll never be late. Does this extra effort really win you anything? Is it more rewarded to be an hour early than on time? In most cases, no.

You need 3 "buckets" for your projects. A: things where you'll do a great job. B: things you'll do just well enough to satisfy the minimum demands. C: things you won't do. If your A bucket is empty, you'll probably get bored and start itching for a side project, but you do not have the time to put everything in your A bucket and will burn out if you try. Generally, you end up splitting the things you have to do (your paid job) between A and B and your personal side projects between A and C (i.e. either doing a great job, or not doing them).

>> I disagree. I already said that. :) I was summarising our discussion.

You make good points, but I'll need to experience it myself when I get out of university before I'll be convinced.