Statistics 2.0: The beginnings
July 6th, 2009
I’ve been doing some work on getting a Statistics application in Fedora Community. It’s very weak as it stands — only shows you two wiki-related things right now — but now that I’ve kind of meandered around the code a bunch, I think I have a better idea of what I’m doing, and it shouldn’t be difficult to churn out code for other parts of Fedora’s stuff now.
Currently, we have a Grid widget and a Flot widget. Grids are used for displaying data in, well, a grid, and Flot widgets are used for nice, pretty charts. (The awesome thing about Flot is that it uses pure HTML to create charts. How about that?!)
I need to thank Luke Macken and J5 for all the help I’ve gotten from them so far. :)
So let’s go through how you can test this and see the magic unfold. (And potentially figure out how to write code for you own use cases!)
- Install Luke’s repo file for TurboGears 2. It’s not all in Fedora yet so this is necessary. You can find the repo files at http://lmacken.fedorapeople.org/rpms/tg2/.
- Install moksha.
# yum install moksha
- Pull fedoracommunity.git.
$ git clone git://git.fedorahosted.org/fedoracommunity.git
(If you’ve got a FAS account and you’ve ever used Hosted before, it’s usually a good idea to use ssh://, IMHO. Makes it easier to push later if you get push access. The URL for that is
ssh://git.fedorahosted.org/git/fedoracommunity.git) - Create the stats branch locally, and pull from the remote stats branch.
$ cd fedoracommunity/; git checkout -b stats; git pull origin stats
- Now, I don’t know if this is the proper way to do it, but it’s portable and it works. Before you can start up paster to serve the content, an egg needs to be created.
$ python setup.py egg_info
- Then you can run paster:
$ paster serve development.ini
And yay!
The important files to note are fedoracommunity/connectors/wikiconnector.py, fedoracommunity/mokshaapps/statistics/widgets/wiki.py, and fedoracommunity/mokshaapps/statistics/templates/wiki_active_pages.mak. My next priority is to get stats for how FAS groups grow over time.
Happy hacking! :)


![[FSF Associate Member]](/pub/88x31/fsf-member-7305.png)
