TabArea.net Version 2.0 – With Advanced Search!

tabarea.net

tabarea.net/search

github.com/jonlervold/tabarea

TabArea.net has been updated! Over the last few weeks I have spent pretty much all of my free time working on upgrading the site. I am very pleased with the results and hope that this provides utility to those who, like me, still use TabIt.

What’s changed?

  • An advanced search function has been added to help find Tabs, Users, and Folders. Items may be searched by many parameters. Parameters may be stacked to run advanced queries.
  • The broken search bars on the left side of every page have been replaced with new, functional search bars.
  • The other broken functions that were present on the original mirror (“show album titles” buttons, download zip links, login pages, ratings pages) have been removed.
  • All links to that route to TabIt.net now open in new windows/tabs. The “Home” link in the header has been changed to a pair of TabArea Home and a TabIt Home links.

Some background and technical info from the GitHub Readme for the project:

TabArea.net was created by using WGET to scrape TabIt.net's Tablature Area.

WGET simply starts on whatever link you first give it, converts it to a static HTML file, and adds every link present on that page to a list. It repeats this process for every link on the list until it has found every link on the entire website.

For the Tab Area, this process resulted in ~350,000 HTML files, along with the ~44,000 TBT files.

Turning a PHP-based site into a static HTML site can break a lot of features. The most sorely-missed functionality of the scraped version was the ability to search. As one would expect, it is much more difficult to find anything on the site without it.

In early 2023, I learned how to use Puppeteer and thought it would be a perfect tool to scrape TabArea.net, examine each static HTML file, and create a proper database of all the information present on the site. Once that would be complete, I could build a search function. After announcing these plans, TabIt compatriot Ryan Leber let me know that he had already completed this task with an app he built in Python! He sent me the complete SQL dump and it was exactly what I was planning on creating. That part of the work was already done! Score. Thanks Leber.

Once the database was in place, there was still a lot of work to be done.

Frontend
The TabArea Advanced Search frontend is a React App. This element makes up the majority of the repo.

The Advanced Search page is intended to maintain TabIt's classic Web 1.0 aesthetic. I wanted it look like it had always been a part of the site, despite being powered by React. Since the files this app searches can only be used on a desktop computer, it is designed primarily for use on PC. That said, it should still be entirely usable on mobile.

Backend
The TabArea Advanced Search backend is written in PHP. These files are in the php_backend folder.

Other
The python_utils folder contains two scripts. The TabArea update plan involved removing various site functions that were no longer operational after the site had been converted to static HTML files. With these broken elements removed, hundreds of thousands of the HTML files serve absolutely no purpose.

The first script deletes all the unnecessary files. This was a necessity because my OS gets very unhappy if I try to manipulate a folder of that size using normal methods. It makes sense to run this script first so that the second script doesn't waste time processing files that will just end up deleted.

The second script is a find and replace function. The update involved changing identical HTML elements of the remaining 100k files. This removes the broken functions, modifies the header, and adds the new search functions to the sidebar. Imagining changing that many files manually makes my head hurt.

[syzygy] – [escape]

[syzygy] – [escape]

syzygybnr.bandcamp.com

It is with great excitement that I present my latest work, [escape]!

This album is an exploration of the concept of escaping. Escaping difficult personal circumstances, escaping reality, escaping self-imposed limitations, escaping wider social disaster, etc.

On a lighter note, it also explores the concept of “escaping” the confines of the predominant musical tuning system in the world today.

Like my previous [syzygy] releases [xendeavor one], [ouroboros], and [loiterer], my Yaeth album MMXX, Melopoeia’s ongoing Valaquenta, and my web app Color Horizons, this album explores microtonality, the spaces between the notes found in 12 Tone Equal Temperament (also known as 12 Equal Divisions of the Octave [also known as 12edo]). This release focuses on one particular alternative system, 10 Equal Divisions of the Octave (10edo).

Earlier on in my microtonal experimentation, I commissioned a custom 24edo neck from Metatonal Music. I thought it would be a great way to dip my toes into alternate EDOs — 24edo contains all the normal 12edo notes, plus every pitch exactly in between. I was very happy with the craftsmanship of the custom neck, but I quickly discovered that I found the guitar was pretty difficult to play due to having so many frets to keep in mind (some people can play 31edo guitars with precision, I don’t know how they do it!) Also, most of the new extra notes create rather dissonant harmonies. I was struggling to do anything I found worthwhile with it.

Later, I made [xendeavor one], which had one song in 10edo, The Katechon. While composing that song, I was surprised by how consonant I found the tuning. In my experience, when hearing a new alternative system to 12edo, there’s always an adjustment period — initially the tuning sounds strange, but after listening to it for a period of time it can end up sounding as “normal” as 12edo… just… different. I found my ears normalized 10edo very quickly compared to some other tunings. Later, I made MMXX, where I experimented with 10edo further on the song Rise. Again I was particularly intrigued by it as a tuning.

After much consideration, I decided that I wanted to try 10edo on guitar. Firstly, I knew at this point that I loved the sound that 10edo offers. Secondly, where 24edo is more complex due to having twice as many notes, trying 10edo would go the other direction — in theory, it would be simpler to play than 12edo, due to having fewer frets to keep in mind. Thirdly, while playing my 24edo guitar, I found I was always still mentally locked into 12edo thinking due to the fact that all of the 12edo notes are still present. 10edo shares only one interval with 12edo, the 600 cent tritone (which is present in all even-numbered EDOs). Other than that, it offers entirely different potential harmony. (Though due to having 2 fewer frets, it offers a more limited palette of scales with which to experiment…)

Once again, I began the process of getting a custom neck fabricated. As with my 24edo guitar, I was highly pleased with the result. The big difference was that with this guitar, I was immediately able to pick it up and play things that I found usable/worthwhile. The songs on [escape] are each the result of picking a particular mode of a 10edo scale and seeing what comes naturally from exploring it on this guitar.

One interesting side effect of playing the 10edo guitar for a while is that I now find it much easier to play my 24edo guitar than I did before. Where I used to play the 24edo guitar and get stuck thinking in terms of 12edo with extra notes, playing the 10edo guitar helped break the habits built up by more than 2 decades of 12edo guitar thinking. Now that I can comfortably play the 24edo guitar, there will definitely be some quarter-tone work coming in the future that will feature it.

Other Notes:

This is my first complete solo release in over 2 years. Between the pandemic, having a second baby in our family, and spending every single personal free moment I had for a year on a career transition, I had very little time or energy left to produce musical projects. The effects of the pandemic on daily life have lessened, our baby is growing up, and I’ve settled in comfortably in my new line of work. This has left me with much more time and energy to make music. But once I had free time again, I found my musical momentum was low. I have had 6 projects in various stages of completion that have built up (the oldest of which was begun in 2016), but I couldn’t bring myself to actually open Pro Tools and do any work on any of them. This album is an active refreshment of my creative process. I used it to rebuild my momentum. Now that this is done, I am finding much joy in picking those other sessions back up. I look forward to sharing each one of them as they reach completion.

On another note, this is the first release on which I felt inspired to do fully sung vocals since my 2014 math rock offering, Vanishings. For many years I had only felt inspired to make instrumental music or music with harsh vocals… but I’ve always loved singing. Now that I’ve removed that mental block I will definitely be releasing more music with sung vocals as time moves forward. It was especially fun to sing on something microtonal! I’ve wanted to try that since first experimenting with alternative tuning systems.

Thanks to Ron Sword of Metatonal Music for the alternate-EDO neck fabrication, installation, and setup.

Thanks to Jack Shirley of The Atomic Garden for his mastering work on this EP.

Thank you to my wife Laura for the cover art.

Gapless w/ Lyrics on YouTube:

Stream or Download/Purchase (name-your-price) on Bandcamp:

Talk2AI

https://jonlervold.com/talk2ai

Like many others, I’ve been having fun experimenting with OpenAI’s Playground for the last few weeks. It’s amazing how far this type of technology has come in recent years, and of course with more time it will only get better.

I found the Playground interface they provide a bit clunky for my personal use case, so I used their API to create Talk2AI, a front end more suited to my wishes. Talk2AI is an alternate interface for creating prompts and receiving responses to those prompts from GPT-3.

Here’s one of my favorite AI responses generated through this tool so far:

Prompt

Write a story about a man named Artie who runs out of frozen chicken pot pies, his favorite dish, and makes a trip to the store to purchase more, only to discover that it is the end of the world.

Response

Artie had been looking forward to his chicken pot pie all day. He had taken it out of the freezer to thaw in the morning, and by the time evening rolled around, he was practically drooling over the thought of sinking his teeth into the savory, flaky crust. Now, it was finally time to enjoy his delicious dinner. He opened the refrigerator door and reached for his pie, but it was gone! Someone had eaten it! Artie was devastated. With a growling stomach, he realized he would have to make a trip to the store to restock his supply.

Artie was in for a big surprise when he went to the store to buy his favorite frozen chicken pot pies. Instead of the familiar sights and sounds of the grocery store, he was greeted by silence. He walked the aisles, but there was not a soul in sight. The shelves were empty. It was as if the store had been abandoned in a hurry. Suddenly, he heard a strange noise overhead. He looked up to see a spaceship hovering above the store.

Artie was pleased to find that the store still had chicken pot pies in the freezer section. He was able to take as many as he wanted and he went home with a big smile on his face, knowing that even though he was the last man on Earth, he had a stockpile of chicken pot pies.

Advantages this interface has over the Playground:

  1. History of the user’s entries throughout the session, including the settings used for that entry, and a delete button for removing unwanted responses.
  2. For those who go beyond the OpenAI free trial: a max cost calculator based on input settings and an estimated cost calculator for each entry based on the return. The history logs these costs with each entry as well.
  3. Simple exports of individual entries or the entire session history to text files.
  4. Easy continuation of previous entries without needing to copy/paste.
  5. Significantly easier use on mobile!

Steps for Use

Usage requires an account with OpenAI. One can be created on their site. https://openai.com/api/

  1. Sign in to https://openai.com/api/.
  2. Click the colored circle on the top right of the page with the first letter of your name.
  3. In the dropdown menu, click “View API Keys.”
  4. On this page, under the “Secret Key” header, click “copy.”
  5. Paste this key into the “API Key” input field.
  6. Enter something into the input box and click “Submit.”

More information about creating prompts for the AI can be found in the OpenAI documentation. https://beta.openai.com/docs/

Source code for the project can be found on GitHub.

The Cedric Bixler-Zavala Lyrics Generator

https://jonlervold.com/the-cedric-bixler-zavala-lyrics-generator/

The Cedric Bixler-Zavala Lyrics Generator is a fun little app that analyzes the word combinations present in Bixler-Zavala’s body of work and attempts to piece together new lines using a Markov chain algorithm. Each phrase generated lands somewhere on a spectrum between excellent surreal imagery and utterly broken nonsense.

The app was originally written in Python with a PySimpleGUI user interface, but recently I decided to take a little time to improve it by turning it into a React app. The Markov chain algorithm portion remains a Python script and is now run via AWS’s serverless Lambda architecture.

Anyone who knows me personally already knows this, but this program is intended as a tribute and should not be interpreted as mockery. Cedric Bixler-Zavala and the projects he has been a part of, particularly The Mars Volta, are a major influence on my own artistic pursuits.

Source code for the project can be found on GitHub.

Toilet ov Hell Premiere & Interview – Melopoeia – “Of the Valar, Part I: Seven and Seven”

ofvalar

Track Premiere and Interview: Melopoeia – “Of the Valar, Part I: Seven and Seven”

Dave Tremblay, Melopœia’s principle songwriter, describes his technique as a kind of translation of the text into music using a self-devised system. This method of songwriting is as literal as it sounds—J.R.R. Tolkien is credited as composer here, with Melopœia using close reading of The Silmarillion to go word by word through Tolkien’s densest book. The songwriting is less granular than it was on the band’s last release, Ainulindalë, which was crafted electronically going letter by letter—the band notes that while Ainulindalë could be listened to alongside the text, Valaquenta is much more of a palimpsest, with words translating as tone rows over the top of the original writing. This gives Valaquenta a grander aspect than its predecessor and makes for a more immediate listen…

Full article here.

Thank you Toilet ov Hell for doing a proper premiere for part of this massive project for us. This article also has a number of interview questions answered by Dave and Brian, for anyone interested in exactly what we are doing with this project.

Color Horizons

ogimage

https://colorhorizons.com

Color Horizons is an app I have dreamed of creating for a few years now. It is built with React. From the General section of the About page:

Color Horizons is a microtonal-capable scale generator and synthesizer.

It is designed specifically to enable the user to instantly calculate how the notes of all modes of any scale that it can generate compare against 12 tone equal temperament, the harmonic series, and more.

The user can immediately play these scales in the browser using the QWERTY keyboard or their device’s touchscreen and then can export those scales as .scl files that can be used to retune other synthesizers.

From the Mission / Intentions section of the About page:

Color Horizons is developed by Jon Lervold.

I sincerely believe that microtonality is not just a musical niche for iconoclasts, but that in time it will someday become the next frontier of popular music.

There is an incredible wealth of musical expression that is inaccessible utilizing only 12 Tone Equal Temperament (12TET). Technology has reached a point where any musical tuning system imaginable can be tested instantly. The problem now is not necessarily the construction of microtonal-capable instruments, but the lack of proliferation of this knowledge. Whatever the reasons may be, at the moment this field remains esoteric. Many newcomers find it difficult to even know where to begin.

My goal with this application is to become an active participant in spreading knowledge of these fruitful tonal possibilities to other musicians. Color Horizons is a tool for helping explore musical realms near and far from 12TET. What tonal colors are available off in the distance? Let’s find out.

It is my deep wish that this tool can help inspire and facilitate musical creation!

Microtonal music is certainly currently a niche field, so Color Horizons is intended to be an educational resource as well. If you click the “More Info” button on the top right, and then click “Key Concepts”, there is a writeup that discusses everything necessary to understand what is going on with the app. Additionally, each scale generation method has an “info” button next to it that will show how that specific tool operates.

Color Horizons is a project that I will continue to actively develop as I learn more about microtonal music and tuning theory. Plans for later versions include non-octave scale generation methods and graphical representations of each scale and its modes.

Tant qu’il y aura des étoiles – Usilies premieres

desetoiles

Tant qu’il y aura des étoiles – Usilies premieres

desetoiles.bandcamp.com

This is easily the most mysterious release that I’ve ever been a part of. I played the drums. Beyond that I know very little! I’m not even sure who the other musicians who played on it are. I don’t know if they know who I am. My parts were recorded nearly 4 years ago over very bare-bones versions of the songs, and I was quite pleased when the finished version unexpectedly appeared in my inbox today.

2 tracks (11 minutes) of black / math / prog metal. Drums tracked at Big Name.

Indonesian’s Most Wanted: A God or an Other – Chaotic Symbiosis Blurb

indonesians

Indonesian’s Most Wanted – 4 Metal Albums Must Be Listened by Metal Lovers and Hardliners

This review was originally written in Indonesian. Via Google Translate:

Actually, whether we realize it or not, as the years go by, most of us are more interested in exploring the album or music released by the latest year. Supported by the proliferation of review articles, recommendations, and music promotion channels that are more inclined to recommend the latest albums, indirectly focusing our attention entirely on the latest album catalogs. I think our space and time are getting narrower to go back to digging for old releases that haven’t been on our personal playlists at all. Especially when we feel comfortable and don’t want to leave the music that has been our favorite for a long time. It feels like we have to think twice about whether we are willing to leave our comfort zone for uncertainty.

I remember very well that ‘A God or an Other’ was one of the bands that became my first practice reviewing an album. Written on a small notepad, I wrote that their ‘post-black metal’ tagline should be removed from the metal archives page. Until now, when I re-listen to this album, that opinion has not changed at all. Since countless copycats of Deafheaven and Alcest have appeared, blackgaze is often associated with the texture of black metal music but has a melancholy and gray feel to the extraction of shoegaze musical elements.

Highlighted moments in this album also seem to be divided into 2, sometimes the texture of the music is more atmospheric, as if acting as a storyteller, who narrates expressions and emotions through musical textures. On the other hand, the musical elements sound more witty, and brutal as if the recipient of the story receives the emotional consequences of turmoil when listening to a terrible story. Unfortunately, ‘Chaotic Symbiosis’ became the last chapter of this Seattle band. Because ‘A God or an Other’ disbanded in the same year, when this album was released.