Dreamwidth Development Handbook

Dreamwidth is a site striving for a very productive volunteer culture. As part of this, users are not just allowed, but encouraged to take part in the Development process.

We do, however, recognized that many users will not have a lot or any experience with coding. What we hope, though, is that this will be no reason not to get involved in the development process. Especially these users can often bring a fresh perspective to a project.

This page is, when it's finished, going to be a tutorial to getting started with Dreamwidth development. This will include:
 * The basic steps of getting a development environment that you can code on and how to work with a Linux machine.
 * An introduction to the Dreamwidth code and how it is structured with examples.
 * Introductions to Perl, which the Dreamwidth code is mainly written in. This will be done with examples from the code.
 * Realistic exercises to make the new development volunteer familiar with
 * how to find something in the code
 * how to edit something in the code and test the changes
 * how to generate a patch and upload it
 * These examples will need to include:
 * basic variable declaration and handling
 * if/elsif/else statements and loops
 * working with BML
 * working with the User and Entry objects
 * basic CSS and S2 handling

More info to come.