More 'About Storm'
Mark Ramm
mark.mchristensen at gmail.com
Thu Jul 12 15:25:05 BST 2007
Thanks for the quick response. Fundamentally the problem is your
opening line to the list which claims that those are the things which
make Storm different from other projects -- and I don't think that's
what the list is for.
To be more specific, unless I'm reading your list wrong SQLAlchemy
does have all the "features" on your list.
Even more strange it seems that Storm does not have all of them. (Was
it really designed from day one oracle support, considering you don't
list oracle support as a feature now?)
So, let's put a finer point on it are ANY of these features unique to storm?
If you're telling me why Storm is different (and that's something I
really want to know!) I think you should actually focus on things that
are different, and this list ain't it.
If you just want to list a bunch of cool features, drop the "storm is
different to [sic] other Python ORM's line" because the net effect is
to create the false impression that other python ORM's don't do the
things on the list, and that frankly makes my marketing bullshit
sensor go off.
You can list features you have without saying that other ORM's don't
have them. Or you can list features that make you different, but
don't by confusing the two you effectively are saying that nobody else
has those features -- and that's just plain false information.
--- Mark Ramm
On 7/12/07, Stuart Bishop <stuart.bishop at canonical.com> wrote:
> Mark Ramm wrote:
> > Just my 2 cents, but this approach seems a bit heavy-handed to me.
> >
> > Do you really think that *none* of the other Python ORM's provide any
> > of the features listed here? If so, I think you may be missing one or
> > two projects. ;)
>
> Of course other Python ORMs provide some of the features listed here. I
> don't think any of the others meet *all* the points listed here though, and
> if they do the list should be extended as the goal is to point out how come
> Storm is different and has a reason for existing. And if such a list cannot
> be made, it really shouldn't exist as it would just be a reinvented wheel.
>
> The front page should give developers enough information to decide if Storm
> might be right for their project or not. It is also good to list things that
> Storm doesn't do, so perhaps
>
> * Does not generate your database schema.
>
> Which is either a positive or negative depending on your POV, so we cannot
> categorize such a list into positive and negative features. Indeed - Storm's
> ability to work easily with multiple datastores could be seen as a
> negative, as it generates a little complexity and abstraction that is not
> needed for the vast bulk of projects out there. Also 'not dictating your
> data model' - some people love object databases because they don't have to
> do all that 'icky database design stuff, and an ODB or an ORM that generates
> a schema can be great for small projects that have no need to invest time is
> designing their storage layout.
>
> > I'm hoping that we can avoid some my "ORM is better than yours
> > flamewars" (perhaps initiated by people out side of the Storm
> > community) and actually have a discussion of relative technical
> > merits. And the "nobody else has ever done this" tone of this
> > message seems a bit incendiary, so I'm hoping it gets a bit of editing
> > before it becomes the "official" marketing message.
>
> Sure. I tried to be non-incendiary, but posted it to the list so it can go
> through the 'political filter' rather than editing the front page directly
> so wording changes and suggestions are fine by me :) It would be extremely
> bad form to belittle other projects for Storm's benefit, particularly since
> it is really standing on the shoulders of earlier projects (even when these
> projects showed what *not* to do in some cases - if they hadn't made those
> design choices Storm devs might have and shot themselves in the foot).
> However, Storm does need to point out what it can do or it will just be
> ignored, with devs not even bothering to download it when evaluating tools
> for a project. At the moment, it just tells people it is 'an
> object-relational mapper for Python' which is as nearly content free as
> possible :-/ Wearing my Python developers had, if I was evaluating ORMs and
> wasn't using external recommendations, I would not get beyond the front page
> of Storm - it would fall of my radar after one click. Which is all extremely
> non-incendiary and non-confrontational, but not really fair to Storm which
> happens to rock.
>
> IIRC Storm was developed and adopted because one of the Canonical projects
> needed a feature that just did not exist in anything else *right now*, and
> it was determined that it was quicker to implement the basic ORM with that
> feature that integrate it into any of the other projects that where looked
> at. And given how quickly the basics where implemented and integrated into
> that project, I think that the call was right. Should something like this
> (or the true account IIRC incorrectly) be there too?
>
> From other messages in this thread, we should also list:
>
> * Pure Python, running everywhere Python does (Linux, Windows, Mac OSX, and
> many, many more).
>
> (I'm pretty certain all the existing ORMs meet that, and they should all
> mention it because Python rocks too).
>
>
> --
> Stuart Bishop <stuart.bishop at canonical.com> http://www.canonical.com/
> Canonical Ltd. http://www.ubuntu.com/
>
>
>
--
Mark Ramm-Christensen
email: mark at compoundthinking dot com
blog: www.compoundthinking.com/blog
More information about the storm
mailing list