REST From the Bottom Up

The RESTful API has a funny place in the software development world: it’s widely regarded as the best general-purpose pattern for building web application APIs, and yet it’s also nebulous enough of a concept to cause endless disagreements within teams over exactly how to implement one.

Do I make my endpoint /company/123/ or /companies/123/? How about /companies/123/locations/ vs /locations/?company=123 ? How do I handle versioning the API? Why shouldn’t I send a POST request to trigger an action on the server? If a backend task can take many seconds to process, how do I represent that in the API?

(more…)

friz and the Illusion of Life

friz—a Flexible Animation Controller for JUCE

As is often the case, I found myself working on a personal project and had some UI elements that really wanted to have some life to them on the screen.

I tucked into the JUCE documentation expecting to see something that I could use to easily add some personality to the interface, and…didn’t find what I was looking for. There’s a ComponentAnimator class that supports moving a single component from one set of coordinates/bounds to another linearly, and also modify the component’s alpha value to have it fade in or out.

I was looking for something…more expressive.

(more…)

We Code the “Impossible”—Not the Impossible

Image of an optical paradox, the "Penrose Triangle"

As you can see on the Art+Logic website, our slogan is

Coding the “impossible.”®

This refers to the fact that in many cases, clients have come to Art+Logic with a problem that they were told was “impossible” to solve, and we delivered. This is an honest claim. It does not mean that we code what we believe to be impossible. This would be a dishonest claim.

At some custom software firms, it is their primary goal to make a sale—any sale—without concern for how the project will be accomplished. There are software salespeople who will promise the moon and stars in three months for a fixed cost of $10,000. In fairness to the developers at those firms, the salespeople do not involve them in the sales process, so they are usually the first to be surprised, long before the client is disappointed. Many software horror stories going back decades start in such ways.

(more…)

Art+Logic Talks MIDI 2.0

MIDI 2.0

For the past year or so, I’ve been working as one of a group of developers within the Protocol Working Group of the MIDI Manufacturers Association to create prototype tools and applications that implement the upcoming MIDI 2.0 specification as it’s worked its way through many drafts to the point where it’s now ready for the MMA and AMEI, their Japanese counterpart, to vote on its adoption as an official standard.

I’m looking forward to presenting more information on what’s new for musicians and developers in the new standard, both here on the A+L blog and out in the real world.

(more…)

Unlocking the Web Audio API

“It’s going to be the coolest thing ever.”

You know enough by now to be doubtful when a client makes this statement, but you’re willing to entertain the idea that this may not, in fact, be a tragedy in the making.

“It’s going to be a music machine – like, full keyboard and everything – but each of the keys is going to be mapped to – wait for it – cat sounds! We’ll call it the ‘Meowsic Machine’! Oh, and we need it to be accessible to everyone via the Web. Which is easy, right?

You are reminded that the universe can be a cruel place.

It’s now your job to make this happen. Over the course of a few posts, we’re going to look at the Web Audio API, and build the Meowsic Machine together. In the process, we’ll also enjoy a dalliance with Vue.js, and dip our toes into the deep-end with Web Workers. Today, we take the first step in this historic journey—convincing the browser to actually let us play sounds.

(more…)

May is MIDI Month!

MIDI logo

The MIDI Association has announced the plans for May Is MIDI Month 2019.

The MIDI Association, the free community for MIDI users, is launching the second annual May is MIDI Month membership and donation drive.

You can join The MIDI Association here.

May is MIDI Month is a celebration of MIDI for the entire MIDI community: companies making MIDI products, the press/media, and musicians and artists who regularly use MIDI. MIDI connects products from different companies together and also connects creative people from around the world. (more…)