Development uh definitions… conventions…??? notes??

This is using the Fat-Free Framework found here: http://bcosca.github.com/fatfree/.  I looked at some and decided this was fine.  One of them I looked at had over 3,700 files and I happen to know that many shared hosting sites have file limits.  Bluehost where we are will not run auto-site backups if you are over 20,000 files so I’m certainly not going to waste 3,700 files on the stupid framework.  After having started I’m actually quite happy with this anyway.  The framework is contained entirely in the lib directory.

We’re using camelCase for everything.  I hate trying to find the ‘_’ key all the time – except in MYSQL.  Don’t know why but I’m using the ‘_’ in the database.  Deal with it.

We’re using the object oriented thing – classes are upper CamelCase and class file names need to match the class name exactly for the autoloader to find them.  Created classes will all be in the includes directory.

All routing will be done through the main index.php.

All visual elements will be done through templates in the ui directory.  The index.php will be responsible for calling the templates.

The dict directory will be for the translation files.  The cache and temp directories are used by the framework.

Code should be indented with <tab>s and COMMENTED!  Yes put some comments in that code.  That one of the reasons I started this project!!!

The Whos, the Whats and the Whys

I’m part of a non-profit art organization in my community.  We’re a low budget volunteer based community theater group that puts on 4-6 performances a year.

I work for a top 5 web hosting company as an accountant by training.  I’m very technical which makes me quite a good fit there.  I’ve taught myself PHP and web development and have completed a few minor work projects and personal projects .  I’ve never to this point been a part of a larger open source project but look forward to it.

Our arts council has been working on finding a good online solution for selling tickets for performances.  I volunteered to take on the search.  There are plenty of commercial offerings which in a county of only 10,000 people were well out of our budget.  So I had to forget the commercial offerings and look for any open source projects that may exist.

Based on my searches I found an older now defunct project, and a more updated project that I gladly donated to receive the latest version of.  I’ve since set it up, tested it and dug in to the source code.  It is set up and will be working for our summer family musical and that has me very excited.  One of my immediate goals when I decided that we had to look towards open source was that I wanted to join the project and become a regular contributor to the code.

So with that in mind why am I starting my own project instead of building on what is existing?  First off I’m not naming the other project because I harbor no negative feelings towards them.  Part of it is just the timing.  Based on what I know they’ve had some bad luck with a hacker type which unfortunately has shifted their focus to rebuilding and securing their site.  So currently they don’t have a development tree available anywhere or a current build or anything posted (I did ask).  Their most recent release is over a year old (which again I’m grateful for because our local arts council will be using it this summer.)

I had some requirements of the ticketing program and I was able to make a couple of changes to make things work.  However this showed me the importance of logical flowing code which is easy to follow.  Unfortunately that other project was built upon the older one so there is a lot of old code in there that isn’t well organized.  I actually needed a debugger running it line by line to help me find where to change the code.

So I simply felt that the other project really needs their core rewritten and if I’m going to do that I’d personally rather just start something from scratch.  Now once again I’m really not trying to show any negative feelings towards another project, but I feel it is important to tell where this project started from and why I will be a stickler on a few things.

David