Smart Guy Productivity Pitfalls
bookofhook.blogspot.com
bookofhook.blogspot.com
I'm currently a college student, so my work ethic is a little poor. Procrastination and "seeming busy" is standard fare for my day. It's far too easy for me to get distracted by checking Facebook, Twitter, or even tangential data sheets.
Yet, despite my bad habits, the environment at my job forced me to get down and churn through code. Some of my officemates could fit the salaryman stereotype[1], but all of them posessed a capability for relentless focus. I initially tried to settle in by "shooting the breeze" and making smalltalk, but they seemed to prefer communicating through their work: some code, but more importantly, well-done demos.
In the span of those 3 months, while I always brought headphones with me, I never ended up using them: the silence of the office carried a note of tension, the sound of concentration. Listening to this proved to make me more productive than I'd normally be, if I were listening to (even quiet) music.
I came in expecting to be maybe 20% efficient, as the OP mentions: a few minutes here, a half hour there. At the end, it was nearer to 75-80%: instead of procrastinating, I set goals for myself to get things done, because that was really the best way to get through to my neighbors.
While I don't think that this sort of pressure cooker environment is well-suited for all people, I think it speaks volumes to how positive peer pressure, in more ways than one, can force people to shape up. I'm not sure I would've survived for a 6 months or a year, but it very quickly eliminated my excuses. If everyone around you is working their best, it's hard not to get dragged along.
So the key takeaway is the positive peer influence, not so much Japan and its whatever-ness.
There's a certain dream about playing hard, working hard, and getting swept along with it. Smalltalk included.
A lot of people fight back against the sort of no-frills culture I saw (Google perks, work-at-home attitudes, etc.), so it surprised me that it was so efficient. A part of me expected cubicles and quiet work environments to force an Office Space result.
``Knowledge and productivity are like compound interest.'' Given two people of approximately the same ability and one person who works ten percent more than the other, the latter will more than twice outproduce the former. The more you know, the more you learn; the more you learn, the more you can do; the more you can do, the more the opportunity - it is very much like compound interest. I don't want to give you a rate, but it is a very high rate. Given two people with exactly the same ability, the one person who manages day in and day out to get in one more hour of thinking will be tremendously more productive over a lifetime.
Recently, I built an automated Skinner box that has the ability to run most of the protocols of classical behavioral research. It allows the mouse to be head fixed, enabling brain readings while the experiment is running^. We could have built just what we needed, but instead, we are going to open source this general solution in a methods paper soon. I am unsure if this would have happened if I had not read Hamming's talk.
^The hope is that this will reduce the amount of this type of research done with monkeys, enable reductions of costs/time, and enhancing the ability to learn more due to the huge genetic catalogs for mice.
Of all the pieces that struck home for me, this. Especially doing what I'd call my 'dream job', it's 'the grind' that I most struggle with, even if it's ultimately what ends up being the most valuable output.
I'd add a line to the effect of: the grind is easier to handle when you keep focused on the outcome of what you're trying to achieve (cool new feature, happier customers, company success). It's easy, as a programmer, to lose sight of the big picture when you're at the never-ending 80% phase of a big development effort.
currently suffering through this. I have spent 8 months, on and off, trying to solve a particular problem; this includes implementing 3 or 4 different methods, none of which have worked so far (I am currently tweaking method number 2.) I have been a few days away from something that might work since about January now, and the anticipation/tension/wanting the damn thing to just work is starting to get to me...
The big picture - that if this code works it will allow me to generate a thesis-worth of conclusions in a few months - is all that keeps me sane! :)
However, at this stage productivity comes in fits and starts - I sometimes need 2-3 days just doing something else before I can bear to look at the code again (being a grad student, I don't really have what you'd call weekends.) See my top-level post about rescue time for what I'm doing about this.
Inspiration, by definition, comes from nowhere. Although, if we're being honest, the research process is really just the process of transforming a big, vague, great idea into a very specific, actionable, pretty good idea. This is, of course, the hard part. It's hard for a few reasons: first, it's always more personally satisfying to hand-wave and get emotional agreement than to motivate calculations and get analytical agreement. But professional satisfaction (cash flow) requires you to attain the later (in our field, this is, essentially, the working code requirement). So you've got to make a choice to prove your idea. Second, demonstrating that an idea is good has an element of risk: the idea may turn out to be bad. You need to be open to this possibility, and take the attitude of the explorer rather than the proud parent.
This is probably why researchers start off with an advisor, and even later submit their work to peer review: a third party who is not so attached to your idea can be an invaluable aid in navigating that difficult path between inspiration and demonstration. (And it so happens that this path often leads to learning new things, which is probably why original research is so intertwined with learning and teaching.)
Also, just walking around thinking is the most productive time of my day.
The reason walking around is a good source of ideas is basically mindfulness/Zen/whatever you want to call it - put your brain in a bath of non-problem stimuli and stop verbalising your thoughts, and you can actually hear your brain generating new ideas. Of course it doesn't mean you'll get something useful straight away, or even in an hour, but you'll get new spontaneous thoughts and that's a good start.
This is why, when you do take a break, it is essential not to occupy your "doing" mind - by reading HN/twitter or playing Skyrim, my weaknesses - and just relax.
I remember many occasions when I finish a task earlier than expected, and then always struggle whether I should stretch it and pretend it took me longer, so I can still do it faster than expected, but not disproportionally so.
The somewhat flawed logic is that if I do things too fast, I'll just get more work assigned, and expectations will rise, which will make it progressively harder for me to achieve.
I'm not entirely sure where the flaw lies exactly, but the most impressive people I worked with always seemed to be those who finished things quickly, and somehow it didn't bite them back. Others would just learn to trust their assessments, or if they are stuck would know it's not for lack of focus or trying, but that it's a genuinely tough problem.
For what it's worth, I'm in this situation at the moment. Was working on a project where I found it simple to finish things quickly. Am now on a project where things are considerably more complex but it's expected I finish them at the speed I was previously.
Not sure how to crawl out of this hole, other than to continually get faster at everything.
"How do you win a 100m swimming race? You start at your absolute top speed, and slowly slowly increase the pace"
You can also go back and tell them that your previous speed is probably an outlier, but you don't/didn't do that because you want to maintain this high level of expectations.
I'm not sure I'd even advice against it, since that mechanism is what kept me improving until 30, but at one point it'll also pull you beyond what your physical limits ... and that, my kids, is how I me^H^Hgot a burnout ;)
I did the same before I learned to accept my limits and say no to what went beyond them, including pressure on myself to keep my commitments.
It actually makes perfect sense that if you can't resist the pull of expectations, you'd better make sure expectations remain at a (relatively low) level you'll be able to live up to even in down-time.
I'd say if you have extra time, use it productively for some of those related-but-inessential tasks that rarely get budgeted for, like refactoring, optimizing, writing tests, experimenting with new tools, etc. Spend the time on things that benefit your employer/customer but will also improve your skills or make life easier for you.
I've done this a few times in my career when I inherited a big poorly-written codebase. Whenever I finished a task early, I'd spend some of that extra time making improvements. Over a few years you can really make a difference. And those improvements are the kind that will let you continue to exceed expectations in the future.
Even if you do those things that benefit your company however, in theory at least you should have reported back that your task is finished, and you'd usually be assigned with what's next on the priority list... So still the temptation is always there.
It's a gray area, but if my task touches module A and I spend some extra time cleaning up module A, or writing tests for it, my conscience is clear. Or if I finish a deployment script but think reading a Chef tutorial might teach me a better way of doing it next time, sure. The work may not be finished just because "it runs." I wouldn't fill up 4 hours with that kind of thing, but 1, sure (depending on the urgency of other tasks, etc.).
I guess it also depends on your company culture and your boss's/client's expectations. I have clients who would get upset if I billed an extra half hour, and other clients who want me to spend that hour on tests/refactoring.
If I knew what I know now when I was 18-19, I would have slapped myself upside the head and say, "You idiot! You know nothing! Stop pretending that you do and you'll actually get something done!"
I skateboard for exercise and one of my favorite skaters is Andrew Reynolds. His mentality when skating is second to none. He'll land an absolutely insane trick (at age 33), and then do it over..and over..and over again until it is absolutely perfect.
Toe touches the ground slightly? Do over. Arms were kind of weird? Do over. Hammering it into the ground until it's a thing of beauty.
This is what I take into my approach to productivity. Being effective is difficult, especially if the task you're doing is difficult. You have to just hammer away at it and iteratively get 1% better every time you take a swing.
In productivity, it's constantly holding yourself to a higher standard than you previously did. Great, pomodoro technique is working for you and you can go 4x25 blocks? Trend towards the positive always, and you'll eventually end up far, far ahead of other's around you...even other "productive" people.
Every minute is precious if you have a goal to reach.
Because of salary it is a dificult position to leave for me, but I'm working on that developing my own startup :)
The most obvious way on HN to find productive people is probably to move into the valley, or a similar region, but that's a big step from most parts of the world. And then there is the huge shadow mass of brilliant programmers who aren't extroverted on the internet but that I'd love to have around me. They probably exist even in smaller cities or rural areas, but how do you find them?
Speaking from experience I know it is hard not to define yourself by the people around you, but it's deadly.
What helped (and continues to help) me is this question: Do you want to be that person?
As in, "do you want to be the person who sits in the office chatting and surfing facebook all day? or do you want to be the person who other people look to to get things done?"
The point is, look at yourself from outside. Decide how you want to act (for me, thinking about how I want to be perceived helps here). Then make it happen. Stop waiting for the people around you to make you into the person you want to be.
So I don't mean to sound like I'm complaining. That said, there's still a lot of room for improvement, if I find like-minded people and get a chance to work with them.
I'm going to a workshop on the very topic that interests me[2], and I hope that'll be my chance to do some networking in this narrow area, and maybe get a chance to collaborate on something.
* 40 hours a week is the max sustainable work week length
* To help get started work the next day so you're not
wasting time as the day starts and so your subconscious
can work on it, start your last task of the day and get
through working on a good part of it; and then stop
before finishing it.The second point is based on that Hemingway quote right? “The best way [to write] is always to stop when you are going good and when you know what will happen next. If you do that every day…you will never be stuck.”
I've tried it a few times. I didn't notice much improvement. Maybe it makes most sense when you are working on a problem that excedes your comfort zone.
To acheive consistency, you can't sabotage tomorrow's work by working late today. So 100% completion of today's work should be a goal in the context of the understanding that today's work has a definite ending time that is necessary to enable a successful tomorrow.
Here's an article on deliberate practice: http://graphics8.nytimes.com/images/blogs/freakonomics/pdf/D...
Here are two articles that give some insight into how writers work: http://io9.com/5106135/science-fiction-novelists-reveal-thei..., http://www.onlinecollege.org/2010/01/11/25-famous-thinkers-a...
This is the advice that I wish someone sat down and gave me when I first started my career.
For the objective metric of productivity, I've found Rescue Time [1] very helpful.
It is literally a little virus that sits there watching everything you do (including what websites you visit, what programs have focus, and so on,) and uploading it all to the cloud. Then, the kicker; a weekly email saying what fraction of your time was spent productively, and the total hours spent on productive stuff (you can configure what's productive pretty finely.) you can view all the graphs and charts you want, but ultimately I find total hours logged, and % productive, to be the only two numbers I need.
(it also sets you goals; N productive hours a day, less than M distracting hours per day, and so on, and reports your success or failure in the email too.)
>>It is literally a little virus
Just a little nitpicking ... it is not a "virus", neither literally nor figuratively - it does not replicate nor infects anything. You can call it a "trojan" at worst, but certainly NOT a virus.
[1] http://i.imgur.com/22vFOLO.png
[2] http://en.wikipedia.org/wiki/Space_character#Spaces_in_Unico...
This is a great post, and I (like many others here) wish I had considered this when I first started off. I think improving personal productivity is a force multiplier. If you are more productive, you can help your team members to be more productive. You could roll your sleeves up and tackle the "grinding" task that is stopping everybody else from progressing.
A big part of it is the physical feeling of working at the computer, it starts to hurt after a few intense days, which adds stress.
It's been making me mad as i would like to get more done, but I have to rest.
I never know how to apply advice like that of the original poster. It seems to be, to excel be smart and work diligently. How is this helpful to anyone?
(although I'll keep this tab open (among hundreds of others) so that I can get to it "later"...)