I spend a lot of time writing html, php, and css for my website to implement various ideas and create a certain look. I very often find myself having trouble with one particular thing. I search the web with google or search forums to try to find a solution. Sometimes it’s extremely simple, while others it creates new problems. As I am often working on one part of my site at once, these problems are often related. I would like a site that is a central repository for solutions for all of these problems to exist.
The site would probably be a wiki so as to get input from many people, have a large source of authors, and continue to be updated with new problems.
Posts would be much like a tutorial. They would explain what to do, and also why.
Navigation would be critical, allowing one to quickly find solutions to a specific problem as well as for a more generic learning how to do something type fashion. A good search system would exist like most wikis have, allowing search of the title as well as the content. Also needed is a good way to relate articles and navigate to them through relations. A good, specific category system would be important, with related articles in related categories. The articles should be organized in such a way that they could be followed in a general sequence towards a specific goal like a tutorial. As an example, many people like to create CMSs to manage their site. They go through the same or comparable problems to those who’ve already made them, and thus would benefit from the knowledge of those who’ve already been through it. The cms tutorial would guide them through the process, with the most basic articles being the main path they follow and the less important articles forming side paths. Branching off based upon decisions would also lead through different paths. CMSs are similar in many ways, but some decisions in the design process lead to certain differences in the design process; branches would allow one to design their CMS and choose the branches that apply to them.
This would become sort of a code repository, with code for anything already generically written, and branches in logic allowing for all possible different needs to be accomodated.
Though I came up with this for programming and web design, it could apply to any problems, and thus web-design and programming would only be sub-categories. Examples of where this could be used are in designing a car or planning the construction of a house. Numerous decisions are made in each, though the basic concepts would be used in every implementation: every housebuilder must look at the types of flooring available and decide which is best for the application; every car body design must choose a balance between factors such as aerodynamics, appearance, and capacity to accomodate other parts; every design must choose between a more costly or less costly path based on available resource (money, time, etc).
This seems to work best for problems of design.