In the year of 2006, I don't understand why there are still sharewares that's free for personal use but closed source. The case of bitcomet is especially perplexing to me since bitcomet neither charges fees for personal use nor provides any support to business users. My guess would be that bitcomet's own revenue is commercial licensing. But then again, why can't you open source bitcomet and still charge business users licensing fees? In bitcomet's case, I can only see the advantages of making it open-sourced to improve bitcomet's features and stability, without losing anything. If you open up your bug tracker, millions of users will be potential testers and bug reporters. If you open up the source code, hundreds of thousands of developers/users will submit patches and enhancements to bitcomet. So there's really no reason to not open source bitcomet unless you absolutely have to use some proprietary library with very strict limitations on redistribution. But then again, what library could it be that you can't replace with an open sourced one?
I'm an advocate of open source software and it's frustrating for me to not be able to contribute to a project which its product is something that I use on a daily basis. Therefore I am here petitioning for an open source bitcomet project.
You may want to contribute, but most people just want to make hacks that cheat. Giving out the source would cause a lot of trouble in that sense. And BitComet doesn't need more hacks floating around out there.
according to the download count on download.com, yes bitcomet does have millions of users. hacks? so u are saying azereus is full of hacks? emule, dc++, sheraza, gnutella and all other open source p2p programs are full of hacks? that's completely opposite to the reality. from the experience of so many open source projects out there, most contributers are only acting as testers and bug reviewers. most people are not developers and even if they are, in the case of a windows app, they don't necessarily have a copy of visual studio. those programmer who can understand and write the code for bitcomet are the real contributers to the code base. as experience has shown, for every exploit or hack discovered, there are always more fixes to patch the problem by the same community. by open sourcing the project, instead of having only a handful of developers working on the project, you suddenly have thousands of developers doing security auditing for you and other improvements. a closed source bitcomet has so many hacks. a hacker will go to any length to find security holes and exploits of the program, but if the program is closed source, good users can't help and the project developers don't have the time to fix it. so the result is slow response time to critical bugs and unhappy users. haven't we learnt enough from IE6?
I would have to agree with Dark_Shroud. Open Source would be really bad for BitComet. Most of the people that would use the source would only use it to embed hacks into it so people that download the third party "patches" people would get virus/adware/spyware and blame it on BitComet. Thiswould mean less people use it and the BitComet team would have to get fixes out and have to deal with more than bugs.
It's true that azereus and emule both have cheating mods, and shareza by nature is a hack and is banned by most other eDonkey2000 clients, but according to Wikipedia, "BitComet's upload slot limit is known not to work. BitComet has also been accused of favoring other BitComet users on uploads, hammering trackers, dropping piece requests, and other similar unfair techniques." It's also true that it took MS more then 5 years to come up with IE7 thats still at least 1 year behind current state of the art browser technology. My point is close source development model leads to slow security fix response time, and when it comes to defending against accusations, there really is very little you can do without opening up the source code for verification. You may publish data gathered from some network experiment, but people can always say you can manipulate data anyway you want, so you really have no way to prove otherwise.
Ok, without spilling anything about our code and such. C++ practically every programmer knows this basic language, in fact this is one of the first languages taught to students in high school or uni in their first computing courses. I'm going really general here: because the code is so openly known, it can also be easily manipulated for personal means.
If that reason is not alone. Think by this example, why are multimedia programs i.e. Dvd media players like VLC are open sourced? Answer: Because if the user tweaks around with it, any harm that comes out of that 'tweaked software' will only harm that user, unless he/she distributes it. Though, the only reason why the user would tweak it, is because they only want to make the software better.
On the other hand, with P2P software like Azureus, by having an open-source, users also want to make the software better...but again, what for? Only for their personal use, so 'hacked'bt clients will only serve to provide better download usages for that user alone, but that 'hacked' client will not share its benefits with other users, only it will harm the entire swarm of that torrent.
Hence, this is the reason why you're not seeing alot of torrent clients like Azureus being open-coded. The most of what we can do is listen to BitComet users' suggestions, and put them into place for the next version to be released. I suppose this is also the reason why BitComet was banned before on private servers. I won't disclose why it was banned, because users can simply just download our old version, and continue cheating. Thus...we released newer versions which fixed that accidental 'cheating' feature.
Actually, according to this Wikipedia page, about 2/3 of the BT clients are open sourced, even if you only count the Windows clients. uTorrent is close sourced, but for reasons unspecified, unlike BitComet, which closed its source for security reasons; and Azereus is open sourced.
C++ is a popular language, but not everyone knows how to deal with network protocols. In order to cheat, you must lie in the messages you send to other clients, but then if you lie, you must lie consistently or you can be caught and banned (basic theory of computation). So my point is, all you have to do is to force the client to lie all the way and eventually they'll get caught. For other so called cheats, like having fake upload slots that never uploads, or fake bandwidth reports... can all be solved by doing a few more simple arithmetic calculations when assigning scores and priorities in the scheduling algorithm. I don't see why security can be a reason for closing the source. For a client with a huge user base like BitComet, any cheat countermeasure algorithm will have an adverse effect on the whole community and makes cheating mods a lot less likely to succeed in whatever they are hoping to achieve.
By using a open source development model, your accidental cheating feature could get a chance to be reviewed , bugs filed and avoided the whole "accidentally cheating" fiasco. So open source model actually improves the quality of the software. Same goes with the cheating mod, for everytime a new cheating mod comes out, someone else always will come up with a new countermeasure algorithm and that can be incorporated into the official client's source immediately, throw in an automatic update system like Azereus', noweveryone connected will get patched almost in no time, what's wrong with this?
Most of the other "open source" clients have been mass banned for two reasons. A) They are no longer being developed. or B) They have cheating features/tendencies. And they are not worked on as much as BC is now and Torrent.
Furthermore its modified versions of Azureus that the RIAA/MPAA are using to posion swarms and host fakes. Azureus is also banned in a lot of large scale private trackers as there are groups that release cheating plug-ins for every new release. So as you can see the cons out weigh the pros thus source cannot be released.
the advent of 500 meg channels for the one time admission price of $149 (list for an 802.11 draft (the greedy carriers will never let it be final) N wireless router) will result in the formation of a TELCO-free infosphere.
I think BC should make certain proprietory protocol code open source to embed/reverse engineer into other clients. For example the NAT traversal is pretty useless since there are few BC users, and alot of BC users arent firewalled. And I think there maybe a incompatibility between .6* and .8* NAT traversal implimentations. Also if BC uses any extended messaging, that should be made open-source, just enough to reimpliment in other clients, or a really well writen wiki article, but I have higher hopes for code. There needs to be more colaberation, or else the BT world will fragment even more into the UT and AZ duopoly.
It is true that now BitComet implements its own proprietary protocol code, as well as its own torrent format modification (e.g. the >1MB aligning feature, quite annoying in to other clients). For other clients, they don't have DHEv2, BCTP and other undocumented features, it would hinder the BitTorrent community altogether.
Well, that's their business, but tertiary sources are NOT definitive, nor do they try to be. Wikipedia's mantra is "somebody said it", and not "it's true". A great deal of what Wikipedia says is not true. As a source, it should never be trusted for more than guideposts for further exploration. Specifically, much of what you've read about BitComet is not true, and some of it is sheer garbage, demonstrably false for anyone who cares to try. But Wikipedia must tend their own garden.
The second thing is that it is quite easy to cheat on bittorrent, just as it is quite easy to falsify the origin of email messages, and for much the same reason: security/authentication was not designed into the protocol, and it's too late now.
795a8134c1