Category Archives: programming

Finding the best coding language for beginners

if-kids-in-third-grade-can-handle-coding-so-can-youThe title is a red herring. First, what do we mean by beginners? Second, I don’t think there is a “best” language, even if we could define who those beginners are. Here are some thoughts from the trenches, though.

I started a new job this fall teaching CS in grades 7-9, so I’ve covered a pretty wide spectrum of “beginners” with various backgrounds and levels of understanding CS. Here’s what I’ve done by grade:

7th grade — HTML, Scratch, LEGO Robotics (and a little 3D modelling using MinecraftEDU.
8th grade — HTML, GameMaker, a bit of Minecraft exploring, Small Basic.
9th grade — Blitz Basic, S2 Robots, App Inventor.

We’re trying to find the right combination of challenge and enjoyment, correct scaffolding, what works, what doesn’t…. It’s been quite a ride. Things that I thought would be a slam dunk because I’d done them before, like Scratch, were more challenging than I expected. Things that I thought my 8th graders would love, like GameMaker, weren’t loved. Small Basic, which I thought would be too confusing, went really well once we got into turtle graphics.

To be fair, I’ve had to learn an incredible amount of stuff. I’d never heard of Blitz Basic till I started here. Never dabbled in Small Basic and have never used the SR robots and the Propeller language. My lab is a dual boot environment, with a Mac platform and Boot Camp for Win7. It took a few weeks to get everything running smoothly technically. Which is all to say that I was teaching stuff that I was learning just ahead of the kids.

More conclusions in the next post…..

Javascript & JQuery

book coverReading this fabulous book by Jon Duckett. I’ve had a nodding acquaintance with JS just from doing some web design and dev. I decided it was time to formalize and solidify my understanding so I bought this book. If you’re a visual learner like me, you’ll probably get a lot out of this book. Some concepts I can get just from reading, looking at code, writing code, etc. But I’m finding that a well-designed visual approach really helps me understand things better. And since I’m a teacher, I’m always looking for ways that will help others get the concepts. This book is full of such examples.

It’s beautifully designed as well. Kind of a coffee table style. Lots of white space, large charts, color photos, etc. But it’s not just the design, though that certainly helps. The author takes the time to explain each concept carefully, with many commented examples. The scaffolding is also logical, as he introduces concepts clearly and then builds upon them.

Highly recommended.

Twitter as a neurological extension of my brain

world_connectionsI was going to title this “Why Twitter is awesome” and then thought that sounded cheesy. Then I thought about what I love about Twitter and came up with the above title, which is the opposite of cheesy. Probably pretentious.

But there’s something about that scrolling feed of ideas, thoughts, lesson plans, jokes, pictures, movies, and questions that directly feeds into my own thought processes. Part of it is due to the people I follow. I try to surround myself with people who are interested in the same things I’m interested in: learning, making, coding, and thinking about the intersection of learning and technology. Then I curate my Scoop on Learning on the Digital Frontier and post those as Twitter feeds. People who think those are interesting retweet or follow. And I meet more interesting people. And I learn more.

It seems to fit my thirst for learning, my hyper-focused mind, my always-on curiosity. Now I can’t imagine life without it.

Escaping the Echo Chamber…chamber….chamber…

It just feels like it’s time. I’ve been in edtech for over 15 years now. I applaud the efforts of those who are trying to reform the educational system and make it reflect the modern world. But truthfully, I yearn to do something more than retweet what others are saying. And a lot of what goes around is simply that. I hear very few contrarian voices (maybe Gary Stager is the most prominent exception). There’s an awful lot of preaching to the choir.

So I’m pruning my Twitter feeds,  my RSS feeds, my Zite reading, and concentrating on actual learning projects that are  jazzing me. At this point, I’m looking at the Arduino, the Raspberry Pi, webmaking, and robotics. The common thread is that all of these are about doing something. I’d rather move into Mad Scientist Mode and see what students are coming along for the ride. My experience has been that nothing gains student involvement like passion, and they can inherit some of that passion from other passionate people, like their teachers.

Who’s with me?
echo chamber 7

Teaching HTML in middle school

We’re kicking it old-skool! OK, sorry for the lame attempt to be hip. But a blog post by Tess Rinearson about teaching computer science in middle school recommended teaching HTML the Old Way. We’re talking Notepad, folks.

I was happy to read this, because that’s exactly what I’m doing right now with my Digital Multimedia class, which is one of our offerings in our arts block.  The current unit is an introduction to web design. Yes, I realize there are many WYSIWYG tools out there that will enable anyone to create a spiffy web page without knowing a single HTML tag. Dreamweaver is awesome, and we’re going to use it after we learn some HTML, some CSS, and a dollop of Javascript. But my question is always, “What happens when the design you want doesn’t work or won’t display the way you want it to?” Dragging and dropping can only get you so far, and in fact, can compound the original problem by generating more HTML code and further fouling up the works.

Knowing how to get “under the hood” is a necessary skill, and even an elementary knowledge of HTML can help the troubleshooting process. Plus, and this is the part I love, it gives the students a measure of control over the technology they are using. And it can be an important gateway experience for further computer science study. From a gender perspective, about half the class is female. So I hope that I am helping them have a positive experience with coding that will carry on later. It’s a win-win.

Questions I asked my class:

What’s the coolest thing about learning HTML?

“Links and fonts.” — Clark

“The links.” — Greg

“You can put virtually anything you want on a website with the coding, and how it all works together.” — David

“The image with the link. That you can use an image to be a link you click on.” — Chandler

“You can pretty much do everything you see on a normal website with HTML.” — Danny

What’s the hardest thing so far?

“That you have to have all the tags, the closing tags, everything right.” — Sam

“If you make a mistake, you don’t know till you save it. Then you have to go through all the code and find it.” — Mali

What did you learn about the internet that you never knew before learning this?

“You look at all these websites, and you realize that there’s all this coding behind it for them to work.” — Victoria

“You look at a website and it looks all different and pretty, and then you see the code and what makes it look like that.” — Chandler

“I learned that it’s pretty simple, and really anybody can do it.” — Drew

“A lot of websites use code that they get from other websites, but there has to be one that did it first.” — Ethan

 

html code