Ushahidi Mailing Lists
« All Listsdevelopers@list.ushahidi.com
RE: [ushahidi developers] Clean Up Time!
From: "Pablo A. Destefanis" <pdestefanis@...>
Date: Tue, 16 Mar 2010 07:11:18 -0600
Date: Tue, 16 Mar 2010 07:11:18 -0600
GREAT idea!!! This is probably a great time for Ushahidi, and besides being "hip", it needs to be quite stable! :) Can't code as you do, but will try to do my part! Cheers, Pablo > -----Original Message----- > From: David Kobia [mailto:david@...] > Sent: Monday, March 15, 2010 08:51 > To: developers@... > Subject: [ushahidi developers] Clean Up Time! > > Hi Guys, > First I wanted to thank all of you for the hard work that's been put > in so far. It's been a busy last few months and Ushahidi's codebase > has grown significantly. The rate at which new features have been > added to the system also means that bugs are rampant, many weeds have > sprouted in the system that need to be pruned - and generally the > system needs a little sprucing up. So I wanted to suggest the > following: > > * A feature freeze on our current release cycle (1.2 - > http://dev.ushahidi.com/versions/show/7), and quite possibly bumping > the 1.2 and 1.5 releases with an aim to release a 2.0 that is > 'stable'. > * A code-a-thon focused on completing the currently listed features, > and cleaning up the codebase. > > Cleaning house would encompass the following: > > 1. Code Cleanup > ~~~~~~~~~~~~~~~~~~ > Our Controllers are horribly bloated. In a rush to get some of the > stuff done, many MVC principles have been overlooked (or ignored!). > Business logic should be in the models, and Application logic should > be in the controllers. A controller with a few hundred lines of code > is simply inexcusable, and we're all to blame in one way or another. > To understand this better, you can go to: > http://www.developer.com/design/article.php/3856246/Fat-Models-and-Skinny- > Controllers-Bring-Out-the-Best-in-Your-MVC-Framework.htm > > There's also a lot of repetition, so I want to encourage code re-use > via helpers/library classes > > Since we're using the Kohana framework - it was agreed from the very > beginning to stick to the Kohana coding standards, which you can view > at: http://dev.kohanaphp.com/wiki/kohana2/CodingStyle - Clearly we > have plenty of work to do here. Moving forward it is absolutely > necessary that we stick to these standards. > > > 2. API > ~~~~~~~~~~~~~~~~~~ > Our API needs to be absolutely bullet proof in order to encourage 3rd > Party applications that interact with Ushahidi. So far it works very > well, but a few functions could be optimized. > > > 3. UI Cleanup > ~~~~~~~~~~~~~~~~~~ > Cleaning up our User Interface involves the following: > * Making sure our HTML is XHTML Compliant > * Working on the admin user interface that now has a myriad of options > and settings, and starting to become a little confusing for the end > users > * Less PHP in the Views > > > 4. Database Schema Cleanup > ~~~~~~~~~~~~~~~~~~ > There are quite a few stale schema records that need to be removed. > Add to that the sql schema itself is poorly documented. One of the > best sql schema conventions I've come across is at Sahana > (http://www.sahana.lk/wiki/doku.php/dev:sqlpolicies). > > > 5. Documentation > ~~~~~~~~~~~~~~~~~~ > In case it wasn't stated before we're using phpDocumenter (phpDoc), so > any DocBlocks should follow their convention. Much has been done > already with the current code, but more can be done. Self-documenting > code will be so much cleaner and comprehensible if we can add phpDoc > DocBlocks to every file, class, function, and where needed - constant > or variable. More information at: > http://manual.phpdoc.org/HTMLSmartyConverter/HandS/phpDocumentor/tutoria > l_tags.pkg.html > > Please feel free to add your thoughts to this discussion too! > > Lastly, please don't forget the Tuesday Skype Chats at 1pm GMT. Link: > http://skype.ushahidi.com - we can discuss these items in detail, and > a strategy for getting them done. > > > > ~~~~~~~~~~~~~~~~~~~~~~~~~~ > List Archive: http://list.ushahidi.com/ > > Would you like to receive list mail batched in a daily digest instead? Send a > message to: > developers-digest-subscribe@... > > To remove your address from the list, just send a message to > the address in the "List-Unsubscribe" header of any list > message. If you haven't changed addresses since subscribing, > you can also send a message to: > developers-unsubscribe@... > > For addition or removal of addresses, we'll send a confirmation > message to that address. When you receive it, simply reply to it > to complete the transaction. > > If you need to get in touch with the human owner of this list, > please send a message to: > developers-owner@...