Re: Fundamental issues with open source software

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Alexander Henry
Date:  
To: plug-discuss
Subject: Re: Fundamental issues with open source software
On Wed, 14 Apr 2004 23:19:46 -0700, Trent Shipley
<> wrote:

> On Wednesday 2004-04-14 20:00, Julia Thompson wrote:
>> Article at
>> http://firstmonday.org/issues/issue9_4/levesque/index.html
>>
>> I'm interested in anything folks here can add about open source
>> software, either from a user's point of view or a developer's point of
>> view. Or if someone has a refutation for any of the points raised in
>> the article, I'd be interested in reading that.
>
> I think Levesque makes some good points and is basically correct. (I'm
> a bit


I agree with much of what both you and Levesque have to say. I'll take
Levesque's point a step further, and say that that many open source
software products are closed to ANY users. Not just Aunt Tillie, but even
her hacker nephew. I've seen that nephew very loudly and angrily say so
in his literature, too.

I've seen many programming languages and environments, so learning new
ones is generally no big deal for me. After I graduated with a CS degree,
I found my cheese had long moved. So I decided to cut my teeth in
independant web development. I saw that LAMP development was growing, and
I rightly believed here will be my new cheese.

So now I'm first learning PHP, and I, green in PHP as well as the world of
contracting in general, decided that I would start my first LAMP
contracting gig by basing a client's website in Postnuke plus programming
a custom module. Boy, oh,... BOY was that ever a mistake. PHP.net itself
was a wonderful example of how to bring software engineers into their
environment and get them using it. Postnuke was just the opposite.
Documentation was provided... barely... and reality continuously
contradicted what the documentation taught. There was no way to get a
module running in Postnuke unless you knew the WHOLE codebase by brute
force. There was a philosophy and method behind developing new modules,
but when I saw the modules they THEMSELVES provided, they broke every rule
in that philosophy. A hell of a thing to face with a client yelling in
your ear to get a job done!

Postnuke and PHP-nuke should have been developed with both an end-user AND
a PHP developer in mind, and they very much aren't!

Complaints from end users of Postnuke are the look and feel, as well as
the 'nerdy' concentration, like LOTS of features to gather statistics, but
no way to get rid of the annoying (2:00) in the calendar module that
indicates the length of the event, but which many viewers will judge as
2pm, UNLESS you change the calendar module itself! My complaint as a
developer is there is no module skin/configuration where I can delete the
"($Event->length['Hour']:$Event->length['Min'])"... There! Quick
configure and I'm done. Nope, I have to patch Postnuke core, in the same
place where all those fancy statistics gathering code resides.

Zope/CMF/Plone is currently the same way. I had the luxury of spending a
month at 4 to 6 hours a day getting paid to learn this environment as well
as the concept of content management. For those of you that don't know
(or think you know), content management starts with the problem of the
'content silo trap'. In a big company with lots of documentation being
generated, there is a tendancy towards isolation of people responsible for
generating information of any kind, 'content'. The result is training
manuals, reference documentation, web documentation, and telephone support
for the company's product can very easily contradict each other in
answering even the simplest of questions, because the effort that all the
generators of content need to exume so that they don't contradict each
other is too great to meet any practical deadline. Content management is
the art of building a system so that no matter what, this information
never contradicts itself, and deadlines for documentation materials can be
met.

For example, let's start our content in the English web documentation. We
will then translate the web documentation into training, written
reference, help desk reference, and press releases. Then, for each of
these five, we will localize them to French, German, and Japaneese. We
will then syndicate each of the four press releases to general news
outlets, news outlets for manufacturing journals, and interrior design
journals. We will also syndicate each of the four help desk references to
the outsourced companies that give help desk support, some to home users
and some to company techs. This is very complicated, but because there's
a set _workflow_ with set _states_, and a set of policies or _actions_
between the states in the workflows, every person who fills a _role_ in
the content management system knows when to generate information and where
to look for content they need with minimal effort, rather than search the
whole company by brute force for already generted content.

So, now I'm supposed to make a newsletter that spans across several
franchises. There is some custom content, not just your standard FAQ and
news items and BB, but some things very specific to this industry. I'm
all looking forward to contributing to FOSS plus this industry with my new
tool, all I have to do to build the tool is make these new content types,
and people would just have to install Zope/CMF/Plone and plop in my
module, put in their own company logo and colors, and they'd have it. As
a developer with fresh but good knowledge of content management, I STILL
could not operate this piece of software unless I started tapping into
DEEP python code. Why did I even bother spending a month of my time on
Zope/CMF/Plone when I could have built an app from scratch in raw PHP?
The whole reason why I started learning Zope/CMF/Plone was so I could save
time in a content management project. Declare content metadata, configure
workflows and roles, declare actions, code up the actions. Instead I get
to spend OODLES of time in raw, huge piles of other people's backengine
python code and Zope's DTML code. Plus I loose all advantage of a UNIX
environment: no greping files or writing cron jobs for anything. WOW
What a blast!! There goes a perfectly good FOSS project that should have
taken a month and could have benefitted small to medium businesses in a
multibillion dollar industry! Instead I start coding raw PHP that can
only be used in this little company.


--Alexander
---------------------------------------------------
PLUG-discuss mailing list -
To subscribe, unsubscribe, or to change you mail settings:
http://lists.PLUG.phoenix.az.us/mailman/listinfo/plug-discuss