Canonical Begins To Open-Source Launchpad 65
kripkenstein writes "Canonical, the corporation behind Ubuntu, has begun to open-source Launchpad. Canonical has been criticized for not doing so earlier. The first component of Launchpad to be open-sourced is Storm, described as an 'object-relational mapper for Python.' A tutorial with many examples is available. The license for Storm is the LGPL 2.1. Inspection of the source files shows they contain the common phrase, 'either version 2.1 of the License, or (at your option) any later version,' meaning that Storm is LGPLv3-compatible."
Storm? (Score:4, Informative)
Re:It's Always a Choice (Score:3, Informative)
Or, maybe the component contains code that's only available under a license that's not GPL 3.0 compatible.
One Launchpad to rule them all.. (Score:5, Informative)
Re:ORM == good (Score:4, Informative)
> This is from someone who is trying to perform queries on someone else's database designed with Hibernate. One that has 12 million rows (average row size, 9KB). Which has been running my simple query for 40 minutes.
Don't get me wrong, bad database design is bad database design whether it is ORM or any other technology. Something tells me that based on the average row size of 9KB, I'm thinking this table does not really follow good relational design principles (1st normal form, I'm guessing). I've had a project where the data grew quite quickly, quicker than we had anticipated and the database needed optimized. Fortunately, since we were using Spring backed with Hibernate, we had interfaces defined for all of our persistent objects. Our solution was to use iBATIS to get some more granularity with our database queries, build some stored procedures (so that the query plan would be compiled) and add an index or two. The iBATIS classes were retro-fitted to implement the interfaces for the hibernate objects and then all we had to do was tell Spring to use the iBATIS objects rather than the Hibernate objects. Surprisingly, all of the unit tests passed and post-install, we increased our performance quite drastically. The whole project went as smooth as you could hope and I was pleasantly surprised because I really didn't think it would work out. I've been a fan-boy ever since. I still start with hibernate because it does help cut-down the design time, and I believe that "premature optimization is the root of all evil" (Knuth) -Wes
Re:ORM == good (Score:5, Informative)
Decent ORMs do nothing but map object operations into SQL statements. SQL from an ORM tool is not going to magically work more faster or slower than a hand-written one.
Again, decent DB schemas (i.e. fairly normalized ones) map nicely into object models (hell, ER-diagrams used to model relational tables map directly into object diagrams). It's the databases with weird tables without PKs and strange stored procs which do not map well.
I've worked with Hibernate application handling OLAP operations on 10 terabytes of data without any problems.
We shall remember rosetta bug #44 (Score:2, Informative)
Rosetta Bug #44,
"Translations should be searchable"
first reported on 2005-01-10
Today it completes exactly 2,5 years of waiting and nothing!
https://bugs.launchpad.net/rosetta/+bug/44 [launchpad.net]
Re:One Launchpad to rule them all.. (Score:5, Informative)
Re:One Launchpad to rule them all.. (Score:2, Informative)
Re:begins? (Score:3, Informative)
Re:ORM == good (Score:4, Informative)
Incorrect Usage: Human writes an object spec. ORM auto-generates SQL schema. Human blindly uses machine-generated ORM bindings without understanding underlying SQL. Database gets mildly large, then human complains "the stupid thing is slow".
If ORM is done for convenience, great! That's what I use it for.
If ORM is used in lieu of understanding how SQL works, you could be headed for trouble.
Re:It's Always a Choice (Score:3, Informative)
revenue isn't profit. Sure they are generating quite a bit of revenue for the relatively small staff, but there's no indication of what their operational cost is. Considering they do stuff like mailing out free CDs to anyone that requests it and likely many other nice gestures for the community, their operational cost is probably also high.
Having said that, I do sincerely hope they are and can remain in the black.
Re:One Launchpad to rule them all.. (Score:4, Informative)
Re:ORM == good (Score:3, Informative)