I worked with COBOL near the end of my last contract and found aspects of it fascinating compared to today's languages. Everything is about structures that map directly to the bits on disk, with fine grain control on precision and data types. But then the language reads as a series of macros where you don't have to remember the low level details: do this to this, put this here, if this do that.
It's also a terribly difficult language to parse because it was designed for ease of use by humans. This was at a time when programmers were thought of as translators that mainly converted human language to binary. There is an element of independence to COBOL that I wasn't expecting, and I imagine there was some resistance to it when it was first introduced. I didn't know Grace Hopper was behind COBOL until I was actually using it, but I wonder sometimes if the challenges she faced as a woman at that time influenced its design. It's probably the first language to really confront dogma in computer science.
I personally really enjoy learning about languages like Erlang and Lisp but they have an achilles heal that everybody is in real denial about. They are very difficult to read once they've been written. So most programmers scrap what they've written and start over. COBOL isn't like that. Even someone unfamiliar with computer science (all those business types who don't have time for this stuff) could read it and get a general understanding of what it's doing. The only other language I've used that surpasses COBOL in readability is Hypertalk, invented by Bill Atkinson in the 1980s. I look at some of the top languages and methodologies today, say Ruby and Angular.js and I wonder if we're racing down a rabbit hole. Conceptually what they are trying to do is admirable but they are starting to feel like dogma to me. How do they help the average person accomplish what they are trying to do? I've only seen the one interview with Grace Hopper on David Letterman but I have to wonder if she was a hacker in today's world what she would think of the current state of things.
It's not dogma anymore. It may have been dogma at the time of COBOL, but now we know plain-English programming general purpose programming languages are a bad idea, because we've tried any number of times, and in general if you don't produce an atrocity, you're doing well above average. You end up with a language that is still every bit as complex as a normal programming language, and you add the ambiguity of English to the problem. Instead of it being a win, you lose, badly.
You can do better if you rigidly constrain your DSL's domain, but I'd argue that in many cases you're still looking at "spending" some design juice on a "plain English" interface and it's not at all clear that you've produced something that is improved by the "plain English" so much as produced something that had enough design budget left to absorb the penalty without being destroyed.
It's 2013 now, not 1970. Any time you're tempted to go "My goodness, programming would just be so easy if we did X", go out and look. Odds approach 100% that we've done X, many, many times, and the reason you've never heard about it is that it didn't work well enough to be talked about. See also "fully visual programming language" and any number of "business logic" initiatives over the years.
(To which the typical next cognitive reaction is to believe that it would work if we just poured more effort into it. That may be true, but it's worth pointing out you're entering into unprovable territory. And in many cases, part of the idea really is that X is just so obvious and great that even a partial implementation ought to show its promise immediately.)
I've always wondered what people mean when they say Lisp & co are hard to read. I'd think having great powers of abstraction would produce code that reads more easily.
Of course you have to figure out what the abstractions do, but is that really worse than having to reverse engineer low-level non-abstractions on the fly even if they're in a "human readable" language?
Having had to deal with a little COBOL now and then, I wonder whether English words are really what makes for readability. I am reminded of something that Jacques Barzun wrote long ago about English, that it is the density of the thought, not the length of the words, that makes for difficulty in reading.
I got to meet Grace Hopper many years ago. She gave me a nanosecond after her talk. This was in the 1980s, probably while she was working for DEC. It made quite an impression on me, and it's now framed on the wall. I wish I'd gotten her autograph!
She was one of the original hackers. I don't think that she was a woman was ever relevant to her, and by the force of her personality, and her efforts, she made it irrelevant to everyone else. For instance, I keep forgetting it. Not that she was female, but that it was unusual that she was female. EG: she wasn't a "Pioneer of Female Programmers", she was instead simply a "Computer Pioneer".
I don't know the specific barriers she had to overcome, but I know they must have been significant-- for much of her career, people didn't really understand what computers even were. Even as late as the 1980s, talking heads on TV would often say things that implied they thought computers were intelligent, or other equally silly perspectives... because they were so new they had never been exposed to society at large. Now take that lack of understanding in the population in general and project it onto the navy which, as a military, is generally lower tech and more conservative? Of course she was in the research area, but there were certainly huge amounts of misunderstandings she had to deal with in people who simply had never been educated about computers. So she gave these talks that continued after she left the Navy and started working for DEC. She made it her mission to teach people about this new technology. I can't imagine her refusing to speak at a conference simply because there are more men than women-- I imagine most of the conferences she went to, she was the only female speaker.
PS- I think her handing out the nanoseconds was brilliant, as a teaching aid. She took an abstract concept and made it physical. How rare is that these days? Plus if you can give someone something they're much more likely to remember what you're trying to teach them. Even if it is a bit of old telephone wire... that mundane piece of plastic and copper became imbued with the story she told.
> She was one of the original hackers. I don't think that she was a woman was ever relevant to her, and by the force of her personality, and her efforts, she made it irrelevant to everyone else. For instance, I keep forgetting it. Not that she was female, but that it was unusual that she was female. EG: she wasn't a "Pioneer of Female Programmers", she was instead simply a "Computer Pioneer".
Thank you! I recently stumbled on the Grace Hopper conference[1]. Initially I didn't know what it was about and thought maybe it was about compilers or whatever. I was a bit disappointed to learn that it was a conference for women. I mean, of all the awesome things she has done we're celebrating the simple fact that she's a woman.
The most important thing I've accomplished, other than building the compiler, is
training young people. They come to me, you know, and say, "Do you think we can do
this?" I say, "Try it." And I back 'em up. They need that. I keep track of them as
they get older and I stir 'em up at intervals so they don't forget to take chances."
The most fascinating thing (to me) about Admiral Hopper is her military service. As an Army officer, I find it amazing that there was once an era where you had so many very bright technical minds who were serving actively in the military. These days, most of the military technical achievements are being made by contractors working for the DoD but most of whom have never actually served. Admiral Hopper not only served during the WW2 era (when almost every able American adult was doing the same), she served for many years afterward.
Remember that they drafted everyone in World War 2. If you look at the pay scales for officers, you'll see some really weird things like Colonel with two years TIS. This is because they needed industry leaders and engineers to be in relevant spots in the chain of command - you wouldn't have a mechanical engineer who manages hundreds of technicians working as a sergeant.
Having all of this brainpower meant that the Army and Navy could actually do scholarly stuff. These days, it's all outsourced; it's considered crazy when an officer comes up with some innovation.
> As an Army officer, I find it amazing that there was once an era where you had so many very bright technical minds who were serving actively in the military. These days, most of the military technical achievements are being made by contractors working for the DoD but most of whom have never actually served.
Not coincidentally, she started her service during an era when war profiteering was still considered an unethical thing.
It always amuses me when, in the "Why aren't there more female coders?" debate, people try to push the notion that women aren't genetically suited for programming. Programming isn't the Navy SEALS, where no woman has yet been admitted into the club for any variety of reasons...women were among programming's pioneers.
Your argument is not sound. If women are less "genetically" suited for programming, then that fact doesn't imply that there are no women programmers or that women couldn't have been programming's pioneers.
One of my biggest fears is that we can actually make that into truth. Fashion is powerful, and it's easy to google out problems women with the P word before their names can have dating.
And it wouldn't be without other costs (if the vision of society where the imagined genetic differences became true wasn't bad enough): increasing the variation between sexes would mean far more complicated genetic code. That would almost certainly have hard to predict, weird costs.
So far it doesn't seem to be happening, so I'll put that together with Peter Watts' fear that sentience is a side-product that will get optimized out, but still, it's a fear.
How often is that "genetically unsuited" theory really pushed, though? I think it might be more a myth than reality ("people always try to argue with genetics").
grace hopper used to live two blocks from me, but I never met her, I was too young when she passed away, but she has always been an inspiration. Since he was in the navy and although he couldn't code, he was in charge of a team coding a digital inventory system, dad used to talk a lot about her. There's now a park named after her in what used to be an awkward traffic triangle in front of the building where she lived; when I returned to the DC area for a spell, I wrote some code in that park in her memory.
one time I was at a party, and someone asked "what useful things have women ever invented", without a second thought my answers were: "Kevlar. Compiling languages".
Alex Martelli had a very interesting talk at PyCon 2 years ago about her.
She is the one how is quoted as the originator of "It is better to ask forgiveness than ask permission". But the first part of the talk kind of explains why she coined that phrase.
How was Hedy Lamarr a computer scientist? She was an intelligent and multi-talented woman, and yes she co-authored a patent for a frequency-hopping torpedo controlled by a piano roll. However, I don't think this qualifies her as a computer scientist. Clearly, no list would be complete without Grace Hopper, but putting Lamarr on the list, unless there's something I'm missing, would detract from Hopper's accomplishments.
I want to point her out every time somebody starts arguing about Ada Lovelace. Whether or not she was the first programmer (depending on how you define programming) almost doesn't matter when you've got a perfectly good role model who was one of the best programmers who've ever lived.
[+] [-] zackmorris|12 years ago|reply
It's also a terribly difficult language to parse because it was designed for ease of use by humans. This was at a time when programmers were thought of as translators that mainly converted human language to binary. There is an element of independence to COBOL that I wasn't expecting, and I imagine there was some resistance to it when it was first introduced. I didn't know Grace Hopper was behind COBOL until I was actually using it, but I wonder sometimes if the challenges she faced as a woman at that time influenced its design. It's probably the first language to really confront dogma in computer science.
I personally really enjoy learning about languages like Erlang and Lisp but they have an achilles heal that everybody is in real denial about. They are very difficult to read once they've been written. So most programmers scrap what they've written and start over. COBOL isn't like that. Even someone unfamiliar with computer science (all those business types who don't have time for this stuff) could read it and get a general understanding of what it's doing. The only other language I've used that surpasses COBOL in readability is Hypertalk, invented by Bill Atkinson in the 1980s. I look at some of the top languages and methodologies today, say Ruby and Angular.js and I wonder if we're racing down a rabbit hole. Conceptually what they are trying to do is admirable but they are starting to feel like dogma to me. How do they help the average person accomplish what they are trying to do? I've only seen the one interview with Grace Hopper on David Letterman but I have to wonder if she was a hacker in today's world what she would think of the current state of things.
[+] [-] jerf|12 years ago|reply
You can do better if you rigidly constrain your DSL's domain, but I'd argue that in many cases you're still looking at "spending" some design juice on a "plain English" interface and it's not at all clear that you've produced something that is improved by the "plain English" so much as produced something that had enough design budget left to absorb the penalty without being destroyed.
It's 2013 now, not 1970. Any time you're tempted to go "My goodness, programming would just be so easy if we did X", go out and look. Odds approach 100% that we've done X, many, many times, and the reason you've never heard about it is that it didn't work well enough to be talked about. See also "fully visual programming language" and any number of "business logic" initiatives over the years.
(To which the typical next cognitive reaction is to believe that it would work if we just poured more effort into it. That may be true, but it's worth pointing out you're entering into unprovable territory. And in many cases, part of the idea really is that X is just so obvious and great that even a partial implementation ought to show its promise immediately.)
[+] [-] jadyoyster|12 years ago|reply
Of course you have to figure out what the abstractions do, but is that really worse than having to reverse engineer low-level non-abstractions on the fly even if they're in a "human readable" language?
[+] [-] cafard|12 years ago|reply
[+] [-] engineer40|12 years ago|reply
She was one of the original hackers. I don't think that she was a woman was ever relevant to her, and by the force of her personality, and her efforts, she made it irrelevant to everyone else. For instance, I keep forgetting it. Not that she was female, but that it was unusual that she was female. EG: she wasn't a "Pioneer of Female Programmers", she was instead simply a "Computer Pioneer".
I don't know the specific barriers she had to overcome, but I know they must have been significant-- for much of her career, people didn't really understand what computers even were. Even as late as the 1980s, talking heads on TV would often say things that implied they thought computers were intelligent, or other equally silly perspectives... because they were so new they had never been exposed to society at large. Now take that lack of understanding in the population in general and project it onto the navy which, as a military, is generally lower tech and more conservative? Of course she was in the research area, but there were certainly huge amounts of misunderstandings she had to deal with in people who simply had never been educated about computers. So she gave these talks that continued after she left the Navy and started working for DEC. She made it her mission to teach people about this new technology. I can't imagine her refusing to speak at a conference simply because there are more men than women-- I imagine most of the conferences she went to, she was the only female speaker.
PS- I think her handing out the nanoseconds was brilliant, as a teaching aid. She took an abstract concept and made it physical. How rare is that these days? Plus if you can give someone something they're much more likely to remember what you're trying to teach them. Even if it is a bit of old telephone wire... that mundane piece of plastic and copper became imbued with the story she told.
Quite and impression!
[+] [-] baldfat|12 years ago|reply
[+] [-] reycharles|12 years ago|reply
Thank you! I recently stumbled on the Grace Hopper conference[1]. Initially I didn't know what it was about and thought maybe it was about compilers or whatever. I was a bit disappointed to learn that it was a conference for women. I mean, of all the awesome things she has done we're celebrating the simple fact that she's a woman.
[1]: http://en.wikipedia.org/wiki/Grace_Hopper_Celebration_of_Wom...
[+] [-] ColinDabritz|12 years ago|reply
http://blog.jgc.org/2012/10/a-downloadable-nanosecond.html
This is also my favorite Grace Hopper bit.
[+] [-] tshtf|12 years ago|reply
[+] [-] networked|12 years ago|reply
[+] [-] psycr|12 years ago|reply
[+] [-] chrissnell|12 years ago|reply
[+] [-] omegaham|12 years ago|reply
Having all of this brainpower meant that the Army and Navy could actually do scholarly stuff. These days, it's all outsourced; it's considered crazy when an officer comes up with some innovation.
[+] [-] justin66|12 years ago|reply
Not coincidentally, she started her service during an era when war profiteering was still considered an unethical thing.
[+] [-] Eleanor_Erwin|12 years ago|reply
[deleted]
[+] [-] danso|12 years ago|reply
[+] [-] aestra|12 years ago|reply
"By law, only men are eligible to apply for the SEAL program"
[+] [-] nawitus|12 years ago|reply
[+] [-] LaGrange|12 years ago|reply
And it wouldn't be without other costs (if the vision of society where the imagined genetic differences became true wasn't bad enough): increasing the variation between sexes would mean far more complicated genetic code. That would almost certainly have hard to predict, weird costs.
So far it doesn't seem to be happening, so I'll put that together with Peter Watts' fear that sentience is a side-product that will get optimized out, but still, it's a fear.
[+] [-] Tichy|12 years ago|reply
[+] [-] dnautics|12 years ago|reply
one time I was at a party, and someone asked "what useful things have women ever invented", without a second thought my answers were: "Kevlar. Compiling languages".
[+] [-] rdtsc|12 years ago|reply
She is the one how is quoted as the originator of "It is better to ask forgiveness than ask permission". But the first part of the talk kind of explains why she coined that phrase.
http://pyvideo.org/video/650/permission-or-forgiveness
[+] [-] ahmett|12 years ago|reply
[+] [-] nonchalance|12 years ago|reply
[+] [-] msgilligan|12 years ago|reply
[+] [-] patdennis|12 years ago|reply
https://upload.wikimedia.org/wikipedia/commons/3/37/Grace_Ho...
[+] [-] qbrass|12 years ago|reply
There's no names given, but the people in the picture are most likely the programmers who wrote the first COBOL compiler for the Univac.
[+] [-] everyone|12 years ago|reply
[+] [-] sirmarksalot|12 years ago|reply