Tag Info

Hot answers tagged

117

Releasing a project under the MIT license is giving people permission to fork the project. Part of the philosophy behind free software is to give users and developers the right to use, modify, and release the software in ways that wouldn't normally be allowed. If you don't want people to do this, then don't use the MIT license. You can't really complain when ...


61

Was Xamarin's action and the way the action was done ethical or not? Well, let's ask an expert - The Open Source Initiative's listing of the MIT License itself, with the license quoted in it's entirety: The MIT License (MIT) Copyright (c) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and ...


17

I wouldn't call it unethical. I would call it unsportsmanlike. There's an unwritten expectation that you will give a good faith effort to improve the original version before deciding to fork, and it seems the original author feels that good faith effort wasn't made. That being said, the best way to avoid your software being forked is to be responsive to ...


14

What Xamarin did is legal and ethical... almost. Let's have a look at the commit fixup of the license and misc typo fixes in the readme: LicenseAndCredit.txt (diff) -Copyright (c) 2010-2012 cocos2d-x.org - -Copyright (c) 2008-2010 Ricardo Quesada -Copyright (c) 2011 Zynga Inc. -Copyright (c) 2011-2012 openxlive.com -Copyright (c) 2012 Totally ...


11

I have found there are three general patterns that form, only one of which doens't end well. We'll start with the worst, and move towards the best: The other programmers are simply better than you, and they're not kind about it. This is as bad as it can get. If you do the analysis, the only tasks they would rationally give you are the un-fun ones that ...


10

Was Xamarin's action and the way the action was done ethical or not? A lot of people are conflating the legal and ethical situation. The X11 license allows anyone to "use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so", so this is ...


8

Hard code and refactor when you need it. Time is money, yadda-yadda, is it worth the time/money to have the unused feature? Also, it's not hard to do later as much as it is tedious. Pawn that task off to a junior developer when the need arises. Finally, when the time comes, some automated tools may get you most of the way there. Such as Eclipse's string ...


6

Making applications multi-language does take some additional development effort. You can either invest that effort right from the start, every day a bit. Or you can invest that effort afterwards, when you have written >100K lines-of-code. Fact is, the sum of the needed efforts in both cases is not so very different as you might think. The first approach ...


4

It would be shady to allow people to draw incorrect conclusions about the authorship of whatever code the fork ships, even if the legalities are covered by providing the necessary notices and revision history for anyone who chooses to look closely. So maybe Xamarin's presentation is unethical, maybe it isn't, but I think that's the basis on which to judge ...


4

YAGNI is often in opposition to other established principles and/or best practices. Other examples include several of the SOLID principles, which are largely about structuring your code to make certain kinds of change easier in future. But what if you don't ever need to make those changes? Then the extra work involved in, say inverting the dependencies ...


2

With just a few exceptions, code, data and configuration should be separated. Hard-coding is generally considered a bad practice. You should put UI text into separate file just so you know where to find it, not because you might need i18n. This will not take much longer than hard-coding, but maintainability will be better. Also with external resource file ...


2

An expansion of the trademark topic: At the Apache Software Foundation, all the code is AL. And, as with the BSD license under discussion here, it's perfectly clear that the AL permits forks. Period. End of discussion. In fact, as discussed in other answers, all true open source licenses permit forks. All they control is the license / usage of the forked ...


2

There is a quote attributed to Einstein (probably a variation on a real one): “Everything should be made as simple as possible, but no simpler.” And that is more or less the approach I take when confronted with the SOLID vs YAGNI tradeoff: apply them alternatively, because you never know if a program is 'throw-away' code or not. So, just add a layer ...



Only top voted, non community-wiki answers of a minimum length are eligible