100 Years of Grace Hopper
theodp writes "Grab your COBOL Coding Forms and head on over to comp.lang.cobol, kids! Yesterday was Grace Hopper's 100th birthday, and many are still singing the praises of her Common Business-Oriented Language."
← Back to Stories (view on slashdot.org)
Someday we'll look back at the rigid grid of orthogonal rows/columns of database tables with the same pity with which we look back the character grids in which we coded COBOL programs.
Practically all of COBOL was replaced by the printf() command. Which is still the ultimate target for most programs written today, even if the printf() is wrapped in some higher level output function. I'm looking forward to all of all database and relations someday residing in a single invocation with a comprehensive, yet simple interface. Probably a flowchart.
--
make install -not war
The university I went to stopped teaching it about 20 years ago, and most programmers of COBOL with much in the way of practical real world development experience retired long ago. In fact, a lot of them came out of retirement for a few months or a year prior to Y2K because the money offered was so good.
Today, there are still COBOL jobs advertised, and they largely go unfilled. It could have something to do with the fact that there are so few people remaining with the skills, and something to do with the fact that many of them are with banks who are notoriously cheap on IT salaries. The few remaining good COBOL people on the market go into contract positions that usually begin at about $70/hour. I kid you not.
It's a lot of typing, writing COBOL, and the code is at times boringly simple, but if someone is out of work and seriously looking for an IT position, learning it would not hurt. I predict there will still be some call for it 20 years from now.
Be sure to pay homage to the inventors of the other two ur-languages; Alan Backus, and John McCarthy. Without them, we'd still be programming in assembler, and there probably would be only a world-wide market for 5 computers.
the more accurate the calculations became, the more the concepts tended to vanish into thin air. R. S. Mulliken
...pull together a COBOL compiler...
After working at a shop that wrote COBOL compilers for machine translation into C, I can tell you can it is interesting work, but by no means simple. What a lot of people misunderstand is that COBOL can react slightly differently under each IBM OS that was shipped. Writing a lexer/parser is easy, but the memory mapping and statement convolutions in COBOL were down-to-the-bit tricky.
COBOL was a huge exercise in data massaging, where hundreds of lines were used to map data into a structure which then fed a series of output channels, like a printer, screenmaps or files. Throw in a simple set of arithmetic, but apply it in hacker-esque ways to date bits, for example, and you're scratching your head a lot of the time.
I've read all the bashing here, but one must understand that COBOL's perspective of the world was far narrower than today's. Business data was a simple number-crunching exercise, not much further than the trajectory calculations of the earliest digital computers. I have some one of IBM's computer catalogs from 1971, a longwinded tome filled with secretary-models, low-level circuit specifications, and giant machines that would make a great B-movie these days.
Back in high school I attended a talk by Admiral Hopper where she passed around a wire about 30 centimeters long and explained to us "this is how far light, or any electromagnetic signal, can travel in one nanosecond." That illustration has always stayed with me, it helps to explain a lot of the limitations inherent in hardware now that CPU speeds have become so fast.
For example, for a 3GHz CPU (.33 nanoseconds per clock cycle), electricity can only travel 10cm in one clock cycle. It's amazing that CPUs can do complex arithmetic when electrical signals inside the chip can only travel 10cm in that amount of time. Wonder why the CPU stalls when there's an access to main memory? Just look at your motherboard and gauge how far your memory is from the CPU, distance alone explains 4-5 clock cycles of the total delay.
"To be absolutely certain about something, one must know everything or nothing about it." -- Olin Miller
When I was a sophomore in high school our school dedicated its computer lab to her. Her family had a summer place near where I went to school, and she came to the school for the dedication. As one of the geekiest computer people in the school I was chosen as the token pupil to be with her when pictures were taken, etc. I think she was 80 years old when that happened, and she was still sharp as a tack. Her official title at the time was Commodore, and I remember referring to her that way. I also recall her making some comments about programming, etc. that I think helped push me into a career of computer programming before I even realized it. I really wish I had known more about her at the time I met her since I probably would have paid a lot more attention...
COBOL was heavily influenced by Grace's languages, but COBOL itself was designed by a small committee.
Table-ized A.I.
She invented computer bugs, too. http://www.waterholes.com/~dennette/1996/hopper/bu g.htm
I used to live in the same apartment complex as her in Pentagon City. The owner built a small park in her honor, but the memorial plaque does not mention COBOL or bugs. I suppose out heroes cannot be perfect.
"Will future ages believe that such stupid bigotry ever existed!" -- Ivanhoe