Slashdot Log In
Forty Years of LOGO
Posted by
Zonk
on Tue Oct 16, 2007 11:41 AM
from the go-mr.-turtle-go dept.
from the go-mr.-turtle-go dept.
SoyChemist writes "Forty years ago, LOGO, a derivative of LISP, was born. Several years later, it became the cornerstone of educational software that simultaneously taught geometry and how to think like a coder. With a plethora of high-end educational software packages to choose from, each with flashy multimedia and trademarked characters, parents and teachers may find the humble turtle a bit outdated. Thankfully, several LOGO programs are available for free through a variety of websites, but perhaps 3D programming environments like Alice will be the wave of the future."
Related Stories
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.
LOGO vs. BASIC (Score:5, Interesting)
My introduction to programming was BASIC, back in 1980. By the time I encountered LOGO in a high school computer science class, it was a fun toy for about an hour, but then got old. Thinking back to that, I could conclude that LOGO is sort of lame, but for little kids who don't have the typing and language skills of middle school or high school students, I guess it's a better entry into programming than BASIC.
They're supposed to have LOGO on the OLPC XO laptop, and if I do that "buy one, donate one" thing, it will be interesting to see at which age my kid (who is now 2.5 years old) starts taking an interest in LOGO.
lopgo vs python (Score:3, Informative)
Logo was good, but the language landscape is so vast now there are better languages for almost every task to which logo can be put.
Re: (Score:3, Insightful)
I don't know -- I can't think of anything better for the kind of multi-agent simulations that StarLogo [mit.edu] and NetLogo [northwestern.edu] seem to focus on than those are similar Logo derivatives (at least, for an educational environment that doesn't take lots of outside programming experience as a prerequisite). OTOH, one disadvantage Logo has is that there is a lot less support in the form of texts r
Re:lopgo vs python (Score:5, Informative)
In the 80s Logo was about as good as it gets to teach kids some simple computer programming principals. For a lot of kids, Logo was enough to get them to understand that they liked computers. At least back in the day we were trying to teach people how to really use a computer instead of teaching how to talk to Mr. Paperclip into doing your presentation or essay. For teaching kids to program nowdays, Squeek is fairly interesting and there are some neat possibilities with tools like Flash. What matters is showing kids how we program computers to do things step by step and use simple logic to make decisions about the next step. Squeek and Flash let kids do a lot more visual stuff and make it easy to learn how things work.
Parent
Re: (Score:2, Interesting)
"More visual stuff", as evidenced in the brain-death that is MySpace. Is it too late to teach them away from more visual stuff? Into more like, you know, real content with some original thoughts put into it?
And "how things work"... you mean how programming works, right? To teach how things work, take them to a library or workshop or just outside the house.
Sorry if I'm coming across a bit grumpy, but I hope my ki
Re: (Score:3, Interesting)
Re:LOGO vs. BASIC (Score:5, Insightful)
My introduction to programming was BASIC, back in 1980. By the time I encountered LOGO in a high school computer science class, it was a fun toy for about an hour, but then got old.
It might not have a lot of power under the hood, but it really is a great way to lear about programming. You have your turtle, you tell it what you want it to do, it does it. It's a very straightforward way to understand what programming is all about. Basic has a lot of "go to" stuff that you need to learn first that is very abstract.
But bossing a turtle around is a very intuitive thing for a kid to understand.
Parent
Re:LOGO vs. BASIC (Score:5, Insightful)
Actually, LOGO has a lot of power under its hood, definitely more than BASIC. It seems that most people here don't realize that LOGO is a full featured dialect of LISP. Some things that are easily done in LOGO would be pretty hard in BASIC. I agree with the rest of your post, though.
Parent
Re:LOGO vs. BASIC (Score:5, Insightful)
IMHO the turtle is really more of the friendly face, to make Logo fun for beginners (e.g. look at the pretty designs you can draw, and look how easy it is to build more complex images out of very simple, reusable building blocks).
At the time, BASIC made it very easy to write spaghetti code, especially with its use of line numbers rather than labels. The more GOTO and GOSUB statements you had, the harder it became to manage--changing line numbers could unleash a horde of broken GOTO statements.
IMHO, I think Logo doesn't get enough credit for what it truly was.
Parent
Re:LOGO vs. BASIC (Score:5, Informative)
Basic is a great learning language, but i can't really think of a better introduction to programming (and geometry!) than Logo. Kids who might have problems dealing with variables, conditionals and even print statements can grasp rather quickly the "move forward, turn, move forward" simplicity of Logo.
I was taught Logo when i was about 10, and like you, i had already cutted my teeth with C64 basic. Still, it was a very fun language to use and i actually learned from it. Something as simple as drawing a n-side polygon involves understanding of angles, distances and basic programming skills.
Parent
Re: (Score:2)
Re:LOGO vs. BASIC (Score:5, Interesting)
My first contact with programming about around 1986 was with Logo. My parents subscribed me to a private computer course and for us the small kids (I was 5 years old!) the teacher used Logo, for older guys he used Basic and even COBOL and FORTRAN. But It was Logo what made me really *understand* computers in the sense of how the famous Hacker's Manifesto [mala.bc.ca] explains, it is a very interesting machine which *you* can manipulate to do EVERYTHING!
However, when you are referring at LOGO in your comment you are surely referring to the turtle-guided drawing interpreter of the language, which yeah can not compare with what BASIC was at that time. However, there are *plenty* of interpreters and other programs that use Logo as its underlying language. Lots of them are actively used in research for agent-based modeling such as NetLogo, StarLogo, or about StarLogo TNG which tries to go a step further to teach the basic concepts of programming by using building blocks.
I think Logo is one of the *best* programs to begin computer programming for kids because it is very easy to make the computer *do* things, and with these new implementations it does not need to be as "boring" as just drawing lines.
Parent
Lisp derivatives... (Score:2, Insightful)
Scheme was probably one of the worst things they could have had us using for such a class. The majority of engineers and the others didn't need to get too far into advanced programming concepts; most of us will never use anything more complicated than matlab.
Obvio
Re: (Score:3, Funny)
Back in high school, after reading a book "Turtle Graphics" I created my own turtle environment in Basic on the Apple IIc. I set it up for multiple turtles so that I could give each of them rules (inadvertently modeling a predator-prey system long before I knew what it was). I remember one day I left the computer running on a fairly complex set of rules that had each turtle avoiding the edge, following and avoiding o
Never got to use it. (Score:2)
I don't know if it was just that the school district never got on board, or if logo's popularity was regional but I never heard of it until a couple years ago when I was
Re: (Score:2)
Sounds familiar.
Funny part is, I still have a model III computer. It is great for the kids to tool around with doing whatever they want. It still works! However, once the 5 1/4" floppies are all bad, that is it. No more Model III. I wrote my first games on it, and my youngest son is completely into game design.
Yeah, there is so much better out there now for everything, but the Model III was so simple to learn and write on.
InnerWeb
Re: (Score:2)
Re: (Score:2)
We had a similar rule, but I was writing the games, so I got around it. Three of us (we used the name Awesome Threesome Software) wrote, played or designed graphics for the games. One of the other students used to get mad at us and do things like pull our power cable. We built a *network* for the model IIIs using the cassette jacks, and *took* over his computer. He left us alone after we told him we could do the same thing to his grades. Like other bullies, he just needed to be stood up to in a way he
Sounds like unfortunately bad timing (Score:3, Informative)
It seems that Logo was introduced to children a few years younger than that--think grades IV to VI. Computers were introduced into my elementary school around the time frame that computers were introduced into your high school (about 1982). In middle or high school students generally "graduated" to BASIC and perhaps Pascal programming. Older students were also the first to get computers (A small classroom with a number of Commodore PETs and a single
Re: (Score:2)
Logo is great (Score:2)
And by "do" I mean "draw with the turtle, of course"
Re: (Score:2)
Now, I just struggle to understand CakePHP.
Animation (Score:2)
Middle School Flashback... (Score:2)
Wow. I'd not thought of those Atari 800s for years. I'd have to agree with other posters on LOGO use in teaching; if a student can program in LOGO, then they're already ready for another language.
Personally, I was bored silly with LOGO and couldn't wait to get home to the ol' Trash-80 Model I Level II Basic. Scary, huh?
Does it actually inspire coders? (Score:2)
Was it really that influential?
LOGO was perfect for its intended use (Score:5, Interesting)
I don't think I would have a career in the technology industry if it were not for LOGO (I'm an analog IC designer). A previous comment said Python is better for his child. I would agree. In fact, I would have done pretty much anything for Python and Pygame when I was a small child. However, for the late 70s and early 80s, LOGO was the educational language to beat, and the only way for a child to really feel the machine the way a programmer does, and not as a passive game player.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
i was part of a geek crowd at school that spent a lot of time hanging out in the math departments computer room. I remember a bunch of us huddled around the schools very first mac - just in awe of the thing. those were really good times.
kids today have some great opportunities to learn and an amazing a
Re: (Score:2)
Re: (Score:2)
I remember writing a game with that LOGO, where a plane went by and a
LOGO was my first exposure to programming (Score:2)
Of course, the idea that programming should be a part of a basic computer course has gone by the wayside. Today's kids computer classes are all about Microsoft Office and, if you're lucky, Dreamweaver.
Bah.
-l
LOGO - not a viable adult language (Score:2, Interesting)
My first programming language was BASIC, (then 6502/Z80 assembly) then Pascal, C and APL (APL is my favorite teaching langauge - see Kxdb+ from KX Systems to see where APL is now). While LOGO is cute, in my mind it fai
Re:LOGO - not a viable adult language (Score:4, Insightful)
Parent
I miss my LOGO turtle (Score:2)
If I was ever in a position to expose today's kids (at an early age) to something like that, I'd be all for it. I say an early age simply because it's the thrill of being able to make the computer do something that hooked me (and figuring out how to solve my
Real Programmers Used Shapetables (Score:3, Interesting)
Shapetables, I thought, were the bomb, but also, proved to be my first introduction to the lesson: there is always a better program than you.
I was in high school at the time, Firestone in Akron, and we had a teacher that fought for and got a really nice computer lab. He was great. He had a lot of prestige because a future shuttle astronaut was one of his students, and in general, the math department there was one of the best in the state.
Anyway, I spent hours hand coding my shape table for a little lunar lander video game I was writing, and I thought I was the cat's meow, and I was all about to show it to everyone, trumpeting my genius, and this other guy walks in with a pinball game written in assembly language.
All I could do was compliment the guy, because it was great. He had decent sound, fast graphics, smooth play. It was just great. Amazingly, I don't know where he went with it, because it was right up there with the commercial pinballs of the day. But still, talk about humiliation! I about died!
i was a basic kid (Score:2)
Of course I suppose that's somewhat generational... the older ones among us will instead fight between FORTRAN and COBOL, and the younger ones will fight about... whatever it is that they're teaching kids now. MS Visual Clippy ("I see you're trying to write a function!") or something, probably.
Anyway, I was in the BASIC camp, specifically GW-BASIC. Might have seen LOGO once in school, but never did much with it. Really didn't d
Re: (Score:2)
Re: (Score:2)
But, seriously, no, I don't think we'll actually be fighting over this. Logo no longer has any importance in my life, as I'm sure Basic hasn't in yours. It was simply fun while it lasted, way back in the good old days. Heck, I can't even remember enough Logo to make an informed argument in its favour
LOGO beyond middle school (Score:4, Insightful)
It's interesting that most comments here are along the lines of "I saw LOGO when I was 7" through "I played with LOGO for an hour in middle school." I tinkered with a couple of LOGO variants as a kid, but my real LOGO experience ended up being... in college.
In my school's Computer Science department, the class that weeded out (or at least delayed) the majority of students was our Discrete Structures course. The theoretical part of the course focused on typical discrete logic, discrete math, sets, predicate calculus, etc topics. But the unusual part was that the professor was determined to break us out of the C++ mold that the introductory programming courses began. Therefore, he picked LOGO as the language for the course. Sure, interpreted LOGO wasn't the most blindingly-fast choice, but the list-based nature of the class made it very much a "LISP Light" that we could quickly work with for solving problems. Surprisingly, it was extremely flexible for the kinds of logic problems we were working with. By the end of the year, I really had to rethink my initial concept of "oh no, turtle graphics." Plus, we got exposed to a bunch of quite interesting offshoots, such as StarLogo [mit.edu], a massively-parallel-turtle variation of LOGO.
If you've never had to write a parser for an arbitrary boolean arithmetic expression in LOGO, then you've never really lived... (Er...)
massively-parallel-turtle (Score:4, Funny)
Parent
A LOGO without graphics... (Score:5, Interesting)
I was 17 years old and already know how to program in Z80 assembler and MBasic (Ah, the heady CP/M days!).
Imagine my surprise when I got an apprenticeship at a place where they did accounting - in LOGO!
Not just any LOGO either it was M.I.T. Experimental LOGO #43 if I remember correctly, running on a microcomputer with 12 terminals connected to it! And there was NO TURTLE in this LOGO, only the list operators, logic and math primitives!
This company was doing the monthly accounting of about 40 or so client firms and the whole system was written in LOGO.
I remember thinking "Why the heck are they using a kid language to do all this" at first, but under the teaching of my mentor, I learned recursion and abstraction to a level I had never considered before.
I mean instead of tripping all over the mundane aspects of implementation that you would bump up against in assembler or BASIC, here was a language that was so high-level that you really could concentrate totally on the abstraction and algorithm of solving the problem without getting tangled in a lot of what seemed to be more real-world problems (memory allocation, variable types, string/array manipulation, etc...), this language forced you to think in really high-level ways about the problems you were trying to solve.
It was a year of epiphany-after-epiphany for me and it did more to form me than any of the other languages I've ever touched. It caused me to rethink my approach to all other languages and tools and I feel tremendously fortunate that I was in the right place, at the right time to experience it all.
Sadly, that company's history ended badly; one of the partners was billing the clients directly and ran off with the money, so the company went under and I never did find another company using LOGO again.
Too bad reality and theory almost never line up...
Logo not just for kids (Score:3, Informative)
I picked up all the 80s books I could find that used Logo to teach geometry, algebra, music, language etc. I'm currently working my way through them. There is of course the Compu Sci series from Berkeley http://www.cs.berkeley.edu/~bh/v1-toc2.html [berkeley.edu] That I'm planning to go through next.
So for those of you who turned your nose up at logo because it's too simple for you may need to turn that statement around. Think Lisp without the parens.
The Turtle killed Logo (Score:4, Insightful)
For those who want to rediscover Logo and learn what it was *really* all about you can go to the website of Brian Harvey, a logo guru:
http://www.cs.berkeley.edu/~bh/ [berkeley.edu]
On this website you can download a nice series of textbooks about Logo and also download the Berkeley Logo implementation of the language. I was surprised to find that Logo is a functional programming language. I am also studying Lisp, Scheme, Haskell, and Erlang and find the whole concept of functional programming to be very interesting. It is getting hot again and will become a critical part of programming if we are to take advantage of multi-core cpu's.
I am constantly amazed by just how vast this industry really is. I wish it hadn't taken me so long to realize this and I am saddened that so many people coming out of school these days have no clue that there is anything other than Java and Dot Not out there.
I learned on both BASIC and LOGO. (Score:2)
I got bored quickly with turtle graphics, though, and found that BASIC (Applesoft in my case) did what I wanted better. Besides, I didn't even have to boot into an OS to play with BASIC.
I ended up going for an associate's degree in computer programming. "Learned" VB, C++, RPG IV, and properly learned HTML and JavaScript.
That's not
Back in the day... (Score:2)
It was a good way to explore geometry, trigonometry and vector maths in an instant feedback environment, but was next to useless for any practical programming purpose. As such, it does make a decent educational tool, but not for learning programming, rather just for geometry.
As such, its uniqueness should be celebrated for the fact that while it is impractical for typical tasks it has survived
Set the Way Back Machine to about 1981 . . . (Score:2)
Alice for the future! (Score:3, Informative)
For kids, Alice has the staying power that Squeek and LOGO don't. It allows them to set up an entire 3D world and tell a story without ever making a single syntax error. They can even make their own interactive games, which is what they really want to do. No hunting for misspellings, no looking up methods or operators in website documentation, no Googling. Just programming, fast and simple. They don't even realize they're programming; they think they're having fun, and they are!
Sure, Alice has a few shortcomings. There's NO DEBUGGER. Polymorphism isn't implemented. Custom methods aren't displayed in the world view. It's hard to produce new models. But on the other hand, it's got my kids thinking like object-oriented programmers, having fun, and producing stuff they love.
I think the submitter nailed it with "Alice will be the wave of the future".
Scratch is the new Logo (Score:3, Informative)
Alice doesn't live *where* anymore? (Score:3, Funny)