A Story Behind Harmonia

by: Ming-Ching Chiu


Before joining Illiac Software, I was a graduate student at the University of Illinois. From being a teaching assistant to running my own music theory courses, I taught undergraduate music theory courses there for eight years. I enjoyed teaching, and I always sought for ways to help my students learn. Questions that I asked myself frequently include:


“How do I make students understand the materials better?”

“What examples should I use to demonstrate a new concept?”

“What grading scheme should I adopt to motivate students to learn more instead of making them feel defeated?”

“How do I make sure the grading is fair?”

“How should I design the homework so that students get enough practice?”

“How should I design the homework so that my TAs or I don’t have to spend the entire weekend grading?”


I was able to answer some of the questions myself, but for some questions, I simply didn’t know the answers. Grading, is one of these hard problems. There were countless times I ended up grading at 2 am in the morning. It was the amount of homework I wanted my students to have, but it was also a lot of grading for me. I couldn’t find a way to balance between how much I wanted my students to practice and how much time I wanted to spend grading.


Several weeks before I defended my doctoral thesis, Dr. Taube approached me and asked whether I was interested in joining Illiac Software, the company he just founded at that time. When he showed me the prototype of Harmonia, their only product, I immediately saw its potential. It provided a possible solution to my grading problem, a problem that also troubled many teachers like me. We all wanted our students to practice more, but we cannot spend our whole life grading.


People might ask: isn’t grading part of your job? Avoid grading seems to be something lazy teachers would do. This is what I think: to me, grading is not what makes a teacher a teacher. An educator’s main responsibility should be motivating students to learn, improving students’ learning skills, and helping students learn. Grading homework is just one way to provide students feedback. It is not even the best way considering what technology we have nowadays. By using tools to save grading time, teachers can free up more time to focus on more important part of their teaching job, such as designing better course content, spending more time interacting with students, etc.


With this belief, I became part of the Illiac Software startup team. Back then, nobody knew how to run a startup business. What we had was tons of teaching experience combined, passion for music theory, music education, and knowledge to write a computer program.


Today, almost four years later, Harmonia has transformed from a lab prototype to a real product with thousands of users. However, we are not satisfied. Harmonia is still very young, and there are still many things we want to accomplish. We are thrilled and thankful that teachers who have used harmonia tend to come back every semester, and the number of our users keep doubling every semester.


At the moment, Illiac team is working around the clock meeting the deadline to release a new version in summer. The new app is a complete rewrite with new features. I am excited to see how much the new Harmonia app will help shaping the future of music theory education.


Spotlight: Harmonia's Discussion & Comment System

by: Rachel Mitchell

Did you know that Harmonia offers students and teachers an online discussion and comment board?

Our discussion board facilitates the learning process between teacher and student by offering students an easy way to post comments and ask questions right from our website.

Students often have questions while reading theory lessons or completing homework exercises. In such cases, students can log in to the Harmonia website, ask a question, and await a response. All comments and responses are logged and attached to specific assignments for easy reference.

So how does it work?

Step 1: In the Harmonia app, complete and submit an assignment. If you have a question or a comment about the assignment, proceed to Step 2.

Step 2: Log in to the to the Harmonia website. Find your course in the Dashboard and locate your submitted assignment under the Assignment Status tab. Click "View" to see your submission.


Step 3: In the comment box to the right, type and submit your comment. The Harmonia Server will send an email message to the course instructor, which prompts him/her to respond in the same website portal.


Step 4a: Following the link provided in the Harmonia Server email alert, an instructor may log in to the Harmonia website, answer the student question in the text box on the right as seen above, prompting another automated email response, this time to the student. Students may likewise find comments from teachers under the "Assignment Status" tab in the course Dashboard.



Step 4b: Instructors may also respond to comments by clicking on the "Discussion" tab in the course menu. The assignment set and specific assignment will be highlighted for easy visibility.



Students and teachers may submit multiple comments for a single assignment and all comments attached to an assignment are logged and saved for future reference.

It should be noted that comments do not automatically update on the Harmonia website. Users will need to manually refresh the website to view new comments in real time.

Harmonia's Discussion & Comment feature provides students an easy system for posting questions about their homework or theory lecture. Whether you are teaching or learning music theory in a traditional classroom, in a flipped classroom model, or in an online course environment, Harmonia's comment system may be a helpful tool for you. Try it in your course and let us know what you think. We always like to hear from you since your comments help us make Harmonia a better product for you.

The UIUC Theory Prep Course

An automated course for freshman entering the core music theory program


Prospective students applying to the University of Illinois School of Music are required to take a music theory diagnostic exam (MTDE) to determine if they are academically prepared to take Music 101, the first-semester core music theory course at the University of Illinois. The short (one-page) MTDE provides a quick assessment of a student’s knowledge in five areas of music fundamentals: pitch notation, scales and key signatures, rhythm and meters, and root-position triads. While the School of Music has been giving this test for many years, and has informally noticed generally declining scores over the last decade, only very recently did it start documenting the year-to-year results. Here are the average scores for entering freshman for the past three years:

2015 2016 2017
Average MTDE Score 65% 66% 59%

Music 101 begins at the level of diatonic functional harmony, introductory counterpoint, and part writing. Students who are are not proficient in music fundamentals do not perform well in this course, and history shows that Music 101 grades serve as a fairly good predictor of how well (or poorly) students will perform over the entire four-semester core theory sequence. Until two years ago, the MTDE determined who enrolled in Music 101 (which met three times per week), and who entered Music 101R (which met five days a week and covered both fundamentals and the Music 101 curriculum). When the Illinois state budget crisis began a few years ago the School of Music faced multiple years of budget cuts. Teaching Music 101R required paying an additional instructor, so in 2016, the composition-theory division decided to replace Music 101R with the UIUC Theory Prep Course, a completely automated course that all entering freshman must complete over the summer prior to enrolling in Music 101.

UIUC Theory Prep Course

The UIUC Theory Prep Course delivers completely automated, cloud-based music theory instruction in music fundamentals. The course is self-paced and students may enroll in the course anytime between June 1st and August 10th. On average, a student working a few hours a day can complete the course in two to three weeks.

The UIUC Theory Prep Course covers five areas of music fundamentals:

  • Pitches, accidentals and (treble, bass, alto and tenor) clefs
  • Intervals
  • Major and minor scales
  • Triads and inversions
  • Seventh chords and inversions

All four clefs are used in lessons and assignment materials throughout the course. Topics are represented by specific curricular modules in the course and the modules all follow a similar layout:

Module Pretest

An (optional) timed pretest covers the subject matter presented in the module. If given, a pretest can permit high-scoring students to opt out of taking the module and serves as a baseline measurement to determine how much learning takes place for students who actually complete the module.


Lessons consist of non-graded material that present the module’s subject matter. Lessons include text, interactive examples, illustrations (images), short videos and audio clips. The Summer 2017 lessons integrated videos from a variety of University of Illinois School of Music faculty, who briefly introduced the theory topic at hand on their respective instruments. Interviews completed after the course reveal that most students appreciated the videos and would like more short videos to accompany the various lesson subtopics.


An assignment is a digital worksheet that contains exercise material to be completed and digitally submitted for evaluation. Harmonia assesses the student's work, adds graphic annotations (explanatory markup) to the assignment display, and a grade based on instructor settings. Assignments generally involve either composing — writing a short musical scores that meet requirements determined by a teacher, or analyzing — studying and listening musical scores and then identifying specific features in the music. Teachers can customize assignments in a number of different ways:

Practice Assignments

A practice assignment is a worksheet that behaves like a regular assignment — the work is graded, errors are identified and explained to the student — but the student's grade is not entered in the course’s official grade book.

Multiple Submission Assignments

A multiple submission assignment allows the student to complete and resubmit the material more than once. Grading can record either the highest achieved grade or the average score of all the student's attempts.

Timed Assignments

In a timed assignment, students must complete the material in an allotted amount of time. Once the time has expired the material is automatically submitted and graded by the system.

Module Exams

At the end of each module, students complete an untimed, comprehensive exam.

The following table shows the number of lessons, assignments and tests that make up the UIUC Theory Prep Course:

Lessons Analysis
Pitches, Accidentals & Clefs 5 14 14 2
Scales 7 12 24 2
Intervals 4 18 12 2
Triads & Inversions 2 8 8 2
Sevenths & Inversions 2 8 8 2
Total 20 60 66 10

Course Correction

The course has run for two years, with both years using the same module content, but some modifications were made to how the materials were used by students in the summer 2017 course. In 2016, students scoring an A on a timed module pretest did not have to complete the remaining materials in the module. For students who were required to take the modules, half the course assignments were configured as optional practice assignments, and the other half were required. (These counted toward their grade). While some students took advantage of the practice assignments, a significant number did not, even though the opportunity would likely have led to better results on their module tests. As a result, in 2017 students were required to take all modules and optional practice assignments were eliminated, in favor of requiring all assignments to be completed at least one time. Students who scored unfavorably could redo the material multiple times to improve their grade and thus their comprehension. As a consequence, in 2017 more coursework was completed by students -- thereby increasing learning cycles over the first year -- and many students opted to retake homework to improve their grade average. Interviews with students this fall indicate that retaking homework helped them learn, and the opportunity to improve their grade provided motivation to do more work.

Module tests averages for 2017 are summarized in the following table:

Pitches Scales Intervals Triads & sevenths
Average module exam 95% 96% 94% 90%

2017 MTDE Results

This fall we retested all entering Music 101 students using an MTDE exam that was slightly shorter but otherwise equivalent to the original MTDE test they took in the spring. This retest was given to compare post-UIUC THeory Pore course results to the initial score on the test last spring. The results are very encouraging: the average grade for the fall MTDE test was 81%, a 22 percentage point improvement over the spring score of 59%. This provides good evidence that the 2017 UIUC Theory Prep Course achieved its goal of improving comprehension of music fundamentals and preparing students for Music 101 in the fall.

The Technology

The UIUC Theory Prep Course delivers automatic instruction by using a music theory software application called Harmonia. Harmonia was developed at the UIUC School of Music and in 2015 it was commercialized through a National Science Foundation STTR Phase 1 Grant. The Harmonia application blends music theory instruction with graphic music notation, multimedia, automatic music analysis, automatic grading, course analytics and social networking. Using Harmonia students are able to practice as well as take homework, timed quizzes and tests. Harmonia uses patented algorithms to analyze the music that students write, then assesses the correctness of their solutions against teacher-specified models of correctness, and provides detailed feedback to students about any errors or mistakes.


By developing automated theory courses with built-in practice and grading, musically inclined students attending high schools with minimal music theory can still receive meaningful theory instruction to help them prepare for college-level music courses.

The ability of the system to deliver real-time instructional feedback encourages students to practice and retake assignments, both of which provide additional learning cycles.

By combining automatic grading and formative assessment, music instruction can be delivered at a fraction of the cost of a traditional methods, it can reduce or eliminate the need for teachers to grade paper-based homework, and it can allow students to know how they are performing in real time.

Harmonia’s latest server courseware allows instructors to view and comment on student assignments and communicate with them via a bi-directional comment system, a technology that will facilitate remote mentoring.

Harmonia and Music Notation Editing

By: David Psenicka

I'm a composer and one of the developers of Harmonia. For the past fifteen years I've taught classes in music theory and technology and have given private music lessons. One of the most tedious aspects of it is having to notate scores, often on the fly and requiring a lot of detail. Many of the decisions involved in score editing (especially for assignments) are repetitive, and popular score editing programs like Sibelius or Finale require a good deal of time and patience to coerce the score into an acceptable state. I realized this was a common issue for other composers so I wrote an open source application called FOMUS that simplifies the process of notating music by automating many of the mechanical decisions involved. Although the software was written for algorithmic composition, the work I did on it altered my approach to composing and teaching as I was able to reduce a lot of the repetitiveness involved and devote my time and energy to more important tasks. It was also a fascinating project as it involved solving many difficult technical problems that arise from modeling a complex system of symbols and concepts in computer code.

In my experience teaching I've always felt the need to customize my teaching materials for my students and felt that there should be a more efficient way of doing this. This is what motivates much of the work I'm doing on Harmonia. I'm currently developing many of the editing capabilities of Harmonia, which includes the notation engine and text editor. The interface along with the notation generators is designed to be easy and intuitive to use so that an assignment or test can be put together quickly. Less time and effort spent on creating custom materials means content better tailored to students and more time devoted to higher aspects of teaching. From my own experiences as a user of the software I'm helping to develop I'm certain it will change the way teachers approach their craft and will improve the quality of music education for both educators and students.

What’s the value of Harmonia?

by: Rick Taube

“What’s the value of Harmonia?” Or, quite literally: what commitments and investments did we have to secure along the way to move an initial idea about how to improve teach music theory using technology into a functioning company? The first thing I should say is that it was a very long path (almost 20 years!) and much of journey was not easy. The first two years I worked completely on my own developing the analysis algorithms in a language called Lisp that I had learned at Stanford when I worked at CCRMA. It was a complete leap of faith -- i was putting in lots of hours trying to get a program to analyze harmony quickly and accurately, and to "communicate" its results back to a user. The time I spent doing this work meant I was composing less and working less on my public-domain composition software, Common Music. I don't think I even listed this research work on my faculty reports because I had no concrete results to talk about yet. But once I had a functioning analysis program, I quickly learned how hard it is to convince people about a new idea unless it is something they can actually visualize. I showed my program to an academic dean, and while he was nice about it, he didn't really understand the issue or what he could do to help me. He sent me to a music software publisher he knew and the same thing happened, only that he understand my idea even less than the dean. I talked with the Grants and Licensing office at my university and they decided the app wasn't worth anything and gave me complete rights to the software. Realizing some of the hurdles I would have to overcome, I continued to work on the software, adding a PDF back-end so the programs markup became visible and the program's explanatory text was colorized according to they type or severity of the analytical issue. Seeing the results in a semi-intuitive way had a real positive effect on viewers, and I decided to write an article about it for the Computer Music Journal. CMJ is a top-tier publication in my area and when they accepted the article it gave me some credibility. The article gave an clear overview of the software and also included images (see below), which also helped people understand what it was doing.
The 1999 article predicts the Harmonia cloud, realized 13 years later.

My first nibble for actual support came from McGraw Hill. I showed it to a theory textbook representative and he "got it" instantly! He was also part of the on-line component for the company and understood the possible value it had in that new industry. I signed a contract, but in the mean time McGraw Hill was finalizing its sale to a larger publishing company. This new owner wasn't interested in on-line learning as much and all pending, unfinalized contracts, including mine, were cancelled. At that point I thought I was at the end of it, and I went back to writing music and also a textbook. I hadn't really given up, but I just wasn't sure what I could do to move the ball forward. The next real change happened a few years later when a graduate student, Andrew Burnson, an outstanding programmer with experience with music notation, entered our composition program here at UIUC. (UIUC has a long history in computer music and we've be fortunate to attract a number of composers/programmers like Andrew over the years. Other composers join our program and find out that their ability to think abstractly about music processes and systems and to notate these abstractions in symbols, often makes them "naturally" good programmers. I pitched an idea to completely rewrite the software in C++ app with multi-media features and Andrew was immediately interested in the idea. I was able to secure a $6,700 Creative Research Grant from FAA, and with Andrew on board we came up with the initial design and creation of an app called Chorale Composer. Meanwhile Rachel Mitchell starting teaching music theory at the UIUC and she got excited about the pedagogy that the app could potentially support, and agreed to start developing content for the app and using it in her classroom. Over the next few years we collectively applied and received several more grants -- two from PITA (Provost’s Initiative on Teaching Advancement) and one from the Campus Research Board (which won the Arnold O. Beckman Research Award for projects of special distinction) totalling about $26,000. Along the way we "retired" Chorale Composer, and then Halim Beere joined our team and we started working on Harmonia, which was a generalized version of Choral Composer that could send and received course data from a server. Meanwhile I began talking with the Office Of Technology (OTM) and they sent me over to EnterpriseWorks, a very successful startup incubator at my university. I made a pitch and they took us on at a 90% funding level. This was a pivotal moment for us because it allowed Halim and I join the iCorp (Illinois NSF Innovation Corps) which is basically a boot-camp for startups that provides very intense training and leads project leaders through the process of "customer discovery" and building a business canvas see if the idea is actually marketable. That same year we receive a Proof Of Concept Grant for Harmonia from UIUC's Office of Technology Management for a total of $15,607 to complete the work on the Harmonia prototype. All this momentum, plus the support by EnterpiseWorks, got us into the company formation phase, in which we developed a strategic plan, secured intellectual property protection (trademark and patent) and ultimately led to our application for an $225,000 NSF Phase I grant, which we received in 2015. That grant allowed us to hire David Psenika and Ming-Ching Chiu, and all of us worked together to complete the network prototype in Fall 2015, then test it in a real course (Music Theory I (MUS 101) at UIUC) for a semester. From that experiment we were able to verify the application worked and gave better results than the status quo for teaching music theory. The rest, as they say, is history!

How did the Harmonia music theory app start?

by: Rick Taube

The idea for Harmonia came to me in 1997, just two years after I joined the composition/theory faculty at the University of Illinois. At UIUC all composers teach theory, and as the newest faculty member I was assigned to teach first-semester theory and aural skills. While I had taught similar courses in the past, during the preceding decade I had actually been working outside academia, as a computer researcher, first at the Price-Waterhouse Technology Centre in Menlo Park, CA and then for five years at the Zentrum für Kunst und Medientechnologie in Karlsruhe, Germany. What struck me most about teaching theory again was that — though the content I was teaching had changed very little — the circumstances in which I was teaching was very different than anything I had previously experienced.

I firmly believe that the best way to learn music theory concepts is to study how they are used in real compositions and to compose music that demonstrates those concepts. To do this, it is important that a student receives fast instructional “feedback” from teachers to complete a learning cycle. I was taught harmony and voice leading by Prof. Herbert Nanney, organist at Stanford University, who lectured to his (small) class sitting at the piano, where he would play, improvise and work with us “in real time” to improve our exercises. My Music 101, in comparison, took place in a large classroom and had about 90 students with widely varying degrees of theory knowledge and skills. I had eager TAs, but their theory experiences were also quite varied. In my class, I found it was simply not possible to provide each individual student enough "learning cycles" to really master concepts and remediate problems. Since hiring more teachers or limiting student enrollment was not an option, I realized that the best way to address these issues was to adopt a technology that could provide unlimited access to practicing analysis and composition with instructional feedback, thus breaking the linkage between class sizes and the amount of learning cycles that can take place. Moreover, unlimited guided practice would help every student learn, regardless of class size. Since I have strong programming skills I began working on developing music software that could analyze real music and relate the issues it discovers back to a user in detail. Progress was steady but also slow as research grants for faculty in the fine arts were hard to come by and did not involve large sums of money. The game changer came for us in 2015, when the National Science Foundation awarded Illiac Software a $264,000 STTR "proof of concept" grant. With that grant we were able to complete a prototype, embed it in an actual course and prove that computer analytics can indeed be used to improve students learning outcomes over the status quo. It also facilitated a number of other beneficial features such as integrated multimedia and cloud-based course delivery! Our NSF grant took us through the end of 2016, and we started officially commercializing in January 2017. Our primary goal as a company is to improve theory education for all students at a fraction of the cost of what what would otherwise be possible. While we are really just at the start of this journey, I am excited and heartened by the feedback we have had from professors and students alike, and we have many plans and ideas to improve our application and course management system as we move forward.