Capt. Geoffrey Thorpe
Touchdown! Greaser!
- Joined
- Jun 7, 2008
- Messages
- 16,021
- Location
- DXO124009
- Display Name
Display name:
Light and Sporty Guy
Personally, I am of the opinion that one hand in the Kool-Aid is too many.
The Holy Grail of job security: A million lines of spaghetti code and not one line of documentation.
I always start with the assumption that nothing is as represented...
It's that Jed Clampett look that women find irresistible.No really, it's true. I'm good-looking, funny, smart and women everywhere want me.
The Holy Grail of job security: A million lines of spaghetti code and not one line of documentation.
I remember a coding job when I was in college where I was given a data deck and asked to write a program that told you how many times each question was answered a particular way. Multiple guess answers, 1 to 10. In FORTRAN, that's easy. Except they didn't mention that some people didn't answer all the questions and the "no answer" questions were coded as "0". 0 is not a valid subscript. It took me forever to finally find that bug in the data.
Variants of this conversation have been repeated many times over the years...
ME - I can't possibly meet this schedule.
BOSS - How many more people do you need so you can bring in the date?
ME - Can you make a baby in a month if you bring in nine women?
Variants of this conversation have been repeated many times over the years...
ME - I can't possibly meet this schedule.
BOSS - How many more people do you need so you can bring in the date?
ME - Can you make a baby in a month if you bring in nine women?
Documentation is worthless in my opinion. The moment someone changes the code and not the document, it’s nothing more than a misleading lie. The only documentation that matters is the code that’s running in production.One of the best lessons I ever learned in college was in my Operations Research class. The prof gave an assignment to write a program to implement some algorithm or other (might have been a travelling salesman problem; not important). He then gave us a program that had been written in FORTRAN by one of his previous grad students, but it was never completed. Our assignment was to fix and finish it.
Of course, there wasn't one single line of documentation. Variable names were obscure, there was leftover ghost code that wasn't called, calls to non-existent subroutines he hadn't written yet,....
Making that thing work (and I did it) was one of the worst nightmares I ever had in school. I've long since forgotten the technical aspects; the enduring lesson was document, document, document.
Documentation is worthless in my opinion. The moment someone changes the code and not the document, it’s nothing more than a misleading lie. The only documentation that matters is the code that’s running in production.
Write the code in an organized manner with good method and variable names, functions that are single purpose, testable, and without side effects, and you’re good to go.
If you don’t know what it should be doing, how are you going to fix it?There are a lot of times where I'd like to see the developer put in a line or two telling me what he intended to do. Usually if I'm reading someone else's code it's because it's not doing what it should. I can see what it is doing, but that doesn't tell me what it should be doing. I write a lot of SQL and it's a limited language, plus execution speed is super important, so abstraction is usually not an option sosome well placed comments help a lot.
“Class definitions” .... kids today ...I haven’t actually coded in years, but I still do code reviews and find bugs that others can’t. When I did code regularly I usually wrote my functions as commented pseudo code, high level first, then filling in the details and then it usually naturally broke down into function calls and class definitions and the comments removed as the code is implemented. It’s a similar pattern to what is popular now with TDD.
Not anymore. But we have to do something to make life interesting. Can you imagine staring at a computer screen 8 hours a day...and it's not PoA?Holy cow I guess 90% of folks on PoA write code for a living.
Not anymore. But we have to do something to make life interesting. Can you imagine staring at a computer screen 8 hours a day...and it's not PoA?
If you don’t know what it should be doing, how are you going to fix it?
And even if they appear to make sense sometimes they don't! We have (had) an SQL function that someone wrote once to calculate "business minutes" - which is great for us for our KPI reporting. After using this function for years we come to find that it defined the business day at 8am to 7pm.. not 9 to 5.. and fixing it was a headache as it called a number of other functions that defined the start and end times of days, holidays, etc.Function calls that had a name the might have made sense to the guy who wrote them, but since I wasn’t around, they make no sense to me.
VBA sort of counts... at least it's a way to impress non tech folks lolwriting stuff on Excel doesn't count
I hate people that write inaccurate documentation that is just as confusing as the code if you aren’t the one that wrote it and isn’t accurate as soon as the ink on it dries. Even worse, I hate people that assume the document is right and don’t go any further.Write the code in an organized manner with good method and variable names, functions that are single purpose, testable, and without side effects, and you’re good to go.
Sounds like you’re the guy who wrote the code I just spent a week debugging. The guys who wrote the code told the business owner the same thing you said.
I spent most of the week just figuring out what the code did. Function calls that had a name the might have made sense to the guy who wrote them, but since I wasn’t around, they make no sense to me. Conditional branching where it jumps to things like 'Dave’s formulas', or 'Handler'. Why? Print statements that only print when delay code is commented out.
I finally got it to stop crashing when I commented out the last function call in the stack. By this point I was in about eight layers deep. I have no idea why it stopped working—or even if the code ever worked with that function enabled. The code’s owner decided not to spend any more money on the bug and if someone complained that the function no longer worked for them, we’d revisit the issue. So far, no one has complained.
Moral to the story: I hate people like you from the bottom of my cold dark heart.
The problem I see with too many developers is that they are far to eager to latch on to someone else’s thinking and run with it, ...
No picture, no clue.New guy. A new guy that has been in training longer than most and just doesn't get it. He's on his second training extension with people backing up behind him and sucking the life out of everybody. It's SOGOTP* time for him as everyone is tired of writing evals and explaining things over and over again. Ain't nobody got time for dat! He approved a C-130 for a shallow beam approach with a helicopter directly in the C-130's path without saying a word to warn the helicopter. I told him to give traffic on someone...twice and he started talking to a medical helicopter that was 15 miles away.
*...or get off the pot
Don’t crush that dwarf, hand me the pliers.
I’m thinkin most readers are clueless on that one.Wow, that's a blast from the past. Don't make 'em like that anymore.
Making that thing work (and I did it) was one of the worst nightmares I ever had in school. I've long since forgotten the technical aspects; the enduring lesson was document, document, document.
Modern languages should be used in such a way that the purpose, function, expectation, and regression is all included in developer output and mostly as code.Looks like the profs work assignment achieved the intended result. Had he just told you to implement the algorithm in your own code, you would have learned something, but not the point about documentation and consistency.
Here's a positive one from a highly respected co-worker. It's a borrowed quote but I like it:
"Sometimes good is good enough"