The Care and Feeding of Electronic Automata

It’s a little early to be sharing this, but I’m feeling impatient today.

Inspired by furkle’s NarraScope talk last weekend, here’s the beginnings of a getting-started-programming-with-JavaScript thing. It’s currently a loosely organized 6,000 word infodump of my initial thoughts on the matter. I’m only just starting on the real work of guided exploration or scaffolded exercises or whatever you want to call it. But I did a quick page for playing with Zdog (a simple pseudo-3d drawing library) and someone might have fun with that.

3 Likes

There’s already beginner’s guide to JavaScript on this page that is really novice friendly:

You might want to just provide a link to it and then focus on issues specific to IF authors.

Also, what is your target audience? Folks who want to add a little JavaScript to twine or who want to write IF in JavaScript from scratch? Both? Is the focus choice-IF or parser-IF or both?

1 Like

This is a neat idea, trying to spread JS knowledge for IF authors. I’ve long thought I probably should try to learn a broader language rather than trying to squeeze every new project idea into my existing toolkit of existing IF systems. I’m looking forward to seeing how this develops.

2 Likes

Good points, thanks. The existing text definitely doesn’t answer those, so I should have said something in my initial post. I thought I knew where I was going with this, but had trouble figuring out how to say it, which is usually a sign that my thinking is fuzzier than I’d like.

I’m deliberately covering much of the same ground as MDN’s tutorial and other similar things. What I’d like to do differently is to make something more interactive than just a textbook analogue. I don’t (quite) want to make this a programming videogame, but I do want to move toward minimal words and lots of things for the reader to try. I’ll probably cut a bunch of the pointless front matter and try to have you typing in bits of code in the first minute or two.

I’d also like to try making the early examples more interesting by being about modifying or adding to existing code rather than being limited by the things you can write from scratch as a complete beginner. Not just for interesting examples but also to encourage people to start reading a little code even if they can’t understand it fully yet.

Audience: people who make interactive digital art? I come more from the graphical video games side of things (tiny space arcade game, weird little turn-based roguelike cave flyer) but I think text offers more possibilities with less complex code.

I’m planning to base the first set of examples on an extremely simple custom choice-based transcript-style setup (along the lines of Inky’s HTML output). And then having side exercises to adapt your work to Twine/Vorple/etc.

I’m not expecting to make something original. There are lots of materials already available. The Twine Cookbook has a bunch of nice little examples. Browsing through the Twine Q&A will turn up tons more. I’ve heard half-decent things about Codecademy’s intro to JavaScript.

But having watched my brother who’s an artist learn game dev through UE4’s drag-n-drop Blueprints scripting followed by Godot’s Python-like scripting and then Lua scripting in Defold, and talked with several writers and other creative types who were trying to start out in programming, I think there’s room for one more.

A lot of existing things are long-winded on the details of the basic things (variables, branches, loops) but take a long time to go anywhere. I tend to find that, with half-decent explanations, people are like, “yeah, yeah, we get what a variable is” but need more help (and practice) figuring out how to get from concept to program. Sort of the ultimate blank-page syndrome. I’d like to try and help with that.

1 Like

I really need to learn JS since that’s the way ASM is headed and it can do tons of neat things, but every time I open up a tutorial I find myself producing the sound Tina Belcher makes when she’s uneasy.