Hacker News new | past | comments | ask | show | jobs | submit login
Ask HN: Worst working conditions you have written code in?
33 points by saurabh on April 12, 2009 | hide | past | favorite | 73 comments
There are good times and there are worst times. I recently had to write code in a hot room with temperatures near 107F; nothing to sit on; warm water for drinking and a lot of distractions. I am sure many people have been in similar situations and would like to know your experiences.

PS: I asked this question on StackOverflow but it was closed.




Well, I nearly killed myself with a line of bad code. I made a silly change to a flight simulator's "unusual attitude" logic. Unusual attitude training consists of putting the aircraft in a very difficult orientation (45 deg nose down, 60 deg left bank, etc.) and training pilots to recover.

Here's what the simulators look like: http://blafsen.net/photos/simulator.jpg

I changed the code, and brought the simulator up on motion to test it... and the machine started bucking like a horse and tossing me around the cabin. I had the instructor console right in front of me, and for a while it was physically impossible to hit the freeze button - I was being tossed around too badly.

That day I learned a lesson about testing: first check it with motion OFF.


It's still incredible that you controlled those massive machines. I would love to hear more about that.


(blush) thanks. We use these simulators for training - it's cheaper/safer than the real aircraft.

- The pilots and instructor inside the cabin manipulate controls/switches/CBs/panels, sending signals to an bunch of interface cards.

- The interface cards convert voltages to values, and move them into a big chunk of shared memory on the host computer.

- The host computer recalculates the new state of the simulation, updating everything in the shared memory, 60 times a second.

- New values in the shared memory are sent to the interface cards.

- The interface cards convert values to voltages, driving the instruments, sound, visual and motion systems.

It all happens so fast that the pilots never sense the latency between their action and the effects in the cockpit. The host computer is the brain of the system, that's why a small bug there can be dangerous.


Ha, cool, I used to work at Rediffusion and I heard a similar story about when a UPS pilot got the SC to do the phugoid behaviour 'properly' by taking him up in a plane to experience it.

When they tried it in the sim, both of them were similarly thrown around and a terrified few seconds as neither were able to reach the panic button :-)


Any chance you worked on an MD-82 for Alitalia a long time ago? I think they have two over there, and I worked on relocating one of them to CAE Madrid. My first taste of a Rediffusion machine - similar architecture, nicer code.


No, think there was an Alitalia on the factory floor when I worked there, but I can't remember.

Most memorable event on the factory floor was when a hydraulic jack failed on a sim, and the resulting jet of fluid punched a hole through six layers of hand wire-wrapped PCBs on the sim next door.

I think it put them back six weeks. Luckily the penalty clause for lateness was only $50,000 per day. Gulp.


Back in 2000 I was working at a startup in Washington, D.C. and we had been working 80-100 weeks for nearly 1.5 months before management finally brought in some contractors as reinforcement. All of the developers were in a 20x20 or so room working at folding tables. One of the contractors that they brought in had a form of Tourette's that caused him to make this noise that I can only describe as a loud squawk at random intervals, about every 60-180 seconds. Combine that with the pressure, lack of sleep, and the effort to concentrate and it became my own personal version of Chinese water torture. I truly think I came close to having a nervous breakdown during those two weeks.


dbrown26 why did you stay there so long?


Not working conditions per se, but debugging a legacy bioinformatics program written in perl. Comments were in french which I do not understand. It took three days to run and exited with:

"Error - good luck finding the bug".


I've heard stories before specifically about the bioinformatics academic circles... biotech researchers who think writing code is trivial so they never even bother to have a software engineer look at it, until it's too late.


It's true. And for some reason they all love perl.


Ooh, and it insulted you ! And in French, too (I presume). Total burn.


I was fail all round :)


This is not my story of course but the story that immediately popped in my memory when I read the title.

Steve Wozniak's story about rewriting floppy drive low-level software the morning of a big demo:

>I got it to where it was writing data on a track, reading the data on a track. Then I got it to where it was reading the data in the right byte positions. Then I got it to work with shifting tracks, and we wanted a simple program where we would say "run checkbook" or "run color math" and it would run the programs that were stored on the floppy disk. So we went off to Las Vegas, and Randy and I worked all night and we got it done to where it was working. At the very end, it was 6:00 a.m. and I said, 'We have to back up this floppy disk." We had one good disk that we prepared with the data hand-massaged to get it just right. So I stuck it in the floppy and wrote a little program, and I typed in some data and I said "read track 0," stuck in the other floppy and said "write track 0, read track 1, write track 1." There were 36 tracks—I had to switch floppies back and forth.

When I got done, I'm looking at these 2 floppies that look just the same. And I decided that I might have written onto the good one from the bad, and I did. So I had lost it all. I went back to my hotel room. I slept for a while. I got up about 10:00 a.m. or so. I sat down and, out of my head and my listings, recreated everything, got it working again, and we showed it at the show. It was a huge hit. Everybody was saying, "Oh my God, Apple has a floppy!" It just looked beautiful, plugged into a slot on our computer. We were able to say "run color math," and it just runs instantly. It was a change in time.

But the real eureka moment for me was the very first time I ever read data back. I wrote it on the floppy, which was easy, but read it back, got it right. I just died.

I think that Steve's entire interview is probably one of the most inspiring in Founders at Work:

http://www.foundersatwork.com/steve-wozniak.html


Truly inspirational. No complaints (I guess) if you're working in the trenches, it always helps if you're onto something great.


Wrote custom test-set software in a clean-room. Bunny suit, mask and rubber gloves for 8 hours a day. It was a windows box connected to a x-ray diffraction machine so I had to be in the room.


I was a grad student who worked in a fab. I found that after a couple of years wearing that bunny suit, mask, and rubber gloves for 6-8 hours per day (or, more likely, per night) I was completely used to it.

I used to catch myself surfing the web in the clean room after hours. "Wait!" I would say to myself, "I could be doing this outside the clean room, where I could take off this silly suit!"

But they are stressful places to work. The noise is quite troublesome and the ergonomics are generally awful.


yeah, no tunes, and i just couldn't get used to the sweaty hands from the gloves. i forgot about the mask. those dark red lines in your face, i much prefer my aeron chair and office now :)


There are these cloth glove liners. They worked well for me, although everyone has a different reaction to these things.


Finally, a keyboard that is free of bits of dirt. :)


Well, in the academic fab... you can't be too sure.

There was a day when I was sitting there in an academic fab, in my bunny suit, and a fly flew by. At first I didn't notice. Then I did a hilarious double-take.

I believe the airlock design has been improved since then.


Pales in comparison to your story but I worked in a basement office, with awful fluorescents, no natural light, with 95.5FM a top 50 hits station blaring through the overhead system, in a open space for a man who was a pretty dead on 50/50 mix of Michael Scott from The Office and Buster from Arrested Development whose puppy would love to run around and shit in the back corner of the office near the server room. Other than that, it was a pretty sweet first job :)


When I started programming I used to work taking care of paralysed people. This was a night job, and you had to stay awake for the entire night and listen in case any noise came from the bedroom, in which case I had to go check to see that the person had not moved to a position that could be dangerous for him.

Since there was nothing else to do apart from listen, I wrote code the entire night. The problem was that writing code can get very mentally taxing after a few hours in the night, and combined with the thought that spacing out can result in a persons death, it was a very demanding task, particularly in the period from 4am to 6am.


You could have bought one of those noise-amplifying toys, stuck its microphone inside the bedroom, attached headphones to it and turned the volume up.


Or write a program that analyze the noise level from the recording device to detect any motion and alert you. Hooked up with Growl and IM and now you have a dead-alert system. However, since it's a life-or-death situation and you couldn't focus 100% your commitment into it, I'm glad that you move on to a different job now. Working on your startup or side projects and you may end up killing someone isn't the kind of thought you need for the rest of your life.


A hot, noisy hotel room, dial-up internet, 4:00am writing in _VB6_ to connect to some weird COM+ service that used VB calling conventions, then a C++ COM wrapper for that, then a C wrapper to connect to a Java JNI service. At 8:00pm I didn't know VB, either. And it had to work by 9:00am when some system it interfaced to started up. Oh - and I couldn't actually test it against anything but stubs.


How did that turn out? What was your margin of safety? I hope they appreciated the heroic effort you put forth.

I haven't done anything that crazy but have debugged (and fixed) a few memorable, painful, stressful software (usually system integration) problems on frantic conference calls mere hours before the paid-for-and-scheduled on-site training on the software commenced.


Worked fine, stayed in production use for years - might still be there for all I know. And no, it wasn't appreciated of course....

"Safety margin"! What's that? ;)


While I was in the Navy, I coded in my 2'x 6.5' rack on my ship while deployed and while the AC in my berthing was broken. It was 105 degrees inside my berthing (that I shared with 25 other guys) and the AC motor had caught fire so we were out of luck in terms of that comfort. I don't recommend doing this, it wasn't exactly a good idea to be coding in such heat and misery.


Working as a tech team-lead for a large international company, I was assigned to a team that was a year behind schedule on an 8 month project. I rallied the people, we worked for 14-16 hours every day (weekends) and managed to get the code in production in about two months.

I was proud of my team, that is what got me through the days.

After that my boss denied my salary raise with the suggestion that if I don't like the salary, I know where the doors are.

I was insulted by the insolence. That was what got me through the door.


80 hours a week for two months in the Antarctic "Pig Barn." The heat was turned off for about three weeks.

http://stratocat.com.ar/bases/41e.htm


Coming to work from 8:30 to 5:30, sitting in a cubicle with a forced dress code, while writing in... sob PHP.

Rails freelance is awesome.


Does php really deserve a sob?


Yes. Sometimes.

PHP is a great language for the basic stuff, but you try to do serious things with it and you have to wrestle with it. And it's all so ... badly designed. You sob because it can all be done so much better and... cleaner.


Have you ever been forced to program in PHP?


Yes, and then someone forced me to code in ColdFusion and run EXCEL imports into a really bad CF ORM with SQL server on the backend.

I now freelance django / RoR and PHP and I do not complain about any of them, ever. ColdFusion is the language one should be forced to work with whenever they complain about any other language, it will fix their aversion to the language in question very, very quickly.


-15F, fixing bugs in code that ran on a small wearable computing device strapped to a soldiers wrist. The best part was where I had to interface with the GUI to debug instead of a shell on a handheld tablet. That meant using a tiny stylus on a tiny screen while asking a soldier to stand still in 30 mph winds.


I underwent surgical procedure and removed a pilonidal cyst located at my lower back. Because of the surgery I was under heavy dose of pain killers, and could not sit, stand or lie on my back.

So I had to implement a "will take only 15 minutes but is extremely important" feature, lying on my stomach with laptop on the floor, with my head dizzy because of the pain killers and a bloody butt.


Committing code changes to a production trading system while passing a kidney stone.

I had been out for a week waiting for the stone to pass, I hadn't slept more than 15 minutes in a row in more than a week -- and those 15 mins were from sheer exhaustion and vicodin. I was hallucinating continuously and vigorously. Hadn't been eating either.

Good times.


On a balcony overlooking Western Baghdad figuring out why our (old and pretty well tested) network code didn't see fit to push packets. Was outside because we suspected the sat terminal was causing the problem. Only ended up taking a couple hours but it was probably my least favourite coding/debugging session.


You win. :)


These stories are so incredible they might be able to compile a real "Extreme Programming" book


By far the worst: on site doing commissioning / systems integration testing of warehouse automation systems - cranes moving pallets around, boxes trundling on conveyors, etc.

The automated equipment we were debugging (and volume testing with things moving around continuously) was the least of it... the huge site was still under construction. All around me there was racking being cut and welded, electricians installing stuff, aromatic concrete floor sealant being applied, various random drilling and banging.

I had to write large amounts of new code on the spot as we found problems (missing features, mostly) during testing, while the automation engineers stood around annoyed and waiting.

When I first got to the site, I didn't even have a laptop - had to lug a desktop PC and CRT monitor there and back every day (carrying it across half the site and the loading dock) for the first couple of weeks. For part of the time, this involved carrying it across iced concrete, since it had been snowing.

Oh, and there was the engineer from one of the third-party equipment suppliers, an Italian company - nice chap but he didn't speak very good English; the noise level didn't help the already poor communication, and when we started our testing, we discovered he had developed his control software from an interface specification three versions old and half a year out of date.


I am a contract Oracle DBA. One month long project I spent working in a gutted out strip mall that had card tables and Ethernet cable strung about.

There was free coffee though.


Did that strip mall happen to be in Canton, Ohio?

I was there too!!


Not coding, but editing video. It was for a start-up I founded, and it happened 2.5 years ago. I just moved into a new apartment and had little besides my Pentium III computer and an approaching deadline. It had a bad-quality 14-inch CRT screen that I salvaged from somewhere. I mounted the screen on the computer case, sat on the floor with keyboard on my folded legs, and started working.


Having my server in California crash while I was in Siem Reap Cambodia, and the only way I could get to work was turn off the AC in my room to get a better signal coming from the WiFi at fancy-hotel next door and opening the window.

It was 3AM and I had sweat dripping down my palms and wrists that I had to lay toilet paper over the keyboard and mosquitoes buzzed at my ear and neck nonstop. I had to fight with an aggressive postfix filter that kept sending mail to a lisp process and did no error checking to see if Lisp ran and processed the mail. I had to remove the filter, and manually rebuild stuff later after I had the system running around 12PM the next day.

It was one day in hell, taught me that the unix errno and process exit status can be a fucked thing to debug if you're forking multiple process from a script.

[Edit: right now I'm coding sitting on the toilet seat, with my pants on, because I'm a moody SOB and like to move around the house as the day passes :-]


I worked at home in my living room for the last year. Rented an office again this year. In retrospect working in your living room was very unhealthy for me.


Industrial automation controls programming at a tire factory in Georgia. It was 90 degrees outside and you're in a large room with row after row of tire ovens that run above a few hundred degrees. We had machines with thermal sensors set to fault out at 120 and ac units on their enclosures and they still faulted regularly. They spray the tires with lube so they don't stick to the ovens so there is a layer of black crap on everything. All the machines running made around 100DB of noise. I got put on the project towards the end as it was way past due and they wanted to appear to be doing something so they decided 24hr on site was the way to go so I was working 8pm to 8am.


While dealing with a crying baby.


That has been my every day for 4 months. I work from home with only a 4 month old baby and a couple dogs to keep me company. (My wife works out of the home all day.) The numerous random outbursts utterly destroy concentration each time they occur. I'm honestly not sure I can do it this way much longer. I wish daycare wasn't so damned expensive...


In 2002 I was working with a startup (that later failed). The office was in the basement of a warehouse, because they got cheap rent. The office itself wasn't terrible, decent offices and equipment. Since it was a basement there were obviously no windows. We were working 80-100 hours a week, often sleeping in the office. We had a really bad flood a few weeks before our launch date. We got (most) of the water out, but the walls started molding before they could get everything fixed. I bought my own hepa-filter and eventually "took a break" because I couldn't take anymore.


I'm still yet to graduate and feeling the goodness of working freelance at home.

oh my! you guys scare me off. I've always dreamed of an office for my startup where we work in a really nice garden full of trees and green grass, sitting on bean bags and chairs (freedom of posture :P) Maybe I should just do this. It's going to be really cheap and comfortable considering the temperature in my location is around 20c-24c during normal days.

I hate air-conditioned rooms. there's nothing better than the smell of green grass and evening wind blowing your nose. And listening to soft music in such an environment is really cool. But I would have to opt for a silent area for the office (which is far away from traffic jams) which would mean compromising the utilities/accessibility of the city center. When you have sounds of sparrows and pigeons in place on that soft-music, it sounds even more cooler.

I'll also have a huge hall to run for shelter incase it rains :)

And also I'll plant an umbrella kinda thing above every fella working, coz I don't want them to waste time washing them or their notebooks of crow/pigeon shit :D

P.S: anyway it's a dream office for my startup and sounds a do-able task :)


Reminds me of my experiences at university. One of my friends referred to the labs as the 'blast furnace'. This was due to a lack of air conditioning and a great many computers being used at once in a relatively small area.

Also the 'quiet room' was anything but - if only one person wasn't being quiet then you would hear every sinlge syllable they uttered. Very distracting.


Had to write code in Sanskrit on a banana leaf in an isolated island... but then, it was just a dream.. that may come true someday.


I had to change some code on some of our data acquisition system while we were flying on NASA's KC-135 (also known as the vomit comet) back in the early 90's. Some water condensation was dripping from the ceiling on the keyboard while the other experimenters nearby were barfing their brains out. I've been in more optimal situations.


My current job - I sit next to the marketing manager who spends his day either talking loudly on the phone in German or asking me stupid marketing questions that have no relevance to my job because he can't be bothered to walk across the office and ask the right person.

In addition, behind me is the CEO's office. The wall is glass and everytime I open my web browser to do some research he comes and asks what I'm doing - as far as he's concerned I should be doing nothing but writing code.

Also, to my left is a door to the office balcony where the smokers do their thing, so every five minutes during winter I get an icey blast and the stench of tobbaco when they open the door to go out and again when they come back in.

Finally, directly above my desk is an AC chiller unit that blows cold air down my back from spring to autumn making my hands so cold I can barely type.


Working with back-open cubicles, loud sales shouting, people talking, and a goddamn "Sold!" bell ringing each time there was a sale.

Seriously? You need to get me out of zone just because you have succeeded to sell another piece of software?

Freelancing kicks ass.


Had to write some code in a servers room, which of course was really cold. Other than that, I couldn't sit down, and had nowhere to place the keyboard on, so a pal held it up while I was typing...


I had to write code in a run down house that had been converted into a make shift office. There was no AC, and my desk was fit for a kindergartner (no exaggeration). My chair was a metal folding chair and my boss was a sales guy that had no idea how to write even an Excel function. I wasn't there long.


Sitting in a dusty concrete building, deep in Baja, down a 180 mile road dirt that takes 4 hours to traverse at 45-55mph, in a town with the best right hand point break on the west coast.

Hard to get work done with that right point firing and visible from the window.



Not so bad compared to the rest of the stories, but I still work as a developer/tech support. I have to drop whatever I'm doing to troubleshoot student tech problems, so the interruptions are frequent.


Compared to my cosy abode with a Linux/Windows laptop, I'd have to say writing Java on a Sun workstation at University in 2003...


8' x 8' glass walled room - 6 developers (2 facing each of three walls), the fourth wall had the door.


Trading desk, as a research quant. The office was open-plan, there were constantly people passing behind me, and expletive-laden interruptions related to market conditions were frequent.

For the first 6 months, it was very exciting, but eventually the sensory overload and taxing environment got to me, and I started having health problems. In retrospect, I think the open-plan office was much more of a contributor than the noise, which could be tuned out pretty easily. Open plan => needing to pay constant attention to how one is perceived => anxiety => diminished productivity => more anxiety => immune system fails => very sick.

I think 107 F is worse, though. I stop being productive around 90, and I'm pretty sure I'd die after 8 hours in that heat.


Being the trading app whipping boy to a bunch of BSD (not talking about Unix here) equity traders; one of whom actually complained to me that he couldn't log into his trading app because his username wasn't pre-filled in the login prompt of the app.


Etymotic HF-2s (or similar) noise-blocking earbud headphones. People know that they'll be distracting you when talking, and they reduce the outside noise quite a bit.

As for the perception issue, that's more of a showmanship issue. For people who aren't in your field but do judge, I find a few stereotypes work out well. At my last job, I filled unused screen space with random API references. The busier and more technical my screen looked, the busier and more technical I looked as a result. It's the game you have to play when people don't let good work speak for itself.


I definitely had the screen set up as you described, but I still found working with constant open-back visibility to be pretty terrible.

As humans, though we share this with most animals, we have a strong desire to do important things (eating, defecating, sex, spiritual journeys) with at least some degree of privacy. Work, at least of the mentally taxing kind, falls square into that category.


Funny, even hearing these stories, some of us would kill to have that job.


I was like that, before working on a trading desk, and I had to experience it in order to know it wasn't right for me, so I have no regrets.

Some hackers love trading, for what it's worth, and there are finance jobs out there that have better working conditions than what I described.


1. Hm...in the front seat of my car, waiting for the traffic officer to return for 45 minutes.

2. In a dorm room for a year with 10kb/s internet, tops. FTP was impossible without net2ftp.com. SSH and most other traffic would not get anywhere either (SVN, IRC, etc.), and I was working many hours on web projects. No Windows VM, so all IE6-7 testing had to be through BrowserShots. But I had a bunch of great Mac software which eased the pain.


Ok, at home, my parents and my sisters are really kind and they don't do noise. Also my mother understand that I need some concentration when i'm on computer, although she don't know what the benefits of 'sitting for long hours in front of a screen with much gadgets and text!!'

The worst time is at school, when my friends (tech-savvy people) ask me for questions in a very noisy way that I loose concentration. So I agree with most of you about concentration, we can class it then

Concentration

Computer bugs and speed

Screen (if u sit for long hours)

Mouse and Keyboard (especially for those cheap laser mouses!!!)

Computer noise (if it's an old dirty one)

your girl friend (if u got one!!!)

Those are all factors that can affect your programming or whatever you are doing if it's mind related, like Math or Physic calculations

Also I posted it in SOF, no the question was not closed




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

Search: