I’m sorry, @AudriusButkevicius, I don’t want to put down the work SyncThing people are doing. I think it has been great! I think it is the most compelling option, and it is why I have been promoting it in multiple non-SyncThing forums in the last day, and it is why I have been migrating to it. I plan to switch multiple family members over to it from BT Sync. You guys are rock stars, in my and many others’ books sitting for a while at #2, but are now #1 on the charts! It is quite a feat.
It is a blow to the sync landscape to have BT Sync shoot themselves in the foot in remarkable fashion, and I am lamenting that member(s) of the SyncThing community in the past have, according to my perhaps faulty memory, expressed the attitude that
1. it is not seen as a big deal to not have an iOS client -- (correct me if I am wrong! I am probing here) or
2. contentment with how things are,
3. lack of desire to a) invest time, and b) make simple choices that turn ST into a big thing that can be good for the masses because it works for them for their purposes and that's all they care about and
4. 'we are afraid to make an iOS-friendly license because someone might take our code and profit from it, and so we would rather neither users nor developers profit from it'.
Note: 3b is a much bigger concern to me than 3a!!! I can’t fault anyone for 3a, and it doesn’t hold others back from contributing/forking. 3b does!
I just found a quote that spoke to 4 – I could try to find quotes for the others but it would be better if everyone just clarified the their vision, rethinking things if necessary, since there are potentially myriads of potential users coming here to try to determine if this is a good investment for them as users (and possibly a few contributors – I may contribute to a permissive licensed fork some day, or a windows wrapper, especially if iOS is in the mix.) This opportunity will not last very long. Now, it is totally and entirely up to you what license you choose to release your software as – you have to do whatever benefits your personal goals the most – it is just unfortunate from the perspective of me as a potential iOS user (and all the other ones) if the SyncThing community intentionally makes avoids choices that would make the availability of ubiquitous ST delayed or less likely. I question whether it is in the self-interest of the ST community, and I think they are fair questions to ask.
The big opportunity
BT Sync just triggered a HUGE mass exodus. It is a big deal! Stuff just got real! This isn’t time to tiptoe softly around people’s feelings. When times become intense, I am intentionally provocative to get a response to figure out where people stand, especially because they themselves may not have thought through where they stand. Sometimes emotions are tools to get people to think things through. This is an enormous opportunity. It is a badge of honor to be the best game in town. I don’t know why you should be offended. Maybe there should be a poll on this forum so I could give @Audriusbutkevicius and @calmh and all contributors here a 10 out of 10 for awesomeness, so you could know how appreciated you are. But it is a cold hard fact of reality that my iOS devices are not usable in the SyncThing world, and that it is harder for my grandma to install ST on Windows and nerd out on NSSM than BTSync – so what? It is a negative situation but that doesn’t mean anyone should take it personally that nobody has spent the time to improve these things to perfection.
I think it would be easier to have an iOS solution if there was a license to allow porting. (But I know the Go language makes it a technical challenge.) Honestly, I think the licensing turbulence here in the last 6 months has revealed a lack of ambition that potential new users from BT Sync like me may want to consider before placing all our hopes here, and potential contributors may want to weigh contributing to the culture here vs starting their own, with clearer ambitions and less emotional turbulence. As a user, it is a pain to have something crazy happen and reconfigure all of our sync’ed folders using new software. I prefer to minimize how many times I have to do this since it is time consuming. As a developer, it is really painful to contribute to a movement only to have it shoot itself in the foot – and at this point I don’t get warm fuzzies that I would be compatible as a developer with my personal way of seeing the world with SyncThing. (Although the BEP is a great starting point for a new project.)
On iOS and GPL:
There seems to be a preference to have neither users nor developers benefit on iOS rather than have someone potentially profit from an iOS app, and (IMHO) unwarranted fears of scamming, and that someone else couldn’t simply release a free version of ST for iOS and the market would route to the free version. Or if a hypothetical paid iOS version added value, that that wouldn’t be a good thing overall for BEP and ST in the long run.
I have been away for a couple months – it is really cool someone is working on iOS. “Someone has took the effort of reimplementing the protocol to have a iOS client.” – I can’t help but read this as “we forced someone to reimplement from scratch on iOS, because, ___” and I for the life of me can’t think of something that goes in the blank that makes sense.
I was not sure if the MIT android wrapper is licensed correctly, since it directly hosts the GPL library in a thread. Maybe that is not considered linking?? If that is GPL compatible, that is a new scenario to me! (http://stackoverflow.com/questions/3902754/mit-vs-gpl-license)
Even if the android wrapper is licensed correctly, a wrapper approach of GPL (or LGPL) on iOS and other similar app stores seems impossible due to the license chosen. If the desire is for the BEP protocol to succeed, I am not sure why there wouldn’t be a desire to have a strong, permissive reference implementation that anyone can use as a starting point on as many platforms as possible.
But again, it is entirely up to the contributors to prevent the possibilities with what people do with their Intellectual Property, if they want to preserve the possibility for themselves, or make the choice to permanently limit what can be done with the software because they see the potential abuses as greater than the potential benefit to all involved.
The trajectory of the community
Part of my provocativeness is also to try to get a feel for the sensitivities of the developers. If one guy like me can come in here and strut like a cowboy and dissuade people like you from continuing at all, I would say that being thin-skinned is a project risk, as a cold impersonal fact of reality. You guys may be rockstars, but rock bands sometimes self destruct (as with OSS projects and communities), I have sincere concerns that this developer community may be too emotional for long-term success, both in terms of stability in not making knee jerk reactions, and also in making objective decisions that are best for itself and for its community. I hope more people join the team who can bring wisdom and stability, and/or that current people can find it in themselves.
I am trying to determine where I and others should be investing their time as users and potential contributors and what the risks are, and some of that includes the personalities and emotional nature of the people involved. The relationship with ind.ie blew up over pettiness, very needlessly in my not so humble opinion – what additional blow-ups are in the works? What other synergies are going to be wasted? Who is going to start a permissive license alternative to SyncThing that has an easier path to ubiquity? I think these are important questions, and I am trying to figure out what the future holds based on currently available evidence.
Less than glowing opinions may be a tough thing to hear, and I tried to sugar coat it and mix it with positive feedback, but these are my honest opinions and I think this is a time for honest discussion. BT Sync has not released any open source, so you are already miles ahead of them. It is always a special thing whenever anyone creates and gives away free software, or free open source software.
Don’t take what I say personally. I hate seeing BT Sync shoot themselves down, and for ST I hate seeing needless tragedy in in OSS partnerships destroyed, large user segments and user scenarios being (possibly) needlessly unreached, and choices being made that (maybe) slow down the growth of ST. There is a huge difference between insulting your time and effort, versus questioning (and disliking) your choices and I hope you can see that, if only for your own emotional well being.
My bottom line for sync in general: I want a good (permissive) open source sync protocol and featureful software everywhere, ASAP, as in 8 years ago – maybe SyncThing/BEP will be it, maybe an alternative OSS project that doesn’t exist yet is the most promising bet. A lot of ex-BT Sync users/potential developers are up in the air right now, so let’s figure it out!! Exciting times! There is even a lot of potential people willing to spend money for a BT Sync product (that doesn’t exist, since they went for a bizarre subscription model), and people willing to donate – as I said on the BT Sync forum, this is a large part of the recipe for a successful kickstarter campaign, even if the money goes to fund open source and not a commercial entity, or to start a business that has a open source/freemium model.
Bottom line for SyncThing What I want first and foremost for ST developers and community to think about what is truly best for them, and do it. You can never ask more of open source developers than that!! If I can help you guys figure out what’s best for you, I want to, even if it ends up not being a direction that is not compatible with me and others like me as an end-user or end-developer or contributor.