Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror

Comment: Re:Marketing guy's function (Score 1) 421

by philgp (#41410033) Attached to: Why Non-Coders Shouldn't Write Code
You've hit the nail on the head there. It's also partially because I'd probably have to do significantly more job hunting than I'm prepared to (and probably even relocate) to find one of those semi-mythical employers who value programmers who take the time to do things properly. So I'm fully aware that I bear my share of blame for the situation I'm in.

Comment: Re:Marketing guy's function (Score 1) 421

by philgp (#41409279) Attached to: Why Non-Coders Shouldn't Write Code

Wow. I'm in exactly that situation now. I joined a small startup a few years ago where all the code had been written by one of the company founders whose plan all along was to work on it until they'd built up a strong enough business to take on an actual programmer.

Whenever he gives me a job to work on, he's already done all the time scheduling and promising to customers, and instead of asking me how long it'll take, he tells me when it's got to be finished, adding "can you get it done in that time?". If I try to say no, he argues me down, saying he could do it easily in that time. And, just as you said, he probably could, but it would be an almost completely unmaintainable mess.

It's made worse by the fact that I'm having to estimate how long it's going to take *me* to modify *his* code, and he just doesn't seem to understand why it'll take me longer than him to do it! Picture a single file project, 20,000 lines of Microchip PIC assembly code, no function header comments, not even any vertical spacing to hint at which labels mark the starts of functions and which labels are internal to functions; chunks of code processing arrays copied and pasted for each array element instead of put in a loop (he seems to go to great lengths to avoid writing loops); lots of copies of functions differing slightly from each other where he didn't seem to realize he could have parametrized one function; functions with names like "CALC_MAIN1", "CALC_MAIN2", "CALC_MAIN3" etc.; and, on top of all that, no specification document.

Reading this back, I'm shaking my head at myself, wondering why I'm even still working here.

Vital papers will demonstrate their vitality by spontaneously moving from where you left them to where you can't find them.

Working...