[imc-cms] fwd: INDYMEDIA CMS DEVELOPERS SURVEY (e107 response)

ryan ryan at linefeed.org
Wed Feb 14 17:08:33 PST 2007


----- Forwarded message from Cameron <cameron at e107coders.org> -----

From: Cameron <cameron at e107coders.org>
To: imc-cms at lists.indymedia.org
Cc: Ryan <ryan at linefeed.org>
Subject: INDYMEDIA CMS DEVELOPERS SURVEY
Date: Thu, 15 Feb 2007 01:26:57 -0500
X-Mailer: Microsoft Outlook Express 6.00.2800.1807


   Dear Ryan,

   Thanks for considering our CMS. I'm a personal fan of what you guys do
   at IndyMedia - giving journalists the opportunity to reach the people,
   without the politics of big corps.

   Anyway, here below are responses from myself and the other longest
   standing developer.

   Thanks
   Cameron
   e107.org, e107coders.org


   ======================
   INDYMEDIA CMS DEVELOPERS SURVEY
   Please fill in as many questions as you can. When you are completed,
   you should email your responses to [email]
   1) Survey Part 1 - Personal Details
   a) Your name?

   Cameron Hanly
   Thom Michelbrink
   b) Your geographic location?
   Cameron: Mostly USA and Switzerland
   Thom: Pittsburgh, Pennsylvania, USA
   c) How long have you worked with e107 and what work do you do with the
   project?
   Cameron: Since March 2003.  I'm one of the head developers, involved
   in all aspects of the source-code.
   Thom: Since sometime in 2002.  I'm one of the head developers,
   involved in all aspects of the source-code.
   d) Do you work on any other CMS projects?
   No.

   2) Survey Part 2 - CMS Basics
   a) What programming language is e107 written in?

   PHP 4 with support for Php 5.
   b) What is the backend database used by e107?

   MySQL
   c) Are there other servers required (application server, Tomcat, etc)?

   e107 requires a web-server that has PHP 4.3.0 (or newer) and MySQL
   3.22 (or newer - 4.1 or newer recommended)
   Apache is the preferred webserver, but IIS works as well.
   d) How do you describe the overall software design of e107?

   e107 is designed for driving any range of website, from private
   intranets to news sites, community based forums, multimedia based
   websites etc. We wanted to make something that could do it all and
   make it as easy as possible, even for people without any knowledge of
   HTML or PHP.
   e) Can you give details about real-world scalability considerations
   for e107?

   While e107 comes with basic features, it's plugin architecture allows
   developers to easily integrate their own scripts into the e107
   framework.
   3) Survey Part 3 - CMS Functionality
   a) A core feature of our software is the ability for anonymous users
   to post media to appear on the site. Is this easily
   added to a site using e107?

   Yes.
   b) Can you describe the site search functionality available?

   The search engine in e107 is quite robust and modular.  You can easily
   configure who has access to the search (based on userclass) and what
   areas of your site you want to search.  Methods exists for any plugin
   to hook into the search code so it also can be included in the
   searches.
   Searches are performed on the database and sorted based on a relevance
   weighting.  The sorting of the searches can be handled by MySQL or by
   PHP, based on the configuration of the server.  What information is
   returned and presented to the users is totally controlled by each
   plugin depending on how it's search code has been configured.
   c) How is RSS/XML/RDF support included?

   Rss (1,2, rdf and atom) feeds are available for most aspects of e107:
   news, downloads, content, forum posts,chatbox etc. Any plugin created
   for the system can easily integrate their own feed(s) seamlessly.
   d) We would like to have one server per site which allows many
   instances of actual websites, each with different admin logins and
   different websites altogether. Is this easy to set up with e107?

   Yes, this could be done with multiple installations of e107 on a
   single server.
   We currently have plans for developing mechanisms that would allow for
   multiple sites from a single installation using parked domains or
   subdomains etc and multiple file-path configurations.
   e) Can you describe the multimedia support in the software? We allow
   users to upload and manipulate online all types of media - mpeg, mp3,
   ogg, jpg, pdf, etc.

   Image posting of jpg, png etc is built in. Additional free modules
   (plugins) can be obtained for posting and displaying audio, video,
   including podcasting, video and image-galleries etc.
   f) Internationalization is very important to us. Many of our sites
   support 2-3 or more languages. Can you describe how this is
   accomplished in e107?

   We know of sites successfully running as many as 32 languages from a
   single e107 installation.
   This is accomplished using a mix of php files containing language
   definitions and mysql tables.
   eg.
   define("LAN_hello","Hello"); in English.php
   define("LAN_hello","Boujour"); in French.php

   When the language is switched by the user, the language-file loaded is
   changed.
   This is particularly useful for the 'interface' of the site, but not
   dynamic content.
   For the dynamic content, admins may duplicate any database table for
   use in another language (including tables made by plugins).

   So, for example, if you run a news site in English and French, you may
   install e107 in English, and copy the news table for French. Depending
   on the language chosen by the user, the appropriate table will be
   read, written from/to.

   Parked subdomains can also be used to switching languages. This is
   particularly useful for when Google indexes one's site. eg.
   fr.mywebsite.com and es.mywebsite.com appear as separate sites in
   different languages, even though they are a single installation of
   e107.
   g) What types of anti-abuse or anti-spam measures are in the code?

   There are several different mechanisms for preventing each.
   1) There is a built in anti-flood code that will ban an IP for too
   many pageloads in a specified period of time.
   2) Captcha is employed in several areas of the code, and also an
   eCaptcha plugin is available to help fill in the gaps where the plugin
   author thought it was missing in the core code.
   3) Anonymous posting can be turned off.
   4) Your site can be made to be totally member only access.  With only
   the signup page available to non users.
   h) Is there a calendar included in the codebase?

   Yes.  There are also several alternate calendar plugins available not
   written by the core developers.
   i) How do you describe how a user would edit a given piece of content
   on the website, or briefly describe the model used in this part of the
   functionality?

   All content is edited via the admin pages. Whether you are adding
   news, custom content pages, product reviews, etc.  It is all done by
   the appropriate admin page, the tinymce javascript wysiwyg is also
   available in most of these areas for users that don't want to hand
   code the html. News items can also be submitted by non-admins via a
   form in the user area.
   j) How do you describe any type of user moderation system that is
   built into e107?

   All users can be grouped into various access classes. We use a global
   function to check the access of users at any time. Because of this,
   any part of the site can be restricted to various users. Plugin or
   Theme developers can utilize this freely.Users may also be banned by
   login name or ip. Each section or plugin has the responsibility to
   permit/deny access based on userclass.

   k) What types of integration is there with P2P networks?

   None that we're aware of. But can see no limitation preventing such an
   integration.
   l) Another important feature for us is networking between the
   websites. If we want users from one website to have rights on another
   website in the network, how could we do this?

   There is an alt_auth (alternate authentication) plugin included with
   the core code.  This will allow the admin to authenticate users using
   other methods.  Currently working are LDAP, AD, and eDirectory.
   There is also an 'otherdb' method.  This will allow e107 to
   authenticate against another mysql database.  This can be another e107
   installation either on the same server or a different server.  The
   limitation with this is that one of the e107 databases would have to
   be the 'master' site. This site would be the only one open for user
   registration.  Once registered on the master site, access to the other
   sites would be automatic.
   m) We are concerned with the ability to easily rsync pages from a
   website to other servers and setup a type of mirroring scheme. How
   would this be accomplished with e107?

   I believe mirroring of dynamic sites is best done on a server level.
   ie apache with cron-jobs etc or with mysql.
   These mechanisms do not involve e107 directly.
   However, we are very interested in integrating any mechanism that
   could make this process easier, into future versions of e107.
   4) Survey Part 4 - Miscellaneous
   a) What do you believe are the top selling points for e107?
   


     * Ease of Use
     * Ease of Customization both visually and with functionality. (most
       core functions can even be overridden by plugins)
     * Versatility of application. Intranet, News Site, Media Site etc
       etc.
     * The Plugin architecture. - ease of installation, creation etc.
     * e107 has been completely coded by the Development Team from
       scratch. ie. it is not forked-off or based-on other code. We do
       use some external code from other sources (XML parsers, archive
       scripts etc), these are all fully credited and linked to, under
       the terms of the GPL licence.
     * Backward compatibility - we have always tried to maintain as much
       backward compatibility as possible as the codebase has changed,
       this is an area we pride ourselves in.  There was an enormous
       change from the 5.xx to the 0.6, both in terms of the code and the
       directory structure, this is where the largest impact was seen in
       BC. Most plugins written for 0.6 will still work on the current
       0.7.x releases.
     * Upgrades - e107 has always been, and always will be, very easy to
       upgrade from any release to the newest release without having to
       go through all the intermediate upgrades.  The current upgrade
       routine will upgrade a site from as far back as 0.603, which was
       released in October, 2003.  Upload the new code, make a few mouse
       clicks, and you are running the current version.

   b) From what you know about the Indymedia network, how well do you
   think IMC would mesh with the development community for the CMS?

   I believe very well. We are a strong and harmonious group.
   There is much open discussion and assistance between members of the
   community in regard to use, development etc.
   c) What are the top 3 areas you believe the development team for the
   CMS needs to be improved?

   Themes - while our 'themes' are okay, we believe that the true power
   of e107 is often overlooked because of themes that luck lustre. A
   little like a Ferrari engine in the body of a Volkswagen. Well, not
   that bad, but you get the idea. :)

   Ajax - We currently have only little use of Ajax throughout the
   system. We hope to add more support for this in future versions.

   Documentation - While e107 does have an active wiki, it still needs to
   be greatly expanded and improved.  Moving to the wiki has allowed our
   users to get involved and improve it quite a bit, I see that
   continuing in the future.

   d) Where do you see e107 in five years?

   e107 is slowly getting the recognition it deserves with the recent
   Pakt CMS awards. We believe that this will continue in the coming
   years as e107's 'fan base' grows and it's power realized.  The code
   base will continue to improve and change as the needs of the users
   change.  Some of the current developers may leave to be replaced by
   others, but continuity and the e107 philosophy will continue.

eog: not found


----- End forwarded message -----


More information about the imc-cms mailing list