Review:Rise & Resurrection of the American Programmer 78
Rise and Resurrection of the American Programmer | |
author | Edward Yourdon |
pages | |
publisher | Prentice-Hall, Inc. |
rating | 8.5 |
reviewer | SEGV |
ISBN | 0-13-121831-X |
summary | A few years later, this industry autopsy remains an interesting and insightful read. |
Decline and Fall
In the beginning of this decade, Edward Yourdon wrote Decline and Fall of the American Programmer, a pessimistic assessment of the American software industry in the global marketplace. I haven't read that book, but Ed conveniently summarizes it in the first chapter of this book.
His premise was simple: North American programmers are more expensive, less productive, and produce lower quality software than programmers elsewhere in the world. Therefore, he argued, competitive forces will drive them into extinction. He backed this up with a battery of data, figures, case studies, and anecdotal evidence.
This was apparently a wake-up call. After all, Ed wasn't merely an ignorant consultant. Rather, with 35 years in the industry, he had programmed mainframes and helped to invent structure design methodology. People listened to him.
Rise and Resurrection
But something happened during the first half of this decade. Not all of Ed's predictions came true; not all software development migrated to Bangalore, India; not all American programmers fell off the evolutionary ladder.
This book, Rise and Resurrection of the American Programmer, was written mid-decade to reexamine the situation then. Remember 1995? The web was just taking off, Microsoft Windows 95 was just released, Java was just beta, and Linux was just a hacker's toy.
Now the decade is closing, Ed is focusing on Y2K issues, and I've just finished reading this book. Some of Ed's views have dated, and some remain relevant. I'll try to enumerate a few of them here.
Java and the Internet
Ed stressed the importance of corporations embracing the internet. After all, he argued, competitors will. This has turned out to be correct. He also was extremely enthusiastic about Java, which wasn't even shipping when he wrote the book. Although most of the chapter explains the language and environment, and ends up sounding like a Sun white paper, one interesting nugget is Ed's suggestion that Microsoft may simply "embrace and assimilate" Java for themselves.
The Microsoft Paradigm
Let's be frank; Microsoft is quite successful, and does some things right. Ed dissects the corporation and comes to several conclusions. With section headings such as "The Dark Side of the Force" and "Into the Belly of the Beast," this chapter acknowledges public sentiment and should interest most Slashdot readers. But Ed concludes that Microsoft's hackers are growing up, and the corporation's powerful position will be difficult to assault.
Linux and Open Source Software
Ed pretty much missed this one. I didn't see any mention of Linux, hardly a blip on the radar when this book was written. Curiously, I also didn't see any mention of open source software, a wider concept that has been around for decades.
The closest hint I saw of the rising phenomenon was regarding Java's ability to change the economics of paying for software. Ed suggested that downloadable applets and web interaction make it possible to sell a "one-time usage" of software components, which could threaten existing software vendors with monolithic products.
An Enjoyable Read
At just over 300 pages, this book covers quite a few topics. I thought the chapters on peopleware and good-enough software were quite well done. Other chapters spurred me to learn more about the Capability Maturity Model and Personal Software Practices.
Ed is a frank and readable writer, and the book is quite digestible. It's fun to read recent predictions and analyze where they went wrong, and right (remember, hindsight's 20/20!). The book is almost a time capsule of the mid-nineties, which coincidentally being when I started working with computers in earnest was a refreshing read for myself. I think it will be for you as well.
Ed's web site is at www.yourdon.com.
Buy this book here.
TABLE OF CONTENTS
Preface
Trademark Acknowledgements
Part One: Decline & Fall Reexamined
1. The Original Premise
2. Peopleware
3. The Other Silver Bullets
Part Two: Repaving Cowpaths
4. System Dynamics
5. Personal Software Practices
6. Best Practices
7. Good-Enough Software
Part Three: The Brave New World
8. Service Systems
9. The Internet
10. Java and the New Programming Paradigm
11. The Microsoft Paradigm
12. Embedded Systems and Brave New Worlds
13. Past, Present, and Future
Appendix: An Updated Programmer's Bookshelf
Index
In some ways, he made a point (Score:1)
if 'a' then
if 'b' then
if 'c' then
And so on... And this was for [a-z] and [A-Z]!! I tried to tell him that this could be done in one line of code, but his response was that since he had already typed in so much, he wanted to use what he wrote. I find this really sad. It would have been quicker to write a program to generate the 52 lines of code than to type them in!! No wonder Microsoft code is bloated, if this is the type of programmers they hire!!
American Programmers (Score:2)
Obviously, there are some damn good American programmers, but the rest of us could be better. I imagine that anyone reading this is pretty good (or at least trying), as it shows the personal initiative of reading information on your field, but how many others just toe the line for a check? If those "programmers" end up losing out to better foreign programmers, that's their own fault. Would you rather have the air traffic control software for your flight be programmed by a shoddy textbook American or a foreigner who takes great pride in his work? Regardless of nationality, we all need to constantly assess ourselves. It's our skills that make us valuable, not our nationality.
Ed YourDoneFor (Score:1)
Language barrier in comp sci... (Score:1)
Of course, you have to know english to be able to do comp sci. It's what the vast majority of programming languages are based on (I've yet to see otherwise, in fact). Understanding english-based programming languages is not a problem for the japanese researchers. The problem is generating new ideas, and expressing them in english. If, for example, they want to create a new language, it has to be in english if they expect anyone outside of japan to use it. However, not being native english speakers they cannot conceptualize and express it effectivly, and this really hurts their position in comp sci reseach generally.
Japan's main software industry is in entertainment. Otherwise, they use the Japanese version of Windows, the Japanese version of MS Word, etc... Software is imported and translated, rather than created at home. Basically, the American programmer is in no danger simply because of a natural language advantage, and an already dominating position in the global marketplace.
Recent Events (Score:1)
Indian Programmers? Yah Right. (Score:1)
Failed to Account For American Culture (Score:1)
Failed to Account For American Culture (Score:2)
What I think these analyses fail to take into account is how American culture makes up for a lot of things. Americans have a more anti-establishment, anti-authoritarian outlook than people in most other countries. I think this tends to lead to more questioning of the current ways of doing things and thus a lot of innovation (Java being a great example from this book). Americans have certainly been heavily involved in most major software innovations. Additionally, America is very socially mobile, and has a culture that encourages people to take risks by starting busiesses, or jumping to a startup in the hopes of long hours and quick bucks. America is also fixated on freedom and rights so it should surprise no one that the "free software" movement had much of its genesis in America. In short, people in some other countries might be able to reguritate facts on an exam better than we can, but we've got a few qualities of our own that can make up (in some cases more than make up) for that.
The above paragraph is not meant to suggest that other countries are filled with sheep satisfied with their lot in life and with no ambition or mobility. I'm only saying that the elements I highlighted are more prevalent in America than elsewhere (which is something that many promient scholars agree with, BTW).
shit index == full (Score:1)
This is yet another example of how most pundits and generalists are full of shit. They make a career out of pulling ideas out of their asses. If they guess right about things, they claim to be prophetic, and if they are wrong, they make a bunch of money updateting their crap
Indian Programmers? (Score:1)
Of course there are good programers from India. I've met some.
There are a couple problems they have not overcome though. One is language. I don't expect them to be good, but they should be at least passable. According to the mythical man-month writing code is 1/6th of a programing effort. My expirence backs that up. So being good at writing code doesn't help these excelent programs (who are not particularry better then Americans) do the other 5/6th of the job. Still overall I can deal with a few of these programers on the team, I'll make up the slack, they do add to a team when there aren't so many that the other 5/6th goes lacking.
The porblem is my expirence is that these people are a minority. I worked with them in College, since many of the other students were not American. Most were not compentant programers. They couldn't be trusted to write the code that needed to be written in such a manor that I could go in after them and make a minor change. Unmaintainable code is a death toll in the real world. Much of the Y2K problem exists in code written in the 50s and early 60s! Mind you I've seen americans who write code just as bad, and just as many. The difference is I can shunt those americans off to the other 5/6th of the task.
The sterotypes exist for a reason. Some sterotypes exist for the wrong reason, others are no longer true, but most sterotypes once existed in truth.
Indian Programmers? Yah Right. (Score:1)
As a Canadian working in the US (thank you NAFTA), I can't believe I just said that.
Programmers (Score:1)
The ties may bind...
... but if they are made of leather they also chafe
How to Make Money Writing Books (Score:1)
Well, I can see where you're coming from, but...."If not all your predictions come true, then never write again." Is that what you're saying? Who's gonna tell Arthur C. Clarke? :-)
dylan_-
--
Review Comments (Score:2)
A lot of the book isn't about prediction. It's about bettering yourself and your company. For example, by using best practices, or reading books on your own if your company won't train you.
The book is a light and interesting read, even if it gets somethings wrong. Even in the opinion section, I don't agree with it all. And it is several years old, so has more historic than practical value right now.
Personally, having only entered this industry in the mid-nineties, I missed the whole IBM/COBOL/decline thing in favour of the Linux/Java/resurrection thing. And I'm not even American.
Actually, the more I think about it I'd give it a 7/10, simply because I don't think it rates as highly as More Effective C++ and wish to be internally consistent with my ratings.
Not his latest book. (Score:1)
He has written at least two other books since Rise and Resurrection. He also coauthored another book in the same year.
See http://www.yourdon.com/articles/articlesummary.htm l#Technical books [yourdon.com] for more details.
RE:Failed to Account For American Culture (Score:1)
Yeah, they (the corporations) like the fact that they can bring over some rather unsuspecting foreigner, and make them some form of indentured servant by paying them a pittance, and waving the threat of no citizenship or loss of the visa over their heads.
Anyone who really belives that there were so few programmers in the US to fill all the jobs needs to have their head examined. Corporations made all that bullshit up just so they could get their fodder for a lot cheaper than they would have had to pay if the potential employees were American. And the government, clueful as they are, agreed with them.
It's a sad, sad world.
You mean we're not all going to die? (Score:1)
Price Check (Score:1)
Amazon $13.56
BarnesAndNoble $13.56
Shopping $11.01
Spree $13.56
1BookStreet $15.26 (includes shipping)
Regards, Ralph.
Whiners (Score:1)
Just because you have a bad case of 'pony tail guru' envy doesn't mean you can't do something about it. No one is stopping you from getting out there and writing the next big gloom-and-doom best seller. Go for it!
How 'bout ... the Internet? (Score:1)
Not to mention Linux, Apache, etc...
If you think "That's funny".... (Score:1)
Why does that make me think of Windows98?
Turning in your homework late? (Score:1)
Yourdon annoys me... (Score:1)
Do they still publish, now?
Stereotypes? (Score:1)
You must be a young one (Score:1)
Remember the 1990-1991 recession? Laid-off techies were moving out of Silicon Valley in droves, so many that the moving van companies couldn't cope.
Those of you in your twenties don't remember hard times. They will come again. The business cycle hasn't been repealed.
If you're tops in your field, you can do well even in recessions. If you aren't, or you were tops in your field but are getting a bit rusty, or you manage to get into a specialty that becomes obsolete, you may have big problems.
Re: (Score:1)
American programmers who leave after 5 years (Score:1)
Don't confuse this with people who can't get jobs.
Also, when talking about shipping programming jobs overseas, bear in mind the difficulty of coordinating that work with the programmers back home. This is definitely not trivial, when the time zones make it impossible to even teleconference during business hours.
Jon
patriotism? (Score:1)
Are we really waiting for such a book?
Maybe yes, but why the **** AMERICAN!?!
or is it just me?
If you want a far more useful book (Score:1)
Does anyone listen to Yourdon any more? (Score:1)
The difference is that high-tech jobs have grown at a much higher rate in the US, and despite the fact that the Internet makes the US->India system possible, there is still a lot of value in physical location (e.g. Silicon Valley/Alley/Route 128).
One problem with many of these "sky-is-falling" types of predictions is that while they argue vociferously FOR their prediction, they fail to consider the another alternative -- that both systems prosper.
Great strategy (Score:1)
My dimise has been greatly exagerated (Score:1)
A lot of work certainly has moved abroad, and cheap labour is imported. I've spent quite a bit of time in Bangalore over the past year. Every street has some well known western companies, and each is employing 500 to 1000 people there. Nobody seems to bother with a small operation. It only makes sense to go off-shore if you do it big time.
The results people get with these off-shore operations is very variable. Some of the best stuff in the world comes out of Bangalore - mostly software, but some chip design too. Some really low quality, low productivity work is also done there. Perhaps the results people get out of these operations reflect the effort they put into them.
Now Hydrabad is on the rise, with thousands of prgrammers doing mundane Y2K work there. Chip design is also building up in Bangalore, Madras and Hydrabad.
In Bangalore a reasonable programmer gets US$500 to US$800 a month. Even if they were not as productive as some other countries they would still offer could value.
Cheap well educated people who speak good English sounds like an investor's dream come true. Perhaps the migration to India will gather pace now it has been seen to be successful. On the other hand it may be capped by a limited of suitable people. Prices have certainly soared in Bangalore in the past five years.
My dimise has been greatly exagerated (Score:1)
I work with a variety of people here. Indian, Romanian, Hungarian, and even a few Americans. My software group is 7 non-americans, 2 americans. But I don't worry. You know why? Because even though these people are smart, and write good code, they just don't get the big picture problems. They don't troubleshoot very well, and they don't self-task very well. They don't manage other people very well. They can't get their mind around the large issues, they don't understand the American way of doing business and serving customers, and they don't understand corporate politics and schmoozing. Their communications skills aren't as polished. Certainly there are exceptions, but that's my overall impression after working for 4 years in this industry. Also, I'm not defending some of the stupid corporate crap I put up with, but hey, that's what pays my (high) salary. I take the good with the bad. But I don't believe, not for a minute, that the majority of these programmers could do my job. If we pared my group down, one by one, I'd be the last to go. Multiple skillsets, superb communications skills, and cultural knowledge of how we do business are truly valued assets in a programmer. Why? Because so many programmers don't have them.
Don't worry, be happy. And stash large amounts of $$$ for the future if I'm wrong.
Old News...Very, Very Old (Score:1)
I owe a lot to Ed Yourdon for his one truly great book: Managing the System Life Cycle. I unreservedly recommend it still, and wish he would update it.
Decline and Rise both had some interesting history and surveys of the big iron software world, and I think his emphasis on software quality, SEI and the like are good, but frankly he's missed out on all the important new things happening since 1980, including but not limited to freeware/open source.
Rise was published in 1996 and was out of touch even then. Why are we even bothering?
--------
Programmers (Score:2)
RE: Paying them a pittance (Score:1)
Sucessfull?? (Score:1)
Comparing Gates to Hitler is just plain stupid, and shows a lack of imagination.