Module View I
- Implemented tags for modules
- Added a more proper module menu. It can be configured via XML and is based off tags.
Song View IV
Been a while since I've posted, but I've been hard at work on the song view. Keyboard controls are working now - you can use the arrows to move through the list of tracks and move a cursor. Overall I mirrored the piano roll for consistency - the cursor works essentially the same. Spacebar inserts a pattern, you can select/cut/paste using the 'cursor'. The mouse also controls the cursor and allows you to select, add pattern (double click) and remove patterns.
The UI in genome is going to be all about speed and ease of use. Whereas most sequencers rely heavily on the mouse and toolbars packed with different editing modes, genome can be controlled entirely with the keyboard, a combination of keyboard and mouse, or just with the mouse. There are no toolbars required for standard editing. Genome's toolbar is purely for navigation, file i/o, copy/paste, etc.. I find having to switch tools only slows a person down (ie, having to click the 'eraser' if you want to delete something, or the scissors if you want to split a pattern, etc..). A lot of sequencers don't even have keyboard shortcuts for common actions. While keyboard shortcuts should never be relied exclusively (since they are 'hidden' from the user), they are a great help for advanced users who already know the ins and outs of a program and want to get things done faster.
Another thing that really irritates me about today's sequencers (and even a lot of VST's) is that they try to pack too much information on one screen. A lot of musicians seem to think that having 100 knobs, all exactly the same size and color is acceptable, as long as they have access to all the parameters. 'Maximize your space', I've heard people say. What a load of crap. Space is part of the design, and never wasted. A good UI design has a hierarchy of information. More important or commonly used controls should be bigger, set apart or otherwise distinguished. Less common controls can be made smaller or shifted to another logical tab or page. Trying to cram everything on one page does not make things faster or easier - usually the opposite, since people will need to spend more time scanning for what they are looking for. It's okay if the user needs a couple clicks to find something, as long as he has no trouble figuring out where he is going. The layout of the controls on a page should reflect a typical user's workflow - the first items they need to edit should be first on the page, and the sequence should follow left to right, top to bottom, the order that a user would need to go through them. Buttons should be big enough that pressing them (or finding them for that matter) is not tedious. Icons, unless totally self explanatory, need labels! I can't tell you how frustrated I get when I open Cubase, Live or almost any other big-name seqeuencer/workstation software. The learning curve is so high. If the web has taught us anything, it's that it IS possible to write software that is intuitive enough for people to figure out without needing an instruction manual - we just need good design. Unfortunately, a lot of design decisions end up getting made by programmers or people who don't have good UI experience (or who are trying to save themselves some work). Also, a lot of music software tries to immitate the look and feel of music gear, which (though cool looking) is rarely well designed. Try to program a beat on a typical drum machine, I guarantee you can do the same thing 10 times faster on the computer, where you don't have to memorize esoteric combinations of buttons, and aren't limited to a 2 line display. Why try to imitate devices that have had to make UI sacrifices in the name of hardware limitations?
It's also been said that good design involves removing features until you are left with the bare essentials and I'm going to be experimenting with this. Maybe we don't need to see audio waveforms or every note in a pattern, on the song screen. Does that information really help you make a song? Maybe we just need to know what pattern it is or maybe we can just hear what pattern it is. Taking away features like that reduces the visual complexity and should make it easier to find what you are looking for. It's also less intimidating for new users. Keep the UI simple. This is music, not nuclear physics.
Weekend update 1
- There's still a few things left to do with the piano roll but I decided that the other parts of the program need some attention (not to mention a lot of 'low hanging fruit'), so I am moving on for now. I will return later..
- Added a new Navigation menu with shortcuts to navigate up/down and sideways through the module hierachy. This makes it possible to navigate through the whole app with the arrow keys (maybe in the future you'll be able to use gamepads or other devices..)
- Highlighted the current module in the top/left nav buttons. Should help people understand what they are there for, not to mention making it a lot easier to navigate and understand where you are in the app. See screenshot.
Genome Work Log
Still plugging away at the Piano Roll. Just about all the major features are implemented now. The bottom keyboard works, and you can use it for note input. Later you'll be able to select alternate types of note input interfaces. Other features like 'scales' and additional editing shortcuts will be added later. I'm going to be moving on to Midi input and event recording next.
Here's the general state of things:
Genome Work Log
- Note view (WIP)
- Automation View (WIP)






