Hacker News new | past | comments | ask | show | jobs | submit login
Continuous Integration Failure? Use USB Missiles (papercut.com)
118 points by chopsueyar on Aug 22, 2011 | hide | past | favorite | 30 comments



>It works on a deep psychological level to offer vast productivity improvements.

some other extremely effective methods used in [another organization where people are treated like sh!t] the Russian Army: blocking access to the exit door, restroom and/or food/water, gang-chaining and/to the utility pipes, forcing to wear gas mask [and if weather is warm enough - rubberized fullbody chemical weapons protective suite] ... until the task is completed/corrected,

and the best of the best methods is to having [only] your teammates [who have no connection to the error] being forced into the above described conditions until _you_ correct _your_ own error. After it happens once, your teammates would make sure that you wouldn't repeat the error ever ...


Which is why 'Russian Army' is synonymous with productivity and effectiveness.


Sounds like the beginning of Full Metal Jacket.


now that you mentioned it :

http://www.youtube.com/watch?v=BTgrQ7W-taQ&feature=relat...

Typically happens at night when most officers left


I can't seem to find where, but I remember reading about this a few years ago...

Some company had connected their Continuous Integration server to the exit door. Breaking the build would lock the exit door until the build was fixed.

Near the end of the day, some programmer would announce his big commit, and the rest of the team would rush to exit the room :)


Why not prop the door open instead?


IIRC, this practice was put in place by the developers themselves (not by management), as some kind of "productivity joke". Propping the door open would defeat the purpose.

I'm seriously annoyed that I cannot seem to find the original story...


I guess that makes sense, I doubt they'd abduct the whole team :P


As someone working in this office I must warn others of the constant fear this little device instils in you. It's like working at aperture science, the emphasis on testing is maniacal.


The CEO of Aperture Science was torn up and thrown into a fire.


Well, the computerized remains of his assistant / girlfriend, anyway.

"When life gives you lemons, don't make lemonade... Get mad!"


Do you get a portal gun?


For simple things like build errors a local git hook was good enough to completely rid the project of those problems. For the Arora project I believe there were around 5 commits in the entire lifetime of the project that didn't build on one system and those were all cases were it built on the developers OS, but failed on a different OS. But man would it have been cool to have a USB missiles just sitting there waiting for the day they could launch.


Not a fan of the psychological torture here. Why is "breaking the build" such a major problem? If the tests don't pass, the commit should go into a "testing" branch. If the tests pass, merge testing into master. That way you can fix things asynchronously, rather than wear a dumb hat or get shot at by missiles.


Excellent stuff. I had a similar idea once, hooked it up to an irc channel and made a bot with commands to shoot people in the office by typing their name. Unfortunately I couldn't get the rocket launcher to be accurate as the same command sequence wouldn't always result in the launcher aiming at the same position.


Sounds like if range is limited you'd need an array of multiple launchers, strategically distributed around the office to provide the most efficient coverage.


That would be especially awesome if multiple launchers engaged in the attack, resulting in a multi-directional barrage.


Reserved for particularly heinous breakages of the regression tests, perhaps?


You need a rocket launcher with servo-motors to get repeatable performance.


What model of rocket launcher were you using?


I think it was a Dreamcheeky. Here's a video of it being controller by an iphone app I wrote: http://www.colorfulwolf.com/blog/2010/03/11/iphone-rocket-la...


For more crazy rocket CI fun: http://www.youtube.com/watch?v=MK1p7Nz5c9s

(Wherein guys on a project I worked on had an Atlassian Bamboo CI server hooked up to the USB rocket launcher)


nice, I'd heard a few people mention this idea in the past but never went through on it - good on you.


What is to stop developers from logging in remotely to commit changes, knowing that any attack will be directed at an empty chair?


I doubt anyone would be threatened enough by foam projectiles to try to circumvent it. Now, getting someone else attacked for no reason is a different story. That would be amusing.


It could be stopped by setting a piece of cardboard a few inches behind your head.


Or by rolling your desk chair over a few inches


Is that a generation or culture thing? Where I used to work, it was the one golden and unquestionable and holy rule: if you break the build, you have to buy a crate of beer for the team - so you get the "punishing" part and you get some team building too because we would drink that beer during office parties, other special occasions or just in the evening before going home or out or over a casual chat.. or during some Warcraft or DotA sessions and that team still sticks together even nowadays that the company is long gone and we are working in different jobs and countries. I really miss that place for its team spirit and the people there.

And I must say, I felt almost offended when in my new job when I found out they didn't have anything like this in place at all.


I love how people are worried about the possibility of deep, everlasting psychological scars.

I work at the OSUOSL. Some of our finer (read: less uptight) patrons occasionally donate Nerf weaponry. Getting shot at with Nerf guns is not uncommon, and really isn't that big of a deal. I do not constantly glance over my shoulder in fear of a Nerf raid.


We also have Nerf guns hear, but we use them only in sporting matches. (I.e. running around and shooting each other.)

If you break the build, you get to wear a ridiculous party hat, until you fix it.

On the upside, we have beer.

(We also have a USB launcher, but only because we had to make sure all USB devices we could think of would work with our software.)




Consider applying for YC's W25 batch! Applications are open till Nov 12.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: