333 karma · joined September 6, 2015
[ my public key: https://keybase.io/daveyarwood; my proof: https://keybase.io/daveyarwood/sigs/IFVAA_N9H6_rWoL7YUkzoKKNbnRiT92dk2efgECw71g ]
My daily flow is to try and clear my plate, i.e. reach "Inbox Zero" with my `task ready` view. Every task in that view needs to either be completed or rescheduled for a time that I think I have a chance at completing it.
As for projects with tasks that block other tasks (e.g. write chapter 1 is "next," and it is the blocker for anything else, like writing chapter 2), you can tell Taskwarrior to hide them from your `task ready` view by using the `depends` property. For example, if "write chapter 1" is task 42, then I might add a task like `task add 'write chapter 2' depends:42`. Until I mark task 42 (writing chapter 1) as done, "write chapter 2" won't show up in my `task ready` view and I'm free not to think about it.
1. I do have plans to implement start and end points for playback, either in the form of minute/second markings or the already-implemented "markers" you can place in an Alda score. I agree this is a crucial feature -- it will be very useful when working on one small part of a large score. Eventually you should be able to do something like: "alda play --file my-score.alda --start 0:30 --end chorus"
2. Not yet -- I'm hoping we'll implement a way to generate LilyPond ( http://lilypond.org ) typeset scores from Alda code.
3. My philosophy on bar lines (and the reason why Alda ignores them as if they were comments) is that they're essentially "invisible to the ears," and so they don't serve much purpose except as a way to visually organize your score file. However, in order to generate sheet music (e.g. by generating LilyPond code), we will probably end up making them significant to the parser after all. I can see how it might be useful to think of your score in terms of measures, e.g. "play a few eighth notes, then rest until the end of the measure," so I'm certainly open to the idea of implementing measures.
4. I agree, although I'm a Vim user :P
This is far from ideal, but as a workaround, you could set up a sound recording program like Audacity to record system audio output and play your score.
Hopefully in the near future you'll be able to do something like "alda play --file my-score.alda --output my-file.wav" or something to that effect.
I realize this is disappointing if you're looking for something with more abstractions, but on the bright side, I think there are some great languages out there that do exactly that. If you haven't already, have a look at Music-Suite ( http://music-suite.github.io/docs/ref ) and Overtone ( http://overtone.github.io ), along with the Leipzig library, which adds functional programming abstractions for use with Overtone ( https://github.com/ctford/leipzig )
I do have pipe dreams of making Alda way, way more extensive than it is right now. MIDI ended up being the easiest thing to implement as a sort of proof of concept, but I am completely open to (in fact, am really hoping for) a wide array of music generators at the disposal of Alda's syntax. The next major milestone will be waveform synthesis, probably via a Java library like Minim (my original idea was to control Supercollider via Overtone, via Alda, but it seems there are too many setup issues involved, when compared to a self-contained Java library that I can use from Clojure).
Being able to generate code in other audio programming languages is also a thought I've had -- if not for Alda, then for a spinoff project. The primary thing that inspired me to create Alda was that I love the unbounded potential behind these more robust languages like ChucK and Csound, but the syntax of these languages could be greatly simplified and adapted for use by composers with little-to-no programming experience. I guess my point is that Alda prioritizes aesthetics and simplicity over being a Turing-complete language that lets you do everything you want.