New User Guide

Lessonator User Guide On Scribd

Lessonator User Guide On Scribd

The new Lessonator User Guide (83 pages, 8.8MB) is available as a direct PDF download and on Scribd.com for download & online viewing. Scribd also supports reading on mobile via their Scribd iPhone/iPad reader app.

The User Guide, like the app itself, is a work in progress and I will be making updates on a regular basis to add content and/or make fixes. You are totally welcome to read it and send me your comments and/or corrections. It’s 83 pages but mostly images and annotated screen shots.

Direct PDF link: Lessonator User Guide

Yeah, yeah…beta app coming next…

Apple Keynote For Music

Lessonator slides

Lessonator slides

Lessonator can be described as “Apple Keynote for music“. It creates interactive slide shows where each slide can play a complete score. Given the importance of the slide concept, it’s hard to believe that I didn’t have a working implementation until April 2013.

I had the idea of making Lessonator into a music presentations in May 2013. But notation was already causing me to re-design a huge chunk of the application and when I was finally done in December 2012, I didn’t feel like adding slides. “Ship it now!”, the little voice in my head told me.

Slide notation architecture

Slide notation architecture

Then, as I tested the software and tried using it, I realized it was way to cumbersome for musicians to learn to become 2D animators in order to create a music lesson. At this point, Lessonator created single slide animated music lessons. It worked but it was obvious that supporting multiple slides per lesson/project was way more flexible, allowed the use of different templates for each slides and was a pretty easy concept for users to grasp. I could even use the same shortcuts as Keynote. Boom!

Slide list view

Slide list view

So I cancelled the December release and after a brief winter holiday, proceeded to rip the software into various pieces required to go from single slide to infinite number of slides. The front-end UI stayed pretty much unchanged, but inside it was mayhem & it took me five months of experimentation to finally come out with a solid slideshow design.

The underlying animation system is still there but now it it used to automatically interpolate slide transitions. That’s an idea I’m very happy with: adapting an exiting mechanism to solve a new problem. This is what object orientation was all about.

Slides were a risky conceptual leap but I’m glad I took the plunge because now I can just say: “Yeah, I wrote the Keynote of music.” and musicians immediately know what I’m talking about. That’s the power of slides.

Manual Labour

Writing the manual, 'Yall!

Writing the manual, ‘Yall!

This week, I’m writing the Lessonator manual. This is the last step before releasing the beta & my last chance to fix any oversight and remove things that are not quite ready for prime time. It’s both exciting and nerve wracking as I go back and forth between making screen shots and coding fixes.

As far as coders go, I’m unusual because I  enjoy writing users manuals. A clear and concise manual means that the user interface and the software itself perform as advertized. If something is too difficult to explain, it’s probably also difficult to use. This is a philosophy I took from Stephen Wolfram, principal inventor of Mathematica. Wolfram famously wrote the software manual before the product was complete so his developers could use it as a design document. Brilliant but very difficult to do in real life because of the discipline required.

Back when I was leading a development team, every person I would hire to write the manual would end up leaving. So I learned to do it myself and enjoy the process.

It’s also the first manual that I get to write using Apple’s Pages. In the past, I’ve used Microsoft Words for Mac to get the job done, but have since migrated to a totally Apple-centric workflow. I couldn’t be happier. Pages works like Keynote and even has a pretty advanced Bezier shape editor — which is a pleasant surprise.

For those curious, my tool pipeline is [Illustrator -> Photohop -> Pages] and I use vector graphics as much as possible to keep things scalable and resolution-independent.

OK, back to work. Next few updates should be interesting, so stay tuned…

Back Into Music

The Lessonator project is back on track and I’ll have some good news soon. The short story is that the underlying software foundation has undergone a thorough rewrite. The UI looks essentially unchanged but now the software works a lot better and can be maintained efficiently by a single developer (me!). Simplicity takes time. None of this would have been possible without the rewrite.

As some of you already know, Lessonator is also a way for me to get back into music after years of not touching the guitar or keyboard. I’m re-learning to sight-read and using the software to plan my daily practice sessions. Once upon a time, I knew what a Phrygian scale was and could play several inversions of a chord all over the fretboard. I’d like to go back to that level of proficiency and Lessonator is helping me do that, one day at a time.

I have also started posting some of my old (mostly synthesizer-driven) music demos on Bandcamp under the name E.L.T (Emergency Location Transmitter — an aviation term). You can check them out by clicking on the CD cover, which I drew several years ago:

E.L.T Stem Cell E.P. On Bandcamp

E.L.T Stem Cell E.P. On Bandcamp

A Good Guitar Day

Just wanted to post a little update on the development front. Things are unfolding fast as I race toward the beta.

Guitar Notation

Guitar Notation
It appears that guitar notation (treble clef + tab) is working. From this screen shot, you can see that I still have some work to do arranging the information so notes don’t collide with other graphics, but it’s pretty much there. Same thing for bass. I’m now knee deep in MusicXML IO, which is the last task before I can release the beta. I’m very excited.

Strat Guitar Model

Fender Stratocaster Guitar Model In Adobe Illustrator. Yeah, there’s a lot of layers…

Guitar Modeling
On Twitter I spent some time explaining the 3d guitar modeling process and thought this would interest some people here. In a nutshell, guitars in Lessonator are first modeled with 2d curves in Adobe Illustrator and then reconstructed in 3d on demand. This means that the application only stores the 2d files and generates/renders the 3d geometry on the fly. This results in very small files for distribution and downloading while preserving the curves’ inherent smoothness qualities.

For those interested, I use a type of mathematical curves called NURBS (Non Uniform Rational B-Splines) which are a derivative of the Bezier curves used in Illustrator and other drawing programs.

Final 3D Strat

Final 3D Fender Stratocaster generated on the fly in Lessonator.

This process will allow me to generate new guitars and basses in a timely fashion with very few resources. One day, I hope users will be able to draw their own guitars the same way some games let you design your own levels. Stay tuned, there ain’t no stopping us now…

About GarageBand and Learn To Play

Learn To Play
In January 2009, Apple released “Learn to Play” as part of GarageBand ’09guitar and piano music lessons for the budding Mac musicians. The Learn To Play lessons ran inside GarageBand where they could take advantage of existing audio and MIDI playback capabilities. The lessons were featured in the keynote that year and were a hit amongst Apple buyers and journalists. Apple expended the initial lessons with new free and paid artists lessons. That was in January 2009. Since then, nothing.

Garageband '09 - Learn To Play

Macworld ‘s Chris Breen, himself an experienced musician wrote a detailed review in which he praised the idea of offering music lessons in such an appealing package. He had previously-penned an article about other sources for music lessons and was thus ideally suited to review Learn To Play.

CreateDigitalMusic‘s Peter Kirn, who was also the technical editor for the Macworld review had this to say about Learn To Play:

Incidentally, it’s too bad Apple doesn’t offer a way for musicians to build their own lessons in GarageBand; I think that’d be a big hit.

This would have resulted in more demand for Apple products and relieved them from having to produce this type of content themselves. This is similar to iBook Author where Apple creates an authoring tool that others use to produce books and magazines. Unfortunately, such tool never arrived, and as a result users were left having to look elsewhere for more advanced lessons. Apple is understandably focused on other things (you know…making Macs, ipads, iphones, iOS, OS-X and tons of money…) and was perhaps expecting a third party to come and fill the void.

GarageBand ’11 did add some features to Learn To Play but the lessons are the same as in GarageBand ’09. Again, Chris Breen had this to say in his Macworld review of GarageBand ’11:

The Lesson Store is also unchanged. Check the store with either GarageBand ’09 or ’11 and you’ll see the same group of lessons.

Conclusions: great concept and great execution by Apple but no new content or authoring tool.

Lessonator
This is where Lessonator comes in: providing an Apple-like authoring tool that lets users create their own music lessons with a few mouse clicks. It is not a clone of either GarageBand or the Learn To Play feature. That’s a good thing since Apple has a patent  on the whole technology.

Lessonator 3D Frame View

Instead, Lessonator is based around the idea of creating lessons like an Apple Keynote presentation: you drag and drop media onto a canvas and edit until you’re done. The resulting lesson can be played back in real-time or exported as a movie. This approach has the benefit of allowing anyone with a web browser to download and/or stream Lessonator lessons.

Conclusions: Lessonator was designed to fill a void that Apple knowingly left empty. And I sure hope Peter Kirn was right about this being a big hit…

First Look At Notation

Lessonator notation screenshot
Here is a quick screenshot of what the notation feature looks like right now. Music notation is a vast subject on which I could easily spend the next year and still only scratch the surface of what’s possible.

How It Works
Basically, you start by selecting a lesson template which already has a notation cell (they all do). This notation cell is part of the lesson canvas and you can add notes, rests, beams, ties and slurs to it. You can select amongst a predefined set of key and time signatures (same as Apple’s GarageBand). Notes and rests can be selected and their pitch and position modified using the arrow keys or through their respective inspector sheets. They can be grouped together to form chords, beams, ties and slurs. Using the TAB key cycles through note durations (whole, 1/4, 1/16, etc). Note entry is very fast and you can generate chord notes on the staff by dragging a chord change onto a treble or bass staff. Very cool.

As you can see from the screenshot, the app does not perform any bar duration checking to see if you have too few or too many notes/rests on a bar. Therefore, you’ll have to know what you are doing.

What’s Next
Next up is adding an adaptive beam drawing (allowing for extreme beamed notes),  guitar/bass tablature and importing MusicXML files. A usual, screenshots will be coming soon.

Explaining Lessonator

One challenge that I’ll have soon is to try to explain the app. I basically scratched my own hitch: I needed a tool to create lessons and exercises to help me improve my guitar and keyboard playing. Yes, it can be used for music lessons (hence the name), but it’s really a self-study tool. You load a MusicXML tablature file and it shows you how to play on a 3d instrument. You can add animated notations, images and a narration audio or video file.

The best way to think of Lessonator is as a Apple’s Keynote for music. In addition to drag-droping movies and images on a canvas, you also have 3d instruments and notation cells instead of pie charts and Excel/Numbers spreadsheets. I think that 3d guitars look much better than pie charts.

Lessonator 3d frame layers

The other app that was a huge influence on me was ScreenFlow, the screencast editor. I love the simple way in which you can do light movie editing right inside the tool and create a final movie. Lessonator has a similar set of tools for light editing of movie and audio tracks. The idea is to be able to experiment while you put together your next masterpiece.

Anyone with a pulse and a Mac will also recognize the screen layout as similar to Sparrow and the classic Atebit Twitter Mac client. I love this UI and was a bit burned out on the standard Mac app toolbar with candy buttons. This UI is minimal, clear and familiar for a lot of people.

Also, I’ve finally settled on a app icon. It’s a medallion with a bird on a speaker. “What does it mean?”, I hear you ask. Nothing, except that I had made this illustration years ago and never found a project on which to use it. Yes, it’s kinda blue, but not as much as the Apple Mac app icons. I like it a lot.

Lessonator Icon

OK, back to programming. I’m still coding the notation feature and so far it looks good. More pictures coming soon.

Lessonator – Dev Update

I’m still working on the Lessonator software and hope to have a beta soon. I’m not a perfectionist – it’s just that I want to make sure everything works as expected. I’ve put a lot of stuff in and had to remove a few things that were either unnecessary or didn’t make sense.

The last task is quite a mouthful: staff and tab music notation. So far, this is how it looks:

Lessonator - new notation movie cells

Lessonator - Bass Lesson

My goal here is not to have a complete notation system, since Lessonator is more like an animated presentation program. For example, bars have to be the same size to allow the cursor ball to move at a constant speed.

The whole thing is going to look awesome! Stay tuned!