Monday, January 30, 2012

Lectures Don't Work

The full article is worth a read:

Science Finds a Better Way to Teach Science

The basic idea is that students who put knowledge to immediate use remember it better. I guess that's not a surprise to those of us who prefer internet tutorials to dry lectures. It might even be a defense of my "go do it" method in the sidebar.

If you have a game plan, google for answers, and build a LAMP server, you'll learn a lot.

Monday, January 23, 2012

Alternate Paths: Udacity

Felix Salmon has a really great report on the Stanford AI experiment:

Thrun told the story of his Introduction to Artificial Intelligence class, which ran from October to December last year. It started as a way of putting his Stanford course online — he was going to teach the whole thing, for free, to anybody in the world who wanted it. With quizzes and grades and a final certificate, in parallel with the in-person course he was giving his Stanford undergrad students. He sent out one email to announce the class, and from that one email there was ultimately an enrollment of 160,000 students. Thrun scrambled to put together a website which could scale and support that enrollment, and succeeded spectacularly well. Just a couple of datapoints from Thrun’s talk: there were more students in his course from Lithuania alone than there are students at Stanford altogether. There were students in Afghanistan, exfiltrating war zones to grab an hour of connectivity to finish the homework assignments. There were single mothers keeping the faith and staying with the course even as their families were being hit by tragedy. And when it finished, thousands of students around the world were educated and inspired. Some 248 of them, in total, got a perfect score: they never got a single question wrong, over the entire course of the class. All 248 took the course online; not one was enrolled at Stanford.

He follows with news of a new venture:

But that’s not the announcement that Thrun gave. Instead, he said, he concluded that “I can’t teach at Stanford again.” He’s given up his tenure at Stanford, and he’s started a new online university called Udacity. He wants to enroll 500,000 students for his first course, on how to build a search engine — and of course it’s all going to be free.

Looking out there now, I see a couple computer science courses. This could shape up well.

Tuesday, January 17, 2012

Alternate Paths: Raspberry Pi

In my sidebar I recommend using an old abandoned computer to learn the LAMP stack.  If you, friends, or family, have such a computer sitting around, it's obviously the cheapest path.

The Raspberry Pi is a very similar and low cost alternative.  As Roy Wood reports:

The Raspberry Pi system is a single-board computer based on the Broadcom BCM2835 system-on-a-chip. The specs include a 700MHZ ARM CPU, a VideoCore IV GPU, up to 256MB of RAM, an SD card reader, USB ports, and an optional ethernet port. The device supports common USB peripherals like mice and keyboards, can be connected to a TV or monitor, and will run Debian Linux. Oh — and did I mention that a Pi will cost a mere $25 or $35, depending on the model?

The Pi is just entering production. It is an alternative, but might be a little tight on memory, compared to the typical disused closet PC.

Monday, January 2, 2012

Alternate Paths: Code Year

Code Year is a very interesting concept. It is a promise to send "a lesson a week" by the Codecademy folks. They don't give too much more info, do they? ;-)

I'd guess that it is a JavaScript-first programming path, based on Codecademy lessons.  As I mention on in my JavaScript page, Codecademy does have many happy users.

So if you like the JavaScript path, and weekly emails sound like the structure you prefer, go for it!

(Hat Tip Red Sweater Blog)

Sunday, January 1, 2012

Alternate Paths: Scratch, Alice and Greenfoot

I was just flitting about the webs myself, and came across this discussion of three recent educational languages.  The age targets are interesting:

I'd say Greenfoot comes closest to my target for my hypothetical audience (mostly 15-25, mostly male).  Greenfoot is a visual programming environment for Java which gives a jump-start to the interesting bits, with what looks like great visual feedback.

I kind of suspect that if you ended up here, you have an interest in programming for production (be that personal, open source, or commercial use).  For that kind of goal a Greenfoot and then Java path wouldn't be so bad.

Check out Alice and Scratch if you feel they better fit your profile.

Alternate Paths: Google App Engine

Can a new programmer jump right in and program the cloud?  It could be.  Google does have good documentation and tutorials at their main page:

Google App Engine

There are currently three languages options offered: Go, Java, and Python.

I did a little by the Python path, and liked it.  I think Python is a better match than Java for a widely distributed cloud solution.  It's just so much lighter to interpret a page, rather than launch an object-oriented runtime. If you take the Python path, the "stack" is HTML, CSS, the Python language, the Django framework, and then the AppEngine API.

I haven't tried the Go Programming Language and won't comment on that option ... other than to say it is probably a fine language, but wouldn't yet have the market potential of Java or Python.

Alternate Paths: HTML5

In the narrow sense, HTML5 is just a new generation of the HTML markup language. In the broader sense though, HTML5 is an application programming environment. It is possible to deliver useful programs using that broader bundle of technologies (HTML5, CSS3, JavaScript, etc.). The key advantage to a HTML5 learning path is that you can write (and deliver!) programs without becoming an operating system or database expert.

We are perhaps at a bit of a juncture.  MobileBeat claims HTML5 will kill the native app.  It may, but that may not be something a beginning programmer needs to worry about.   I think it is enough that the technology is popular, current, and growing.  It's a good start.

Jochen Voss gives a quick overview in How to Write an HTML5 App?

Google "HTML5 tutorial" and "learning HTML5" for the latest, best, pages.