19 ms·
The open source paradox (2020)
- Synaesthesia 4y agoIt makes a big difference to be working for yourself, rather than someone else. It shows that people are motivated by more than money. We have an intrinsic desire to create things.
- bruce511 4y agoSee Profession by Isacc Asimov. I'm a creative. I have to create. I would be satisfied with nothing less. I used to think, like you, that everyone was like me. But I've discovered, most are not. Most are happy to float through life just consuming what is around them. Sure,many lack opportunities and resources. But creatives exist everywhere - creatives create regardless. There are lots of creatives, but most are just consumers. And that's fine.
- stinos 4y agoIt makes a big difference to be working for yourself, rather than someone else Statements like this, and the whole article basically, make me wonder - since I'm apparently an outlier because none of this is really true for me - whether this originates from people doing jobs they don't really like and/or working for companies which have questionable work ethics and/or working for companies which are mostly about profit not product. I don't really feel any difference in motivation for the payed jobs I do and the contributions to OSS and the personal side projects. And to some extent: the hobbies I have, the non-software things I build. I just want to get creative and do the best thing possible. Sometimes that gets skewed somewhat due to certain requirements, and that happens more for payed jobs, but that doesn't change my motivation.
- bruce511 4y agoToday we treat work by a professional as being of higher standard than an amateur. A pro footballer clearly plays better than someone in an amateur league. But it was not always so. In recent history "professional" indicated that the task was bounded by time, and thus constrained in quality. An amateur building say a clock could take unbounded time, and hence create a superior product whereas a professional had to sell the clock, so it had to be produced in affordable time. John Harrison starts life as a carpenter, making some clocks on the side as a hobby, interested more in perfecting the concept of clock than selling clocks for money. (although he had a prize in sight for inventing an accurate nautical clock.) Despite making only a handful of clocks in his life, he's credited as being the most important clock maker ever. Thus it is with OSS. Given the lack of monetary benefit, the benefits of writing it have to be elsewhere. In the satisfaction of a job done well. In the beauty and elegance of the code. The timeless perfection. Or the idea that OSS presence will look good on your CV and held get you that job. In which case just throw stuff at Github to make a "portfolio". Never to be looked at again. I think it's safe to say that the majority of OSS is the later, but we are all better off for the fraction that is the former.
- mpol 4y agoNicely worded. As examples I would like to call out ffmpeg and x264. Years of refining and refining make it software of a quality that didn't exist before in the world of codecs.
- amadeuspagel 4y agoThe meaning of the word amateur comes from the latin "amare", which means love, so an amateur quite literally is someone who loves his work.
- rikroots 4y agoI don't like the word "amateur" in this context - the semantic shift from its origins, and the baggage the word brings with it today makes it feel ... dismissive, insulting; easy to discount and ignore. Looking at the word's synonyms reinforces that feeling[1]. "Hobbyist", on the other hand, feels both knowledgeable and at the same time homely, unthreatening, to me (see synonyms[2]). I don't like talking about my JS library on GitHub[3] as a "side project" (a phrase I think many people would interpret as: "something that may one day make some good money"). Rather, I think about it as one of my hobbies, something I do because the work both fascinates and pleases me, allows me to experiment and push boundaries of what's possible to do with a 2d canvas element in the browser without the need to meet the demands and constraints of employers, clients, time, etc. One of my other hobbies is writing poetry, which probably explains why I care too much about the meanings of words ... [1] - https://www.thesaurus.com/browse/amateur https://www.thesaurus.com/browse/amateur [2] - https://www.thesaurus.com/browse/hobbyist https://www.thesaurus.com/browse/hobbyist [3] - https://github.com/KaliedaRik/Scrawl-canvas https://github.com/KaliedaRik/Scrawl-canvas
- bawolff 4y agoPersonally i feel like hobbyist has much more dismissive connotations than amatur, but that is just me.
- mplanchard 4y agoYes, and it retains this meaning in french, where amateur is a false cognate of the english word
- chaosprint 4y agoJust like art. At least that's what I feel when developing https://glicol.org https://glicol.org I didn't have to develop a new computer music for a musicology phd and my scholarship was just for a humanity thesis, but I just wanted to do it.
- amelius 4y agoHow do most artists feel about others trying to tell them what to make? Should they welcome this input?
- chaosprint 4y agoFor art, no. But open source software does have the other side, so some inputs can be valuable and sometimes inspiring. I would compare it to industrial design.
- shaan7 4y agoWhoa Glicol is cool! I don't know anything about making music but I had fun tweaking the code on the homepage and listen to the music change :D
- chaosprint 4y agoThanks!
- danbmil99 4y agoInteresting note: the word amateur comes from the Latin Amat, to love. An amateur does what they do for their love - of music, art, programming or whatever, not for mundane reasons such as career, fame, or material compensation.
- Silverback_VII 4y agoI don't think the gap between an amateur and an artist or business owner is the love for their work. The gap is the ability to generate something of value to others to the point at which you can sustain your efforts without needing to subsidise it like a hobby.
- chaosprint 4y agoInteresting!
- jokethrowaway 4y agoThe main problem is that people want to work for themselves and not for the nth horrible manager in a company they don't care about. OSS is seen as a way to escape the rat race, either as a better job or as some form of passive income. It's no wonder developers complain about not paying "customers", their goal was money from the get go. This is why OSS can't be a replacement for paid software and companies should rely more on paid software - whether open or closed; paying money, after all, is nothing but a way to recognise the value that went into a piece of work. OSS relies on a few exceptional individuals (Salvatore certainly being one of the enlightened ones - as well as someone that found a way to monetize) but it doesn't scale to your average Joe.
- ece 4y agoExcept projects like Blender, Grafana, and others like it started small and became big. Building something commercially successful is an additional step, it's optional, but totally doable. There are distros and open source apps/games that charge on stores, which have developed a commercial component. Paying for work is a good thing to be doing.
- em-bee 4y agoblender started as a non-free commercial effort, that went bankrupt and had its source freed through a crowdfunding effort. as far as i can tell, it remains largely community funded. grafana did start small and managed to raise funding from investors. i think the blender model is the best future for FOSS though. funded by its users without making a profit. grafana's success is nice, but like most startups fail, that kind of success is not common.
- ece 4y agoI think there's money left on the table in both cases. Community funding will hopefully grow as users grow and the value grows, a reinforcing cycle, though projects might take time to get there I think. Projects like firejail could do commercial work, but don't.
- bawolff 4y agoI'm confused. What is the thesis of this post? I guess they are saying that both bug reporters and open source maintainers care about software quality (generally excluding learning projects and research prototypes and the like). No shit. I don't think anyone has ever disputed that. In the open source world we generally say that users are not entitled to anything. They get what we feel like giving, because they are not paying us. This is just as true in the corporate world. If your manager tells you to do X, and some random on twitter wants you to fix bug Y, you do X not Y. The random on twitter probably cares about software quality too. That has no bearing on you probably ignoring them.
- Thursday24 4y agoI have a question for experienced/skilled FOSS maintainers. Are there any good ways to convert those who comment/suggest into contributors? I feel like instead of simply dismissing suggestions with "you get what you paid for", there must be a better way to handle the situation. Or perhaps I'm too naive on the topic
- em-bee 4y agothis is really hard. i believe well meaning suggestions come from two types of people, those who don't know how to do it, and those who are to busy to do it themselves. most of the time when i d̶r̶o̶p̶/contribute a suggestion as a user then it's because it's a good idea but not a priority and i don't have the time to implement it, or rather it's not important enough for me to make the time and contribute a patch. and for those who don't know how, most likely the idea they had is more complex than they would be able to do as a first project, even if they were willing to learn. they are better off contributing in other areas that match their skill-level or enable them to learn. but how to motivate them to work on something that does not relate to their suggestion? maybe by arguing that if they help with those beginner tasks over there, then someone else can find the time to work on their idea, but it feels risky to make that kind of promise. so i would rather focus on those who say they want to contribute something but don't know what because they feel they don't have the skill. those are hopefully motivated to learn. point them to issues that are suitable for people starting out. and for anyone else: thank you for the suggestion. patches for this idea are welcome. (and optionally) feel free to ask for pointers how to get started.
- danuker 4y agoI have a direct counterexample for this post. Linux was created to meed common needs. For scratching each others' backs and sharing costs and risks, similar to investing in 1/10 of 10 risky enterprises, rather than taking on the full cost of one. Linux does not care about "software quality, grandiosity, perfection", rather, to get/keep things working and address the needs of its stakeholders: https://www.linuxfoundation.org/our-members-are-our-superpower-2/ https://www.linuxfoundation.org/our-members-are-our-superpow...
- lukaslalinsky 4y agoExcept that I'd say this applies to Linux as well. The main reason why so many commercial users of Linux leave their drivers closed source is because they don't meet the quality requirements to push them upstream. Commercial work is typically done on project bases, you write the drivers once and that's the end of your job. That's not the case for Linux. Someone has to maintain the drivers, so you want the code to be maintainable. If you maintain something long term, you have to care about the quality.
- danuker 4y agoI argue drivers aren't pushed because of trade secrets, not bad drivers. NVIDIA requires signed firmware since Maxwell (GeForce 750, GeForce 900). https://www.phoronix.com/news/MTc5ODA https://www.phoronix.com/news/MTc5ODA Which is why I will never buy such a card.
- atq2119 4y agoNvidia have recently done a source dump if their kernel module, and it is not at all fit for merging.
- vinay_ys 4y agoAlmost all popular open-source software has paying patrons – companies/universities that give time to the individual to work on that open-source project while keeping them gainfully employed. In recent memory I cannot think of any serious open-source software that doesn't have individuals from well-paying tech companies contributing to it in significant ways. These projects are usually of higher quality and are done in the spirit of the open-source ethos - everything is done in the open with open governance etc. Usually expectation is everyone contributes and gets a lot of value for a lot less effort due to the collective effort. Then, there's a long tail of unpaid software that's put out in GitHub etc. whose quality is highly suspect. They are done as a hobby of an individual, may not even have a proper project community structure (website, mailing list, seeking contributors etc). Then, there's another category of open-source – these are commercial ventures that want to garner the goodwill associated with open-source model/movement to further the adoption of their commercial offering. Nothing wrong with it, as long as they are honest about it. They are different in some fundamental ways. They intend to control the fate of the project very tightly and privately and there is no open governance of the project. Entirety of the project may not be open-source. Big chunks of the critical functionality may be closed source. At some point they may change the open-source license of the project to make it more onerous. Some of the best open-source software that I have seen that do both open-source and commercial parts really really well are sqlite, haproxy, nginx.
- Jensson 4y ago> Almost all popular open-source software has paying patrons Because they are popular, people pay and contribute to popular things. Many become popular before they have paying patrons, but once you are popular you will get people who are happy to help pay and contribute.
- einpoklum 4y ago> Almost all popular open-source software has paying patrons – companies/universities that give time to the individual to work on that open-source project while keeping them gainfully employed. Surely, it's the other way around. You are likely thinking on projects which are not just popular, but with a target audience so large that they are nearly-mainstream-media-level popular, or alternative, important enough to be necessary for large corporations' activities. For those you may be right, and even there I'm not sure.
- fedeb95 4y agoA lack of proper funding of well made things doesn't mean it won't be achieved ever. Many assumptions made in this post... makes it quite useless
- daemond 4y agoI agree with it that when the OSS is in the early stages. When the OSS has a large number of users, forms a community, and has commercial potential, things will change.
- jrm4 4y agoI like this a lot -- I think one take-away that isn't explicitly mentioned (that I, as a bit of a GNOME/Wayland hater get a lot) is that "you're not paying for it so you must not discourage what they are doing" is a pretty bad argument I hear frequently. Even if you're Free and Open Source, you're injecting code and ideas into a community. By making that public (and intended for wide use) you are opening up for criticism from anybody to say "I think your software is bad and you should stop promoting it." That's just free speech 101.
- em-bee 4y agothe primary issue is in what tone the message is sent. i consider it reasonable to expect polite and friendly interaction. freedom of speech does not give anyone the right to hurt someones feelings. if the software is bad, don't use it. if it is dangerous (you could loose work when you use it) then be explicit about the danger. "your software is bad" is a rather useless criticism. tell me why. tell me which alternative is better. tell me what would make my software better. but don't just tell me to stop promoting it, because that is not your place to say.
- jrm4 4y agoOf course -- no personal insults. But, here's the thing in my experience. I might believe believe your software is "bad to the point of harming the ecosystem" (which I do feel about e.g. Wayland, I think they haven't done a good enough job of preserving backward-compatibility, YMMV) At this stage, it is absolutely my place to say. And very frequently what happens is they put up arguments like yours, even when I have been explicit about the danger, which I do good-faith believe is real enough to get very critical about.
- em-bee 4y agoAnd very frequently what happens is they put up arguments like yours, even when I have been explicit about the danger that is the challenge in every human interaction. sometimes it is difficult to tell how a message comes across. if it isn't well received, the best one can do is to back up, apologize that the message didn't come across the way it was meant to and try restating the problem in a different way. and if that doesn't work, keep trying or give up. some people are just not open to any form of criticism, and the best one can do is to try to be polite and state the problem in neutral terms to anyone who needs to hear it.
- llamajams 4y agoSomewhat related; the Po/architect/techlead ( transcends titles) dude on my team , who is a great guy technically and team wise, is completely unmanageable when it comes to day work. Whichever issues he is assigned to he will not do... instead he will do some other stuff none ever though of or asked for (good stuff tho but won't see value or impact until at least half a year later), but if you assign a crystal ball gazing task to him he won't do that either, hell do something that should have been done 6 months ago. Management really got into work tracking ... So it's a constant cat and mouse game. He just wants to cash a check and do whatever he wants to do.
- marcus_holmes 4y agoIf I was painting a picture, and some well-meaning observer came up to me and said "I think the bottom left corner should be red; I want to hang a copy of this on my wall and it needs to co-ordinate with my colour scheme" then I would rightly tell them to go away and paint their own picture, or pay me to paint the picture they want. Code is no different: you only get to tell me how my code should look and feel, or what features it has, if you pay me for it. If I'm creating it for the joy of creating it, then I get to say what it is and what it does. And it's utterly my right to refuse your money, block your comments, and continue doing something with my code that you don't like. At least in OS you can fork my repo. Then it's your code and you can do what you like with it.
- dahart 4y ago> The paradox is that the OSS writer cares and is often willing to fix code she writes for free, more than the other paid work she does. I feel like the paradox of this claim is that paid work seems to be collectively far higher quality software than personal OSS projects. This claim is my opinion, I’m not stating it as fact, and I can certainly think of specific cases of very high quality OSS and very low quality commercial software. That said, in my experience both personal and witnessing others, the sum total open source software has a worse user experience precisely because it’s not catering to what other people need, while paid work might seem less cared for but actually does take care of all the boring chores that need to be done to make software great. Things like good documentation, good unit and end-to-end tests, and polished interfaces, just to name a few. Even just building a GUI is probably eschewed more often by OSS projects because it takes loads more work than making a functional CLI. All these things tend to get skipped more often when you’re writing software for yourself, it certainly has been true for me as well as other people I know. It certainly seems true if you pick random projects to read through on github or npm or whatever, most of it seems like it was a passion project for a month or so before getting abandoned.
- nayuki 4y ago> the best code is written when you are supposed to do something else > programmers are likely to spend more energies in their open source side projects than during office hours These remind me of Paul Graham's essay "Holding a Program in One's Head": http://www.paulgraham.com/head.html http://www.paulgraham.com/head.html > It's striking how often programmers manage to hit all eight points by accident. Someone has an idea for a new project, but because it's not officially sanctioned, he has to do it in off hours—which turn out to be more productive because there are no distractions. > ordinary programmers working in typical office conditions never really understand the problems they're solving
- tardyp 4y agoAnother key reason to me that open source can be very good quality is when the developer is the key user. If the developer has strong knowledge of the business while designing a product, it always ends up with better qa as they are writing the right product on first draft. You hardly get that when you hire someone to do something for you. That is valid in other domain than programming.