summaryrefslogtreecommitdiffstats
path: root/forum/documentation/ROADMAP.rst
diff options
context:
space:
mode:
authorEvgeny Fadeev <evgeny.fadeev@gmail.com>2010-04-25 17:15:26 -0400
committerEvgeny Fadeev <evgeny.fadeev@gmail.com>2010-04-25 17:15:26 -0400
commitcc8337da9046bff5243672e20f1dea9c18b00da6 (patch)
tree77ade69869105f1838df5e8616bb994844507cec /forum/documentation/ROADMAP.rst
parent3122fb8a2599944e623c8e21f285a9e4dd9e132a (diff)
parent02510a462392dd2e9e46e945d51efb374e0dc06f (diff)
downloadaskbot-cc8337da9046bff5243672e20f1dea9c18b00da6.tar.gz
askbot-cc8337da9046bff5243672e20f1dea9c18b00da6.tar.bz2
askbot-cc8337da9046bff5243672e20f1dea9c18b00da6.zip
merged newer ui branch to master
Diffstat (limited to 'forum/documentation/ROADMAP.rst')
-rw-r--r--forum/documentation/ROADMAP.rst88
1 files changed, 88 insertions, 0 deletions
diff --git a/forum/documentation/ROADMAP.rst b/forum/documentation/ROADMAP.rst
new file mode 100644
index 00000000..c79e0ae4
--- /dev/null
+++ b/forum/documentation/ROADMAP.rst
@@ -0,0 +1,88 @@
+Intro
+=========
+ROADMAP aims to streamline activities of the Askbot open source project and
+to minimize ad-hoc approaches of "big-picture" level.
+
+Aksbot is a Question and Asnwer system for the normal people!
+
+Let's discuss stuff that goes into this file on
+http://groups.google.com/group/askbot
+
+Bacic principles of the project
+==================================
+Here they are:
+
+* our rule #1 is that all developers have commit right to the project
+ repository, but they must follow this ROADMAP and TODO -
+ to keep up with our own sanity.
+* we welcome contributions by other people and show tolerance
+ and patience - especially to the new team members.
+* when users who might not be tech-savvy ask questions -
+ we try to answer to the point and using their language
+ (i.e. not programmer jargon:)
+* we favor plain and minimalistic style of programming, but pay
+ attention to detail - especially details of user experience.
+
+We try do develop using the following workflow:
+
+* specify problem that we try to solve
+* create requirements that will guarantee a solution, once met
+* dream up some implementation ideas (maybe even some sketches on the paper)
+* discuss and decide on the best one
+* write and test code
+
+The process doesn't have to be this formal all the time, but trying to stick
+to some subset of this almost always helps!
+Especially it helps to iron out disagreements between
+individual programmers (which if you are one - you know are qute common
+- and they don't all end well :).
+
+Ad-hoc programming - i.e. simply go and add code - is not really encouraged.
+This works fine in the one person team or when the team consists of
+best friends, but is almost sure to fail in a heterogenous group.
+
+Architecture and Requirements
+=====================================
+Obviously Django and Python are pre-made choices - so this
+is not going to change any time soon. At this point all of
+the client side Javascript is written using jQuery library.
+
+Our basic principle is that Askbot should be a mashable Q&A component.
+Askbot is an application written in Python/Django. So it should be
+distributable as a Django App alone or as a whole site (by option).
+
+If we develop sub-systems that can be used in the broader scope -
+we package that thing as a separate django application (login system is one example).
+
+We will start using Google Closure library soon!
+
+Sub-systems
+-----------------
+* authentication system
+* Q&A system
+* admin interface
+* full text search
+* skins (directory forum/skins)
+
+Authentication system
+-------------------------
+Authentication system will be a separate django application
+
+Here is the discussion thread:
+* http://groups.google.com/group/askbot/browse_thread/thread/1916dfcf666dd56c
+
+Most of the requirements are listed in the first message
+
+Skins
+-----------
+Skins eventually must be upgrade-stable - that is people who created custom
+skins should not need to change anything if something changes in the code
+
+Admin interface
+-----------------------
+* extend forum/settings.py to list default settings of various groups
+* create Registry database table the will store setting values
+* leave only essential settings that go to the main django settings.py
+Create key-value storage
+* should some settings be accessible to admins and some to staff???
+ for example-secret keys probably should not be shared with staff members