4 ms·
Think about it from the cost perspective. Not necessarily in terms of dollars, but in terms of time. There are thousands of BigCorps out there. There is only on
by tghw 15y ago
Think about it from the cost perspective. Not necessarily in terms of dollars, but in terms of time. There are thousands of BigCorps out there. There is only one Redis. If every BigCorp that runs mainly on a Windows stack (I'm personally connected to two, Fog Creek and StackOverflow) has to spin up %nix boxes just to run Redis, there will be tens of thousands of hours wasted as each company gets this new environment up and secures and maintains it going forward.
However, if he does support Windows, it might take antirez some extra time to support this patch, mostly front loaded. If it is too much for him personally, he could ask just one of the BigCorps who care about it for some help. (I'll bet Microsoft would be willing to dedicate a dev or two.) The number of hours spent may be in the tens to hundreds, but will be much more efficient overall.
- nknight 15y ago> (I'm personally connected to two, Fog Creek and StackOverflow) The latter of which, at least, has done exactly what you say you don't want to have happen. Also, neither of those companies are even remotely BigCorp, they're quite small and nimble. > has to spin up %nix boxes just to run Redis, there will be tens of thousands of hours wasted as each company gets this new environment up and secures and maintains it going forward. Perhaps an incentive for them to find a way to make an unobtrusive patch that might be accepted into Redis mainline. Or an incentive to press Microsoft for real POSIX support. None of this is an incentive for antirez, VMware, or anyone else, other than the people who want to run Redis in Windows. At best, you're arguing the good of society, but getting agreement on what that means requires someone to have made a lot of moral and ethical judgements similar to yours.
- tghw 15y agoYou are right in that we're not BigCorps, but if anything, that makes it worse, as we don't have as many resources to spend setting up boxes we wouldn't have otherwise needed. It's not a moral and ethical calculation, it is a simple calculation of time. One of our main goals in the software industry is to reduce redundancy. Antirez's decision is increasing it. Arguing simply based on incentives is also a fallacy. If we were to look at everything from that perspective, no one would donate to charity and far fewer open source projects would exist.
- generalk 15y agoAntirez's decision is decreasing complexity and time for him and the people who help maintain his project. The code is right there. Any of your BigCorps are free to grab it and make it work. They are not free to demand the time of an open-source dev.
- tghw 15y agoForking the project is less than ideal. Client libraries will have to spend time making sure they comply with both versions, and development in general will slow as each project will have fewer total devs. Better to bring that other team "in house" and have them help with any issues that come up due to the new cross-platform code.
- generalk 15y ago> Forking the project is less than ideal. Except when the author of the project says he won't roll Win32 support into mainline development. Then it's the only option, but it's an option available solely because the author open-sourced his code under a license that allows it. Which is awesome. > Client libraries will have to spend time making sure they > comply with both versions I'm not sure that's the case. If I'm writing a Redis library (say Resque), I'm going to ensure it works with Redis. If it's also usable on Windows because of redis-win32, awesome, but that's not something I'd go out of my way to ensure. > development in general will slow as each project will have fewer total > devs. What? Why? Why would a project have fewer devs? Are you assuming some developers will work only on redis-win32 and not on mainline Redis? I don't think that follows -- changes to mainline Redis will probably be merged downstream into the win32 fork by that fork's maintainers, who wouldn't otherwise be working on Redis.
- nupark2 15y agoStandardizing on Windows as a deployment platform has known costs and benefits. One of the costs is in largely losing out on the traditional UNIX software ecosystem. There are some OSS projects that maintain first-class Windows support, but nobody should be surprised that when they find out that Windows is poorly supported by an OSS ecosystem that is predominately focused on producing software for UNIX descendent systems.
- beagle3 15y agoIn terms of economic efficiency then: This being a BSD product, BigCorp can do their own port. They can decide to release it or not, based on whether it is more economical for them to share the support load (but also provide the "profit" to their competitors), or not. Microsoft chose not to with their BSD Socket modification, for example. They can just as well do the same for Redis. Pure and simple, this is Microsoft tried to get something (remove incentive for people to use competitor) for almost nothing. When Microsoft NoSQL server arrives (and I suspect it would, sooner or later), if it is even remotely competitive with Redis, you can be sure they'll speak badly of Redis -- they do that to their own products when a new version is out.