As The Washington Post puts it: "We face a wartime supply shortage. Where is Trump’s wartime response?":

"...if the pandemic lasts a year, 3.5 billion respirator masks may be necessary... The United States has about 12 million N95 respirators and 30 million surgical masks... Already, at major hospitals in Seattle and the District, mask shortages have become so acute that doctors and patients are being asked to reuse them...

Shortages are also reported in the chemicals known as reagents for virus test kits... Also running out are the swabs needed to carry out the tests....

President Trump suggested in a news conference this week that the shortages are a problem for the governors to deal with. 'The federal government's not supposed to be out there buying vast amounts of items and then shipping,' he said. 'You know, we're not a shipping clerk.'"


Sequencer & synthesizer — Android — C++, Android NDK

Syntheogen™ is a step sequencer and synthesizer I developed for Android phones and tablets:

Syntheogen screen shots
LOOP STEPS dialog TRACK EFFECTS dialog TRIM CLIP dialog SONG dialog

I started this project because I thought it would be really fun. Looking back, though, it was just a pain in the ass. Android is a frustrating platform, and some of my design choices made the project harder than it needed to be. The app turned out well — it's really fast, the sound quality is good, and there are some interesting UI features — but I have no desire to work on it again. Maybe I will open-source it some day.

Anyway, Syntheogen was mostly written with C++ and the Android NDK. Production builds targeted Android, but the app also runs on Windows, which I used for development and testing. It was extra work to make everything cross-platform, but it saved a lot of time.

The interface was built on a custom GUI framework. The sequencing and synthesis engines are also custom designs, and the sequencer offers features not found in other music apps: measures can be sized and divided almost arbitrarily, patterns of different length can be mixed in the same loop, and notes can be tied to produce legato phrases of any length.

To learn more, visit the Syntheogen site or watch the Quick Start video.