Live data from Hacker News

Ask HN: How are some people exceptionally productive?

news.ycombinator.com

111–120 of 137 posts

Re: Ask HN: How are some people exceptionally productive?

#111

Never heard of the two people you mention, but I'll share what I've observed: The two biggest time sinks in everyday programming are 1.) communicating with everyone else and 2.) looking things up. If you can avoid these and have a quick analytical mind, you can basically program as quickly as you can type. So the secret to being insanely productive is to work as a solo programmer in a domain where you are thoroughly…

PG wrote in one of his essays that he used to sleep in the morning, doing stuff involving others (like meetings) in the afternoon and coding in the evening and night to avoid interruption.

Ben Horowitz wrote in his book that the most productive management style is to assign one task only to one person and allow him to make decisions on his own without to force him to discuss everything with a bunch of people.

IMHO the key to productivity is managing your tasks/team in a way avoiding interruptions and reducing communication to the minimum.

Re: Ask HN: How are some people exceptionally productive?

#112
post #47
post #29

Earlier quoted context omitted.

"looking things up" To expand on this point, it's not the time it takes to look things up. It's the loops of trying and failing. I've recently switched from C# to Ruby. In C# I'd consider myself as close to an expert as an ordinary man can get. I never had to look anything up, but more importantly... it was rare that I was confused why something didn't work. In fact most of the time when I saw something not work I kn…

I am not a programmer but I am able to do some "things". Starting with Unix in the 80's (and trying to do C) back when you had a book or two (and nobody to ask any questions). There were many times that I had to work 4 hours or longer just to figure out and iterate (to see what would actually work syntax wise) what I could easily search for today. One book or two, nobody to ask, total trial and error. I always tried…

same here - it's been tough breaking the 'buy a new book' habit. If there's something I find that I want to save, I will either save the complete page, or just copy/paste the relevant text.

Re: Ask HN: How are some people exceptionally productive?

#113

Earlier quoted context omitted.

I think having something else to also do is critical. I'm a musician and I kept 70+ hour weeks in school, but 16 of those hours were at gigs, and Sundays were off limits for anything at all - no work at all. It wasn't gigging but just jamming when I later was in startup land for a few years. I found the effect the same. You need something to get your mind completely off work.

To be honest, my current problem is exactly the opposite - I can't get my mind on work. There're always at least three other projects occupying my mind that would be a much better use of my time than the day job except I wouldn't be able to pay my rent with them :(.

Maybe just tell us about them.

Re: Ask HN: How are some people exceptionally productive?

#114
post #113

Earlier quoted context omitted.

To be honest, my current problem is exactly the opposite - I can't get my mind on work. There're always at least three other projects occupying my mind that would be a much better use of my time than the day job except I wouldn't be able to pay my rent with them :(.

Maybe just tell us about them.

One is a Mars colonization roguelike I'm designing every spare minute I have, the other is half-finished haptic device that only needs me to find the time to design and make a PCB (and solder components I already have), and the third would be a set-up for notifications from various home appliances via processing the noises they make. I have all the hardware for this already in place, but lack the time to code the required DSP.

Re: Ask HN: How are some people exceptionally productive?

#115

Earlier quoted context omitted.

On the other hand, if you can do this and your co-workers can't, you may be tempted to write complex and entangled code, because the implications of each line are perfectly obvious to you.

Or you end up with something like Git, which is easy to use if you have the exact same background/education/philosophy as the person who wrote it, but has terrible usability for pretty much everybody else.

I like to joke git's motto would be "made by people smarter than you, for people smarter than you". It still rocks.

Re: Ask HN: How are some people exceptionally productive?

#116
post #104

Earlier quoted context omitted.

So don't use them. Virtually all my work at Google was with vanilla JS and I had the DOM APIs memorized in my head.

So how do you know you're not missing out, or more precisely, that you're not missing out and what you are missing out is so great that the productivity you gain from restricting yourself to the subset of tools you fully master does not compensate for what you are missing out - I am thinking of frameworks like Angular or React? I am asking that as someone who doesn't use the frameworks I mentioned and sticks with van…

That's the question everyone asks, right? People tend to be really insecure about the possibility that someone else might be doing better than they are.

The short answer is that you don't - there is always the possibility that someone has invented something that lets someone else do your job way more effectively. But you accept the risk that you're missing out for the certainty that you're getting features done and code written quickly. And periodically, maybe look around and try some of the new inventions that seem to be getting traction to see if they really do make your job better.

The key point is to rely on your own data and observations rather than the opinions of others.

Re: Ask HN: How are some people exceptionally productive?

#117
post #110

Never heard of the two people you mention, but I'll share what I've observed: The two biggest time sinks in everyday programming are 1.) communicating with everyone else and 2.) looking things up. If you can avoid these and have a quick analytical mind, you can basically program as quickly as you can type. So the secret to being insanely productive is to work as a solo programmer in a domain where you are thoroughly…

Isn't this an argument in favor of IDEs vs editors? As much as I prefer the philosophy of Emacs/vim/sublime + cmdline tools, code completion is never great (see Yegge's "grok" rants). I really enjoyed a project I wrote in Java inside Eclipse, because code completion really helped me not open Google all the time. But I hate everything else about Java... Contrast with Go, where achieving flow is hard because you can't…

Code completion is great, and it certainly helps me go a lot faster.

But beyond this, it's an argument in favor of smallness. Java needs code completion because the standard libraries are huge - a tech stack + domain where your interface with the outside world is much smaller (eg. DSP in C) is much easier to memorize than one where the interface surface is huge (eg. Swing and Java).

Re: Ask HN: How are some people exceptionally productive?

#118

Never heard of the two people you mention, but I'll share what I've observed: The two biggest time sinks in everyday programming are 1.) communicating with everyone else and 2.) looking things up. If you can avoid these and have a quick analytical mind, you can basically program as quickly as you can type. So the secret to being insanely productive is to work as a solo programmer in a domain where you are thoroughly…

I'm just not sure how it's possible to have any API committed to memory these days, though I agree that if one picks a small number of dependencies as core tech, one stands a far better chance of doing it and will realise better productivity outcomes than someone who compulsively includes every 30-line $PITHYNAME.js novelty to hit HN and GitHub. Still, I grew up writing backend C in Linux environments, focusing heavi…

I think you've captured well the spirit of my comment.

The point that I didn't mention - and that may partially answer your question - is that the other thing all of these "highly productive programmers" did is narrowly specialize in a particular niche where there weren't good existing solutions but are a number of potential users. There are still C libraries that remain unbuilt! Actually, with the decline of good C programmers and the rise of scripting languages, the relative demand for quality C libraries has probably gone upwards if anything. Usually these programmers (along with more recent ones like Zed Shaw and Mongrel, Brad Fitzpatrick and memcached, or Salvatore Sanfilippo and Redis) identified a specific need, solved it quickly and efficiently, and then leveraged the fame & reputation from that successful open-source project into a good job at a company that lets them do what they want or a series of consulting engagements supporting that software.

Re: Ask HN: How are some people exceptionally productive?

#119
post #87

Earlier quoted context omitted.

> If you can avoid these and have a quick analytical mind, you can basically program as quickly as you can type. Without stopping to think about design? I can't imagine that.

The domains where most of these programmers work are in ones where the problems are fairly well-defined. For example, what's the design of ffmpeg? It takes in a well-specified video codec and outputs a video stream. What's the design of protobufs, MapReduce, or GFS? In each case they had several motivating examples built using earlier technologies, and knew exactly what the key metrics are that they wanted to optimiz…

That's a nice description, but up-front or not, in my view the design work should be counted as part of the programming. Maybe that's pedantic, but the idea of 'programming at the speed of typing' sounds positively dystopian to me.

Re: Ask HN: How are some people exceptionally productive?

#120

Earlier quoted context omitted.

I'm just not sure how it's possible to have any API committed to memory these days, though I agree that if one picks a small number of dependencies as core tech, one stands a far better chance of doing it and will realise better productivity outcomes than someone who compulsively includes every 30-line $PITHYNAME.js novelty to hit HN and GitHub. Still, I grew up writing backend C in Linux environments, focusing heavi…

I think you've captured well the spirit of my comment. The point that I didn't mention - and that may partially answer your question - is that the other thing all of these "highly productive programmers" did is narrowly specialize in a particular niche where there weren't good existing solutions but are a number of potential users. There are still C libraries that remain unbuilt! Actually, with the decline of good C…

identified a specific need, solved it quickly and efficiently, and then leveraged the fame & reputation from that successful open-source project into a good job at a company that lets them do what they want or a series of consulting engagements supporting that software.

That's what I need to do. I almost did a few years ago, but unfortunately made the mistake of exclusively licencing the project to the customer, for a very cut-rate price. It was a gamble, as it was skunkworks, so it could have paid really well. Instead, it paid crappily, while demand for it elsewhere was abundant. Alas, IP...

Post reply on HN