You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@roller.apache.org by Allen Gilliland <Al...@Sun.COM> on 2006/03/03 22:36:59 UTC

Planet Roller as its own project

I had a short discussion about this with Dave following some comments I had about the first draft of the Atlas proposal and I wanted to follow up here on the list.  I think that now is the right time to start to push the Planet aggregator specific code out into it's own project.  Here are some reasons to do this ...

1. maintain proper decoupling of Roller and planet code.  the core and planet code serve two very different functions which in many cases will want to be used independently.  moving the planet code into its own project ensures that as we move forward there is no undesired dependencies between the two code bases.

2. keep Roller codebase as trimmed and clean as possible.  by moving the planet code into its own project we not only trim down the Roller code base but we can also trim down on library dependencies, etc.  this reduces maintenance overhead on Roller developers who are not as interested in working on the planet codebase, keeps the Roller webapp as compact as possible, and also lessens the learning curve for new Roller developers because there is less code.

3. makes it easier to use the planet code independently.  i believe one of the ultimate goals of the planet code is to provide a standalone solution for content aggregation and it is much easier to do that if the code is in its own project.  of course, we still want to allow for good integration between Roller and the planet code, but i don't think that will be hard.  this also provides an opportunity for developers to work on the planet code who are not interested in working on Roller itself.


As far as what is involved technically, I see these general steps which don't necessarily need to happen all at once ...

1. identify all existing planet specific code to be moved
2. identify what Roller code the planet code is reliant on
3. move all existing planet code into its own java package (depending on our approach this could be done inside the current roller "src" at first)
4. modify planet build process to be independent from Roller builds
5. copy/re-implement any Roller code that the planet code is reliant on


The only downsides to doing this that I see are ...

1. creates some extra work to do, but i believe it is worth it.
2. we lose some of the very tight integration that we have now, but i don't think that is going to be very hard to overcome though.


I'm pretty sure that Dave is really the only one who works on the planet code regularly, but does anyone else have thoughts on this?

-- Allen



Re: Planet Roller as its own project

Posted by Ted Husted <te...@gmail.com>.
On 3/3/06, Allen Gilliland <Al...@sun.com> wrote:
> > The Apache Roller project can certainly ship different modules or
> > applications like Roller Admin Console, Roller Planet Server or even
> > Roller Blog Client.
>
> Nope, that's not what I was suggesting.  I am more than happy to keep it as part of the
> Apache Roller project and just keep it in its own place, like the way the sandbox works.
>
> I suppose the one nice thing about it being its own project is that then it would be easier
> to recruit interest in it, but that's not what my original intentions were.

A common term for this idea is "subproject". Apache iBATIS, for
example, has separate subprojects for the Java nd C# implementations.
Each has its own release cycle, but both implement the same general
set of features. Likewise, Apache Struts considers each of our
products a separate subproject (Action, Shale, Action2, Tiles).

The idea of being able to "take the banana without buying the gorilla"
is very important. It''s why Jakarta Commons is so popular.

The key is to remember that it is still one project with one PMC and
one set of committers. If a person hooks up with Apache Roller because
of an interest in Planet, that should make them a Roller committer
too. They might not be interested in Roller now, but everyone should
stll have the same karma.

Just being able to deploy Planet sounds like a fine idea. I'm sure
many people would like to setup a aggregator without going into the
blog business. For example, I might have done that with Planet Struts,
and then put the news blog somewhere else.

* http://www.planetstruts.org/roller/

(Though, it seems that I still haven't got the aggregation feature setup right.)

-Ted.

Re: Planet Roller as its own project

Posted by Brian Blakeley <we...@labourunions.com>.
On Sat, 2006-03-04 at 10:03 -0800, Allen Gilliland wrote:
> 
> Brian Blakeley wrote:
> 
> >
> >I wonder as a user, could I comment here on this discussion?
> >  
> >
> 
> sure, you can always comment.
> 
> >I hope that a "separate code" would not lead to either a different
> >release cycle or a separate install process.  CheBlogs.com runs on
> >Roller and I administer it as a "hobby gone bad", so the thought that I
> >may have to monitor and maintain separate projects to get the existing
> >functionality of Roller (which I really am committed to using) in the
> >future is a real concern to me.
> >  
> >
> 
> we are never going to purposly try and make things harder on users, so i 
> don't think you need to worry about it.
> 
> -- Allen
> 

Thanks Allen!  


> >As it is I have been lagging in updating the site to the latest and the
> >greatest because of the stress to me of managing a switch in the site's
> >critical software. I believe I started CheBlogs.com with Roller 0.96(?)
> >(March 26, 2003) and then upgraded to Roller 0.971, and I am just about
> >to move from 1.0 to 2.1 and I am looking forward to the improvements
> >that I know are there waiting for me and my users.  Planet being a real
> >plus in my mind since, as I understand it, I can use it to create a
> >refined community of bloggers that doesn't include the ED, viagara,
> >weight lose, and ring tones crowd that I am constantly removing from the
> >main site's front page.
> >
> >Sorry, for the lengthy interjection, but although I may not be a
> >"costumer" of Roller in the new (and rather odd) world of Apache as I
> >have been reading, I am a to date proud and happy user of some excellent
> >work by Dave and company!
> >  
> >
> >Brian
> >
> >
> >  
> >


Re: Planet Roller as its own project

Posted by Allen Gilliland <Al...@Sun.COM>.

Brian Blakeley wrote:

>
>I wonder as a user, could I comment here on this discussion?
>  
>

sure, you can always comment.

>I hope that a "separate code" would not lead to either a different
>release cycle or a separate install process.  CheBlogs.com runs on
>Roller and I administer it as a "hobby gone bad", so the thought that I
>may have to monitor and maintain separate projects to get the existing
>functionality of Roller (which I really am committed to using) in the
>future is a real concern to me.
>  
>

we are never going to purposly try and make things harder on users, so i 
don't think you need to worry about it.

-- Allen

>As it is I have been lagging in updating the site to the latest and the
>greatest because of the stress to me of managing a switch in the site's
>critical software. I believe I started CheBlogs.com with Roller 0.96(?)
>(March 26, 2003) and then upgraded to Roller 0.971, and I am just about
>to move from 1.0 to 2.1 and I am looking forward to the improvements
>that I know are there waiting for me and my users.  Planet being a real
>plus in my mind since, as I understand it, I can use it to create a
>refined community of bloggers that doesn't include the ED, viagara,
>weight lose, and ring tones crowd that I am constantly removing from the
>main site's front page.
>
>Sorry, for the lengthy interjection, but although I may not be a
>"costumer" of Roller in the new (and rather odd) world of Apache as I
>have been reading, I am a to date proud and happy user of some excellent
>work by Dave and company!
>  
>
>Brian
>
>
>  
>

Re: Planet Roller as its own project

Posted by Brian Blakeley <we...@labourunions.com>.
On Fri, 2006-03-03 at 17:57 -0800, Henri Yandell wrote:
> On 3/3/06, Allen Gilliland <Al...@sun.com> wrote:
> > On Fri, 2006-03-03 at 17:09, David M Johnson wrote:
> 
> > >
> > > Whoa!
> > >
> > > I'm totally against the idea of breaking Planet out into a separate
> > > Apache project with it's own set committers. I was thinking more
> > > along the lines of "IDE project file." This is a code organization
> > > and build script thing, not a people thing, right?
> > >
> > > You weren't proposing a whole new Apache project were you Allen?
> > >
> > > The Apache Roller project can certainly ship different modules or
> > > applications like Roller Admin Console, Roller Planet Server or even
> > > Roller Blog Client.
> >
> > Nope, that's not what I was suggesting.  I am more than happy to keep it as part of the Apache Roller project and just keep it in its own place, like the way the sandbox works.
> >
> > I suppose the one nice thing about it being its own project is that then it would be easier to recruit interest in it, but that's not what my original intentions were.
> 
> Oops. My mistake, got confused by the term 'project'.
> 
> +1 to a separated codebase.
> 
> Hen

I wonder as a user, could I comment here on this discussion?

I hope that a "separate code" would not lead to either a different
release cycle or a separate install process.  CheBlogs.com runs on
Roller and I administer it as a "hobby gone bad", so the thought that I
may have to monitor and maintain separate projects to get the existing
functionality of Roller (which I really am committed to using) in the
future is a real concern to me.

As it is I have been lagging in updating the site to the latest and the
greatest because of the stress to me of managing a switch in the site's
critical software. I believe I started CheBlogs.com with Roller 0.96(?)
(March 26, 2003) and then upgraded to Roller 0.971, and I am just about
to move from 1.0 to 2.1 and I am looking forward to the improvements
that I know are there waiting for me and my users.  Planet being a real
plus in my mind since, as I understand it, I can use it to create a
refined community of bloggers that doesn't include the ED, viagara,
weight lose, and ring tones crowd that I am constantly removing from the
main site's front page.

Sorry, for the lengthy interjection, but although I may not be a
"costumer" of Roller in the new (and rather odd) world of Apache as I
have been reading, I am a to date proud and happy user of some excellent
work by Dave and company!

Brian



Re: Planet Roller as its own project

Posted by Henri Yandell <fl...@gmail.com>.
On 3/3/06, Allen Gilliland <Al...@sun.com> wrote:
> On Fri, 2006-03-03 at 17:09, David M Johnson wrote:

> >
> > Whoa!
> >
> > I'm totally against the idea of breaking Planet out into a separate
> > Apache project with it's own set committers. I was thinking more
> > along the lines of "IDE project file." This is a code organization
> > and build script thing, not a people thing, right?
> >
> > You weren't proposing a whole new Apache project were you Allen?
> >
> > The Apache Roller project can certainly ship different modules or
> > applications like Roller Admin Console, Roller Planet Server or even
> > Roller Blog Client.
>
> Nope, that's not what I was suggesting.  I am more than happy to keep it as part of the Apache Roller project and just keep it in its own place, like the way the sandbox works.
>
> I suppose the one nice thing about it being its own project is that then it would be easier to recruit interest in it, but that's not what my original intentions were.

Oops. My mistake, got confused by the term 'project'.

+1 to a separated codebase.

Hen

Re: Planet Roller as its own project

Posted by Allen Gilliland <Al...@Sun.COM>.
On Fri, 2006-03-03 at 17:09, David M Johnson wrote:
> On Mar 3, 2006, at 6:40 PM, Henri Yandell wrote:
> 
> > On 3/3/06, Allen Gilliland <Al...@sun.com> wrote:
> >> On Fri, 2006-03-03 at 15:16, Sean Gilligan wrote:
> >>> Allen Gilliland wrote:
> >>>
> >>>> that's fine.  we don't have to remove it from the release  
> >>>> itself, but i do still think that we should move the code out  
> >>>> into it's own unique project space.
> >>>>
> >>>
> >>> How would this fit in with the move to ASF?
> >>
> >> that i'm not sure about.  i don't have any problems with managing  
> >> it as an independent module of the Roller project, but i think it  
> >> could be its own project as well.
> >
> > Would it be a different community of committers? I suspect it's
> > largely the same people as commit to Roller. I'm +1 on continuing to
> > grow it within Roller at the moment, once it can be deployed
> > independently it'll either become popular on its own or build its own
> > community, or it'll turn out that no one wants to do that anyway.
> >
> 
> Whoa!
> 
> I'm totally against the idea of breaking Planet out into a separate  
> Apache project with it's own set committers. I was thinking more  
> along the lines of "IDE project file." This is a code organization  
> and build script thing, not a people thing, right?
> 
> You weren't proposing a whole new Apache project were you Allen?
> 
> The Apache Roller project can certainly ship different modules or  
> applications like Roller Admin Console, Roller Planet Server or even  
> Roller Blog Client.

Nope, that's not what I was suggesting.  I am more than happy to keep it as part of the Apache Roller project and just keep it in its own place, like the way the sandbox works.

I suppose the one nice thing about it being its own project is that then it would be easier to recruit interest in it, but that's not what my original intentions were.

-- Allen


> 
> - Dave
> 
> 
> > Hen
> 


Re: Planet Roller as its own project

Posted by David M Johnson <Da...@Sun.COM>.
On Mar 3, 2006, at 6:40 PM, Henri Yandell wrote:

> On 3/3/06, Allen Gilliland <Al...@sun.com> wrote:
>> On Fri, 2006-03-03 at 15:16, Sean Gilligan wrote:
>>> Allen Gilliland wrote:
>>>
>>>> that's fine.  we don't have to remove it from the release  
>>>> itself, but i do still think that we should move the code out  
>>>> into it's own unique project space.
>>>>
>>>
>>> How would this fit in with the move to ASF?
>>
>> that i'm not sure about.  i don't have any problems with managing  
>> it as an independent module of the Roller project, but i think it  
>> could be its own project as well.
>
> Would it be a different community of committers? I suspect it's
> largely the same people as commit to Roller. I'm +1 on continuing to
> grow it within Roller at the moment, once it can be deployed
> independently it'll either become popular on its own or build its own
> community, or it'll turn out that no one wants to do that anyway.
>

Whoa!

I'm totally against the idea of breaking Planet out into a separate  
Apache project with it's own set committers. I was thinking more  
along the lines of "IDE project file." This is a code organization  
and build script thing, not a people thing, right?

You weren't proposing a whole new Apache project were you Allen?

The Apache Roller project can certainly ship different modules or  
applications like Roller Admin Console, Roller Planet Server or even  
Roller Blog Client.

- Dave


> Hen


Re: Planet Roller as its own project

Posted by Henri Yandell <fl...@gmail.com>.
On 3/3/06, Allen Gilliland <Al...@sun.com> wrote:
> On Fri, 2006-03-03 at 15:16, Sean Gilligan wrote:
> > Allen Gilliland wrote:
> >
> > > that's fine.  we don't have to remove it from the release itself, but i do still think that we should move the code out into it's own unique project space.
> > >
> >
> > How would this fit in with the move to ASF?
>
> that i'm not sure about.  i don't have any problems with managing it as an independent module of the Roller project, but i think it could be its own project as well.

Would it be a different community of committers? I suspect it's
largely the same people as commit to Roller. I'm +1 on continuing to
grow it within Roller at the moment, once it can be deployed
independently it'll either become popular on its own or build its own
community, or it'll turn out that no one wants to do that anyway.

Hen

Re: Planet Roller as its own project

Posted by Allen Gilliland <Al...@Sun.COM>.
On Fri, 2006-03-03 at 15:16, Sean Gilligan wrote:
> Allen Gilliland wrote:
> 
> > that's fine.  we don't have to remove it from the release itself, but i do still think that we should move the code out into it's own unique project space.
> > 
> 
> How would this fit in with the move to ASF?

that i'm not sure about.  i don't have any problems with managing it as an independent module of the Roller project, but i think it could be its own project as well.

-- Allen


> 
> -- Sean


Re: Planet Roller as its own project

Posted by Sean Gilligan <se...@msgilligan.com>.
Allen Gilliland wrote:

> that's fine.  we don't have to remove it from the release itself, but i do still think that we should move the code out into it's own unique project space.
> 

How would this fit in with the move to ASF?

-- Sean

Re: Planet Roller as its own project

Posted by Allen Gilliland <Al...@Sun.COM>.
On Fri, 2006-03-03 at 14:15, David M Johnson wrote:
> Comments below...
> 
> On Mar 3, 2006, at 4:36 PM, Allen Gilliland wrote:
> 
> > I had a short discussion about this with Dave following some  
> > comments I had about the first draft of the Atlas proposal and I  
> > wanted to follow up here on the list.  I think that now is the  
> > right time to start to push the Planet aggregator specific code out  
> > into it's own project.  Here are some reasons to do this ...
> >
> > 1. maintain proper decoupling of Roller and planet code.  the core  
> > and planet code serve two very different functions which in many  
> > cases will want to be used independently.  moving the planet code  
> > into its own project ensures that as we move forward there is no  
> > undesired dependencies between the two code bases.
> >
> > 2. keep Roller codebase as trimmed and clean as possible.  by  
> > moving the planet code into its own project we not only trim down  
> > the Roller code base but we can also trim down on library  
> > dependencies, etc.  this reduces maintenance overhead on Roller  
> > developers who are not as interested in working on the planet  
> > codebase, keeps the Roller webapp as compact as possible, and also  
> > lessens the learning curve for new Roller developers because there  
> > is less code.
> >
> > 3. makes it easier to use the planet code independently.  i believe  
> > one of the ultimate goals of the planet code is to provide a  
> > standalone solution for content aggregation and it is much easier  
> > to do that if the code is in its own project.  of course, we still  
> > want to allow for good integration between Roller and the planet  
> > code, but i don't think that will be hard.  this also provides an  
> > opportunity for developers to work on the planet code who are not  
> > interested in working on Roller itself.
> 
> 
> Just to state/restate my position:
> 
> The goal of the planet code was to allow externally hosted blogs to  
> be included in the aggregation on the front page of the Roller site  
> and the administration of that feature to be included in the Roller UI.

sounds like a good feature.

> 
> I'm definitely -1 on removing Planet from the standard release of  
> Roller. I don't see any reason to remove that feature.

that's fine.  we don't have to remove it from the release itself, but i do still think that we should move the code out into it's own unique project space.

the only difference would be that instead of building Roller, which includes the planet code in it right now.  you would build the planet code as its own module (jar file) and include that jar file when doing a Roller build.

> 
> I'm +1 on making it possible to create a standalone version of Planet  
> (not just a command line Planet tool) and that definitely requires  
> some decoupling and more modularity.

that's all that i am proposing.

i happen to believe this is best done by isolating the planet code and ensuring there is no inappropriate dependencies between the 2 codebases.

-- Allen


> 
> - Dave


Re: Planet Roller as its own project

Posted by David M Johnson <Da...@Sun.COM>.
Comments below...

On Mar 3, 2006, at 4:36 PM, Allen Gilliland wrote:

> I had a short discussion about this with Dave following some  
> comments I had about the first draft of the Atlas proposal and I  
> wanted to follow up here on the list.  I think that now is the  
> right time to start to push the Planet aggregator specific code out  
> into it's own project.  Here are some reasons to do this ...
>
> 1. maintain proper decoupling of Roller and planet code.  the core  
> and planet code serve two very different functions which in many  
> cases will want to be used independently.  moving the planet code  
> into its own project ensures that as we move forward there is no  
> undesired dependencies between the two code bases.
>
> 2. keep Roller codebase as trimmed and clean as possible.  by  
> moving the planet code into its own project we not only trim down  
> the Roller code base but we can also trim down on library  
> dependencies, etc.  this reduces maintenance overhead on Roller  
> developers who are not as interested in working on the planet  
> codebase, keeps the Roller webapp as compact as possible, and also  
> lessens the learning curve for new Roller developers because there  
> is less code.
>
> 3. makes it easier to use the planet code independently.  i believe  
> one of the ultimate goals of the planet code is to provide a  
> standalone solution for content aggregation and it is much easier  
> to do that if the code is in its own project.  of course, we still  
> want to allow for good integration between Roller and the planet  
> code, but i don't think that will be hard.  this also provides an  
> opportunity for developers to work on the planet code who are not  
> interested in working on Roller itself.


Just to state/restate my position:

The goal of the planet code was to allow externally hosted blogs to  
be included in the aggregation on the front page of the Roller site  
and the administration of that feature to be included in the Roller UI.

I'm definitely -1 on removing Planet from the standard release of  
Roller. I don't see any reason to remove that feature.

I'm +1 on making it possible to create a standalone version of Planet  
(not just a command line Planet tool) and that definitely requires  
some decoupling and more modularity.

- Dave