To anyone tempted to get into Talon: note that it is very much not open source - https://talonvoice.com/EULA.txt (except when you contibute code to them; in that case you implicitly license your code as open source, but theirs is still their property).
I contribute quite a bit to open source as part of my work on Talon, including the speech engine, the tools I use for model training and dataset creation, and I've upstreamed security fixes and other improvements to core projects like CPython and LibUSB.
> except when you contribute code to them
That clause isn't for code contributed to the Talon app, it's so other users in the community can use ad hoc scripts posted to Slack. Talon itself does not use any code under that clause and I still recommend users explicitly license their community code.
I've had the open source conversation plenty of times, but basically it boils down to: it feels like the bare minimum to protect myself from hostile forks given I have been working on it full time for over five years now, give it away completely for free, and provide high quality support.
It's also segmented so all of the primary functionality (e.g. voice commands and their behaviors) are implemented in open source user controlled code, and I open source plenty of the components of Talon.
You might read the handsfreecoding review [1] which covers this a bit.
> I contribute quite a bit to open source as part of my work on Talon
That's good and admirable! It doesn't change the fact that Talon is not open source, which makes it risky for users to come to depend on it.
I'm not trying to change your mind on whether Talon is open source. You can do whatever you want. The only reason I posted the comment was that I landed on your documentation site at first[0] and I mistook it for an open source project, only to find out later that I was mistaken.
I am responding in this way because your top post heavily implies details that are not the case:
- "very much not open source": Talon has a lot of open-source code, including the users' entire custom voice user interface necessary to replicate their setup on a different app (if a compatible app were to exist).
- "except when you contribute code to them": This is simply not the case, users are sharing the code in question with each other as customizations in the community chat. None of that user code ends up "in Talon".
---
Please read the handsfreecoding post. I have mitigated the continuity risks (e.g. bus factor) of being closed source, and I am fundamentally against selling out. It is extremely important to me ideologically that Talon is free and will continue to be free.
Talon is the best option for a lot of people to use their computer without pain. I would not have quit my job and spent years full-time developing Talon under an open source model. To my knowledge I am the only person currently working full-time on this problem.
Please understand that if you convince someone to not use Talon for this reason, their alternative may not be "use some other software", it may be "computers continue to cause them literal pain".
I have read the handsfreecoding post now. It sounds like Talon is a really great tool for the people who need it and it is much closer to open source than ~any other proprietary software I am aware of. If anyone deserves criticism for releasing software that does not respect its users, you're far from front of the queue. It's still true that Talon is not open source, and there are some people who will reject it on those grounds (I am one of them). But that's OK, you don't owe us anything.
Sorry for the misunderstandings I posted in my first comment, they came from a quick reading of the EULA - unfortunately I can't edit that comment now.
Re your deleted comment about "hostile forks": allowing users to run whatever software they want is precisely the point of open source. It's not "hostile" to have different opinions to you.
The project looks cool nonetheless, but it is still true that if the users don't control the software, the software controls the users.
I'll repost that in sibling. I just realized that I'd rather have people saying "ah, typical of proprietary software to not support Linux" than "your work has no value because I can't compete with you using your own code". I'm not going to stop supporting Linux because of this, but it still seems like a backwards incentive.
This is a business, not a pet project. I work on it full time and it is my meager source of income. I'm not convinced it is possible to make much of a living on open source.
I do mean hostile when I say hostile. I have a particular project of mine in mind, where the fork renamed, split the user base, and lagged behind my changes. They later just reset to my HEAD (as I was making way more progress than the fork), then removed attribution in the docs and solicited donations for the work I had done. I burned out on that project shortly after.
> if the users don't control the software, the software controls the users
Talon is free, runs offline, cares about user privacy and security, and gives an incredible amount of control to the user. The entire voice interface and behavior is defined in the user's code. There are several open source projects in this space and none of them are anywhere close to Talon on making it easy to build and customize your own voice / hands free interface.
Just out of curiousity: would it be possible to set some kind of donation target, where you'd be okay with open sourcing Talon?
Maybe that would allow you to keep making a living from it as you currently are, as well as allow people to see the code at some point. (Note that I'm saying "see the code", as you could just open source it without accepting contributions.)
Personally I'd be more willing to pay for a product if I knew that my payments helped open source it.
Not saying you should, just wanted to mention it as a possible solution.
After you got me pointed in the right direction, I've been enjoying learning the ropes. I appreciate what you're doing and will subscribe to your Patreon if I find Talon to be a permanent addition to my workflow. Please don't stop supporting Linux :)