SamuKata
Lu Wilson
Lu Wilson

patreon


TODEPOND TIMES: Nogan

Hello! and welcome back... to another weekly edition of the...

🌳🐸 TODEPOND TIMES 🐸🌳

What's new this week?
(quite a lot this time)

JavaScript

A while ago, I started my youtube channel by making an engine called SandPond. (It's called the SandPond Saga after all!)

But there's another project behind it, called SpaceTode! It's called SpaceTode because it's a spatial programming language. You can use it to make new SandPond elements.

You type SpaceTode into a text editor. And when the engine loads, your code gets translated into JavaScript so that the SandPond engine can understand it.

The generated JavaScript is very ugly and hard-to-read. But it's not supposed to be read by people! It's written in an unusual way to make it run as fast as possible on your machine.

Let's recap:

⭐ You write SpaceTode
⭐ ... which becomes JavaScript
⭐ ... which controls SandPond

Dragon

More recently, I made an engine called CellPond. It's not 3D like SandPond, but it builds on a lot of its ideas.

I made a language for it too! And this language has a name! It's called ColourTode, because you code it with colours. And it's greatly inspired by Color Code!

Instead of typing out ColourTode, you make it by dragging-and-dropping shapes. I did create a text-based representation of it. But this was just to help me figure out its design.

Your ColourTode gets translated into a much simpler language called Dragon. It's called Dragon because "drag-n-drop" sounds a bit like "dragon-drop" if you say it fast enough. And it's also a little nod to the "dragon book", an infamously tricky instructional manual on how to make languages.

Like before, Dragon is very hard-to-read for humans. But it's not designed for that! It's designed to run as quickly as possible within the CellPond engine.

Another recap:

πŸ‰ You make ColourTode
πŸ‰ ... which becomes Dragon
πŸ‰ ... which controls CellPond

Nogan

Right now, I'm building the Arroost engine for the next video. It's a time-travelling fractal cellular automata for making music.

Like before, you program it by dragging-and-dropping shapes.

And also like before, this gets translated into a simpler language. I've decided to call this simpler language Nogan! Because it's like Dragon, but it involves 'nodes'. Node-gon... Nod-gon... No-gon... Nogan!

But wait! So the engine is Arroost... the machine code is Nogan... What's the third piece?

🌳 You make ____
🌳 ... which becomes Nogan
🌳 ... which controls Arroost

What's the thing you make??

Ok... here's the thing. Arroost isn't just the engine. It's also the language.

🌳 You make Arroost
🌳 ... which becomes Nogan
🌳 ... which controls Arroost
🌳 ... which becomes Nogan
🌳 ... which controls Arroost
🌳 ... which becomes Nogan
🌳 ... which controls Arroost

Does that make sense? This is why I'm so excited about Arroost. It's self-reflective! It can modify itself - all while it's running.

Audio

There's more!

This week, I hooked up audio to the Arroost engine. You can now record with your microphone, and play it back.

You can also trim audio recordings, and change their starting position. This helps to avoid some of the fiddliness of trying to record a sound perfectly on the beat.

Say you're trying to record a clap... Well, clapping involves both of your hands! So it's hard to click the record button, and then immediately clap.

Instead, you can hit the record button, take a second or two to compose yourself, and then clap when you really feel like it. Afterwards, drag it a little bit left to remove the awkward silence at the start.

I've also made sure that I can place custom effects on the audio clips. I might not need them for the video, but it's nice to future-proof it!

I've been pretty amazed by how fun and accessible the world of audio can be! I definitely want to use it in more of my projects.

Strange Loop

There's more!?

This week, I finished and sent off my talk submissions for Strange Loop (a tech conference).

In the end, I submitted a talk for DreamBerd and a talk for Arroost.

My chances of success are quite low, but I'm really pleased that I gave it my best shot and submitted! If I don't get accepted, it's great to have two talks under my belt and ready-to-go. And it was a really helpful excercise for thinking through my projects and what they're for!

Anyway that's definitely enough for this week. Hopefully there'll be even more to report next time! Thank you so much for supporting all of my work, and allowing me to dedicate time to it!! It really means the world to me. But hey, wherever you are in the world, whatever you're doing... I hope you have a great week β­πŸ‰πŸŒ³πŸΈ

Days since tode fell asleep: 119
Days since bot went missing: 84

Comments

Amazing! I hope to go either way, even if I don't get accepted :)

Lu Wilson

Hey! StrangeLoop is in my monkeysphere! I've never been, and still am not traveling, but a friend of mine lives in St. Louis and goes each year and has actually hosted his own side-conference around it. I hope you get accepted! Especially since it's the last one :(

Patrick Kennedy

wise choice! no matter what happens in the world, the TODEPOND TIMES will always come through granting a great week to all who hear it

Lu Wilson

My week starts on Thursday, this is so that I can have a great week for the whole of the week. Otherwise, half of my week would be weaker than the other half of the week. I don't want a weak week, so my week starts on Thursday.

Magnogen


More Creators