Software Hall of Fame Member Ed Yourdon Dies (wikipedia.org)
New submitter andyjl writes: The software industry lost one of its pioneers on Tuesday, January 20, 2016 when Ed Yourdon died from post-operative complications. Ed was a pioneer of Structured Programming methodologies, and was a prodigious author of software-related books, including topics such as "death march" projects, and the problems of Y2K. He was also a personal friend and fellow forensic software analyst specializing in the analysis of failed software development projects and the lack of software development disciplines. He once told me that he read a item on the Internet (which I cannot find) that said, "whenever a programmer writes a GOTO statement, somewhere a Yourdon dies." I am forced to conclude that one of you programmers out there did indeed write a GOTO statement on Tuesday and I want to know who it was. Look at what you did! Did you really have to use a GOTO?
Adds reader theodp: Yourdon was a successful author, whose Slashdot-reviewed books included Rise and Resurrection of the American Programmer, Death March: The Complete Software Developer's Guide to Surviving "Mission Impossible" Projects, Byte Wars: The Impact of September 11 on Information Technology, and Outsourcing: Competing in the Global Productivity Race. Yourdon's Time Bomb 2000!: What the Year 2000 Computer Crisis Means to You!, written with daughter Jennifer, was a Y2K best-seller.
It was the f'ing compiler!
I swear, it keeps insisting on emitting all these conditional and unconditional branch instructions in assembly!
It's as if you couldn't write functional code in assembly without GOTO's or something!?!?!?
GOTO heaven
10 GOTO 10
Don't waste your vote! Vote for whoever you want, unless you live in a swing state it won't matter anyways
GOTO, used properly, does not produce unstructured code. All the world's code would be a lot better if all programmers took a good class in compilers (and got a good grade) -- in this case to learn what "structure" means. I'm not arguing in favor of GOTO; it just serves to make my point.
Ed Yourdon
Oh yeah, I remember him. Stupid methodologies that in many cases made problems harder to solve because they added a whole layer of "methodology" that you had to do first, that made changes a nightmare, and were the silver bullet that didn't fix anything - when process becomes more important than solving a problem, GOTO TFO.
Rank it right down there with design patterns as a piece of sh*t.
"Transparent" is a shit show that trades on every stereotype going. A man in drag is NOT a transsexual.
Anything for a buck I guess. He isn't deserving of an article IMO.
Linus used gotos to a label at the end of some functions. It's a straightforward way to implement clean up that has to happen regardless if a failure occurs at some point in the function.
I'm a C programmer and I can use them safely :P
You are an idiot.
if (current_date < final_date)
pay_out_monthly_fee()
else
terminate_contract()
To what does that evaluate if
current_date = 00
and
finall_date = 99 ??
To what does it evaluate if
current_date=2000
and
final_date=1999 ??
The last year 2k bug was just a year or two ago, when a super market in the USA opened all its doors and switched on all its lights: but no worker was there.
Funny was, that there was "self paying terminals" and 50% of the "intruders" indeed payed ... took about 10h until someone noticed that the super market was open by accident
Background: "what day of the week is it" miscalculated due to an Y2K bug that lead to a wrong judgement of the day in the year/week.
There are literally 100 bad bad bad situations I could reiterate from my mind that involves Y2K bugs.
And yes, I worked in Y2K reengineering. If people like Ed Yourdon and others had not demanded awareness plenty of people had died in silly accidents. E.g. in elevators that don't work on days where the building is supposed to be shut down. (Oh, sunday: who needs an elevator? No one, so if one hits the button it must be a burglar, switch of the elevator. Oh: one enters 23:59 on Saturday and travels down, elevator stops mid way because it is Sunday ... Oh bad luck, elevator would work on Monday again, but it is a holiday (e.g eastern). Passenger dies from thirst. However: it is not Sunday!!! the stupid Y2K/leap year bug caused this problem on friday)
You know, bugs are as silly as they can get. Luckily the F16 flight simulators ran the same software as the real plane. So what happened? Test pilot goes over the equator. Plane turns on its back. Pilot can not turn it back. Well, he can, pretending to fly upside down ... which leads to other errors: most sensors tell the plane: "well, you think you are upside down, but in fact we are not"
Why? Because plenty of the planes stuff is controlled by software and it is difficult to fly maneuvers the software does not allow.
Reason? Normal vector, determining if the upper side of the plane shows to earth or into space had a sign error. So on the southern hemisphere it thought it would be upside down.
Y2K bugs where so many and in so many variations, people like me, who actually worked in that business, really wonder that basically nothing bad has happened.
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
I had bought and read several of Ed's books before I met him; we became colleagues and then friends (albeit not close ones) about 15 years ago. It's been a year or two since we've swapped e-mails, but I continued to see his photography work show up on Facebook from time to time.
And I daresay many of those posting here have no idea how influential Ed was in software engineering developing as a discipline, starting nearly half a century ago. He pioneered and championed many concepts and practices that we would take for granted today, both in technique and process. I am so sorry to hear this. ..bruce..
Bruce F. Webster (brucefwebster.com)
Yourdon's methodology was one of the many object oriented methods I read up before the birth of the unified method, the publication of design patterns and the like. It didn't quite fit in my way of thinking then, but that might have been a notational issue. It was clear that each of these methods had been born from their specific context, that being the personal experience of the author in the industry.
I sat through some horrifically boring Yourdon oriented training.
What a waste!
Did he contribute any actual software - programs , libraries etc.
He seemed to make a good living from peddling his books.
I bought one and never repeated the mistake.
Other than his "wonderful" philosophic ideas what did he contribute?
The F-16 story isn't Y2k related and is most likely untrue. Yourdon himself tried to track down the original source and couldn't find it. BTW, the other story in that article links back to Slashdot, which sites the People's Daily from China, so... whatever.
I'm old and when I was young there were no Computer Science courses. I just started in that field from a similar area (as an Engineering student) and Yourdon books were among my favorites because of the way with which he described concepts and techniques. I learned a lot.
I have a special place in my heart for people who need to share knowledge like him, for what I'm grateful. I hope he's in a better place now.
Condolences for those who loved him and must stand the pain now; I think he made a difference and made the world a better place for many. I'm sure at least some will follow his example and steps.
Nobody would die if trapped for two days in a elevator. You are a damn fool.
A bit of satire from the 70's https://www.fortran.com/come_f...
Yourdon's book "Structured design: fundamentals of a discipline of computer program and systems design" was my first introduction to the idea of structure programming, and has continued to influence me simply by the idea that good design has a coherent rationale, and an overall structure. Sounds obvious? Not really.
Yeah, he got a little nutty with the TEOTWAWKI stuff about Y2K. Seems kind of quaint now.
Godspeed, Mr. Yourdon.
A diabetic, when the insulin's up in his apartment?
Confucius say, "Find worm in apple - bad. Find half a worm - worse."
Methodologies and structured methods were never really the problem. The way they were rigidly applied by untutored fools was the problem. Thinking a methodology would make up for poor coding and design skills was the problem. Using a methodology to choke projects was the problem.
I've seen full-blown structured treatments given to tiny, tiny projects, with zero understanding that only certain steps were required and the rest were needless delay and expense. The creators of the methodologies generally knew better, but some of their disciples did not. The methodology salesmen certainly didn't know better. Many a dumb IT manager didn't know better.
Don't blame Mr. Yourdon. He contributed thousands of times more than most of us ever will. If academics with no experience and managers with almost no experience misused his teachings, he's not responsible.
... to break out of a Lodash forEach loop, but that should have only grazed him.
If you post it, they will read.
You are a moron. "The last year 2k bug was just a year or two ago, when a super market in the USA opened all its doors and switched on all its lights: but no worker was there." really? WHO CARES? A supermarket opened its doors? Wow. The world does not end. There are bugs in software all the time. The problem with people like Yourdon is the exaggerated everything to sell books. This causes hysteria and more trouble than the actual problem. Scumbag.
People get trapped in elevators every day. Give me a break. Y2K bug? What about BUGS that happen every damn day?
"And yes, I worked in Y2K reengineering."
Catering? Janitor? By your posts, you're very stupid, I just find your claim difficult to understand.
Thank you.
One by one, they leave our lives,
leaving us with loss that we never expected.
(R)ule in Hell or (S)erve in Heaven [R]?
How would you describe Edisons contribution to the field of sound recording? I see, he was worthless since his method wasn't lossless and his records wasn't free.
How sad it is to read the comments here when great contributors to any field dies. Pioners who really contributed long before these sarcastic commenters where even born. If Yourdon et al hadn't alerted us to the Y2K problem (first article I read was in '85) we as an industry wouldn't have prepared and avoided those problems.
Even sader to see that fellow commenters here vote comments as the one above up and it is classified as 'Insightful'.
What great contributor? Read the reviews of his books on Amazon. He is widely described as a "charlatan". His followup books were of a similar nature, and equally bogus.
http://www.amazon.com/Decline-American-Programmer-Edward-Yourdon/dp/013191958X
Published in 1993, by 1999 everyone said he was wrong - they just didn't wait long enough. Though the reasons he gives for the decline (besides low-cost) were wrong and the solutions offered did not help; Software Processes,Software Methodologies,CASE,Software Metrics,Software Quality Assurance,Software Reusability.
If anything, they hastened the decline with lots of companies paying for expensive CASE tools that did little to improve software quality while slowing down the design cycle. It is very interesting to read the Amazon reviews and note the date of each review.
I had at least one of his books in the nineties, and while I remember him as making constructive contributions, there was always the code-correction smell of over promotion.
I'm pretty sure I bought one or two of his books via strong recommendations by P. J. Plauger.
These books weren't harmful, and actually set the stage for real learning, which came like one lightening bolt after another from some obscure tome by Edsger W. Dijkstra.
The ultimate difference being that one of these men could successfully preach to the enterprise, the other couldn't.
Did you ever read one of his books. I made the mistake of shelling out $70 for the first hardcover edition of Yourdon System Method in the early 90s. After reading it, I thought "I must be missing something!" So, I read it again. And again. Then I figured out the thing I was missing was $70. Ended up putting it in the charity bin along with some clothing.
"Transparent" is a shit show that trades on every stereotype going. A man in drag is NOT a transsexual.
And yes, I worked in Y2K reengineering. If people like Ed Yourdon and others had not demanded awareness plenty of people had died in silly accidents. E.g. in elevators that don't work on days where the building is supposed to be shut down. (Oh, sunday: who needs an elevator? No one, so if one hits the button it must be a burglar, switch of the elevator. Oh: one enters 23:59 on Saturday and travels down, elevator stops mid way because it is Sunday ... Oh bad luck, elevator would work on Monday again, but it is a holiday (e.g eastern). Passenger dies from thirst. However: it is not Sunday!!! the stupid Y2K/leap year bug caused this problem on friday)
So you're saying that the problem in this scenario is that someone might die on the wrong day, because of the Y2K bug?
Sorry to hear of the passing of a peer.
Half a century sounded just about right for the decline and fall. I know where the others can GOTO. We will have time to swap stories later, about the Great Outsourcing, and other things.
...which has its place in programming, in certain specific places. The GOTO haters have obviously never programmed in ASSEMBLER...
I haven't use GOTO since 1982. Must be someone else.
"I have the attention span of a strobe lit goldfish, please get to the point quickly!"
In a software engineering forum, I argued that software engineering was mostly about human perception and not "external" rules of logic and math (beyond fitting objective tool requirements). I'll call it "perceptionists" versus "symbolists" here.
As an example, we debated whether it could be proven "go-to's are objectively worse than blocks" as far as software creation resources, quality, and maintenance.
The perceptionist side won the debate (although it can come down to definition interpretation). Blocks are easier to visualize due to indentation than go-to's, and thus aide in the visual identification of flow. There is no known visual equivalent for go-to's at this time, at least not practical ones.
That's important because the symbolists waste time and resources looking for or promoting some special math to guide software design when it's really mostly about the human mind. Just because something is easy to measure or process mathematically does NOT mean it's easy for the human mind to digest.
They accused me of promoting mediocrity and I accused them of trying to inflate the value of their profession, graduate-level university teaching, by inflating the value of minor ideas. Interesting debates, regardless.
Table-ized A.I.
I think the moron is you, especially for insulting one to be a moron.
The problem with people like Yourdon is the exaggerated everything to sell books. ...
Any proof for that? Actually, you need three proofs:
a) he exaggerated
b) be he wanted to sell books
c) he sold more books and made more money this way
Oh, makes probably no sense if the book you mention was about the Y2K problem, and was about how to address it and to emphasize that solving it is important.
From my point of view you are a kid that has no idea about the severity of the problem. Hence, you should stop commenting on Y2K problems and stop insulting dead computer/software pioneers.
In my culture it is an insult no one really wants to commit, to insult dead people. Families easy get upset ... plenty of vendettas got fought the last 2000 years about such simple issues ;D
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
That's an error alright, but it's not a computer bug, it's someone playing a vigilante. What the elevator should do is call the cops.
Forget magic. Any technology distinguishable from divine power is insufficiently advanced.
you millennials that so derisively abhor Yourdon would never be hired in the first place in the 60-70s. I find the youngsters today arrogant beyond belief. The Yourdon era was a time of learning for the nascent SW development context. EE's had the concept of reusability long ago....I think we see a lot of maturity in SW regarding this concept today... Use what works...adapt to current day... But we will always have those snotty nose youngsters making fools of them selves...but not at the not at Yourdons derision. Buy a handkerchief for goodness sakes.
"Y2K bugs where so many and in so many variations, people like me, who actually worked in that business, really wonder that basically nothing bad has happened." Which I have always thought of as the point: Y2K was seriously over-sold as virtually impossible to fix. There was an article in Scientific American (I swear, although I haven't been able to find it since then). The claim was that even if far more $ were spent fixing Y2K-related bugs by 31 Dec 1999 than anyone was planning, the world would still be in a mess the next day. There were indeed many $ spent on fixing such bugs, and I'm sure it paid off in some way (certainly consultants benefited from the spending); but in the end there was no catastrophe, not even a little one.
I had exactly one experience with a Y2K bug. My checks were printed some time in the 90s with "19" in the date (so I didn't have to write that part of the date). Yes, my paper checks. I dealt with the bug quite easily, thank you, until I used up that supply of checks. (Maybe I should have kept them as antiques.)
Actually, (c) need not be true; it need only be true that he *thought* he would sell more books if he exaggerated. (BTW, (b) is almost certainly true. What author doesn't want his/her books to sell?)
French bot?
As you don't know much about the problem, you should admit that you can't judge it.
In a typical business application you have a Y2K bug every 1000 - 10,000 lines.
So a million lines of code has about 100 to 1000 bugs. A single bug not fixed makes the application fail when that code gets executed.
Bottom line finding the bugs is easy, hence nearly all bugs got fixed.
No one knows what had happened if some majour banks had server errors left in automatic stock trading systems. Or if pension funds had starting paying out in quantity to 20 year old students.
The attitude: "see nothing has happened" is a pretty silly one considering what had happened if those bugs would no have been fixed.
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
GOTO statements rock! Loops and structured programming are for losers.
If the computer miscalculates if a day is a monday or a sunday or a sunday is a saturday due to the fact that the year 2000 was not a leap year, it is a computer bug. And related to the year 2000. 88, 92, 96 are leap years, 00 is not, it only is as 1900, but not as 2000.
Cost free eBook I read (by iBook/Kobo/Amazon/ObookO/Gutenberg etc.): "The Green Odyssey" by Philip Jose Farmer.
I didn't know him, but I read two of his books.
In The Decline and Fall of the American Programmer he predicted Japan would overtake the United States in software development due to their use of CASE tools and zero defect tolerance culture.
In The Rise and Resurrection of the American Programmer (which of course came later), Yourdon fessed up that his prediction was wrong. He attributed this to users being willing to put up with buggy software if they have benefit from new features.
Kind of bookend observations about our profession.