Object Relational Mappers are evil (a meditation)

Simon Forman sajmikins at gmail.com
Tue Oct 6 17:10:45 CEST 2009


On Tue, Oct 6, 2009 at 2:00 AM, Carl Banks <pavlovevidence at gmail.com> wrote:
> On Oct 5, 7:25 am, Aaron Watters <aaron.watt... at gmail.com> wrote:
>> This is a bit off topic except that many Python
>> programmers seem to be allergic to typing SQL.
>>
>> RESOLVED:  Using ORMs leads lazy programmers
>> to make bad database designs.  It's better to
>> carefully design your database with no invisible
>> means of support and there is no reason to not
>> use SQL directly for this purpose.
>
> Yeah sure, whatever.  I'm sure a good programmer could use sql
> directly and produce a tighter, faster, better-performing application
> than an ORM-solution, same as you could use C to produce a tighter,
> faster, better-performing application than a pure Python one.
>
> No thanks, you can write your databases in database assembly language
> if you want, I'll stick to my ORM, tyvm.
>
> Isn't WordPress written in PHP?  Are ORMs even possible in PHP?  I can
> almost rationalize use of direct sql if the alternative is some
> hellspawn PHP ORM.
>

I recently had the uncomfortable task of picking an ORM to use in a
php project for a start up.

There's something called RedBean http://www.redbeanphp.com/ that's
actually pretty effin sweet (IMHO).  Sweet enough that I'm considering
porting it to python.

It's more of a RAD tool than something you'd want to use in production.

As far as the OP rant goes, my $0.02:  bad programmers will write bad
code in any language, with any tool or system or environment they're
given.  If you want to avoid bad code there's (apparently) no
substitute for smrt programmers who are familiar with the tools
they're using, not just the syntax but the underlying conceptual
models as well.

That said, "I feel ya bro'"



More information about the Python-list mailing list