Sheet Happens – Concept Phase
The next project in development at Untold Entertainment is called Sheet Happens. It will be an AIR (Adobe Integrated Runtime) app, which means it will sit on the user’s desktop. i’ll be building it in Flash (saviour of the universe).
Software should solve a problem, or endeavor to make a task easier to do. In this early concept phase of the Sheet Happens app, i’ll outline a few problems, and then explain how i intend to solve them by building this software.
Problem #1: Sheet Music Search and Organization
i’m a hobbyist musician, and can play well enough from a “fake book”, which has song lyrics accompanied by chord descriptions, with a melody line for the vocals. More often than not, the sheets i find on the Internets are even more bare-bones, consisting of only the lyrics and chords. These compositions assume that the musician already knows the melody.
Here’s a comparison between full notation, “fake” notation, and chords-only:



Whenever i want to play a song, i look it up on the Internets to hunt down one of these fake sheets. Then i either print it out, or i memorize the chord progression (if it’s simple) and play away. i never bookmark the music. Only very rarely will i copy/paste the music into a text file.
It’s not a very solid system i’ve got going. i have to hit the Internets and re-search for a piece of music every time i want to play it, because i can’t be bothered fishing through a bunch of text files. The Sheet Happens app is going to solve this problem by organizing fake sheets using AIR’s included database. Imagine being able to store your sheet music songs with an interface like iTunes:

You’ll be able to sort by year, genre, artist, etc. You can also search your song list.
Problem #2: Inaccuracies
The trouble with many of these fake sheets is that they’re written by other hobbyists who fiddle around, learn the chords, and stick them in a text file against the song lyrics. Sometimes, the lyrics get written as the hobbyist hears them – for example:
Purple Haze, Jimi Hendrix – “Scuse me, while i kiss this guy”
Bad Moon Rising, CCR – “There’s a bathroom on the right”
What a Wonderful World, Louis Armstrong – “The bright blessed days, the dogs say goodnight”
Tiny Dancer, Elton John – “Hold me closer, Tony Danza”

You can usually work around these mistakes if you know the proper lyrics, but since i view these sheets on a webpage, i can’t get in and fiddle with the bits.
It’s more challenging when the chords are incorrect. i have a hard time remembering that the Dm is actually supposed to be a Dmaj7 when i’m in the middle of singing and playing, say, Every Rose Has its Thorn by Poison. It’s frustrating when my soulful crooning gets interrupted.

So! To sum up this point, the Sheet Happens software will allow you to edit lyrics and chords. But let’s go farther than that.
When people write these fake sheets, they’re not always careful to put the chord changes in the right place. The next chord should really be written above the word where the chord changes, but this isn’t always easy or accurate when you write the lyrcis in Notepad. So Sheet Happens is going to turn the chords into draggable icons that you can position precisely over the proper lyric so the changes happen in the right place.

Ideally, you’ll be able to import a text file or HTML file into Sheet Happens. The software will strip out the HTML tags. It will automagically recognize the chords, and will convert them into programmatic chord icons. Then we can have fun, fun, fun. (That is, until daddy takes the proverbial T-Bird away.)
Problem #3: Transposition
So far, Sheet Happens isn’t going to change the world. It’s basically Notepad attached to a database for easier file management. Let’s crank it up a notch.
When i play a song from one of these fake sheets and it’s too high or too low for me to sing, i cheat. My keyboard has a “transpose” button that lets me adjust the key up or down. A keyboardist can do this very easily, but a band can’t. Pianists, guitarists, tuba players – they’re all out of luck if they can’t transpose the music on the fly with sheer mind power.
Since the Sheet Happens chords are already magical, draggable and programmatic, let’s give the user a “transpose” button to change the sheet music’s key up or down on the fly. NOW we’re talking.

Problem #4: Tabs, Chords, Fingering
There are a few differences when musicians read music. Sometimes, fake sheets will have split chords, like F/C. This means that the pianist or keyboardist should play F with his right hand where the high notes are, and the C chord with his left hand where the low notes are. Guitarists can’t really do this. When they reach a split chord like F/C, they have to remember to play only the F chord.
It sounds pretty easy, but i work with a lot of new guitarists, and this trips them up every time. They usually try to play F first and then C, when they should only play F.
To solve this problem, Sheet Happens will include a split chord toggle to show either the split chord, treble chord only, or bass chord only. So you’ll be able to set “treble chord only”, and then print off a few sheets for the guitarists in your band.
Pianists and guitarists also read chords differently. Guitarists sometimes use tab notation, which shows a little diagram depicting which strings they’re supposed to hold down to play a chord. Pianos and keyboards have keys instead of strings, so guitar tabs are useless. Beginner pianists might like to see fingering charts that show them which keys to press.

Since the chords in Sheet Happens are all juicy and programmatic, we’ll throw in an option to show chords, tabs, and keyboard fingering. We can even build in options to choose different chord intervals (different ways of playing chords), and if we go REALLY crazy, we can throw in support for other instruments like trumpets.

Problem #5: Not Enough Love in This World
i’ve often heard the complaint that there are too many men, and too many people making too many problems, and not much love to go round. Truly, this is is a land of confusion. To solve this problem, Sheet Happens will love the user unconditionally and will listen to his or her problems. To accomplish this, i’ll use an associative array. Or something. i dunno.

On to Phase Two!
Phase Two of the project design is to sort out what kinds of classes i need to build to serve the program. As i am brand new to object oriented programming, i expect to make many mistakes in this phase, but i’ll share them all as i make them. i am halfway through Colin Moock’s Essential Actionscript 3.0 book, and i have the O’Reilly Actionscript 3.0 Cookbook at my side, so i’ll soldier through and record my progress. Stay tuned for the next update.
Popularity: 3% [?]



Email This Post
ryan – i’m a musician too – would love to be a tester! this ap would rock!
i’m getting some god feedback on this idea. The law of supply and demand basically states that i MUST complete this project, or i’ll lose my soul. Or something. Admittedly, i don’t understand economics, but i’m sure there’s some kind of penalty.
Stay tuned for more Sheet Happens news! i am thrilled to have you as a tester. (btw – what do you play?)