In my years of watching developers create stuff and spend time perfecting it, I noticed that everything gets done faster if they just release a buggy version earlier and let people find all the bugs. I have seen a few game developers receive extremely detailed bug reports from average players and exact methods on how to reproduce the bug. Sometimes, bugs are so rare that even if developers spent years testing it, they would never find it.
The only thing that should be mentioned is *Warning: beta version, use at your own risk*
Yes, but if you release a buggy version people will still bitch about the bugs even if it is a beta. Plus it makes them look bad because everyone would be like "Lol supercard has to make us search for it's bugs, what losers".
I have seen people ridicule developers for releasing betas and letting people find bugs, however, I think many of us would agree to have the first buggy stable release earlier rather then waiting x amount of weeks for perfection only to find a number of bugs that the developers haven't found. In my one semester of learning C++, I have found that coding things raises complexity in exponential forms the more modules of code you add to it. I have found myself many times to iron out all the possibilities of bugs and end up adding more exploits and even worse bugs to begin with especially with multi-module programs that do a lot of external loading from various files.
I built a simple DOS game in C++. While building the combat engine, I just had 'random' numbers (which was based time so it's not so random) do random amounts of damage to both players. Once I perfected that without bugs, I added in HP factor so everyone has a max HP and a total HP, this time I added in the battle stops when someone reaches below 0. Extremely easy to code. However, by the data types I was using, I ran into negative numbers which of coursed caused hiccups in the programming. So I threw in a small mathematical algorithm to prevent negative numbers. If damage done is greater then current HP, then do the amount of damage of current HP. Simple as that. With a few short weeks of learning how to C++, I threw in a massive multi-module, multi file program that used encryption algorithms, passwords, character files, monster files, town properties, etc... I browsed through all my coding numerous times and couldn't find any exploits, I put together the coding really slowly to prevent any type of exploits.
The point is, I let my brother test it within 5 minutes he found out that When you get to a bank and deposit money, putting in negative numbers increased your money. Something so small and clever was found that easily. I have learned when you captivate a piece of work to a small group of individuals, the domain of minds used to testing is extremely small. When you release a great deal of coding to the community, it's so much easier to get things done and being satisfied with it. As for my whole C++ program, I did it mainly to get used to programming. I left it on a thumb drive and lost it. If I were to code something today, it would be much more cleverly written, we learn from our experiences and that's what most developers should do.
Rydian said:
QUOTE(Zetta_x @ Jun 20 2010, 06:28 PM)
The only thing that should be mentioned is *Warning: beta version, use at your own risk*