Seven Languages, More or Less (Okay, More)

or Laurie Lists Lotsa Languages Like Lua

So, when faced with a book like “Seven More Languages,” an obvious first question is “What are the seven more languages?” I was dismayed or delighted to realize I had no idea what any of them were:

  • Lua
  • Factor
  • Elm
  • Elixir
  • Julia
  • miniKanren
  • Idris

This promises to be a fun adventure.

Of course, knowing a little about a language doesn’t take all of the adventure out of it. The first “Seven Languages” used the languages:

  • Ruby
  • Io
  • Prolog
  • Scala
  • Erlang
  • Clojure
  • Haskell

At least there I had taught both Lisp (aka Clojure) and Prolog in AI classes, had taught lots of Java, so some of Scala wasn’t foreign, and had played with Ruby and Rails. Yeah, Io was, and remains, highly esoteric, but I’d heard of Haskell and Erlang and knew they’d be worth playing with. There is plenty of adventure to be had in these languages and the More Languages promises even more adventure.

There’s something in me that likes lists (Lisp and I are about the same age). So, I figured I’d pause before jumping into to Lua to make a couple more lists. Let’s start with the languages I learned first, as embarrassing as that may be since it starts with BASIC (and none of that Visual stuff either).

  • BASIC, FORTRAN, and COBOL as an undergraduate
  • Pascal in night school while in the Army (as a purely theoretical exercise, since the instructor never figured out the compiler for the TRS 80)
  • IBM 380 Assembly, Lisp, Ada, and Modula-2 in grad school

Then I started teaching and added:

  • C++
  • 68000 Assembly
  • Java
  • Visual Basic
  • C#
  • Perl
  • Python
  • Tcl/Tk

Presenting in GDG meetings added

  • Go
  • Dart
  • JavaScript and HTML

Working with K12 programs included

  • Greenfoot
  • Jeroo (a personal favorite)
  • Scratch and Squeak (and BYOB, Snap, and Blockly)
  • Alice
  • Karel
  • Lightbot
  • Robocode
  • Pivot
  • Processing

I did a little Smalltalk with the programming contest one year and some R as part of exploring big data. Should I count things like Bash, Awk, SQL, etc.? Nope, I don’t think so.

Yes, C is missing. I can probably fake my way through C, but I decided it was too ugly to learn in my grad school programming language survey class. There were a bunch of us who each had a language and during a typical class, we’d hear from the C guy, the COBOL guy, the Pascal guy, the PL/I professor and the Ada gal. That was enough C for me. (But after teaching “C++” for engineering freshmen, I’d be hard pressed to tell you why I wasn’t teaching C.) I had a friend who majored in comparative lit in college and he decided to never read Hamlet. I’ve used him as inspiration any time I’ve thought I should know more C.

Instead, I should learn Lua, I do believe.

Leave a Comment

Time for Seven More Languages

So, five years ago (really! that long ago?), I got tired of teaching the Programming Languages class out of Sebesta and decided to try something new. So, I used the book “Seven Languages in Seven Weeks” (https://pragprog.com/book/btlang/seven-languages-in-seven-weeks) as the course text.

It was, well, an experience.

Nevermind that the book that was due to be published on August 15 finally showed up in November. In fact, I counted that as a positive (in an “if life gives you lemons” way) since students got to experience how many professionals get their books on new topics with programs like Beta books, Early Release, and MEAPs. And we all liked the much lower price than traditional text books and PDF version that students could carry around easily.

But for years, I’ve been lectured about how lecture is the wrong way to teach classes (trust me, the irony was not lost on my, but seemed to be on the people lecturing me on not lecturing). You should be “the guide on the side” not the “sage on the stage.” And, despite my desire to learn as much as I could about these languages, all seven of them, I soon realized that the student questions and errors would far outstrip my knowledge of the languages. So, I really did become the guide and soon added an assignment where the class would get points for figuring out things I couldn’t. That made us all happy too–they got points and I didn’t have to figure things out.

What was particularly great about the book is that the languages were not your typically Java, C++, C#, C, blah, blah, but included some that really required new ways of thinking. Yes, some students still growl at me about Prolog 5 years later, but once you get it, Prolog is a bunch of fun. Really. Trust me.

And even better, the book didn’t just do “Hello World” in each of the languages. It focused on examples that demonstrated the different features of each language. When we were adding functions to the built in integer class in Ruby in the first week, students knew to hold on tight, it was gonna be an interesting ride. (Especially when you consider most of the class had never had any experience with scripting languages, so just simple Ruby and the REPL was a bit of a shock to the system.)

It was much like a white water rafting trip. I felt battered at the end, they were certainly battered, but if you like that kind of thing, it was a lot of fun. Still I rushed back to the safety (and cruise ship stability) of Sebesta the next year. Turns out, I shouldn’t have rushed for safety quite so fast.

In listening to the students who took the course at their exit interview much later, it was a great experience and the favorite class in the curriculum for a lot of them. They really appreciated the skills they developed in the class and the exposure to so many new ideas. They realized it would be sorta useful in their futures. (It doesn’t hurt that I had some fabulous students in that class either-yes, you Travis and Levi! And yes, you others who don’t live within 10 miles of me.) So I did it again (with a bit more guidance) in 2013 and had planned on doing it with the follow-up book (titled, duh, “Seven More Languages in Seven Weeks”, https://pragprog.com/book/7lang/seven-more-languages-in-seven-weeks). While I may have fooled some students into thinking working with a language that was not supported was a way to appreciate the support languages other than Io received, it was time to try something new.

But instead of teaching this fall, I’ll be doing something else. (Please don’t ask what or why without planning on offering a job interview or adult beverages.) And one of the many things I’ll miss is not having the chance to do seven more languages.

Still, as I was teaching from Seven Languages, I found the experience of others who blogged it) to be very useful. The work of Yevgeniy Brikman at http://www.ybrikman.com/writing/tags/#Seven%20Languages%20in%20Seven%20Weeks was especially useful. And since I still haven’t figured out what something else is going to be, it seemed like a good time for me to work through Seven More Languages on my own and record the experience here. It won’t be as useful an experience without students to ask questions I never would think of, but I do still carry a lot of student questions with me, so we’ll see what kind of trouble I can get into on my own.

Leave a Comment

Social Media Overload

So, I’m at Pycon. I figure I should report back, mostly to the GDG Academy people, since Python is a big deal in K12 education.

But there’s the rub. Where do I post? Since GDG Academy is on Google+, that seems obvious. But in the community page? On my page? Probably not, since I don’t “own” those spaces. So my own blog makes sense. Then post to Google+ (both home and the academy?) or send email to the GDG list or Tweet?

Damn. Let’s see how it goes. At least I’m pretty sure I won’t need to post to Ravelry.

Comments (1)

For now

My father died yesterday morning.

And since then, I’ve needed to write something about it. After all, one of my favorite quotes is from Anne Morrow Lindberg:

I must write it all out, at any cost. Writing is thinking. It is more than living, for it is being conscious of living.

But Dad’s been sick for a long time. Since his Parkinson’s came with dementia, he’s been gone in many ways for years. (Parkinson’s is ugly. Thanks Sergey Brin for what you’re doing to stop it.) When I called on Christmas 2009, it was clear the phone confused him too much, so I stopped calling after that. I last visited in June and while there was some time when he knew who I was, just being there exhausted him out as he strained to figure out who I was and how to entertain me.

But now he’s really gone.

For real.

For good.

Forever.

But that little Christian voice is reminding me “For now.”

Comments (1)

Consolidation Time

So, I’ve been keeping blog entries on the Mercer Rescue Walk site (walkertracker.com — a pretty cool site for those who will take any encouragement to walk a few extra steps a day) and at Ravelry (for Sock Madness 2011) and since the walkertracker site has been reset once already and I’ve lost everything, I figure it’s time to get things back where they belong.  I think I can backdate posts, so this might appear after I move the ones over from those other places.  We shall see.

Comments (1)

Where the Good Stuff Went

Steps Walked: 30,294 (23,952 at moderate pace)

Inside the British Museum

Yes, I suppose walking over the Thames (4 times) might be more impressive to a walking audience, but you can only get shots like this (inside the British Museum) on foot.  We did a walking tour of the museum, which was more listening than walking, but, on reflection, it did hit all the tour book sites, including the Rosetta Stone, Elgin Marbles (they don’t like to call them that though!), and much nicer pieces of the Mausoleum than are left in Turkey.

Really.  The Mausoleum is basically just a large lot with a bunch of chunks of marble:

Shot of The Mausoleum Ruins

Bodrum, Turkey

The British Museum has some of the statues that were at the top of the building:

From the British Museum

It does lead to the question of who really should have these antiquities.  When we were in Athens, they made a strong argument that the Elgin Marbles were looted, but in London, there’s a completely different story.  I figure it’s a good thing I don’t have to be the one to make the decision.

Another walking tour around Parliament at night really added steps.  Along with seeing the big fancy lit buildings and Lambeth Palace, we got to wander through alleys still lit with gas lights.  The walking company we used (London Walks: walks.com) was suggested by someone I worked with and was a great way to get us out and somewhere…otherwise, there’s so much to see and do, it’s hard to figure out where to get started.

Pret a Manger is also a good thing.  There’s one right outside the hotel (okay, in London, there’s one outside just about everyplace) and they can always be counted on for good basic affordable food.

Comments (1)

London, Day 1

Steps Walked: 21,170 (15,535 at moderate pace)

Big Ben, London

A Shot From Today's Walk

So, we took a red eye to London and got almost no sleep, but it’s London, so we literally walked ’til we dropped.  It “helped” that the hotel didn’t have a room ready until mid afternoon.  The hotel is wonderfully positioned.  We’re right across from Trafalgar Square and just down the street from Parliament.  We walked there easily, even as tired as we were.

But how else except by walking do you get this close to Big Ben?

Or see signs like this one?

Fortunately, there’s a well-reviewed pub right next to the hotel, so once we woke up again, we didn’t have far to go for dinner.  Surprisingly, there are traces of blue laws there (or maybe it’s just being in an urban setting) so it was closed.  Good thing there was a Thai place even closer that served us before we fell back to sleep.

Leave a Comment

« Newer Posts · Older Posts »