[WF-General] SourceForge (was Re: [WF-Infra] File hosting)

Bryce Harrington bryce at neptune.net
Sun Oct 15 04:04:50 PDT 2000


On Tue, 10 Oct 2000, Jack Cummings wrote:
> Take a look at the sourceforge pages and tell us what you think is 
> cool. 
> 
> --Jack 

I have just completed a bit over a week's worth of thorough
investigation of SourceForge as a technology.  I have played with almost
all of its features, dug around in the source code, and ran it through
its paces, and I'm ready for a short report on my experiences.

I'm going to try to separate out the technology from the service, for
reasons which will be clarified at the end.

1.  Sourceforge is flaky

First off, Sourceforge.net is very unreliable.  The server crashes,
pages fail to load, and other assorted problems arise.  Now, I know that
we sometimes have problems here, too, but it's different.  Here at
WorldForge I have a sense that infra is accessable, and will work to fix
problems - and keep us informed as to how things are going and when
we'll be back up.

2.  Sourceforge is slowww...

We knew SF was going to be slow, which is one of the reasons we wisely
decided to steer clear of it.  It's extremely slow.  And for good
reason:  it is very database-intensive, and often must make several
queries on the db to build a general page.  While I know some people are
hosting our services off of modest bandwidth connections, I rarely can
ever make such a complaint as this.  I don't know whether it is due to
our modest requirements or due to the skillful bandwidth management of
the infrastructure crew, but we do a better job here.

3.  Sourceforge gives just one chance!

In a number of places there is the limitation that one can add but not
delete.  While this is understandable, it is as unrealistic for a
project as large as our as if we couldn't delete files from CVS.  For me
this is probably the biggest misfeature, because I make mistakes or
change my mind a lot, and I *really* am dependent on how easily
accessable the infra staff are for stepping in and helping when things
have gone awry.

4.  Sourceforge has a static featureset

As far as I can tell, what you get with SF is pretty much all you get.
If I had need of some other tool integrated with the rest of the SF
software, I think maybe I'd just be out of luck (or maybe not; I never
tried this).  On the other hand, WorldForge's infra team is always
testing out new services, exposing them to the rest of the community for
feedback, and seeking to integrate everything nicely.  In fact, over the
few week's I was looking at SourceForge, the WorldForge team deployed
new mailing list software, LDAP, and developed and deployed an animation
viewer.



---

Anyway, the mission I undertook was not to determine if the sourceforge
service was up to our needs or not - we had already decided months ago
that we wouldn't/couldn't use it.  But it was nice to validate our
decision.  Rather, it was to analyze the features and see what could be
of use to us.  And here goes:

A)  Usability & Integration

I really like how sourceforge is set up to give me what I need, when I
need it.  Rather than having to send a newbie on a scavenger hunt to get
all of his accounts, I can sign them up and hand out permissions all at
once.  Rather than have to log into one machine to submit bugs, and
another to write an announce note, and so forth, I can do it all in one
place.  We have long talked about having an integrated solution like
this, and we've made some good steps, but we still are fairly
fragmented. 

B)  Dependability

I panned SourceForge above for its reliabilty and static services, but
on the other hand, I have a reasonable degree of confidence that if I
use their bug tool, I'm going to be able to view and modify my bugs for
months or years to come.  I like that. 

Because of their high profile, SourceForge probably has a good
test/release process to help avoid letting things get really dodgy.  

C)  Project Subdivision

SourceForge allows creating sub-tasks and sub-projects within the
project.  This is a very good way to organize things.  

D)  Project Metrics, Ranking, and Visibility

This is probably the #1 thing I like most about SourceForge.  It is
important to be able to view your progress, and numbers are the most
scientific way to achieve that.  'Statistics' is a greek word for
'misleading pack of lies', true, but it's nice to know that people are
looking at your work, that we're doing better now than earlier, and that
even small efforts contribute to the larger whole.

Plus I like graphs.  A LOT.  Throw some graphs at me and I'll oink quite
happily. 

As well, even though there are a lot of projects hosted there, it is
feasible for a large project like ours to get up into the top 10.


Now, to finally get around to the actual features...

Bug Database
------------
We _definitely_ need a bug database like the one SourceForge provides.
For the time being, we should continue using this one on SF.
Eventually, though, we're going to want someone to run a dependable
Gnats server for WorldForge.

File Releases
-------------
Take a gander at the way SourceForge allows grouping files together
under packages.  Also note how the latest file releases show up on the
main summary page for the project automatically.  I really like this
capability. 

Task Manager
------------
The task manager is okay, but I've seen (and written) better ones.  It's
nice to be able to track the tasks, and this tool is a good sight better
than having to track them manually.  

Forums
------
Mailing lists take care of most Forum-like needs, however it is true
that sometimes people want more topical, threaded lists to browse for
help or to get a feel for the project.  Some simple short web bulletin
board areas (perhaps implemented using Wiki or Eidetic?) might be useful
for newbies.

Usage Statistics
----------------
SourceForge plots number of page views and number of downloads.  It also
tracks numbers of commits, patches, etc. over the past 2 weeks or other
user specified period.  I most **definitely** like this.  I really love
having statistics like this.  So much so that it has driven me to write
metrics scripts like the wiki tally and the cvs report programs and
collect mailing list subscription numbers in the past (both of which no
longer function due to changes in the way things are organized; I'd fix
them but I sense I'm alone in my wanting to count progress.)

I just wish I could choose which parameters to be plotted!  ;-)

Centralized Admin
-----------------
It is very cool to be able to manage accounts all from a single place,
as well as having the admin tools for all the other functions available
in one place.  And it's nice as a developer to know that once I'm signed
up, I'm signed up across the board for all functions, and don't need to
remember different usernames or passwords for different features.


I know that in the past people (including myself) have looked at things
like this and said, "Why, it can't be that difficult to write something
like that, but even better!  Let's postpone a decision until I've had a
chance to try my hand at implementing it."  But a bird in the hand is
worth two in the bush.  The time spent developing this tool could have
been spent ensuring the stability of several apps.  Since sourceforge
code is available for download, it sure would be nice if someone would
create a sourceforge for us to use, striving to keep it robust and
reliable.  SourceForge *clearly* falls within the domain of the infra
team, so it needs to be their baby to maintain and promote.  I know they
are presently very busy with the website reorg, so it would be ideal if
someone not yet involved in the project would join the infra team and
then take on custodianship of this tool for WF.

It may be that all of the above capabilities are available in Zope, and
that the new website will provide them all.  If that is the case, then
great; let's get the website software up and going NOW, so that we can
move into integrating these other features.

We're soon going to have a number of other needs from the infra people.
Acorn test and player servers are going to need to be set up.  STAGE
will need to have a server for it to be routinely tested on.  And many
other things.  We definitely need more people working in the infra team
on projects like this.

Please reply to this and send me your thoughts on SourceForge and
whether it fits into our project.

-- 
Bryce Harrington
bryce @ neptune.net





More information about the General mailing list