MARTY BUROLLA

MIDI for Dummies: Neural DSP Quad Cortex

10/1/2026

MIDI often sounds intimidating to guitarists and bassists, but it does not have to be mysterious. Before attempting anything with MIDI—no matter how simple the task—it helps to build a clear mental model first. Once you grasp a few core concepts, you can control your entire live rig with a single tap.

The most fundamental rule to remember: MIDI carries zero audio waveform data. Instead, MIDI sends real-time digital event instructions telling gear what to do and when to do it.

Electronic Music Devices & Connections

Almost every modern electronic music device supports MIDI. Devices talk to each other using physical cables or wireless connections:

•5-Pin DIN: The traditional large, round connector (about the size of a dime).
•TRS (1/8" or 1/4"): Looks like a standard audio or headphone cable. (Note: Always verify whether your device uses Type-A or Type-B wiring—the Quad Cortex uses standard Type-A).
•USB-C: Modern bi-directional MIDI over computer and mobile device USB.

A device that transmits data uses a MIDI OUT jack. A device receiving data uses MIDI IN. Some gear also features a MIDI THRU jack, which echoes an exact copy of incoming data down the chain to other devices.

The 4 Essential Messages

The standard MIDI protocol contains many message types, with data values ranging from 0 to 127. (Fun fact: The original 1983 Yamaha DX-7 keyboard firmware only transmitted velocity values between 0-100, which made external sound modules sound muted until it was rectified with the DX-7 II!)

For 99% of guitar and bass pedalboard setups, you only need to understand four core messages:

1.Note ON: Tells an instrument or drum machine to trigger a note (pressing lightly corresponds to a velocity of 1; striking hard corresponds to 127).
2.Note OFF: Tells the instrument to stop sounding the note.
3.Program Change (PC): A command that tells hardware or software to switch to a different preset, patch, or bank (e.g., jumping from Clean to Lead).
4.Control Change (CC): A command used to adjust individual parameters or toggle settings without changing the entire preset (e.g., engaging delay, sweeping an expression pedal, or toggling a tuner).

Channels: The Walkie-Talkie Model

A MIDI channel separates different streams of instructions traveling down the exact same cable. Think of it like walkie-talkie radio frequencies: standard MIDI has exactly 16 distinct channels. Even though all digital data flows through one wire, you tune specific pieces of gear to listen only on specific channels. A controller transmitting on Channel 1 will only trigger gear listening on Channel 1.

Real-World Application: Darkglass Controller to Quad Cortex

Now that we have the fundamentals down, we can apply them to connect a Darkglass MIDI controller to a Neural DSP Quad Cortex.

1.Physical Connection: I used a 5-Pin DIN to 1/8" TRS (Type-A) cable connecting the MIDI OUT jack on the Darkglass controller to the MIDI IN jack on the Quad Cortex.
2.Channel Configuration: Using the Darkglass companion software, I set the controller to transmit exclusively on Channel 1, and configured the Quad Cortex MIDI settings to listen on Channel 1.
3.Switch Mapping: The Darkglass controller has 5 footswitches. I configured buttons 1–3 to trigger Program Changes for presets in the bank, button 4 to toggle scenes, and button 5 to toggle the tuner on and off.

The Secret Weapon: Using AI as Your MIDI Manual

Instead of flipping through dense MIDI implementation charts in the user manual, you can simply ask Google Gemini:

“What is the CC message for turning the tuner on and off for the Neural DSP Quad Cortex?”

Gemini provided the exact answer immediately:

•Control Change CC 45 with a value of 127 turns the tuner on.
•Value 0 turns the tuner off.
•Configuring the footswitch to send alternating values of 127 and 0 creates a clean on/off toggle.

Mapping the remaining switches was just as effortless with quick prompts:

“What is the PC MIDI message associated with bank 26 A for the Quad Cortex?”
“Provide a simple list of all CC messages for scene selection on the Quad Cortex.”

Summary

Once you understand the basic mechanics of channels, PC, and CC messages, MIDI stops being intimidating—and by leveraging AI as an interactive reference manual, you can connect and program your electronic music gear in record time.

Clipboard Hijacking: Not a Bug?

9/7/2026

While collaborating on a task via Microsoft Teams, a colleague and I agreed on a plan and wrapped up our chat and started to work on something. Shortly afterward, I copied some text to my clipboard and went to paste it as usual, only to find something unexpected—the pasted text wasn't mine! It looked like material my colleague was handling, and sure enough, it had come straight from his clipboard. He asked, “How did you get a copy of my clipboard?”

Just a couple of days later, the situation flipped, and my colleague ended up with a copy of my clipboard instead. Given that this occurred twice within the same week, I decided to flag the issue to Microsoft. They responded, “Since you could not provide exact replication steps and it only happened twice, this is not a bug.” They essentially brushed it aside.

Even after reporting the issue, the clipboard hijacking persisted around a dozen more times. My colleague and I found ourselves regularly trading the same message: “I got your clipboard again.” Eventually, the problem went away. We never discovered the root cause, nor do we know what ultimately resolved it.

Incidents like that leave me shaking my head in frustration. There was a time when I genuinely loved Microsoft—back in 2002, when they rolled out an early version of .NET, I was thrilled with it, particularly C#. I eagerly followed every annual platform update and couldn't get enough of it. Over time, however, my perspective shifted to that of a seasoned, objective engineer. Looking at .NET today, I see a bloated language tied to an overly complex IDE.

During my eight years living in Austin, I completely avoided Microsoft products. Both work and personal productivity were seamless and effortless. That streak ended when I joined a new company and was surprisingly issued a Windows laptop. I was astonished that organizations were still relying on Windows. Transitioning back to Windows and Outlook after nearly a decade on macOS and Google Workspace felt clunky and unintuitive—a feeling that persists today. While Google mastered ecosystem integration years ago, Microsoft continues to lag behind.

Microsoft played a pivotal role in the early stages of my career, but my passion for the platform has steadily eroded. Today, their overarching strategy feels misaligned with user needs, likely driven by internal corporate priorities. Whenever a Microsoft feedback survey interrupts my daily workflow, I respond with a link to this clip featuring Steve Jobs, alongside the comment, “You make third-rate products.”

Vectors: Humanity’s Past, Present, and Future

8/1/2026

Our ability to cross oceans and navigate skies relies entirely on vector math. A crosswind pushing a ship or airplane off course cannot be calculated with standard arithmetic—it requires vector addition to combine speed and direction into a true heading.

Today, the concept of a vector has expanded from physical navigation to digital intelligence. Vector databases revolutionize modern search by converting unstructured data—text, images, and audio—into high-dimensional numerical embeddings. Within these systems, an item isn't stored as raw text or pixels, but as a list of hundreds or thousands of numbers defining its semantic location. Collectively, these dimensions form a mathematical fingerprint—a single vector pointing to a specific coordinate in feature space. By measuring distances and angles between vectors using metrics like Cosine Similarity or Euclidean Distance, machines can calculate conceptual likeness. At the end of the day, a vector database is simply a table full of arrows.

Consider music discovery in a platform like ROXBOX, a similar-song search doesn't rely on rigid genre tags or keywords. Instead, it compares the acoustic signatures, tempo, mood, and musical style of tracks by calculating the distance between their audio vector embeddings. Beyond media retrieval, these high-dimensional arrows form the memory layer for advanced AI, driving Retrieval-Augmented Generation (RAG) pipelines that ground Large Language Models in real-world knowledge.

The next frontier for vectors lies in quantum computing. Traditional frameworks force computing into discrete binary bits (0 or 1). A qubit, by contrast, is a state vector manipulated through two fundamental principles of quantum mechanics: superposition and entanglement.

The true value of quantum computing lies in modeling complex systems natively rather than through approximation. Just as digital audio sampling (like 44.1 kHz PCM) slices a smooth, continuous sound wave into discrete mathematical snapshots, classical computing forces nature's continuous physics into binary bits. A qubit's state vector evolves continuously across a complex space, allowing quantum algorithms to simulate atomic interactions, molecular structures, and chemical reactions far closer to their true physical reality.

Quantum computers won't replace personal smartphones or laptops, but they will give humanity a computational microscope into the physical world—unlocking breakthroughs in medicine, clean energy, and materials science.

From atmospheric navigation to artificial intelligence and quantum mechanics, vectors remain the mathematical thread binding our understanding of space, data, and reality. Wherever technology heads next, one thing is certain… vectors are pointing us in the right direction.

What’s our vector, Victor?

Will AI Replace Software Engineers?

7/2/2026

No, but it will drastically change the role and scope in which software engineers work. It might even change the title of “software engineer” to something else.

Consider the production of the film Raiders of the Lost Ark. While Steven Spielberg directed the movie, he was not the screenwriter, the story creator, or an actor. Instead, he served as the visionary, orchestrating every element to produce a timeless cinematic masterpiece. He was on the set for most scenes converting the image in his head into a reality that we would all believe.

Software engineering is evolving, transforming the role of a coder into a director of complete software solutions. Modern AI technology can handle the rapid generation of clean, efficient, and reusable code, which allows the engineer to act as a visionary who orchestrates complete systems from start to finish without necessarily writing a single line of code manually. Much like a film director who guides an actor to deliver a better scene, a software engineer steers AI to ensure the final output aligns with the desired direction. Software engineers are now software directors.

Is this evolution justified? Absolutely. Despite various frameworks, constructs and abstractions designed to simplify software for human comprehension, software solutions are still difficult to manage. When you combine this complexity with volatile requirements and high turnover in software ownership, the result is often buggy software—regardless of the talent or experience level of the team. I firmly believe people should not be writing most code without some sort of AI tool.

As AI redefines the software engineer's role, it is inevitable that traditional development workflows must also adapt. I contend that teams should pivot from retroactive code reviews to proactive reviews of AI-generated implementation plans before a single line of code is ever produced. I also believe the hiring paradigm should shift to prioritize individuals capable of crafting precise specifications and architecting comprehensive, full-scale solutions and knowing how to work efficiently with AI tools.

In conclusion, while AI is not eliminating software engineering roles, it is reshaping the industry in ways that were previously beyond my wildest imagination. You can run with the robots, or get run over by the robots.

Three Strikes: Kiro vs Antigravity

6/22/2026

Kiro and Antigravity are two highly similar AI-powered IDEs. To evaluate their performance, I subjected both tools to an identical set of tasks for a comparative analysis. This blog post focuses on the practical user experience rather than a formal, exhaustive benchmark, specifically utilizing Kiro v0.12.333 and Antigravity v2.0.4 for the evaluation.

My daily routine involves maintaining a continuous markdown file that serves as a daily log. This single markdown file now spans two years of data, simply organized by date. Within this log, I record every activity, including interactions with colleagues, relevant JIRA ticket IDs, and key decisions reached during meetings. This essential file is integrated directly into my Antigravity workspace.

Test #1: Intelligent Log Retrieval

While a standard text editor struggles to pull meaningful insights from my extensive daily log, Antigravity handles it effortlessly. I implemented a custom switch called /notes that instructs the AI to search my notes: /notes When was the last time I talked to Andrea?

Antigravity provided an immediate, well-structured answer that identified the precise date, the subject matter, and even referenced previous context from our talks. In contrast, Kiro provided an incorrect date and sloppy formatting. Despite this being a non-coding task, Antigravity proved to be the superior tool.

Test #2: Scripting & Context Awareness

For the second challenge, I requested a script to generate five user account JSON files and a secondary script to email temporary passwords to those users. Both IDEs delivered functional code, but Antigravity demonstrated deeper environmental awareness by flagging that my SSH tunnel was inactive—a detail that would have caused the script to fail upon execution. Antigravity takes the win for its proactive insights.

Test #3: Proactive Implementation

To push the boundaries of context awareness, I inserted a simulated entry into my daily log: "6/22/2026 Met with the marketing team, need to change the website from green to blue." When I entered the simple prompt "Update website" into Antigravity, it instantly produced a complete implementation plan. Kiro, by contrast, failed to connect the dots and simply asked me, “What do you want to do?” Antigravity clearly wins this round.

The Verdict

While both Kiro and Antigravity are capable of completing tasks, Kiro functions primarily as a code generator, whereas Antigravity feels like a genuine partner, no matter what the task, looking out for my best interests and doing the right thing. These “goose bump” moments are what keep me addicted to Antigravity.

How I Use AI

5/10/2026

I’ve been using Google Antigravity everyday since it was first released at the end of 2025. After six months into this new technology, I swung the gavel. This is the year I stop coding things by hand. No more loops, semicolons, classes, interfaces, and constructors for me. At one time I was extremely passionate about that stuff, now it seems pointless.

The real magic lies in the ecosystem's dual-entry point. I treat the Gemini mobile app as my 'Architect-in-Residence.' Because its system instructions are tuned for broad reasoning rather than immediate file manipulation, it’s less likely to get 'tunnel vision' on my current implementation. It’s where I voice-chat through high-level logic and iterate on Mermaid diagrams.

Once the blueprint has been created, I hand it to Antigravity. Unlike the mobile app, Antigravity is grounded in my specific workspace—it understands my repo's unique quirks, can run my terminal, and fix the very bugs it might have just introduced. Using both allows me to cross-examine a solution from two distinct vantage points: pure architectural theory and local technical reality.

My initial design and architecture conversations always start with the Google Pro model. The Pro model is much better at reasoning problems with many pieces than the Gemini Fast model, however the Pro model consumes a lot of tokens. Under the AI Pro plan, I can usually use the Pro model once a week before I run out of tokens. I try to plan my work week around when the Pro model will be available again.

Part of my design process usually involves creating a sequence diagram using the Mermaid markup language. I perform several iterations until “the perfect” sequence diagram is built. Once the diagram is built and I have a solid grasp of the solution, I will switch over to the Gemini fast model for the actual implementation using the sequence diagram as a guide. I will switch back over to the Pro model only when the fast model gets stuck.

To manage the inherent unpredictability of Antigravity, I established a dedicated guidelines and guardrails repository. This repository is programmed to be read and verified by Antigravity whenever I initiate a session with a simple "hi." Whenever Antigravity deviates from the intended path, I update this directory with new rules to ensure Antigravity remains properly aligned.

Writing software using AI is certainly different from the “classic” way of writing software by hand. You definitely have to stay on top of it, test and monitor its changes. I periodically execute git status to see what the AI has changed. Sometimes the AI will break something in your application that is not related to anything you’ve been working on, so regression testing is an absolute must. When I build solutions with AI build sections at a time, testing and documenting things in a ReadMe file and commit code only when things are working correctly. I like to make sure that the code project stays organized, and the interfaces between components are clean and easy to understand.

I tell people to use AI responsibility to grow your understanding in areas that you do not understand. It’s very tempting to throw a blanket over everything and let AI do all the work for you. AI can build things faster than humans can comprehend it. It’s up to us to dedicate the time to understand the moving parts under the hood.

Integrating AI into my software development process has unexpectedly sharpened my verbal communication skills, as the technology demands absolute clarity to be effective. While AI is far from infallible, it is no more flawed than the humans who use it. The combination of AI and cloud computing has democratized innovation. All you need is an idea and one person can create an app that can change the world.