Wednesday, May 30, 2012

The Soul of Trivial Software and InNotation's Elite

This section was moved from the week 5 update into its own post.

The Business End - What's In A Company


Others' Soul-Searching


Many of the companies you support have mission statements and formal business plans.  Looking at these can be a fun and enlightening exercise. See for yourself if you can identify the companies in the following ten mission statements and core values.

Highlight the missing names to see the company.

  • Google’s mission is to organize the world’s information and make it universally accessible and useful.
  • Apple believes "that people with passion can change the world for the better." -- at least they did in 1997, according to this video...
  •  ... but on their website, they say "Apple designs Macs, the best personal computers in the world, along with OS X, iLife, iWork and professional software. Apple leads the digital music revolution with its iPods and iTunes online store. Apple has reinvented the mobile phone with its revolutionary iPhone and App Store, and is defining the future of mobile media and computing devices with iPad."
  • Amazon’s vision is to be earth’s most customer centric company; to build a place where people can come to find and discover anything they might want to buy online.
  • Dell's mission is to be the most successful computer company in the world at delivering the best customer experience in markets we serve.
  • Facebook’s mission is to give people the power to share and make the world more open and connected.
  • Blizzard Entertainment is "Dedicated to creating the most epic entertainment experiences... ever.".
  • Riot Games aims "to be the most player-centered game studio in the world".
  • Microsoft’s mission is to enable people and businesses throughout the world to realize their full potential.
  • Twitter had its mission statement as a work in progress for a long time before deciding it wanted "To instantly connect people everywhere to what's most important to them." 
Some are more easily identifiable than others.  Some are tied to a product; others to a never-ending goal.  All offer a myriad of paths for us to identify ourselves.

 Trivial Software


Trivial Software did not start by looking to make the most money or to gain the most number of users in the world.  Trivial Software is the result of looking at current software experiences and being dissatisfied despite such traditional measures of success.  We think not everyone is content with their software -- we see that some of you are even frustrated with whatever industry that software fuels.

We believe you are part of an elite population and that you're being overlooked thanks to the mainstream success established by a majority.  It is genuinely sad to think that you are limited to the tools of the majority, because we also think that behind that dissatisfaction lies a powerful and restrained creativity.

So... we're going to make tools for you.

Trivial Software's mission is to provide
services tailored to an elite niche
overlooked in mainstream successes.

Let's look at what that means at the product level.  Let's talk about our first tool for you: InNotation.


Here are some top results from a Google search for "top hits", at the time of this writing. 

http://www.billboard.com/charts/hot-100#
Perhaps you're one of those that know how all of these songs work without even listening to them.  You know exactly what software is required to record a sound, clean it up, and how to edit it so it repeats across a few loops.

You know more went into auto-tuning than was spent on anything you actually call music.

You know this because, maybe even in addition to doing the above professionally, you write your own music at home.  Works that you consider real music.  You even keep good company with friends that perform your art with you.  You've wanted to talk to them in that language musicians know... but writing it by hand took too long.

That only took hours or days to complete
and it's certainly all correct, right?
Time to write someone else's part...

Using music software disconnects you from your creations; clicking a box to select a note length interrupts the rhythm drumming on in your head.  Forget it.  So much easier to record that melody, import it in, clean up that sound, maybe edit it across a few loops... wait a minute.

This is limitation, artist, and you are not alone in this unintended oppression.

InNotation is for you, the elite musician that can speak the language of sixteenth notes and fermatas, to intuitively create sheet music. 

We will know InNotation is a success if our civilization sees a rise in high-quality, deep, or complex music.

Week 5: How We Face Failure

Week 4's build is now available at http://dfavela.com/innotation.

There are not many differences from last week's build; back-end work was completed for input, which is turning out to be a larger endeavor than a single week's worth of work.

Confidently Facing Failure


The team holds itself to a set of work to complete each week.  We're musicians just like you -- we want to get this tool out and it won't happen unless we keep taking steps forward.

If we don't finish what we wanted to, that's a failure.  If we do finish it and can say "Our users would want this right now.  WE want this right now!", then that's a success.

We unabashedly admit failure, identify the source of that failure, and address factors leading to it for week 4.

The Problems


Bugged Build
Week 4's build introduced a bug that affected how rests and notes were drawn.  This bug was severe enough to make us think it was unacceptable to deploy and also prevented us from seeing the fruits of our new work.

Large Feature Specs
The feature specifications for input and rests are also too large.  Tackling all of the cases possible from sixteenth notes to whole notes was slowing us down considerably -- our work was feeling more tedious than challenging and the results-to-effort ratio was consequently unsatisfying.

The Solutions


Bugged Build
1. The last stable build -- which in the worst case will always be what's deployed weekly to the website -- was used as a basis for work.  New code is being integrated into this stable build.
2. The MVC design pattern was discussed with the team so that code would follow principles that make our code more functionally modular. For those of you not versed in design patterns, that means that a bug in our growing code will not reach far (if at all) outside its module.  

Large Feature Spec
The stories around input were broken down and are now based on the different duration of notes and rests -- a basis which we saw firsthand came naturally as we programmed last week.  With that experience now integrated into what will become the input system, we can proceed with a better sense of scope and granularity for the input system.

Firsthand Look at How We Work


If you've ever wondered how we work, a video is now available where you can watch us go through our week 4 discussion for the above.   Here are some more details, in case you're wondering how things go in general.

Mondays 
  • Review of last week's work
  • Retrospective of last week's work
  • Planning for the upcoming week's work
Tuesdays through Fridays
  • Any necessary discussions or questions around current work
  • Programming!
We communicate remotely from 2-4pm using Google+.  Sometimes, we have ice cream; we suppose that'll become  more frequent if we someday want a physical office space.



Soul


The previous section about Trivial Software has been moved to its own post here.

... And The Beat Goes On...


Week 5 will be spent developing the input system.  Next week, expect to see sixteenth rests, sixteenth notes, and eighth notes behaving in their final implementation for input.  We will also be programming the drawing of different note length variants.

Week 5 Stories

Monday, May 21, 2012

Development Update: Measures and Input

Week 3's build is now available at http://dfavela.com/innotation!

The input method continues toward its intended implementation -- being able to hold down a key and seeing the duration directly reflect that hold, much like a piano.  Basic rendering -- such as getting the measures written out -- also continue shaping up.

USC Greif Center


Though we were not selected for its summer program, the USC Greif Center has offered mentoring.  An appointment will be scheduled after our business plan is better formalized this week.

... And The Beat Goes On...


Week 4 will see continued work on last week's stories for input refinements and rendering.  Expect to be able to write music down to sixteenth notes and see them appear correctly on your song.

Our business plan will be formalized to best direct USC Greif's mentoring.  Expect to see Trivial Software's mission statement, core values, and other organizational standards by next week.

Development Notes for Week 3, May 2012


Creation


  • Input system now based on sixteenth notes.
  • Measure are now rendered as each measure is written.

Wednesday, May 16, 2012

Development Update: Writing Notes of Different Types

Last week, two project backlog items were worked on.


If you're wondering how they turned out, just head over to http://dfavela.com/composertool/ and press a few keys as if you were playing quarter, eighth, triplet, and sixteenth notes.  Let each beat sit without your input and watch quarter rests roll out.  You'll notice that notes you've written don't just disappear anymore.

Do these steps forward excite you or inspire you as to where we're headed?  Want to share those ideas that are starting to spin in that artistic mind of yours?  We welcome them.  You know where early adopters can post.  If you're someone who just landed on this page but have just as much interest in music creation software, we'll make sure to read your comments if you're not yet in our circles.

USC AIM Summer Program Submission


Trivial Software was not selected for the USC Greif summer program.  We can't wait to see what their selections look like!  They have suggested we contact them further for possibilities outside of the summer program.

What does this mean for your tool?

It means that we continue on as intended.

We happily welcome funding, acceleration, or other options we may not even be aware of during today's exciting startup culture.  Such possibilities could quicken our delivery.  If no one joins us on this venture for musicians all over the world, rest assured -- we will still continue at our own pace, as much as we can!

Latest Trivial Party Member Update


Interested in what our newest member is learning and how we ramp him up?
  1. Get set up with code.  At Trivial Software, Robert's learning about source control with git.
  2. Demystify methodologies.  By working with us, Robert will know the production patterns at large video game studios and his role within them as part of a development team.
  3. Confirm it all works with the first task. With the first commit from a simple backlog task, the newest addition to a team can confirm that they're ready for their future contributions.
With our newest Trivial member, we've confirmed we can handle further additions to the code base in the future.

... And The Beat Goes On...


Week 3 will bring some back-end changes that refine how user input is made into music.  Expect measures under all your notes instead of just that first one.



The backlog will have a few new items prioritized into it, including the following.
  • Google Wallet functionality, so our users can let us know they want us to keep going.
  • Printing of sheet music.
  • Editing of previously written notes.
  • Optimized storage of previously written notes.
  • "Quantized" input.  This came from one of our users; do all of you know what this means?

Development Notes for Week 2, May 2012


Creation

  • Notes now persist on the sheet after they're written.
  • Sixteenth, triplet, eighth, and quarter notes can be written in each beat.
  • Quarter rest is written if the artists doesn't write notes in the beat.

Audio

  • The metronome sound has been removed.  

Business

  • Added usage, name, organization, and communication information.

Sunday, May 6, 2012

Code Repository, Backlog, and An Engineer

USC AIM Summer Program Submission 

An application has been submitted to the USC Lloyd Greif Center for Entrepreneurial Studies for their summer program.  If selected, we expect this "Accelerator, Incubator, Mentoring" program will help with funding -- which makes this venture more confidently feasible -- and mentoring -- which gives us experienced insight to better inform our business decisions.

Backlog

The product backlog continues to be built out.  Features are being broken down into Scrum-style "user stories" to easily distribute work among available engineering efforts.

Enough features have been added to cover the next few weeks. As it stands, a demo-able proof of concept will be available after the implementation of the next three user stories.

Code Repository

Trivial Software now has a Git repository for its source control.  Future engineers will now be able to retrieve the private code hosted by Git.

An Engineer

One of our future users was so enthusiastic about music that he has offered his engineering skills to help quicken development of our project.  Beginning May 12th, Robert Fontan will collaborate on writing the javascript code behind this HTML5 project.

Welcome to the party, Robert!

... And The Beat Goes On...

With the above activity going on for the business end of things, our actual product development this last week hasn't been as fast as usual.  Despite that, our future creators continue to give us support and excitement!  This next week will bring our focus back to the javascript code for the next backlog items.


"And don't worry, 
I don't think MuseScore is competition.
We are making old fashioned desktop software,
you are making the future."

- Thomas Bonte, 
CEO/Founder of MuseScore


Our engineering efforts will be directed toward
these user stories.