I’m developing a FastLED workshop for local youth and would appreciate feedback on my (very preliminary) slides in progress.
Note: I’ll be making the code available to them, so they don’t have to squint and try and type it in.
http://www.slideshare.net/atuline/programming-addressable-led-strips
Hi Andrew, my first impression: awesome project! I just wonder, how many days you have for the workshop or how prepared the participants are. That is a lot of informations you are going to give. Do you have enough time for that? Will they be able to concentrate on it long enough? If they start from scratch I would say this is material for at least 3 workshops. Just my 2ct. Good luck!
To save time at the beginning of the session, have you thought of using http://www.codebender.cc ? all you need is Chrome/Chromium browser and a plugin. Plus all the examples could be made available before the session to save time downloading etc.
My experience from college was that the tutor would spend most of their time just getting every ones set up working, leaving little time for the fun stuff.
only problem would be they only have fastLED2 at the moment. (you can add personal librarys but this again would be eating into your workshop time.)
A message to the site developer might be able to sort that out though.
The slides look great btw
Wow- this is just great !
And that comment comes from a guy who’s also done a beginners’ class with Arduino, some LED strips, and FastLED. (First iteration was LPD8806’s and Nanos; second iteration was WS2811’s and Leonardo-clones.) I’d be very interested in adapting this into a general ‘intro to FastLED programming’ piece that we could promulgate widely.
I would consider going to a more-plain, more-uniform, high-contrast color scheme for the text slides, to increase legibility when projected and/or viewed from a distance. Though… I do like the rainbow…
When I did the 1-hour mini-course like this (for which the prerequisite was that you had to have programmed something, sometime, somewhere before), I took an approach I called cookbook+playground. Basically, I said, “Never Mind The Learning – just hook it all up like this and type that program in exactly, and poof: moving light moving down the strip! Now: your mission is to turn that program into a ‘Cylon’, where the light moves back and forth.” We had about 15 students, all adults, most professional software developers (I did this at work for one of our “Learning Lunches”), and it worked well there – but that’s not the same as teaching young people who aren’t already experienced programmers!
My slides, such as they are, are here, and you can see how the approach is, as I said, very much “cookbook + playground”:
Oh, one other note: I had pre-cut the LED strips into 30-pixel (1m) segments, and pre-soldered color-coded breadboard jumper wires onto the end of them: black (GND), red (+5), and blue (DATA_IN). This meant that students could just plug the jumpers directly into the Leonardo (or a breadboard).
On slide 20 (random numbers), you give the example of Arduino’s “random” as a 32-bit function, but you only give an eight-bit range of values which may be distracting, and you then assign the value into a sixteen-bit int. I’d maybe change that to
long int randomColor = random( 0x000000, 0xFFFFFF );
or something else that shows the 32-bit-ness of it. But then you’re getting into hex vs decimal. Hrm. Not sure what the better option is, but since that slide is talking about data widths, I’d have each example be uniform width throughout.
Much thanks for the feedback guys. I’ll be going through the slides today to tighten/clean them up, review the random numbers, checkout codebender, change the background and so on. Of course, I’ll github the whole thing once it’s done. Workshop won’t be until January, so I’ve got lots of time to get it right. Oh, and this will be a 1-2 day workshop.
Here’s my previous one for these youth, which was a huge success:
By January, I expect FastLED V2.1 will be in full release (no longer just on a branch), and codebender may have it available.
When we release it, I’ll ask the codebender folks to update!
Really a nice one…well done!