BT

Facilitating the Spread of Knowledge and Innovation in Professional Software Development

Write for InfoQ

Topics

Choose your language

InfoQ Homepage News New Version of Nitro/Og Web Framework Released

New Version of Nitro/Og Web Framework Released

Bookmarks

The Nitro/Og team recently released version 0.40.0 of their web development framework and ORM.  Nitro and Og are a less well known alternative to Ruby on Rails (and its ORM, Active Record) that bear looking into.

I asked George Moschovitis what he thought Nitro and Ogs biggest strengths are and he said, "Totally transparent web/db development. Creating a web or db application is like creating a standard ruby application."

George also provided a couple of quick examples.  For Nitro:

class HelloWorld
  def index
    print "hi"
  end

  def hello
    "hello world"
  end

  def math(val1, val2)
    print "The sum is #{val1} + #{val2}"
  end
end

Nitro.start(HelloWorld)
 
And for Og:
class Article
  is Timestamped
  is Taggable

  attr_accessor :title, String
  attr_accessor :body, String
  attr_accessor :hits, Fixnum
  belongs_to :category
end

class Category
  has_many :articles
end

Og.start

Og represents a pretty big departure from the ActiveRecord model that a lot of developers are used to.  It maps Ruby objects to sql tables (non-sql too, if you'd rather go that way) instead of the other way round.  In fact, Og will even create your DB tables for you transparently, if they don't already exist.

Nitro and Og have been around for about as long as Ruby on Rails, but they'e still not hit a 1.0 release.  When I asked him about this, George explained:
Please note that 0.40.0 is not 0.4.0. There were 40 revisions, after 0.9.0 we got to 0.10.0, not 1.0.0. Kind of like there is gnome 2.16.0 instead of 3.0.0

But, it is true that the community is much slower, and the fact that I as the main developer had to finish with my army service (Just finished 1 week ago, that is why you see this new release ;-))

But the community is getting stronger and I hope we will tackle Nitro's biggest problem, lack of documentation.

Nitro and Og represent a different way of doing web development with Ruby.  Do yourself a favor and go check them out.  Even if you don't become a convert it will help you think about how you use Ruby and Ruby on Rails.

Rate this Article

Adoption
Style

Hello stranger!

You need to Register an InfoQ account or or login to post comments. But there's so much more behind being registered.

Get the most out of the InfoQ experience.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Community comments

  • RoR and Nitro/Og

    by Alex Popescu,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    With the current exposure of RoR, I am wondering what chances Nitro/Og has. I have heard really good things about it, but it may be missing the "guerilla marketting" around RoR.

    ./alex
    --
    :Architect of InfoQ.com:
    .w( the_mindstorm )p.
    Co-founder of InfoQ.com

  • Templates

    by Sam Smoot,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    If only the templates weren't custom. I've never understood why Nitro didn't just use erb.

    Still, there's a lot of things about Nitro/Og I like a lot.

  • Re: Templates

    by Alex Popescu,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    Sam, it would be great to let us know what are at least the top 5 things you like about Nitro/Og, so that others will understand its benefits.

    TIA,

    ./alex
    --
    :Architect of InfoQ.com:
    .w( the_mindstorm )p.
    Co-founder of InfoQ.com

  • Re: Templates

    by Jonathan Buch,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    erb is not XML compatible, that was the main reason for George. The custom templates can be a validated with xml tools, which is a plus.

    The custom templates also nicely precompile to pure ruby code, which makes them fast.
    Downside... well, one has to learn another type of syntax, which is like a hybrid between IOWA, PHP and pure Ruby.

    Well, at least it's flexible, which is why Nitro is so cool.

  • Re: Templates

    by James Britt,

    Your message is awaiting moderation. Thank you for participating in the discussion.

    I'm not Sam, but ...

    Things I like about Og/Nitro:

    * I can focus on Ruby objects, not database tables

    * My apps can seamlessly evolve from a single static HTML page to fully-dynmaic, databased-backed Web apps

    That's it. 2, not 5, things. But it can make all the difference; you need to pick the right tool for the job, and know how to make the best use of the various Ruby Web toolkits.

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

Allowed html: a,b,br,blockquote,i,li,pre,u,ul,p

BT