Earlier quoted context omitted.
Tim Schafer, of http://www.kickstarter.com/projects/doublefine/double-fine-a... fame, has a note on his door until 11am in the morning saying, don't knock, writing. Could you make progress on projectY if you made a deal to not work on projectX until 11am? To not even open your office door? (FWIW, this is a classic Quality of Service (QoS) algorithm, where traffic on ProjectY is given dedicated bandwidth (2 hours in t…
Door? Who has those anymore? In the interest of collaboration open-plan offices have become the norm, to the detriment of productivity everywhere.
It Takes 6 Days to Change 1 Line of Code
131–140 of 237 posts
Re: It Takes 6 Days to Change 1 Line of Code
#132I seriously don't see the problem. The author seems to be assuming that taking 6 days to have a change made is objectively bad. Does the company run? Does it make money? Do the systems work and stuff? Well, if whatever you're doing now to keep the systems working and the company running and making money obviously works so I'd say it's objectively good. The experience may feel bad subjectively but how you feel is of t…
I generally agree that this process doesn't sound all that terrible for code that controls a large, live manufacturing line. Try changing the code that runs a pacemaker - you'll learn all sorts of things about process. This line however is the road to hell: "if the company wants to spend $50,000 to change 1 line of code, and it's not going under, then that's obviously the right decision" Just because a company is suc…
Re: It Takes 6 Days to Change 1 Line of Code
#133I seriously don't see the problem. The author seems to be assuming that taking 6 days to have a change made is objectively bad. Does the company run? Does it make money? Do the systems work and stuff? Well, if whatever you're doing now to keep the systems working and the company running and making money obviously works so I'd say it's objectively good. The experience may feel bad subjectively but how you feel is of t…
Also, it sounds like it didn't take six days to change the lines. It sounds like it took maybe two hours spread over six days. Not being able to pivot immediately might be a problem but it sound like it would the president's problem, not Ed's problem. But it might be anyone's problem. It just takes a while to do stuff when you're multi-tasking.
Did you know the computer also wait many instructions before it performs the one you asked for, even in "c"?
Re: It Takes 6 Days to Change 1 Line of Code
#134Earlier quoted context omitted.
This will keep happening if you keep saying OK. Try something like, "Can I get back to you in an hour? Boss wants me to finish this top priority item for him." And if Boss asks you if you can finish it next week, say no. You're being asked to give an estimate, and it doesn't help to say "Yes, if [this thing doesn't happen which I know it will]". If they want you to be the startup guy, then act like you're the one in…
That works until they goto the boss and the boss comes to me... "So I know your project is important but projectX is still our #1 priority so to the extent Jenny needs you please prioritize her work"
Let the managers fight it out.
Re: It Takes 6 Days to Change 1 Line of Code
#135Most of the product we work on (not a CRUD app) is finished or at least at a fairly mature state. But the area I work on is not. For a while they harped on us about following the process. But due to their lack of interest on what we were doing and some managers protecting us, we ended up able to make rapid changes in response to test failures, often several times a day.
It was incredible. They would seek investigations through change requests on bugs found in testing. Immediately after they were entered - before the change request even went to the overseeing group of project engineers and subject matter experts - we would tell them what caused the problem and write that we had committed a fix to the mainline. This circumvented days of waiting for a response that would have blown our schedule apart.
It paid off big. Today for the first time our tests all started passing. They've been failures for years and no one expected anything close.
There's a time for process. When a lot can break or you have a finished/safety-critical product you want to lock it down. But in initial development of new features, you have to throw it out and do what's right.
For a while they were demanding change control with CRs over software that had never been written or run successfully. Why even bother writing the CR if it never worked in the first place? That means the software wasn't done in the first place, not in a state requiring change control!
It was unusually rapid iteration between the test and development teams, who should sit next to each other and immerse themselves in making the software work. Only by rapidly uncovering and overturning problems like this can you ever get something close enough to stable to lock it down this way.
Development and test respected each other, understood what had to be done, and by working together discussing behavior and the test environment were able to determine what the software should do and how best to test this functionality.
There were times where waiting for the process would have taken us 5 days to get approval to fix a bug. By talking with our project engineer and going ahead with the testers - who realized it was not the time to stick to formal process - we were able to succeed.
I'm very lucky. The testers were cool and understood the state of the software and were willing to shout across the cube and explain what was failing. We worked together and managed to succeed by knowing when a process was important and when the managers would be happier to go around it.
The problems encountered here are mainly about people. We had testers and others who trusted and worked with us. When you don't have that - like the author of the article - it takes some social engineers and lawyer like knowledge and parsing of company policy to get around the problems.
Re: It Takes 6 Days to Change 1 Line of Code
#136Honestly, for code that controls millions of dollars worth of business and could seriously screw over a lot of people if a subtle flaw was introduced, I don't see a problem with doing it this way. Might be overkill for one line of code, but where do you set the threshold? If you say any change longer than four lines is subject to this process, then people will work on trickling in new stuff in increments of four line…
I agree that it's worth being careful on mission-critical code, but this isn't being careful, it's just box-ticking. Ed said he'd tested the actual change, but most of the time is taken up by shifting it out to some parameters file, lengthening its name and waiting for permissions.
The Web 2.0 world works very differently, of course.
Re: It Takes 6 Days to Change 1 Line of Code
#137Earlier quoted context omitted.
That works until they goto the boss and the boss comes to me... "So I know your project is important but projectX is still our #1 priority so to the extent Jenny needs you please prioritize her work"
Then you either demand dedicated "anti-office hours" or you tell them that it's not feasible that project B will get done with the way things have been recently. They're not technical, and all they can do is take your word on when you think you can finish it. They're not going to pick up on the caveats you've laced in your estimate. Also, you should let them know ahead of time that things are slipping instead of them…
I've, err we, have mostly failed.I can go on about why but at the end, I think we all share the blame and evaluate parts we could have personally done better and apply it next time round.
One of the big realizations for me is that they need someone older and more confident. I'm in my mid 20s and once founded a startup that got 30x the traffic but even months in, the boss would be unsure if I was a good programmer. We tried everything from emailing my code samples to his CTO friends to code reviews by other devs(all of which gave positive feedback) but I feel he could never totally shake that doubt. I called him out on it finally(basically if you can't tell after 8 months if I can program you should let me go). I've been programming since 12 but the lingering doubts actually started making me question my own abilities at which point I decided I need to move.
Re: It Takes 6 Days to Change 1 Line of Code
#138No, don't quit! Embrace! That's 14 hours (if I remember correctly) you could have spent working on your own projects instead of being pissed off on HN. The world is full of this, and it's well accepted and nobody questions it - make the most of it.
Re: It Takes 6 Days to Change 1 Line of Code
#139This couldn't have come at a better time. Describes my current situation perfectly.
I changed 1 line of code today. It's going to require me to call into 2 review meetings to have it approved. These meetings happen once a week. 2 weeks to get this code to production. UNBELIEVABLE.
I think it's time for a new job.
Re: It Takes 6 Days to Change 1 Line of Code
#140This shit happens at my job and leaves me feeling depressed and at times questioning my own skills because I know and my bosses know that on my part, I just had to make a tiny, tiny change. But when you have a dozen such experiences, I feel like something is wrong with me because when the dust settles, this was a one line code change that took me a week to push to production. It also makes my bosses question my estim…
ps: Now that I am leaving soon my boss is very interested for advice on how to attract tech talent. A part of me just wants to send him a link to this thread :) I mainly stuck around because it was my first FT job and I'd promised myself I won't bail on it for one year no matter how bad. In past I've regretted quitting on projects too quickly...at least I won't have that regret here.