Hacker News new | comments | show | ask | jobs | submit login
Programming Is a Culture (paracode.com)
55 points by jondot 1867 days ago | hide | past | web | 34 comments | favorite

Shouldn't there be a middle ground between the two ? "501 programmers" or "I eat breathe and live programming"

People that usually go at home around 5:15 but some times are there longer because they want to finish something they are doing. Or sometimes they go out at 4:58 because they have a non programmimng related date.

People that when are not at their job want to go out with their friends, watch tv, be with their family and not think about programming or see a computer for a full night, even a full week-end, but have spent more than once a full week-end experimenting with that new SDK.

People that love programming but want to take a break every now and then.

People that like to go out at their local bar and have a drink with their (non tech/geek) friends and watch a sport match. Only to meet another tech/geek guy they didn't know and end up talking about how they both hate that programming language all night.

Yes, I'll call this the 515 Manifesto.

Exactly. I happen to like ice cream, but if I ate nothing but ice cream everyday, I'd grow sick of it pretty quickly.

I like to program and even do it in my free time. I'll even work longer hours if the problems at work are interesting enough. Still, I have other interests, friends who aren't programmers, family, and if I wasn't able to pursue those things because I was too caught up at work, I'd grow to resent my work, whatever it was.

The programming I do at work I enjoy, but it's also my job so I leave when the working day is done, or a little later if I'm caught up in something particularly interesting or urgent. Then I go home, and maybe I'll work on projects of my own, or I'll do something else that interests me.

It's not about being only into programming because it's a job and it pays well (I've been doing it since I was nine) and it's not about looking down on people who spend their lives doing nothing but. It's also not about not being one of those people who do nothing but and looking down on those who don't. It's about programming, enjoying enjoying what I do, but still having a life outside of work.

515 all the way.

There are multiple principles being mistaken for one another or improperly being combined into one. There's PASSION and BALANCE. One camp seems to disparage another for their lack of balance, while the other responds that the first lacks passion.

They're not talking about the same thing! We can have both. We shouldn't spend all day in a job that leaves us uninspired, but neither should we let passion (or any driving force) make us sacrifice our physical health or essential relationships. We SHOULD have both.

Well put! I didn't see this before I posted mine.

I'm surprised at the reactions, both positive and negative. I took the manifesto as a humourous criticism of people using our love for programming as a way to exploit us.

As a programmer, I do most of the mocked off-hours activities (except the bathroom thing), but as a professional programmer, I happily leave the office in time.

Indeed, I find the idea of "software development as art" much more palatable when it's coming from a fellow coder. More often than not I'm hearing this kind of talk from the management level where it sounds more like a rationale for long and irregular hours with very little reward.

I took the same view, I think there's been a kind of conflation of loving your profession and not being a 501 developer.

Well, the author describes a certain kind of culture surrounding certain kinds of programming, anyway. It's a culture that seems pretty common in web development circles, in startups, and on HN, and I definitely buy into it to a certain extent.

But I definitely know a lot of programmers who don't. Or maybe some of them should be described as "people who program", because they're

- Scientists who use programming to simulate or analyze their data

- Mechanical or electrical engineers who use programming in their work

- Accountants who can't quite make do with Excel and start doing their own programming

- Small business owners who do just a little bit of process automation

- And yes, dedicated programmers who work on deeply boring things like hospital infrastructure software, factory automation, and the like

(Naming a few people I've interacted with personally; totally sure there are more examples.)

I have a hard time imagining any of these people reading the line

Programming is a culture of problem solvers, efficient and creative people, who want to make a change in the world because they realize that nowadays, software is omnipresent and that from this property alone, change CAN happen.

and doing more than rolling their eyes, and turning back to the medical billing software they're working on.

That doesn't mean programming can't be an awesome and artistic endeavor. It can! But it can also be a means to an unrelated end, and carried out by people who don't care one bit about code in and of itself, only about the domain-specific task which is their personal driving force. That doesn't mean they're bad at programming either: these people also go to conferences and collaborate on solutions and think deeply and well about code, but they don't attach any special meaning to it either.

All that means is that there are a lot of different "programming" cultures (or "cultures that program"?). The OP describes one of them, and it's one I'm a part of much of the time. But that doesn't mean I think the others are wrong.

(Incidentally, the "people who program" I described above may or may not be more likely to head home at 5, depending on their local culture.)

Edit: fix formatting, slight re-phrase

Very true. I was bewildered by the hate for the 501 manifesto. I think of myself as a person who likes math so much that I will program to build fun stuff that lets me do more math. I have had days where I was so fully immersed into the problem that I have spent around 20 hours "hacking" (really reading papers, covering white boards with math and prototyping out stuff). I have also had days where I was in implementation mode and I usually don't spend more than 8-9 hours doing that (unless I need to ship tomorrow or something). I am puzzled at the idea that somehow me finding something more fascinating (and definitely much more harder) than programming to do on my personal time is a bad thing. As long as I spend my day productively and get stuff done, why does it really matter?

As a side note, I have found that setting a hard cut off helps you to push away irrelevant chit chatting, youtube, emails and what not and focussing on the job in order to get it done. While obviously I have had ideas in the shower and that helps my next day become more productive, I don't see the need to immediately act on that and go open up my computer and write code.

As long as I spend my day productively and get stuff done, why does it really matter?

Because people with a life outside their official job start demanding things like shorter hours or overtime pay, and those cost money.

+1. there's nothing like using your GitHub account as your resume to let potential employers know you're prepared to work for free.

I've worked in the past for Mentor Graphics. That's a very hardcore, complex, pure domain related problems in electrical engineering to implement in software.

I had passion for both the domain (although not my own) and code.

There is passion in everything, even in billing or accounting. I was able to drive myself to love electrical engineering, and although now I'm back in Web, I still talk about EE with a spark in my eyes.

Nice post, made a few good points. But it's just a vain battle about a not so very interesting "manifesto" by some people who think they need to make some point (or whatever).

I'm not a 501 programmer for sure. I agree, that there is a culture as you describe it, but I strongly disagree, that every programmer somehow needs to be part of this culture. I have worked with many 501 programmers and often enough they do a good job and take away a lot of work during their office hours (especially the boring kind of work). Actually I think most everyday programmers are of this kind.

The part about pitying wasn't very smart and (as you say), adding a small piece of "respect" doesn't really help it very much. But to care about it, my first step would have to be to take this whole manifesto thing seriously, which I can't do. Most 501 I know wouldn't care about it too. Especially since it doesn't say much in the first place.

Thanks. I'm not sure that manifesto is being a thing that is overlooked; but regardless of it, I've been feeling the 501'er mocking others around for a while, without a manifesto being published at all.

Really? I think there's far, far more mocking and pity and criticism going the other way.

Programming is an act. Culture has built up around it over the last half a century, but it's not necessary to take part in that culture just because you are good at programming.

Which is where the difference in mindset lies. I fully understand your point, but I also fully see it as a cultural thing.

Is drinking an act or a culture? http://en.wikipedia.org/wiki/Drinking_culture

Exactly the point, you can drink in a "cultural" way. There are actually very different drinking cultures. (As there may be different programming cultures?)

Drinking can even become a bad habit. Or someone can become an alcoholic and could still see it as a culture (read Charles Bukowski.)

A culture in any case is something very artificial and not very well defined in most cases. Everybody can simply declare to be part of a certain culture or redefine his own culture at any point. So now there is a 501 culture...

I think a culture is surrounded with some kind of related passion.

501's passion is to get back home. I can respect that, but it has nothing to do with programming. As I've noted, imagine for a moment that they're talking about fishing. Their points remain valid to what they're seeking. However many link it as a manifesto of programmers.

Its the same as publishing "Do no harm" as a manifesto, and it has nothing to do with programming, nonetheless a programmers culture.

Do you need to code all the time to be passionate?

I don't think so.

DHH of Rails fame in particular claims to only code 4 hours a day. I think most folks on here would recognize him as a passionate coder.

I think its more about how you approach the craft than how many hours you put into it a day.

Its also a bit presumptive to assume that because someone is leaving at 5:01 that they won't put energy into coding later. People have kids that need picking up or train or carpool schedules. Stop watching the clock. The clock is just a number on the wall. The office is just a building.

Let's all get back to work and get shit done. No more worrying about other people's schedules or what they're doing. We're spending to much time worrying about other folks and their personal business.

Let's all just agree to "get shit done". If you're working with someone who doesn't "get shit done" fire them, have your boss fire them... get rid of them. However, let's not use their time in the office as that metric.

New mantra for our "culture": Get Shit Done or GTFO.

Everything else distracts from productivity.

Programming is not a culture. There is a culture around programming similar to that of dulce et decorum est, which may explain why so many programmers see themselves as some kind of jedi knight fighting evil in a clearly delineated black and white world.

The world is not black or white, being a 501 programmer is not a binary answer, it is an answer with many subtle shades of gray.

Instagram didn't change the world, but it certainly did make 12 people very rich. Most people who work on a startup will not become stupidly rich, changing the world is something the people who own the stock tell people dumb enough to believe it. Programming as a culture is yet one more of those things. If it was a culture you would not get paid to do it, just like no one gets paid to be Italian.

501 programmers are akin to mercenaries, we believe in the almighty dollar and don't think that the King or country is something worth dying for, and especially not stock options. We go home at 5:01 because we aren't being paid to stay any longer, and we know that the vast majority of the benefits of staying past 5:01 will accrue to those who hold stock rather than to those who stay past 5:01. (If staying past 5:01 is even productive, which many studies think is not)

If it was a culture you would not get paid to do it, just like no one gets paid to be Italian.


The point isn't being made about the values of going back home, or living life. Those, again, are generic things anyone, in any profession would be taking up and it would be very healthy.

The point is the subtle-looking bash at open source, and people that hold it as a passion.

Sure, you shouldn't spend your life making a certain someone's dream come true. And if you do, you should be sure you want to make that dream come true. But you can spend it doing something you love.

Even mercenaries need to train.

Some mercenaries are more like, "Vive Le Mort," which is to say they are often disturbingly enthusiastic about what they do. That's understandable for a field where one risks their life and physical well being.

Programming is not like that. Being a workaholic programmer should be a personal choice and not a culture. I think that's all the 501 guy is trying to say.

I find this quote totally wrong "Experienced programmers know that in software, there is no material waste like in carpentry."

There is waste of electricity the more time you waste on writing bad code. This wastes electricity and the materials used to generate it. Even though this is really small and you do not notice it anywhere else except in your electricity invoice.

Another material waste is to build hardware and software can not be used without hardware. Building computer parts does create waste when the parts are created this same happens when you saw a wood plank. Even if you use the plank you cut you have wasted the amount of wood your saw cut out. Basically sawdust is in this case the waste, but I am not certain how much building hardware will create dust, I think it's really minimal, but it's still waste of materials.

I wasted quite a bit of electricity by writing this meaningless post.

Question: do you think there's a way to have a balance between the '501-ers' and the '24 minus sleepers'?

I only ask because I feel like I do it pretty well: 1) I am newly married and loving that new part of my life 2) I work out regularly with my wife and friends 3) I spend plenty of quality time with other friends

and yet

4) My brain is never really not cranking on whatever I've been fighting to code at work 5) When I have a brilliant/dumb idea and I have time/access to try it I'll log in to give it a whirl. 6) I read about programming/C.S. for fun (because I find it fascinating).

I find that most everything (regardless of what it is) is best in moderation, even things you're passionate about. Basically: why is this so polarizing? I see it as a false dichotomy.

People want to be respected for whatever they do, whether it is going home at 5 to their family or programming at night for an open source project.

Yet both sides don't seem to understand that they need to respect the other side themself too if they want to get (and deserve) respect.

There are many different ways to live a life. I respect each one who does what he feels is right for him, even when I am sure something different is right for myself. Well, maybe unless they pity me for what I do or claim I am not cultivated or similar.

Yeah, I don't like that culture. It's too easy to get burnt out on.

I refuse to work in an industry that demands that level of constant dedication and availability for work as non-critical to life as programming.

Wonderful post. You've given voice to how I feel.

decent enough post ;-)

> We (programmers) are a culture now, and usually the passionate ones are the ones that are being mocked.

nonsense. the tear-jerking displays of ninja butthurt i've seen from certain quarters since i wrote the manifesto should leave no-one in any doubt just who is, and who isn't, accustomed to being mocked.

Accusations on both sides that the other lacks the requisite dedication for membership in the guild or that the other is allowing itself to be exploited hint at the larger and more delicate issue of equitable working conditions. Culture is generally associated with technology in any case, though here the term signifies an attempt to distinguish programming and programmers from the "culture" of the corporate workplace, under circumstances in which one cannot easily speak of classes with differing economic interests. One resorts to a euphemism like culture (management versus programmers and system administrators) in lieu of class.

501 Programmers and Craft? Well Most of the programmers and it types I have worked considered themselves "Professional" and not skilled tradesmen such as carpenters

The 501 Manifesto makes some good points but using terms like Craft and being rigid about 9-5 & days a week, makes me think that they havent made the trade up from blue collar shop floor worker attitudes. I am quite strict with my time but ill do what hours I consider are required to ge the job done.

It may be different in the USA but in the UK there are huge social and class implications in being a professional and all that entails.

As a "profession" collectivly we need to stamp out any attempt to devalue our jobs by conflating them with lower status and lower pay "Craft" ones.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | DMCA | Apply to YC | Contact