Programmer How Tos

Part of the success of the LinuxOperatingSystem is due to the LinuxDocumentationProject and its collection of HowTos. The HowTos offer information on how to install hardware and software, configure it, and get it running.

But if you're a programmer it's rather hard to find information that tells you how to write various programs. MicrosoftWindows has the MicrosoftPlatformSdk?, which at least explains the MicrosoftWindowsApi. But it still doesn't tell you everything you need to know, such as how to communicate with non-Microsoft stuff.

There should be a collection of ProgrammerHowTos. A programmer can write one if he wants to share his programming knowledge. Then other programmers who want to learn will have another place to turn to besides the bookstore and the university.

These HowTos could even be placed on a Wiki, although not necessarily this one.

Maybe they already exist somewhere. Please edit this page and say where if you know of any!
This is a cool idea.

One problem relates to context and categories. One reason for the success of the linux howtos, is that the context is limited to install hardware and software, configure it, and get it running. A series of howtos for programming would do well to be organised around some simple and well respected categories like algorithms and data structures (since AlgorithmsPlusDataStructuresEqualsPrograms), then delving into levels of increasing complexity.

The big hard ones are I/O, and the use of system facilities (such as multithreading). These are also the ones that are most likely to vary from platform to platform, and sometimes even on variants of the same platform. There are also Internet protocols which are the same everywhere but which may need to be implemented anew from time to time. How about:

Some things that would be boring to me but might interest others:

Some of this same stuff is available in other forms, such as man pages, reverse-engineering, or outright cannibalizing existing source code, RFCs, etc., but it would be nice to have in one place and in readable English!

Some libraries such as SDL and GRX already come with decent documentation.

(yeah, yeah, in other words, "anything you want to know is on the Internet somewhere." But I'd like a centralized location. -- It's also possible to do something like this internal to a company. -- It's also possible that a Wiki dedicated to this purpose could invite plagiarism; e.g., people typing in essentially unaltered chapters from Stroustrup or from Microsoft or from O'Reilly books or something...)

In my BazzaWiki I discouraged this by the technique of making wiki pages whos first paragraph was just an url act as links directly to that url. Sounds like TransClusion. This made it easier to refer out to external info than to retype it. everywhere you mention eg ApacheManual? linked directly to the ApacheManual? - and you could change the link location globally later on if you get a local copy of the pages. -- BrianEwins

Some other places to look:

See newly created HowTo page

View edit of March 30, 2006 or FindPage with title or text search