Hi, I haven't finished the draft outline yet (it's a txt file containing a reply to this topic which I wasn't able to finish when I started. I'll try to finish after this reply). I will give a lot of details and clarifications, but I think you should see this now:
Note, this isn't exactly an article layout. It's merely an outline (many of these listings will be on the same page when appropriate).
In fact, that outline is just a taste of how I suppose various subjects should be organized. It shouldn't map into wiki content one-to-one ... and especially because it's a wiki. Wikis are designed
to be edited, extended and revised by other insightful contributors for the better.
Do we add information about General Programming? This is already a large topic, made harder with quirks of the languages when providing examples. This was tried and tended to be small descriptive paragraphs of what it was, normally lesser shadows of Wikipedia or other resources on general programming, a blob of example code, and with little information on when to use what.
"Futher Reading" suffered, because the links tended to be about structure, rather than function. E.g. a link from "Hash Tables to Linked Lists" does not answer the question "Which should i use to store my enemy units?"
This is an interesting issue you've brought to my attention. Though, my biggest problem with the Wiki is precisely that, which is the very reason I believe there is a strong need for a 'Theory' section. We should integrate a lot of functional-detail into our description of concepts, which I intend to mean something like this (a non-serious and irrelevant example):
Bob's Chef Cooking 'N Stuff Wiki
is often used as an ingredient for cooking. Cheeses usually complement preparations composed with the food groups of grain, vegetables and meat; however, they tend to mix poorly with non-ingredient dairy foods. For example, most people would consider the combination of cheese with icecream rather disgusting, though there are many people who find dishes prepared with noodles and cheese to be delightful.
Cheese is a generic term for a diverse group of milk-based food products. Cheese is produced in wide-ranging flavors, textures, and forms. Cheese consists of proteins and fat from milk, usually the milk of cows, buffalo, goats, or sheep. It is produced by coagulation of the milk protein casein. Typically, the milk is acidified and addition of the enzyme rennet causes coagulation. The solids are separated and pressed into final form. Some cheeses have molds on the rind or throughout. Most cheeses melt at cooking temperature.
After I finish my outline, I will try writing a few sample articles. I suppose we can relay our thoughts over the samples until we figure a definite way to ensure this quality you are emphasizing, and avoid pointless lists of general information.
The whole purpose I see to informing readers about core game-programming theory is to address this very problem. Thank you for highlighting it in a more precise way.
One more important idea: we have forums. I think these forums may function well as a safety net to the Wiki.
a link from "Hash Tables to Linked Lists" does not answer the question "Which should i use to store my enemy units?" ...
A Wiki Footer: Not sure how to apply this? Please feel free to ask your questions in our forums!
After looking at the Game Programming Discussion categories, I doubt the organization we have now is particularly useful for addressing questions after the Wiki. Also, after we get questions such as this in the forums (e.g. "I'm not sure which technique would be the best to use for my purposes?"), I'm hopeful we'd have our articles built in a way that enables the following recommendations and answers which are demonstrated most reliably to be somewhat integrated into Wiki content (even implicitly). Most of all, I hope this never happens. I hope we cover the concepts in the Wiki with such an explicit relevance and robustness to diversity which manifests the nature of their practice to regularly attentive readers. Otherwise, I'd say we've horribly failed.
What is the difference from learning games programming to normal programming? Fundamentally, there is no difference.
Actually, I think you're asserting that if game programming were to be anymore than "normal programming," then it should be completely different. Why is it that we can use the addition operator so abundantly? Does that mean everything we use addition for is obvious, and the form of such an application is manifested merely by the implicit nature of addition? So then, you should only need to learn how to arithmetically perform addition, right? Well, there's a group of theory called 'Algebra', which is one of many groups of theory strongly suggesting otherwise.