News for hackers. Stuff that matters.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by TimothyFitz on Tuesday March 22, 2011 @01:59PM (#2355511)
Does Programming, Motherfucker really scale though? Every process listed is about teams of people Programming Together, Motherfucker. I've seen two people engaged in Programming, Motherfucker without Talking to Eachother, Motherfucker and the results were Disastrous, Motherfucker.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by j_baker on Tuesday March 22, 2011 @02:35PM (#2355748)
...

Only on HN would you see a topic called "Programming, motherfucker" and see a comment asking "But does this scale?"

Re:The Motherfucking Manifesto For Programming, Motherfuckers by zedshaw on Tuesday March 22, 2011 @02:07PM (#2355555)
That's Hacking, Douchebag. This is Programming, Motherfucker.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by TheAmazingIdiot on Tuesday March 22, 2011 @02:25PM (#2355685)
Why is it I'm expecting a partnership with /b/ and an endowment from GNAA?

Oh look, a feature short by Goatse Man and 2girls1cup.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by oconnore on Tuesday March 22, 2011 @02:09PM (#2355570)
You can't talk to your colleagues without a Scrum meeting? That seems to be a personal issue, not a methodology issue.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by gaius on Tuesday March 22, 2011 @03:51PM (#2356124)
It is like that in parts of my company. If I need something, I wander over to the desk of the person who works on it, who I know, and I say, how about it, and he says, cool (or vice versa).

The other group write up huge requirements documents, set up Sharepoint sites and wikis, raise tickets and Jiras, you name it, but they never talk to each other and so they get nothing done...

Re:The Motherfucking Manifesto For Programming, Motherfuckers by MartinCron on Tuesday March 22, 2011 @04:06PM (#2356208)
That's the thing, Scrum basically assumes that all software teams are so dysfunctional that they won't talk to each other unless and until everyone is watching.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by StrawberryFrog on Tuesday March 22, 2011 @04:22PM (#2356285)
Scrum! It teaches bad teams good habits!

Nothing in scrum stops you talking to anyone at any time. The stand-up makes sure that you have to say a few words to the whole team and other interested parties, daily.

I like to read criticisms of scrum, when they're not straw-man ones.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by kelnos on Tuesday March 22, 2011 @05:37PM (#2356634)
How was the parent a straw-man? He suggested that teams that can't talk to each other without the prodding of Scrum are dysfunctional (which I happen to agree with). That's not even necessarily a criticism of Scrum, it just points out that Scrum can be good for teams that, as you say, have bad habits.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by MartinCron on Tuesday March 22, 2011 @08:32PM (#2357286)
I didn't mean it as a straw-man criticism, just an observation that scrum is very rigid and prescriptive; it's all about the what and the how instead the why.

I'm a big believer in trying to persuade people to keep feedback loops short, make teams small and cross-functional, and to design/code/test/ship in the smallest increments possible. At this point, calling an approach agile/scrum/xp carries a lot of baggage.

If people don't get the why (e.g. the team isn't small and cross-functional, and people aren't working on tiny increments) it kind of doesn't matter if you get everyone in the room at the same time every day.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by DanielRibeiro on Tuesday March 22, 2011 @02:31PM (#2355729)
Took a while to write a manifesto, after suggesting this on September 7 2010:

I'm going to start a post-Agile programming methodology called, "Programming, Motherfucker." It'll be awesome.

http://twitter.com/zedshaw/status/23267170323

Re:The Motherfucking Manifesto For Programming, Motherfuckers by mfukar on Tuesday March 22, 2011 @04:00PM (#2356169)
That's because in the meantime Zed's been Programming, Motherfucker.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by benjaminws on Tuesday March 22, 2011 @02:08PM (#2355562)
Programming, Motherfuckers is FUCK SCALE.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by fleitz on Tuesday March 22, 2011 @02:26PM (#2355695)
Nothing really scales. There is no process that will allow 100 hacks to make a Michelangelo, if you want a Michelangelo you're going to have to fucking hire him. If this bullshit really worked then corporate IT departments would be the envy of every startup out there.

If your software is late/buggy/whatever the solution is rarely adding people / process. It's usually removing people / process. Process is what allows managers to fuck up projects.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by rch on Tuesday March 22, 2011 @02:49PM (#2355807)
"the solution is rarely adding people / process. It's usually removing people / process"

hell yeah.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by DavidSJ on Tuesday March 22, 2011 @05:46PM (#2356665)
I believe you mean hell yeah, motherfucker.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by whitmo on Tuesday March 22, 2011 @06:19PM (#2356798)
Ala the larry ellison story about him improving the productivity of projects by removing people until they started moving.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by Dylanlacey on Tuesday March 22, 2011 @07:34PM (#2357099)
More Mythical Man Month.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by evanlh on Tuesday March 22, 2011 @09:51PM (#2357537)
You're saying there's too many?

http://www.youtube.com/watch?v=My-P4LssMsI

It seemed appropriate.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by twomuchpizza on Tuesday March 22, 2011 @05:27PM (#2356591)
If the problem you're trying to solve is that your life is too boring, sure. If the problem is a large software project, nah.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by greyman on Tuesday March 22, 2011 @04:02PM (#2356178)
Not necessarily. I was once working in a large software project (500+ people), which went off-track, and then some added processes helped to save it, like for example continuous preintegration and more rigorous testing before each check-in.

I agree with the parent comment. "Just programming" looks nice on a manifesto, but you need processes when you want to scale.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by gridspy on Tuesday March 22, 2011 @04:40PM (#2356374)
I saw your comment and laughed, then realized you were serious.

If you are working with 500 programmers, they are likely to be mostly mediocre - the good ones would have run away screaming to better jobs.

Sure, if you have 500 mediocre programmers, you need to rope them in with systems. If you hire 5-10 great programmers, stand well clear and let them do their job.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by jordan0day on Tuesday March 22, 2011 @05:16PM (#2356542)
I've struggled with how to respond to your comment. You seem to be taking the view that any project that requires more than 5-10 great programmers is inherently flawed. I think this is false.

I've worked on very large software systems before, places that had around 1,000 developers spread throughout the organization. While there were a lot of mediocre, and truly some flat out bad developers, I guarantee you that 5-10, or 10-20 great programmers could have developed an equal system.

Throwing bodies at a deadline doesn't usually work. Throwing bodies at a problem can help, though.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by quadhome on Tuesday March 22, 2011 @05:44PM (#2356656)
What single project requires more than 5-10 programmers?

Places with 1,000 developers spread throughout are working on hundreds of interacting projects. But, the communication and coordination isn't between all 1,000 developers.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by billswift on Tuesday March 22, 2011 @07:51PM (#2357151)
Your last line: "But, the communication and coordination isn't between all 1,000 developers." Deserves more than one upvote - in any successful large scale project, the programmers work in very small groups, often just pairs, and interact with other groups mainly through the code-base itself. I am tempted to say almost exclusively through the code. That is why open source works as well as it does; if management actually added much value, linux could not be as useful as it is. In fact, I suspect management often is a negative factor; when large commercial projects work it is the result of superior design, and their ability to maintain adherence to the design, which is when management does add value.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by bad_user on Tuesday March 22, 2011 @08:07PM (#2357202)
If you're talking about "one product" which you want to sell, then build Windows or Microsoft Office with 5 programmers.

    the communication and coordination isn't between 
    all 1,000 developers.
No, it's worse. Teams usually don't know what the others are doing, leading to broken, blocked or half-baked features and work duplication.

Here's an example: http://moishelettvin.blogspot.com/2006/11/windows-shutdown-c...

Having all those 1000 developers talk to one another would solve all problems, but this is a problem of scale which processes solve to a certain extent. Your opinion also highlights what's wrong with software development as a whole -- you seem to be under the impression that you can go and hack stuff in a vacuum, without interacting with others.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by jcitme on Tuesday March 22, 2011 @06:21PM (#2356802)
www.linux.org/
Re:The Motherfucking Manifesto For Programming, Motherfuckers by kijinbear on Tuesday March 22, 2011 @07:44PM (#2357131)
They don't all work on the same part of the kernel.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by bad_user on Tuesday March 22, 2011 @07:58PM (#2357167)
Sorry, but that's one of the stupidest arguments I ever heard (not referring only to you, but also to the parent's parent that brought it up).

Linux is a monolithic kernel, and because kernel parts depend on one another, unfinished changes are often blocking other changes and/or are breaking other parts.

Of course you aren't going to have 1000 developers working on the same line in the same file.

Linux is a product by itself, not a distribution of independent parts. You either have the whole kernel, or you have nothing. And I would die to see another kernel developed by 5 people, achieving the same feature-parity / stability and all that jazz as Linux.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by dalore on Tuesday March 22, 2011 @07:08PM (#2356994)
It is GNU/Linux thank you.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by krakensden on Tuesday March 22, 2011 @07:35PM (#2357104)
Distributions are GNU/Linux. The Linux kernel is Linux.

And yes, I did well actually you.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by gridspy on Tuesday March 22, 2011 @08:33PM (#2357293)
I've placed a ceiling at 5-10 programmers, because most tasks can be broken into modules such that only 5-10 programmers are working on a module, with decent separation between modules.

Beyond ~7 people, someone needs to begin to coordinate, which is the logical introduction of management and process. But again, avoid large teams where possible.

Linux, Windows, Microsoft office - all great examples of a huge number of modules working together. For instance, the programmer writing the font rendering doesn't need to work closely with the video driver developer, they interact through a carefully designed interface.

But if you are in a startup, odds are you are slinging many large libraries and iterating quickly on new code (that often only you consume). In that case, you're better to "Program, Motherfucker"

Re:The Motherfucking Manifesto For Programming, Motherfuckers by numeromancer on Tuesday March 22, 2011 @08:27PM (#2357269)
Throwing bodies at a problem can help, though.

[Piling] bodies at [the door] can help, though.

FTFY.

Re:The Motherfucking Manifesto For Programming, Motherfuckers by bguthrie on Tuesday March 22, 2011 @09:41PM (#2357508)
This completely misses the point. Corporate IT doesn't want a Michaelangelo--they don't even particularly expect to be the envy of every startup out there. They just want to get shit done. It doesn't have to be spectacular shit, but the people working there generally harbor no illusions--they aren't offering stock options, and the people they hire generally don't care about the problem domain. They want to get shit accomplished given these constraints, not chip the perfect webapp out of a solid block of (fucking) granite.
Re:The Motherfucking Manifesto For Programming, Motherfuckers by Kherozen on Tuesday March 22, 2011 @03:44PM (#2356082)
"You know you're finish coding not when there is nothing more to add but when there is nothing more to remove."
Re:The Motherfucking Manifesto For Programming, Motherfuckers by stoney on Tuesday March 22, 2011 @09:12PM (#2357430)
But the reality is that 99% of the time, companies don't need a chapel roof painted, they just need a quick watercolour to put in reception (abandoning the painting analogy now).

It's a business decision - is it cheaper to hire one genius to produce something amazing or to hire a few mediocre programmers and manage the heck out of them to produce something that just about works?

Re:The Motherfucking Manifesto For Programming, Motherfuckers by mreid on Tuesday March 22, 2011 @05:49PM (#2356678)
Recruitment, Douchebag.