A couple weeks ago on February 4, I presented a 3 hour class at the 10BitWorks Hackerspace for the Arduino, which I called Arduino 101. It’s hardly an original title, but it captures the essence of the class.
We had a great response, as we had 19 people sign up and show up for the class. It was enough to split the group into 2 classes, which was a little taxing on me, but allowed us to accommodate more people in the space. We had folks of all ages attending the class, from kids on up, and I was happy to see them all engaged in the projects.
The class consisted of 3 presentations, covering the topics of:
- Introduction to Microprocessors (and the Arduino)
- Basic Circuit Theory
- Basic Programming Concepts
The presentations were followed by a series of “hands-on” activities that progressively built out some projects on a small solderless breadboard using a parts kit we had ordered for the class. All the presentations and project documentation is available for download.
I’d like to share some of what I learned preparing and presenting the class. For a class of its scope it went surprisingly well, but I have mostly to credit for that the level of skill of the people in the class. Many participants already knew some part of what I was presenting and were very helpful with assisting others who weren’t up to speed. This helped free me up to help those who were truly troubled with either the hardware, software, or both.
First of all, a month lead time to prepare the class was far too short. When you have a full time job and family, that leaves only a few hours late at night to work on such projects. While I am very happy with the materials I turned out (small errors that sneaked through aside), it was extremely taxing. Reducing the material to its barest essentials and creating effective presentations is well known by educators everywhere to be a long and difficult process, but this class had some unique challenges that I hadn’t really faced in my teaching career.
The list of tasks for producing the class included (but weren’t limited to) the following activities:
- Planning the proposed lab activities
- Creating a notional parts list for the types of activities I was interested in doing
- Searching through parts catalogs, data sheets, and price lists to come up with a reasonable, cost effective bill of materials
- Coordinating the purchase of the BOM in bulk and testing the parts when they arrived
- Building each lab and writing the Arduino program to go with it
- Fully documenting each build using Fritzing for the circuit diagrams and schematics
- Packaging each lab in a document that describes the build and explains the finer points being taught by it
- Researching and buying the packaging for the kits, as well as assembling the kits from the bulk parts
That’s doesn’t even include the administrative side of things, with which fortunately I had a lot of help, including promotion and payment arrangements. In retrospect I would have left myself at least another month to put it together, but in the end everything turned out remarkably well, thanks to help from other Hackerspace members.
Secondly, as far as the class itself, I discovered that 3 hours is far shorter than I thought it would be. By the time I got to the third presentation (programming concepts), I felt rushed to get it finished in order to have time to work on the hands-on projects. It’s really difficult to give people enough foundation to understand what they’re about to do, considering that the information they need is basically the contents of 2 freshman college classes, plus the Arduino concepts themselves.
Finally, I would make the class more accessible by reducing the cost. Although I might have been able to shop around and find some of the pricier items for a little less from other suppliers, in the end I might have ended up saving only a couple bucks at most, at the expense of the additional headache of coordinating multiple orders. While I was happy we found someone to sponsor 10 students’ kits, it would have been better to find a local business or two to sponsor the entire cost of the class for 20 students, including the kits and the Arduinos themselves. The more visibility we can create for events like this (and upcoming events), the easier it will be to make that happen in the future.
As I wrote above, I’m really thankful that many people in the classes already had some background in one subject or another and were able to help others around them so that nobody got left behind. In the end I just hope I gave people enough information to be able to complete the projects but also to give them a jumping off point for self directed learning or even incentive to take some formal classes.