[google-appengine] Re: Entities question

2009-01-17 Thread Bill

Chen,

Some differences between using an Ownership model and using a list of
references to CDs in a User entity:

1) You can store info associated with Ownership as mentioned in my
previous message.  So if you want to print all the CD titles owned by
a user, you could denormalize CD titles and duplicate that information
in Ownership entities.  Then, you do a query on Ownership entities
filtering for a specific User and the titles would be fetched.  In the
list of references, you'd have to actually retrieve each CD title or
store titles in the single User entity, which leads us to #2...

2) There's a cap on number of indexed properties.  See
http://groups.google.com/group/google-appengine/browse_thread/thread/d5f4dcb7d00ed4c6

I haven't tested this yet, but the cap on indexed properties will
really hamper your ability to have huge reference lists within a User
entity.  However, you could pickle/serialize your CD data into a blob
or text property which aren't indexed.

If you start storing the CD lists as blobs, though, you lose the
ability to do queries like "Show me all users that own CD X"


On Jan 16, 11:05 pm, Chen Harel  wrote:
> Bill if I use an ownership model,
> How do you fetch all the cds of a user?
> you select on Ownership, then get the tuples with user id / cd id
> Now you need to fetch many cd id from the CD entity..
> So what's the difference?
> If you store them as a list of IDs in the User, you still have to go
> over the CD and fetch for every ID,
> This still doesn't allow you to properly index your data, does it?
>
> On Jan 16, 8:14 pm, Bill  wrote:
>
> > > I'm not sure I've followed you with whole Ownership model..
> > > Isn't that a RDBMS approach to the data and not BigTable's?
>
> > The two approaches aren't mutually exclusive.  In the case of User <->
> > CD, a User can have thousands or more CDs and a CD could be purchased
> > by millions.  Under those circumstances, storing the ownership
> > relationship in a list of references under either User or CD entities
> > will really impact performance.
>
> > In Rafe Kaplan's article he says:
> > "Another more important one is that you want to avoid storing overly
> > large lists of keys in a ListProperty."
>
> > The straightforward alternative is a separate Ownership model and now
> > there's a separate issue of constructing a transaction that handles
> > updating your genre counter upon a successful Ownership change.
>
> > It'll be interesting if someone comes up with another approach, maybe
> > using multiple User entities (under one entity group) that all map to
> > a single user, with each User entity holding a subset of all the CDs
> > and genre counters.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Load Quota

2009-01-17 Thread gabon

I'm trying to understand if when the application will be public, it
will exceed quota. At the moment I'm test it by myself and I get some
concerning data from the Current Load panel in the Dashboard. In fact
the main script of the app shows me the current data:


Requests last 3 hrs Avg CPU last hr % CPU last 3 hrs
110  662 99%

The % CPU is definitely concerning since I tested the application
alone in few minutes and got to the 99% for the last 3hrs!!!

Unfortunately the mentioned script returns more than 2k entities, each
request returns 50 and they are executed as soon the client
application start if the local cached data is older than a day.

I understand that this kind of application/approach is not the most
suitable for GAE CPU limits, and I for this reason I cache the results
with memcache for an hour.

I am definitely concerned about the suitability of GAE for this kind
of application. What is your opinion? Is GAE gonna be able to handle
it of I have to change totally approach? (loading lazily all the
records)

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



[google-appengine] Re: App Engine Gurus

2009-01-17 Thread Sharp-Developer.Net

Congrats to Alex & Bill.

This is well deserved recognition.
--
Alex
http://sharp-developer.net/

On Jan 15, 8:12 pm, "Daniel O'Brien (Google)"  wrote:
> Hello everyone,
>
> Some of you may have noticed the recent addition of a "guru" listing
> at the top of our main groups page. We've selected a few top
> contributors to the App Engine community to act as App Engine Gurus.
> Gurus will continue to post normally in the group, but are now
> officially noted for their excellent contributions. The gurus were
> selected based on their eagerness to participate in the App Engine
> community as a whole and their advanced knowledge of the API.
>
> The newly appointed Gurus are:
>
>   - Alexander Kojevnikov
>   - Bill Katz
>
> Google will continue posting normally alongside the gurus. Our primary
> focus is to help developers using the API, and the gurus will help
> with that focus by continuing to help provide knowledge and answers to
> those who ask. Remember that this list isn't fixed. Gurus who stop
> participating may be removed, and others who demonstrate the level of
> expertise and willingness to participate may be added.
>
> If anyone has any questions, feel free to reply, contact me directly,
> or send a message to the group's owners list.
>
> Daniel O'Brien
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: App Engine Gurus

2009-01-17 Thread kang
great

On Sat, Jan 17, 2009 at 8:56 PM, Sharp-Developer.Net <
alexander.trakhime...@gmail.com> wrote:

>
> Congrats to Alex & Bill.
>
> This is well deserved recognition.
> --
> Alex
> http://sharp-developer.net/
>
> On Jan 15, 8:12 pm, "Daniel O'Brien (Google)"  wrote:
> > Hello everyone,
> >
> > Some of you may have noticed the recent addition of a "guru" listing
> > at the top of our main groups page. We've selected a few top
> > contributors to the App Engine community to act as App Engine Gurus.
> > Gurus will continue to post normally in the group, but are now
> > officially noted for their excellent contributions. The gurus were
> > selected based on their eagerness to participate in the App Engine
> > community as a whole and their advanced knowledge of the API.
> >
> > The newly appointed Gurus are:
> >
> >   - Alexander Kojevnikov
> >   - Bill Katz
> >
> > Google will continue posting normally alongside the gurus. Our primary
> > focus is to help developers using the API, and the gurus will help
> > with that focus by continuing to help provide knowledge and answers to
> > those who ask. Remember that this list isn't fixed. Gurus who stop
> > participating may be removed, and others who demonstrate the level of
> > expertise and willingness to participate may be added.
> >
> > If anyone has any questions, feel free to reply, contact me directly,
> > or send a message to the group's owners list.
> >
> > Daniel O'Brien
> >
>


-- 
Stay hungry,Stay foolish.

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



[google-appengine] Re: Google Android developer curious about app engine

2009-01-17 Thread madcoder

Yes, it seems like App Engine itself may be the way to go.  It appears
that Google sites has a limit to how many hits a site can receive ,
and there is no way to increase it, even through payment.

I've installed python in my Eclipse IDE, and will play with the code
and the tutorials.


On Jan 16, 10:55 pm, Geoffrey Spear  wrote:
> Yes, you just need to use Google Apps rather than signing up for a
> personal Sites account.
>
> On Jan 16, 10:02 am, madcoder  wrote:
>
> > I'm impressed with what Google has done with their sites project!  It
> > looks as though they have made site development easy, WYSIWYG-style.
>
> > It seems to be perfect for what I'm looking for.  A question about it
> > though.  Can I have my URL (e.g.,www.example.com) go to my Google
> > Site?  I found this:
>
> > Google Apps administrators can change the URL for any public site in
> > Google Sites. Using "example.com" as the example domain, and example-
> > site as the site, the standard URL for a site 
> > is,http://sites.google.com/a/example.com/example-site. This could be
> > changed tohttp://www.example.comthroughthe Google Apps control
> > panel.
>
> >    1. Access the Site Settings screen in the Google Apps control panel
> >    2. Select the "Web Address mapping" tab
> >    3. Select "Add a new web address"
> >    4. Enter the location of the site you want to map (example-site in
> > the example above)
> >    5. Enter the sub-domain you wish to map it to (www in the example
> > below)
> >    6. Select add mapping and follow the instructions provided.
> > Depending on your domain registrar you might need to make CNAME
> > changes. You will be provided directions after you select "Add
> > mapping" to do this if required.
>
> > Note: there can be up to a 24 hour delay for these changes to
> > propagate.
>
> > This can be done for private sites as well, but users will be
> > redirected to the standard URL. So users could access a private site
> > viahttp://private-wiki.example.combutwould be redirected to the
> > standard URL ofhttp://sites.google.com/a/example.com/private-wiki.
>
> > So am I able to have my (already purchased) domain name go
> > automatically go to my Google generated site, or is this not possible?
>
> > Thanks for the great tip, I'll be looking further into it.
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] StingListProperty and bulkLoad

2009-01-17 Thread jackson.h.mil...@gmail.com

Documentation on bulkLoad is sparse.  I have found a couple of blog
posts that have been helpful and I have my bulkLoaders running.

Where I am stuck is in how to bulkLoad a StringListProperty element.
Is there a format that I can put in the CSV that will get parsed into
a list?
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Is there any plan or schedule to support naked name

2009-01-17 Thread jackson.h.mil...@gmail.com

I have a link shortener on AppEngine at urlzen.com.  Is that what you
mean by a naked domain?

On Jan 16, 8:31 am, zitiger  wrote:
> I try to create a site similar with tinyurl.com, but i found i can not
> use a naked
> domain. If i usewww.mydomain.com, it seems that is too long for me.
>
> if you are also interesting in this feather, pls vote it 
> athttp://code.google.com/p/googleappengine/issues/detail?id=777
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: How to do it without using javascript?

2009-01-17 Thread Faber Fedor
On Sat, Jan 17, 2009 at 2:03 AM, arnie  wrote:

>
> Using a wsgi application and without using javascript is it possible
> to calculate the latitude and longitude of a physical address using
> Google Maps API?


Of course.


> If yes then how?


See my code below.


> I have searched a lot but finds only javascript references.


That's because they're doing it from the browser.  You want to do it from
the server.


> My requirement is to fetch Latitude/Longitude values when the physical
> address information is being saved in
> datastore using a wsgi application


I'm doing the exact same thing.  Are you stealing my Million Dollar Idea?
:-)



> Any idea?


Here's how I do it:

def genGeocode(self):

  key=" Your Google Maps API Key goes here"
  url='
http://maps.google.com/maps/geo?q='+self.address+'&output=xml&key='+key
  result2 = urlfetch.fetch(url)
  dom2 = minidom.parseString(result2.content)
  geo_status =int(dom2.getElementsByTagName("code")
[0].childNodes[0].data)

  #check to see if google was able to find the coordinates for the
street address
  if geo_status == 200:
  coord = dom2.getElementsByTagName("coordinates")
[0].childNodes[0].data
  split_coord = coord.rsplit(",")

  longitude=(split_coord[0])
  latitude=(split_coord[1])
  self.geoPoint=latitude+""+longitude
  self.geoHash = Geohash((latitude, longitude))
  return 1

Any suggestion to improve my code are greatly appreciated.



-- 

Faber Fedor
Cloud Computing New Jersey
http://cloudcomputingnj.com

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



[google-appengine] how to do GqlQuery since OR is not supported

2009-01-17 Thread Dave

Hi,

This is  probably (hopefully!) simple and lack of caffeine has me
lost. I want to do a query such as:

select * from profile where (nickname >= searchname AND nickname <
searchname+'z') OR (fullname >= searchname AND fullname < searchname
+'z')

my model is:

class profile (db.Model):
nickname = db.StringProperty()
fullname = db.StringProperty()

searchname would be something like 'dav'

and the query would pick up all records such that:

record 1: nickname = 'david', fullname = 'gus'
record 2: nickname = 'gus', fullname = 'dave'
record 3: nickname = 'phil', fullname = 'gus david'*** This may be
asking for too much. Is it?


Any help is greatly appreciated!

thx,

Dave



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



[google-appengine] Re: Data Privacy

2009-01-17 Thread hawkett

Hi Marzai,

   Thanks for the detailed response.  It would be great to get those
clarifications included in the terms of service and/or privacy
policy.  I can see from my post rating that some people don't share my
concern, but data privacy is probably the number one barrier to
commercial cloud adoption at the moment.  Clear legal statements are
always better than implied trust, or clarifications made in forums.  I
don't doubt that the constraints you have outlined are correct, but I
read the privacy policy and terms of service to say something
significantly different.  The privacy policy explicitly lists content
(including code) and says this -

'We use this information internally to deliver the best possible
service to you, such as improving the Google App Engine user interface
and maintaining a consistent and reliable user experience.'

The terms of service say this (in section 8, which overrides any
rights outlined in section 6) -

'By submitting, posting or displaying the Content on or through the
Service you give Google a worldwide, royalty-free, and non-exclusive
license to reproduce, adapt, modify, translate, publish, publicly
perform, publicly display and distribute such Content for the sole
purpose of enabling Google to provide you with the Service in
accordance with its privacy policy.'

When you put these two statements together, Google is able to
reproduce, adapt and modify developer contributed code to improve your
UI, and explicitly *does not* require content owner's permission.
Apparently that permission is given once the data is uploaded.  I'm
not trying to be difficult - that is actually what it says - and those
documents are actually what business look at when making decisions.

I realise that the terms of service and privacy policy are produced by
the legal team and not the engineering team, and the legal guys have a
responsibility to protect Google from liability and litigation.
Perhaps the legal team isn't fully aware of the importance of data
security to GAE adoption.  It is probably the engineering team's
responsibility to raise that awareness.

It seems clear to me that Google's strategy is to market GAE
applications to its Google Apps customers.  Both offerings sustain
each other, and the delivery of the reseller program is a hint that
this ecosystem is well on its way to being opened up.  If you want an
abundance of vendor supplied, commercial quality applications in that
ecosystem, then data security needs to be much more clearly respected
in the legal documentation.  Thanks,

Colin

On Jan 16, 5:23 pm, Marzia Niccolai  wrote:
> Hi,
>
> First let me say that everyone on the App Engine team takes data
> privacy very seriously, and point you to Section 6 and 8 of the App
> Engine terms of service (http://code.google.com/appengine/terms.html)
> that deal explicitly with the issue of data ownership and copyright.
>
> Also, it is important to note that the only Google employees who have
> the ability to access data pertaining to any App Engine app are
> certain members of the App Engine engineering team, and the access is
> limited to that which is necessary to perform their job role.
>
> The _only_ circumstances under which a member of the App Engine team
> would access your application code and/or data is:
>
> - With the developer's permission, in order to troubleshoot a specific issue
> - If your application is causing system wide instability
>
> Any modification to your app through the Admin Console (by any person)
> is logged in the Admin Logs, that can be access 
> at:http://appengine.google.com/adminlogs?&app_id=YOURAPPID
> Access logs are maintained by Google as well.
>
> -Marzia
>
> On Wed, Jan 14, 2009 at 1:06 PM, hawkett  wrote:
>
> > Hi,
>
> >   Just wanted to query the privacy policy, especially as it relates
> > to code.  Would I be right in thinking that the only thing stopping
> > google stealing an app. or an idea for an app, or an algorithm or data
> > structure or whatever, is that you are such good guys?
>
> >    This is the privacy policy I am reading 
> > -http://code.google.com/appengine/privacy.html
>
> >    I read the privacy policy to pretty much say you can do what you
> > want with the code? i.e. 'We use this information internally to
> > deliver the best possible service to you...' - you could interpret
> > that to mean pretty much anything, including ripping off an idea and
> > serving it back to us - (yeah, I know you are good guys).
>
> >   A second question would be Google's policy for employees or
> > contractors etc. looking at the code of app engine apps?  Are there
> > any internal controls?  Do you maintain access logs?  What are your
> > criteria?
>
> >   An obvious situation would be a google employee reading a group
> > post, and saying 'Hey that's an interesting point, I wonder what app
> > they are building... let me just go in and look at their code... wow
> > that's cool... ... hey boss I have an idea for my 20% spare
> > time, how about 

[google-appengine] Re: typical scenario

2009-01-17 Thread James Ashley

I really don't know much about WSGI, but this works for me.

As I understand it, you should probably have 1 WSGI app in the "root"
folder.  It will do whatever's appropriate to load whichever "sub-app"
needs to run.  Then they should both be able to import from the DB
folder.

i.e.

/ -- app.yaml
  |  main.py
 + app_one
| __init__.py
| whatever.py
 + app_two
   | __init__.py
   | whatever.py
 + DB
   | __init__.py
   | model_one.py
   | model_two.py
   | model_three.py

Set up app.yaml to dispatch requests to main.py (or whatever you want
to call it).  Have it examine REQUEST and dispatch into app_one or
app_two as needed (`import app_one.whatever`).

Then files in app_one or app_two should be able to `import
DB.model_one`

If it's anything more than a dead-simple app, I'd break it down
further than that.  But that's the idea I'm using.

On Jan 14, 8:29 am, arnie  wrote:
> I am stuck in a very big problem and could not find any solution for
> this
> Writing import DB in the BusinessList folder's businesslist.py file
> does not work. I have also added __init__.py file [empty] in the DB
> folder but of no use. Also I have created PYTHONPATH environment
> variable and gives it the path "C:/" but it seems to me that this
> setting is not working too. I have to upload this folder structure to
> GAE under one AppID
> Can anybody suggest a solution?
> Thanks
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Can not delete entity using Data Viewer and a GQL query.

2009-01-17 Thread James Ashley

This sounds to me like something that should be reported as a bug.
And whoever wrote that error message should be punished with at least
10 papercuts.

But that's just me.  

On Jan 11, 3:33 pm, "murexconsult...@googlemail.com"
 wrote:
> There was a bug in my app and some bad data got into the Datastore.
>
> So I want to delete some data. The models have a number of items so
> rather than paging through them all 20 at a time to find it I ran the
> GQL query:
> SELECT * FROM UserUpdates
> WHERE windAngle=328
>
> This returns one row as expected. I then click on the tickbox beside
> it and click on Delete.
>
> I then get a dialog box asking if I am sure to which I say yes.
>
> I then get the error displayed in a red box at the top saying "The URL
> to forward to once the request is fulfilled" - Yes the error is a
> partial sentence and makes no sense.
>
> The item is NOT deleted.
>
> This is happening to all 4 of my models. However 2 of them only have a
> few hundred entries, so I was able to page through, find the item and
> delete it. When I paged through, the deleting was successful.
>
> I think that there must be a bug in the data viewer when removing data
> found using a gql query.
>
> Thanks
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: why the computer says "NameError: name 'execfile' is not defined"

2009-01-17 Thread James Ashley

Isn't production running 2.5.ish?


On Jan 12, 8:39 pm, "bijiasuo2...@gmail.com" 
wrote:
> you should install Python 2.6.1
> i have successful, but i don't know why. I don't know Python
>

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



[google-appengine] How to get url from fetchurl?

2009-01-17 Thread ehmo

I want to know actual url, where i'm via fetchurl. Something like
geturl in urllib2.

for example if i've follow_redirects=True, then i want to know which
url is the ending one.

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



[google-appengine] Re: OpenID, is it good?

2009-01-17 Thread James Ashley



On Jan 12, 9:06 pm, jay  wrote:
> I thought google was participating in Open ID now? Do our app engine
> logins support OpenID's?

OpenID still seems...fairly immature and not user friendly.

Then again, it's been a while since I tried to use it.  I probably
have the terminology wrong.

Last I checked, google was an Open ID "provider."  If you try to log
into a site that accepts Open ID logins, you should be able to use
your google account.  Or your facebook, myspace, yahoo, etc, etc
account.

The trouble is finding sites that accept Open ID logins from other
providers.

No idea why that is, unless it's just the pain of re-writing their
user handling code.  Well, that and figuring out a graceful way for
the user to actually log in.  I still haven't ever been able to figure
it out, on the few sites I've seen.

(Which, I think, is a crying shame.  Then again, other people are
terrified by the idea that leaking one single login could totally
destroy their online "identity")

> On Jan 10, 11:16 am, Mengsong Chen  wrote:
>
> > I have just read something about OpenID. It seems a good solution, in
> > particularly for mobile web apps.
>
> > I wonder what is the general feedback for it?
> > How is it compare it Google Login?
>
> > Thanks,
>
> > M
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: OpenID, is it good?

2009-01-17 Thread Faber Fedor
On Sat, Jan 17, 2009 at 1:25 PM, James Ashley wrote:

> On Jan 12, 9:06 pm, jay  wrote:
> > I thought google was participating in Open ID now? Do our app engine
> > logins support OpenID's?
>
> OpenID still seems...fairly immature and not user friendly.


Really?


> Then again, it's been a while since I tried to use it.  I probably
> have the terminology wrong.


You may want to try it again.  I've been using it lately and I'm growing to
like it.


> The trouble is finding sites that accept Open ID logins from other
> providers.


I'm finding more and more as I surf.  Granted, we still need many more, but
it's a start.


> No idea why that is, unless it's just the pain of re-writing their
> user handling code.  Well, that and figuring out a graceful way for
> the user to actually log in.  I still haven't ever been able to figure
> it out, on the few sites I've seen.


On the sites I've done it with, I've clicked "Log in with OpenID", it takes
me to OpenId and it says "You're logging in over at fubar.com", I click
"Okay" and I'm sent back to fubar.com and I'm logged in.

There's a checkbox for staying logged in and you can set up profiles, but I
haven't played with them yet.


-- 

Faber Fedor
Cloud Computing New Jersey
http://cloudcomputingnj.com

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



[google-appengine] Re: OpenID, is it good?

2009-01-17 Thread Stephen Judd
You may also want to check out RPXNow.com, an OpenID service from Janrain
that makes it simple to use a nice OpenID interface with any site.  I'm
using it on mashical.com based on a cookbook recipe (
http://appengine-cookbook.appspot.com/recipe/accept-google-aol-yahoo-myspace-facebook-and-openid-logins/?id=ahJhcHBlbmdpbmUtY29va2Jvb2tyqgELEgtSZWNpcGVJbmRleCJGYWhKaGNIQmxibWRwYm1VdFkyOXZhMkp2YjJ0eUhnc1NDRU5oZEdWbmIzSjVJaEJYWldKaGNIQWdSbkpoYldWM2IzSnJEQQwLEgZSZWNpcGUiR2FoSmhjSEJsYm1kcGJtVXRZMjl2YTJKdmIydHlIZ3NTQ0VOaGRHVm5iM0o1SWhCWFpXSmhjSEFnUm5KaGJXVjNiM0pyREE3DA
)
and it works great.  I even have it set up so you can associate multiple
OpenIDs with the same account.

Steve

On Sat, Jan 17, 2009 at 1:50 PM, Faber Fedor  wrote:

>
>
> On Sat, Jan 17, 2009 at 1:25 PM, James Ashley wrote:
>
>> On Jan 12, 9:06 pm, jay  wrote:
>> > I thought google was participating in Open ID now? Do our app engine
>> > logins support OpenID's?
>>
>> OpenID still seems...fairly immature and not user friendly.
>
>
> Really?
>
>
>> Then again, it's been a while since I tried to use it.  I probably
>> have the terminology wrong.
>
>
> You may want to try it again.  I've been using it lately and I'm growing to
> like it.
>
>
>> The trouble is finding sites that accept Open ID logins from other
>> providers.
>
>
> I'm finding more and more as I surf.  Granted, we still need many more, but
> it's a start.
>
>
>> No idea why that is, unless it's just the pain of re-writing their
>> user handling code.  Well, that and figuring out a graceful way for
>> the user to actually log in.  I still haven't ever been able to figure
>> it out, on the few sites I've seen.
>
>
> On the sites I've done it with, I've clicked "Log in with OpenID", it takes
> me to OpenId and it says "You're logging in over at fubar.com", I click
> "Okay" and I'm sent back to fubar.com and I'm logged in.
>
> There's a checkbox for staying logged in and you can set up profiles, but I
> haven't played with them yet.
>
>
> --
>
> Faber Fedor
> Cloud Computing New Jersey
> http://cloudcomputingnj.com
>
>
> >
>

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



[google-appengine] Exploding Index

2009-01-17 Thread Murali

I would like to request some clarification on whether the following
model with the set of queries result in an exploding index.

I am  trying to build a quick stock notes application where we want to
add some quick notes on stocks.  Stocks and Tags are both list
properties. But I will not make any query that include both tags and
stocks at the same time. Only ONE at a time combined with created in
desc order (to get last one first).

I imposed a restriction of ONLY A MAX of 3 tags allowed for any row
( same is the case with 3 stocks, restricted to max of 3)

class QuickNote(db.Model):
description = db.StringProperty()
author = db.StringProperty()
status = db.StringProperty()
tags = db.StringListProperty()
stocks = db.StringListProperty()
created = db.DateTimeProperty(auto_now_add=True)

Index :
- kind: QuickNote
  properties:
  - name: tag
  - name: created
direction: desc

- kind: QuickNote
  properties:
  - name: stock
  - name: created
direction: desc

1. A single entity will never have more than 3 values in each list and
never more than one list property is used in  a single query. However,
I need to combine with date in desc order to retrieve latest notes.
(as shown above)
2. As a whole, we might have about 1000 stocks and similar range of
tags.

I would like to know if this data model with the given set of queries,
will result in exploding index?

Also, if I have 7 more (a total of 9) different List properties
(similar to stocks and tags) each with the same restriction of 3
values in a list, and they are never combined (except with date in
desc order), would that result in exploding index? At any time only 2
or 3 lists will have any values filled in.

Thank you very much in advance for your inputs.
Murali


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



[google-appengine] Re: Model.put() Override?

2009-01-17 Thread James Ashley

The "simple" answer seems to be "override the db class."  That's
totally off the top of my head, and it may be completely unrealistic.

Something like (totally untested and almost definitely wrong. Consider
it pseudo-code):

class my_db(google.ext.db):
  def put(self, *objects, **kwargs):
for o in objects:
  o.pre_put()
super(google.ext.db, self).put(*objects, **kwargs)

Then the models that were overriding put() could put that override
code in pre_put() instead (and change put() to just call that before
calling super().put()...).

You'd have to juggle the nuances of things like post_put(), and any
side-effects.  But it seems like a reasonable compromise.

On Jan 14, 2:22 pm, boson  wrote:
> That is a curious situation.  I would like to know also if there is a
> way to inject code into the put-stream regardless of method called, as
> I have various put() overrides as well.
>
> On Jan 13, 9:45 pm, Devel63  wrote:
>
> > I overrode the put method on a class derived from Model, primarily
> > because I wanted to do some accounting work when a new object was
> > saved (in the simplest case, just keeping track of a counter).  It
> > does its work, then calls super.
>
> > It works fine.
>
> > Until I use db.put([ob1,obj2,obj3]) to save a bunch of these, and then
> > of course the individual object.put() functions are never called.
>
> > Is there a best practice for this?  I really liked having it in the
> > "put", because then no caller needed to know about it, and it just
> > took care of itself.  Is the best thing to precede every "put" call
> > with an explicit "put_prep" call?
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: typical scenario

2009-01-17 Thread James Ashley

http://groups.google.com/group/google-appengine/browse_thread/thread/2baa48709bb94bd3?hl=en
has an excellent answer about dispatching to multiple WSGI apps.

On Jan 17, 12:11 pm, James Ashley  wrote:
> I really don't know much about WSGI, but this works for me.
>
> As I understand it, you should probably have 1 WSGI app in the "root"
> folder.  It will do whatever's appropriate to load whichever "sub-app"
> needs to run.  Then they should both be able to import from the DB
> folder.
>
> i.e.
>
> / -- app.yaml
>   |  main.py
>  + app_one
>     | __init__.py
>     | whatever.py
>  + app_two
>    | __init__.py
>    | whatever.py
>  + DB
>    | __init__.py
>    | model_one.py
>    | model_two.py
>    | model_three.py
>
> Set up app.yaml to dispatch requests to main.py (or whatever you want
> to call it).  Have it examine REQUEST and dispatch into app_one or
> app_two as needed (`import app_one.whatever`).
>
> Then files in app_one or app_two should be able to `import
> DB.model_one`
>
> If it's anything more than a dead-simple app, I'd break it down
> further than that.  But that's the idea I'm using.
>
> On Jan 14, 8:29 am, arnie  wrote:
>
> > I am stuck in a very big problem and could not find any solution for
> > this
> > Writing import DB in the BusinessList folder's businesslist.py file
> > does not work. I have also added __init__.py file [empty] in the DB
> > folder but of no use. Also I have created PYTHONPATH environment
> > variable and gives it the path "C:/" but it seems to me that this
> > setting is not working too. I have to upload this folder structure to
> > GAE under one AppID
> > Can anybody suggest a solution?
> > Thanks
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Data Privacy

2009-01-17 Thread Andy Freeman

>  data privacy is probably the number one barrier to
> commercial cloud adoption at the moment.

Some supporting evidence would be nice because only one person is
raising this concern.  Maybe it's so huge a barrier that no one else
is bothering, maybe the discussion is somewhere else, but

> When you put these two statements together, Google is able to
> reproduce, adapt and modify developer contributed code to improve your
> UI, and explicitly *does not* require content owner's permission.

Actually, there's nothing about the UI.  However, there's something
important missing from this discussion, namely "for the sole purpose
of enabling Google to provide you with the Service in accordance with
its privacy policy."

How about some acceptable wording from a service that provides
computation and storage resources, together with a link to the whole
policy?


On Jan 17, 9:17 am, hawkett  wrote:
> Hi Marzai,
>
>    Thanks for the detailed response.  It would be great to get those
> clarifications included in the terms of service and/or privacy
> policy.  I can see from my post rating that some people don't share my
> concern, but data privacy is probably the number one barrier to
> commercial cloud adoption at the moment.  Clear legal statements are
> always better than implied trust, or clarifications made in forums.  I
> don't doubt that the constraints you have outlined are correct, but I
> read the privacy policy and terms of service to say something
> significantly different.  The privacy policy explicitly lists content
> (including code) and says this -
>
> 'We use this information internally to deliver the best possible
> service to you, such as improving the Google App Engine user interface
> and maintaining a consistent and reliable user experience.'
>
> The terms of service say this (in section 8, which overrides any
> rights outlined in section 6) -
>
> 'By submitting, posting or displaying the Content on or through the
> Service you give Google a worldwide, royalty-free, and non-exclusive
> license to reproduce, adapt, modify, translate, publish, publicly
> perform, publicly display and distribute such Content for the sole
> purpose of enabling Google to provide you with the Service in
> accordance with its privacy policy.'
>
> When you put these two statements together, Google is able to
> reproduce, adapt and modify developer contributed code to improve your
> UI, and explicitly *does not* require content owner's permission.
> Apparently that permission is given once the data is uploaded.  I'm
> not trying to be difficult - that is actually what it says - and those
> documents are actually what business look at when making decisions.
>
> I realise that the terms of service and privacy policy are produced by
> the legal team and not the engineering team, and the legal guys have a
> responsibility to protect Google from liability and litigation.
> Perhaps the legal team isn't fully aware of the importance of data
> security to GAE adoption.  It is probably the engineering team's
> responsibility to raise that awareness.
>
> It seems clear to me that Google's strategy is to market GAE
> applications to its Google Apps customers.  Both offerings sustain
> each other, and the delivery of the reseller program is a hint that
> this ecosystem is well on its way to being opened up.  If you want an
> abundance of vendor supplied, commercial quality applications in that
> ecosystem, then data security needs to be much more clearly respected
> in the legal documentation.  Thanks,
>
> Colin
>
> On Jan 16, 5:23 pm, Marzia Niccolai  wrote:
>
>
>
> > Hi,
>
> > First let me say that everyone on the App Engine team takes data
> > privacy very seriously, and point you to Section 6 and 8 of the App
> > Engine terms of service (http://code.google.com/appengine/terms.html)
> > that deal explicitly with the issue of data ownership and copyright.
>
> > Also, it is important to note that the only Google employees who have
> > the ability to access data pertaining to any App Engine app are
> > certain members of the App Engine engineering team, and the access is
> > limited to that which is necessary to perform their job role.
>
> > The _only_ circumstances under which a member of the App Engine team
> > would access your application code and/or data is:
>
> > - With the developer's permission, in order to troubleshoot a specific issue
> > - If your application is causing system wide instability
>
> > Any modification to your app through the Admin Console (by any person)
> > is logged in the Admin Logs, that can be access 
> > at:http://appengine.google.com/adminlogs?&app_id=YOURAPPID
> > Access logs are maintained by Google as well.
>
> > -Marzia
>
> > On Wed, Jan 14, 2009 at 1:06 PM, hawkett  wrote:
>
> > > Hi,
>
> > >   Just wanted to query the privacy policy, especially as it relates
> > > to code.  Would I be right in thinking that the only thing stopping
> > > google stealing an app. or an idea for an app, or a

[google-appengine] import google.appengine.ext.db.polymodel : No module named polymodel

2009-01-17 Thread TLH

According to the documentation (http://code.google.com/appengine/docs/
python/datastore/polymodelclass.html), there should be a PolyModel
class in google.appengine.ext.db.polymodel.  However, the program ...

from google.appengine.ext.db import polymodel

... fails at runtime with an exceptions.ImportError and the message
"No module named polymodel"

The simlar program ...

import google.appengine.ext.db.polymodel

... fails in the same way, which is comforting I suppose.

I have tried both the Linux and Mac SDKs.  Is this unavailable on the
SDK?  Is it a withdrawn feature?
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] djangoforms refuses to validate unchecked boolean properties

2009-01-17 Thread Qian Qiao

Hi,

The following snippet demonstrates the issue:

class BooleanModel(db.Model):
  bool_prop = db.BooleanProperty(required=True, default=True)

class BooleanModelForm(djangoforms.ModelForm):
  class Meta:
model = BooleanModel

view:

def bool_form(request):
  if request.method == "POST":
f = BooleanModelForm(request.POST)
if f.is_valid():
  return HttpResponseRedirect("http://www.google.com";)
  else:
f = BooleanModelForm()
  t = loader.get_template("template.page")
  params = { 'form': f }
  return HttpResponse(t.render(Context(params)))

template page:


  {{ form.bool_prop }}
  


The template page generates a checkbox for bool_prop, which is fine.
When you check the checkbox and submit the form, the form validates
fine, bool_prop is set to True and you get redirect to google.com, but
when you uncheck the checkbox, the form fails to validate with the
error "bool_prop is required".

Is this a known bug or am I doing something wrong?

TIA

-- Joe

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



[google-appengine] Re: Data Privacy

2009-01-17 Thread James Ashley



On Jan 17, 11:17 am, hawkett  wrote:
> Hi Marzai,
>
>    Thanks for the detailed response.  It would be great to get those
> clarifications included in the terms of service and/or privacy
> policy.  I can see from my post rating that some people don't share my
> concern, but data privacy is probably the number one barrier to
> commercial cloud adoption at the moment.

To whomever marked the OP down: he's right.  This *is* an incredibly
important consideration.  However...

> Clear legal statements

BWAHAHAHA! It all depends on the meaning of the word "is."

Sorry, I couldn't resist.  :-)

> are
> always better than implied trust, or clarifications made in forums.  I
> don't doubt that the constraints you have outlined are correct, but I
> read the privacy policy and terms of service to say something
> significantly different.  The privacy policy explicitly lists content
> (including code)

Actually, see section 5.1:

* The term Content shall specifically exclude the web application that
* you create using the Service and any source code written by you to
* be used with the Service (collectively, the "Application").


> and says this -
>
> 'We use this information internally to deliver the best possible
> service to you,

A lawyer probably *could* stretch this to include making your private
customer data public

> such as improving the Google App Engine user interface
> and maintaining a consistent and reliable user experience.'

Lots of disagreement among lawyer types about phrases like "such as."
Be careful of those.

> The terms of service say this (in section 8, which overrides any
> rights outlined in section 6) -
>
> 'By submitting, posting or displaying the Content on or through the
> Service you give Google a worldwide, royalty-free, and non-exclusive
> license to reproduce, adapt, modify, translate, publish, publicly
> perform, publicly display and distribute such Content

Note the term "Content" here. *Not* Application.  Nothing about your
source code.

> for the sole
> purpose of enabling Google to provide you with the Service in
> accordance with its privacy policy.'

IANAL, but that whole "sole purpose" thing seems to actually make this
safer for us developers.

Then again, lawyers have completely up-ended those silly "Congress
shall not..." clauses in the Bill of Rights, so they could probably
use this to justify publicizing your medical records.  :-/

> When you put these two statements together, Google is able to
> reproduce, adapt and modify developer contributed code

Again, IANAL.  But can you take individual pieces of an agreement like
this out of context?

> to improve your
> UI, and explicitly *does not* require content

Just to re-emphasize (yet again, from the Department of Redundancy
Department): content seems [to me] to specifically be the user data.
*Not* the source code.

> owner's permission.
> Apparently that permission is given once the data is uploaded.  I'm
> not trying to be difficult - that is actually what it says - and those
> documents are actually what business look at when making decisions.

And the details are extremely important.  Especially when you have to
break down and actually talk to the suits.

> I realise that the terms of service and privacy policy are produced by
> the legal team and not the engineering team, and the legal guys have a
> responsibility to protect Google from liability and litigation.
> Perhaps the legal team isn't fully aware of the importance of data
> security to GAE adoption.

I suspect you aren't giving enough credit to the legal team.

It's their job to keep google from getting sued.  When google does get
sued (which it will), it's their job to ensure that google wins.

This must balance against the marketing team's job to actually get
people/developers/us to use the product.

> It is probably the engineering team's
> responsibility to raise that awareness.

You could be right.  In almost any other company, I'd agree with you.
I'm willing to bet that google's lawyers are at least hip-deep when it
comes to privacy concerns.

As I understand it, google's business model is to analyze data and use
that analysis to make a profit.  This seems to be mostly through
selling ads.  I'm sure there are other forms of revenue (like the
people who pay for premium service, enterprise search, etc).

If you store data on GAE, you should expect google to be crawling it
and making every penny they can out of it.

The biggest risk (that I can see) might be google focusing ads from
your competitors on your users.

A secondary risk seems to be google actually analyzing your data and
making it (and the analysis) public.  I don't think the TOS allows
that, but (yet again) IANAL.  It could all happen "to deliver the best
possible service to you."

But I doubt it's the engineering team's responsibility.  Maybe someone
on that team should (I hate that word) step up to the plate and make
sure the legal team appreciates your/our concerns, but you'd really be
bet

[google-appengine] updating schema

2009-01-17 Thread thebrianschott

I am following the fine article at 
http://code.google.com/appengine/articles/update_schema.html
but have run into some difficulties as I am very new to this. I run
this on my development system and it works fine, but when I tried to
run it at appspot.com I get the error far below.

I have just taken the requestHandler given in the article and added it
to my map.py file? Below is my version of that requestHandler, which I
named "Update" as you can see. The only change I made in the
RequestHandler was to use my "date" field instead of the "name" field
as done in the example. And my model is named Pin, not Picture, but I
kept "pic" where the example used "pic", instead of my "pin".

*
# Request handler for the URL /update_datastore
class Update(webapp.RequestHandler):
  def get(self):
name = self.request.get('date', None)
if name is None:
# First request, just get the first name out of the datastore.
pic = Pin.gql('ORDER BY name DESC').get()
name = pic.name

q = Pin.gql('WHERE name <= :1 ORDER BY name DESC', name)
pics = q.fetch(limit=2)
current_pic = pics[0]
if len(pics) == 2:
next_name = pics[1].name
next_url = '/update_datastore?date=%s' % urllib.quote
(next_name)
else:
next_name = 'FINISHED'
next_url = '/'  # Finished processing, go back to main page.
# In this example, the default values of 0 for num_votes and
avg_rating are
# acceptable, so we don't need to do anything other than call put
().
current_pic.put()

context = {
'current_name': name,
'next_name': next_name,
'next_url': next_url,
}
self.response.out.write(template.render('update_datastore.html',
context))
*

I get the following error, where line 241 is this one above:

current_pic.put()

*
Traceback (most recent call last):
  File "/base/python_lib/versions/1/google/appengine/ext/webapp/
__init__.py", line 498, in __call__
handler.get(*groups)
  File "/base/data/home/apps/carpoolfinder/2.330773714346785160/
maps.py", line 241, in get
current_pic.put()
  File "/base/python_lib/versions/1/google/appengine/ext/db/
__init__.py", line 657, in put
return datastore.Put(self._entity)
  File "/base/python_lib/versions/1/google/appengine/api/
datastore.py", line 162, in Put
raise _ToDatastoreError(err)
  File "/base/python_lib/versions/1/google/appengine/api/
datastore.py", line 1637, in _ToDatastoreError
raise errors[err.application_error](err.error_detail)
Timeout: datastore timeout: operation took too long.
*


Can you please tell me what I am doing wrong?

Thank you,

Brian in Atlanta






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



[google-appengine] Re: how to do GqlQuery since OR is not supported

2009-01-17 Thread Barry Hunter

I beleive you should put the words into a StringListProperty. ie
'phil', 'gus', 'david' in case of record 3. and search on that field.
Disclaimer: untested - but that is now understand would do it.

2009/1/17 Dave :
>
> Hi,
>
> This is  probably (hopefully!) simple and lack of caffeine has me
> lost. I want to do a query such as:
>
> select * from profile where (nickname >= searchname AND nickname <
> searchname+'z') OR (fullname >= searchname AND fullname < searchname
> +'z')
>
> my model is:
>
> class profile (db.Model):
>nickname = db.StringProperty()
>fullname = db.StringProperty()
>
> searchname would be something like 'dav'
>
> and the query would pick up all records such that:
>
> record 1: nickname = 'david', fullname = 'gus'
> record 2: nickname = 'gus', fullname = 'dave'
> record 3: nickname = 'phil', fullname = 'gus david'*** This may be
> asking for too much. Is it?
> 
>
> Any help is greatly appreciated!
>
> thx,
>
> Dave
>
>
>
> >
>



-- 
Barry

- www.nearby.org.uk - www.geograph.org.uk -

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



[google-appengine] Re: Data Privacy

2009-01-17 Thread James Ashley



On Jan 17, 2:54 pm, Andy Freeman  wrote:
> >  data privacy is probably the number one barrier to
> > commercial cloud adoption at the moment.
>
> Some supporting evidence would be nice because only one person is
> raising this concern.  Maybe it's so huge a barrier that no one else
> is bothering, maybe the discussion is somewhere else, but

I see this concern all the time.  From every business-oriented point
of view.  I'm surprised that anyone else doubts this.

I thought it could pretty much be considered a given.

Businesses frequently consider data one of their most valuable
assets.  And they're reluctant to trust it with anyone else.

> > When you put these two statements together, Google is able to
> > reproduce, adapt and modify developer contributed code to improve your
> > UI, and explicitly *does not* require content owner's permission.
>
> Actually, there's nothing about the UI.  

That's in there.  Maybe it's a recent addition?

> However, there's something
> important missing from this discussion, namely "for the sole purpose
> of enabling Google to provide you with the Service in accordance with
> its privacy policy."

Have I mentioned before that I really like that whole "sole purpose"
phrase?  I think I have.

> How about some acceptable wording from a service that provides
> computation and storage resources, together with a link to the whole
> policy?

Ooh, nice question!

I <3 nearlyfreespeech.net (I'm completely unaffiliated...the guy who
owns it probably hates me).  But even they don't have anything as
explicit as google's.


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



[google-appengine] Re: import google.appengine.ext.db.polymodel : No module named polymodel

2009-01-17 Thread TLH

Installing 1.1.8 SDK eliminated the problem.

On Jan 17, 4:36 pm, TLH  wrote:
>
> import google.appengine.ext.db.polymodel
>
> ... fails in the same way, which is comforting I suppose.
>
> I have tried both the Linux and Mac SDKs.  Is this unavailable on the
> SDK?  Is it a withdrawn feature?
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: djangoforms refuses to validate unchecked boolean properties

2009-01-17 Thread Qian Qiao

On Sun, Jan 18, 2009 at 05:25, Qian Qiao  wrote:
> [snip]

Meh, I was being stupid, all I have to do is:

from django import forms

class BooleanModelForm(djangoforms,ModelForm):
  bool_prop = forms.BooleanField(required=False)
  class Meta:
model = BooleanModel

Posting the solution here so that if anyone run into the same problem
in the future, they can look this thread up.

-- Joe

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



[google-appengine] Re: updating schema

2009-01-17 Thread thebrianschott

As reported in my previous message, I got error an error message. Upon
reviewing the datastore, I saw that only one entity had been updated,
but the others were expanded to have the additional fields with the
filler "" in each position, so in a sense they were updated,
but the default values were not inserted.

So I proceeded to try to update my other data class, which failed
also, but for a different reason. The reason was something more
critical, like a field name I chose did not exist, but it was the same
field name "date" which appears in both classes.

But the good news is that my application is up and running again, with
no apparent problems, *yet*. I would like to get this issue clarified,
but am not under so much pressure anymore because the app is working.



Brian in Atlanta
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Data Privacy

2009-01-17 Thread Andy Freeman

> I see this concern all the time.  From every business-oriented point
> of view.  I'm surprised that anyone else doubts this.
>
> I thought it could pretty much be considered a given.

I was unclear - I was referring to AppEngine specific concerns.

> Businesses frequently consider data one of their most valuable
> assets.  And they're reluctant to trust it with anyone else.

And I've never said, suggested, or implied otherwise.  We're
discussing whether Google's stated policies (and previously
technology) are "good enough for biz use" and possibly whether Google
cares/wants them to be seen as such.  While AppEngine as a whole may
eventually make lots of money, the margins (and usage) may be such
that biz applications don't make much money.  If that's the case,
Google may not want the hassle.

To put it another way, Google may not be willing to accept a $50-100M
risk for $3-50/month.  Since that's the level of risk that Hawkett is
suggesting  (Yes, there is an indemnity clause in the App Engine
agreement, but that's an agreement with the application vendor, not
with the biz being served.  Google, aka "deep pockets", will be sued.)

> > Actually, there's nothing about the UI.
>
> That's in there.  Maybe it's a recent addition?

There's nothing about UI in Section 8, the section under discussion.
The word "interface" only appears twice in 
http://code.google.com/appengine/terms.html
, both times in Section 2, specifically in reference to not hacking
Google's adminstrative console interface; that's not a reference to
Google's use of an application's interface or the application and/or
content to improve some (unspecified) user interface/experience..

There's a mention of user interface in 
http://code.google.com/appengine/privacy.html
, which contains the following (quoted by Hawkett) "We use this
information internally to deliver the best possible service to you,
such as improving the Google App Engine user interface and maintaining
a consistent and reliable user experience." however the information in
question is"personal information" as used in 
http://www.google.com/privacypolicy.html
and defined in http://www.google.com/privacy_faq.html#personalinfo -
it has nothing to do with Content or Application.

> Have I mentioned before that I really like that whole "sole purpose"
> phrase?  I think I have.

Yes, you have.  However, you didn't mention that "sole purpose" is
used throughout Google documents, including in places where a
"nonstandard interpretation" would cause Google considerable harm.  If
they're not already on (court) record with a strong interpretation,
they soon will be.

On Jan 17, 2:11 pm, James Ashley  wrote:
> On Jan 17, 2:54 pm, Andy Freeman  wrote:
>
> > >  data privacy is probably the number one barrier to
> > > commercial cloud adoption at the moment.
>
> > Some supporting evidence would be nice because only one person is
> > raising this concern.  Maybe it's so huge a barrier that no one else
> > is bothering, maybe the discussion is somewhere else, but
>
> I see this concern all the time.  From every business-oriented point
> of view.  I'm surprised that anyone else doubts this.
>
> I thought it could pretty much be considered a given.
>
> Businesses frequently consider data one of their most valuable
> assets.  And they're reluctant to trust it with anyone else.
>
> > > When you put these two statements together, Google is able to
> > > reproduce, adapt and modify developer contributed code to improve your
> > > UI, and explicitly *does not* require content owner's permission.
>
> > Actually, there's nothing about the UI.  
>
> That's in there.  Maybe it's a recent addition?
>
> > However, there's something
> > important missing from this discussion, namely "for the sole purpose
> > of enabling Google to provide you with the Service in accordance with
> > its privacy policy."
>
> Have I mentioned before that I really like that whole "sole purpose"
> phrase?  I think I have.
>
> > How about some acceptable wording from a service that provides
> > computation and storage resources, together with a link to the whole
> > policy?
>
> Ooh, nice question!
>
> I <3 nearlyfreespeech.net (I'm completely unaffiliated...the guy who
> owns it probably hates me).  But even they don't have anything as
> explicit as google's.
>
>
>
> - Hide quoted text -
>
> - Show quoted text -
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: updating schema

2009-01-17 Thread Andy Freeman

The python db.Model definitions are not like database table
definitions.  Unlike SQL schema changes, changing these python
definitions doesn't do anything to the entities in the datastore.

In fact, if the python definitions are changed incorrectly, the
supposedly corresponding entities become inaccessible in the sense
that a query or db.get will throw an exception when it tries to create
a python instance corresponding to the entity retrieved from the
datastore.

It's probably better to think of the properties in python db.Model
definitions as telling the system how to serialize/deserialize
objects.  If you need objects to have certain fields, it's your
responsibility to ensure that the ones in the database actually do
have those fields.

On Jan 17, 3:58 pm, thebrianschott  wrote:
> As reported in my previous message, I got error an error message. Upon
> reviewing the datastore, I saw that only one entity had been updated,
> but the others were expanded to have the additional fields with the
> filler "" in each position, so in a sense they were updated,
> but the default values were not inserted.
>
> So I proceeded to try to update my other data class, which failed
> also, but for a different reason. The reason was something more
> critical, like a field name I chose did not exist, but it was the same
> field name "date" which appears in both classes.
>
> But the good news is that my application is up and running again, with
> no apparent problems, *yet*. I would like to get this issue clarified,
> but am not under so much pressure anymore because the app is working.
>
> Brian in Atlanta
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: How to get url from fetchurl?

2009-01-17 Thread Alexander Kojevnikov

> I want to know actual url, where i'm via fetchurl. Something like
> geturl in urllib2.
>
> for example if i've follow_redirects=True, then i want to know which
> url is the ending one.
>
The corresponding issue 404 [1] is fixed however I don't see how we
can retrieve the final URL. The headers property of the Response
object that urlfetch.fetch() returns doesn't have it.

Should the issue 404 be re-opened?

[1] http://code.google.com/p/googleappengine/issues/detail?id=404


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



[google-appengine] Re: Version 1.1.8 - January 7, 2008

2009-01-17 Thread Ross M Karchner
Has anyone figured out if the cron stuff works yet? how to do it?

On Fri, Jan 16, 2009 at 11:04 PM, Roberto Saccon  wrote:

>
> Great  !
>
> I observed that this needs the ANTLR parser (for some stuff related to
> cron ! Hopefully very soon now ...)
>
> Anyway, if you don't have it grab it at:
> http://www.antlr.org/wiki/display/ANTLR3/Python+runtime
>
> Roberto
>
> On Jan 16, 11:01 pm, lookon  wrote:
> > it's cool for
> >
> > Get height and width of an image via the Images API.
> >
>

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



[google-appengine] Re: Generating cryptographically strong random numbers

2009-01-17 Thread Chris Tan

According to the docs, "On a UNIX-like system this will query /dev/
urandom":
http://docs.python.org/library/os.html

These libraries may also be of interest to you:
http://docs.python.org/library/crypto.html
http://docs.python.org/library/random.html
http://docs.python.org/library/uuid.html

Personally, I'm using random.random() for CSRF tokens and it works
great.  I'm curious, what kind of application are you developing that
requires this level of security?

On Jan 16, 1:16 am, "Alexander Konovalenko"  wrote:
> Web applications that implement user accounts need to generate
> unpredictable values for session cookies and anti-CSRF tokens. So
> several questions about App Engine arise:
>
> 1. How is os.urandom() implemented in production? That is, what
> entropy sources does it use? What RNG algorithm?
>
> 2. Is there a supported way to obtain some high-entropy bits (like
> /dev/random in Linux)?
>
> 3. Are there any features that could help us generate
> cryptographically strong random numbers?
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: Debug Console

2009-01-17 Thread DocDay


Thanks, djidjadji. Works now. Operator trouble - my code was
interfering with the url.


On Jan 10, 7:03 am, djidjadji  wrote:
> For me it only works on the dev-server.
> The production (appspot.com) server does not give an overlay.
>
> In your google_appengine/templates directory do you have?
> 1 Javascript file: logging_console.js
> 3 HTML files: logging_console_[footer|header|middle].html
>
> 2009/1/10 DocDay :
>
>
>
>
>
> > Of course, and that's the part that isn't working. I've not seen it on
> > either the development or the Google server.
>
> > On Jan 9, 6:17 pm, djidjadji  wrote:
> >> Try this URL
> >>http://localhost:8080/?debug
> >> When there is a parameter called 'debug' you get an overlay console- Hide 
> >> quoted text -
>
> - Show quoted text -
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: How to get url from fetchurl?

2009-01-17 Thread Chris Tan

You can follow redirects manually like so:

response = urlfetch.fetch(url, allow_truncated=True,
follow_redirects=False)
if 'Location' in response.headers:
url = response.headers.get('Location')
response = urlfetch.fetch(url, allow_truncated=True)

You could also loop this to follow more than one redirect.

On Jan 17, 10:18 am, ehmo  wrote:
> I want to know actual url, where i'm via fetchurl. Something like
> geturl in urllib2.
>
> for example if i've follow_redirects=True, then i want to know which
> url is the ending one.
>
> any idea?
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---



[google-appengine] Re: what's this quota?

2009-01-17 Thread Ben Bishop

Have you deployed your app 250 times in the past day?


On Jan 17, 5:06 pm, lookon  wrote:
> Your application is exceeding a quota: App Config Service Config App
> Call Count
>
> how will I get this message?
--~--~-~--~~~---~--~~
You received this message because you are subscribed to the Google Groups 
"Google App Engine" group.
To post to this group, send email to google-appengine@googlegroups.com
To unsubscribe from this group, send email to 
google-appengine+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/google-appengine?hl=en
-~--~~~~--~~--~--~---