LMMS / lmms

Cross-platform music production software
https://lmms.io
GNU General Public License v2.0
8.07k stars 1k forks source link

Crowdfunding LMMS #2745

Closed tresf closed 8 years ago

tresf commented 8 years ago

This has been superseded by #3794


Often the project gets messages like this on the tracker, facebook, lmms-devel and forums:

"LMMS really needs this feature! LMMS should consider crowdfunding feature #1234!"

What does this imply?

Crowdfunding is often perceived as a way for those with money and enthusiasm (but perhaps not the skills or time) to pitch for a particular feature.

So from a funding perspective, what does "Crowdfunding LMMS" mean?

From a project perspective, what does "Crowdfunding LMMS" mean?

What's needed for a crowdfunding campaign to be successful?

So why not crowdfund LMMS?

These are my thoughts on the subject and they motivate my responses to these type of questions.

TL;DR: We can do this if we have someone to project manage it. Comments welcome. :+1:

ghost commented 8 years ago

Thank you for opening this issue, @tresf.

I agree with your analysis - crowdfunding does require some involvement. But at the same time, the only way to bring in developers and make sure they work full time on the much needed features (#2616 is one of those IMHO, but also #1911) is to pay them.

Crowdfunding worked for Krita and OpenShot, and I assume both have a smaller userbase than LMMS (but Krita does have KDE behind it, which is a big deal), so I don't see why it shouldn't work for LMMS.

Perhaps some endorsements from artists who use (or just like) LMMS would help in a crowdfunding campaign? Maybe they'd be willing to spare some merchandise?

liushuyu commented 8 years ago

What about joining Google Summer of Code? I've heard many projects got benefits in this way. But in fact, still, this also requires many strict conditions, and even require "mentors" to teach the applied students. AFAIK, Musescore did this in 2016.

tresf commented 8 years ago

Right, I don't think anyone's questioning whether or not a crowdfunded campaign could be successful, but proposing the idea is worth absolutely nothing.

Execution is really the part that needs attention here. Specifically the WHO, the WHEN and the HOW.

We have about 5 solid candidates on the development team to fulfill the WHO, but AFAIK, none of them have the means to do it in the next year. Why not? Well because the WHO's aren't getting paid to manage the campaign (or if they do, this becomes his/her job for the next ~year).

Of these 5 candidates, most already are full time students, work full time jobs, have families or have some large hobbies/FOSS projects they'd need to neglect to see this through.

Evidence? Look at our pull requests! The devs read every-single-one and we still don't have time to review. How do we manage an overhaul of anything if we can't manage the repair of what we have now?

For example, in the last two weeks @jasp00 has submitted 8 quality PRs that our codebase desperately needs (BTW, he's likely a developer our team needs) and no one has merged them.

Currently the most merging that happens is by two non-C++ developers!

So, when the canned response to "start a kickstarter!" from one of us is "Please do.". It's not meant to be derogatory. It IS meant to be direct... but it's no less ad hominem than reminding us how broken our house is and telling us we need a professional to fix it. We know! :)

ghost commented 8 years ago

If you really have the money to hire a developer, why don't you place a job ad? There are plenty of professional C++ developers who'd work on LMMS for a reasonable sum. Also, someone has to be trusted with the money anyway sooner or later if the project really wants to survive (see Ardour). Or you could just join the SFConservancy and have them handle the money for you (all of these projects joined as members and some of them are less popular than LMMS).

About finding volunteers, I think that if there were better docs for developers written by the core contributors (those who know the LMMS codebase very well), it would be easier to contribute for any C++ programmer. For example, the wiki talks about Plugin development but it doesn't delve into how the plugin system works, what source files refer to it and so on. Likewise, the LMMS Architecture page says nothing about LMMS' architecture.

Of course, this also takes time, but I think it's time well invested because it takes more time (and skills and patience) to become familiar with a codebase by reading the source code than to read some documents and be able to contribute right away.

eagles051387 commented 8 years ago

From what I have seen on the libreoffice mailing list the deadline to register even those interested in working through GSOC has passed. I could be wrong though.

Jonathan Aquilina

On Sat, Apr 30, 2016 at 2:29 AM, liushuyu notifications@github.com wrote:

What about joining Google Summer of Code? I've heard many projects got benefits in this way. But in fact, still, this also requires many strict conditions, and even require "mentors" to teach the applied students. AFAIK, Musescore did this in 2016.

— You are receiving this because you are subscribed to this thread. Reply to this email directly or view it on GitHub https://github.com/LMMS/lmms/issues/2745#issuecomment-215914272

tresf commented 8 years ago

If you really have the money to hire a developer, why don't you place a job ad?

No one said we have enough money to hire a developer. However, for those that have actually placed job ads I'm sure they can agree

  1. It is stressful to vet out good coders
  2. There are a lot of false-positive applicants and it is a lot of work.
  3. Large India-based devel firms will bait and switch you all day trying to take on the task.

Plugin development doesn't delve into how the plugin system works Architecture page says nothing about LMMS' architecture

It's a wiki, anyone can add it.

time [...] well invested

Well this is subjective to the person's time that's being taken away.

ghost commented 8 years ago

It's a wiki, anyone can add it.

But not anyone is capable to - only a few contributors are familiar enough with the LMMS codebase to be able to write about it in detail.

This attitude of "anyone can do it themselves" really has to change if we want good FOSS projects. If I could do it myself I would do it myself, but instead I admit I don't have the skills to do it and would gladly contribute some money to do it, but even that isn't feasible, so what are users supposed to do if they want to help LMMS improve, given that we're only capable of "useless" suggestions?

I could understand this attitude if LMMS was a library or a compiler or something only programmers would use, but it's a music program. Many LMMS users are not programmers but simply musicians, and I think their feedback is necessary in order for the program to improve.

tresf commented 8 years ago

This attitude of "anyone can do it themselves" really has to change if we want good FOSS projects

Perhaps you are misunderstanding... That's exactly how the vast majority of us got here to begin with.

My story.... I was making an album with a Mac user and he wanted LMMS to run on his computer. After asking, offering money, emailing over and over, I just did it myself. Now we have Mac support.

"Do it yourself" is EXACTLY why the software is as good as it is today. Is the idea of "I've stepped in dogsh**, now it's mine!" a good way to treat the community? Probably not, but it's the best we have to offer today.

People making claims/demands that a single feature and a boat load of money is all that is needed to make the software professional is what needs to change. We need helpers first and backers second, not the other way around. If we get the talent and the time, we can talk about raising the money.

And another thing worth noting... anyone that really wants professional software, buy it, please. Just because professional software often isn't open source, doesn't make it pure evil. We're hobbyist that help with a project, not 22-year old software development companies like Image-Line. To put us on par with professional software is quite unfair and it seems to be the basis of most of these arguments.

ghost commented 8 years ago

But who said professional software cannot be FOSS? What is inherent to the nature of proprietary software that it makes it the only way to create professional programs?

Not that I disagree with you that doing things yourself is a bad suggestion. I'm just saying that not every musician is as versatile as you are and can become a good programmer.

tresf commented 8 years ago

I'm just saying that not every musician is as versatile as you are and can become a good programmer.

To that point, not all musicians know what LV2 is, nor do all musicians know to link PRs when making an argument and discuss structural consolidation (converting existing plugins into a new LV2 standard). :)

ghost commented 8 years ago

Meanwhile, Krita continues to fund its development through Kickstarter and just released version 3.0 which is full of improvements:

https://krita.org/krita-3-0-release-notes/

I don't know which program is more popular, Krita or LMMS, but I don't think their userbase is much larger, and they already funded their new campaign. How nice would it be if LMMS' development moved as fast as Krita's?

tresf commented 8 years ago

Can you please reach out to them and find out more? The issues mentioned above don't go away because of a success story, so we can only hope to capture their strategy and then decide what needs to happen. Many want to pitch money but few can and are willing to manage the effort.

mikobuntu commented 8 years ago

Agreed... LMMS has become mature enough now to bring in some crowd funding, which will pay for such things as a knowledgeable coder or coders to bring the software up to a 2 point release and out of its unstable situation. As I remember one of the earlier devs Pgib stated that the source was like working with spaghetti,  patching stuff that didn't work as it should Etc and he wanted to rebuild LMMS from the ground up.... anyway perhaps a new fork could be started that deviated away from the original core engine but kept the the original GUI elements intact ? I know I'm a bit off topic with some of my ideas but generally with any great foss app crowd funding will take it to the next level.

ghost commented 8 years ago

Well, if the current LMMS maintainers are uncomfortable with the idea of crowdfunding that's probably the best idea, but hopefully the fork will be merged upstream so that the community isn't split.

As far as the GUI goes, I think even that could be changed to Qt5 (or maybe QML following #1911), but I agree that it is a secondary concern compared to implementing LMMS plugins as LV2 plugins, so that they can be used standalone or from other DAWs. This way, if LMMS' development ever comes to a halt (it can happen, sadly), most of its unique components (except the sequencers, the mixer and the automation editor) will be salvaged so that at least they can live forever and be distributed as standalone packages in distros (like lv2-tripleosc, lv2-nescaline, or maybe just a bundle lv2-lmms-plugins on which LMMS depends).

I think it would be a good thing if a crowdfunding campaign for LMMS could benefit the whole audio community - it certainly would have more backers, because Ardour or QTractor users (as well as those who use any other JACK-enabled programs) would certainly be willing to offer money for new synths and effects they too can use.

tresf commented 8 years ago

We're already on Qt5. QML... well, probably not.

I think it would be a good thing if a crowdfunding campaign for LMMS could benefit the whole audio community

I don't think anyone disagrees here, we just don't the resources currently. If that changes, great.

ghost commented 8 years ago

@tresf Thanks for the link...yes, I can see why some of those criticisms are valid (even if my experience with QML is limited). I might add that it's also easier to find C++ developers (plus, Qt3-5 are very, very popular) and that QML has zero accessibility (well, the same applies for most custom widgets, regardless of the toolkit). I was just throwing it out there because it fits more #1911, but the same could be accomplished with Qt5.

In any case, I personally think the UI is a lesser concern at the moment; it's actually one of LMMS' selling points as far as I know.

abhirupdutta0 commented 7 years ago

@tresf @Umcaruje A kickstarter can be marketed easily,by making a promotional video which discusses new features for the future versions of LMMS and the working prototypes for those ideas.The 1.2.0 RC's can also be shown with some new song demo's to market the campaign.I can make the promotional video with enough material from contributors.The video can then be marketed and promoted on LMMS's official Facebook and YouTube pages.

abhirupdutta0 commented 7 years ago

@tresf @Umcaruje As for the goals of the campaign,it could be to add improvements such as #2616 and #1911 and also add new instruments or features like #2689 and #2000(which is requested a lot).The general goal of the campaign,however, could just be to "accelerate development"and fix 1.2.0 bugs(1.3.0 features and bugs can also be considered in the same campaign).This is what Krita did with their first kickstarter (https://www.kickstarter.com/projects/krita/krita-open-source-digital-painting-accelerate-deve?ref=nav_search). The prices and timelines have to be figured out,though.

abhirupdutta0 commented 7 years ago

@tresf @Umcaruje The kick-backs to pledges could be as simple as ready-to run builds from alpha milestones such as 1.3.0 or some extra preset packs or even samples.(The presets can really be contributed by anyone,as long as they are good quality). Youtubers such as @cubician can also be asked to make some extra paid tutorials for pledges and other users who would pay.However,this would incur collaboration work(if he agrees at all).I am open to volunteering for collaboration and making email status updates.USB sticks can also be sent out,however,this,obviously increases the price of the campaign while increasing pledger incentive,

abhirupdutta0 commented 7 years ago

@tresf @Umcaruje The cross-training can also be mostly avoided if @ghost's comment on better docs for developers is followed on with.This would make it very easy for new developers (paid or volunteers) to understand the LMMS codebase.

rubiefawn commented 7 years ago

I'd be willing to contribute extra videos for and LMMS crowdfuning project like @Snakezer suggested. I'm also going to be doing some official LMMS channel videos as well once the EQ is released in a stable build.

abhirupdutta0 commented 7 years ago

@cubician Thanks. I have been watching your videos for a while and they are awesome.It really helped me start out.

abhirupdutta0 commented 7 years ago

I am writing a sort of action plan here for any crowdfunding project:- -Somebody needs to write the documentation for the LMMS Architecture page (https://github.com/LMMS/lmms/wiki/LMMS-Architecture).

-Somebody needs to be a mentor to any developers who come from crowdfunding support or train somebody to be a mentor. -The crowdfunding developers could write comments in the code and work on new features.(They might add documentation too as they start exploring the codebase).

tresf commented 7 years ago

@Snakezer If you're going to start triaging this, the admins can either continually edit the original post or we can supercede this with a bug report that you're maintaining.

The two things you've mentioned that isn't in the original post I believe are 1. fixing the architecture page and 2. in-code commenting.

abhirupdutta0 commented 7 years ago

@tresf I can maintain a bug report,should I open a new issue or do you guys want to edit the original post?

tresf commented 7 years ago

@Snakezer just make a new one, we'll crosslink. 👍

abhirupdutta0 commented 7 years ago

@tresf @Umcaruje The issue is open and online.(#3794).