Fluidics 1.1: The Animation Update

The first major update to Fluidics is now available on the App Store!1 In all honesty, it was largely a ‘bug fixes and performance improvements’ update, but I’ve always hated when app updates list that, so I made sure to include a couple user-facing features so there’d be something fun to talk about, at least.
In this case, those features were animations. The most notable is the background – rather than being drawn once, the ‘water’ in the background is now animated, which I think makes the visual effect much nicer overall. Swiping between the three main pages of the app is also much smoother now; instead of a single ‘swipe’ animation being triggered by any swipe, it directly responds to your swipe, so you can change your mind about which direction to swipe halfway through, and it feels more like you’re moving things around, rather than switching pages.2
The big changes, though, are largely invisible; a whole lot of work on the internals to allow for future features I’m planning.3 The gist of it is that a lot of the internals of the app are now a separate library, which means I can share code between the widget and the main app without needing to copy-and-paste all the changes I make in one place to the other.
Past that, there were a couple little tweaks — the algorithm that calculates the water goal is a bit less aggressive with the way it handles workout time, and there’s now a little “this isn’t a doctor” disclaimer in the Settings page that I put there because the lawyer I don’t have advised that I do that.
And, the bit that turned into more of a project than I thought: VoiceOver support. VoiceOver, for those that don’t know, is one of the core accessibility features of iOS; when enabled, it basically reads the contents of the screen to the user, making it possible for visually-impaired people to use iOS. By default, any app built on UIKit has some support for VoiceOver, but the further you go from the default controls, the more broken that’ll get. The way Fluidics works, it was super broken; technically useable, but downright painful to do. After a day or two of vigorous swearing and arguing with the Accessibility framework, I’m proud to say that Fluidics is now VoiceOver-compatible.
If you’ve already got Fluidics on your phone, it’s a free update from the App Store.4 If not, the whole app is a free download from the App Store, and I’m hoping that you’ll enjoy using it. Leave a review or whatever; I’m trying not to be pushy about that.
Oh, and I’m in the process of updating the app’s website; I got such a good URL for it that I want it to look good to match.

  1. There was a bugfix update earlier, version 1.0.1, but that’s not at all exciting, so I didn’t bother writing anything about it. 
  2. If you’re curious, this involved rebuilding the entire interface, from three separate pages that’re transitioned between to a single page that’s embedded in a scroll view. 
  3. And no, I won’t be telling anybody what those are just yet; I don’t want to promise anything before I know for sure it’ll be possible. 
  4. In fact, it may have already been automatically updated — the easiest way to tell is to open the app and see if the water is moving or not. 

Playlist of the Month: June 2018

It’s been a busy month; if I haven’t mentioned Toggl before, let me mention it now, as a convenient way to make charts demonstrating that you’re overworking yourself.
Silence (feat. Khalid) – Marshmello
Punching in a Dream (Stripped) – The Naked and Famous
Free – Kidswaste
Homegrown – Haux
How It Is – Majik
The Weight – Amber Run
Beretta Lake (Listen2Liri Remix) [feat. SAINt JHN] – Teflon Sega
Bloodsport – Raleigh Ritchie
Fast Car – Tracy Chapman
Home – Blue October
22 (OVER S∞∞N) – Bon Iver
One Track Mind (feat. A$AP Rocky) – Thirty Seconds to Mars
L’aérogramme de Los Angeles – Woodkid & Louis Garrel1
Headlights (feat. Ilsey) – Robin Schulz
Hail To the Victor – Thirty Seconds to Mars2
Another Mouth to Feed – Rebecca McDade
Amen (LCV Choir) – Amber Run
Heaven is a Place – Amber Run
Technicolour Beat – Oh Wonder
Faux – Ed Tullett & Novo Amor
Running Up That Hill – Track & Field3
Better – SYML
Big Jet Plane – Angus & Julia Stone
Pompeii (Acoustic) – Bastille
Touch – Haux
Atlas: Four – Sleeping At Last
Alone – Haux
Desert Rose – Jay Brannan
Zombie – Jay Brannan
Callow – Novo Amor
Really Gone – CHVRCHES
My Enemy (feat. Matt Berninger) – CHVRCHES
Sorry – Aquilo
Miracle – CHVRCHES
Never Say Die – CHVRCHES
Thin – Aquilo
drugs – EDEN5
Heaven/Hell – CHVRCHES
Ricochet – Haux
Hurt for Me – SYML
Lucid Dream – Owl City
More Colors (feat. Chelsea Cutler) – Kidswaste
Silhouette – Aquilo6
The 5th of July – Owl City
Where’s My Love – SYML

  1. I was hoping “L’aérogramme” translated at something neat, but no, it means exactly what it looks like, “aerogram” 
  2. I keep saying “hail to the victim” when I’m singing along to this one, which kinda makes me hope Weird Al does that version someday 
  3. I’m probably due to rewatch some Warehouse 13 sometime soon, aren’t I? 
  4. Honestly, this song is just kinda hilarious to me. Listen to the lyrics, it’s brutal. 
  5. “‘cause I’m a f*ckin’ mess inside” and my Millenial Humor makes me mutter “that’s some hashtag relatable content” 
  6. I’m gonna go ahead and call this one my favorite from this month, I just really like it. 

Open-sourcing Variations

Now that the whole concert is over, and I’ve finished going through approximately all of the WWDC sessions, I’ve decided that Variations won’t be receiving any further development — it wasn’t going to be enough of a priority for me to do it any justice, and I’d hate to half-ass it.1 The app will remain on the App Store, for now, though if it breaks in future iOS versions, I’ll probably pull it entirely. Instead, I’m releasing the source code, as-is; if you’d like to look through it, it’s right here.
I had fun building it, and I like to think that it does some interesting things with the implementations under the hood, so hopefully somebody can find some use from it.

  1. This is, hopefully, a hint about some of my other projects that are a higher priority; announcements of those will, of course, show up on this here blog. 

Playlist of the Month: May 2018

Slightly delayed, as I wanted to let my capstone posts finish up before I posted this.
Silence (feat. Khalid) – Marshmello
Punching in a Dream (Stripped) – The Naked and Famous
Free – Kidswaste
I Like Me Better – Lauv
Homegrown – Haux
Love Lies – Khalid & Normani
Save Me – Majik
How It Is – Majik
Kings and Queens and Vagabonds – Ellem
The Weight – Amber Run
Beretta Lake (Listen2Liri Remix) [feat. SAINt JHN] – Teflon Sega
Bloodsport – Raleigh Ritchie
Fast Car – Tracy Chapman
Home – Blue October
22 (OVER S∞∞N) – Bon Iver
Live Like a Dream – Thirty Seconds to Mars
One Track Mind (feat. A$AP Rocky) – Thirty Seconds to Mars
Rider – Thirty Seconds to Mars
Stay – Pentatonix
L’aérogramme de Los Angeles – Woodkid & Louis Garrel
Dawn Will Rise – Thirty Seconds to Mars
New Rules x Are You That Somebody? – Pentatonix
Despacito x Shape Of You – Pentatonix
Headlights (feat. Ilsey) – Robin Schulz1
Perfect – Pentatonix
Say Love – James TW
Hail To the Victor – Thirty Seconds to Mars2
Another Mouth to Feed – Rebecca McDade3
Love Is Madness (feat. Halsey) – Thirty Seconds to Mars
Amen (LCV Choir) – Amber Run
Issues – Pentatonix
Havana – Pentatonix
Great Wide Open – Thirty Seconds to Mars
Heaven is a Place – Amber Run4
Someone To You – BANNERS
All We Do – Oh Wonder
Technicolour Beat – Oh Wonder5
Faux – Ed Tullett & Novo Amor
Running Up That Hill – Track & Field

  1. The album art on this one is hilariously bad 
  2. Catchiest one off the new album, if I do say so myself 
  3. The guitar line in this is beautiful, I love it so much. 
  4. I was gonna say ‘probably my favorite off this EP’ and then I thought about it and realized that all three of the songs I’ve got on this list are my favorite of the EP. I’m indecisive, okay? 
  5. There’s a good amount of throwback music in this playlist, I’m aware. 

Variations on the Theme of Life

Grey Patterson

Download on the iOS App Store
I have always been fascinated by the emergent properties of mathematics: simple rules create complex structures. When you get down to it, this is how all of our modern technology works. Variations is based on that concept and was composed for performance through an application written for the iOS® operating system.
At the core of the application are cellular automata based on Conway’s Game of Life (1970), which is a grid where each square is either ‘on’ or ‘off’ and follows a strict set of rules. A square that is off (‘dead’) can become alive (be ‘born’) if it has the right number of living neighbors. A square that is alive can die if it has too few (loneliness) or too many (starvation) living neighbors. The rules are simple, yet they can create astonishingly complex patterns; there is an entire field of mathematics devoted to studying these patterns, Automata Theory.
Variations allows these patterns to play out both visually and aurally. Tap the screen to allow the grid to move through another cycle of living and dying, or just listen to the music created by a single frozen moment. No two people will ever hear the same set of sounds: the starting point for the patterns, as well as their evolution, are uniquely generated every time the Variations application is run.

(The recording above is from the premiere, in which the audience was asked to open the application simultaneously.)

Five After Six

Sophia Reinhardt

 Five after Six for Two-Channel Fixed Media (2017) was realized in the Composers’ Studio at Linfield College using Logic Pro X and recorded audio. In her poem, my sister shakes off sleep and drags herself to the coffeemaker to brew a mug, while she groggily waits for her sweetheart to stop by and say good morning. I set this musically with soft pads/synthesizers in the background behind the recording of the poem, while pre-recorded “early morning sounds,” like a brewing pot of coffee or chirping birds, play quietly throughout the piece.
Five After Six
Anastasia Reinhardt

Still dark. The coffeemaker
in front of me sleeps unawares
as I fill its craw with tap water.
The foggy glow of the streetlights
creeps into the kitchen through
the window behind the sink, thinking
that I won’t notice if it tiptoes soft
enough. I plunge my hand into the
solemn, self-important sack of coffee
grounds and measure out my life
for today. My other hand is holding
your voice close to my ear, while my eyes
flicker from the grounds to the window,
watching for your headlights. As a little
bird lights on the tree just outside
the window, I hear the heaviness of the
sliding door behind me, and your soft
voice hangs itself in the room like the fog,
smothering my slowly bubbling troubles
as your arms surround me.


Grey Patterson
Listen on Apple Music, Spotify, Google Play Music, or most other streaming platforms.
I started working on the piece while abroad in Austria, following a summer spent in Louisiana. In between the two trips, I was home for just over a week, during which my family went camping in Eastern Oregon. It’s a long-standing tradition in my family – we went when I was very young, and I caught my first fish off the docks by Pelton Dam. A couple years after my parents got divorced, my dad started taking my sister and me up to a property his then-girlfriend had on the other side of the river. A year after they broke up, my mom picked up the tradition, and it soon expanded to include cousins, aunts, uncles, and grandparents.
The frequency with which my parents moved – they traded off, more or less, but I worked it out recently and I have, on average, moved twice a year over my entire life – has meant that I don’t really associate anywhere I’ve lived with the concept of ‘home.’ In general, I think of people – my parents, my sister, and so on – instead of a place. But, occasionally, the concept of home has to be linked to a place; it’s what the term means, after all.
This piece is devoted to the place I think of when I’m homesick; to weekend afternoons playing video games with my dad; to the halcyon days of my childhood.


Grey Patterson
Watch on YouTube

Ehren Cahill, piano
As the title implies, somnus is based on sleep. The opening section first took shape two years ago, as part of a Musicianship III assignment exploring the ambiguity between the parallel major and minor keys. The second section is more nervous, following the dreamer into restless sleep, before finally returning to opening material as the dreams settle once more.


Sophia Reinhardt
Watch on YouTube
flight, for video (2015, 2018) is a nostalgic piece, which reflects on personal difficulties while working through those challenges toward change. This is realized musically through the conflict between the F major and E minor chords that open the work; this idea ‘interrupts’ the musical progress when it returns throughout the piece. The version presented today is the result of a collaboration with animator Kailyn Nelson, choreographer Ivanna Tucker, and dancers Bella Reese and Jared Lingle.

One Giant Leap

Sophia Reinhardt
Watch on YouTube
The soundtrack for the movie, One Giant Leap (2017) was made in collaboration with George Fox University students for the Fox Film Festival in Spring 2017. In it, a girl learns about the first moon landing while watching television with her parents. The events inspire her to build a rocket with her friend so they can follow in the astronaut’s steps.
To support the story, I scored the movie simply, using childlike melodies, simple harmonic language, and instruments that might be found in an elementary school music room. This is an alternate version of the film, which includes my montage sequence.
The movie was written and directed by Emily Hamilton, and produced by Tayla Yogi.

Project Happy Days

Sophia Reinhardt

Project Happy Days for Two-Channel Fixed Media (2017) emerges from a creepy texture that develops into a peppy exploration of recorded audio, distortion effects, spatialization, and several software synthesizers native to Logic Pro X. The title is a bit of a misnomer: upon reading it before hearing the piece, one would expect a happy tune; instead the piece opens with the distressed wailing of sirens. However, a happy little melody does emerge eventually, playing over the sirens and pushing them to the background. This interplay stands as a metaphor for the way in which happiness can be achieved despite not-so-happy situations.
This piece was created in the Composers’ Studio at Linfield College using Logic Pro X software synthesizers and pre-recorded audio.


Grey Patterson
Watch on YouTube

Kristen Huth, vibraphone; Pedro Graterol, viola; Hannah Terrell, cello; Keelan Wells, mixed percussion; Sophia Reinhardt, conductor
Bioluminescence is inspired by the experience of diving in Puget Sound after sunset. The water swells to life with bioluminescent microorganisms – every move you make is trailed by a swarm of glowing blue lights.
The piece follows the course of a dive – walking from the shore to the water, swimming out to the dive site, and then the descent. Underwater is a very different world compared to our normal lives; you can see your own breaths drifting away, or get a taste of what it’s like to walk on the moon. But in the end, returning to the surface is a must; accordingly, the piece comes to a close with a mirroring of the opening motions.

GSV Empiricist

Grey Patterson

The GSV Empiricist, or General Systems Vehicle Empiricist is a ship in Iain M. Banks’ Culture series of novels. In its first physical appearance, the Empiricist is described as having “no single outer hull surrounding [its] hundreds of individual components, just colossal bubbles of air held in place by field enclosures.” And it’s enormous:

Comfortably over two hundred kilometres long even by the most conservative of measurement regimes, fabulously, ellipsoidally rotund, dazzling with multiple sun-lines and tiny artificial stars providing illumination for motley steps and levels and layers of riotous vegetation – belonging, strictly speaking, on thousands of different worlds spread across the galaxy – boasting hundreds of contrasting landscapes from the most mathematically manicured to the most (seemingly) pristinely, savagely wild, all contained on slab-storeys of components generally kilometres high.

In short, it’s a mobile city with a population of ten billion, and I wanted to try to capture a little bit of that scene here. In truth, exploring a space this vast would take hours, even moving incredibly quickly, so I composed the work from the perspective of a static drone, observing the passage of this behemoth. The piece moves throughout the ship, bringing forth several novel acoustic spaces.
(Both quotations are from Iain M. Banks’ The Hydrogen Sonata.)

The Capstone Series

As I’ve mentioned, I’m in the process of wrapping up a four-year pair of degrees: a BS in computer science, for which I built and released an iOS Application, and a BA in music with a focus on composition. My capstone project for the latter was to put together a concert of pieces that I’d composed; rather than do that alone, I joined forces with one of my fellow composition students, Sophia Reinhardt.
Between the two of us, we managed to do it, creating enough music for an entire concert. I’m still a little amazed, to be honest; putting together a concert is a lot of work!
It’s done, now, and after taking a bit of time to catch my breath, I’m following it up by creating a digital version that I can share with the folks who couldn’t make it in person.1
Since the majority of the pieces were done as digital audio, this actually isn’t all too hard to do, just a matter of putting together information about them and getting the files compressed into MP3 format and whatnot. For the pieces that were performed live, we were able to get video and audio recordings, and I’ve done my best to put them together in a nice way.2
This post will serve as the index; I’ll be releasing the rest one a day for the next ten days. Each post will include some information about the piece, including which of the two of us composed it, who performed the live pieces, and what the program notes for it were.
Without further ado:
1. GSV Empiricist
2. bioluminescence
3. Project Happy Days
4. A Prairie
5. One Giant Leap
6. flight,
7. somnus
8. Halcyon
9. Five After Six
10. Variations on the Theme of Life

  1. Friends and family that live in other states, for example; turns out plane tickets are still expensive, and science still hasn’t figured out how to build teleporters. Somebody should get on that. 
  2. For reference, I’m writing this post before I’ve actually done that bit of video editing, so hopefully Future Grey will have done a good job. 

“The Big Meow,” or, “a better ending than I even bothered to hope for”

Diane Duane
I don’t think I’ve done a review of one of Diane Duane’s books on here before, but that’s not for lack of reading them — it’s just that I’ve been reading them since significantly before I had a habit of writing book reviews, or even a blog at all. The Young Wizards series is something I’ve read and reread and reread again; I’ll pick up one of the books for a reread almost as often as I reread Tamora Pierce.
A quick bit of context, then: the Young Wizards series is set in a universe1 where wizardry is real, and has a very distinctive purpose: slowing down entropy. Wizardry is based on language; wizards learn a special language, the Speech, that was used by the gods to create the universe. With those abilities, they fight the good fight, acknowledging that, yes, one day entropy will win, the universe will die… but they’re not going to let that happen any earlier than it absolutely has to.
The Big Meow is the third in a spin-off trilogy of sorts, following the team of feline wizards that maintain the worldgates at Grand Central Station.2 As in the second book, though, they don’t spend much time on their home turf; most of the book is set in Los Angeles, and there’s some fun to be had as they try to get used to the West Coast style.
Perhaps my favorite thing about the book, though, is how well it handled a certain issue: representation. The protagonist is a cat, and Duane does an excellent job of guiding the reader through that mindspace, through the different perspective given by an interspecies difference. The part that stood out to me, though, was how this, as a side effect, made for a surprising bit of queer representation. Rhiow, the protagonist, was fixed; as a result, this book, written before the word ‘asexual’ had even begun to enter into the public sphere with ‘gay’ and ‘bisexual’ and everything else under the LGBTQ+ umbrella, has an asexual protagonist. The first two books did too, and it feels entirely natural; Rhiow just has a different perspective on certain things, and cracks a few jokes about it with her coworkers. It’s not treated as a big deal at all.
In this book, it becomes a bit more of a focus, as we get a bit of a love interest subplot. And it’s handled quite well: there’s a bit of angst about the whole “I’m fixed and that makes me broken” thing, but her friends are quick to give her a loving whack upside the head, and help her stop seeing that difference as a negative and instead as just a difference. It is, possibly, the best bit of asexual representation I’ve ever read, and it’s quite touching.
Plot-wise, I think I enjoyed this one more than either of the others in the trilogy; the first goes a bit weird in places, and the second has a very cool setting that gets a bit confusing. This, though, doesn’t get lost at all, and the storyline is fun and beautifully creepy. It’s a bit fitting that this book, the one set in and around Hollywood, feels absolutely the most cinematic of the three. I’d totally recommend giving it a read.3
(And, while you’re at it, go read the rest of the series — the Young Wizards books are amazing. Pick up the New Millenium Edition box set, it’s totally worth it.)

  1. Well, technically, a collection of universes, but I digress. 
  2. Public transit: also useful for wizards. 
  3. Normally this would be an Amazon link, but Diane Duane runs her own ebook store, which I’m quite in favor of as it means the majority of the sale goes to her instead of to Amazon. 

Playlist of the Month: April 2018

This month’s playlist is pretty short, which is possibly related to the fact that I’ve listened to something like 150 episodes of a new podcast’s backlog in the past couple of weeks.
Coming Down – Bon Iver
Silence (feat. Khalid) – Marshmello
Lost In the World (feat. Bon Iver) – Kanye West
Punching in a Dream (Stripped) – The Naked and Famous
Free – Kidswaste1
In The Flames – DJDS
I Like Me Better – Lauv
Opps – Vince Staples, Yugen Blakrok
No Church in the Wild (feat. Frank Ocean & The-Dream) – JAY Z & Kanye West
Seaside – Haux
Caves – Haux
Homegrown – Haux
The War – Haux
Friends (Under the Influence) – Majik
27 – Majik
Love Lies – Khalid & Normani
Talk to Me – Majik
Save Me – Majik
How It Is – Majik
Paralysed (Skeleton Mix) – Majik
It’s Alright – Majik
Kings and Queens and Vagabonds – Ellem
The Weight – Amber Run2
Beretta Lake (Listen2Liri Remix) [feat. SAINt JHN] – Teflon Sega3
Bloodsport – Raleigh Ritchie
Praying – Pentatonix4

  1. Proud moment this month: had this song playing on the speakers, overheard my roommate asking Siri what song this was. 
  2. I haven’t actually listened to the rest of this EP yet, and I need to get around to it, but iTunes is having Issues with it and I haven’t had the time to fix that yet. 
  3. I’ll take “songs I found because I somehow followed an EDM Bro(TM) on Instagram and he posts stuff to his story” for $500, Alex 
  4. It took me… longer than I’d like to admit to figure out why this was familiar. I’m mad at myself for disrespecting Kesha like that. 

“Sum: Forty Tales from the Afterlives,” or, “less existentially upsetting than you’d think”

David Eagleman
I believe I added this book to my wish list back when CGP Grey talked about it, either on Hello Internet or Cortex. It’s an interesting concept, explained succinctly in the title: a collection of (very) short stories about what happens after you die. I’d actually read one before, way back when it was published as the one-page science fiction short in the back of Science magazine.
To be honest, the book was an enjoyable read, but a very quick one; for the price, I think I’d recommend checking it out from your local library.1

  1. Also, y’know, I recommend supporting your local library in general. They’re a wonderful resource. 

“Multimedia: From Wagner to Virtual Reality,” or, “you could make a drinking game of watching people change the world with these essays”

Edited by Randall Packer & Ken Jordan, with a foreword by William Gibson
As a well-documented computer nerd, I’m honestly kinda amazed I’d never stumbled across this book before. It’s an impressive collection of titans of the field — Alan Kay, Douglas Engelbart, Vannevar Bush, Tim Berners-Lee, and so on.1 Other than the foreword, there’s nothing truly new in this book,2 but the essays are downright formative. Bush’s essay, written in the wake of the Second World War, describes what is recognizably a smartphone; Berners-Lee’s describes the foundation of what would become the internet. Looking back, it’s a fascinating read — hindsight is 20/20, and all that. It’s a cool book, give it a read.

  1. It’s maybe a bit of a stretch to call Bush a titan of the field of computer science, but he did invent the military-industrial complex, which led to a lot of computer tech, so… I’ll let it stand. 
  2. Well, the introductions of each author probably are, but I digress. 

“Personalized Hey Siri”→

Apple Machine Learning Journal:

In addition to the speaker vectors, we also store on the phone the “Hey Siri” portion of their corresponding utterance waveforms. When improved transforms are deployed via an over-the-air update, each user profile can then be rebuilt using the stored audio.

The most Apple-like way to continuously improve that I can think of. More interesting, though, is this bit later on:

The network is trained using the speech vector as an input and the corresponding 1-hot vector for each speaker as a target.

To date, ‘personalized Hey Siri’ has meant “the system is trained to recognize only one voice.” That quote, though, sounds like they’re working on multiple-user support; which, with the HomePod, they really should be.