[Nitro] Questions to help me evaluate Nitro

Mark Van De Vyver mvyver at gmail.com
Mon Sep 3 02:50:35 EDT 2007


> > I have a very database-centric view of web apps: I see the data as
> > the core of any project and the application just a means to do
> > something useful with it.  This seem at odds with the Og philosophy
> > that the object model is key, and the database is used to support it.

I'm new to OG but I had formed the view that OG tries to make the
data(base) and the OG model indistiguishable - as much as that can be
done.  So it seems to me that your db-centric view and OGs' approach

> > With Rails, I am constantly doing database-level changes, like
> > renaming columns, moving columns from one table to another, inserting
> > or deleting static data, setting arbitrary constraints (eg CHECK).

I'm using OG because my understanding - confirmed in an earlier email
was that this
duplication of effort is eliminated if you use OG in its default mode
(a data mapper).
If control of the db/table structure is outside of your control
(fortunately not my situation), or you manually want to make some db
changes, then it seems you can still use OG as a data wrapper.

> > The blog example makes it look like everything must be done with Og
> > black magic.

Maybe that should be Ruby black magic?  OG implements some neat ideas
but seems to do it in a very 'Ruby-way'.  Lots of Meta programming
(all very new to me, but _very_ interesting.)
Another reason I chose OG is because it seems to be more ruby like.
This impression I formed from some emails - I've not used Rails/AR so
I could be off the mark here.

My 2c :)

> > Will I need to build my own migration system to get the level of
> > database control I'm used to?  (Or I could hijack ActiveRecord
> > Migrations for this, I guess.)
> Og works both as an object-to-relational mapper (default mode) and as a
> relational to object mapper. Ie,
> you can manually change your  schema (as you do in AR) and just add your
> attributes to your classes. If you follow
> some simple conventions with your schema changes everything will work. I am
>  doing this all the time.
> Please note that Og also provides an *automatic* evolution schema. For
> example if you add or remove or rename attributes
> in your model classes, Og automatically detects theses changes and
> automatically changes the relational schema
> accordingly.
> > RSpec for each of the MVC layers?  How about integration tests - are
> > there any best practices for integrating, say Watir into a Nitro
> > app's development cycle?
> Older versions of Nitro offered support for unit/integration testing. This
> code is currently out-of-date in the repository
> version :( I plan to actively work on this, this month though. I *need*
> testing infrastructure for my current project so you can be sure that
> testing  support will be back sooner rather than later.
> > One nice thing about Rails due to its popularity relative maturity is
> > that if you've thought about it, at least three other people have
> > too, and one has certainly written a plugin for it.  What's the
> > situation in Nitro?  Is there a lot of wheel-reinvention needed for
> > things Rails people take for granted?  I'm sure this is very much
> > dependent on the exact problem you are trying to solve.
> Nitro is quite compatible with Rails. I find it *extremely* easy to
> 'convert' most Rails plugins for my own usage.
> >   If I
> > start building a Nitro app tomorrow, will I find myself spending the
> > first month just trying to figure out basic things?
> The lack of proper documentation is the biggest problem in Nitro. But the
> mailing list is pretty helpful. I would say go for it, and we will help you
> as much as possible.
> > I've been a bit spoilt by RJS.  Will I be forced to (finally,
> > grudgingly) learn JavaScript?  Does Nitro have an equivalent means of
> > sending multiple updates to a page?  With RJS, I can pretty much
> > reconfigure a whole page with a few lines of Ruby. It's often not
> > perfect, but it's a real time saver.
> The latest versions of Nitro promote the usage of JQuery. JQuery renders a
> system like RJS obsolete. You can do everythinthing just as consize and be
> more flexible with JQuery. Now that you mention it, I will keep in mind to
> provide some example about how I am using JQuery with nitro for some cool
> and extremely easy to implement ajax effects. JQuery is so powerfull that I
> decided to remove all the old javascript helpers. You just don't need
> helpers with JQuery.
> > - Real World Use -
> >
> > Are there any lists of Nitro-powered sites so I can see what people
> > have achieved?  I don't doubt you can build large, robust apps with
> > Nitro (I still work with people who question if you can do that with
> > Rails), I'd just like to know what they are.
> >
> I am about to use Nitro on a *really big project*. Some earlier public
> exaples are:
> - www.cull.gr
> - www.joyerz.com
> - www.phidz.com
> - www.ruby-doc.org
> I hope this  helps,
> -g.
> --
> http://www.me.gr
> http://phidz.com
> http://blog.gmosx.com
> http://cull.gr
> http://www.joy.gr
> http://nitroproject.org
> _______________________________________________
> Nitro-general mailing list
> Nitro-general at rubyforge.org
> http://rubyforge.org/mailman/listinfo/nitro-general

More information about the Nitro-general mailing list