Subject: RE: [hackers-il] at which point is code worthy of publication?

From: Chen Shapira <[email-masked]>
Date: Thu, 14 Nov 2002 13:40:42 +0200

> What else? where do you guys think lies the cutoff point, where
> publication (and self glorification) becomes the end itself, rather
> then the means to an end? 

I think the term "friendliness" in its widest meaning should also be
considered.

Give your program to a friend, one who represent your intended audiance.
Can he use it as is? Does he need lots of hand-holding?
If you don't bother writing decent documentation, meaningfull error messages

and such, you may consider not publishing it.

I tried using a java "bulletin board" servlet for 2 weeks before I gave up.
Not only the writer didn't bother documenting the system, he even forgot
some 
of his classes in the package he distributed. 

Also, if there are already 300 other programs that does the same thing, make

sure yours is actually interesting.
I wouldn't publish my own:
	1. Window manager
	2. Mail client
	3. Bug tracker
	4. Web browser
	5. Php database frontend
Unless I just had an amazing idea. Something that is an order of magnitude
better that KDE, Mozilla, Evolution, etc.
Why publish a program that I know no one else has any reason to try? 

On the other hand, my own conditions may be too strict. I never publish
anything that I do (or perhaps I never do anything interesting).

Thanks,
Chen.

---

From: Omer Musaev <[email-masked]>
Date: Thu, 14 Nov 2002 14:18:40 +0200

' -----Original Message-----
' From: Muli Ben-Yehuda [mailto:[email-masked]]
' Sent: Thursday, November 14, 2002 1:56 PM
' To: [email-masked]
' Subject: Re: [hackers-il] at which point is code worthy of 
' publication?

...

' While this is all good and sound advice, it's not what I asked. I know
' how to release software that other people can and will use. I've been
' doing it for a while now. What I'm speculating about (with this
' group's kind help) is when should software be published, from the
' "good of the public (and not the publisher)" point of view. 

When the program does something useful in a reliable way. Version 0.1 
may contain only the smallest part of the intended functinality, but 
I would expect it to do what it does in clear an reliable way. 

An example open-source application that I would consider using is CDT
C++ integrated environment for the Eclipse platform. At its current
form, it is barly an editor with simple class browser. However, it is
a usable editor and its class browser is reliable. Is useful right now.
Integrated compilation, debugging, refactoring, formatting and source
control will come later, but it is useful already.

My 1.695 cents + VAT

' -- 
' Muli Ben-Yehuda				    
http://www.mulix.org/
[email-masked]:~$ sctrace strace /bin/foo  http://syscalltrack.sf.net/
Quis custodes ipsos custodiet?              http://www.mulix.org/cv.html

To unsubscribe from this group, send an email to:
[email-masked]

Your use of Yahoo! Groups is subject to http://docs.yahoo.com/info/terms/

---

From: Chen Shapira <[email-masked]>
Date: Thu, 14 Nov 2002 15:20:02 +0200

> I would expect it to do what it does in clear an reliable way. 

I disagree here.

IMO from the first version, the program should differentiate itself and do
something non-trivial. Have a special core functionality up and running
before you release the first version.

Lets take your example: CDT

At its present stage its as usefull as notepad.
So after few minutes of poking around, I switched back to emacs, visual
studio, kdevelop, etc.
If it had something special, like refactoring. Something very usefull that
no one else does. Then even if the editor sucked, the compiler was entirely
missing, and debugging wasn't even designed - I would have used it. Because
refactoring C++ is truly special. I've never seen it before.

If refactoring was only partially functional, but still looked promising, I
might have been tempted enough to try and contribute a fix or two, and I
probably would have used it long enough to generate a bug report.

BTW. The most usefull feature any version 1.0 could have is automatic bug
reporting.
We've added it in few components, and its amazing. No developer should ever
be left without necessery details as version, OS and gcc version.
I'd also suggest "add bug" button (or flag) which will allow user to write
the description, while automatically appending the important details.

---

From: Omer Musaev <[email-masked]>
Date: Thu, 14 Nov 2002 18:36:39 +0200

' -----Original Message-----
' From: Chen Shapira [mailto:[email-masked]]
' Sent: Thursday, November 14, 2002 3:20 PM
' To: [email-masked]'
' Subject: RE: [hackers-il] at which point is code worthy of 
' publication?
' 
' 
' 
' > When the program does something useful in a reliable way. 
' Version 0.1 
' > may contain only the smallest part of the intended 
' functinality, but 
' > I would expect it to do what it does in clear an reliable way. 
' 
' I disagree here.
' 
' IMO from the first version, the program should differentiate 
' itself and do
' something non-trivial. Have a special core functionality up 
' and running
' before you release the first version.

After thinking on the subject a little, I agree with you. The non-trivial 
part is as important as clarity of intentions.
 
' BTW. The most usefull feature any version 1.0 could have is 
' automatic bug
' reporting.
' We've added it in few components, and its amazing. No 
' developer should ever
' be left without necessery details as version, OS and gcc version.
' I'd also suggest "add bug" button (or flag) which will allow 
' user to write
' the description, while automatically appending the important details.

My previous project had automatic bug reporting as well, but I do not 
know whether that did help us. On the other hand, we were pretty sure
on our hardware and software.
 
' 
' To unsubscribe from this group, send an email to:
' [email-masked]
' 
'  
' 
' Your use of Yahoo! Groups is subject to 
' http://docs.yahoo.com/info/terms/ 
' 
'