100 Years of Grace Hopper 184
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."
Women (Score:5, Funny)
I couldn't resist.
Re:Women (Score:5, Insightful)
Men have Perl: a series of unintelligable grunts.
Brainfuck (Score:2)
Of course /. lameness filter does not allow posting of BF code! See http://esoteric.sange.fi/brainfuck/bf-source/src-b f/hello.b [sange.fi]
Re:Women (Score:4, Interesting)
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)
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"
Happy Birthday to You! Happy Birthday to you! (Score:3, Funny)
Re: (Score:2)
Kids: Learn COBOL, stay employed (Score:4, Insightful)
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)
(when you mentioned 5-10 I just couldn't resist
Learn novice: be one with the Tao (Score:3, Funny)
Sorry, I have other plans (Score:2)
Re: (Score:2)
As the old saying goes, "if it ain't broke, don't fix it". Junking Cobol at financial institutions would be akin to nuclear facilities junking Fortran. The thought of a nuclear power plant junking Fortran for VB/C# in
Re:Kids: Learn COBOL, stay employed (Score:5, Funny)
Re:Kids: Learn COBOL, stay employed (Score:4, Interesting)
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.
Re: (Score:2)
Re: (Score:2)
And even more so since there's a JavaCC grammar for COBOL [blogs.com].
Re:Kids: Learn COBOL, stay employed (Score:4, Insightful)
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.
I wish bad COBOL code was dead (Score:2)
You haven't used the ERP/MRP system where I work, then.
I keep wanting to call up our sales rep and say, "Hey, do you know what database normalization is? Neither do your programmers!"
Re: (Score:2)
Crap COBOL systems (Score:2)
No, this is something called "Global Shop" (from Global Shop Solutions, formerly InFiSy). It's an old COBOL system designed for green screens, which has been dragged, kicking and screaming, into the Windows world. I wish I could say this was an exception, but it's not. I've met several such beasts in my relatively young career. Global Shop, C/F Data Systems STRUCTURE, some others I cannot remember the names of. They all had one thing in common: Th
Re: (Score:2)
Bad code will be replaced, over time out of simple necessity.
Good (stable) code may live forever -- no matter how ugly it may be to look at, or even work with.
One nice thing about butt-ugly code is that
(1) people aren't going to mess with it any more than absolutely necessary, and
(2) when they do, they're going to be very careful about it.
Re: (Score:2)
Over time (i.e. late 70's and early 80's) there were a number of attempts to develop a language that would keep the good parts of cobol but be a good bit less verbose. The attempts, however were entirely doomed, mostly because those languages would never get the kind of inerta that keeps COBOL moving.
Re: (Score:2)
COBL Coding Form slashdotted (Score:2, Informative)
The only way... (Score:4, Funny)
I recall it as... (Score:2)
My name is Eric Hopper (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:
Re: (Score:2, Funny)
Greetings,
- Hip
Re: (Score:2)
*chuckle*
Re: (Score:2)
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.
Re:My name is Eric Hopper and her name was Grace (Score:2)
See for yourself
http://babynamewizard.com/namevoyager/lnv0105.htm
Thanks,
Jim Burke
Re: (Score:2)
Re: (Score:2)
More than COBOL, she coined the term Bug (Score:2, Interesting)
Look at the bottom of this page. [navy.mil]
Re: (Score:2)
Transcending the Matrix (Score:4, Interesting)
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.
Re: (Score:2)
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
Re: (Score:2)
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.
Re: (Score:2, Interesting)
>
> $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?
Re: (Score:2)
Re: (Score:3, Interesting)
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
Re: (Score:2)
You can question the validity, or even masochism. But it worked, and was like weight training to build skill in really programming, or just "quick" tests of short executables.
Re: (Score:2)
The hex codes I entered into the RAM with the keyboard and monitor were inserted by the CPU into its instruction and registers with the same values that I typed, when I set the CPU program counter to the beginning of the RAM I'd filled. When I toggled bits on an IMSAI 8080 with flipswitches, it was the same thing. The switched converted my mechanical action to voltages, thereby into cha
Re: (Score:2)
The different ideas people have about "related" is entirely a design paradigm issue. The variety of familiar, productive p
Re: (Score:2)
I'm talking about the more metaphorical way we talk about "info" (knowledge of the world). Like "The Whigs' integrity is higher than the Tories'". "Higher" means "greater in value", in some nonlinear space. But not retaining all characteristics of "higher", except when we abuse an extended metaphor into incomprehensibility. That limit varies by person, but there is predictable consensus somewhere clo
Re: (Score:2)
We need a computer that uses only metaphors. Not just a near-literal "table" of 2D data, related the same way in each row to another single table of identically related rows. More like auto-parametrized multimedia streams related by content as easily as context, to the nth degree of association, in parallel or sequence as appropriate, without a clock or busses limi
Re: (Score:2)
I didn't say we should put tables into programming code. I said we'll eventually transcend code, and RDBMS APIs (including tables), to use something totally different. I even suggested flowcharts as a possible paradigm in the future.
You've got to look beyond fixing immediate problems with new techniques limited by the same paradigm. They're incremental, and bring their own
Re: (Score:2)
It's been tried with lots of success more recently, particularly the "Prograph" [wikipedia.org] system. Prograph would have succeeded even more in widespread adoption if its corporate executives hadn't totally misjudged the Web's replacement of desktop programming as the zeitgeist, right when they finally took the app cross-platform.
The main limit to such visual programming is quality of gen
Article is misleading (Score:2)
Dirty Rotters! (Score:2)
Perfect Example (Score:2)
Re: (Score:2)
It is very tough to find good COBOL people now... (Score:5, Interesting)
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.
Re:It is very tough to find good COBOL people now. (Score:2)
IMO the language sucks massively and I felt dirty the first time I looked at code, but the prof (Dr. Cummings) makes it bearable (and that's a high compliment considering my opinion of the lang); I like her besides.
Re:It is very tough to find good COBOL people now. (Score:2)
That sounds liek the script to "Armageddon". I wonder if Bruce Willis is free.
Re: (Score:2)
right idea, but outdated implementation (Score:3, Interesting)
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.
Re: (Score:2)
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.
Re: (Score:2)
2 + 3
is sending the message '+' to the object '2' with the argument '3'.
It does exactly the same thing in Python, C++, and C#, yet those languages have regular operator precedence. How you define operator precedence is unrelated to how arithmetic is implemented at the object level.
Smalltalk simply chose left-to-right operator precedence for consistency with its other message patterns; while consistency i
Re: (Score:2)
Sure, but Smalltalk is a simpler language. It does not have operators - only messages. The distinction is only required when you introduce additional syntactical complexity.
Smalltalk could easily have defined "2 + 3 * 4" to mean "2 + ( 3 * 4 )". Or, it could simply have disallowed "2 + 3 * 4" altoge
Re: (Score:2)
Yes, this would make the parser more complicated. Hey! I don't care! Parsers are designed for humans, not the other way around.
You are confusing methods with operators. Smalltalk has no operators. S
Re: (Score:2)
Re: (Score:2)
All you're saying is that different user communities and different application areas may demand different languages; that is true. The same is true for any other kinds of software.
But for each user community and each application area, there are good languages and bad langu
"amazing grace" indeed (Score:4, Insightful)
more girls - and hell, more boys for that matter - need to learn about people like her.
Re: (Score:3, Interesting)
Ahhhhhh yess... (Score:3, Funny)
Re: (Score:2)
"I love the smell of COBOL in the morning"!
My first computer related job. (Score:2)
COBOL, LISP, FORTRAN (Score:4, Interesting)
Re: (Score:2)
Re: (Score:3, Informative)
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
Want to live forever? (Score:2)
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
Snatch the pebbles from my hand, Grace Hopper (Score:2)
That's ADMIRAL Grace Hopper to you... (Score:2, Interesting)
http://www.hopper.navy.mil/Page.htm [navy.mil]
Ben
COBOL = (Score:3, Funny)
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*
Re: (Score:2)
Re: (Score:3)
>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
Re: (Score:2)
The system that processes Medi-Cal (California's version of Medicaid) claims is also COBOL (though a lot of non-COBOL stuff handles the data before and after in many cases). Actually, lots of systems are COBOL. If you've got a stable, complex, mission-critical system that works well-enough, gutting it and reimplementing it from scratc
It's easier to ask forgiveness... (Score:4, Informative)
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)
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.
Re: (Score:2)
Through a vacum!
When traveling through a media like copper or silicon you can only reach about 2/3 of that speed.
Although I guess the point is
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
I'm pretty sure it needs to be ADD 1 TO COBOL GIVING COBOL (if we're doing the assignment). To be fair, compute COBOL = COBOL + 1 works too, though I hesitate to call it an improvement.
Did ERP systems replace COBOL? (Score:2)
I think the companies that computerized early are more likely to be using home-grown software, probably written in COBOL. That is, companies like airlines, banks and power utilities.
Buying an ERP system and customizing it provides much higher leverage than writing the app from scr
Just COBOL? (Score:2)
Admiral Hopper (Score:2)
There is no shortage of COBOL programmers (Score:2)
I'm joking, but I'm not. I find that most programmers use this style of programming, sometimes throwing in a little inhieretence to make things look OO, until they get at least 5+ years under their belt. And sometimes not even then. Maybe if we required training Lisp or other such wierd programming language would they see the limitations of thier approaches and the flexibility, if they took advantage of it, of generics, tem
Not just banks (Score:2)
The way I look at it, COBOL will still be around when I retire and that isn't for some time yet.
And for those of you talking up all the other languages. Look to installed code value. Las tfigures I have are a bit old and dated, but still. In the early 90's some manager where I was at was crowing about 6$ billion in
C is alive and well... (Score:2)
Admiral Hopper (Score:2)
Re: (Score:2)
She wasn't. She was made a commodore in 1983 and a rear admiral in 1985. The first female rear admiral in the US Navy was Alene B. Duerk in 1972, and the first female line officer to reach the rank of rear admiral in the US Navy was Fran McKee in 1976.
Met her 20 or so years ago - remember it well (Score:4, Interesting)
COBOL - undead resting place for business logic (Score:2)
That's funny - I've always heard the opposite about COBOL. In 1994, I was hired as a free-lancer by a big company that makes copiers. Their sales force had a problem - their system for pricing big copier installations was a mainframe-based ni
Re: (Score:2)
I've been in that situation, and I've (successfully) advocated a full from-scratch rewrite with formal software engineering principles to design a well thought-out architechture.
Of course that costs some serious money and manpower, but it moves some systems forward a full generation when do
She did NOT create COBOL (Score:3, Interesting)
COBOL's best feature (Score:2, Interesting)
No matter the order, just shovel the coal. Quite useful in its day.
Did Anybody Else Read This As (Score:2)
That would be really bad...
Biblical, even...
The link for comp.lang.cobol is NOT a web address! (Score:2)
news:comp.lang.cobol [comp.lang.cobol]
Sorry, surely some slashdotters have around since before I was reading about Usenet carried by Arpanet in Jerry Pournelle's Byte column, but some others don't seem to know the difference.
My favorite Hopper story. (Score:2)
One friend of mine (unaware of her hand in COBOL), piped up "Perhaps because they're ashamed of it."
Another friend quickly pulled him aside and explained the gaffe.