Slashdot Mirror


Literacy: Natural Language vs. Code

sirReal.83. writes "The Guardian has an article by Dylan Evans, author of Introducing Evolutionary Psychology. The article discusses literacy in computer languages, and suggests that we are in the 'technological middle ages.' Cuddly UI's are the manifestation of wishful thinking; just as we try to make computers to adapt to us, we must adapt to them." Some good points are raised, with the example of the command line interface used, which is a much better choice than, say, an array of switches or a punch card.

9 of 534 comments (clear)

  1. Empowering users with the command line by Nooface · · Score: 5, Informative

    For a more in-depth discussion of this topic, see Neal Stephenson's essay In The Beginning Was The Command Line.

    --

    Nooface
    In Search of the Post-PC Interface
  2. Inq by heli0 · · Score: 1, Informative

    Here is the Inq writeup on this from a few days ago: Man that inspired The Matrix reckons we should all learn assembler

    --
    Whenever the offence inspires less horror than the punishment, the rigour of penal law is obliged to give way...
  3. CLI vs. punch cards by schmaltz · · Score: 2, Informative
    % CowboyNeal | schmaltz >>/dev/slashdot 2>&1
    Some good points are raised, with the example of the command line interface used, which is a much better choice than, say, an array of switches or a punch card.
    Well, the CLI is essentially a direct descendent of the punch card. Back in them olden days, yer Hollerith cards was how you got a stream of data into a system for processing -mighta be program, mighta been data, or both! The output of your input was generally a fanfold pile of scrim.

    On antique iron you might be running fortran, cobol or BAL proggie which got compiled and executed, but today thru the CLI your input stream could be a perl -e script, data, commands strung together for serial execution, whatever. The big difference is that now you usually get feedback immediately following your pinky whacking the enter key.

    So, while it's improved quite a bit (especially turn-around time), it's not a huge evolutionary leap from punch card to CLI.
    --
    Big Daddy, Johnny, Burp, Aunt Zelda, Scott, Slurp, Big Momma ... where's Siggy?
  4. Re:Microsoft is already developing a natural langu by Beg4Mercy · · Score: 2, Informative

    I agree with you that the parent post is not a troll... HOWEVER:

    You say that CS students are learning VB.NET. I am a CS major at MUN and the VAST MAJORITY of labs at the university run on Linux. We have NO Microsoft-specific courses.

    We actually had a Microsoft Canada representive come and give a presentation about .NET. It's obvious they are trying to get inside universities because those of us who had actually heard of .NET really had NO IDEA what it is. The Microsoft presentation was very poorly done. :)

    I don't know about other universities but ours does NOT teach Visual Basic OR .NET etc. Some of the courses are very theoritical/mathematical. The introductory CS courses (CS1700) and the introductory programming course (CS2710) both use Java. And anyone with a rudimentary knowledge of Java is more prepared to learn C++ than someone who knows Visual Basic.

  5. Re:Fantastic Article by penguinland · · Score: 2, Informative

    I'm going to have to disagree with the article on this. As a CS major at Harvey Mudd College (one of the most technology-oriented colleges in the country), I have already learned not only assembler, but how to build computers starting with transistors and wires. While this is fascinating (I have a whole new respect for anyone who writes an operating system), I don't think it is at all necessary for my future. The entire reason that grammars and parsers (For those of you who aren't really into CS, these are the things that turn Java and other high-level languages into machine code. In essence they are how a computer that only understands machine language can understand other languages as well.) were created in the first place is so that we don't need to work in assembler any more!! Yes, some people will always need to know machine language to write new OSs and new networking protocols, but most people won't ever use this: not only will secretaries, dry-cleaners, and construction workers not need to use assembler, most CS workers won't need it either. Most webmasters hate typing HTML by hand (My summer job this past year was assisting our college's webmaster. I started it typing in HTML, and the head webmaster convinced me by the end of the summer that it is more effective to use FrontPage). Game developers don't need assembler (as I recall, the source code to Half Life 2 was leaked earlier this year. It was written in C++).

    It's obvious that some people will always need to understand assembler, so that they can make new operating systems, new languages (Prolog, for example, cannot be written in Java - it requires assembler), and a few other applications. Other than that, however, many industries are thriving despite not using assembler. The article cited claims that we should all need to know what goes on under the hood of the microprocessor, but does not give any justification as to why this is so. I see no reason why the majority of people in the world need to learn in order to keep up in society.

    --
    "Flying is the art of throwing yourself at the ground and missing." - Douglas Adams
  6. Re:[Not a] pointless article by Anonymous Coward · · Score: 1, Informative

    Wow exactly, And i would also add that use the those things (car) as not changed since decades, its like maintaining the same code for 100 years. But coputers program evolve in their utilities so you must adapt(understand how it works) quick ( new problems ) not car.

  7. Re:Microsoft is already developing a natural langu by mkldev · · Score: 2, Informative
    While that is true, it is not the whole picture. Schools must also teach the how. This is the difference between a useful education and one of these cookie-cutter "theory schools" that churn out people that can explain in great detail how one develops optimal storage patterns for data storage on hard drives but thinks that it's okay to lose data every now and then, and writing a version that doesn't is just an irrelevant "implementation detail".

    I've seen those sorts of crap graduates in TV, in computers, in film, even in music. Every time I do, if I'm involved in the hiring process, I ask "yes, but can this person really do the job?" and when the answer comes back "no", I say "then hire someone who can." You can't get a good job without at least basic knowledge of "how". You have to not only know the "how" as it stands right now, but also know how to learn the "how" when it changes, and then you have to actually go out and do just that---continue learning it. You have to constantly maintain your skills, constantly learn, constantly adapt, constantly grow.

    If you don't get the understanding of "why", you're going to be one of these out-of-work tech workers who, as one of my former coworkers once put it, know how to sign their names and write perl scripts and call themselves engineers... but if you don't get the "how", I hope you enjoy asking "would you like fries with that?", as you'll likely find that skill much more helpful than anything you learned in school.... The "why" may help you keep a job or move to a new job, but only the "how" will get you a job in the first place.

    Just my $0.02.

    --
    120 character sigs suck. Make it 250.
  8. Re:Empowering citizens with Boolean algebra by leoboiko · · Score: 2, Informative

    Great post.

    I think I'll link to How To Design Programs. It's a book from MIT aiming to teach computing as a liberal art. The preface has a nice discussion about why everyone should learn how to program - much nicer, IMHO, than the Guardian's article.

    --
    Prescriptive grammar:linguistics :: alchemy:chemistry. Stop being a nazi and learn some science.
  9. Re:The Author May Be Computer Illiterate by TheCrazyFinn · · Score: 2, Informative

    Why in the hell would I want OOP at the script level?

    Scipting is supposed to be quick, dirty and robust.

    OOP can be one of those three (Robust). It's the wrong paradigm for scripting.

    And it really complicates the interaction of multiple scripts and/or command line utilities.

    The 'Stream of text'/Everything is a file approach is proven, and ideal for this type of use. 'Everything is an object' is needlessly complicated, and quite problematic for the kinds of use that scripts are for.

    So WSH, while buzzword compliant, is certainly not up to unix standards.

    And Unix has better multi-language scripting support anyways.

    --
    "You've got an invalid haircut" -Warren Zevon - Life'll Kill Ya