[Nitro] 1.0 (revisited)

Bryan Soto bryan.a.soto at gmail.com
Fri Feb 3 18:40:25 EST 2006

Hello all,

Please forgive the lateness of response. Aside from the day job, there was
quite a bit to digest in this thread.

I think about Nitro and Og a lot. To me, they're fun to use They're flexible
and fit well with Ruby in general. They take care of details so I can
concentrate on my programming. And so I've invested a lot of time because I
want them to reach their full potential. I consider them to be my project. I
take bug reports as a personal failure, because once it's in the repository,
I consider it to be my code. No matter where the code originally came from.
Basically, I care about it and take pride in it. I don't think I'm alone in

As far as 1.0 goes, we all have different visions of what it will be. So
please everybody, talk about your ideas and contribute time to help Nitro
and Og reach them. Not all ideas will make the final cut, but Nitro and Og
will be better off for it. The only contribution I can make to that vision
currently is that the code base needs some refactoring to make it more
amenable to future changes. Overall, I think Nitro is in good shape, but
needs some good docs. Og though, I think, has some catching up to do.

Aidan, I personally thank you for your offer of assistance. I hope more
people will join in. George has been the heart and soul of this project, but
now we need to get along without him for awhile. That leaves a big void that
will have to be filled for Nitro and Og to thrive. I hope people will step
up to fill that void. At this point, I think there is plenty of room for
people to define their own role in the community. So you saying, "If I were
in charge of this project" becomes quite plausible. One simply has to get
others to follow to become a leader. Of course, that's also the hard part.

As far as milestones go, I'm happy to contribute my current to do list. Some
are little bug fixes, some are big changes. If anyone is looking for a way
to start helping, there might be something on this list for you. Hopefully
others will expand on this and we can start prioritizing and accomplishing.
My take is the bug fixes first, then the Og stores. I haven't really
prioritized the rest as of yet. It's not a mission statement or grand vision
(probably a good thing), but I think these are steps on the path to our
mythical 1.0. The order is not relevant in any way.

* All Og stores should be (relatively) interchangeable. Currently the
Postgres adaptor is the only store that handles constraints and I know the
Mysql db can. Kirby doesn't currently handle join tables at all, so
relationships don't work. I don't think it's necessary to emulate features
that the underlying store doesn't support though.

* When that's accomplished, articles and tutorials. As things currently
stand, you have to use Postgres to put Og in it's best light which kind of
defeats the purpose of what Og is supposed to do.

* Og refactoring. Store adaptors should be just that, adaptors. Things like
constraints, schema evolution, etc. should all be handled in the SqlStore
super class. The way things currently are, every single adaptor has the
schema evolution code cut and pasted in.

* Web site overhaul. The wiki is functional and should probably be linked
to, but it just doesn't impress. George's videos should probably be featured
more prominently as well.

* Nitro should respect the $GLUE_DONT_INCLUDE flag, i.e. Aspect in code
should be referred to as Glue::Aspect. As it is now, you get errors trying
to run a Nitro app with this flag set. Besides, when our name space is
clean, we can interact with other libraries better, e.g. Builder.

* Better support for YAML.

* More tests in the test suite.

* Nitro should generate proper XML. This might require another transform in
the compiler pipeline.

* Better support for multiple stores. The Og test suite not running was a
symptom of this.

* Schema inheritance has two currently outstanding bugs.

* Og.thread_safe not properly respected. When pooling, connections aren't
returned to the pool.

Anyway, I hope this sparks some conversation and interest. I hope to work
with all of you in improving Nitro and Og.


On 2/2/06, George Moschovitis <george.moschovitis at gmail.com> wrote:
> Hello Aidan,
> I more or less agree with you. As I said in an earlier post, I
> personally will not be able to work on Nitro for 1-2 months starting
> from February 13th. For this reason we will setup a 'stabilization'
> repository with help for the MotionPath guys. The idea is  during the
> next 1-2 months to stabilize the current version of Nitro:
> - cleanup the source code.
> - write more docs and example.
> - improve the website.
> But the community should really step up and help in this. There is a
> saying:
> 'put  your money where  your mouth is'
> Ie, if you really want to help improve Nitro in the way you describe
> please coordinate with Bryan Sotto, Guillaume and Chris/Rob who agreed
> to help in this stabilization project. Or you can follow the example
> of Emanuel Piperakis who 'sponsored' some Nitro features like WebFile,
> Og accumulator and more with a donation. Or you can  contribute a more
> concrete 'Business' plan for version 1.0. Or start evangelising nitro
> to attract some more people who could help here.
> Now, speaking about me. Please note that I do not have infinite time,
> and I have to work to earn  money. I am developing Nitro not to take
> over the world, but to learn something, use it in my own projects, and
> contribute something back  to the great Ruby community.
> About the documentation, I would like to write a book about Nitro/Og.
> Perhaps with the help of someone from our community (James Britt?) or
> as a Navel project or something.
> Let me close this post be restating: Nitro is here to stay. I like to
> parallelize Nitro-Rails with Ruby-Python/Perl. Python/Perl were better
> documented initially, had more users, and accused Ruby of copying
> ideas. But Ruby was introducing important differences in the mix, and
> eventually got the missing ingredients (docs, people).
> I suggest to stay on the Nitro camp, and help even more to improve the
> things that need improvement.
> best regards,
> George.
> PS: Lets hear some more people's opinion here. Lets here solutions,
> and practical ideas how we can make Nitro more a community project.
> --
> http://www.gmosx.com
> http://www.navel.gr
> http://www.nitrohq.com
> _______________________________________________
> Nitro-general mailing list
> Nitro-general at rubyforge.org
> http://rubyforge.org/mailman/listinfo/nitro-general
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://rubyforge.org/pipermail/nitro-general/attachments/20060203/1bc05985/attachment.html 

More information about the Nitro-general mailing list