This looks very nice! I'll have to give it a try soon.
If anyone is interested, I've also taken a whirl at solving the problem of overcomplicated DAW interfaces, albeit in a more limited capacity. My first project in this vein is Composer's Sketchpad[1], which aims to explore "freehand composition" by letting users draw notes in strokes directly with their fingers or stylus, bending the pitch and adjusting the length as they go along. The second is MusicMessages![2], in which every note is a button in a giant scroll view, allowing the user to enter and adjust quick melodies with just a few taps.
While these apps will never be remotely as powerful as a fully featured DAW, they allow the user to explore certain kinds of musical ideas far more efficiently than with FL Studio or Logic. In my opinion, one of the biggest barriers in creative thinking is the amount of cruft and micro decision-making between the artist and their output, and musical composition is particularly bad at this — there's no "lightweight Markdown editor" equivalent for composition quite yet. Helio is very exciting because it has some of those same benefits while sitting far closer to a professional DAW. I'm very interested to see where it goes!
I really like the concept of Composer's Sketchpad. I like to play around with FL Studio piano rolls, but it is a little overwhelming. Too bad I don't have any iOS devices because I'd love to mess with your app.
These are both very cool. Congratulations for doing something so out of the ordinary. As soon as I have some free time I will play with composer sketchpad.
WOW! My goal is to develop niche apps for the music professional market so I have a lot of old ideas and mountains of failed designs to go on when I say those two apps are fantastic. In composition courses we used to make sketches just like that to start a work, as well as make density graphs for Penderecki and company.
All I can say is I wish you the best, I think you have some great designs there.
As a DAW created by a single person, I must say great job. But one thing that stuck out for me most was the merging of instruments into a single visual track. As a person that designs simple DAW interfaces for a living [1], I highly recommend against that, and instead move to a more traditional instrument/track separated model.
Some back story: when we released the first version of Medly, we actually had notes on top of each other, merging the tracks into one. This turns out to be bad for both visuals (as it overcomplicates things) and for interactions. We ditched it for a more traditional format, but added a feature that let you view notes from other tracks when editing. Never regretted that decision since.
"Most of the DAW interfaces often seem overcomplicated, and they only tend to get more and more bloated over time."
How much can you simplify the interface and still make it do everything producers want to do? Garageband simplified the interface quite a bit compared to Logic, but even that can get complicated and ultimately isn't as flexible as other DAWs.
I've been a fairly loyal user of Sonar and FL Studio for over a decade, largely out of habit because that's what I used when I first started and don't care to learn anything different. Especially with FL Studio, early versions of that were extremely simple. At it's core, it's still fairly simple, but allows you a lot of flexibility to do crazy things through automation.
Especially in EDM, the DAW has essentially become another instrument for creativity, so limiting that will limit the audience to those with lesser needs. I do think there is a big hole for a cross-platform DAW that's at least halfway decent, so this is exciting to see!
If you're an artist of sound and musical texture, then sure — a powerful DAW can't be replaced. But if you want to specifically focus on composition — harmony, melody, counterpoint — then a DAW becomes a looming, impenetrable fortress. In my experience, musical creativity thrives when you're able to iterate on your ideas in a rapid loop, adding and removing notes almost as quickly as you think of them. There is plenty of room in the music software landscape for tools that focus entirely on placing notes instead of generating production-quality sound.
In other words, your favorite Markdown editor doesn't replace Microsoft Word — but that's hardly the goal!
>There is plenty of room in the music software landscape for tools that focus entirely on placing notes instead of generating production-quality sound.
There's already an industry standard for that - Avid Sibelius. If you're composing in a traditional manner, a DAW probably isn't the right tool.
I've used Sibelius (and Finale) back in the day. For classical music, maybe it's indeed the right tool to use. But if you're writing modern music, with all its syncopation and irregularity, it's simply painful. Rests, dotted notes, and ties everywhere. Massive, piece-wide refactoring pains with even the smallest changes. Key signature horror. Obscure notation. Lack of true support for pitch bending and non-standard tunings. It's like trying to translate technical writing into a foreign language.
Classical notation was fantastic for use with pen & paper when music was much more conservative and on-the-beat. But we have computers now. We can come up with something better — whether it's software like StaffPad[1] as a first step or something even farther removed from classical paradigms.
I've also written a bit about this in my blog[2]. Frustration with classical notation was one of the reasons why I worked on my own "anti-DAW" music app. (Though it's a somewhat less ambitious project than Helio.)
As a Sibelius user and jazz musician who writes avant-garde music, I humbly disagree. Classical notation is my native language. It's an odd and idiosyncratic language, but it works. If you need musicians to understand what you've written, it's your only option. I can't read piano roll at tempo and I don't know anyone who can.
Sibelius has fairly good support for swing, shuffle and irregular meter. It has natively supported quartertones since version 6; plugins provide good support for alternative tunings and microtonal composition. Classical notation can get clumsy if you're doing really weird things, but "really weird" is a higher bar than you'd expect.
If you're using timbre as a fundamental expressive element, then a DAW is probably the right tool. At present, we have no useful system for notating synthetic timbres.
Dorico is clearly the future given Avid's shabby treatment of Sibelius users, but I'm not sure it's the present. It might just be inertia or switching costs, but Dorico hasn't been adopted by many composers yet. I haven't yet used the v1.1 update, but v1.0 was missing a lot of important features.
It is possible to simplify the interface by reducing the number of tools without necessarily removing functionality.
The idea is to identify large sets of tools that can be replaced with a handful of powerful combinable tools to perform the same tasks - this is not always easy but if done well can end up not only simplifying UI but providing more powerful, intuitive tools and reducing unnecessary learning.
I think Modo has done this fairly well in this regard for 3D modelling and animation (programs which tend to be notoriously full of thousands of discrete tools).
This is not limited to DAWs. 3D animation packages, photo editing and video editing packages all historically have this problem... They grow these discrete tools to a large number, it increases the UI complexity, inevitably resulting in tons of stuff hidden under context menus and usually heavily resorting to mode based interfaces.
I had hoped this concept would become popular so that things like Photoshop and Illustrator could be simplified.
The trick is how much state you have to keep in your head. Something like Blender requires enormous state about even things like what key combinations mean in different contexts: it's a poster child for impossibly demanding state requirements.
Something like the Flash pen tool is much simpler, but still absolutely requires you to maintain some state: clicking versus click-dragging, remembering not to close a shape by simply clicking on a control point without also dragging out Bezier points. There are expectations before you can begin to flow with the thing.
I've been working hard on this concept using a Minecraft mod (Snowball Madness: http://www.airwindows.com/snowball-madness/ ) that suffered the same problem. I'd made countless 'effects' so it was nearly impossible to remember what did what.
After a drastic functionality-culling process, I began rebuilding things in line with a concept: generalizing. If you can place a block above a snowball and it places the block where the snowball hits, that's what it does, no exceptions. TNT used to spawn explosions just for silly fun, but it became 'place TNT block' altering the type of silliness. Pickaxes used to dig large holes in rock (in some cases, leaving ores hanging) so all the other tools got similar treatments: axes vanishing wood logs, shovels vanishing dirt, hoes turning grass/dirt into tilled farmland. Always trying to incorporate 'cheaty' ways of doing things but predictably so.
It's like the old Apple UI guidelines. The default expectation is that you can grope blindly towards a result and things do what you think they would do, allowing you to not think about the process.
How about coding a song instead? With the right language or DSL it should be possible. Substitute a Music IDE for the DAW, maybe keep some visualizations (synced to the code of course).
I suppose musicians are more comfortable with a visual metaphor. Still the over-the-top skeuomorphism doesn't seem that efficient to me compared to just coding it.
There are numerous examples of music programming languages. I imagine some people have some success with them, but I think they are not widely adopted because it lacks the immediacy and tight feedback loops available in DAW.
In a DAW, as you're playing the track, you crank the reverb knob until you hit the sweet spot.
In a music programming language you fiddle with values and re-compile repeatedly until you find the sweet spot, but even then it's hard to find because you can't remember if it's better this time you compiled or last time.
For musical coding to work, I think it needs a Bret Victor / Swift Playgrounds / Lighttable style IDE, and then... it starts to look a lot like a DAW, just with algorithms instead of a note grid or timeline.
I think this is an interesting idea, and sounds cool in principle, but the problem is that many users wouldn't know how to combine components together to get the tools/effects/instruments they want, or wouldn't want to bother to learn. The point being that all you might achieve with this approach is to substitute one type of complexity for another, and so you'd still alienate potential users. Maybe different potential users.
Depending on the market segment you're after that might be OK though.
> It is possible to simplify the interface by reducing the number of tools without necessarily removing functionality.
Could you explain with an example?
I think what you're saying may be technically true, but not necessarily what most users want.
I'm most familiar with photo editing and retouching, and while the software can appear daunting, it all makes sense looking at it as a photographer and using it for a little while. I use both Capture One and DxO Optics for RAW processing and retouching, and I often read the forums forums for both, and I don't recall ever seeing complaints that there are too many options and tools.
FWIW, for the 2D graphics packages I'd argue Acorn has tried to do this in generating shapes where it has an interface letting one chain-together and re-arrange actions.
(shameless plug) I've tried taking the approach of making a plugin for existing tools (Sketch, Sketchup, Photoshop, etc.) to make accessing the large set of tools easier via touch gestures at https://thimblemac.com . It also tracks most-recently-used tools.
I'd imagine a hex editor for music would be like a chiptune tracker.
Pure Data's domain is digital signal processing, with an emphasis on sound. It's good for prototyping because one edits the signal graph, GUI, and event-triggered scripts in the same visual window using the same event loop.
I say idiosyncratic because when you can connect anything to anything else, weird things start to happen. (For example, adding two more boxes to the diagram to control the crossfader with the pitch of someone's voice.)
Switched to Sublime Text years ago. I just have my configuration, and it works fine for me, so no need to change it for the rest of my life. I don't even care if it's not updated ever again.
I don't know about that. I think the visual programming aspect is the most defining trait, in which case...? I don't know any general purpose non-toy visual programming languages/interfaces. Scratch exists but likening PD to Scratch doesn't seem fair to me.
My only knowledge of PD is from graphical interfaces that implement components using it, so my assumption was that Csound was lower-level due to my (brief) experience writing on it.
it's just that, it's based on the old-school trackers paradigm (like Fast Tracker, Impulse Tracker, etc), which not everybody likes (but is actually a great fit for cutting up breakbeats and stuff that fit step-sequencer like workflows). Enhanced with support for VSTs, LADSPA etc (and built-in effects of course) and a sampler interface to design instruments that kinda blows the socks off just about anything.
so there's that. and I love it :)
but I do agree there's a big hole for a DAW with a good piano-roll and "stretchy" timelines like the arrangement view in Ableton. especially the way you can navigate the timeline by dragging on it left and right, but dragging up and down to zoom, such an intuitive way to navigate in sonic material where you often want to be able to zoom from hawks-eye overview to dive straight down and adjust some detail in the 10s of milliseconds, and back. I don't get why nobody has copied this way of navigation, it's IMHO right up there with ableton's timestretch/markers features that make it great. Yes Bitwig copied it, but that's partially Ableton's team.
Bitwig is crossplatform, btw. But I never could get it do what I wanted. But I had a sort of temporary/educational license which expired and wowww was that program ever completely useless in demo-version.
Speaking of that, it's the main reason why I started using Renoise. It was the only program that was even remotely useful in demo-version (just disabled export-to-wav and render-to-sample, inconvenient, but doesn't make the program useless, you can always record your sound in another way). Of course I got it licensed by now, having had way too much fun with it. It's only like 85 euros (including tax), compare to what you pay for Ableton nowadays, which doesn't even run on Linux.
Oh and we all know there's no "best" DAW, right? No shame in using multiple tools, each for which is best at what it does, and just bounce the audio through your OS audio framework (there's equivalents for JACK on Windows and Mac, right?)
Both Bitwig and Tracktion are available cross-platform and are as capable as the competition (Bitwig being closer to the Ableton Live paradigm, Tracktion being more traditional). I guess the issue you might have on Linux is plugin support.
Can anyone explain why none of the major DAW's have a simple step sequencer like FL Studio's? From my observations, FL Studio has a fairly large user base and IMO the step sequencer is the only thing that sets it apart from other DAW's.
I'm not certain, but I suspect it's because step sequencers are a fairly limiting way of looking at melodies. I've not used FL Studio's but I've used many hardware step sequencers, and it's very hard to coax music out of them that doesn't feel very... grid-y? You don't get access to the kinds of nuance in terms of note start and note length that make performances sound human and not... sequenced.
I mean, basically all DAWs have a grid view where you can see notes on a grid and zoom in and out on that grid. If you zoom out to 1/16 notes, that's basically a step sequencer view... but then you can zoom in when you want to add 1/32 or 1/64 note complexity.
One of the features is "Incomplete -
Helio is a one-man hobby project, that is a work in progress. The author builds it for himself and shares with the world."
I give +1 for honesty.
Honestly it has the same "piano roll" grid layout many other programs I've dabbled with have (garage band, ableton). It has linux support which is great.
From the video, it appears to me that the main interface is basically a combined piano roll? I did not get the information I wanted from the page or the video.
I like the idea. I'm a composer, and can never find a simple music sketch app that I like. Everything is either too complicated, too expensive, or some other kind of terrible. I guess Garage Band isn't too bad, but I still have trouble with it. My preferred way of working is with the built-in touch-screen sequencers in Korgs and Yamahas. That workflow is damned perfect. On the desktop, there hasn't been anything usable since Impulse Tracker.
I played around with your app for a while. I found the UI frustrating overall. I couldn't find any instructions. There are no tooltips. It needs tooltips at least. Copy/paste flummoxed me over and over again. I seemed to hit the "end" of the track after 10 measures?? I could make notes longer, but not shorter. After the first 4 toolbar commands, I couldn't figure out what any of the rest do.
I'd really love to have a nice desktop composition sketch app, with a piano roll just like this. Nobody can persuade me that anybody has done this right yet, so as far as I'm concerned you have no competition. I hope you'll keep working on this. I suggest working on the UI.
Somewhat this. However, I am sometimes reminded by my more creative minded friends to abandon the rigid developer mentality of 'commit and keep everything ever; just in case' and instead follow a more creative focus on just making something. I have practically found that exploring too many ideas and branches ultimately delays the completion of any creative process ;)
What if the tool does the committing, and automatically does the commits as deltas? Something like the idea that the 'save' is fairly similar to the undo-redo data rather than some optimized object graph or optimized relational database representing one iteration.
I use Git on my Reaper projects all the time. But I've almost never gone back to an earlier version, and when I have I could've probably anticipated the branch point and just used "Save As". Nonetheless, it feels nice to have history "just in case".
If it does this for multiple authors, then it would be invaluable for cases where different composers are handling different aspects (such as if one composer is focusing on percussion and another is focusing on wind instruments, as is sometimes the case when composing music for marching groups).
Doing what you suggest would require closing and re-opening the project (which can take a while when working with GBs of samples).
Moving through the version tree could be as fast and efficient as undo/redo operations, which are usually instantaneous. In fact, DAWs already implement version control! It's just ridiculously limited, since all you can do is undo/redo. Depending on how they manage it internally, adding better version control features might not be that difficult. History and snapshots (a la Photoshop) would already be a vast improvement over what's generally available in DAWs.
There's a LOT of binaries involved (in the sense of large .wav files at least), and I doubt the Live file format particularly lends itself to text-based version control
The Live file format is gzipped XML. It very much lends itself to text-based version control. (I've even played around with adding such as a third party.)
Looks a lot like Melodyne. And FL Studio. A "re-think" would be using depth of space to be able to go "in and out" like layers. It's a nice project and I hope it was gratifying.
Reaper has solved the issue of "One Simple DAW to rule them all" for me (used to be Cool Edit Pro 2.0) because it genuinely covers so much usable turf (Max is not in the same conversation as 'simple DAW'). It is the best mousetrap for the money on the market.
Man do I miss native desktop apps. This is so well done!
Something like this could be a Guitar Pro killer if it had support for writing a score/tablature. Imagine being able to commit changes to a score and have your bandmates pull it down and review, add to it, etc... it could really change the way we write music, especially in a world where you don't have to be in the same room to record an album together.
I just had a play with this. I must say, my favourite feature so far is the chord suggestion wheel (dunno if this interface has a name). A lot of the time I feel like when experimenting with chord progressions or in the beginning stages of writing a song I miss out on interesting chord combinations simply because when messing around on the piano I forget to use or try certain chords or variations. It's really nice to have this selection there (although including extended chords would be awesome!)
Also, I noticed you build it with JUCE. I'd be highly interested in a series or even very short writeup about how you made the ui and it's various components with JUCE. I haven't built anything nontrivial with it yet but audio (and as an extension, UI programming) is very interesting to me.
OH this is one of my favourite things (chord explorers), Ableton doesn't have one but Cubase does. I am surprised it isn't more of a feature elsewhere, as they solve the problem of 'I have to learn to play these chords to effectively compose with them'.
You don't have to be an expert player to use your ears to write harmonically interesting things as a result. I can't wait to get home and try this!
I had no idea cubase has this. I sometimes use a plugin called Cthulu (link below) to achieve a similar outcome, but the workflow is nowhere near as nice.
Beautifully clean, and simple! I've had my eye out for something like this, and I really do feel the other solutions are too big and clunky.
That said, I think the font is clutery.
The intro user flow is atypical and disruptive. I think it should start on this https://puu.sh/vy4pd/776dde20a8.png screen instead of inside a project. Then once inside maybe a little walkthrough or some guides?
Lastly I think the weird labels (Arps, counterpoint, melodic) on the left hand side are unintuitive for a novice. Also the addition of alt+drag to duplicate would be really nice ;)
Agreed on the typography: "Comfortaa" is not what I would consider a UI font.
As an alternative, OSS type family, I would recommend Lato (https://fonts.google.com/specimen/Lato). It's the family Slack uses, and I think it would look great in the UI for Helio.
As a musician I must say that I love the simplicity, version control and workflow of this application! While as a developer I must say that I love seeing a modern cross platform application developed using something else than Electron.
Beautiful UI. Despite what others might comment about its utility and relevance, I see this as a very interesting project to learn audio processing & clean UI design.
Please let us know your background. Are you an audio DSP engineer? Is there a list of features that you are planning to integrate?
After playing with it a little, a few suggestions:
1. Make it possible to (inertial) pan and pinch zoom when using a Mac trackpad. This would be significantly faster than using the lower navigator for Mac users. Also, I don't think it's a good idea to make the scroll wheel change the x-scale.
2. Add a shortcut for deleting notes when in "feather" mode — maybe middle-click? (I see right-click is reserved for changing layers.) This would make it possible to work on a piece of music without having to use the keyboard or move the mouse away from the canvas.
3. Is there a way to change the division of beats? IMO there should be a way to do this very quickly, so that I can switch between divisions of 4 and 3 for example.
Great work! Out of curiosity, how long have you been working on this project?
Also, creating a new layer should be simpler — putting it in the New Project menu is weird. Maybe just have a "+Layer" button under the lowest layer? It should also be possible to drag layers and change their order.
Looks interesting. Trying to install it on my phone gets me a "Your device is not compatible with this version" in Android's Play store.
What is it you are doing in this app that has special compatibility requiremrents?
My phone has a modern qualcomm flagship cpu and latest android.
It only runs on tablets for now (i.e. requires a screen about 12x7cm at least). And yes, mobile versions are still quite incomplete, I put all my effort into desktop versions.
I was recently searching for a Linux sequencer and was disappointed with what's out there so this comes at a good time. It looks pretty nice and I'll try it out soon. Two suggestions: take a look Seq24 which is made for sequencing stuff in a live environment. You might find ideas to borrow from it. Also, on your github page you say "Most of the DAW interfaces often seem overcomplicated". But this isn't a DAW is it? I use both DAWs and sequencers and my DAW interface is complex, but needs to be because it deals with audio and there is a lot of tools I need to work with that audio. I think there is much more opportunity to keep sequencer interfaces clean because they do less.
Love the concept!
Would be great to have more built-in instruments to try, maybe some could be adapted from LMMS?
I also wonder which tools you used to build the UI. Good luck with the project!
It's beautiful and the version control feature is something I've been wishing for for a while. In the best case it'll probably still take a while till it is - no pun intended - production ready (in the sense that I would feel comfortable giving up my current sequencer), though.
For the moment I am rather happy with Presonus' Studio One (even though the current version is a bit bug ridden) Compared to Cubase it already has a drastically simplified (and enhanced) workflow.
Logic Pro X has MIDI Scripters, which might do some of what you're looking for, while still being a traditional DAW. Saw a video the other day of Brian Eno describing how he takes a regular drum beat, and adds a stack of Scriptors to it to make it probabilistic and ever-changing.
I would really urge the developer to identify the target audience for this and to define what needs they have that may not be met by the current crop of similar tools.
I would also recommend finding some of those people, talking to them directly, and watch as they learn to use this application.
For this to survive in a crowded marketplace it is going to have to find and serve a niche very well.
Lol I've been working full time on something like this and wanted to go commercial with it. But it still seems different enough. But the UI is too similar.
Btw is that really a Wintersun song loaded in the screenshot? It does look like it could be a Wintersun song. I'm actually kinda inspired by Jari's workflow so I'm guessing I'm not the only one lol.
Looks really cool to me! I love the beautiful UI -- what tools did you use to build it in C++? I am very interested in learning more about UI design in C++.
I was interested, until I saw the way too minimalistic demo on the homepage. If you call it a DAW with VST support and so, than just a demo of a piano piece with a huge piano roll doesn't really impress.
I don't want to be too negative as I really like the idea. But at first sight this is by far no match at all with the great DAW's out there. You can say they are bloated, but no one says you need to use all the features that are available. With most DAW's you can make a similar demo with ease.
I think they use the term "DAW" too much for something that doesn't necessarily satisfy on that level. Maybe they don't think "sequencer" is impressive enough?
If anyone is interested, I've also taken a whirl at solving the problem of overcomplicated DAW interfaces, albeit in a more limited capacity. My first project in this vein is Composer's Sketchpad[1], which aims to explore "freehand composition" by letting users draw notes in strokes directly with their fingers or stylus, bending the pitch and adjusting the length as they go along. The second is MusicMessages![2], in which every note is a button in a giant scroll view, allowing the user to enter and adjust quick melodies with just a few taps.
While these apps will never be remotely as powerful as a fully featured DAW, they allow the user to explore certain kinds of musical ideas far more efficiently than with FL Studio or Logic. In my opinion, one of the biggest barriers in creative thinking is the amount of cruft and micro decision-making between the artist and their output, and musical composition is particularly bad at this — there's no "lightweight Markdown editor" equivalent for composition quite yet. Helio is very exciting because it has some of those same benefits while sitting far closer to a professional DAW. I'm very interested to see where it goes!
[1]: http://composerssketchpad.com
[2]: http://musicmessages.io (currently working on a full iOS version as a separate app... will fold the Messages extension into that one)