|
BrainiacV wrote:
"Another place had code from consultants that was complete alphabet soup with no comments."
function doIT (a, b, c, d, e)
Hey, I think they stole that method from the place where I used to work!
Also the desire to limit names to 8 characters should have died when programing languages started supporting longer names.
Just because the code works, it doesn't mean that it is good code.
|
|
|
|
|
I could handle the 8 character limitation better than I could the output from another coder working in a language that supported 32 character names. He liked creating long names that ran up to the limit. That wasn't the bad part (aside from making statements cover multiple lines to get anything done), the bad part was that he couldn't spell! So now you had to type all these long names with his mis-spellings. Sometimes his names didn't make sense "FireHunterSeekerBlowBackTo"
Psychosis at 10
Film at 11
|
|
|
|
|
I don't mind longish names if they are actually descriptive and useful. I really don't like names (short or long) that serve to obfuscate the code.
Just because the code works, it doesn't mean that it is good code.
|
|
|
|
|
Today my esteemed coworker invented a brand new programming paradigm: Redundant Coding (tm).
This buggy old legacy code we are working with has a least three almost identical and insanely complicated instances of a special form of coordinate transformation. We want to simplify, but which one to keep?
My coworker suggested that we compare the results of the three code blocks too see which one, if any, would give diviant results. This immideately lead to the idea of letting the three instances "vote" on the right result. And BAM the Redundant Coding programming paradigm was born.
Just as a jumbo jet has three of everything just in case, our code has three almost identical code blocks, just in case one of them is buggy! If one code block produces deviant results, the other two will take over!
I am, of course, kidding. We will clean this mess up eventually.
|
|
|
|
|
Any follower of the Trek universe will agree triple redundancy lasts into the 24th century.
I need an app that will automatically deliver a new BBBBBBBBaBB (beautiful blonde bimbo brandishing bountiful bobbing bare breasts and bodacious butt) every day.
John Simmons / outlaw programmer
|
|
|
|
|
Hey, O'Brien always said that he would never do without a second backup.
O'BRIEN
In order to bring the system up to
Starfleet code, I had to pull out
the couplings to make room for a
secondary backup.
GILORA
Starfleet code requires a second
backup?
O'Brien reacts to her tone.
O'BRIEN
(patiently)
In case the first backup fails.
GILORA
What are the chances that a primary
system and its backup would both
fail at the same time?
O'BRIEN
It's not likely, but in a crunch, I
wouldn't want to be caught without a
second backup.
http://www.twiztv.com/scripts/ds9/season3/ds9-315.txt[^]
|
|
|
|
|
They seem to need all those parellel systems so they can re-route warp power through them every episode.
I need an app that will automatically deliver a new BBBBBBBBaBB (beautiful blonde bimbo brandishing bountiful bobbing bare breasts and bodacious butt) every day.
John Simmons / outlaw programmer
|
|
|
|
|
Yeah, they always have "auxiliary power", often going to "phasers" or "forward shields"... hmmm... if you don't get yourself into a battle, you won't need the weapons or shields... lol
|
|
|
|
|
Too.
Much.
Time.
Panic, Chaos, Destruction.
My work here is done.
or "Drink. Get drunk. Fall over." - P O'H
|
|
|
|
|
I'm pretty sure the very model you describe is in use in some situations. Am I crazy for thinking that something along those lines was in use by NASA at some point? Or was that just a crazy story I heard?
There's a scene in the movie Apollo 13 where the guys back in Houston need to check some maths. The camera pans along a line of slide rule wielding boffins all confirming that they get the same
result and giving a thumbs up.
-Rd
|
|
|
|
|
Yeah... NASA has always used the triple redundancy method in all it's calculations. Even today on the shuttles.
|
|
|
|
|
Soemwhere, I've got an electronicafied copy of the Apollo Orbiter Guidance System Manual. Serriouly geeky stuff.
Panic, Chaos, Destruction.
My work here is done.
or "Drink. Get drunk. Fall over." - P O'H
|
|
|
|
|
Dude... it would be SO COOL if I could get a copy of that...
|
|
|
|
|
|
DUDE! That is freakin' sweet! Thanks!
|
|
|
|
|
Nagy Vilmos wrote: Soemwhere, I've got an electronicafied copy of the Apollo Orbiter Guidance System Manual. Serriouly geeky stuff.
"electronica-fied". Wow, an Apollo Orbiter GSM set to blinding techno perhaps, now that is a geek-fest.
|
|
|
|
|
Yes, its probes' systems vote between the results of the calculations in metric, imperial, and knotted rope tied to a log that's thrown off the back.
|
|
|
|
|
|
I actually thought of this as an idea to ensure correctness. Probably also has some applications to AI (e.g., random mutations of algorithms that are then compared to the original algorithms to check for correctness).
|
|
|
|
|
See, here we go again. It's just old technology wrapped up with a new name and released upon an unknowing public. I think this used to be called the Copy-Paste paradigm.
Chris Meech
I am Canadian. [heard in a local bar]
In theory there is no difference between theory and practice. In practice there is. [Yogi Berra]
|
|
|
|
|
Delphi4ever wrote: We will clean this mess up eventually
Although you used the phrase "clean..up", the Google query (( Joel rewrite )) is actually ALL you need to bring up "Things You Should Never Do, Part I by Joel Spolsky". I find this query amazing - it makes me suspicious, that Google has tracked my searches, knows I am interested in programming stuff, and e.g. if some random person enters the Google query (( Joel rewrite )) then it might fetch a differently tailored hit list ?
Anyway the article speaks for itself and being now an oldster I find myself agreeing, although I cringe at my history of youthful aspirations to "clean up" stuff.
pg--az
|
|
|
|
|
I've just finished an almost complete rewrite of a system that I support.
The users see relatively few differences apart from the fact that things are a little nippier.
I see big differences when I need to react to features requests.
The original app was developed under extreme time pressures by a developer that was figuring out ASP.Net as they went.
I think I might have just about stayed within the spirit of that Joel article. I didn't start again with an empty IDE. It was an evolution, even if virtually every line of code in the App was touched at some point.
Kinda like the Janitor that has had the same Mop for 30 years. He's changed the handle 6 times and the head 20 times, but it's the same Mop.
-Rd
|
|
|
|
|
Richard A. Dalton wrote: I see big differences when I need to react to features requests
I didn't go back and reread Joel's article, but indeed if your app NEEDS to support further changes that can easily justify refactoring - bad code is so brittle.
Richard A. Dalton wrote: developer that was figuring out ASP.Net as they went.
But, even Microsoft is figuring-out-stuff-as-it-goes. I don't know much about Asp.net personally, but synchronicity-wise I was just skimming slashdot and found a seemingly worrisome article -- Google query (( slashdot cookies ASP )) finds the article IT: New Crypto Attack Affects Millions of ASP.NET Apps[^]
pg--az
|
|
|
|
|
Delphi4ever wrote: Today my esteemed coworker invented a brand new programming paradigm: Redundant Coding (tm).
...
This immideately led to the idea of letting the three instances "vote" on the right result. And BAM the Redundant Coding programming paradigm was born.
Sorry, that's as "old as the hills".. or at least, as old as the Space Shuttle.
Three computers, each with software written by a different team of engineers (so the bugs are in different places) that vote on the result. Everything's working correctly when every vote is unanimous, but it can fly when there's only a simple majority.
They scrubbed a launch in the early days because the votes weren't all unanimous.
Now there's the way to use your backup systems
patbob
|
|
|
|
|
One place I worked had five (count'em...5!) different memory management routines because "Microsoft's doesn't work."
Really? Could it be you just don't know how to use it? Because that's going to be a big surprise to the millions of other programmers using it.
But hey, when management wanted my opinion they told it to me.
Psychosis at 10
Film at 11
|
|
|
|