February 27, 2015
Summary: LispCast Intro to clojure.test is on sale now for a limited time through the PurelyFunctional.tv Early Access Program.
Update: PEAP is now closed for Intro to clojure.test. Sign up below to find out when the finished product is published.
Folks, it's happening. I just opened up the PurelyFunctional.tv Early Access Program for LispCast Into to clojure.test. If you like to be on the cutting edge or get lots of access to the teacher, now's your chance. Open for 48 hours only!
You might also like
February 25, 2015
Summary: The PurelyFunctional.tv Early Access Program is a way to make courses in a more iterative and interactive way. I'll be publishing Intro to clojure.test this week under PEAP.
Computers and the Internet have allowed people to produce better products than has ever been done. Photography is better because of Flickr. Handmade knives are stronger and sharper than ever. Stone arrowhead making is better than ever. People are able to experiment, share their results, and learn the results of others faster than ever before, because the Internet allows them to communicate faster.
It's simply a matter of speed and accessibility. I want to bring that speed and accessibility to LispCast courses. I have been working hard on building a platform for me to develop courses iteratively. That means I can make them in smaller steps. The other piece is the feedback, where I ask you, my awesome customers, to borrow your brain for a bit. Talk about what works for you and what doesn't. I'll listen, answer questions, discuss them with you, and incorporate what I learn into the course.
Everyone wins. You get to learn what you need to learn faster, with your questions answered. And I get to make the course better for everyone. Seems like a good deal.
I'm creating what I'll call the PurelyFunctional.tv Early Access Program. It's simple. As soon as a course has a bit of content and interest, I'll post it up for sale. You get to download the course in a first draft. Let me know what questions you have, where you're having trouble, or things that were too easy. I'll continuously work those things in, and let you know when to download the new one.
I'll throw in another small benefit: if you're part of the PEAP, meaning your buy the course before it's finished, I'll put your name in a Thank you page in the course and on the course information page. Everyone who goes there will be able to see it.
To kick off the Program, I'm going to be publishing LispCast Intro to clojure.test, in its current state, this week. Entry into the Program will be available for a limited time. So sign up below if you'd like to be a part of it. I'll send out an announcement with the instructions.
You might also like
March 07, 2015
Summary: Many technical books skip very important skills you need to complete a task. To avoid skipping those skills, use task analysis to break a skill into steps.
This image reminds me of so many programming language books. The first chapter introduces the syntax, the second chapter is about writing a blog. What about all the stuff in the middle? I work hard in the LispCast courses to avoid skipping these steps.
The problem is clear: most technical skills are actually made up of hundreds if not thousands of smaller skills. I mean, tons of small decisions, perceptual skills, motor skills, etc. It's amazing really what people can chunk into a single idea. There are illustrators who think of the process as two steps. Likewise, many programmers are really good and think of complex code in two steps.
Our job as teachers is as clear as the problem: break down a skill into all of the smaller skills, then teach each of the smaller skills and how they lead to the big skill. It's so easy to state, and yet most people don't do this, even when they're writing for a beginner audience.
Why do so many programming language books spend so much time on syntax but fail at the intermediate stuff? It's because syntax is easy and usually already broken down for you. Once that's covered, it's hard to know the next step to teach if you haven't done the work of discovery. But they also focus on trivial stuff, like how to type literal integers. Hello? Really? If you bang on the number keys you can make integers.
So, how do you do it? How do real teachers do it? It's actually kind of boring. The kind of boring process that you might look at and say "oh, well, obviously". The process is simply to do it yourself and keep notes about every little thing you did. Ask yourself really specific questions like "Why did I start with two circles? Why do they overlap?"
How do I make use of it in LispCast? I always start with the code I want my learners to be able to write. I write it all out first. Then I start breaking it down. Every construct (if
statement, library function, etc.) is obviously something to teach. Then there are the value-add things, like why I chose one way over another. What questions do I ask myself to make the decisions? All of these things can and should be steps.
Now, the next step is matching the steps to the learners. Maybe they already know something, so I can just mention it or if it's well known, just do it without mentioning it. Some things might still be difficult, so I might need to break them down further.
At the same time, it could be better to avoid a certain concept. Like if you'd normally do it with a cond
but they already know if
, perhaps you should stick to what they know so you don't have to add several minutes to explain something that's not relevant to your topic. I try to go deep, so it's important to minimize the breadth of the material in order to finish on time. All of these little skills go into a curriculum, which I'll talk about in a future post.
I don't think this process is hard or original. I learned it from a book about teaching. I do think that most people who write technical books might be subject-matter experts, but they don't have any training in teaching. Teaching is a huge advantage. Even a simple process like this could really differentiate you from the other technical authors out there. And breaking down a task tells you what you need to teach (no more writer's block).
If you like the idea of teaching technical material, please sign up for my Technical Teaching mailing list, where I'll occasionally share skills for making material that helps people learn.
You might also like