aboutsummaryrefslogtreecommitdiffstats
path: root/docs/hackinghowto.rst
diff options
context:
space:
mode:
Diffstat (limited to 'docs/hackinghowto.rst')
-rw-r--r--docs/hackinghowto.rst73
1 files changed, 41 insertions, 32 deletions
diff --git a/docs/hackinghowto.rst b/docs/hackinghowto.rst
index 26267b7f..fe2411bb 100644
--- a/docs/hackinghowto.rst
+++ b/docs/hackinghowto.rst
@@ -9,16 +9,20 @@ So you want to hack on GNU MediaGoblin?
=======================================
First thing to do is check out the `Web site
-<http://mediagoblin.org>`_ where we list all the project
+<http://mediagoblin.org/join/>`_ where we list all the project
infrastructure including:
-* the mailing list
* the IRC channel
-* the bug tracker
+* the mailing list
+* the issue tracker
Additionally, we have information on how to get involved, who to talk
to, what needs to be worked on, and other things besides!
+Second thing to do is take a look at :ref:`codebase-chapter` where
+we've started documenting how GNU MediaGoblin is built and how to add
+new things.
+
How to set up and maintain an environment for hacking
=====================================================
@@ -80,10 +84,16 @@ Updating dependencies
---------------------
While hacking on GNU MediaGoblin over time, you'll eventually have to
-update your development environment. To do that, run::
+update your development environment because the dependencies have
+changed. To do that, run::
./bin/buildout
+.. Note::
+
+ You only need to do this when dependencies are updated. You don't
+ need to do this when you've made code changes.
+
Wiping your environment for a clean-slate
-----------------------------------------
@@ -104,8 +114,12 @@ Delete the following directories:
* parts/
* user_dev/
-FIXME - how to drop data from mongodb? we should probably write a
-script.
+
+.. YouCanHelp::
+
+ If you're familiar with MongoDB and bash, we'd love to get a bash
+ script that removes all the GNU MediaGoblin data from an existing
+ MongoDB instance. Let us know!
Running the server
@@ -124,42 +138,34 @@ Run::
./bin/nosetests
-What's where
-============
+Quickstart for Django programmers
+=================================
-After you've run buildout, you're faced with the following directory
-tree::
+We're not using Django, but the codebase is very Django-like in its
+structure.
- mediagoblin/
- |- mediagoblin/ source code
- | |- tests/
- | |- templates/
- | |- auth/
- | \- submit/
- |- docs/ documentation
- |
- | the rest of these directories are generated by
- | buildout.
- |
- |- bin/ scripts
- |- develop-eggs/
- |- eggs/
- |- mediagoblin.egg-info/
- |- parts/
- |- user_dev/ sessions, etc
+* ``routing.py`` is like ``urls.py`` in Django
+* ``models.py`` has mongokit ORM definitions
+* ``views.py`` is where the views go
+We're using MongoDB. Basically, instead of a relational database with
+tables, you have a big JSON structure which acts a lot like a Python
+dict.
-Quickstart for Django programmers
-=================================
+.. YouCanHelp::
-FIXME - write this
+ If there are other things that you think would help orient someone
+ new to GNU MediaGoblin but coming from Django, let us know!
Bite-sized bugs to start with
=============================
-FIXME - write this
+**May 3rd, 2011**: We don't have a list of bite-sized bugs, yet, but
+this is important to us. If you're interested in things to work on,
+let us know on `the mailing list <http://mediagoblin.org/join/>`_ or
+on the `IRC channel <http://mediagoblin.org/join/>`_.
Tips for people new to coding
@@ -186,7 +192,10 @@ that are freely available on the Internet:
These are all excellent texts.
-FIXME - are there good quality Python tutorial videos?
+.. YouCanHelp::
+
+ If you know of other good quality Python tutorials and Python
+ tutorial videos, let us know!
Learning Libraries GNU MediaGoblin uses