Trip report: EdX Week Zero
It is deeply weird to see a man give a presentation on a large stage to an empty auditorium. The presenter (David Malan) is more or less what you would expect from a professor at a good university: engaging, charismatic and knowledgeable. He walks back and forth, gestures expansively, talks to the audience, but there’s nobody else there (or rather, his students are on the other end of a zoom call).
The course
content is very good, and I recommend it to anyone who’s looking to learn
for themselves. The first week, cutely referred to as week 0, is a high speed,
high level overview of the basic concepts of programming, and ends with an
introduction to Scratch, which Wikipedia
tells me is a programming language (it isn’t, I think, not exactly)
intended to initiate 8-16 year old children into the mysteries of coding.
Viewing it as an adult there’s a mild initial cringe due to the presentation
style; years ago I loathed Clippy the paperclip on sight and even at age 8 I think I
would have had some qualms if presented with a cutesy cartoon cat (who knows what thoughts lurk
behind its sinister grin?). But that’s entirely superficial of course, and when
you get down to it Scratch is a useful, if simplified and occasionally
frustrating, tool for writing a few instructions and making a computer perform
them.
It took about 45 minutes to knock out the actual coursework, and I
duly submitted it and thrilled at the little green bar filling up to show completion
of the starting week’s requirements. Since that was about making a couple of
sprites pop up on a screen, move around and do things, though, it’s not
particularly useful to the character generator project. So, bearing in mind the
advice from the lecture to build iteratively, I had a go at a very simple prototype
for the character generator.
Specifically, I built a simple tool that would generate a
set of stats, and then based on those stats allow the character to pick a
class. I set up three classes: two (soldier and scholar) had stat requirements and
the third (peasant) was always available.
It worked, and ended up looking like this:
Do it. Do it! |
Exciting choices! |
Then you end up being a peasant anyway because your 'social class' roll was too low. Most sessions end like this. |
What did I learn from this?
· First, it’s really easy to make a computer select
a bunch of random numbers.
· Second, it’s really painful to make it forget,
delete or reset things so that you can get back to a blank slate.
· Third, it’s trickier than you’d think to get
things looking the right way. I was just using a couple of ugly placeholders
here but I strongly suspect this will come back and bite me when I start doing
this for real.
· Fourth and finally, Scratch really wasn’t
designed to work with text-heavy programs; the focus is very clearly the
manipulation and interaction of sprites.
Looking on the website, people have done some cool, character-generator-y
things and a few brave souls who are either geniuses, deranged or possibly both
have tortured it into making full-fledged text adventures, which in the
latter case seems to have involved rebuilding ASCII in lime green. I think I
would rather saw my own wrists open than try to make even the full character
generator, let alone anything more complex, in Scratch. Fortunately, I won’t
have to; week 1 beckons with the tantalising promise of learning to code in C.
Edit: One other thing I learned was that clicking on a large button marked 'roll' or 're-roll' is bizarrely addictive even when you know it's not going anywhere interesting.
Comments
Post a Comment