ABOUT US PRODUCTS GET INVOLVED BLOG

Ushahidi Mailing Lists

« All Listsdevelopers@list.ushahidi.com

Message: previous - next
Month: March 2010

RE: [ushahidi developers] Clean Up Time!

From: "Pablo A. Destefanis" <pdestefanis@...>
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@...