Rolling Your Own Weddings (and Spirituality)

I was at a humanist wedding recently, my second this year. The readings the couple chose were short excerpts from J.R.R. Tolkien. It was a little disconcerting, but actually made total sense. To choose as a “sacred text” something that you quote all day long (they were obsessive Lord of the Rings fans). Something that you return to in times of turmoil.

Now, extensively customised weddings are par for the course these days, as is the observation, which could be made about almost anything, that LotR fandom resembles a secular religion. What this (completely lovely) ceremony really made me think of, is how I could do similar things in my own life.

If you’ve read my posts about hip hop, you’ll surmise it means a lot to me. Particularly since last summer when I spent a few months mostly on self-reflection, I’ve accepted that my personal conception of hip hop will be a sustaining force for the rest of my life. Basically, I think of hip hop as a martial arts move, a judo flip executed on society and the music industry, that smuggles deep wisdom inside the given structures of capitalism, masculinity and race. The catchy “gems” that stick with you, although camouflaged as egotistical boasts, are fully intended as self-help and spiritual sustenance for anyone who’s ready to receive them. This is true.

And it goes beyond hip hop. Somehow, quitting music performance helped make it clearer to me, that jazz and gospel are spiritual resources in my life. Monk, Nina, the Staple Singers, Paul Desmond, Charles Brown, etc. are presences I can always come back to.

My point? By all means necessary, should we roll our own spirituality! Now, I’m not thinking of organising any weddings anytime soon. However: I know it’s late for a Christmas post, but isn’t that a ritual that could totally be expanded to include something personally meaningful? My first thought was, put some jazz photos on that tree. That’d be cool. Then I remembered that, as usual when I think I have great ideas, others are doing it already.

A good friend of mine has been making a determined effort for a few years now, to create the perfect Christmas jazz playlist. And it works! (I’m not expecting you to bookmark this 11 months in advance, BTW.) Chrimbo and jazz music combine just fine.

Back to that wedding for a second, the music for the ceremony was provided by Dublin duo, Moon and Son, and they played strictly jazz standards throughout, and it worked too.

My takeaway? Popular music has changed irreparably from the restructuring of the industry after MP3s and streaming. It will never again sound like its 20th century peak of effort and sophistication (I believe). Part of the reason I quit playing was this eclipse in cultural relevance. But – it cannot be denied that jazz, blues, gospel, hip hop and more have always had spiritual force, and people still feel it and maybe will become more and more conscious of it. So I bet that among my social class, the globally mobile, mostly white middle class, we’ll see more ritual use of black music, subtly, somehow, every year.

Postmortem for my First App

Three and a half months ago I started a software development course, to build a new career as a programmer. I’ve also quit playing music. As we come to the start of a new year I’m very happy with these choices and with the prospects ahead.

One of the things I’ve loved for a long time about programming was the culture of sharing knowledge. It directly influenced the tone of this blog. So, while I don’t know whether I’ll continue writing about programming on Drum Chant or make a new blog for it, today I want to try my hand here anyway at a software postmortem.

Following the time-honoured format (which I first saw on gamasutra.org I think, and also used on this blog before), I’ll introduce my project, discuss what went right in the production, what went wrong, and what lessons can be learned about software development.

Introduction

I developed my first app in Java this month. It’s a number-guessing game simulating a lottery draw. I call it Gambler’s Delight. I had previously worked on a similar brief for a group project in school which I enjoyed enormously. So I decided to remake that idea on my own, using a more elegant, manageable design.

The game affords multiple rounds of attempts to win the lottery. In each round the user fills out a lottery ticket of 1-3 lines, where each line is a guess at the 6 random lottery numbers which will be drawn. When the user decides to play their ticket, the application draws the 6 random numbers and tells the player how good their guesses were, awarding fictional cash prizes depending on performance. Finally, the app keeps a record of all the rounds played and displays this when the user requests to end the play session.

So, it’s rather like the Irish National Lottery‘s digital play platform. I didn’t refer to this when designing my game, but my effort converges on the same concepts.

How the pros did it

You may be already seeing some of the design issues I faced:

  • how to make sure the player chooses six unique numbers
  • how to have automatically chosen (“quick pick”) numbers
  • given that some lines are active and ready to play, some not, how to deal with the transitions from inactive to active and back

My own learning goals for the project were to get my head around Java’s Swing library, which provides platform-independent graphical user interface (GUI) widgets, as well as some intermediate programming concepts like interfaces, events, exceptions, and of course the object-oriented programming principles of encapsulation, inheritance and abstraction. (The fourth technique always mentioned with that group, polymorphism, didn’t really come into my app.)

Or, to put it crudely, I wanted to make a simple game but:

  • split it out intelligibly into classes representing real-world objects,
  • use the premade Swing classes more or less as they’re meant to be used, and
  • keep a handle on the structure and proliferation of my code.

What Went Right

A clean GUI: I designed the look of my program in one blast of inspiration, which luckily was then realisable in one of Swing’s layout manager classes, the euphoniously named GridBagLayout.

I decided that each line of 6 numbers would be built as 6 text fields, similar to a licence key or credit card number entry form. And I was able to have all necessary user actions available on this one, small window, in a layout based on the number 3.

The concept ((also demonstrating the importance of having appropriate stationery on hand 🙂 )
My GUI in action

Encapsulation: as you can see in the source code, I split the functionality of my game into 9 classes and and an interface. Many of these are satisfactorily neat and conceptually self-contained. Even the bigger ones use some basic principles to hide their data, i.e. private variables. Also, I followed the correct convention for passing arrays – copying their contents into a new array before passing that – to avoid giving the requesting class access to a private array in cases where this matters, e.g. the LottoTicket’s getResults() method.

Keeping control of my code: I was pleased that by the end of this project, I still knew clearly what everything did and where to look for any particular functionality. I could skim my code and know what I was looking at thanks to nice variable and method names, whitespace and my reasonably clear class structure. I’m an ultra verbal thinker so writing lines like “history.updateWith(ticket.getResults());” that do what they sound like they do in approximately readable English, pleases me no end.

Use of Java classes: the built-in classes I used – probably around 12 or so – were rewarding to study and build around. Of course they are, they’re made by top people! The experience of using things like Swing’s InputVerifier or Container classes, say, is of initial simplicity giving way to great depth and flexibility. The big but logical inheritance hierarchies of these components are inspiring. I’d love to make something someday as worked-out and usable as these. The only downside of my plug-and-play approach is that I ended up using a good few classes quite superficially. I can see how later it’d be all about digging down deeper and overriding parts of fundamental classes to put my desired custom behaviours in more unified containers that match their purpose more elegantly.

Use of events: I used a good few of Java’s event types and wrote one of my own, so now I have at least some insight into event-driven programming.

Bullet-proof UX and validation: I’m proud of this achievement even though conceptually, behind the scenes, it could’ve been cleaner. My interface instantaneously reacts to invalid input with an appropriate error message and an updated count of how many lines are ready to be played. The only exception is, I allow the user to leave fields blank for smoother navigation. It’s impossible to leave an unplayable input in a field, and impossible to play a line that doesn’t validate correctly (e.g. has blanks). There are two subtleties to this. First, I had to use multiple kinds of events to make sure and cover all interactions: DocumentEvents, FocusEvents, ActionEvents… and then pass the appropriate EventListener classes back and forth when building all the objects (lines, fields, verifiers) in my game. That’s overly complex for sure. On the plus side, I had to take care of weird player behaviour like going back and deleting numbers from previously finished lines. That involves some slightly tedious code but the result is robust.

Minimising hardcoding: I kept crucial gameplay variables in a separate LottoRules class and made sure that they only need to be changed once to correctly change the game’s behaviour. However, I chickened out of following this to its proper conclusion of allowing customisable line lengths and number of lines per ticket – the game logic can handle this, but the user interface wouldn’t dynamically adjust.

What Went Wrong

Having no target audience: the game was inspired by a brief for a college project. It doesn’t fulfill any real user’s needs and therefore there’s no point continuing to develop it. Honing in on excellent design becomes arbitrary in this situation. For my next project I’ll come up with something that I, and hopefully many people, definitely want.

Insufficient use of exceptions and defensive programming tactics: changes in one part of the code could easily cause crashes or undetermined behaviour because I don’t check the validity of values or handle wrong values (apart from the user input discussed above). That said, I think I’m right to move on without polishing this more.

Hardcoding: this point also contravenes good programming practice. The UI I made isn’t adaptable to different line lengths/amounts, and has some per-pixel hardcoding. But here I was coming up against the fact that system-independent GUI design is hard. Java’s Swing layout managers are pretty flexible and wide-ranging, but with that comes a lack of predictability and precision. I think next time I might try a different GUI technology – AWT, or something web-based – just to keep learning new stuff.

Lack of reusability: although I made one class explicitly for future use, (TextNiceties which deals with plurals and counting words) I mostly failed at designing for reuse which is, so my software engineering teacher says, the holy grail. Partly this is due to the trivial but finicky task: much of what I wrote is for the necessities of this particular game. Then there was the spreading of GUI code throughout my classes, which I’ll discuss below, but which obviously makes my code specific to one task.

Refactoring is hard: “restructuring existing computer code—changing the factoring—without changing its external behavior” as Wikipedia defines it, was challenging. I already had a working prototype at the start of this project, from my school group work. Unfortunately I tended to unthinkingly take elements of the previous design into my new one. And I also assumed that problems were already solved without noticing that with changed design assumptions, my previous techniques were now invalid. So, I made two failed attempts at restructuring my GUI code before settling on a pattern of passing a window (JFrame) object into my various classes so they could paint themselves onto it.

Deciding what object should have what responsibilities: I had the concept of an overarching “app” creating a lotto “ticket” containing “lines” which each contained number “fields”. Reasonable enough, but the question of which object should know about which other objects was hard! This applied to the UI creation, the validation, and the game state changes… I have tons to learn here.

Over-engineered interface: I allowed the user to invalidate a completed line of numbers by clearing text fields. This adds nothing, it’s merely a standard text input convention. I think an excellent design would intentionally limit such possibilities in the interests of clarity and simplicity. I note that the Irish National Lottery interface:

  • uses a graphical grid of numbers that are either selected by a single left click, eliminating duplicates automatically
  • doesn’t allow deselection (deletion) of numbers, so lines are simply always valid once completed – and bright colours are used to indicate the change to valid
  • therefore never has e.g. the first line invalid while subsequent ones are playable, an edge case I had to write a fair bit of overly-involved code to deal with

Conclusion

I’ll stop there. That’s a lot of chat about a learning project, but hey I’m proud of it and I sank a few days into it. Nice one if you read through it all and perhaps I’ll be back soon with a cooler project. A friend of mine gave me the idea of doing something that queries a web API, and I also think I want to do something with non-trivial calculations (maybe some geometry/graphics) and file handling.

*EDIT* Oh, one last addition – I think I know now what the solution is for organising the line, field and ticket objects and their drawing code. Sticking closer to the paradigm from John P. Russell’s excellent beginners Java book, I would go back to having each major element subclass a Swing component such as a JPanel, and draw itself in its constructor. And, I would structure the lines like a group of radio buttons: first a LottoLine would be created, and it would be passed into the constructor of all its LottoFields.

Ah well, there’s always more improvements to make. Still happy to draw a line under this project, cause it works and the code is readable.

Magic and Desire

A good friend sent me some clips of The Carbonaro Effect recently. It’s a hidden camera magic show with 5-minute segments, perfect for YouTube, of unsuspecting people in public places momentarily believing the seeming impossibilities manifested by creator Michael Carbonaro’s sleight-of-hand abilities (plus a lot of set and prop design).

Without intruding on anyone’s right to watch mindless entertainment as sheer relaxation, I want to explore what makes these little clips so compelling. Come and enjoy some magic with me!

In this trick, Carbonaro buys a Singapore Sling at a cocktail bar, and starts pulling out some of the tacky ornaments that normally go in such drinks, commenting on them and getting the attention of a young woman alone in the next chair up. Without in any one moment getting too utterly implausible, he removes a ludicrous quantity of objects, while keeping the girl at the edge of engagement and disbelief with his smooth, slightly dopey patter. She’s already murmuring “that is so cool” by the time he takes out an egg with a tribal mask pattern printed on it – just about plausible, for a second anyway, in a place called the “Tiki Bar”.

Getting the timing seemingly just right, he cracks the egg and a live green budgie flashes out, flaps around and settles on the rim of the glass (more of a vase, textured and opaque). The girl freaks out, and Carbonaro, still in his guileless persona, slips away to “wash [his] hands”.

In another trick worked in a cosmetics shop on a more sceptical woman who recoils at least twice but is drawn in by Carbonaro’s patter and intimate vocal tone, he apparently transmutes a chicken wing, buffalo sauce and blue cheese sauce into a lovely-smelling soap for men. Again, the timing and pacing are great, with a sealed plastic tub instead of an egg being opened for the climax.

They’re great little stunts. What makes them entertaining isn’t so much the trick, though, as the reaction of the mark, how it’s attained, and the highly emotive nonverbal story it tells. Carbonaro enlists a massive cultural context in bedazzling these women.

He initially comes on like a man who probably wants something from them, a phone number or a sale, in a mainstream, commercial setting. He then focuses on objects that women might associate with a respite from the predations of men or commerce, that might be oases safe from the sleaze, belittlement and bleakness of club culture and consumerism. Cocktails and handmade cosmetics appeal to the young child in us who loves potions, secret ingredients and sensual pleasure.

Appealing to the young child in us…

Carbonaro slips inside these feminine-coded zones of release, innocence and magic, using their childlike appeal to bypass emotional defenses and scepticism… and then sinks home a dose of joy and wonder: what if the little bit of magic allowed by mainstream culture, the small luxury you turn to when life is tough, really was magic; and the silver-tongued charmer really only intended you to bring you innocent delight?

Seeing someone filled with childish joy is great TV, all the more so if she’s a good-looking woman like many of Carbonaro’s targets are, and even more so if she starts off plainly presented or emotionally guarded so that we get some ugly-duckling thrills. But what grabbed me emotionally and had me pondering these clips is something deeper. Archetypally, these two tricks tell a story of female magic transfiguring the male!

In the cocktail trick, a bar-propping potential sleazebag (Carbonaro himself, in character) is transformed into a beautiful exotic pet to be adored. In the cosmetics one, the grossness and rankness of men, as we can presume the woman has encountered it – their barbecues, TV watching, beer guzzling, etc. (which are of course the masculine culturally sanctioned zones of release and indulgence) – are transformed into purity and heavenly scent.

At the deepest level, these tricks appeal to a female and perhaps feminist desire: that men would wash their hands of sin. The image of Carbonaro washing his hands caps both the tricks.

Washing his hands of sin…

(This appropriates the century and a half of investment in images of washing as a moral, prestigious act – a domestic magic, in fact – that is detergent/soap advertising. Something that since Victorian times has intertwined race, gender roles and colonialism with our domestic lives).

It’s female power that accomplishes the miraculous transformations, symbolised by the yonic closed tub (which is heated – think of the phrase “bun in the oven” to make the link between furnaces and wombs) and the opaque cocktail glass, as well as the strictly feminine coding of cocktails, handmade cosmetics, ingredients and fancy things.

Female power redeems the male. Hard to think of a more loaded narrative than that!

Okay, so I’ve riffed pretty hard off these two little videos. To restate what I think is happening:

Carbonaro gets deep inside our mainstream capitalist/retail/advertising culture which is hard on women but which a) gives them small zones of respite and pleasure and b) holds out the hope that, as desirable females, they might persuade their menfolk to be morally purer; Carbonaro then delivers an ephemeral, impossibly perfect realisation of these painfully felt desires for sanctuary and redemption, which more typically just sell e.g. washing powder.

Carbonaro’s skill is in how intimately he inserts himself into submerged, but emotionally charged parts of our culture. Different aspects of his persona subtly undercut each other: openly gay in real life, he can take on a stereotypical gay engagement with rituals of femininity or a stereotypical gay cosmopolitanism; as a prim white guy he can deliver science-y patter his trick needs – while remaining unthreateningly kind-of-dumb throughout.

Other desires he taps into are motherly fecundity (with an impossibly effective juicer); and cosmopolitan glamour (with an art supplies shop becoming a portal to Paris at night).

(And then, to be sure, a lot of the time there isn’t any subtext for me to chin-strokingly analyse; most of his clips are just I-can’t-believe-he-fell-for-it gags or gross-out.)

It’s very smart; but I’m not claiming this is woke entertainment. Carbonaro appropriates and manipulates tropes and interactions from advertising and retail, but he’s 100% participating in capitalist distribution systems himself – these clips are ads for his TV show on TruTV, owned by WarnerMedia. They are formatted for the exploitative and opaque adtech ecosystem of YouTube.

More fundamentally, the fantasy Carbonaro sells us in these clips, of redeeming the everyday, is predicated on that everyday being the bleak, inequitable cultural mainstream of Western capitalism and authority systems.

The setup of the series does nothing to challenge that mainstream. It grants no agency to the participants, even though their reactions form so much of the entertainment value (and are invariably used for the video thumbnails). They’re not credited – I don’t know if they’re even well paid – and by the nature of the show they don’t consent beforehand. In our contemporary #content-driven culture, privacy, renumeration and control of one’s depiction are lost values.

At times, the racist and sexist society which forms the background for magical tranformation, reappears in the painfully deferential way some participants address the white Carbonaro: “You think I’m crazy, don’t you”, or “I don’t mean nothing by it”. Even with careful editing and selection of takes, the fantasy of upending privilege and inequality is fragile.

Maybe also the very idea of a magician is retrograde and creepy. The personality type that wins acceptance by painstakingly practised, seemingly effortless performance, and maintains a cloak of mystery around its methods, is perhaps the most defensive and emotionally unavailable there is. I should know, I’m a jazz musician.

So overall, I agree with the judgement of my friend who sent me these videos in the first place – they are indeed a trashy, addictive dopamine rush. But it seems to me it takes a lot of heart to make something so emotionally resonant. The videos certainly grabbed me enough that I had to sit down and pen this. Carbonaro made me ponder how I might make art or music that respects the heat of moral desire in people, the fervent secret wish for the world to be redeemed in a moment’s magic.

A Bass Practice Setup in Reaper

A satisfying practice session can involve many subtasks. I’ve been using the music production program, Reaper, to conveniently manage some of these. In this post I’ll go through my setup. It’s a work in progress. Eventually, I want to have a friendly and supportive digital environment for my creative mind, something to help sustain the musical work I’m doing and minimise clicking around on the computer.

My setup uses one free VST plugin, some drum samples I found for free, three plugins that came with Reaper, the webcam software that was bundled with my (Dell, Windows) laptop, and Reaper itself. An unlimited licence to Reaper costs €60 for personal or small business use, that’s the only thing I paid for. Here’s what it looks like in action:

It took me a while to figure out the arrangement of screen space, so I’ll go through it bit by bit. The aim was to minimise mouse clicks and maximise time with my hands on my bass. This setup is what I leave running as I play.

  1. These are the basic track controls for the recording of my bass. Sometimes I use monitoring i.e. listening to the bass sound as it comes out of Reaper through my speakers, rather than my bass amp – but usually not. Using monitoring would allow use of effects, but there’s still perceptible latency (in the low two digits milliseconds) which I don’t like. I record everything and throw it out after. I keep my amp plugged into my soundcard all the time. I suspect this habit of recording everything may have led to some recent slight corruption errors on my hard drive, because recording involves constant drive access and I left it running for a few hours at a time more than once, by accident. So I put a recording time limit of 45 minutes in my default project options.
  2. My teacher in Amsterdam years ago, David de Marez Oyens, recommended using the waveform of recorded bass as a visual aid to check one’s playing, but I only realised how powerful it is recently. Seeing the waveform instantly gives information on note length and attack, timing and perhaps most of all dynamics. The consistency of my playing has improved from routinely having the waveform on the screen.
  3. The webcam image of my lovely self provides a check on my posture and particularly hand position (especially fretting hand wrist angle and finger curvature). As I’ve had health issues in the past from bad technique, this is a bit of a godsend.
  4. Reaper has a handy tap tempo function so I can click here to change the project tempo (i.e. if I want a slightly different metronome tempo).
  5. Assuming I pressed record at the start, this shows how long my practice session has lasted.
  6. Transport controls to start and stop recording, say if I’m listening back to myself or whatever. Eh, my point is that I don’t allow any of the other windows to cover this up.
  7. This is a cool little thing I discovered recently. You can “expose parameters”, or as I like to say “expose the knobs”, which means putting in a little dial in the track control which will control a parameter in one of the track’s FX plugins. In this case, this little dial controls what pattern my drum sequencer is on – here 0, which is an empty pattern and so plays nothing. But I can load up the sequencer with various patterns like a dance beat, claves, hip hop beat or whatever, and choose between them with this knob, without having to keep the sequencer window open.
  8. Track controls for the drums and metronome, if I need to adjust levels or whatever.
  9. I have lost probably about ten electronic tuners in my life. I just leave them behind routinely at gigs. So a digital solution is nice to have. Reaper’s standard “ReaTune” plugin works grand for bass once you turn up the window size to 100 milliseconds to allow for those big fat bass wavelengths.
  10. For drums and click I use the bundled plugin “JS: MIDI Sequencer Megababy” which is a nice piece of software. It takes a bit of learning as it uses a lot of keyboard shortcuts and some of its design choices aren’t immediately evident, but it’s great and minimises the clicks needed to input a rhythm (because you don‘t have to put in a new MIDI item). The controls could be easily used to manage polymetrically related click tempos (“okay put the metronome once every two and half bars of 4”).
  11. This purple horizontal bar is the click rhythm, in case I wanted to throw in a clave or something here. I could similarly display the current drum machine sequence, but it would take more screen space than this single bar, and also I don’t want my practising to be derailed by drum programming. For the same reason, I haven’t prioritised ease of adding or replacing drum samples – another rabbit hole.

To summarise, this setup lets me have the following functions available at all times as I play:
Tuner
Metronome
Drum machine with preset beats
Waveform visualisation
Video of myself

The plugins I use are:
JS: MIDI Sequencer Megababy (Cockos)
ReaTune (Cockos)
shortcircuit (Vember Audio) (a nice sampler)

Another function I haven’t tried yet would be putting in sound files to play along with (in full or looped). I used to use Audacity for this but it’d be easily done in Reaper.

The main downside from a user interface point of view is that each time after I change anything in Reaper or start recording, I have to click on the webcam software to open up that window again. Another thing is that changing tempo confuses things if done mid-recording and so necessitates a stop and a few clicks, although I could perhaps change some options to mitigate that.

Okay that’s it, I hope you enjoyed the tour. Feel free to comment about any software or configurations you use for practising!

Mega Drive Vibes

Today’s post analyses a composition by Tim Follin from the soundtrack of a 1994 Sega Mega Drive game, Time Trax. (I found it on this sweet playlist.) I wanted to find out how it succeeds in being so improbably funky.

Chiptune music has been rising in cultural prominence with the predictability of any nostalgic trend. A mate of mine recently put me on to the quite expensively produced Diggin’ in the Carts, series, for example. I guess what’s fun about the music, beyond just hearing things from your childhood, is the musical meaning conveyed within harsh technical limits. Somehow, cheaply synthesised noises that don’t sound at all like brass, bass guitar, a string section, or whatever, can cheekily evoke just those things. So I want to examine that dialogue across the chasm of failed simulation, where the ludicrousness of the attempt at orchestral grandeur or, in this case, funk jamming, is part of the aesthetic.

The tune (it repeats, the actual track is about 3:30 long).

You won’t remember this one from your childhood, because this game was never actually released and only a prototype of it emerged online in 2013. “The game is notable for its use of a relatively advanced sound driver designed by Dean Belfield for Follin,” segaretro.org tells us. I get the impression that this was a technical peak of sound design on the Megadrive.

Not to get too nerdy – let’s save that for later – but this style of synthesis is associated with, roughly, the 16-bit generation of consoles as opposed to earlier 8-bit. It is called frequency modulation synthesis and it tends towards a distinctive metallic, clanging, bell-like, brassy tone. (Which Tim Follin’s sound design actually disguises pretty effectively, at least until the heavy distorted riff sections.) You may also recognise the sound if you ever played MIDI files on a laptop with a cheap soundcard, like my Dell Latitude.

Let’s get to the music!

This oscilloscope view is cool. BTW, different ones on Youtube have six and five channels. I read somewhere that it was a technical achievement of Follin’s to stick to five channels so as not to have game sound effects interrupt his music. I don’t know what the sixth channel is doing here and I can’t hear any extra instrument that isn’t in the five-channel version. *shrug*

So, apart from the dinky sounds, we have a medium tempo funk-rock groove tune. The first thing I was curious about was the structure. As is typical for game soundtracks, this one is designed to loop interminably. However this isn’t really an issue either way as players were not likely to stay long on the ‘Mission Briefing’ screen where this track is played. (In this playthrough video the player spends 40 seconds.)

In any case, there’s a 90-bar structure lasting about 3 and a half minutes. The basic principle is one found in a lot of groove music – Wayne Shorter’s ‘Beauty and the Beast’ is my canonic example – which we could call “on or off”: you’re either in the groove or getting ready to get back in.

Yellow for ‘in the groove’

Follin uses key changes to shape his track. (He mentions his “fondness for random key changes” here.) As shown above, we get the excitement of going up a b3rd, then a gradual floating down to the home key – a good scheme for a track whose opening will be heard more than its ending.

The key change is smooth on a number of counts.

The end of the brass build (that line is seen at the top left) going into the first organ solo. The double bar line marks the 1:07 section change (and key change).

Okay, the lead line doesn’t voice lead, but in general its D major pentatonic melodic/modal colour is goes strongly to G minor (i.e it’s the elemental I major to IV minor alternation that has strong gravity in both directions). The (faint) bass voice ends on a D before a strong G bassline comes in, so that works. And the inner voices have a general upwards sliding of a semitone. Nice.

There are some other nice applications of harmonic colour, suiting this rock/funk context. In the intro we get some Cs, the b6 of the key, giving a suitably earnest diatonic natural minor mood of cop show epic – after that these are thrown out in favour of minor-7th/sus-chord funk colours. There’s some strong use of the 9th, F#, in a couple of places e.g. the brass pentatonic build.

(I recognise that my names for the instrumental sounds are arbitrary. I just don’t want to put quotations around “organ” and “elec. piano” for the whole blog post. Your interpretation of what the instruments are meant to be is just as valid.)

This ambiguity of instrumental sounds is crucial for what I consider the secret sauce to this track. I’m talking about the inner voices that comp all the various organ solos and can be most clearly heard in the breakdown at 3:00. Quietly, with a warm electric piano-like sound, they add some rhythmic action that interlocks nicely with the rest, and fills out the middle part of the sonic spectrum. At the end of bars 2 and 4, every time, they feature some bluesy parallelism of a type I discussed a long time ago on this blog. A bII I movement, and next time it’s bIII IV. How does the bII I fit so smoothly in a minor key? I think it’s really a bV IV – a classic blues side-slip – in the V key!

Here is where I’d normally show a little transcription (I did attempt one bar of it above – the dotted eighths in the second bar). However, these inner voices are incredibly hard to transcribe due to two peculiarities of the medium: overtones generated by FM synthesis; and the need to swap instrument sounds mid-flow to maximise channel use.

The first issue means that, although I think only two channels are used for these inner voices, we get a fleeting impression of triads in the passing chords – I believe I can hear the thirds. This is due to the way frequency modulation synthesis works] – it adds overtones called side-bands, in various proportions, to the original fundamental. As the 3rd and 5th (actually 3rd+2 octaves and 5th+1 octave) are part of the overtone series, frequency modulation can generate a kind of major chord. So, for instance, while the most audible line in the inner voices starts b7 b7 8, or D D E at 3:00, I think this is actually the 5th and that below there’s a b3 b3 4, G G A which is the fundamental.

What makes it trickier is the fact that Follin may not be keeping the sound (or “patch” in synthesiser terminology) consistent from note to note. In the intro, we note a changing modulation on the synth stabs. And if you look at the visualisation, you’ll see that a channel may switch from brass to bass instantly (e.g. when the groove kicks in at 1:05), or whatever. (Follins mentions this as a “basic trick” here.)

So, even though with a bit of hunting around on old-school, nerdy websites I got some tools to extract MIDI data from the game files, I still can’t, after a decent effort, unambiguously notate it, because these lines might be transposed or changing timbre any time, and in any case they’re definitely using timbres with at least a strong 5th above the root.

Here are the two inner lines in MIDI in REAPER – but I still amn’t confident of what the sounded notes are!

What does all this mean musically? Just that it’s a full-sounding comping pattern with some sonic depth and mystery, and which, especially during those passing chords, is subtly but unmistakeably bluesy! Because blues uses that ambiguity between harmony and timbre all the time (so does electronic dance music, funk, jazz…), particularly for cliched parallel chord movements.

Let’s talk about the other sounds! Some commenters on Youtube have gotten into the nitty gritty of Follin’s techniques – in particular, his use of clipping/overdriving the signal to get otherwise impossible waveforms. I don’t know enough to comment there but I’ll just praise the sounds from a musical perspective and from what I can see in the visualisations.

Firstly, the very effective drum sounds are a single instrument/patch sounding at a high note for snare and a low note for kick, and a really high note for the hats. (Listen in the breakdown sections and you’ll hear the hat sound is kind of like a snare.) This is clear in the intro fill which sounds like it’s on the toms – but later those same notes function as a kick and snare in the main beat. While initially they sound more like toms than a kick or snare, in the mix they’re convincing. The beefy snare takes up some bass register quite effectively.

The distorted sounds later on, and the brass in the intro, are even less “realistic” but still sound good. I really like the bleep on beats 2 and 4 in the intro – here Follin uses a classic technique of “fake delay,” repeating the tone more quietly 3 16th notes later to give the impression of a classic tempo-synced delay effect. Then the bells/glockenspiel in the middle are a really nice timbral contrast. In fact timbral contrast is one of Follin’s main tools.

There are some cool sequencing tricks. The time feel changes from straight 16ths when it’s only hats, to swung 16ths when the groove kicks in. Also, there are some nice dynamic changes in instrumental sounds: the volume swell for the 2nd pads chord in the section starting 0:05, and the changing timbre of the synth stabs in the following section (accomplished by dialling in the degree of modulation of the carrier wave).

Of course, the centrepiece is the organ melodies. Although not very memorable as themes, they’re definitely funky, using tricks like staccato pedal tones, 32nd-note blues scale ornamentation, and (not idiomatic for organ, as I mentioned) pitchbends. As Follin says, “I also liked the playing styles used by folk musicians, all the twiddles and little arpeggios, which were again relatively easy to reproduce.” In general, these organ lines are built using rhythmic groups of 3 and either I minor pentatonic or V minor pentatonic shapes.

There’s one characteristic of the programming which is more to do with expediency – there’s a lot of reused material. The underlying drum pattern has no variations until it switches to a disco beat; the last minute is mostly just one riff in various orchestrations; and all of the organ bits use the same “answer” phrase in bars 3-4 and 7-8. As Follins recounts, these tracks were made by typing in notes in a text editor. I’d say this is why he copied and pasted a lot. It’s not a major problem functionally: the up-and-down the arc of dynamics keeps a meaningful directionality even though much of the groove stays unchanged for multiple sections. However, once you know about them, some of the 4-bar exact repeats (i.e. in the middle of the organ solo bits) become a little jarring.

This track was evidently made quickly, within the strictures of commercial production. Nonetheless it’s remarkably crafted, especially the sounds, which are not only skilfully programmed but gel together in a very fat “band sound.” And this was done without any mixing in the normal sense of applying EQ, compression, reverb. My personal yardstick is that I repeatedly found myself tapping my foot as I analysed it. No surprise that Follins states, “My own preference in my early teens (squashed by peer pressure) was for Quincy Jones.”

The actual game Time Trax, BTW, “is a straightforward platformer that sticks to the 16-bit platforming formula rather than innovate.” It’s clearly Follin’s composing work – which he says was something too nerdy and embarrassing to mention to friends and acquaintances at the time – that has kept it in the limelight. It’s nice to see that he’s only getting more recognition with the years.

I hope you enjoyed this jaunt into some different territory for the blog! If you have any insights into VGM or synthesis, feel free to comment!

Mr. P.C.

I  transcribed this oft-played track because I was curious what notes bassist Paul Chambers plays over the long stretches of minor chords. I also wondered what he played under the rhythm section hits in the statements of the melody. I was in for a few surprises on this one! Let the analysis begin…

(You can read my transcription here.)

“Mr. P.C.” is a super common jam session tune, and in jams I’ve always heard bass players double the C Bb C hook from the melody. In this original recording, we definitely hear the piano emphasise these hits, with C- G- C- triads as correctly indicated in the New Real Book 2 chart (bars 3, 7, 11).

Real Book 2 Cropped
The commonly-used NRB2 chart

But Chambers doesn’t play the rhythm or chords – instead he walks, ending up with an Eb or an A underneath the melody’s Bb. (In fact, he walks steady quarter notes for the entire 7 minutes of the tune – no syncopations until the ending phrase. There’s a relentlessness that I admire in that musical decision.)

mr-p-c-head-tenor-bass-1-e1539017871103.png
The presentation of the head melody at the start of Mr. P.C., played by Coltrane and Chambers (piano and drums not transcribed). Note Chambers ignoring the hits in bars 3, 7, 15 and 19.

One thing that stuck out was the harmony Chambers implies with his lines. In bar 2 of every 12-bar chorus, he outlines a fast IV- V7 or II-7b5 V7 (same thing with different root note) progression. Tommy Flanagan generally plays at least the V7 of that progression also.

So, whatever about what people play in jam sessions today, the basic chord progression implied by bass and piano in the original recording is like:

mr-p-c-chords-1-e1539018056779.png
This still isn’t what the piano actually plays – Tommy Flanagan keeps up a stream of comping stabs with voice movement at the twice-a-bar rate, in the syncopated rhythmic shapes which Ethan Iverson has called “clave sentences” (referring I suppose to their dynamic balance and their ability to close off/demarcate phrases), which is the standard bop/post-bop piano sound of course.

So, the chords in the chart represent how musicians would describe the tune to each other in words, even though that description only a skeleton for the idiomatically correct performance (which involves those denser, improvised chord movements). The skeletal chord progression is what Vijay Iyer would call, quoting Paul Gilroy, a “radically unfinished form”, requiring improvisation to become complete in the moment of performance.

Anyway, I’m all out of piano knowledge, so back to Chambers’ bass-playing. Continuing a trend towards strictness and simplicity, his V7 chords are typically outlined with an unaltered triad or with this distinctive shape and its variation:

V7 Lines.png
Chambers doesn’t use altered tones on his V7 chords (even though Flanagan freely uses a #5 alteration). Chambers also doesn’t use the tritone substitution of the V7 – there are almost no Dbs in his whole performance (and those that occur are an idiomatic descent from IV-, not dominant cadences). Finally, he almost never doubles up his quarter notes, i.e. playing a tone twice in a row.

Paul Chambers is renowned to this day for his sense of swing. The jazz critic Martin Williams once wrote that “a handy explanation of ‘swing’ might be ‘any two successive notes played by Paul Chambers’. One aspect of this, which was pointed out to us in my undergrad days by bassist and educator Ronan Guilfoyle, is that Chambers often plays ahead of the beat. In Mr. P.C. this extends to actually pushing the tempo after John Coltrane’s solo finishes at 3:20. I think this was to compensate for two things: the tempo had sagged a little, and also the exit of the sax caused a drop in intensity.

This transcription (which you can read in full here) reminded me that formal exactness isn’t generally what makes improvised music great – what works in the moment and in the social reality of the band is just as important. For example Chambers’ F note in bar 85 (at the top of the form) is an odd choice, unless we note that Coltrane was wailing on an F note at that moment (1:18) and Chambers was reacting to it.

Another thing that the Williams quote indirectly points towards: “any two successive notes” in Chambers’ lines are never just “any two” notes, but follow a flawless sense of harmonic function, melody, and directionality/momentum.

The melody of the line is smooth and melodic and catchy. There’s controlled chromaticism with clear targets. (The area between the C above the staff and the F above that, in this and other performances I’ve checked out, receives quite a bit of wandering chromaticism on the G string, but I think this is a conscious tension-creating effect that perhaps exploits a potential for melodic connection with the soloist when in the bass’ medium-high register.) The technique of having the same note on beat 1 and beat 4 is often used to provide propulsion (because it makes explicit the tendency for stepwise movement of successive “beat 1s”) and gentle syncopation (it functions as a perceptual accent of beats 1 and 4). Maintaining a direction of movement is privileged, without compromising on the need for chord tones on the strong beats 1 and 3. Inversions are used to maintain smoothness. (Although deeper use of inversions is found in Chambers’ major-key performances that go through more chords and circle-of-fifths movement).

Pretty importantly, the use of that V7 chord in bar 2 of each chorus keeps things very grounded. Out of 32 choruses where bar 3 is played by the bass (leaving out 4 choruses where he stops for drum trades), Chambers plays a C root 25 times (otherwise an Eb) on beat 1 of the bar. So, the question I started out with, what does Chambers play on long stretches of minor chords, will have to wait till I finish my transcription of “So What”, the tune Chambers wrote specifically to feature long minor chords. “Mr. P.C.”, as originally played, instead uses basic cadences spelled out quite strictly, to maintain momentum bar-by-bar.

I once wrote in my practice diary about “this weird feeling that Paul Chambers is playing blues on his bass all the time, with intonation, chromatic circling, and repeated ideas.” Of course, this song is itself a blues number, but that feeling for me exudes from all of Chambers’ performances. I would describe it as a dank, slippery, urgent quality. It’s a kind of hidden blues aesthetic – the note choices are not stereotypically bluesy, but Chambers’ style feeds off aspects of blues – raw chromatic approach, chromatic fill-in patterns, and not always prioritising intonation (for example in this performance, many of the C tonic notes are flat – probably just the A string is out of tune, but if anything it fits with the feel of the performance, I think).

One thing, however, about Chambers’ playing definitely fits with an old-school or blues approach, and that is his very comfortable relationship with repetition.

A Comfortable Relationship with Repetition

The main discovery for me in this transcription was how much Chambers repeats lines. To illustrate it, I augmented my transcription with a cheery colour-coded guide to his most-used two-bar (and one single-bar) patterns. Here goes:

Mr. P.C. 1 Labelled WalkupMr. P.C. 2 Labelled WalkupMr. P.C. 3 Labelled WalkupMr. P.C. 4 Labelled WalkupMr. P.C. 5 Labelled WalkupMr. P.C. 6 Labelled Walkup
These are only his most common repeated figures – there are others I haven’t mapped out. We could speculate as to reasons for this high degree of repetition:

  • the tempo is too fast be constantly thinking of new lines that still function well
  • it’s a minor key which, for acoustic reasons, is harmonically weaker and therefore restricts the use of inversion and reharmonisation
  • it might have just been Chambers’ aesthetic to “play good stuff”, a phrase I heard on the bandstand from my friend and colleague, the drummer Dominic Mullan. As I understood it, to “play good stuff” is to limit one’s desire to be expressive or showy, in favour of things that you know will be effective, thus creating headspace for groove and spiritual energy.

A couple more thoughts on repetition… it seems clear that Chambers often repeats material in two consecutive choruses, i.e. reusing what was recently under his fingers. Choruses 2 and 3, or 9 and 10 demonstrate this. Also, I think when he moves away from repetition, it’s to do with interacting with the soloist. For example, the end of Coltrane’s solo (which I think is quite clearly emotionally/dynamically telegraphed) inspires Chambers to push himself – this being after all a tune that Coltrane named in dedication to Paul Chambers – so we get the beautiful little melody of bars 204-207 (3:10), with no reused material.

Mellow Melody

Another impression I’ve picked up from studying Chambers, though it would take deeper study to really demonstrate it, is that he is strongly attuned to the soloist most of the time, and this often affects his line, for example that F tone he plays with Coltrane that I mentioned earlier. (One cool, and indeed telepathic example is the spontaneous harmonised blues lick (along with the trumpet) at 2:43 in the album version of “So What”).

Nearly time to wrap up here… some quick methodological notes on the highlighted visualisation of Chambers’ repetitions… I chose 2 bars as a minimum unit because at this fairly fast tempo I think it’s the unit that Chambers is working in conceptually. Sometimes I’ve used the highlighting for repetitions that are not exact but instead diverge somewhere… I’ve made a shorter highlight (say 7 rather than 8 beats) to acknowledge this. In all cases where I used the highlighting, I believe that an overall prototype has been reused even if one note is different.

I had a last issue to discuss, but this article is already long and has also been sitting on my hard drive for too many months. But you might like to comment regarding this question: should we as players copy P.C.’s style today? (Thanks to my pal and great bass player Damian Evans for this thought.)

Not My Theory

This Gang Starr classic, from 1998’s Moment Of Truth album, has a pun for a title.

If you heard the phrase before reading it, you might come away with one meaning: a reference to Robin Hood stealing from the rich to give to the poor, as laid out in the song’s chorus. “Squeeze the juice out of all the suckers with power/And pour some back out so as to water the flowers”. My blog post will look at the emergence of various further meanings from the title, to investigate if it demonstrates an African-American style of communication called Signifyin(g).

I think I first bumped into this term in Vijay Iyer’s writings. Signifyin(g) is about indirect, allusive ways of conveying meaning. Although it is “so shared in [African-American] culture as to long ago have become second nature to its users”, for non-acculturated people like me it’s hard to get a grasp on. After doing some reading about it to contribute to a paper on Ahmad Jamal I presented at the SMI/ICTM postgraduate conference this January, I noticed that “Robbin’ Hood Theory” might form a neat teachable example of Signifyin(g). All the quotes in this piece are from Ingrid Monson’s Saying Something (which is about Siginifyin(g) and similar processes in jazz music) and Henry Louis Gates Jr.’s The Signifyin(g) Monkey.

“Black people frequently ‘enounce’ their sense of difference by repetition with a signal difference.” (Claudia Mitchell-Kernan, quoted by Gates)

The repetition Mitchell-Kernan mentions is the reuse of (often pop culture) material; in the Gang Starr song title, it’s the reference to the legend of Robin Hood. Pastiche, allusion, intertextuality are other terms used for this re-appropriative aspect of Signifyin(g).

cw-robin-hood-disney-1

As well as this repetition or appropriation, Signifyin(g) involves a “signal difference” which often marks out “two discursive universes” of black and white (Monson).

Robin Hood clearly belongs to a white “discursive universe” – English folk culture and mass culture, and the idea of the European middle ages. Is there a “signal difference” that marks a different, black discursive universe? Yes, of course: the use of black pronunciation and slang in “Robbin’ Hood”.

What does this do? Well, Gates also called Signifyin(g) “ironic reversal with signal difference.” Reversal means that the appropriated material – Robin Hood – is given an ironically reversed meaning. The reversal here is the switch from “Robin Hood – stealing from the rich” to “robbin’ hood[s] – stealing from the poor”, referring to economic exploitation and systematic deprivation in urban ghettos.

Now we have two disparate meanings, one marked as white by its cultural background and one as black by slang and pronunciation, and with opposed meanings. Now things get interesting…

Gates’ classic book on Signifyin(g) as a literary technique investigates the Signifyin(g) Monkey tales – a genre of black folk verse about a trickster monkey who gets into and out of trouble because of his Signifyin(g) talk. Gates discusses how Signifyin(g) involves “a measure of undecidability within the discourse, such that it must be interpreted or decoded by careful attention to its play of differences.”

The Gang Starr title is a neat example, I think, because we can see some of this play of differences. When lyricist Guru juxtaposes a bandit hero against the exploitation of ghettos, we can infer that he is making a case for “Robin Hood”-type action against rich exploiters. But because of the ambiguity and indirectness, we as listeners have to participate in constructing this meaning. (Very much comparable to how people participate in a groove by playing, vocalising, or dancing along.) We’re challenged from a number of angles by Guru’s title: it asks, do we feel similar to, sympathetic to or distanced from people who speak in slang and inhabit “hoods”? if sympathetic, how do we feel about them taking outlaw action? do we think Robin Hood and black ghetto-dwellers have a similar justification for breaking the law? if not, is it because of their different races, or because heroism is a fiction? do we enjoy the appropriation of a white culture hero to make this point?

Through challenge and an ambiguity that allows space for multiple meanings, “the hearer is thus constrained to attend to all potential meaning carrying symbolic systems in speech events–the total universe of discourse.” (Mitchell-Kernan)

That’s me done for today. You should definitely check out Ingrid Monson’s and Henry Louis Gates Jr.’s books if you find this interesting. They have many more examples and quotes.

I hope to be back soon enough with another post. If it’s not some bass playing thing, maybe it will be something about the very use of the phrase “black music” (which obviously has a lot of currency on this blog), because the Jazz Studies Reading Group that I help run is reading two chapters about how music relates to identity and race. Due to the fact that, so far, I write all these blog posts based off readings and recordings rather than face-to-face interactions or interviews with black people, I think it wouldn’t be too hard to find problems with my cavalier use of the term. Anyway, we’ll also likely be reading Monson’s book in the coming months. If you’d like to come to our meetings in Dublin, email us at the address in the image.

Thanks for reading. Feedback is always much appreciated!

Poster February 2018 Tweaked