ID:106964
 
I'm just going to jump right in and I'm going to ignore any "open source is the right thing to do" philosophy points.

1) Tom & Co. do not make any money from selling BYOND. Revenue comes from memberships and donations, not from the software. That is, they use a service-based business model. This makes the software a perfect candidate for open-source.

2) BYOND is getting stagnant. Look at how many features are new, "need discussion", or worse, deferred. It's apparent that the two developers this project has are not enough.

3) BYOND can't use certain tools because of its licensing status. MySQL support is arguably invalid, and the reason we don't have real RegEx support is because any feasibly implementable library uses a copyleft license. Hey, at least you can purchase Lummox JR's regex library, right?

4) BYOND is currently Windows only. By releasing under an open-source license, BYOND could be adapted to use the Qt framework, allowing for a real DreamSeeker client on Windows, Linux, and Mac OS X.

5) Believe it or not, there are intelligent, capable developers in this community. Some of us will recall the hacks BobOfDoom made years back. There's Slurm and Hobnob who made decompiling tools. Bandock has worked with string manipulation and other reverse engineering within the DMB format. And beyond them, there are plenty more ready and willing to learn and contribute. In June of 2007, Tom said "I think the best approach is to bring in good programmers as needed," but we haven't seen it happen. Instead of hand picking, or rather not picking at all, why not give us all a chance? Who know what BYOND missed out on by not utilizing this guy?

6) There is $1,000 USD in it for Tom & Co if BYOND releases under either the GPL, LGPL, or BSD license.

Nothing to lose and so much to gain.

[Edit]
Added LGPL to the list of licenses I would accept for the thousand dollar reward. If BYOND were GPL'd, I believe all games made within BYOND would need to be GPL'd. By going LGPL, the BYOND suite itself would remain open but software that links to it (i.e. games) could use whichever license they please.
Not likely to happen, and I feel like it'd cause the community to fragment.
I see it now, 1,000 renamed BYOND suites with 10,000 13 year old Toms.
I don't see the passport system surviving a switch to open source. All someone would have to do would be to change the passport proc to return TRUE.
You greatly underestimate how much there is to lose and overestimate how much there is to gain. I suspect that releasing the code would introduce a lot of security problems (I can make a program that looks exactly like BYOND except the pager emails your password to me when it authenticates). I also suspect that the source code is enough of a mess that bright-eyed developers who think they can change the world will quit after 10 minutes of looking at the code without being able to figure out anything.

There is a slim chance that some developer could make great contributions if BYOND became open source. There's a greater chance that Tom will win the lottery. It would be a better idea for Tom to use all money made from BYOND to buy lottery tickets and use part of his potential $100 million to pay additional developers.
Binary release integrity can happily be maintained outside out of the open-source framework, through client - server - hub public key authentication with keys kept by BYOND staff. This is reasonable, you expect central release to be centrally managed.

Sure, you can compile the BYOND suite yourself (not withstanding the effort required to configure the development environment to do this), then host it with such a proc implementation in force.

However only clients with binary from your compilation (thus matching keys) could hope to connect. So now you need to distribute a separate BYOND version to your prospective players. "Vanilla" clients would fail to authenticate the server, and disconnect accordingly as clearly something is not correct there.

Of course, this needs repeating by the offender every BYOND release. Quite a lot of hassle to invalidate the passport.

There's principally nothing stopping me altering BYOND's binary to do this now actually, and vanilla clients would probably (haven't checked the client implementation) have no issue with this. It would actually be easier to maintain such tampering, due to the lesser security our current version has (security by obscurity).

The reason you don't see it is simply because it's not worth the effort. That statement would still hold under the open source framework.

The malicious recompile argument is a common one, but ill-founded in most cases. Why would I download your version? Clearly with the architecture (one of many options) noted above, your version would have to carry some pretty significant personal gains for me to bother installing it over vanilla BYOND. This attack vector is just too niche to net you anything worth keeping, you wouldn't bother.
BYOND Darkest Revenge Shadows of Epic Mayhem
If you advertise a BYOND game outside of BYOND it would be very easy to get people to download your version of the software. Besides, a problem doesn't have to affect all users for it to be a security risk. Keeping it closed source avoids so many problems. In the ideal world all software would be open source but when you begin to consider the real world problems you'd run into you quickly realize its not worthwhile.
This attack can still be done now. It can be guarded against effectively by building authentication into the protocol. Basically, you're talking a load of shit.
I'd imagine if BYOND went open source, then we'd have millions of BYOND engines called "DRAGONBALL BYOND MAKER" or something of the sorts, given the nature of this community. Whilst I agree that BYOND has it's fair share of good developers (and I'm glad to see BobOfDoom and Bandock in your list), I think there aren't enough to justify this. And that's not even regarding security issues.
Not being very knowledgeable about all things open source, the question I'd raise is how efficient this would be:

- Is BYOND's source code in a sufficient state to encourage contributions?
- Is time spent wading through wanted and unwanted contributions, as well as maintaining the code, spent efficiently?
- Are there any other issues (such as the possible security issue that's being discussed here) that we need to be careful about, and that would require work to get around?

Additionally,
- Does BYOND becoming open source pose any limitations on future business opportunities?
The standing assumption here seems to be that the people you are all worrying about regarding quality and niche builds can actually compile and extend a complex project like BYOND. From prior experience with some on BYOND who consider themselves acceptable programmers attempting to wield a C++ IDE, there's a natural barrier to entry that negates the bulk of these issues being brought up.

Much less the issues being brought up are short-sighted. Try forking a project like Wine, and maintaining a patch-set for it, keeping up to date with their developments, re-distributing it after you've applied your patch-set (which invariably requires further code-changes to resolve conflicts) with EVERY release to your given customer-base. It's not going to be fun to do, or worth their while, because forking any C++ project of size in active development is a lot of effort.

Much less that there aren't enough benefits to justify this, the downsides are overstated and in some cases plainly naive. It's FUD, basically, and not worth the time considering in the forking case, and easily mitigated (and just as doable now) in the password theft and passport case.

Toad has brought up the first questions that aren't involving some element of FUD here. In my opinion:

1. Yes, as it's not the code that actually encourages contribution, it's the management. There are some serious management lessons to be learned from Fedora project, which sports one of the most active and inclusive development communities of any open source project I've seen, WineHQ and Kernel included.

Availability of documentation is a big factor at work, and enablement. Tom I think knows the documentation isn't up to scratch by any means, however there should be ways of progressing this communally.

Currently the developers Airjoe mentions are "going it alone". They are essentially reverse engineering the entire platform and developing bits of it themselves. If they have made the progress we have seen with zero source code (much less documentation), imagine the enablement of opening that source code up to them. Instead of looking to essentially replace the BYOND suite, they'll be building upon it and improving it. It stops being a technical fork, and starts being moving wheels on the main project.

2. This is a good point. Not so much the wading through contributions, as from a technical standpoint that isn't too bad, but from a feature request standpoint. Some steering group would be required here, which is essentially the BYOND staff as it currently is.

The difference I think you'll see is requests which "need discussion" will get much more detailed if coming from a developer contributor, in order to help the steering committee out. You'd stop having Tom and Lummox play devil's advocate for a feature, and have someone actually trial the technical detail of it and see the issues first-hand.

3. This requires some consideration, although I think even if you went ahead without that consideration the number of issues actually exploited would be small and addressable pretty promptly.
BYOND would probably benefit more (developer wise, as opposed to being to able to use more libraries) only if competent developers were given access to the source. However, at the same time, I don't see open source inhibiting the software at all, because 98% of BYOND probably couldn't get it to compile.
There's a thousand bucks in it for Tom? Explain, please.
I suspect it's simple, he'll pay up $1000 to Tom. To be honest, were the offer put up after march, I'd shift $1000 into savings and match it.
Oh, well, shoot. If Airjoe wants to throw a thousand bucks at BYOND he could throw it at me instead and I'd turn around a few quality games. :)
How would that work, do you lose a lot of time to working a part-time job or something? Otherwise, it seems to just be cash for incentive on games you don't actually want to make.
He needs money to pay artist from my understanding.
Yeah, art isn't cheap for hobbyist developers. I believe KhaosParadox said he was paying around 4,000 dollars just for the art on his project.
Paying for artwork, mostly. If you frequent the art guild you'll notice a lot of BYOND's local artists are either busy working on fangames or just not taking on jobs anymore. Outside artists take on jobs for cellphone games and flash games which regularly get sponsored for a few thousand dollars.

You can't just say "you'll get a cut of future subscriptions," that sort of thing doesn't fly on PixelJoint. You need to pay an honest price for some honest work.
Page: 1 2