For what it is worth, going forward, we hope to work more closely with
framework/library developers in addition to supporting JDO/JPA. We're
still keen on updating JDO/JPA, but many of the third party developers
may beat us to features that we release in the low-level API. For
instance, AsyncDatastore is something we officially released in 1.4.0,
but Twig has had this for some time now, and I've worked a bit with
John Patterson to have the library do the operations the *right* way,
not sure if that's released yet. Async writes aren't available in
JDO/JPA yet.

If you haven't yet looked at Slim3, they have a fairly large community
in Japan. It's less a persistence layer and more a full stack
framework. I really like how they baked in testing in the code
generators.

--
Ikai Lan
Developer Programs Engineer, Google App Engine
Blogger: http://googleappengine.blogspot.com
Reddit: http://www.reddit.com/r/appengine
Twitter: http://twitter.com/app_engine



On Sat, Dec 4, 2010 at 1:26 PM, tfannon <[email protected]> wrote:
> I'd agree wrt/ JDO/JPA.
>
> We came into our first app trying to use the JDO/JPA.  In addition to
> being clunky, I also noticed that the Data Nucleus guys were not all
> that thrilled with Google's implementation of it.  If you google
> around you will see what I am talking about.
>
> I tried Objectify and Twig, liked both,  but liked the Objectify
> support and community they have built around it.  I think you'd be
> better off with one of those.
>
> -TF
>
>
> On Dec 4, 12:30 pm, Jeff Schwartz <[email protected]> wrote:
>> JDO and JPA are not standards when it comes to the Data Store. You need to
>> rid yourself of thinking in terms of SQL. Repeat after me 100 times: The
>> Data Store is NOT SQL... The Data Store is NOT SQL. LOL.
>>
>> Ok, with that confusion out of the way, Google doesn't care 1 iota if you
>> use their low level native api, jdo/jpa or a 3rd party library so why should
>> you chose jdo/jpa which is so far removed from the data store model
>> conceptually that is makes no sense?
>>
>> jdo/jpa are sql persistence technologies not suitable to the hashmap like
>> qualities of the datastore. The further you remove yourself from sql
>> solutions the better off you will be.
>>
>> By the way, using Objectify you can disable the datanucleus builder in
>> eclipse and thats is a good thing as per Martha Stewart ;)
>>
>> Jeff
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> On Sat, Dec 4, 2010 at 12:12 PM, har_shan <[email protected]> wrote:
>> > Thanks all for sharing your opinions/experiences.
>>
>> > I read a lot of positive reviews about these third party libraries, in
>> > particular, Objectify, but we feel kinda safe to be based on a
>> > standard.
>>
>> > But are there any major show stoppers or something that makes to
>> > struggle a lot to accomplish sth
>> > while using JPA in particular, which made you to move to third party
>> > libraries?
>> > (noted the point about detach() method mentioned earlier, thanks)
>>
>> > Thanks again for sharing,
>> > Hari
>>
>> > On Dec 4, 9:38 pm, Jeff Schwartz <[email protected]> wrote:
>> > > I've used Objectify in 2 applications now and it has been a very positive
>> > > experience, living up to my expectations of what a library of that nature
>> > > should do. What's more, it keeps getting better and better. I give it 2
>> > > thumbs up and a snap!
>>
>> > > Jeff
>>
>> > > On Sat, Dec 4, 2010 at 11:18 AM, Dave Watson <[email protected]
>> > >wrote:
>>
>> > > > Agreed 100%. It's a great library, very simple and easy to use. It's
>> > > > similar to the Python API, but in my opinion even better because it's
>> > > > obvious what's going on, whereas the Python API has "magic" like auto-
>> > > > fetching of ReferenceProperties, which can cause really terrible
>> > > > performance if you don't realize what it's doing.
>>
>> > > > On Dec 3, 12:51 pm, Jeff Schwartz <[email protected]> wrote:
>> > > > > Neither. Go with Objectify.
>>
>> > > > > Jeff
>>
>> > > > > On Fri, Dec 3, 2010 at 12:18 PM, har_shan <[email protected]>
>> > wrote:
>> > > > > > yes, this is there all over internet and like any other appengine
>> > > > > > newbie am in same dilemma but now i want to hear recommendation
>> > from
>> > > > > > those who have used/tried both and hence their experiences
>>
>> > > > > > also i know that Google doesn't play favorites and
>>
>> > > > > > Max Ross has said in his blog...
>>
>> > > > > >    I'll give you the same answer I give whenever I'm asked this
>> > > > > > question:
>> > > > > >    If you're not already familiar with JDO or JPA, use JDO because
>> > > > > > our documentation is better. If you're more familiar with JDO than
>> > > > > > JPA, use JDO. If you're more familiar with JPA than JDO, use JPA.
>> > If
>> > > > > > you're equally familiar with both then you probably have a
>> > preference,
>> > > > > > so use the one you prefer.
>>
>> > > > > > Personally i have worked in a pet project using JPA + Hibernate, so
>> > am
>> > > > > > inclined towards JPA as am bit familiar.
>>
>> > > > > > BUT am starting a new app in appengine so want to be sure that am
>> > in
>> > > > > > right path. I know that in appengine some features are missing in
>> > impl
>> > > > > > from both JPA/JDO, due to datastore constraints, but i do not want
>> > to
>> > > > > > face a situation in future when i hear that life would have been
>> > easy
>> > > > > > when i have chosen JDO for AppEngine!
>>
>> > > > > > Am also ready to spend time learning JDO if its really worth it. So
>> > > > > > guys, please share your experiences! As always thank much in
>> > advance..
>> > > > > > Ask me more if needed..
>>
>> > > > > > Hari
>>
>> > > > > > --
>> > > > > > You received this message because you are subscribed to the Google
>> > > > Groups
>> > > > > > "Google App Engine" group.
>> > > > > > To post to this group, send email to
>> > [email protected]
>> > > > .
>> > > > > > To unsubscribe from this group, send email to
>> > > > > > [email protected]<google-appengine%2Bunsubscrib
>> > > > > >  [email protected]>
>> > <google-appengine%[email protected]<google-appengine%252Bunsub
>> >  [email protected]>
>> > ><google-appengine%2Bunsubscrib
>> > > > [email protected]>
>> > > > > > .
>> > > > > > For more options, visit this group at
>> > > > > >http://groups.google.com/group/google-appengine?hl=en.
>>
>> > > > > --
>> > > > > *Jeff Schwartz*
>>
>> > > > --
>> > > > You received this message because you are subscribed to the Google
>> > Groups
>> > > > "Google App Engine" group.
>> > > > To post to this group, send email to [email protected]
>> > .
>> > > > To unsubscribe from this group, send email to
>> > > > [email protected]<google-appengine%2Bunsubscrib
>> > > >  [email protected]>
>> > <google-appengine%[email protected]<google-appengine%252Bunsub
>> >  [email protected]>
>>
>> > > > .
>> > > > For more options, visit this group at
>> > > >http://groups.google.com/group/google-appengine?hl=en.
>>
>> > > --
>> > > *Jeff Schwartz*
>>
>> > --
>> > You received this message because you are subscribed to the Google Groups
>> > "Google App Engine" group.
>> > To post to this group, send email to [email protected].
>> > To unsubscribe from this group, send email to
>> > [email protected]<google-appengine%2Bunsubscrib
>> >  [email protected]>
>> > .
>> > For more options, visit this group at
>> >http://groups.google.com/group/google-appengine?hl=en.
>>
>> --
>> *Jeff Schwartz*
>
> --
> You received this message because you are subscribed to the Google Groups 
> "Google App Engine" group.
> To post to this group, send email to [email protected].
> To unsubscribe from this group, send email to 
> [email protected].
> For more options, visit this group at 
> http://groups.google.com/group/google-appengine?hl=en.
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en.

Reply via email to