Releasing the "source code" of music

Discuss how to promote using FLOSS to make music.

Moderators: MattKingUSA, khz

wolftune
Established Member
Posts: 1350
Joined: Fri Feb 24, 2012 7:40 pm
Location: Portland, OR
Been thanked: 2 times
Contact:

Re: Releasing the "source code" of music

Post by wolftune »

when it comes to plugins
I really wanted KXStudio to actually only install by default the best plugins, i.e. high-quality, reasonably complete… I wish someone else could curate things for me so they just say "these 4 compressors are great, we don't need those other 6" etc. But I'm super happy about the packaging overall anyway where someone else is doing the collecting so I don't get into obsessively downloading updates and trying new plugins all the time (which I used to do years ago).
Aaron Wolf
Music teacher, scholar
http://wolftune.com
User avatar
chaocrator
Established Member
Posts: 313
Joined: Fri Jun 26, 2015 8:11 pm
Location: Kyiv, Ukraine
Been thanked: 1 time
Contact:

Re: Releasing the "source code" of music

Post by chaocrator »

wolftune wrote:But I'm super happy about the packaging overall anyway where someone else is doing the collecting so I don't get into obsessively downloading updates and trying new plugins all the time (which I used to do years ago).
me too. but there is nothing wrong with packaging more stuff and putting it to repos.
what's wrong is the fashion of using things
(download — install — switch presets — randomly pick up the next plugin from hundreds or thousands of them — repeat the cycle). and that is done without trying to learn how things work. actually, the only thing that an average user learns indeed is swithing presets :mrgreen:

as for me, my current live/rehearsal setup has one plugin suite (Calf, that is probably not the best for every single task it does, but i know it quite well), one DrumGizmo, and 4 synths (ZynAddSubFX, Helm, TAL NoizeMaker, and Phasex)б all with custom made reduced banks of selected presets — partially my own, partially selected from all those numerous downloads. actually i have APKBUILDs for more stuff, but the listed above is considered enough.
wolftune
Established Member
Posts: 1350
Joined: Fri Feb 24, 2012 7:40 pm
Location: Portland, OR
Been thanked: 2 times
Contact:

Re: Releasing the "source code" of music

Post by wolftune »

Right, I want KXStudio (and same for other repos) to have all sorts of stuff packaged but to be selective in curating what is installed by default via meta packages.
Aaron Wolf
Music teacher, scholar
http://wolftune.com
Lyberta
Established Member
Posts: 681
Joined: Sat Nov 01, 2014 8:15 pm
Location: The Internet
Been thanked: 1 time

Re: Releasing the "source code" of music

Post by Lyberta »

What's wrong with using presets? I don't have time to learn sound synthesis in detail so I use presets. That's like saying that GUI sucks and you should learn the command line.
wolftune
Established Member
Posts: 1350
Joined: Fri Feb 24, 2012 7:40 pm
Location: Portland, OR
Been thanked: 2 times
Contact:

Re: Releasing the "source code" of music

Post by wolftune »

FaTony wrote:What's wrong with using presets? I don't have time to learn sound synthesis in detail so I use presets. That's like saying that GUI sucks and you should learn the command line.
Nothing is wrong with using presets. The concern is about how to help people avoid counterproductive, obsessive collecting of presets. And it's good to encourage people to learn about the command line and how to use synths etc. even though we also want presets and GUIs to be options where appropriate.
Aaron Wolf
Music teacher, scholar
http://wolftune.com
User avatar
sysrqer
Established Member
Posts: 2520
Joined: Thu Nov 14, 2013 11:47 pm
Has thanked: 319 times
Been thanked: 148 times
Contact:

Re: Releasing the "source code" of music

Post by sysrqer »

ssj71 wrote:
chaocrator wrote: i go greedy when it comes to synth patches, because people in general don't want to educate and learn how things work, they just want to download more ready presets instead ))
Not to be accusatory, but thats how I feel about my software too. People just want to use it, they don't study the source and learn. Many aren't interested if they have to compile it themselves. I release it though because many other devs have given me so much free licensed software that I learn from. It is more or less just giving away your skills, time, and effort, but hopefully it will inspire somebody else to share alike.
To someone (such as me) who can't code at all this is an interesting statement. Do you really mean that you wish that people like me would look at the source and take up coding so that we could benefit from your creation?
Would you feel more reward from me studying your code and using it as inspiration for my own software, or from me learning to use your synth and creating an album with it? It seems like you may (understandably) find the form more value than the function?
I'm not passing judgement, just genuinely interested in the mindset some someone in your position.
User avatar
chaocrator
Established Member
Posts: 313
Joined: Fri Jun 26, 2015 8:11 pm
Location: Kyiv, Ukraine
Been thanked: 1 time
Contact:

Re: Releasing the "source code" of music

Post by chaocrator »

FaTony wrote:That's like saying that GUI sucks
off topic, but GUI sucks :mrgreen: :mrgreen: :mrgreen: hardware controllers rock.
sysrqer wrote:To someone (such as me) who can't code at all this is an interesting statement. Do you really mean that you wish that people like me would look at the source and take up coding so that we could benefit from your creation?
i can't code too, but when i was making templates for my hardware controller to work with FOSS synths i use, i had to do exactly that. FOSS synths are mostly poor documented, so looking into the source code was the only way to understand what some knob or slider with an obscure unconventional name really does.
(and that's one more profit of understanding how synthesizers work)
ssj71
Established Member
Posts: 1294
Joined: Tue Sep 25, 2012 6:36 pm
Has thanked: 1 time

Re: Releasing the "source code" of music

Post by ssj71 »

sysrqer wrote:
ssj71 wrote: thats how I feel about my software too. People just want to use it, they don't study the source and learn. Many aren't interested if they have to compile it themselves. I release it though because many other devs have given me so much free licensed software that I learn from. It is more or less just giving away your skills, time, and effort, but hopefully it will inspire somebody else to share alike.
To someone (such as me) who can't code at all this is an interesting statement. Do you really mean that you wish that people like me would look at the source and take up coding so that we could benefit from your creation?
Would you feel more reward from me studying your code and using it as inspiration for my own software, or from me learning to use your synth and creating an album with it? It seems like you may (understandably) find the form more value than the function?
I'm not passing judgement, just genuinely interested in the mindset some someone in your position.
I didn't really think that deeply about it before my comment, but I suppose it doesn't really make sense to expect everyone to use the source, though if I only wanted usership, I'd just release freeware. I think the bigger thing is that I often feel like my projects are given out with very few contributions in return or paid forward as a result. This could be purely perceptual. What I really want is to see that my work is benefiting the community: Developers reference the code and contribute patches where necessary, users try it and report bugs when they find them, musicians make albums with it and contribute presets, and in general the community grows and improves. Instead I feel like I get a lot of silence: I very rarely hear of anybody using my work and sometimes I'll find bugs that seem pretty obvious but no users ever reported. When I ran fund-raisers I provided an option for "payment-in-kind" where anybody could do anything that benefits the community and I'd count it as a donation toward the release goal and nobody ever took me up on that option. That was rather disappointing.

I think the community really has benefited from my work and everyone's contributions, but it just isn't as tangible, visible, or measurable as I'd like it to be. If I were waiting for something to happen that made me feel like all my work really paid off I would probably stop releasing software. Instead I go on the good faith that there are lots of good folks here that are contributing to the community in general and that my work helps everyone continue to do so. I think thats really how it works, but sometimes its easy to loose sight of that. This sounds like a pity party and I really don't want it to be, but I expect that almost every contributor in this community will feel this way at some point, perhaps always, and if they don't find a way to get over it, they will stop participating.
_ssj71

music: https://soundcloud.com/ssj71
My plugins are Infamous! http://ssj71.github.io/infamousPlugins
I just want to get back to making music!
fundamental
Established Member
Posts: 165
Joined: Thu Nov 07, 2013 1:19 pm
Been thanked: 1 time

Re: Releasing the "source code" of music

Post by fundamental »

sysrqer wrote:To someone (such as me) who can't code at all this is an interesting statement. Do you really mean that you wish that people like me would look at the source and take up coding so that we could benefit from your creation?
Would you feel more reward from me studying your code and using it as inspiration for my own software, or from me learning to use your synth and creating an album with it? It seems like you may (understandably) find the form more value than the function?
I'm not passing judgement, just genuinely interested in the mindset some someone in your position.
I think these questions get at some of the core issues of free software. What 'free' means is something that varies greatly from person to person. One of the initial free software stories told by stallman talked about being unable to enhance a printer driver to notify him when it was done printing. In that case he wanted the freedom to modify. In other cases you may have a researcher looking through existing problem solutions. They're interested in a freedom to learn. Many developers want to make improvements and provide them to others. They want the freedom to share.

Users in many cases focus on the last item. The freedom to share often at no cost is what can end up characterizing 'free' software to them. In those cases it is indistinguishable from freeware in many ways. The very key way that it tends to be different is the community. Free software communities tend to have a principle of trying to pay it forward in some way. The consumer of the software has received the products of someone's time and it's beneficial to help someone else using it, provide documentation, provide improvements, and share it with others. Collaboration is what makes it possible for quality software to become a reality, but it's not always a stable system.

You can end up with a ton of users who don't contribute positively, which IMO tends to be the norm with closed source freeware. That results in projects which typically are abandoned and don't improve unless there's a commercial incentive moving it away from a freeware model.

Back to the original questions, if a piece of free software interests someone to the point that they learn how to use their freedom to modify, then that's likely going to inspire an free software dev to put in more time. That amounts to someone acknowledging their work and it amounts to a possible improvement that they could use as well if they're still an active user of their software.

I'd say in general the sorts of people that invest heavily in writing free software are those who are interested in building things, learning how they're built, and are very interested in discussing the domain that they work in. Those that invest heavily in maintaining software tend to be invested in the use of the software and are interested in ensuring that they can use it and that they can improve it if they desire. A community of people interested in going beyond just consuming a product is what powers free software forward IMHO.
ZynAddSubFX maintainer
User avatar
chaocrator
Established Member
Posts: 313
Joined: Fri Jun 26, 2015 8:11 pm
Location: Kyiv, Ukraine
Been thanked: 1 time
Contact:

Re: Releasing the "source code" of music

Post by chaocrator »

beck wrote:Does helping and supporting have to be writing software?
well, the answer is no )
at the moment the main problem with linux audio software is definitely not the lack of features.
the main problem (as i see it) is the lack of documentation, tutorials and other educational stuff.

so, we have a lot of cool software, but it's often too obscure how to operate it. i have mentioned above that i had to look into the source code to understand what exactly some knobs or sliders do.
it's not always obvious, but there is a lot of cool educational stuff about commercial software. so, it's considered very important by its vendors. FOSS audio community has a lot things to do here.

as for me, i would help, but my english is too far from fluent, so at the moment i can educate only people from my local community (which is anyway better than nothing).

p.s. this is the official 666th post in this forum )
666.png
666.png (32.11 KiB) Viewed 1688 times
fundamental
Established Member
Posts: 165
Joined: Thu Nov 07, 2013 1:19 pm
Been thanked: 1 time

Re: Releasing the "source code" of music

Post by fundamental »

chaocrator wrote:the main problem (as i see it) is the lack of documentation, tutorials and other educational stuff.

so, we have a lot of cool software, but it's often too obscure how to operate it. i have mentioned above that i had to look into the source code to understand what exactly some knobs or sliders do.
it's not always obvious, but there is a lot of cool educational stuff about commercial software. so, it's considered very important by its vendors. FOSS audio community has a lot things to do here.
I'd summarize this as many open source projects have major usability issues. Most projects (open or not) from a development perspective are not going to create something intuitive on the first try. For many open source projects the first design is the final design. It grows organically based upon the developer's needs and the vocal users. Documentation, tutorials, and other feedback made by someone who isn't the primary developer or the small pool of feature guiding users is *absolutely critical* for a project to become usable.

Software is a complex thing and by doing a simple tutorial you can end up benefiting the project in a number of different ways:
1. you can attract more users who need to do the task the tutorial focuses on
2. you can highlight where the software makes certain actions more difficult than they should be
3. you help existing users of the software understand how to make better use of it
4. you show the developer what features are being overlooked
5. you show the developer what features are actually useful
6. you have good chance of uncovering bugs when working with a sufficiently underdocumented portion of a project

Commercial software does put a lot of effort into making educational stuff and they have the advantage of being able to afford things like payed testers, payed writers, and payed designers. Having multiple perspectives on a single project tends to be instrumental to it's success and it's perception of success.

One last note, if you're contributing to the educational front, please consider what has already been done and where it's best to contribute content. Fragmented, excessively repeated, out-of-date, or inconsistent information can be just as bad as none.
ZynAddSubFX maintainer
folderol
Established Member
Posts: 2072
Joined: Mon Sep 28, 2015 8:06 pm
Location: Here, of course!
Has thanked: 224 times
Been thanked: 400 times
Contact:

Re: Releasing the "source code" of music

Post by folderol »

That touches on a point that crosses all disciplines.
"Wrong information is worse than no information."
I first came across it in connection with railway signalling.
The Yoshimi guy {apparently now an 'elderly'}
User avatar
chaocrator
Established Member
Posts: 313
Joined: Fri Jun 26, 2015 8:11 pm
Location: Kyiv, Ukraine
Been thanked: 1 time
Contact:

Re: Releasing the "source code" of music

Post by chaocrator »

thank you fundamental, i could not put it better.

beck, there is one huge problem with forums, mailing lists, and such kind of places: the information is very poorly structured, or not structured at all. so, such places are very helpful for solving particular issues, but can't replace
well structured presentation of things in books, tutorials, and other stuff like that.
wolftune
Established Member
Posts: 1350
Joined: Fri Feb 24, 2012 7:40 pm
Location: Portland, OR
Been thanked: 2 times
Contact:

Re: Releasing the "source code" of music

Post by wolftune »

I am working on all these issues as a non-coder trying to build a better approach for many of these issues via Snowdrift.coop

To me, the priority in free software is the freedom and the power structures that help us avoid anti-features. Restrictions on where and when I can install something, whether I can use it readily with students of mine, whether some programmer can pick it up and continue if the original author abandons it, avoiding invasions of privacy and ads and artificial limitations… that's the stuff I care about.

In the case of rare examples like Bounce Metronome that is very good on *most* of these things, I feel good about it overall regardless of the proprietary terms. Sure, I wish it were free software, but if all free software were as ethical and good for the world as Bounce Metronome, I wouldn't mind. I mind proprietary software because the power imbalance is often abused, it disappears and can't be resurrected, it often has all sorts of anti-features…

Plus, non-programmers *can* tweak settings in source code like a particular color in a UI or whatever.

Anyway, music "source code" is similar. It may not matter to passive listeners whether that's available, but even passive listeners will appreciate the results of remixes that the source code lets others do. In other words, *everyone* can benefit when people with the adequate skills are *able* to do things because the materials and legal terms allow that.
Aaron Wolf
Music teacher, scholar
http://wolftune.com
Lenny
Established Member
Posts: 25
Joined: Tue Aug 22, 2017 5:40 am

Re: Releasing the "source code" of music

Post by Lenny »

This is very interesting and fundamental question.

While playing around with SuperCollider, I got this feeling that not many people are sharing their works (I may be mistaken, and just didn't find the right corners of the interwebs...). This is one of the reasons why I more or less dropped it, I don't have time to start from scratch. I expected huge libraries of ready made SynthDefs, with nice working interfaces etc. but nope, nothing really. Just some simple examples with sine waves, or some random drones. That cannot be all people are doing!

Personally I treat all this software, like SC, ZynAddSubFX etc. as "compilers", and the end result, the binary audio file as a compiled product. And as such, I tend to think it should be distributed with source code. Not many people want to use the source in order to "compile", or reproduce the audio, or some version of it, but it would be a huge help for people how are starting up with their setups.

I don't see my inner life or musical ideas such a big deal that I'd like to keep them secret. If I ever produce anything I want to release, I'll provide absolutely everything that is needed in order to reproduce the sounds. That includes source code for the libraries, algorithms etc, complete synth states (like the Zyn XML dumps) etc. I feel it really is my duty and pleasure. I did nothing for these absolutely fantastic pieces of software, and it's all free! How could I claim my humble ideas over all that?

The beautiful thing is that now all this really is possible! With my old adhoc setup, with zillions of cables, analog synths, me acting around with knobs here and there, it was simply impossible. With 100% computer system (and of course with some HW synths as well) all the source code and configurations can be released, and should be released, if you ask me. It's like notation that the computer orchestra is going to play, if set up correctly.

Added: and I don't think releasing a .mid file is enough, not in case of algorithmic compositions, because that's just one snapshot of the algorithms. In my previous analogy, .mid should be treated as an intermediate compilation result. But of course, if the composition is really fully man made, then I guess .mid is enough, because it doesn't matter which software one used to assemble that file. Then of course possible software setup should be released with the midi, unless of course it uses a standard sound fonts.
Locked