As a software developer and new father, even though I'm lucky to work in a very intellectully rewarding field, I'm starting to feel a net negative feeling about computers. I think back to the excitement of 8-year-old me with a BBC Micro and a BASIC prompt and wonder what I can help my (still very young) child to discover in a few years. Looking at the majority of software experiences available I feel some amount of dispair. Is he going to find satisfaction in a blank screen when contemporary computers are jostling for attention and employing all kinds of dark patterns to subvert mental space? Will be be as excited about putting a pixel on a screen or writing a byte on a disc when there's AR and VR, and who knows what's around the corner?
And then something like this comes along. This is something I can see us exploring together, that rewards creativity and doesn't try to impose anything. I'm so glad there are people making esoteric software with depth. Thank you, hundredrabbits.
(I've not actually tried Orca, but it looks very cool)
Don't lose hope. A lot of us folks got into CS through playing computer games and thinking "how the hell does this even work". My first "programming" experience was modifying the scripts for my Diablo 2 bots.
Imho an interest in figuring stuff out, building things and some capability in abstract thinking are way more important than an interest in programming language at a young age.
Also see Minecraft with redstone circuits. Kids regularly build elaborate contraptions inside the game, ranging up to entire game-within-a-game devices that use moving blocks as "screens" and require hitting in-game buttons to control.
My own daughter is too young, by my nieces danced around screaming when the robot they made spun in a circle, or when they got an LCD to flash 'HELLO'/'GOODBYE'.
Look at antirez for inspiration. He builds and maintains what is, arguably, a complex, relatively boring stack used everywhere for building larger, also complex systems.
He still has time to hack together a fantasy console for his kids, motivated I think, by the same forces that prompted your lament:
Fingers crossed American English won't have completely taken over the world by the time he's learning to spell!
Actually, being a non-American Anglophone country where American English is a vehicle for lots of technology has had some interesting consequences. For example, we have the word "programme" for "schedule", but "program" for "computer instructions". I think there are other examples.
To give a bit of context the primary creator of this project has been essentially living off a sailboat for the past few years and has traveled some 28000km around the world in the process. More info at their site at https://100r.co/ :)
The introduction by Allieway really helped the ORCA software click with my understanding. She explained the grid and the various objects and their composition such that as someone who has never used a live-programming environment everything just made sense.
ORCA looks like a lot of fun now that I understand how things work.
Join in on the official chat at [0]
If you run into performance issue or want to try using an external MIDI source to sync, I have those in my fork at [1], waiting for the maintainer to come back from sailing around Japan to merge them :)
My favorite language feature ever: "Similarly, in Befunge, there is no comment syntax: to embed documentation in the code, the programmer simply routes the control flow around the "comment" area, so that the text in that area is never executed"
Think cellular automatons combined with PD/MaxMSP.
Each letter in the alphabet is a node. The node's inputs/outputs are adjacent grid locations, data typically flows south (outputs are sent down)
State advances on every frame. There are nodes to generate data (counters, timers, etc.), nodes that have state and nodes that are sinks (OSC and MIDI). I had to fiddle around the webkit console to get the midi working with garage band.
He's got a suite of tools: Left, Dotgrid, Ronin, Marabu (text, graphics, super-graphics, audio).
Then a logging/personal wiki setup that I think is fascinating: Nataniev, Horaire, Oscean. Which goes all the way down to his own database formats and time format.
The philosophy and aesthetic of his work is awesome in the completeness of associated art and the connection between the build-up of his own software ecosystem. I've been following xxiivv for a while, and it's always changing and always inspiring. I'd love to hear anyone's thoughts on his system and would be happy to talk more about it!
For example, Orca, featured here, used to be Pico which was a sort of playground environment like Orca but before it was the audio playground it is now. I'm not sure this is the best commit to pick out, but I just wanted to share how active he is on his software projects, and that environments really are a theme for him.
He's built a synthetic human language: Lietal, and his partner has a recipe sharing and cooking exploration site at grimgrains. Which also shares a unique personal aesthetic. They also live on a boat (see Pino).
I am personally most interested in Ronin (under tools). It explains itself as a cross between vim and Photoshop, and though it is in a semi-broken state now, I had a great afternoon hacking on it playing around with pens and magnet mode. I play around a lot with processing and p5, and love to build generative style systems like Casey Reas shows off in his Compendium [1]. I see Ronin as an example next step towards creating an environment in which to mess with these things, rather than my standard of playing around in vim, and running it with each new tweak.
Edit: at a computer now, so links for some of the above:
I've been into livecoding for a while, and never heard of Orca until now. You're right, there is a lot more to Orca when you dive into their site and other projects. I have been playing with living on a boat my whole life, so it was refreshing and inspiring to read their logs.
I am interested in porting Orca-c to Windows by ridding it of Posix dependencies, but I am not sure how much of a task this is going to be. Also, I didn't see any links or dependencies to SuperCollider, Soundpipe, or other sound engine/dsp libs.
EDIT: I now see it is just MIDI output to your MIDI device, so no need for sound engine or DSP lib.
Please note that the editors of this film interviewed lots of prominent women in the Algorave scene, and then mostly cut them out of the edit, soundtrack and credits.
Resident Advisor (who commissioned the film) have since apologised:
I'm a big fan of hundredrabbits or, as they are also known, [rekka and divine](https://hundredrabbits.itch.io/), and my Playnite Library has a section called "Gamedev Tools" that is filled with all the Borgesian wonders that they have made, including Orca. To find out more about their awesome stuff, like how the freaking built many of these tools while on the ocean, literally sailing around the world, [here's their site!](https://100r.co/)
I'll let you explore on your own, but I will offer here some links to my favorites that they have made. (Including more music related apps for those who like Orca!)
FORMAT
------
>Itch.io or download page, and...
>Short description, and git instructions...
>`git clone`/`npm install` if available.
I'm so sorry about this formatting. It's my first comment and I couldn't find any syntax rules so I just went standard markdown. Not a good idea. In any case, I've tried to edit it but it won't allow me to make changes, and I apologize for this. I was not hasty, and this took me an hour to write up.
I guess it doesn't matter that much, but the author may want to rename. Orca as a name suffers from a collision with the relatively well-known windows installer table editor.
I don’t think that’s a fruitful mindset for a thing like this. If you look at some of the tools (and games) by the same developer, they are all unapologetic, highly aesthetic experiences that often hover between profound genius and half finished art experiment.
This isn't really that kind of piece of software. It's a work of art, but more relevantly it's meant to be a conspicuous component of other people's art. That means an air of mystique is a selling point.
It's weird, it's confusing, and it doesn't care about you — but open it up and play around and you might find something worthy of delight.
I mostly agree; ideally there would be a prominent link to a 30 second video that does a very quick demonstration of how/why this works. This is an example where video is just way better than text for introducing a concept.
I get that not every repo is going to have a nice readme, but it definitely would be nice here.
A link to an introductory video is the third sentence in the readme :)
"Each letter of the alphabet is an operation, lowercase letters operate on bang(*), uppercase letters operate each frame. Have a look at some project created with #ORCΛ, or some example files. Here's an introduction video. "
I agree. I have never used an audio programmer and don't really know what it's for. Even after reading the README and looking at a video on Twitter, I still don't know what this program does.
What is it with web project in particular writing "OSX"? Even the C port, linked from the JS repo, writes correctly "macOS". How can web projects be taken seriously when they won't even take the platforms they supposedly support seriously?
I'm not generalizing just because. The overwhelming majority of "npm projects" I visit write "OSX".
> How can web projects be taken seriously when they won't even take the platforms they supposedly support seriously?
That's a pretty extreme reaction to someone not capitalizing the name correctly. Don't forget that they changed the name in the last few years, and not everyone is in the Apple orbit enough to absorb all of those shifts in branding.
And then something like this comes along. This is something I can see us exploring together, that rewards creativity and doesn't try to impose anything. I'm so glad there are people making esoteric software with depth. Thank you, hundredrabbits.
(I've not actually tried Orca, but it looks very cool)