Symbolic Violence Beats Lava Lamps All To Pieces 128
cdance writes "Traditional Lava Lamps, and of course email, are the tools of choice to notify your dev team that the build in your continuous integration system is broken. However, lava lamps, just like pink curtains and shag pile, don't really fit into the culture of many modern development teams. There is now a solution. Retaliation is a new Jenkins CI build monitor that automatically coordinates a foam missile counter-attack against the developer who breaks the build. It does this by playing a pre-programmed control sequence to a USB Foam Missile Launcher to target the offending code monkey."
The 90's called (Score:5, Insightful)
They want their dot.com bubble era development culture back.
Re: (Score:1)
I'll glady donate someone else's Kingdom for a +1 there. Bravo.
Re: (Score:1)
It would be 'symbolic' violence if it just aimed the nerf missile launcher at the person.
It becomes actual violence once the projectile is launched, whether or not it actually strikes the intended target.
Re: (Score:1)
Oh stop being such a wussy... What's a foam missile between developers?!
Here where I work, the offender has to buy cake if the code he committed is broken. Here the cake is not a lie!
Re:The 90's called (Score:4, Funny)
Re: (Score:1)
Re:The 90's called (Score:4, Insightful)
They want their dot.com bubble era development culture back.
No, that was me calling. I wanted to go back to the 90s era development culture, as we seemed to get a lot more done back then.
Re:The 90's called (Score:4, Insightful)
Let me guess, you were born sometime after 1990, weren't you?
In the 1990s and the very early 2000s, this kind of behavior never happened at places making real profit. Why? Because developers at a place like that are too fucking busy making money. They are also talented enough to not fuck up constantly, and don't need goddamn build failure lights or co-workers hitting them in the genitals with foam sports equipment.
We only ever saw this nonsense at places made up of fools. You know, the sorts of places where they hired people with useless Sociology degrees to be programmers because they once turned on a Commodore 64 in their youth. When you put enough of these idiots together, especially doing work they have absolutely no clue how to do, and you end up with people throwing beach balls around the office rather than getting work done and making money. Oddly enough, these places end up going under! But the work environment was so much fun, the former employees would say. For the six months it lasted before the funding ran out, it was a great time!
The same thing is happening today. The Web 2.0 bubble is about to burst. We've got many Ruby on Rails "developers" and NoSQL "DBAs" all over the place working on unprofitable applications. They often waste time playing cubicle games instead of working. When the bubble bursts, they'll be out on their asses. Nobody will touch them, thanks to the terrible reputation that Rails and NoSQL are getting these days.
Re: (Score:3)
We only ever saw this nonsense at places made up of fools.
A great deal of the agile stuff has actually been tested -- as in, measuring the number of production defects before and after adopting agile practices.
CI works. Information radiators work. (That is, anything that shoves vital info like "the build is broken" at people with no opt-out).
This particular information radiator is a bit daft, but it doesn't seem like it took much effort, and someone's enjoyed themselves, so where's the harm?
I'm somewhat oblivious to what the world thinks about Rails. It seems like
Re: (Score:2)
Me neither. I mean, it's webscale! [depth-first.com]
Re: (Score:2)
That's so true! When I first found out about mysql, I breathed a huge sigh of relief that I didn't have to work with Oracle anymore.
Until I found that people who didn't understand SQL, didn't want to learn about it, or deal with structure in their data, would simply glom everything together into one field using serialize() and unserialize(), and use it as a key-value table. Oh well!
Re: (Score:2)
Re: (Score:2)
It's called a work ethic and companies that are getting things done are burying companies playing touchy feely with their HR Depts and playing cubicle games.
I had the misfortune of being a liaison to one of these companies. This kind of behavior is unacceptable rubbish of the highest stinking order.
- Dan.
Re: (Score:2)
I remember TripWire was making huge profits, and they had alcohol and nerf weapons in the office every Friday.
Re: (Score:2)
You could tattoo ".com" on a monkey's butt and make profits back then.
Re: (Score:2)
Sonny, TripWire is still growing and making money, and just got bought out for big $$$.
How's the tattooed monkey doing these days?
Re: (Score:2)
Yes. Now back to work, maggot! And don't you dare smile!
With love,
Your manager
Re: (Score:2)
Yeah, it means something gets committed to the master branch, which either prevents compilation, breaks a unit test, or breaks an integration test.
It's serious because the rest of your team is relying on that master branch being good, so they can test their own changes against it.
In theory it should almost never happen, for the reasons you're hinting at; you don't merge into the branch until you've run unit tests elsewhere.
In practice, real life gets in the way. Your unit tests weren't complete, or made som
Re: (Score:2)
How about the 201x era where we throw molten lead?
We have something similar (Score:5, Insightful)
My job uses approximately the same tactics, although instead of a python script we have Dave the Project Manager, and instead of a foam missile launcher, Dave has a baseball bat. You see, unlike traditional product managers who have a background in, well, project management, Dave has a background in being a large and terrifying individual. So, our code builds every damn time.
Re: (Score:3)
we have Dave the Project Manager, and instead of a foam missile launcher, Dave has a baseball bat
Dave: A man becomes preeminent, he's expected to have enthusiasms. Enthusiasms, enthusiasms... What are mine? What draws my admiration? What is that which gives me joy? Unit testing! A man sits alone with his editor. This is the time for what? For individual achievement. There he stands alone. But when checking in, what? Part of a team. Teamwork... Builds, runs unit tests, svn update, svn checkin. Part of one big team. If his team don't field... what is he? You follow me? No one. Sunny day, gcc compiles wi
Re: (Score:2)
Re: (Score:2)
I take off my wizard's hat and put on my giant foam helmet [userfriendly.org].
nope, didn't get any of that. (Score:2)
Re: (Score:2, Flamebait)
Re:nope, didn't get any of that. (Score:5, Interesting)
In larger software development environments, it is common for many contributing programmers to work on a single copy of the project's source code at the same time (typically through a mechanism called source control.) As a matter of etiquette, developers are expected to test their code before contributing it back to the master copy. If the master copy fails to compile, typically due to an error in coding, then it is said that the build has been broken, and that the developer who contributed the bad code broke the build.
An article posted on Slashdot in 2004 suggested that software teams keep a red lava lamp in their server room, and have it turn on whenever a broken build is discovered. The reason for picking a lava lamp in particular is because it can take several minutes for the wax to warm up enough for the bubbles to reach the top of the oil: the article's authors proposed using this delay as a period in which the build could be fixed without inspiring a greater breach of decorum, and hence invoking the ire of the rest of the development team.
This summary, by contrast, is a slashvertisement for a different solution to the same problem, wherein foam projectiles are launched at the offending developer. It attempts to conceal its absurd premises by referencing a past incident in which a similar idea was suggested, thereby hoping to capitalise on an in-joke as a means of creating something more acceptable as a cultural object of Slashdot's community; however, the submitter most likely just did a search for something he or she could exploit to provide padding.
That all being said, you should probably get used to being expected to read embedded links in order to garner a cohesive understanding of the relevant context for something written on the Web. Most people don't have the communication skills necessary to clearly and accurately introduce context in a compact space, and in lieu of this ability, it is highly preferable to have a reference to the original subject matter (or at least a more primary resource) than to be left with mere hearsay or no context whatsoever. This is one of the greatest ways the Internet has changed how people communicate, and while it has its annoying side effects at times (especially dead links) it does more good than harm.
Re: (Score:2, Redundant)
Re: (Score:1, Funny)
Seriously, take them. They're nothing but a drain on my resources.
You can even re-name them if you like.
Re: (Score:1)
Re: (Score:1)
Re: (Score:2)
Re: (Score:2)
you should try to not split infinitives.
AUX -> { {(T)(M)(to)} (perf)(prog)(pass)}
An auxilliary can be a tense, modal, or to along with the combinations of the perfect, progressive, passive aspects. This rule comes from The Grammar Book (which I have sitting on my desk because I am a TESOL instructor), chapter 31, page 645. The use of to to make the infinitive in English is accepted by most linguists to act as any other auxilliary and conform to the rules of how adverbials interact with auxilliaries.
The idea of not splitting infinitives wa
Re: (Score:2)
I was under the impression that the term 'slashvertisement' referred to:
Alternatively, it could refer to a vague, sensational story, meant to drive traffic to a blog.
In either case, the story was submitted by the owner of the landing page, with intent of some sort of personal gain
the link p
Re: (Score:2)
Re: (Score:1)
(*) All the source code is freely available online, there is no indication of desire to charge for or limit use of the code, and it's built as an extension to the FOSS project 'Jenkins'. That said, no license is explicitly given. I could be incorrect about the project being FOSS
The code is under the Apache license (personal favourite :-)
Re: (Score:2)
Re: (Score:2)
And even tiny shops, too!
I don't expect them to read any links, I just expect them to continually integrate nerd culture.
I don't like the nerf missiles, spilled coffee is the last thing a broken build needs. I suggest disco lights.
Re: (Score:1)
Re: (Score:2)
Re: (Score:3)
Damn! (Score:1)
And to think I spent my mod-points on trolls...
Why yes... (Score:2)
...I was clearly trolling in the post above.
They give mod points to anyone these days.
Re: (Score:1)
Darmok and Jalad at Tanagra!
If you have a giant build, it's not modular enough (Score:3, Insightful)
If you have a giant build, your design is not modular enough. Above some size, it's time to go to multiple intercommunicating programs.
Re:If you have a giant build, it's not modular eno (Score:5, Insightful)
If you have a giant build, your design is not modular enough.
That makes no sense. You can have a modular system and still make changes the require giant builds. For example, if your module is something in the base of your system it will usually require you to recompile most of the rest of the system. Being modular will not stop that because you need to make sure that what you did in that one module does not break the pieces that use it. Secondly, what you seem to be complaining about is rather that people might not be doing incremental builds using make or a make-like tool. So, yes, if you are always rebuilding the entire system for no purpose that is stupid.
Re: (Score:2)
Re: (Score:2)
And you still need (more than ever) regular builds and test executions while you refactor it into something more modular.
Re: (Score:2)
Those modules communicate with each other. If you screw up the way they communicate, integration tests fail. That's a broken build.
Re: (Score:2)
If you have a giant build, your design is not modular enough. Above some size, it's time to go to multiple intercommunicating programs.
I bet most giant builds aren't giant because there's actually so much building work that needs to be done; they're giant because the build system is *broken*. Can't do a proper incremental build, can't be parallelized, and so on. I once reduced a 15--20 minute build time to 0--15 seconds by fixing up the Makefile to do the right thing.
As if we didn't look geeky enough (Score:2)
I must be missing something (Score:3, Insightful)
Re: (Score:2)
Re: (Score:2)
Am sorry but what is that suppose to mean "a foam missile counter-attack?!"
Er, what's difficult about that?
You know what foam is. You know what a missile is. You can probably imagine what a "foam missile" is, and if you've been to a toy shop in the last 20 years, you've seen one. So that bit's easy.
Now then. "Counter-attack". Is that the difficult bit? The commit that broke the build is the "attack". Launching the foam missiles at the culprit is the "counter-attack".
I remember friends picking PhD title by using a simple Combination function on the set {statistical, genetic algorithm, bayesian, theoretical, neural network, logic, reasoning, inductive, design, probabilistic, integrating, non-linear, optimization ...} Is life totally meaningless now?
All those words have fairly precise meanings. I do hope your friends failed their PhD if their thesis didn't match t
Re: (Score:1)
Because I find things like this to be juvenile.
I find the attitude that being a grown-up has to be boring... juvenile.
Re: (Score:2)
A break now and then to have a "hallway meeting" to socialize, go bowling down the hallway, or attack fellow co-workers with Nerf weapons is great for stress relief and can even boost productivity on a bad day
These are usually just a cheap way to distract people from the fact that their pay is terrible. Maybe I get 32k to be a computer programmer, but this foosball table sure is fun!
Re: (Score:2)
Balmer set up a similar system at MS when I worked there. Only every time you broke the build, you had to take a drink. I'm posting anonymously just in case this was in the NDA...
I believe that it wasn't in the NDA, or there have been some leaks [xkcd.com] already. Did you work there in 1999 by any chance ?
Why bother with the physical component? (Score:3)
A few days of being stuck using the "Penal Image"(WinME, Incredimail, Bonzibuddy, 800x600), they'll be begging for a chance to redeem themselves.
Demeaning != Fun (Score:3, Insightful)
That launcher just looks like another small way to degrade people.
If I worked in an office that did that, I would ensure the launcher kept on having mysterious accidents that rendered it inoperable. Like somehow falling 10 stories out of an open window.
Re: (Score:1, Insightful)
Re: (Score:1)
No, if you need to get shot in the balls to enjoy your job, then I'd suggest that you are the one who's working in a place that's so dull it might be time to change jobs.
Re: (Score:2)
mod parent up
Sigh (Score:2, Insightful)
So we've got two different ways of handling errors here. Say I made a serious mistake like breaking the build that 1000 people have to work on. Company A looks into how the mistake happened and exactly what needs to be done to avoid the mistake happening again, be that changing the procedure I used (e.g. running tests), training of me and coworkers to make sure we know to follow the procedure or automating the failed step so that we can't do it wrong (e.g. have the build server run tests before checking som
Re: (Score:2)
I'll go further and say that no toy missile will ever prevent you from doing something stupid.
You just like being hit in the balls with foam in a public manner, do you?
-dZ.
Re: (Score:1)
I'm 23 and what is this (Score:1)
Is it just me or did the article actually mean something? Lava lamps, dev team, missile counter-attack, USB Foam Missile, code monkey... what the fuck am I reading?
Re: (Score:3)
Comment removed (Score:5, Insightful)
Re: (Score:2, Informative)
"If I break the build I get a shit storm from my co-workers and getting to be known by managers as the reason why we slipped a milestone date that was arbitrarily imagined by someone that hasn't coded in 25+ years."
Then you're doing SCRUM and sprints wrong, code monkey.
Re: (Score:1)
More probably it's his PHBs that are doing S.C.R.U.M. and sprints wrong and he therefore has no say in it. It's really sad to see all good ideas eventually get perverted by clueless MBAs and PMPs
Re: (Score:1)
Then he's doing scrum like most of the companies out there.
I've had managers scream at me because I wasn't burning down exactly 8 hours per day.
I've had managers pick arbitrary dates six months in the future as the Absolute Must Ship date, and complain when one month into that, we laid out the reasons why we didn't think we'd have all the desired features by then, demanding that we fix things so our burndown chart showed us completing on time, because obviously the problem was in the burn-down chart, not in
Re: (Score:1)
Re: (Score:2)
Looks like someone needs a foam missile launcher...
Re: (Score:2)
Re: (Score:1)
I'd like to print that out and put it up on my divider wall but I've already hit my limit of 3 personal non-work-related items.
Re: (Score:1)
So wait...we're supposed to respect your choices and their results, and therefore respect and wish to emulate you, thus making your condescension about "toys" and "scripting abilities" have bite?
Does it occur to you that there is another possibility...that you screwed up, made a lot of poor decisions, and now justify them to yourself in terms of "growing up"? That it was your party that ended, not the party?
Re: (Score:2)
Damn right, I was in a bubble company in 1999, we used to play Half Life deathmatch mid afternoon, go to the pub for lunch and decide not to bother going back to work. Oh happy days. I still get paid to press buttons on computers, there are no deathmatches and we try not to get TOO drunk at the pub but FFS it's just a job, it shouldn't define your existence
Re: (Score:2)
Some of my best code has been in the small hours after drinking, must be the Balmer Peak in action. I remember in the late 90s going to a beach party once, then afterwards bashing out a bunch of cookie handling code. I bet there are tons of websites still using that today :D
An Obvious Sign of the Times (Score:2)
However, this seems like a Disney version of m
Re: (Score:2)
But Violence Never Solved Anything! (Score:2)
cdance, go suck a lemon (Score:1)
Re: (Score:1)
Re: (Score:1)