The Even Bigger News About Maglev

I’m not at Railsconf this year, but before he left I asked my coworker Krishna to beg for, borrow, or steal a copy of the Maglev alpha code and bring it back to the office. Unfortunately, it looks like that’s not going to happen (in an email he says “They don’t have anything to share at the moment”), damn it.

Still, as Obie says, this is a huge deal. Even without the stated performance improvements that they’re already seeing (I’m hearing 5x to 100x in microbenchmarks vs the MRI), it would still be a huge deal, because this might be our best chance ever to move people to a real object database. And not just any object database, but one of the best object databases out there.

Once you use it, you won’t ever want to go back.

As far as I’m concerned though, the bigger news about this is that the Maglev VM “does retain the ability to run Smalltalk code.” As long time readers of this blog know, I’m a big fan of Smalltalk and the Seaside framework, and being able to start a project in Rails and then use the same data to build a Seaside app will knock down another huge barrier as far as getting people to try Seaside goes, (see my my post from a year and a half ago about sneaking Smalltalk in through the Ruby backdoor).

In my experience, Seaside makes writing web applications faster and easier than even Rails does.

Paul Graham is well known for saying that their secret weapon while developing Viaweb was Lisp, because it let them develop software faster than any of their competitors.

Ruby + Smalltalk + Gemstone is your secret nuclear weapon.

Not only will it let you develop software faster than any of your competitors, it will also let you scale that software in an easier manner than ever before.

  • Yeah, I'm really liking the idea of MagLev as a way of exposing the rapidly expanding Rails generation to the idea of Smalltalk, allowing smalltalk to call ruby to call smalltalk, thus getting the best of both the legacy code from smalltalk as well as the newly created ruby gems.
  • This fucking rocks. So how do we convince GemStone to release some code on github ASAP so we can all start contributing?
  • @Dan: I doubt that's going to happen, at least for now. Hopefully they'll keep a nice separation between their OODB and VM (which are both going to cost $$$ when you get over a certain size) and the code that they're writing to implement Ruby on top of it. That code could be useful to Rubinius, as well as anyone else who wants to hack on implementing a Ruby VM.
  • ben@mailinator.com
    Yah, let's all move to a proprietary system, just because it makes us faster. Don't you know there are frameworks like rails (commercial grade) that have been around for years, but were proprietary.

    Do you honestly think gemstone will open source it?
  • Obie
    Glad to see I'm not the only one excited by this stuff.

    I found your "sneaking" comment interesting, because it would also be a way to sneak Ruby into the backdoor of Gemstone clients that already run large mission-critical apps in Smalltalk! (And presumably there are quite a few of those places, and they have lots of money.)
  • cies
    i so hope they can adopt a licensing model like Qt: GPL for GPL'ed applications, commercially licensed for commercial apps.

    ofcourse GPL needs some "web-application clause"

    (((
    like:
    http://www.fsf.org/licensing/licenses/agpl-3.0....
    saying:
    ""Notwithstanding any other provision of this License, if you modify the Program, your modified version must prominently offer all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to the Corresponding Source from a network server at no charge""
    )))

    but then i think it would be a licensing model that is acceptable by both the community and the business supporting gemstone.

    and look at the old financial reports of trolltech (before it was bought by nokia), they where doing really good..
  • cies
    ..ohh i was not finished..

    i think actually frameworks like merb or sinatra are more interesting for running on gemstone, as they're not so dependent on ActiveRecord. gemstone basically renders much of AR useless, right? one can just use plain ruby model classes right? (maybe inheriting/mixing-in some functions for validating/persisting/cascading stuff)
  • Roy
    After RoR we switched to Seaside and Smalltalk using Gemstones GLASS. Just powerfull ...
    (seaside.gemstone.com)
blog comments powered by Disqus