Slashdot Mirror


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."

35 of 184 comments (clear)

  1. Women by Anonymous Coward · · Score: 5, Funny

    It figures. One of the wordiest (is that a word?) programming languages was invented by a woman. Talk talk talk. :-)

    I couldn't resist.

    1. Re:Women by Tablizer · · Score: 5, Insightful

      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.

    2. Re:Women by Vreejack · · Score: 3, Interesting

      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
    3. Re:Women by JavaManJim · · Score: 2, 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" fame.

      I am sure this story of Grace Hopper has been repeated across the USA in numerous colleges and universities in the years before, during, and after. Grace Hopper was a tireless and wonderful advocate for COBOL.

      God bless her soul,
      Jim Burke

      PS There were other Cobol promoters out there such as Gerald Weinberg. As far as I know Gerald Weinberg mostly visited corporations with the message.

  2. Happy Birthday to You! Happy Birthday to you! by Anonymous Coward · · Score: 3, Funny

    Even though you died in 1992, Happy Birthday to You!

  3. Kids: Learn COBOL, stay employed by davidwr · · Score: 4, Insightful

    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.

    --
    Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
    1. Re:Kids: Learn COBOL, stay employed by camperdave · · Score: 4, Funny

      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.

      --
      When our name is on the back of your car, we're behind you all the way!
    2. Re:Kids: Learn COBOL, stay employed by novus+ordo · · Score: 2, 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 :)

      --
      "You're everywhere. You're omnivorous."
    3. Re:Kids: Learn COBOL, stay employed by mugnyte · · Score: 3, Interesting

      ...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.

    4. Re:Kids: Learn COBOL, stay employed by Cyberax · · Score: 3, Insightful

      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.

  4. COBL Coding Form slashdotted by davidwr · · Score: 2, Informative

    Try this instead.

    --
    Knowledge is how to play a game, intelligence is how to win, wisdom is knowing what game to play.
  5. The only way... by camperdave · · Score: 3, Funny

    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.

    --
    When our name is on the back of your car, we're behind you all the way!
  6. My name is Eric Hopper by Omnifarious · · Score: 2, Funny

    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: 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: Oooh, mildly obscure (as compared to, say, Leonarda da Vinci) painter who painted urban scenes from the 30s and 40s. Interesting. +1 point.
    • Grace Hopper: Found the first recorded real bug in computing. Inventor of the concept of a high-level language, responsible for COBOL, first woman admiral in the Navy... Wow! +50 points
    • Hopper: The grasshopper from Bug's life. No point value, but it does earn a very strange look.
    1. Re:My name is Eric Hopper by PsyQo · · Score: 2, Funny

      Yes dad, that's cool and all, but there are also loads of people making fun of our name.

      Greetings,
      - Hip

  7. More than COBOL, she coined the term Bug by Anonymous Coward · · Score: 2, Interesting

    She not only debugged the problem but documented the bug in her notebook.

    Look at the bottom of this page.

  8. Transcending the Matrix by Doc+Ruby · · Score: 3, Interesting

    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

    1. Re:Transcending the Matrix by Doc+Ruby · · Score: 2, 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 just present a portable union of many common HW artifacts.

      I've written highlevel (and lowlevel) languages. I've programmed assembly code, even in hex machine language (handcompiled on graph paper), starting in the 1970s. All the way up to 4GL IVR menuing. And plenty of - way too much - COBOL. COBOL looks archaic, though we don't notice its legacy in printf(). I'm looking forward to the same convenient nostalgia for databases down the road, because lots of DB programming and DBA reminds me of the slavery to the machine that COBOL required.

      If you want to be stuck in the 1970s, you're welcome to it. Give my regards to the 8-track cassette of The Wiz.

      --

      --
      make install -not war

    2. Re:Transcending the Matrix by rmstar · · Score: 2, Interesting

      > Examine x replacing y with z - is there a current equiv without 2 or more steps?
      >
      > $x =~ s/y/z/g;

      While I have to congratulate you for showing the old dog how it is done today, i feel a little nervous. In the olden days, folks at least talked to the machine in something resembling natural language. And now? We say "Dollar ex equal wiggle ess slash why slash zed slash gee semi-fucking-colon". Is that progress?

  9. It is very tough to find good COBOL people now... by Panaqqa · · Score: 5, Interesting

    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.

  10. right idea, but outdated implementation by idlake · · Score: 2, Interesting

    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.

  11. "amazing grace" indeed by deitrahs · · Score: 4, Insightful

    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.

    1. Re:"amazing grace" indeed by LifesABeach · · Score: 2, 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 are mainly microcomputers; And that the mini computers of today were the mainframes of yesterday." I was so nervous, I replied, "Thank you Admiral Grace", and left immediately. The implications of her words startled me, I understood her implications, I was changed, forever. 25+ years later, I look back and remember the nervousness, the times, the bosses who warned on switching to micros, and what the future would be. Her words, would guide my life for the next 25+ years.

      Thank you, Admiral Grace.

  12. Ahhhhhh yess... by Bananatree3 · · Score: 2, Funny

    the art of COBOL, and what an art it is. I am sorry no young grasshoppers have taken up this valuable language.

  13. COBOL, LISP, FORTRAN by Frumious+Wombat · · Score: 3, Interesting

    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
    1. Re:COBOL, LISP, FORTRAN by Kjella · · Score: 2, 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. Nor did assembler die with rise of computer languages, it went on for decades and games like Transport Tycoon (1994) and Rollercoaster Tycoon (1999) were written pretty much entirely in assembler though I assume the macros must have started to look like a language of their own. So while all credit where credit is due, giving them the credit for there being more than 5 computers is way too much.

      --
      Live today, because you never know what tomorrow brings
  14. That's ADMIRAL Grace Hopper to you... by BenboX · · Score: 2, Interesting

    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

    Ben

  15. COBOL = by larien · · Score: 2, Funny
    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*

    1. Re:COBOL = by Brett+Buck · · Score: 2

      >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). Our stuff isn't COBOL, of course, FORTRAN. Yes, *some* of it is God-awful to read, but it's *right* and there's no reason to take the time and expense to make it "better".

                Brett

  16. It's easier to ask forgiveness... by ishmalius · · Score: 3, Informative

    "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.

  17. Admiral Nanosecond by conradp · · Score: 3, Interesting

    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
  18. a COBOL joke by syrinx · · Score: 2

    One of my CS professors in college said, "Did you hear they're making an object-oriented version of COBOL? It's going to be called 'ADD 1 TO COBOL'"

    ba-dum-bum.

    Seriously though, Admiral Hopper did a lot to advance computing in the early days, even if COBOL may seem like a step backwards to us now. :) There's a park named for her somewhat near to where I live... I haven't gotten a chance to go check it out yet, but I'd definitely like to.

    --
    Quidquid latine dictum sit, altum sonatur.
  19. Learn novice: be one with the Tao by symbolset · · Score: 2, Funny
    From the Tao of Programming: http://www.canonical.org/~kragen/tao-of-programmin g.html
    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.

    --
    Help stamp out iliturcy.
  20. Met her 20 or so years ago - remember it well by Iphtashu+Fitz · · Score: 3, Interesting

    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...

  21. She did NOT create COBOL by Tablizer · · Score: 3, Interesting

    COBOL was heavily influenced by Grace's languages, but COBOL itself was designed by a small committee.

  22. COBOL's best feature by bgspence · · Score: 2, Interesting

    COBOL had one language construct that I really liked, 'Move Corresponding.' Much of the work COBOL did centered around data record structures. The 'Move Corresponding' statement allowed you to move all the fields from one record to another whose names matched.

    No matter the order, just shovel the coal. Quite useful in its day.