Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

100 Years of Grace Hopper

Posted by CowboyNeal on Sat Dec 09, 2006 11:32 AM
from the beautiful-jumping dept.
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."
+ -
story
This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • Women (Score:5, Funny)

    by Anonymous Coward on Saturday December 09 2006, @11:35AM (#17174540)
    It figures. One of the wordiest (is that a word?) programming languages was invented by a woman. Talk talk talk. :-)

    I couldn't resist.
    • Re:Women (Score:5, Insightful)

      by Tablizer (95088) on Saturday December 09 2006, @05:35PM (#17178406) Homepage Journal
      It figures. One of the wordiest (is that a word?) programming languages was invented by a woman. Talk talk talk. :-)

      Men have Perl: a series of unintelligable grunts.
           
    • Re:Women (Score:4, Interesting)

      by Vreejack (68778) on Saturday December 09 2006, @07:13PM (#17179406)
      She invented computer bugs, too. http://www.waterholes.com/~dennette/1996/hopper/bu g.htm [waterholes.com]

      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.

      • Re: (Score:3, Interesting)

        You were close to greatness living in Pentagon City near Grace Hopper. And shopping in the same underground center as she did.

        I was lucky in school to meet Captain Hopper (Captain Cobol - she was promoted many times later.). In 1979 Captain Hopper visited my university, then ETSU and now TAMU Commerce, bringing her loop of microsecond wire. The computer club that night had a drink session for my one and only time as bartender and I served Ms Hopper a drink. Also there was Gary Shelley of "Structured Cobol"
  • by Anonymous Coward on Saturday December 09 2006, @11:35AM (#17174542)
    Even though you died in 1992, Happy Birthday to You!
  • by davidwr (791652) on Saturday December 09 2006, @11:37AM (#17174560) Homepage Journal
    Seriously. Learn some legacy skills, you'll need them to help your future employer maintain their legacy stuff or migrate it.

    COBOL programmers are retiring fast, in 5-10 years expect a mini-boom for this skill set as those who didn't migrate before Y2K decide it's finally time.
    • Re: (Score:3, Insightful)

      "The use of COBOL cripples the mind; its teaching should, therefore, be regarded as a criminal offence."
      -Edsger W.Dijkstra

      (when you mentioned 5-10 I just couldn't resist :)

    • From the Tao of Programming: http://www.canonical.org/~kragen/tao-of-programmin g.html [canonical.org]
      Each language has its purpose, however humble. Each language expresses the Yin and Yang of software. Each language has its place within the Tao.

      But do not program in COBOL if you can avoid it.

      • by camperdave (969942) on Saturday December 09 2006, @12:08PM (#17174840) Journal
        Nonsense! Cobol is machine independent and self-documenting, and it is still around because it is a very fit, if not the fittest, language for business purposes. Besides It would likely be far easier to pull together a COBOL compiler than to rewrite, test, debug, (document, don't forget document) and release any application that was written in COBOL.
        • by mugnyte (203225) on Saturday December 09 2006, @12:40PM (#17175094) Homepage Journal
          ...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.
          • Well, COBOL has been around for a long time. It predates the personal computer. It predates 8-track tapes. It predates touch tone phones. It predates NASA's Apollo program. It predates Kennedy's presidency. It is not surprising that one or two butt-ugly hacks have made it into some programs.
        • by Cyberax (705495) on Saturday December 09 2006, @01:43PM (#17175964)
          I helped to maintain COBOL software.

          Yes, it works. And yes, it works because nobody dares to touch it. Besides, people who praise COBOL often forget that only a small fraction of COBOL code has survived. Most of the bad code has been replaced by code in another languages long ago.

          There are far better tools now: Java/C# for business logic, BPEL for orchestration, rule engines, SQL stored procedures to work with large amounts of data, etc.
  • Try this [archive.org] instead.
  • by camperdave (969942) on Saturday December 09 2006, @11:41AM (#17174592) Journal
    The only way I could code my way out of a wet paper bag in COBOL would be if my life depended on it (and I had a few COBOL programming texts in the bag with me). All I remember about COBOL is that it is long winded... as per its alternate acronym expansion: Considered Obsolete Because Of Length.
  • And while I'm sadly not related (or perhaps just not very closely related) to Grace Hopper, it's still neat that someone else with that somewhat unusual last name is in computing. :-)

    I have a point system for what people think of when I mention my last name:

    • Dennis Hopper [wikipedia.org]: Not that I dislike Dennis Hopper or anything, but mentioning a famous contemporary actor is just too easy and makes me think the person is likely someone who gets way more from pop-culture than they should. -1 point
    • Edward Hopper [wikipedia.org]: Oo
    • Yes dad, that's cool and all, but there are also loads of people making fun of our name.

      Greetings,
      - Hip
    • And while I'm sadly not related (or perhaps just not very closely related) to Grace Hopper, it's still neat that someone else with that somewhat unusual last name is in computing.

      There are 10742 "Hopper" entries in the white pages in the United States. You do not have an unusual last name-- it's just not common like Johnson or Smith. It ranks 827th out of over 88,000 names in the US, more common than Stein, Fitzpatrick, and Nielsen. My last name shows 314 matches, and I know a dozen of them as relatives. I don't even show up in most name databases. I have an unusual last name.

  • by Anonymous Coward
    She not only debugged the problem but documented the bug in her notebook.

    Look at the bottom of this page. [navy.mil]

  • by Doc Ruby (173196) on Saturday December 09 2006, @11:53AM (#17174722) Homepage Journal
    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.
    • Yes to your first comment, no to your second. I dont see how in the world printf could even touch COBOL.

      There are aspects of COBOL that are still not available in present day lnguages.

      A super simple example is COBOLs ability to perform a pre-process, sort HUGE amounts of data, and then perform a post-process. Now, granted that was how things worked back then and is not done that way today. Today we just split it up into 2 programs and do some kind of sort in the middle, but the point is that COBOL had some
      • OK, COBOL was more than printf(). For example, conditionals/branches/loops. Perl is like printf++. And does what you like with pre/postprocessing, like with the s/// function. I love Perl.

        I learned BASIC, then 6502 Assembly, then Pascal to get on the timeshare, then DCL, then forth, then COBOL to stay on the timeshare, then a dozen others (including CORAL, PL/I, x86 Assembly), then C, then C++, then Perl, then a dozen others (including Java and SQL).

        I wish I could do it all with a flowchart. Someday I will.
      • Does the code it generates actually work? Efficiencies compared to competent human programmers? Can the generated code be targeted by the universe of existing lexical code tools? And the product pulled back into the BizTalk interface?
      • Re: (Score:3, Interesting)

        You don't really understand how high level languages work (even when they're spellchecked). The COBOL forms still mirror the punchcards, even though there are no punchcards anymore.

        I learned COBOL a quarter century ago, when there were still punchcards (mainly punched tape, but still plenty of cards). printf() mirrors the punchcards. And C++ and Perl, for example, are highlevel languages that still use the grid.

        A truly highlevel language would present APIs independent of the underlying HW artifacts. Not jus
  • The article writeup says today is Grace Hopper's 100th birthday. What it neglects to tell you is that Grace Hopper died in 1992. So yes, today is the 100th anniversary of her birth, but I don't think many would consider it a 100th birthday.
    • Why those dirty rotters! Here I am thinking that Ms Hopper had lived to the ripe old age of 100, marvelling at the changes she would have seen, not only in the computing world, but in the world in general, only to find out that she died ages ago.
  • Of how something utterly deficient by design can just put the word 'business' in its name, and get phb's to chase it like fish after a dead worm. If someplace is in a crisis because it has to migrate its critical legacy COBOL application and can't find anyone to do it, well that's just too bad. Chalk another one up to darwin....
  • by Panaqqa (927615) on Saturday December 09 2006, @12:04PM (#17174814) Homepage
    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.
  • by idlake (850372) on Saturday December 09 2006, @12:04PM (#17174818)
    Designing a language that is simple to use and results in easy to read and easy-to-understand code is the right idea. For a first attempt, COBOL wasn't bad. But from a modern perspective, it has lots of problems. Also, COBOL (like Ada) incorrectly assumes that writing more text makes code clearer; it does not.

    The best designed language overall is probably still Smalltalk: it's easy to read, easy to learn, and was designed from the ground up with the idea of being used in an interactive programming environment. It also strikes a better balance between verbosity and expressiveness. Just about the only thing that Smalltalk got wrong was to use strict left-to-right evaluation for arithmetic expressions; a better compromise might have been simply to require arithmetic expressions to be fully parenthesized.
    • Just about the only thing that Smalltalk got wrong was to use strict left-to-right evaluation for arithmetic expressions; a better compromise might have been simply to require arithmetic expressions to be fully parenthesized.

      That is because Smalltalk doesn't have arithmetic expressions - it only has sending messages to objects:

      2 + 3

      is sending the message '+' to the object '2' with the argument '3'.

      Introducing the idea of actual arithmetic expressions into Smalltalk would make it far more complicated.
  • by deitrahs (449087) <brian@techraRASPt.com minus berry> on Saturday December 09 2006, @12:08PM (#17174842)
    one of the few things i have on my "i love me wall" is one of her nanoseconds, framed with a letter from the admiral to my mother (whom she was trying to encourage into a career in computer science). now that i have a daughter of my own, who is already quite geeky herself, i counterbalance the pop culture effect with stories about women like grace hopper.

    more girls - and hell, more boys for that matter - need to learn about people like her.
    • Re: (Score:3, Interesting)

      I think I am the only who ever publicly addressed Admiral Hopper as Admiral Grace. It was 1981, she was speaking at North Island Naval Air Station. She made a comment about how desktop computers would be more powerful than the current 1980's IBM 360 Mainframe computers, (this WAS the big dog in those days for mortals like myself). After the presentation, I had the chance to ask her why she thought mainframes would be on desktops, her reply was, "Because of the variety of computers being developed today a
  • by Bananatree3 (872975) on Saturday December 09 2006, @12:10PM (#17174868)
    the art of COBOL, and what an art it is. I am sorry no young grasshoppers have taken up this valuable language.
  • My first computer related job out of school was to create and teach a first year COBOL course. I remember it well Identification, Data, Environment and Proceedure divisions.
  • COBOL, LISP, FORTRAN (Score:4, Interesting)

    by Frumious Wombat (845680) on Saturday December 09 2006, @12:22PM (#17174968)
    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.
    • *sigh* John Backus. Apparently my theoreticians and programmers got crossed this morning.
    • Re: (Score:3, Informative)

      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.

      First of all, it's John W. Backus not Alan Backus. On the timeline here, the "5 computers" prediction was made by an IBM chairman in 1943. Even long before there was computer languages as such (Fortran 1957, Lisp 1958, COBOL 1959), there was orders of magnitude more than 5 computers. No
  • Learn Cobol! It's the only way to live forever.

    You see, in the future mankind will have the ability to revive deceased people. That's why so many of those future-nuts have their bodies frozen: they think they'll be revived. But why would the people in the future do that? It's bound to be expensive, and it's not as if there will ever be a people shortage.

    That's why you should learn Cobol. To be irreplaceable not just now, but also in the year 9999. And in the year 99999. And in 999999...

    Learn Cobol, for j

  • Grace Hopper is ranked Rear Admiral Grace Hopper in the US Navy; the guided missile destroyer USS Hopper (DDG-70) is named after her.

    http://www.hopper.navy.mil/Page.htm [navy.mil]

    Ben
  • COBOL = (Score:3, Funny)

    by larien (5608) on Saturday December 09 2006, @12:43PM (#17175130) Homepage Journal
    Completely Obsolete Business Oriented Language...

    That said, I work in a company which still runs a lot of COBOL code - a bank, funnily enough. I think banks are about the only people still using code written in the 70s *sigh*

    • Outside of banks, insurance companies.... how many companies were doing large scale computerized accounting in the 1970s?

    • >I think banks are about the only people still using code
      >written in the 70s *sigh*

      Not at all. Many serious users are still using code written in the late 50 and 60's. It's very common in the aerospace industry. Physics and mathematics hasn't changed since then, and some of of the code I see is FAR BETTER (clear, readable, and rigorously accurate) than most C++. We even have the original card decks for some of our stuff (although its been saved in files at this point). Ou
  • by ishmalius (153450) on Saturday December 09 2006, @12:50PM (#17175230)
    "It's easier to ask forgiveness than it is to get permission."

    Didn't know that she said that.

    I have been quoting this for years. This is precisely the way to deal with any bureaucracy. Asking for permission is the most ridiculous thing to do when wanting to get something done. You are condemning yourself to days and weeks of memos, email, meetings, and PowerPoint charts. Better to just do it and get it done. Cut that Gordian knot. What a useful method of dealing with middle management.

    I just didn't know that she was the one who said it first.
  • Admiral Nanosecond (Score:4, Interesting)

    by conradp (154683) on Saturday December 09 2006, @01:31PM (#17175792) Homepage
    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.
  • by Iphtashu Fitz (263795) on Saturday December 09 2006, @03:50PM (#17177434)
    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...
  • by Tablizer (95088) on Saturday December 09 2006, @05:20PM (#17178266) Homepage Journal
    COBOL was heavily influenced by Grace's languages, but COBOL itself was designed by a small committee.