[Nitro] Questions to help me evaluate Nitro

George Moschovitis george.moschovitis at gmail.com
Mon Sep 3 01:15:00 EDT 2007

> Basically my situation is I have been employed for the last 3 years
> doing sysadmin, DBA and Rails work, but I've recently handed my
> ...since I read anything about it.  I'm drawn to it because from what
> I've seen, it seems to have a sense of beauty that Rails lacks.
> (Rails is very clever, but it sure can be ugly at times.)

I am glad you appreciate Nitro's aesthetics ;-)

- Og -
> 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.
> 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).
> The blog example makes it look like everything must be done with Og
> black magic.
> 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

> 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,


-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://rubyforge.org/pipermail/nitro-general/attachments/20070903/4d8cea2d/attachment.html 

More information about the Nitro-general mailing list