Is 'Brogramming' Killing Requirements Engineering? 432
chicksdaddy writes "Veracode's blog has an interesting piece that looks at whether 'brogramming' — the testosterone- and booze-fueled coding culture depicted in movies like The Social Network — spells death for the 'engineering' part of 'software engineering.' From the post: 'The Social Network is a great movie. But, let's face it, the kind of "coding" you're doing when you're "wired in"... or drunk... isn't likely to be very careful or – need we say – secure. Whatever else it may have done, [brogramming's] focus on flashy, testosterone-fueled "competitive" coding divorces "writing software" – free form, creative, inspirational – from "software engineering," its older, more thoughtful and reliable cousin.' The article picks up on Leslie Lamport's recent piece in Wired: 'Why we should build software like we build houses' — also worth reading!"
The equestrian pattern (Score:5, Funny)
I read that as "Why we should build software like we build Horses"
But then I am drunk at work today.
Or why we should not build software like houses (Score:4, Funny)
Good software means much more. It requires honesty, integrity, empathy, even a talent.
Re:Never seen one (Score:4, Funny)
Obligatory:
Hey girl, the only way you're gonna keep my stack from overflowing is if you dereference my pointer. [tumblr.com]
Re:Brogramming??? (Score:5, Funny)
If houses are code, I think I found Perl [all-that-i...esting.com].
Re:Brogramming??? (Score:5, Funny)
I clicked that article and there is a image with the word scrogrammer. If that's the alternative, I suggest we just stop using words to describe things.
Tubular (Score:5, Funny)
Bromancing the Brogrammer (Score:5, Funny)
There was once a brogrammer from Slo
who coded with a bro named mo
together they flowed, to and fro
until they were both let go
Re:Prototyping (Score:2, Funny)
There's a certain urgency, determination, and focus that just isn't there at other times.
These days, I do a line of coke once in a while for a similar effect but it's not the same thing.
Re:Brogramming??? (Score:5, Funny)
I've seen many fights on slashdot in my time, but "carpenters vs. roofers" is a new one on me.
Re:We should build software like we build software (Score:5, Funny)
Software and houses are not similer.
Of course they are.
For one thing, when people ask an architect to design a new home for their family, it's perfectly normal to call him back six months later in the middle of first fit and say that actually what they need is a skyscraper. With a secret underground lair. And access to open water, so unfortunately the urban site where half of it currently sits is no good and the whole thing will need to be relocated to the nearest coast. And the building regs have suddenly changed, so now instead of concrete and rebars, the whole thing has to be made of environmentally friendly engineered wood materials.
Moreover, just like houses, we have thousands of years of experience building software now. We've become pretty good at telling in advance which techniques will be needed, what order the different components will need to be built in, and especially estimating how long it's going to take and what it will cost.
Actually, maybe it is a slightly unfair comparison, because the amateurs who build physical structures, like that mile-long railway tunnel that was drilled from both ends and wound up out of position by absurd amounts like 4mm when they met in the middle, can't really keep up with software development professionals who can build precisely specified interfaces and get everything to fit together exactly on the first attempt.
That's mostly because the tools and processes for doing all of this in the software world are well understood throughout the industry, which in turn is because everyone practising software development has gone through rigorous training taught by people who are themselves experts with years of practical experience to draw upon. Engineers and architects try to do the same thing, but they just haven't quite nailed it yet. I guess software guys have an advantage here because those tools and processes are universal and uncontroversial, so everyone in software does things the same way and software project managers don't really need to co-ordinate their team to quite the same extent that, say, a lead contractor would when building a house.
But apart from that slight advantage because software development is so much better understood, I think it's perfectly reasonable to compare building a house to building software and expect things to work the same way. There's really no qualitative difference at all, and basically the same processes work just as well for both tasks.
Re:Brogramming??? (Score:2, Funny)
int main(int argc, char** argv)
{return printf("Bro, do you even code?\n");}
Re:Brogramming??? (Score:5, Funny)
Re:Brogramming??? (Score:5, Funny)
I don't know why were are bringing roofers into this in the first place when a perfectly good car metaphor is probably waiting to be used.
Re:Brogramming??? (Score:5, Funny)
From a software engineer who has never lived in Silicon Valley, the whole idea is ridiculous to me. No team I've ever worked with would even consider working while drunk.
That's because they are generally too busy doing lines.
Of code. Lines of code...
Re:Brogramming??? (Score:4, Funny)
Well, if you're legitimately drunk, your body has ways to shut that whole thing down.