phpgroupware-developers
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Phpgroupware-developers] Communication ... again (was PHPDoc s for


From: Alfonso Guerra
Subject: Re: [Phpgroupware-developers] Communication ... again (was PHPDoc s for head)
Date: Wed, 27 Apr 2005 23:19:44 -0400

Greetings,

Foreword: Before anyone replies to me let me tell you in advance I'm going to delete your response, so don't even bother. I don't care what rationale or excuse you give for your behavior, it isn't justifiable. So before you hit that reply button know how I will respond to you: Delete. Delete. Delete.
Just a quick introduction before I start throwing my two cents in so  
you can understand where I'm coming from.
Back in December 2004 I reviewed over 14 Open Source CMS packages.  
Based on my needs I selected eGroupWare. At that time I wasn't aware of  
phpGW, but as you'll see later it wouldn't have made a difference. My  
objective was to pick the CMS closest to my needs and then port/develop  
apps to it as needed.
In the course of learning eGW's internals I learned about phpGW, the  
probiz contributed docs, the political squabbles, eGW forking from  
phpGW, etc.
This is the primary reason I hate the Open Source movement: rather than  
being motivated to cooperatively build a community, its proponents are  
seeking to gain control over how others work and the work they produce.  
"I want my source code, and I want your source code and you better give  
it to me or you're evil."
It's all about control. It's all about how you treat others when you  
have that control.
When maddog (John Hall) gave a presention to our local user group last  
year, he said the primary factor behind what he believes to be Open  
Source's inevitable success is the scalability inherent in its  
development. That as a result of having so many developers able to work  
on source code tailored to their own and customers' needs, the Open  
Source movement will overwhelm any proprietary competitor solely on the  
basis of sheer numbers.
It ain't likely, and this whole phpGW/eGW/etc situation is a perfect  
example why. Some guys were unhappy with the way the project was  
progressing so they forked the project and started eGW. I came across  
eGW and, finding its claims the closest to my site objectives, set up  
my site using it. As I began learning its internals and the way it  
worked I discovered phpGW and the whole forking business, and looked  
into using phpGW instead as I dislike political squabbling and the  
pettiness that is forking.
However, whereas the eGW installed and configured easily and looked  
professional, I wasn't even able to get a working phpGW installation  
and what I _did_ get was klunky and sloppy. I thought it might take a  
couple fixes to get the system working, but lowering the error  
reporting level to E_ALL displayed over 1100 notification errors in one  
module alone! That's simply unacceptable as I can't develop the code  
for my site, fix the phpGW code to bring it up to production quality,  
and factor out the eGW differences to send in my patches just to make  
your job easier in picking up my changes. I'm not gonna do it. That  
doesn't _scale_. Not positively, anyhow.
Multiple developers working independently on project changes which are  
not integrated back into a common repository does not scale well. Not  
for system developers. Not for application developers. Not for  
administrators. Not for users. Each fork produces an extra competitor  
and noise in the market and takes time away from the development time  
you have. Each fork reduces the size of the development team and the  
user base making your product less attractive to planners and  
implementers reviewing systems for a new site.
That's why Open Source will never achieve global dominance: frail egos  
and childish posturing to claim The Absolute Truth; hence, the moral  
right to deny any heretics from contaminating your Holy Work. It  
doesn't matter whether the issue is licensing, programming language,  
source code conventions, toolchain or committing changes to a module  
without waiting for someone else's okay. As long as your agenda is  
protecting your dogma, those whose vested interest is profit will  
figure out a way to deal with one another's quirks and produce a  
solution that beats yours and they'll get it done faster.
I reiterate: _Do_ _Not_ _Reply_ _To_ _Me_. I already know what the  
responses are and I will be ignoring and deleting emails without regard  
to content. You think you're justified in insisting things should be  
done your way. (Delete. Delete. Delete.) I don't. You think you deserve  
to be heard. (Delete. Delete. Delete.) I don't. You think once you've  
completed your masterpiece and revealed it to the uneducated masses  
that all will marvel at the majesty and wonder that is you and shower  
you with praise and honor and glory for you to bask in for the rest of  
your life. (Delete. Delete. Delete.) Truth is, hotshot, that the rest  
of us think of you the same way you view the rest of us:  as a pompous  
ass. The only reason I've given any thought to you at all in the past  
was for the _potential_ that you might be able to further _my_ goals,  
NOT (Yes, I used all caps. Deal with it. Delete. Delete. Delete.) to  
get a glimpse of your Enlightenment.
I'm smarter than you are anyway. I'm no longer referring to the  
individual phpGW developer either. I mean all you phpGW developers put  
together. I am smarter, way smarter. I'm even smarter than you and the  
eGW guys and the phpNuke guys and the TWiki guys and the developers of  
every other CMS out there put together. The primary reason is simple:  
you guys are unwilling to work together. I don't slow down my project's  
forward progress. You do. And if your output is inferior to mine, you  
might as well be inferior.
The phpGW is now in its third generation, from you guys to eGW to me.  
Three separate projects. That's three isolated design, documenting,  
coding and testing efforts being undertaken. That's a lot of redundant  
work. Picking up the eGW tarball saved me time to get a site up. But  
it's going to end up taking more time to redo the phpGW core and the  
existing apps to suit my needs than if I coded the whole thing from  
scratch. I'm going to have to delicately make changes in a production  
system just to get it right. That won't bring scalability to my project  
and without a means of pushing the changes back upstream it certainly  
won't bring any to yours.
By the way, I'm not going to release the source as yet another forked  
project on the net. (Delete. Delete. Delete.)
To scale, each person has to tackle a different issue and integrate his  
solution into the project. That means there's going to have to be some  
delegation of duties and a willingness to give up some control and  
trust others to do what you don't have time to do.
Source code should make, at the least, a linear progression to any  
state. The changes from your code to mine to the next site's should be  
moving continually upwards over time as the codebase migrates. Ideally,  
it would progress exponentially as the efforts of several cooperative  
developers are integrated into a single codebase. Unfortunately, the  
typical progress is more akin to that of a drunken sailor as each  
developer focuses solely on his own comfort and not on learning how to  
work with others.
So, keeping that in mind, here's my input on the situation. After  
reading it you can do what I do. Delete. Delete. Delete.
On Apr 20, 2005, at 6:44 AM, Dave Hall wrote:

On Wed, 2005-04-20 at 11:12 +0200, Mailings - Christian Boettger wrote:
 G'day!

From: Dave Hall [mailto:address@hidden

That's probably because I don't trust Kai.  Kai has a habit
And he seems not to trust you in turn. How do we get out of this  
circle?

Kai (and atm others at probiz) have a habit of running their
own races.
Just like you perhaps? Or like anybody else from time to time?

In the end, Kai's fixes do help the project.

Calm down, both of you.
Posturing. I've already covered this above.

If the project was pbGroupWare that would be fine, we would
have to live with it.  It isn't pbGroupWare, the project will
never be pbGroupWare, so you need to work as part of the
team, not run your own race.
OK; if you want probusines to fork out: just say so. Perhaps they  
consider
it. I would hate it. But:
I'm not setting any probusiness policies with regards to phpGW any more.
I am not saying fork, I am saying the project is bigger than probiz and
address@hidden need to not act like this is a probiz project.  Probiz is
just one group of devs within the project, there are many others both
individual and companies.
Posturing.

This _is_ a probiz project. They have a lot invested in it and can rightly claim ownership. This is _your_ project. You have a lot invested in it and can rightly claim ownership. Being Open Source, _everyone_ can claim ownership in it and _noone_ can deny ownership to anyone else. It doesn't matter if the probiz guys declare themselves to be emperors of the project and wear crowns, so relax. As long as they're contributing to the forward progress of phpGW, don't get hung up on titles.
You're going to have to live with the way they do things anyway as  
they're teammembers as well. And they're going to have to live with the  
way you do things as you're a teammember.
It would bring phpGW up into the top list of projects bringing devs to
fork...
No phpNuke (and derivatives) still top that list by a long way :P

Shall we add the recent egw fork to that list too ;)

I think a public discussion about the setup changes fips is
proposing should also be on this list, not via phone calls
and private email.
You are mixing two things here. Obviously fips should have
announced/discussed his changes before committing.
No I am not.  It is more than before committing.  If it is just before
committing then we end up with problems like Kai's MaxDB patch.

The object factory change should have been discussed before being
committed.  btw I would suggest that no one relies on the feature until
it is resolved.

If there is no discussion then something may not be appropriate and the
time is wasted.
Foot dragging.

Oftentimes, more time is wasted in bottlenecks such as consensus-building and waiting for approval for others. To make the whole development progress faster, why not let anyone make the modifications they want to make to the code and if the mods make a drastic change to the way components interact, they should post the changes to the list first and let the group vote on whether to accept the changes or not.
It would also be great to adopt unit tests and test-driven development  
practices to reduce the likelihood the mods  break something else in  
the codebase. Then you don't need to review every single commit.
It has been less than a week since I posted about the need
for communication on this list.
... and Kai is the scapegoat now?
No, but Kai's actions are good example of what not to do.  I am happy  
to
admit that Kai's post about the phpdocs was a good approach, not
perfect, but a good improvement.  His approach to php -l was poor imho.
Posturing. You can't compliment someone without also criticizing him?  
Don't answer. (Delete. Delete. Delete.)
Either work (and communicate) as part of the team, not your
own little faction that thinks they can do what ever they want.
It is not *MY* "fraction". People still have their own will, even if  
working
for a company.
AFAIK both fips and powerstat have prepared and submittet their changes in their spare time, independent of the copmpany (correct me if I'm wrong). If
that should be important.
I am happy to accept that the actions appear to be similar, but the
employer was the same.
Posturing. How is that relevant? Don't answer.


And now: let's get back to work, shall we?
I haven't read /. for 24hrs+ so no time lost ;)
Whee. No one cares.

Cheers

Dave
-- Dave Hall (aka skwashd)
API Coordinator
phpGroupWare
----------------------------------------------------------------------- -- Do you think if Bill Gates got laid in high school, do you think there'd
be a Microsoft?  Of course not.
Underwear Goes Inside The Pants by Lazy Boy
Alfonso Guerra (aka mrzippy)





reply via email to

[Prev in Thread] Current Thread [Next in Thread]