June 12, 2008 by Harmonic Sense LLC
It will take some time to update the website and the documentation, but the next ChordMate release is out (the link on the main page points to the new version). Here is a list of the main changes:
1) You can now build chord progressions inside ChordMate. There is a chord progression window, and you can just drag and drop chords into it. You can also play the entire chord progression.
2) Drag and drop chord diagrams into any application. If that application supports images, you’ll get an image, if not it will be the text representation of the chord
3) Keyboard navigation. You can use cursor keys to move from one chord to the next and space bar to play the selected chord.
I am very excited about this update, and hope that the program is intuitive enough to be very useful even before the new documentation comes out.
Tags: new release
Posted in News | Leave a Comment »
March 28, 2008 by harmonicwife
Ilya has a story he likes to tell. Every time he tells it becomes longer and more elaborate. In a few more months it might be long enough for a full length novel. But for now, it is just the right length for a blog post.
Once upon a time, some people decided to design a city. It was going to be the most modern city in the world. And the pride-and-joy of the town fathers was the garbage collection system. No longer would citizens have to worry about putting garbage bins out on the curb every Monday. Nor would the city parks be spoiled by the sight of filthy garbage cans. A dedicated group of townsmen would run around collecting all unwanted trash from their fellow citizens and bring it to the town dump.
A year later, a visitor came to the city and found all the citizens walking around with rumpled pieces of paper in their pockets and a big pile of garbage in the town park.
This story has a moral. The moral is that you should never program in Java. The garbage collector claims he will find all your unused data and dispose of it for you, but in reality, he is out taking a coffee break. And you can’t throw anything out yourself because there’s not a garbage can in sight.
Ilya wrote ChordMate in Objective C++. This worked out fine for the Mac version because Apple has a great library for creating a user interface. The Windows version has proved to be more challenging. The Harmonic Sense team tried using .NET to write ChordMate for Windows and the result just didn’t look good. Ilya decided that the standard Windows look wasn’t right for ChordMate and resolved to draw the entire interface by hand. Ilya settled on MFC, because drawing everything by hand in .NET was just like drawing it in MFC, except that it was slower and the garbage collector got in the way.
Tags: java programming
Posted in Uncategorized | Leave a Comment »
March 28, 2008 by harmonicwife
Hi! This blog is about to become more active. Up until now, all the posts have been by Ilya, the lead developer at Harmonic Sense. This meant that Ilya had to split his time between developing ChordMate and blogging. Fortunately for our users, blogging lost.But the vision of an exciting blog about music and software development lived on. At least it lived on in my mind. Because every night, Ilya would tell me about ChordMate, the programming issues he encountered, and the decisions he made about the music engine.”You should write a post about this,” I kept telling him.”No time, I have to code,” he’d say. “Besides, I’m no good at writing.”Today, we have reached a historic compromise. Ilya will tell me what he thinks, I will write it down, and you will read it.I hope you will like what you see and keep coming back.Harmonic Wife.
Posted in Uncategorized | Leave a Comment »
March 17, 2008 by Harmonic Sense LLC
Harmonic Sense has released ChordMate 1.2 for Mac OS X. The latest version has many new features:
1) New Look.
Many customers requested vertical chord diagrams and diagrams for left-handed guitars. ChordMate now supports both.
2) Copy/Paste Chord Diagrams.
You can create chord charts, mail interesting chord voicings to your friends, and annotate your favorite songs.
3) Capo.
You can tell ChordMate to place a capo on any fret.
4) Alternate Tunings.
Players who do not use the standard EADGBE tuning can tune ChordMate to match their guitar.
5) Support for Leopard.
This update is free for all existing customers.
The Harmonic Sense Team.
Tags: new release
Posted in News | Leave a Comment »
February 20, 2008 by Harmonic Sense LLC
I love the way ChordMate looks on Leopard, so I decided to make ChordMate for Windows just like that. Although the work is far from complete, the basic search is already working, and the main window is functional.

Tags: screenshots
Posted in Uncategorized | Leave a Comment »
February 20, 2008 by Harmonic Sense LLC
Yesterday I found that our web host broke our server scripts and made it impossible for people to try ChordMate after the first run. The problem is fixed now. If you started your trial after 1/1/2008 and it got interrupted, you can start a new trial. My apologies to everyone who got affected by it. I hope that some of you will read this announcement and will give it a second shot.
Posted in News | Leave a Comment »
February 3, 2008 by Harmonic Sense LLC
When I recently saw sharps and flats on Windows while working on the Windows version of ChordMate, I was shocked how thin they looked. I could barely see them! Microsoft and Apple both use antialiasing, but their approaches are very different. Microsoft tries to make letters look better on the screen while Apple tries to make them closer to what they really are on paper. The end result is that Microsoft’s letters are much thinner, so symbols that should be thin by design become very hard to see. That’s what happens with sharps and flats. At first, I was trying to find different fonts that would make them look normal and then I gave up when I realized that the problem was with the operating system. If you are curious, there is a very interesting article about the way different operating systems handle showing letters on the screen.
Tags: Mac vs. PC
Posted in Programming | Leave a Comment »
January 29, 2008 by Harmonic Sense LLC
When I started working on ChordMate, we didn’t plan to release it for Mac first. I was working only on the music engine. I chose the Mac because it had free development tools, and I really liked the operating system. After working for about two weeks, I realized that I needed some GUI to test my work (initially I was planning to use text output). Because I was already using Mac OS X, I looked at the libraries that they provided for making GUI. I was so impressed that I learned Objective C++ and ended up designing the ChordMate GUI for Mac. I really enjoyed working on it. Everything in Apple’s APIs was carefully designed and quite intuitive. I loved how they hid all the unnecessary complexity. I had to code only the parts that were specific to my application. Apple’s libraries did the rest and did it beautifully.
I’ve been developing the Windows version for a few months now, and every bit of it was a pain. I won’t go into details here and will just say that Microsoft’s libraries are very low level. Almost all the issues that I had to deal with so far could be easily solved by the operating system. For example, Apple makes flicker free drawing completely automatic while Microsoft forces every developer to deal with it on his own.
Apple has to be much better than Microsoft in order to survive at all, but as programmer, I am still amazed how far ahead Apple got. Now I am not surprised that many developers choose to make their programs in Mac OS X even though economically it makes much more sense to develop for Microsoft.
Tags: Mac vs. PC
Posted in Programming | 1 Comment »
January 29, 2008 by Harmonic Sense LLC
I recently redesigned Harmonic Sense website to be more compact and uniform. The CSS features that I used have been around for a while, so I naively assumed that Microsoft’s latest browser would support them. I was so sure that I forgot to check. After all, the website looked exactly the same in Safari and Firefox. When I finally looked at it today in IE7, I was horrified. The website looked ugly, and I spent about three hours trying to guess what parts of CSS IE7 didn’t support. It’s sad that Microsoft takes advantage of its market share and does little to fix its browser.
Tags: website
Posted in Programming | Leave a Comment »
January 28, 2008 by Harmonic Sense LLC
We recently released ChordMate 1.1.4. The new version has better icons for Leopard and some other minor improvements. It’s a free upgrade for all existing customers.
Tags: Mac OS X, new release
Posted in News | Leave a Comment »