Get Posts by E-mail

Put THAT On The Fridge

There aren’t a lot of firsts left in your life when you’re twenty-seven so imagine my exhilaration last week at Google when I encountered an annoying technical problem and rather than grind the solution out over several hours of pointing, clicking, and transcribing, for the first time ever, I wrote twenty lines of code that solved the problem in several minutes.

I created something from nothing. And that something did something else, which is such a weird, superhuman feeling. I’ve got to chase this. I’m on a very dark path right now.

At the same time, I’m going to resist to the bitter end the urge to write up some grand prescription for education-writ-large based on something as flimsy as my own personally satisfying learning experience. There’s way too much of that in the edublogosphere without my own contribution.

29 Responses to “Put THAT On The Fridge”

  1. on 22 Dec 2009 at 11:56 amMichael K.


  2. on 22 Dec 2009 at 12:48 pmSteve Phelps

    So what was the annoying technical problem that is getting you to work with temperatures ?

    Nice work…is this Python? If so, is it easy to learn?

  3. on 22 Dec 2009 at 1:48 pmDan Meyer

    I needed to pull down daily average temperatures from a given city over a 50-year span. The alternative to coding a solution was to change the year in a drop-down menu, click “view,” and wait for the page to load. Which, dragsville. So I wrote a (really ruddy) program that did the same thing for me while I poured myself a latte.

    And, yeah, this is Python. And it’s really easy to learn, depending on the tutorial. I tried thee or four in the run-up to my job with Google and the best by a long stretch was the Head First Programming book.

    (Full disclosure: I’m reviewing some of O’Reilly’s other materials but I had nothing to do with Programming.)

  4. on 22 Dec 2009 at 2:15 pmrhett

    Python is your friend. Long live python. Python FTW.

  5. on 22 Dec 2009 at 7:09 pmTom

    Yep, after 27 it was all downhill for me. Lots of seconds and thirds but the firsts were all over with.

  6. on 22 Dec 2009 at 7:15 pmJackie Ballarini

    You said the program was “really ruddy”, yet you gave it an A+. If a student had inelegantly solved a problem, yet still solved it, would they too have gotten a “way to go”?

    Not saying that your code doesn’t deserve it. It does what you wanted it to do.

  7. on 22 Dec 2009 at 9:20 pmcolleenk

    Welcome to the coder’s club!

    If my own experiences aren’t the exception, I expect you’ll have many more firsts in your programming career. I just had a huge “aha” moment a few weeks ago, nearly three years after writing my first program.

    To answer Jackie’s question, I would absolutely give a “way to go” to a student whose solution was inelegant. That student, more than anyone, would appreciate and benefit from seeing a more direct approach. I’d be on the lookout for improvement.

    I can’t wait to hear more about your Python adventures. Please share what you can.

  8. on 22 Dec 2009 at 10:05 pmDan Meyer

    @Jackie, who writes “A+ Way To Go” on his own work? And pins it to his own fridge? Obviously, I’m just funnin’ here. I’m proud of the code but I’m sure I could’ve been more concise or used better syntax.

  9. on 23 Dec 2009 at 7:18 amJackie Ballarini

    I know. You should be proud. I was trying to… never mind.

  10. on 23 Dec 2009 at 11:02 amLSquared

    I, on the other hand, am a young 42, and eager to have another first (surprisingly, they do keep turning up). How did you do that?! Man, that is so cool!!! I kind of get the Python code, but how do you get it to talk to the browser and stuff?

    Kay, I totally need to learn Python next summer.

  11. on 23 Dec 2009 at 1:01 pmJason Baldus

    I totally write “A+ Way to go!!” on all of my own work and post it on the fridge. The kids get the bottom 25% of the fridge for their “drawings” and I get the top 75%, cause that’s what most people look at anyway.

    The act of creation and the feeling of power that comes with programming a computer to do what you tell it to are what addicted me to the activity. I’m really glad that you got to experience those feelings, too. A+ Way to Go!!!

  12. on 23 Dec 2009 at 2:06 pmJohan Potums

    it gets cooler when your work actually does something for someone else…

  13. on 23 Dec 2009 at 3:29 pmGilbert Bernstein

    Congratulations Dan! Just so you know, they usually have plenty of fluorescent lights in the basement computer labs, so it’s not really that dark of a path…

    If you’re curious at all, there’s some big hoopla going on right now to try and reform CS K-12 education. (Don’t ask me what CS K education means, I have no earthly idea) Here’s the page for the latest PR push: I imagine the whole area might be a bit foreign to you, but I have this gut instinct that the whole reform could stand some criticism of the kind you and others tend to dish out around here.

  14. on 24 Dec 2009 at 12:49 amPeter

    Hi Dan,

    Thought you might enjoy this (if you have any spare time):

  15. on 24 Dec 2009 at 6:50 pmSue

    >There aren’t a lot of firsts left in your life when you’re twenty-seven …

    You are so wrong!

    Let’s see, I’m 53. I first became a mom at 46. I first got a short story published in my 30’s, I got my first fulltime college position in my late 30’s, I first performed a poem of mine in my 40’s, I bought my first house in my 40’s, …

    I expect to keep having glorious firsts however long I live. Don’t you?

  16. on 24 Dec 2009 at 9:26 pmDavid Cox

    Dude, do you think life ends at 30 or something? Cool it with the “no more firsts after 27” stuff. I don’t know if I’d call the satisfaction from your learning experience “flimsy.” For someone as reflective as yourself to actually be proud of something that an experienced programmer might consider elementary, you may have tasted the real “stuff” of why we do what we do. Now excuse me while I go rinse my dentures.

  17. on 26 Dec 2009 at 7:55 amChris Lehmann

    I’m going to go all Gary Stager on you and talk about how programming is such a powerful constructivist tool — and your response to solving a real world program with 20 lines of code is a great example. I loved teaching programming because it did get kids thinking in a logical pattern that few other tasks can create — and it did so while allowing kids to create stuff that worked.

    In the many years of learning programming, two years of coding full-time, nine years of creating Beacon’s web portal and every now and then hacking and slashing on SLA’s web site, that feeling of “YA-FREAKING-HOO!” never went away for me.

    No, we shouldn’t extrapolate twenty lines of code to a whole massive educational philosophy, but we shouldn’t shy away from the lessons there, either. Learning from real work that matters is seven kinds of cool.

  18. on 26 Dec 2009 at 11:15 amDan Meyer

    Raise your hand if you thought I was serious with “There aren’t a lot of firsts left in your life when you’re twenty-seven.” Obviously I need to rejigger this blog’s approach to sarcasm.

    @Peter, thanks for the link. The first few challenges have been useful to me.

    @Chris, I’m not determined to not learn any lessons here. But after participating in the edublogosphere for a few years, I become quickly crankly when our leading thinkers experience something exhilarating online and take that exhilaration (often rightly) to mean something is wrong with our schools while leaving the broad and narrow strokes of how we operationalize that exhilaration in our schools to … the teachers … those lazy, recalcitrant teachers who don’t appreciate the clarity of vision our leading thinkers have for 21st-century schooling.

    I would love to package problem solving and math into the same course in Python programming but the details of that course — everything from a pacing guide and curriculum to where it figures into our current course sequence — is vague to me and if they’ve been articulated by anybody else, I haven’t seen it.

    So, in the meantime, I’m trying to restrain myself.

  19. on 26 Dec 2009 at 4:00 pmChris Lehmann

    Well, that makes me cranky too… especially since I’ve spent the last four years with an amazing group of teachers and students figuring how just how hard it is to do it every day.

    And I’ll look for those resources. I have heard of folks teaching math through programming, but I don’t have a link handy… I didn’t hybridize math and CSE. I just taught programming, which was a real blast.

  20. on 26 Dec 2009 at 6:02 pmSue VanHattum

    (one hand raised, other covering sheepish grin…)

  21. on 26 Dec 2009 at 6:22 pmTom

    What is sarcasm?

  22. on 27 Dec 2009 at 12:39 amPeter

    Dan and Chris:

    I bought a copy of this book:

    I teach Python in my high school IT classes but I’ve never been a math teacher so I find a lot of it challenging. I’m trying to get better at integrating the two and that’s why I bought the book.

  23. on 27 Dec 2009 at 2:01 pmDan Meyer

    Yeah, interesting syllabus. In my position at Google we’re trying to graft Python programming and computational thinking onto California’s Algebra 1 standards. Problem is, it’s kind of tricky to graft any kind of higher-order thinking onto California’s Algebra 1 standards, which are a long list of procedural skills and rote operations.

    I mean, how do you position “solving multistep equations” or “completing the square” as an exercise in programming? My team has come up with a lot of solutions — some more inspiring than others — but the Litvin’s have taken an alternate route and just thrown those standards out. They don’t address them.

    Which, in certain cases, is exactly the right approach. But, whatever my gripes with the status quo, I have to contend with the fact that this course won’t see daylight in a public school as anything but an elective.

  24. on 30 Dec 2009 at 7:49 pmDavid Cox

    Caught the sarcasm and tried to throw it back a bit. I do think you’re scared of 30, though.

  25. on 30 Dec 2009 at 11:41 pmDan Meyer

    Ding ding ding.

  26. on 03 Jan 2010 at 4:51 pmTouzel

    I applaud your efforts to tie something in with the CA Algebra I standards, but that almost seems like trying to find a way to teach programming using a telegraph. I mean, the CA standards are terrible. They are naked math–and not even good naked math.

    If you can pull this off, I’ll be super impressed, but why not use the national standards?

    I’m sorry for being so negative. I just want the CA standards to be changed so badly and I hate to see your team work so hard with such a lead weight dragging you down.

  27. on 16 Jan 2010 at 8:59 pmSJA

    Raise your hand if you thought I was serious with “There aren’t a lot of firsts left in your life when you’re twenty-seven.” Obviously I need to rejigger this blog’s approach to sarcasm.

    I’m raising my hand on this one. You weren’t being sarcastic; you were being naive.

  28. on 20 Jan 2010 at 6:02 pmBen Chun

    Yep… that’s the feeling. That’s why I teach CS. It doesn’t happen every single day, but it happens a lot of days. Kids get to experience that power.

    By the way, when do we get to see the python/algebra curriculum stuff? That’s something I could seriously get on board with.

  29. […] But I’d sort of forgotten that it’s a real kick to do it for the first time and  realize the implication of having a computational Genii that does your work for you: the feeling of […]