Welcome to
'Confessions of a Culture Shock Junkie' ™
Home >> Life >> Work >> The Evolution of Groja.com

Site Style

Who's Online

We have 21 guests online
 
The Evolution of Groja.com Print
Life - Work
Written by Tom H.   
Thursday, 29 January 2009 00:00

Version 1 (2002)

Version 1 could draw an image when it went online, but no longer works. This is because, as of version 4.2.0 of PHP, the register_globals directive is off by default. The PHP website calls this "perhaps the most controversial change in PHP." At this time there is really no reason to spend time fixing this version.

Version 1 is much like a book - one that the visitor can read only sequentially. Each page is a form and the only way to get from one page to the next is by submitting the form.

Screen shot of version 1 of groja.com

Following is a list of Version 1's features:

  • Capable of drawing an image for visitors who could successfully navigate through a series of forms.
  • Stores all profile and image data as session variables ("cookies").
  • Includes a gallery featuring three different compositions: Original, Mondrianesque, and New York City Unlimited.
  • Allows visitors to:
    • take the groja quiz (which is extremely primitive and consists of only 20 questions),
    • input their four-letter type,
    • input their groja quiz score (if they saved it from a previous visit), and
    • input their Keirsey Temperament Sorter score.
  • Includes a FAQ containing questions no one has ever really asked.
  • Uses only PHP and HTML - there's no CSS whatsoever.

Version 4.2.0 of PHP, which broke this site, was released on April 22nd, 2002. Because Version 1 was originally hosted at a third-party site, it is unknown when it quit working.

Version 1 is still accessible as an option in the Main Menu of the Version 2 site.

Version 3 still uses many of the "core classes" that form the heart of this version.

Version 2 (2006)

Version 2 is built on PHP Nuke, a Content Management System (CMS). PHP Nuke provides an interface to a MySql database, modules that provide site navigation, and the ability to build site themes.

Screen shot of version 2 of groja.com

Following is a list of Version 2's features:

  • Allows visitors to draw, save, change, and delete profiles and images.
  • Capable of storing profile, image, and user preference data in a database.
  • Able to draw all three compositions.
  • Allows visitors to set a variety of image options.
  • Makes full use of CSS and supports several different themes, which determine the look and feel of the site.
  • Allows logged-in visitors (rather than just site administrators) to change the background, border color, border width, and font size of the site (for them only).
  • Includes the previous version's input methods: logged-in visitors can create a profile by taking the groja quiz or specifying their four-letter type or Keirsey Temperament Sorter score.
  • Allows logged-in visitors to lock, print, share, and compare saved images.
  • Stores groja quiz questions and answers in the database (but still contains only the previous version's 20 quiz questions).
  • Includes an original gallery module featuring all three compositions.
  • PHP Nuke includes a back end for configuring the site, creating user accounts, adding articles, etc.

As soon as this version went online, maintenance of PHP Nuke seemed to cease. Because anyone can access an open source project's source code, it's extremely important for the authors of them to keep up with security issues and make appropriate updates. As far as PHP Nuke is concerned, this just wasn't happening.

It became apparent that it would be best to switch to a CMS or equivalent package or programming language that is supported by gentoo, the underlying operating system. This way updates to the package would be synchronized with updates to the entire system.

After some experimentation and research that included installing and working with Ruby on Rails, Zope, and Plone, it became apparent that joomla! would be the right choice.

Version 3 (2008)

Version 3 is integrated with joomla, a relatively new CMS that is much more popular than PHP Nuke. In addition to providing an interface to a database, modules that provide site navigation, and templates controlling the sites' appearance, joomla! has a large user base and a support network that provides regular updates.

Screen shot of version 3 of groja.com

Version 3 keeps many of the previous version's features. Significantly, it supports only Original compositions (the other two are deemed "failures," for now anyway). And instead of "sharing" images this version allows advanced users to post selected images to the site's content area.

For a list of version 3's new features, see this article about the new features.

Lessons Learned, Version 4?

Here are some of the lessons learned from this project:

  • Creating something from scratch is a lot of work.
  • Keeping up with changing technology is challenging.
  • Using a third-party package can backfire. It's best to shop around before committing a lot of time in a specific package.

At this point there are no plans for a version 4!

Last Updated on Monday, 21 December 2009 02:56