Page 1 of 2

Open Source

Posted: 08.01.2008, 00:53
by Paolo
Perhaps is OT. But I 've just found this. It opened me the mind a bit.

http://www.catb.org/~esr/writings/cathedral-bazaar/

Since we all would like to see a a better Celestia in the future, a lot of discussions about Celestia development is needed and so the link should be useful (specially for someone of the celestia development team). :wink:

If not move in the purgatory...

Kind regards

P.S. Of course is a provocation.

Re: Open Source

Posted: 08.01.2008, 02:11
by chris
Paolo wrote:Perhaps is OT. But I 've just found this. It opened me the mind a bit.

http://www.catb.org/~esr/writings/cathedral-bazaar/


I've read the Cathedral and the Bazaar before--which parts do you think are especially relevant for Celestia? If you want to see the Celestia development process changed, it's best to be direct :)

--Chris

Re: Open Source

Posted: 08.01.2008, 18:42
by Paolo
chris wrote:
chris wrote:
Paolo wrote:Perhaps is OT. But I 've just found this. It opened me the mind a bit.

http://www.catb.org/~esr/writings/cathedral-bazaar/

I've read the Cathedral and the Bazaar before--which parts do you think are especially relevant for Celestia? If you want to see the Celestia development process changed, it's best to be direct :)

--Chris


Well Chris, speaking frankly I don't know where to start.
I don't want to say that every open source project should run smoothly and effectively as the one described in the example.
But IMHO Celestia is quite far from being defined as an opern source project. I prefer to consider it as a "published" source project managed as a Cathedral and not as a Bazar. Perhaps this is the best way to manage this kind of project. But I don't agree with this.

My criticism is not all directed against you because as far as I know I can understand your situation... that is not all your responsibility.

From my side despite my deep love for Celestia is quite a long time that I don't participate actively to this community. And I think that the situation won't change in the future. I'll remain one of the many discouraged in the years.
Instead is more probable that I'll parasite Celestia creating an unofficial fork with an OpenGL GUI and using the poco (Portable Components) library.

P.S.
Please do not consider my intervention too seriously. I'm only a visionary and incompetent voice in the desert. :wink: :lol:

Posted: 08.01.2008, 20:25
by t00fri
Paolo,

are you aware that a Qt4 GUI is building nicely already both under Windows and Linux and probably very soon under MAC-OS? It's growing every day.

Qt4 is a slick OpenSource cross-platform toolkit, natively C++, with excellent documentation and VERY good OpenGL support. So...? What's your complaint?

F.

Posted: 09.01.2008, 11:25
by Paolo
Fridger I'm perfectly aware of the celestia development status. I'm still in subscription to the developers mailing list.

I've nothing against QT that I've tested some months ago. Probably it's the best choice for Celestia. I've asked for a unified GUI in middle 2003.

But the first thing that should drive this decision is: what will be the purpose of Celestia in the future?
1) a tool for hobbysts?
2) a tool for education?
3) a tool for professionals?
4) all of the previous?

In the years I've always pointed out that the true potential of Celestia is in point 3. Is this the direction? Is it QT the right choice? Perhaps yes. I'm not conviced. I would prefer to use and think Celestia as a virtual space like Second Life and not like a "program" e.g. a wordprocessor.

The world is in the web 2.0 era and moving rapidly to the web 3 era. Blog, Wiki, CMS (like Joomla) are the tools to share the knowledge. PHP, ASP, CSS, AJAX, Flash are the technologies that stay behind this era.
Collaboration, is the key. The future is in the wikinomics.

And here returns the the initial issue. Why only a few and only a few professionals like you collaborate directly to this project? Perhaps because it is not "open" source as it should be.

Posted: 09.01.2008, 13:38
by t00fri
And here returns the the initial issue. Why only a few and only a few professionals like you collaborate directly to this project? Perhaps because it is not "open" source as it should be.
  • because a large amount of devs needs tight coordination and peer reviewing, tasks which becomes VERY work-intensive if the number of devs grows. Just think of the resulting email traffic!
  • Since some time Celestia development is quite lively and efficient again, essentially with the old crew in the dev but also with many creative and motivated helpers. While I have been often critical about lack of progress, I am quite satisfied these days with the rate and the quality of what is going on...
  • Celestia DOES need special astro/physical/mechanical/... know-how beyond mere programming. That cannot be denied. People with these "double" abilities are not all that frequent.
  • Hank's previous attempt of organizing "mass development" with many untrained people essentially fell asleep, it seems. Hank has not shown up anymore since quite a while. The present compact group of developers and testers communicates very well, is experienced with areas of high specialization, and it seems we are making lots of progress. Notably because ChrisL is much more available again!
  • because it is not "open" source as it should be.
    Celestia is perfectly open source, there is no doubt about this. Open Source does not imply ANY requirements about how code development is actually done or organized. The main point is that all code is laid open properly. Celestia certainly satisfies this requirement.
  • There is no doubt that a cross-platform toolkit like Qt4 or GTK has MANY advantages over other solutions that you keep advocating.


Bye Fridger

Posted: 09.01.2008, 13:40
by BobHegwood
Paolo wrote:And here returns the the initial issue. Why only a few and only a few professionals like you collaborate directly to this project? Perhaps because it is not "open" source as it should be.


Paolo,

If you'll please forgive my unwarranted intrusion here, I must
disagree with the above statement. Chris has taken contributions
from a very wide variety of sources in this project. Brain-Dead
Bob has also managed to contribute something to the
project, even though it has only been very minor things like
CEL scripts or documentation.

However, there's Cartrite, Grant, Vincent, Selden, and any number
of other contributors who have all made an impact in the total
project.

It's just that not very many of us people in the everyday world have
the knowledge and/or the TIME to devote to the project as others
do.

Is this a bad thing though? What happens when you get too
many cooks in the kitchen? Nothing gets cooked correctly. :wink:

Just my two cents. Feel free to swear at me anytime.
Thanks, Brain-Dead

EDIT: Damn, The Good Doctor beat me to
it again. When do you sleep?

Posted: 09.01.2008, 14:01
by t00fri
BobHegwood wrote:
EDIT: Damn, The Good Doctor beat me to
it again. When do you sleep?


;-)

Bob, at this time I CERTAINLY would not want to sleep. I just returned to my /office/ from lunch and took a few minutes to type the above post (while drinking my after-lunch expresso...).

In general, I don't need much sleep. I am perfectly happy with 6h 15min/night which is my standard resting time...

F.

Posted: 09.01.2008, 15:12
by chris
Paolo wrote:Fridger I'm perfectly aware of the celestia development status. I'm still in subscription to the developers mailing list.

I've nothing against QT that I've tested some months ago. Probably it's the best choice for Celestia. I've asked for a unified GUI in middle 2003.

But the first thing that should drive this decision is: what will be the purpose of Celestia in the future?
1) a tool for hobbysts?
2) a tool for education?
3) a tool for professionals?
4) all of the previous?

All of the above, certainly.

In the years I've always pointed out that the true potential of Celestia is in point 3. Is this the direction? Is it QT the right choice? Perhaps yes. I'm not conviced. I would prefer to use and think Celestia as a virtual space like Second Life and not like a "program" e.g. a wordprocessor.

The world is in the web 2.0 era and moving rapidly to the web 3 era. Blog, Wiki, CMS (like Joomla) are the tools to share the knowledge. PHP, ASP, CSS, AJAX, Flash are the technologies that stay behind this era.
Collaboration, is the key. The future is in the wikinomics.

I've been working with a number of professionals that use Celestia, and they've never used the word Wikinomics. :) There are quite a few features that have been introduced in 1.5.0 to address professional users:

SPICE support
Flexible reference frames
JPL ephemerides
ScriptedOrbits
SampledOrientation
...

I could go on . . . A lot of this may not sound as glamorous as Web 3.0, but these are the things required when using Celestia for astrodynamics applications. For other professional uses of Celestia, there are the carefully processed catalogs of deep sky objects, stars, etc.

And here returns the the initial issue. Why only a few and only a few professionals like you collaborate directly to this project? Perhaps because it is not "open" source as it should be.


I would like more collaborators; I think it has nothing to do with any lack of openness in Celestia, and is mostly a matter of finding people with the both the time and the appropriate astronomical knowledge and/or programming skill.

--Chris

Posted: 09.01.2008, 15:55
by mjoubert
Paolo,

My company is working for the french space agency CNES. I installed Celestia on several computers there. We made a real-time interface that allow Celestia to display positions and attitudes that come from a simulator.

Since professionals' feed-back is enthousiastic, it has been decided to go further : we are now studying how CNES and others european space agencies can help Celestia.

As Chris just said, our requierements don't sound like "Web 3.0". Shadow rendering is probably the most popular one. A 2D window with a planisphere will be another interesting evolution.

We're working with Chris to define agencies and development team future collaboration.

Mathieu

Posted: 09.01.2008, 17:13
by ElChristou
mjoubert wrote:Paolo,

My company is working for the french space agency CNES. I installed Celestia on several computers there. We made a real-time interface that allow Celestia to display positions and attitudes that come from a simulator.

Since professionals' feed-back is enthousiastic, it has been decided to go further : we are now studying how CNES and others european space agencies can help Celestia.

As Chris just said, our requierements don't sound like "Web 3.0". Shadow rendering is probably the most popular one. A 2D window with a planisphere will be another interesting evolution.

We're working with Chris to define agencies and development team future collaboration.

Mathieu


That's very nice!

Now, what would be even cooler would be to see this process... (kind of interesting, no?)

Posted: 09.01.2008, 21:00
by Paolo
Sorry but perhaps I was misunderstood.
I know perfectly which is the current development status and which exciting features are included. Of course tecnically Celestia IS STRICLTY OPEN SOURCE. Is the development environment that is not very "open" as it should be.

The point is that the Celestia development in the time rarely has followed the path described in the cited article.
http://www.catb.org/~esr/writings/cathedral-bazaar/

We all know that the sum of astronomy, astrodynamics, cosmology, 3D graphics, OpenGL and C++ is a matter that can be managed at the highest level only by a few. But taken separately can be managed by many.

Of course a lot of mail traffic would occure in a more large team. But e-mail is not the correct tool to be used for communication in a distributed team.

P.S.
Please don't spend more time in this discussion. Things are changing. I'm happy.

Posted: 09.01.2008, 22:38
by Christophe
Paolo wrote:The point is that the Celestia development in the time rarely has followed the path described in the cited article.
http://www.catb.org/~esr/writings/cathedral-bazaar/

[...]

Of course a lot of mail traffic would occure in a more large team. But e-mail is not the correct tool to be used for communication in a distributed team.


That seems contradictory to me. The Cathedral and the Bazaar was written by ESR as a kind of theorisation of the Linux development model which at the time (1997), was new and in contradiction with the best practices of then.

Celestia's development model does not seem that different from Linux's to me. Sure the development team is way way smaller, but new developers are welcome and co-opted in the same manner. Patches are accepted after review and validation in similar manner, the general direction is defined by the lead developer also in a similar way.

To this day Linux developers still use only email to cooperate. No wiki, no Web 2.0 wizzbang, not even a web forum. Check http://lkml.org/ to see what a high traffic mailing list looks like, that's over 10,000 messages/month, and it still works as a development model.

The main way in which Celestia is departing from the bazaar model is on the 'release early, release often' motto, but that's mainly because we aren't that many working on it. As it has already been said by others we would all love to have a larger team, and we are open to new contributions, the problem is that not that many people come forward.

Posted: 09.01.2008, 23:12
by Paolo
Christophe wrote:The main way in which Celestia is departing from the bazaar model is on the 'release early, release often' motto, but that's mainly because we aren't that many working on it. As it has already been said by others we would all love to have a larger team, and we are open to new contributions, the problem is that not that many people come forward.


Regarding the last statement. Have you ever asked to yourself why?

I remember well many attempts by volunteers that have submitted patches and ideas in these years. They simply was discouraged end even rejected.

The greatest difference against the bazar model is in the hype, in the collaboration model, in the quality of the documentation of the code. Is in the very high steep for newcomers.

To keep high the hype is important to update and refresh the website. A blog integrated in the website is more more effective than the forum. The forum is for enthusiasts and for people that have problems.

Christophe, the doxygen documentation of the code that you've prepared along ago, should be integrated in the official website.

Why People like Selden is not included and cited as part of the dev team.

The efforts made by Selden using the wiki should be integrated in the official website.

Another silly example. Since few weeks ago the prj files for visual studio was even not updated on CVS from years. Of course who knows VC++ can import the makefile and deal with this and in minutes or hours can be able to run Celestia in the IDE. But it is not friendly.

E-Mail communication is time expensive because difficult to read. You feel confortable with it. Personally I hate it.

A serious bug traking and ticket system was taken in consideration only a few months ago.

The development roadmap was published only some months ago.
The project is complex and is going to go more complex. The team should be managed splitting responsibilites and roles. Members should be specialized and in charge for some aspects of the software not only coding like documentation, pakaging, distribution, installation, website maintenance, tools, etc etc .
There are so many things and details that makes the difference with an effective and real "open" project .

Please don't misunderstand my criticism. Is a positive thing. In this period I would like to submit to your attention some issues to pursue a more effective development model and to avoid some errors that was made in the past. Moreover the aim is to don't miss the importance of the good procedures and ideas that was introduced in the last period.

Kind regards. :)

--------------------------
Edit: P.S.
Last but not least.
If you want to recruit someone and enlarge the team, often you have to ask for this explicitly specifying roles, attitudes and competence required. And you have to publish this kind of request in some attractive manner. :wink:

--------------------------
Edit 2. P.S. 2
All over the world young graduating at university often have trouble in finding a good argument for their thesis. I've often asked myself: is it possible that none of them specially in programming, 3D graphics, astronomy, astronautics don't find attractive the idea of working on projects based over Celestia and so contribute for a period to its development? It should be a good reference when will come the time to look for a job.

--------------------------
Edit 3 P.S.3
You are right the article cited the Linux dev model as revolutionary at the time. It still works now without web 2 features like the previous model still works as well. But now are both out of date.

Posted: 10.01.2008, 00:26
by selden
Paolo wrote:Why People like Selden is not included and cited as part of the dev team.
That's because I'm not. I'm an "advanced user." Celestia makes it possible for me finally to construct things I've dreamed about most of my life, so I tend to try to make it do things that are at the limits of its capabilities and sometimes are unexpected by its authors. That also means I've had to learn many of its complexities, which I enjoy explaining to others. I also enjoy testing software, but I don't understand either C++ or OpenGL well enough to write code. I lurk and occasionally make comments on the developers' mailing list, but anybody can do that.

One of the things people tend to overlook is the "trust" factor. Potential developers need to demonstrate that they understand the software and the people working on it, and that their contributions will actually enhance its design. This takes time and effort. It's a form of apprenticeship, perhaps.

Unfortunately, many of the people who've appeared on the forum who've said that they wanted to contribute already had fixed ideas about what should be done. They were prepared to immediately make Celestia over into their ideal software package, with little regard to its history or philosophy. The image of "a bull in a china shop" has often occurred to me. (I wonder where that phrase actually originated.) That's not a way to persuade the current developers of any software package that you should be allowed to join their design team.

But don't forget that nothing prevents such people from actually doing what they propose. They could create a project on SourceForge and start the development work. That'll attract others if the project seems worthwhile. For some reason, though, that has almost never happened. "Mostly Harmless" is the only such project I'm aware of, and it never attracted anyone willing to help.

Posted: 10.01.2008, 09:07
by Christophe
Paolo wrote:The development roadmap was published only some months ago.
The project is complex and is going to go more complex. The team should be managed splitting responsibilites and roles. Members should be specialized and in charge for some aspects of the software not only coding like documentation, pakaging, distribution, installation, website maintenance, tools, etc etc .


I'm not denying that you do have some points, it's just that I don't see the link with ESR's essay. This reads more like an ad for the the cathedral model than for the bazaar!

Posted: 10.01.2008, 10:00
by t00fri
Paolo wrote:The team should be managed


I DON't like to be MANAGED! Can you understand this?

F.

Posted: 10.01.2008, 10:38
by Christophe
t00fri wrote:I DON't like to be MANAGED! Can you understand this?


Regardless, we all know you're unmanageable Fridger! ;-)

Posted: 10.01.2008, 11:24
by Paolo
t00fri wrote:
Paolo wrote:The team should be managed

I DON't like to be MANAGED! Can you understand this?

F.


:D :D :D :lol: :lol: :lol: :lol:

Really Fridger. No I can't understand.
If Celestia Dev is a team it is not possible to consider all as peer. Someone must be the leader. Sometime ago I've advocated that you take the leadership of the project when Chris was missing from long time. You've denied the proposal.

So you ARE managed and you must to accept this.

I don't want to start a flame war but IMHO the fact that you don't like to be managed is one of the main problems of this community.

Posted: 10.01.2008, 11:31
by Christophe
That's what I don't understand in your argument Paolo, you're complaining that Celestia is not enough in the opensource spirit and yet requesting a stronger, stricter management of the developers. That is very contradictory.