FOSSPicks
norns
In Norse mythology, the Norns are female entities who control the destinies of gods and men, and their association with fate and destiny is perhaps why this project shares the same name. Norns is a completely open platform for music performance and abstract audio composition that also teaches you how to code. It's open source and built around Raspberry Pi hardware. While there's a commercial version that you can spend a lot of money on, there are affordable shields for your own Raspberry Pi and circuits you can easily build yourself. One of them is even called Fates. This hardware takes a specific form factor – an OLED display, three switches, and three rotary controllers, all running on a specific stack of software that provides audio input and output, MIDI and OSC communication, an audio mixer, and built-in effects, as well as a web-based coding, library, and development platform.
The norns platform is difficult to summarize, because it isn't a single thing. If you run the software, you can effortlessly install and run a huge variety of open source synths, sound effects, loopers, sequencers, and controllers, all built around a beautifully minimal input aesthetic. Many replicate the functionality of specific Eurorack modules, or previously bespoke software, such as MLR, which live samples and sequences loops of audio. If you own, or have built, accompanying grids and rotary controllers, these can often be used to expand on the small screen and limited input, and the project is expanding to include generic Linux platforms and Raspbian-based installations. You can do all this without touching the code, and many people do.
While the project itself was initiated and designed primarily by Brian Crabtree of Monome fame (also known as tehn), it's the community that has shaped and expanded upon the original idea to create the current flourishing ecosystem. This community, known as "lines," can be found at https://llllllll.co, and it's here that many of the scripts, engines, and experiments that run on norns originate. These are installed and run on your hardware using a built-in package manager called Maiden that also acts as an IDE for modifying these scripts or creating your own. There's a brilliant onboarding guide that steps you through coding your own projects, and the hardware itself hosts the interactive shell and editing environment where you can create projects, edit those already installed, and see and hear the effects instantly. The default scripting engine is Lua, which is both easy to get started with and ideal for processing audio and music-related data. The online editor has syntax highlighting and an interactive interpreter so you can experiment with the API, which is both well designed and well documented.
The background DSP engine is written using SuperCollider. Because the entire stack is modular, you can swap-out one module for another, or swap a module with your own libraries and DSP code. There are polyphonic and mono synth engines, samplers, and compressors, all of which can be imported into your own project with just a line or two of code. You can then easily write your own routines for sequencing notes, or for setting your own scales and intervals or hardware modifier. It's an amazing system that offers unlimited possibilities and almost singlehandedly proves that Linux is finally good for music production.
Project Website
https://github.com/monome/norns
Console space shooter
Terminal Phase
Sometimes, the simplest games are still the best. A great example of this is Scramble, which is an early arcade classic developed by Konami way back in 1981. It was a shoot-em-up, where the player flew across a horizontal landscape that morphed from a city, to mountains, and back through a cave system. You needed to shoot the baddies whilst simultaneously dropping bombs on the land-based threats and collecting fuel to keep your ship flying. The best part was when you were in the cave system and you needed to move up and down, left and right, at the same time. The arcade version wasn't simple, for the time, but its gameplay successfully made it to 8-bit home computers almost untouched. Most impressive was the LCD handheld version of the game. At a time when Nintendo was creating LCD games with fixed shapes and configurations for each level, Scramble's scrolling landscape was built from a never-ending grid that effectively gave you an infinite amount of variety, and an infinite challenge.
If it's the right game, simple playability can also survive a move to the command line. Ascii Patrol is a brilliant example because it successfully recreates the arcade classic Moon Patrol in your terminal with simple character-based graphics. Terminal Phase has just become another great example, with a gameplay mechanic that's best described as a blend between Galaxians and Scramble. In true command-line style, your spacecraft is nothing more than the greater-than symbol, and you fly across a landscape made from hashes – much like the squares in that early LCD interpretation of Scramble. There are even the same tunnels, although the enemies seem to move considerably faster than the original. Either way, it's addictive, and a great way of taking a break from your normal terminal processes without having to switch context to the desktop.
Project Website
https://gitlab.com/dustyweb/terminal-phase
Buy this article as PDF
(incl. VAT)