Concurrent Programming in Erlang - Winning by Failing (week two)

No one wants to fail. We'd like to succeed in life, to pass our exams, advance in our jobs, achieve our goals. And when we become bored with the usual challenges, we see who can eat the most hotdogs, throw a horse's shoe the farthest and get the most sacks of corn in a hole. Winning, and avoiding failure at all costs, is deeply ingrained in us. That's what makes Erlang so unusual as a language. Failure is expected and even embraced. It's easy to get defensive when you're writing a program. You don't want your application to crash - »

Concurrent Programming in Erlang - Do All the Things! (week one)

This past weekend was great weather-wise. Sunny and 70. Summer's around the corner but in Ohio there are never any guarantees... the weekend before it snowed 4 inches. We had places to go and errands to run (as always), but I got some work done outside, took the kids on a bike ride, and met some new neighbors down the street who were cutting up trees they'd taken down (free firewood!). Sunday ended with a nice cookout, a good vanilla stout, and watching "Fantastic Beasts and Where to Find Them" with the kids. All-in-all, it was pretty awesome. This is »

Find Your Reason to Code

I signed up for a moderate-paced mooc through edX a few weeks ago, and while it’s not too late to join, you’d have to hustle to catch up at this point. It’s an intro to computer science, but its heavy focus on Python is what interested me. Finding a Reason to Code There are too many languages out there to bother trying to learn them all. Some are ancient but have a niche use. Others are well-established but not as exciting. Still others are “cutting edge” but will just fade into obscurity in a year. Instead, it »

The Beauty and Joy of Computing (mooc), and My First Snap! Script

“The Beauty and Joy of Computing” (BJC) is a new mooc that started just a few weeks ago. Dan Garcia has been teaching it at UC Berkeley for awhile, and now it’s available on edX. Discover the big ideas and thinking practices in computer science plus learn how to code using one of the friendliest programming languages, Snap! (based on Scratch). We’ve been working on this course for more than two years, with the help of a grant from edX, and more than fifty outstanding undergraduates at UC Berkeley. I enrolled early on, forgot about it (happens sometimes! »

Weeks 5 and 6 of HTML5 with the W3C – New inputs! Forming forms! All the APIs!

The HTML5 class ended a few days ago. The last couple of weeks were a whirl-wind of new information, covering Forms and APIs. The new APIs are really interesting, allowing you to cache data (sans cookies), manipulate files, use geolocation, and more. Forms, on the other hand… I mean, they’re Forms. No matter how you dress that up, or how clever you try to get with it, you’re still just collecting information from someone. YAWN So here are a few things that piqued my interest these last couple weeks. Pseudo-classes When you validate input fields using some client-side »

Week 4 of HTML5 with the W3C - Interacting! Moving all the things!

The focus for week 4 of the W3C HTML5 course was animation. We’ve been displaying a lot, but it’s been fairly static up to this point. This week, we learned about events, interacting via the keyboard and mouse, and the three steps of animation: Clear the canvas Draw the items on the canvas Move the items (won’t take effect until the loop iterates, and you clear the screen and draw again) It sounds simple once you know it, but only in hindsight. I knew we were going to learn about animation, but wasn’t sure how exactly »

Week 3 of HTML5 with the W3Cx/edX - Canvases

Week 3 of the Learn HTML5 from W3C course taught us about the Canvas element, along with the shapes you can draw on it and how it can be manipulated. These work in the major browsers (except for IE, ugh). Graph Sample This first sample is a simple graph I created. It demonstrates manipulating the current context (such as translating, rotating and changing the opacity), as well as listening to events and taking action (in this case, the “input” events on the sliders). It needs work – the top of the graph is cut off slightly, probably due to some faulty »

Week 2 of HTML5 from the W3C - Creating Videos

Just finished up week 2 of the Learn HTML5 course authored by Michel Buffa and the W3C, and frankly it’s kicking my butt. It’s my fault. I’m trying to not just passively read the material, but to put what I’m learning to use. Last week, I latched on to microdata, installing a new plugin for my blog, and checking out what kind of meta data it added to the source code. This week, the focus was on media elements, specifically the Video and Audio elements. Since Audio is basically a subset of the Video element, I »