This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2020-05-19
Channels
- # announcements (12)
- # aws (17)
- # babashka (6)
- # beginners (40)
- # cider (14)
- # cljs-dev (14)
- # cljsrn (8)
- # clojure (110)
- # clojure-europe (46)
- # clojure-italy (1)
- # clojure-nl (4)
- # clojure-spec (14)
- # clojure-sweden (3)
- # clojure-uk (29)
- # clojurescript (52)
- # conjure (68)
- # cursive (33)
- # datomic (9)
- # figwheel-main (11)
- # fulcro (97)
- # ghostwheel (1)
- # graalvm (2)
- # helix (53)
- # hoplon (13)
- # joker (6)
- # kaocha (1)
- # leiningen (2)
- # meander (28)
- # mid-cities-meetup (1)
- # observability (1)
- # off-topic (112)
- # pathom (6)
- # pedestal (3)
- # re-frame (16)
- # reagent (16)
- # reitit (2)
- # shadow-cljs (27)
- # spacemacs (2)
- # sql (26)
- # testing (3)
- # utah-clojurians (3)
- # vim (2)
- # xtdb (32)
Open source license idea — you can use/modify etc. for free, but if you use it at work, you have to ask your manager to sponsor the developers. Actually sponsoring is not required.
How do you know if they have asked?
The idea is to incentivise the process of sponsoring of FOSS, not enforce it with EULAs
the "problem" with these novelty licenses is that no serious company will use them. Companies have a set of licenses that their legal team have vetted to be OK. A new license is by definition not in that list. You'd need either a lot of projects to adopt it, or some very high profile ones before they will consider analyzing and adding. If anything in there deviates from the typical legalese then it will immediately be rejected. Now maybe that's fine, maybe having those kind of companies adopt your project is not a priority, but it's something to think about. OSS licenses are always a trade-off between protections and adoption. People like MIT/BSD style because it promotes maximum adoption, which may be better for the long term health of the project. I'm more an MPL type person myself, I think it's a great balance between being enterprise friendly while still having a bit of copyleft protection, but I recently did commissioned open source work and the client asked me to relicense the project to EPL, because otherwise their legal team had to get involved.
Thanks for the write up! I agree novelty licenses are a hurdle, but I don’t think serious companies will flat-out reject novel licenses — adopting a tech is always a trade-off between its costs and benefits. Requiring a legal team to have a look at it is a cost, but it still might be worth the value it brings. I’m not qualified to create such a novel license 🙂 But I see an injustice in current open source landscape, where companies can benefit greatly from other people’s work while leaving all maintainership burden on someone else. You might say its fair to screw people like that because they agreed to it by choosing a FOSS license instead of creating a proprietary product, and that would be true. Still, I want something that is not so black and white as “proprietary product that you can look at but not touch” vs “free as in freedom to screw other people”.
Fair enough, but I don't think a license is the only or even the main way to address this. Yes, you need to pick the right license for what your intentions are. It annoys me that people pick highly permissive license and then complain that $COMPANY didn't contribute back. But "leaving all maintainership burden on someone else"? that's up to the maintainer. If you don't want to maintain it then don't. I know OSS guilt is real (happens to me too), but we have to be able to push back to that and say "sure I will fix this issue this is my hourly rate". If you want to make money of OSS you need to start running your OSS as a business. You can try to run it as a charity, but charities are hard businesses to run. You need to do a lot of heavy marketing to make charity work. For an industry where there's plenty of cash going around and where the value delivered is so obvious I don't believe charity is the way to go. Instead emphasize ROI, do commissioned work, provide paid support, paid early access, pro versions, whatever. Don't complain that people won't pay you for stuff you already gave away for free.
Charging for particular pieces of oss work (i.e. FOSS consulting) vs being paid to work on an FOSS project long-term are two different propositions.
Having worked at a very large Silicon Valley company and having gone through OSS license reviews there, I can say with certainty that "serious companies" will indeed reject out of hand a non-standard license -- and will also reject a lot of OSS released under "permissive" licenses (which they see as restrictive). But such companies often maintain an internal fork of such projects and, because they are not distributing the product, they make enhancements that they do not contribute upstream. They also often have strict rules about their employees even contributing to open source projects.
You can (rightly) complain about the injustice of that but adding a new OSS won't do anything to change that.
Hmm, didn’t know that companies might be so paranoid. Well, the idea was to have non-enforcible “please be kind” clause — do you think that might fly?
Eh, I guess it doesn’t matter — you can just ask for support in the readme or something
@U47G49KHQ Where and how do you want the companies to contribute?
Ok 🙂 But seriously, that’s the question you need to answer. Why change a license if you don’t know why?
All the people I worked with had no problem asking me to sponsor projects…
But helping / sponsoring those projects in a sensible way was often a problem
I’m asking all the developers I want to sponsor to create an opencollective account. I’m hoping other people will do the same
Now I see my mistake — I started searching for solution (suggesting FOSS license) without fully formulating the problem (which I think I can’t properly state yet)
I can state the problem if you want
by the way, I didn’t know about opencollective, but looking at their site it seems to scratch that itch I’m having with current FOSS situation
I feel like I should mention liberapay as well - given it's foss we're talking about :)
IMO the problem is that there are a couple of open source developers doing 80% of the opensource work and don’t get paid for it. They do it out of love for programming or some other interest. They are not really interested in the money. As companies we benefit from this altruistic behaviour. I think as a community we should recognize when we benefit from particular work and try to help these people/groups when we can. If I may take @U04V15CAJ as an example. I think he is doing invaluable work for the Clojure community as we speak. I wan’t him to keep doing that and feel supported. That’s why we sponsor him more than we should given the larger picture of the community (we are only a small team of clojure developers, I honestly don’t know many other companies that spend relatively so much on sponsoring). So I think there are two problems: 1) sponsoring people should be easy for companies (think tax, invoices, overhead etc). This is up to the opensource developers themselves 2) companies should (then) take their responsibility
@U09LZR36F Didn’t hear about liberapay before. Do you know how it compares to opencollective?
Not in detail. Liberapay is non-profit though, so I believe it's financially different.
It's also foss itself https://github.com/liberapay/liberapay.com
Looks like the scale is different: “€4,840.81 was transferred last week between 4,062 users.”
In the end the platform doesn’t matter too much, you want adoption of the companies. If they need to create yet another account (more overhead), they will stop
Github would be the best platform to fix this, but they choose the wrong model (not open, no proper support for companies)
So as a company I would recommend opencollective 🙂
Could it be Github will implement easier support for donating from companies? Or did they state somewhere they have no plans to do that?
I don’t know, but it’s terrible right now. I don’t think they differentiate in sponsors (big or small) and I cannot use my companies account to do it
it’s more a vanity metric. Look I’m Rich Hickey and I have 125 people that sponsor me for 1 dollar https://github.com/sponsors/richhickey#sponsors Does it really do something?
Ok signing off here. I hope I made clear what I (from a company perspective) expect from opensource developers before I will give them money
FWIW, I've been doing OSS work for nearly 30 years now and I've never had an issue that no one has been rushing to try to pay me -- I don't do it for the money. I've looked at a number of possible funding solutions but at the end of the day, I just really don't like that model much. If a company wants support on a project I maintain, or they specifically want a new feature that either I don't want to add or I don't think would be widely useful, I'll offer them consulting (i.e., paid work).
A friend of me is working (in his spare time atm) on “sustainable source”: http://sustainablesource.io, which addresses the licence problem as well. Basically you get a license by (a) paying, or (b) contributing, and anything older than a year you can just use.
This is interesting, but i am curious. Does "contributing" here refer to just pull-requests? or do other things like reviews, raising issues, triaging etc also count as contributions.
great question, I would much rather pay someone to triage and review my open source projects than open PRs 🤪
@U61R3V2P2 I think he intends to interpret in a broad sense, but I’m a bit hazy on the details. I’d encourage you to contact him tough if you’re interested or even curious.
Do you think the problem is that developers don’t ask their manager?
I would like to see that companies give their developers a standard budget for open source, either in time, money or both. Via things like opencollective this is now actually a small thing to do as a company
Github sponsors is the wrong idea
They ask individuals to sponsor, not companies
I think licensing is not the solution, although it can’t hurt. I think it’s mindset by the community
And I think it could help if opensource developers make a start by thinking about this. They could for instance start using opencollective and not one of the other options
For those that haven’t thought about the perspective of a company, i’ll explain. Financial sponsoring, even 100 euro/dollars is a hassle. It costs more than you are giving… You need to set up invoicing taxes etc. That’s why ClojuristsTogether works. However this can solved (even better?) by opencollective as well. E.g. they have giftcards you can give to your employees every month. * Your company will get super cheap advertising through the network effect, since opencollective makes all transactions public. * You don’t have to deal with creditcards * You don’t have to think about selecting projects, your developers will know where it needs to go The biggest problem right now is that there are not enough clojure projects on opencollective! This was the major learning point of https://twitter.com/heartofclojure/status/1164088452687847424 I think creating an account with opencollective is an easy step for all library authors 🙂 Easier than creating new licenses?
Maybe library authors can give their opinion here? Can you financially support yourself of opensource? Is it in anyway sustainable?
If there would be more (say 4 or 5) other companies doing the same as your company is doing now for me, I could work full time on babashka and clj-kondo 😉. If there would be 10 companies chiming in for 500 dollars each, it would also work.
Btw, I'm also confused about how to handle taxes regarding Github sponsors. With OpenCollective it's quite clear: I just send an invoice from my company and pay income taxes over that. With Github sponsors you just get money without an invoice. I'm inclined to not pay taxes over that, because you can get money from other people in the Netherlands "for free" up to 2000 EUR per person.
I think this is actually part of the bigger issue as well. When I talked about this with @U04V5V0V4 last summer, I think he said it well: the problem is not that companies don’t want to pay, the problem is that it should be super-easy to pay people (including purchase orders, invoices, etc) and the open source devs being paid should not have to know about all the financial and tax intricacies.
Can anyone help me pin down a quote? It's definitely from a tech conference on Youtube, and it sounds like something from a Clojure talk, but I can't find it. It's related to the value of effective abstraction and progress, the gist of it is "The ability of humanity to reason about ever more complex concepts is achieved by continually adding to the list of things we don't need to think about"
That sounds like the Alfred North Whitehead quote from Rich in Are We There Yet?: https://www.youtube.com/watch?v=E4RarTAZ2AY&t=112s
@U8LB00QMD That is exactly it, thanks very much!
Sounds like @ztellman Maybe from Clojutre? https://www.youtube.com/watch?v=x9pxbnFC4aQ Probably worth a watch anyhoop
something we're still contemplating (and set
)
not really
I was discussing about transducers with a friend and lazy things goes to sequence
But clojure has mapv
/ filterv
that could be mapped to vec xform coll
Personally I see no problem with into []
I’m thinking in terms of raw perf potential - is there some perf benefit vec
or set
could have over the more abstract into
- although into
does allow the “reducible” thing to decide how it’s done - so I wouldn’t think there’d be too much advantage.
I use into
+ transducers most of the time nowadays though. I like how general it is and can make it really cleanly capture transformation vs the collection building
Also, of course things like sequence
etc when appropriate.
vec and set do have a number of optimizations in them for small colls. I'm not sure any of those are useful when using a transducer though
so it would be more convenience
I'm working on a project that involves manipulating CAD drawings, e.g. dwg and dxf drawings. We've written our own parser so that we can convert these drawings to EDN, and perform some simple optimizations, like combine adjacent lines into a single line. We're at the point where we need to do much more advanced manipulations, like mirror and rotate about arbitrary points, and we'd like to know if there are any existing Java or Clojure libraries out there that can already do these kind of things. We do not need something that can display these drawings. We only need data in and data out. We've looked at FreeCAD which has a C++ and Python API. This could work with some non-trivial effort to wrap it Java. However it's GPL'd. We need something LGPL'd or BSD-ish. Any ideas? Thanks!
Basically stuff like that can be handled relatively simply via affine transformation matrices
dwg and dxf are basically about vertices which have three dimensional coordinates. Affine transformation matrices can do all the stuff you want easily
Thanks @U7MRZK43B!
I suggest you however learn affine transformation matrices in such a way you get visualization
Fortunately these concepts aren't foreign to me although I have some serious cobwebs to dust off 🙂
tangentially related to @tvaughan’s topic -- I want to build a folding up desk so that I can work on my laptop outside (I bought a sunlight readable monitor). Anybody know of any good MOOC's or "how to design stuff in CAD" classes out there?
I just logged on to Clojurians after a few weeks and noticed I missed numerous thread responses. This has been a repeated occurrence that goes to show slack free is not cutting it. I searched for alternatives online and found that someone created a discord server for clojurians (https://discord.gg/v9QMy9D) which has next to none of slack's limitations.
Clojurians Slack is using Slack's free offering, which is definitely known to limit us to somewhere around the last 10,000 messages of search history. This is a common issue raised.
Clojurians Zulipchat has a different UI but many similar features, and has been set up to log many Slack channels here. If you find one that isn't, it is not difficult to start logging that Slack channel there. Its service is free with unlimited history for search.
And there are other services besides ZulipChat of course. The main issue is that for interactive use, most (not all) Clojurians have individually and separately chosen Slack, partly because of the network effect of most others before them using it.
Anyone is welcome to suggest another platform. No one can mandate everyone use something else. So feel free to suggest, as long as you know you may not be heard 🙂
Let me clarify that last sentence -- I am not saying I am not listening, or that people should not listen to you. I am saying that in my observations of behavior, when people suggest an alternate platform, so far in the past, that hasn't changed many people's choice.
That could change in the future -- not easy to predict what would change people's minds there.
Anyway, here is the link if. you want to sign up for a free account with unlimited search history for messages logged from most channels here, with a different UI: https://clojurians.zulipchat.com
Also note that most channels here are mirrored into Zulip so if you miss conversations here, you can go to Zulip which has full search for free (although the slack-archive topics only go as far back as when @UFNE73UF4 was added to each channel here).
(I know Andy mentioned that but I wanted to clarify how they get mirrored and what the limitations are)
@U04V70XH6 is that true? I tried looking for what is the #cursive channel here as a stream in zulip and found nothing
https://clojurians.zulipchat.com/#narrow/stream/180378-slack-archive/topic/cursive -- cursive is topic inside the slack-archive stream (and it's a one-way mirror)
What I really like about Zulip is the entire experience can be driven from the keyboard -- I never have to use my mouse.
As for Discord, when the team here looked at it, there really didn't seem to be enough admin/moderator control and the UI didn't seem to scale to the number of channels we have (653 right now).
But of course folks are welcome to take part in whichever communities they want and this Slack will continue to exist as long as there are people who want to use it. Same with Discord, Matrix/Riot, Zulip, Telegram (I've seen a few posts about the new Clojure community there), ClojureVerse, Reddit, etc, etc, etc. And IRC which is still going with several hundred people I think.
keyboard based is nice. thanks @U04V70XH6
This is way too cool to not mention here, https://www.youtube.com/watch?v=FycDx69px8U
Saw that floating around my recommended videos but didn't watch it until now. That's pretty amazing!
The best part is how he breaks it down from idea all the way through the software design... and the face his wife makes when the backboard knocks her ball out...
Thanks for the write up! I agree novelty licenses are a hurdle, but I don’t think serious companies will flat-out reject novel licenses — adopting a tech is always a trade-off between its costs and benefits. Requiring a legal team to have a look at it is a cost, but it still might be worth the value it brings. I’m not qualified to create such a novel license 🙂 But I see an injustice in current open source landscape, where companies can benefit greatly from other people’s work while leaving all maintainership burden on someone else. You might say its fair to screw people like that because they agreed to it by choosing a FOSS license instead of creating a proprietary product, and that would be true. Still, I want something that is not so black and white as “proprietary product that you can look at but not touch” vs “free as in freedom to screw other people”.