This past Wednesday, the App Engine team hosted the latest session of
its bimonthly IRC office hours. A transcript of the session and a
summary of the topics covered is provided below. The next session will
take place on Wednesday, October 21st from 9:00-10:00 a.m. PDT in the
#appengine channel on irc.freenode.net.

- Jason

--SUMMARY-----------------------------------------------------------
- Q: When is the Task Queue API leaving Labs? A: The Task Queue API
remains an "experimental" feature for the time being. This means that
the API may change and evolve in future releases in ways that break
existing code. Task Queues will stay "experimental" until that time,
but this shouldn't stop you from using it today and sharing any
feedback in the discussion groups and issue tracker. [7:04-7:05]

- At least one App Engine-hosted Facebook application is displaying an
empty screen, presumably because the request to App Engine times out
while waiting for the application instance to spin up. If you're
interested in being able to pay for at least one instance to be kept
warm, even with sporadic bursts of traffic, let us know in the
discussion group and issue tracker. [7:05, 7:08-7:09, 7:11-7:12, 7:14,
7:18]

- Q: Are they any plans to allow clients to create cname records
linking their domain to an App Engine application without going
through Google Apps? A: At the moment, registering your domain with
Google Apps (completely free and relatively painless) is required, and
there aren't any immediate plans to change this. We are working on
better Google Apps and App Engine integration, but if you have an
application that you want to share amongst various clients right now,
please complete the form at
http://code.google.com/support/bin/request.py?contact_type=AppEngineMultiInstanceExceptionRequest
and we will work with you more directly. [7:12, 7:15, 7:32, 7:35,
7:37-7:38]

- Q: Which Python modules are supported in App Engine? A: Most Python
system modules (e.g. re, os, urllib2) are supported. App Engine's
sandbox prevents your application from doing certain operations like
spinning up new processes/threads and making direct socket
connections, but most standard libraries work out-of-the-box. [7:14,
7:19]

- Continued requests for firewall/service API to set up rules to
automatically block traffic from a certain IP or IP block should an
application be targeted. [7:42, 7:46, 7:51]

- Per-minute datastore limits, along with per-minute limits for other
App Engine services, are available in 
http://code.google.com/appengine/docs/quotas.html.
[7:48-7:49]

- Discussion on user proposal to circumvent ad blockers by having App
Engine applications hosting ads to redirect to a remote App Engine
application which in turn returns the image-based ads and records the
impression. [7:50-7:53, 7:56, 7:59-8:04]


--FULL TRANSCRIPT---------------------------------------------------
[7:01pm] SpanishInquisiti: NOBODY expects the Spanish Inquisition!
[7:01pm] Jason_Google: Hi Everyone. Welcome to the first App Engine
office hour session in October! I'll be here for the next hour or so
to answer any questions.
[7:01pm] Jason_Google: Nobody.
[7:02pm] chilts: heh
[7:02pm] chilts: Hi Jason
[7:02pm] Jason_Google: Hi there.
[7:03pm] chilts: I have a quick question I hope ... I've seen
DerivedProperties that Nick Johnson was doing ... is there a way to
have DependsOnProperty
[7:03pm] chilts: ie. one field in a model depends on another?
[7:03pm] chilts: (eg. can only take a value if another one is true,
that kind of thing)
[7:04pm] Jason_Google: Hmm, interesting. I'm not too familiar with
Nick's work there. Off-hand, I don't know how this could be done, but
it would be an interesting question to pose Nick in the discussion
group.
[7:04pm] maxoizo: Hi jason! When are you planning to release a
TaskQueue API from the Labs? In the next release or after?
[7:04pm] chilts: maybe this is something to figure out rather than bug
you about though
[7:04pm] chilts: sweet, I'll try Nick one time then
[7:04pm] chilts: thanks Jason
[7:05pm] Jason_Google: maxoizo: I haven't heard anything about moving
it from labs recently. It will probably remain in labs for the
foreseeable future, but it is production ready and you can keep using
it today.
[7:05pm] smwaveforms: Jason is there any way to keep a static page in
cache for GAE facebook iframe apps that have low numbers of users?
[7:06pm] AreEmmKay: App Engine is doomed if you guys ever lose Nick
[7:06pm] LacrimaMax: Hi Jason! I have a problem, which I can't resolve
for two days. When I do 'appcfg.py update someapp', I receive
exception. Traceback is here: http://dpaste.com/104153/
[7:07pm] SpanishInquisiti: Any idea when the next SDK will splash down
and what's slated?
[7:08pm] Jason_Google: smwaveforms: There is an expiration that you
can associate with static files so the browser will keep it cached. Is
this what you're looking for?
[7:09pm] Jason_Google: SpanishInquisiti: Soon, hopefully within the
next couple of weeks. It will feature incoming email support and a
host of goodies I'm not yet at liberty to reveal.
[7:09pm] smwaveforms: Jason. the iframe comes up blank but shows page
after a refresh
[7:09pm] SpanishInquisiti: We have ways of making you talk!
[7:09pm] Jason_Google: LacrimaMax: Interesting. How often do you see
that error? Does it go away right after you try updating again or does
it linger until you make a change?
[7:11pm] smwaveforms: also, this is on a page that does data calls but
no login required
[7:11pm] Jason_Google: smwaveforms: Are you dealing with a static file
here or a dynamic script?
[7:11pm] chilts: I wonder if the Status: 200 isn't being set properly
(or whatever other status is being set)
[7:12pm] smwaveforms: can change to static if that will help
[7:12pm] chilts: (re: LacrimaMax's problem)
[7:12pm] AreEmmKay: I'd like my app to support customers setting up
cnames to their pages, without asking them to go through Google
Domains-- I want it to work like wordpress.com. Is it, or will it
every be possible? In other words, if someone cnames somedomain.com to
myapp.appspot.com, it should Just Work, but App Engine doesn't like
it.
[7:12pm] AreEmmKay: by which I mean www.somedomain.com
[7:13pm] LacrimaMax: Jason, I see that error for the last two days
every time, when I try to update my app.
[7:14pm] Jason_Google: smwaveforms: You can try changing it to static,
but you won't be able to make any data calls. The link I referred to
above was relevant only to static files. If you're referring to
dynamic content, you can certainly use memcache to keep it in memory,
but it will eventually be evicted and, if your application is spun
down, a new instance of your app will have to be spun up again which
could cause a delay. I don't know why you're seeing a blank page
though. It's possible that Facebook's own request is timing out which
would explain why it works after the refresh, when the app is warm.
[7:14pm] chilts: AreEmmKay: you might want to star this issue:
http://code.google.com/p/googleappengine/issues/detail?id=113
[7:14pm] Back2Basics: is there a list of modules you can import that
google already has available?
[7:15pm] Jason_Google: AreEmmKay: At the moment, a Google Apps domain
is required. I don't know of any plans to change this in the near
future.
[7:16pm] smwaveforms: Jason, OK I may try an iframe in an iframe
(iframe one hosted elsewhere) thanks!
[7:16pm] AreEmmKay: OK. It's a problem I'll have to solve outside of
App Engine
[7:17pm] Jason_Google: LacrimaMax: I haven't seen this error before.
Have you tried rolling back your changes to see if it was something
you changed, perhaps accidentally, that caused this? Are you on a
different network, behind a proxy perhaps?
[7:18pm] Jason_Google: smwaveforms: Assuming my hypothesis is correct,
there really isn't any way to keep your app warm around-the-clock
unless you have a steady stream of users. This might be an interesting
idea for a paid service down the line though. I know you're not the
only one that runs into this.
[7:19pm] AreEmmKay: Followup then:  Is proxying considered abuse of
the service?  I could imagine implementing my domain support by
setting up a server elsewhere that proxy's www.somedomain.com to
myapp.appspot.com/domains/somedomain.com
[7:19pm] AreEmmKay: but I realize a proxy server negates at least one
of App Engines's advantages
[7:19pm] Jason_Google: Back2Basics: You should be able to import most
Python modules, e.g. os and so on. GAE's sandbox prevents you from
doing certain system operations like opening direct network
connections and spawning new threads/system processes, but many
standard Python modules are supported.
[7:20pm] DoctorLard: Jason_Google: cool surname.
[7:20pm] Jason_Google: DoctorLard: Thanks.
[7:21pm] LacrimaMax: I am not behind proxy. I'll try to roll back last
few changes and tell you result.
[7:21pm] Jason_Google: AreEmmKay: IANAL, but I don't believe this is
against the TOS. You may want to post this on the group first before
you do this so I can follow up and make sure.
[7:22pm] jumand: are there any plans to make "appcfg.py [options]
vacuum_indexes" work on the development server?
[7:22pm] AreEmmKay: jason_google: thanks
[7:23pm] adamgries: jason? you're on the appengine team?
[7:23pm] Jason_Google: jumand: None that I'm aware of. What use case
do you have in mind? It should be relatively easy to clear your
datastore and clear your indexes this way -- they don't incur the same
space overhead as they do in production.
[7:23pm] Back2Basics: Jason_Google: that's what I keep hearing.
[7:24pm] Jason_Google: adamgries: Yes
[7:25pm] jumand: I wanted to clear my indexes but keep my data, due to
changes in how I'm using the data.
[7:25pm] christianjo: Is there going to be an integration with Google
Voice - such as an API andtime soon?
[7:26pm] smwaveforms: TIA for handling incoming email. Any way we can
get a Google store like apple store?
[7:27pm] Jason_Google: jumand: Please file a new feature request. I'll
follow up on this myself. Are you running into errors relating to too
many indexes in your local environment?
[7:28pm] evilmushroom: howdy
[7:28pm] Jason_Google: christianjo: It's not on our current roadmap,
but please feel free to file a new request: 
http://code.google.com/p/googleappengine/issues/list
[7:28pm] Jason_Google: evilmushroom: Hi
[7:29pm] Jason_Google: smwaveforms: Incoming email support is coming
soon. Is that what you were asking? It should be here with the next
release.
[7:29pm] evilmushroom: Hi Jason_Google--- first gae chat for me. I
appreciate Google doing it.
[7:29pm] smwaveforms: very cool
[7:29pm] smwaveforms: a GAE store would be cool
[7:29pm] jumand: ok thanks, i'll file the ticket; no errors or
anything; i'm just trying to keep my index.yaml file clean, so that
errant/obsolete indexes are not re-created in production
[7:30pm] Jason_Google: evilmushroom: Welcome.
[7:32pm] evilmushroom: Jason_Google I am sorry if this you get bugged
about this a lot, or if it's out of place to ask--- but what is you
guys' perspective on custom domain/subdomain management via API on
google apps for gae? I know there is an issue for it--- I was just
curious.
[7:33pm] evilmushroom: I'm guessing that wildcarding subdomains might
be more difficult...?
[7:34pm] maxoizo: 2Jason: thx for update the archive with offline
docs, but it contains only EN version. Could you update it with other
languages (personally I need RU version)? Online docs has RU version.
[7:35pm] Jason_Google: evilmushroom: There is a lot of work happening
around Google Apps and App Engine integration, but I can't confirm
anything at this point. Right now, apps have to manually be added
through Google Apps per app.
[7:36pm] Jason_Google: maxoizo: Ah, interesting. Yes, that's a good
suggestion. I'll see if I can modify the script that we use to package
up the docs to include the international docs as well. Making a note
of that right now...
[7:37pm] evilmushroom: Jason_Google-- Right--- I'm in the process of
re-writing an application of mine that hosts a large number of hmmmm
"portals" or mini sites, if you will-- where I would need the capacity
to do that so naturally I'm curious.  Thanks
[7:37pm] maxoizo: 2jason: ok, thank you very much
[7:38pm] twilson: I got some interesting behavior linking h9 (google
health) account with AuthSub. Anybody want to take a crack at it?
[7:38pm] Jason_Google: evilmushroom: We definitely understand the
need, don't worry.
[7:39pm] Jason_Google: twilson: I'll try. Try being the operative word
there.
[7:39pm] twilson: sure. So I have a ghealth app at
chiefmedicalofficer.appspot.com
[7:41pm] twilson: Part of the login process is "do you want to link
your account?" and I have two issues with that: 1) I want to link
multiple profiles within a single account (settings->profiles in
ghealth page), and 2) it links the account on every login, so now if I
view my linked accounts, it has my app listed 50 times
[7:42pm] twilson: I think tackling 2) would be easier. I just want the
account linked once, not on every login
[7:42pm] maxoizo: 2Jason: Are there any progress in Firewall API?  We
can expect the inclusion of this feature in the next roadmap?
[7:42pm] Back2Basics: Would you say that gae is ferpa compliant?  (I'm
not asking about each individual app)
[7:42pm] twilson: I have some screenshots, trying to find a place to
put them now
[7:45pm] smwaveforms: Jason who admins the GAE application gallery?
How do we change text associated with our app in application gallery?
[7:45pm] Jason_Google: twilson: So you're making a health API call on
every page view? I'm not extremely familiar with the Google Health API
(hence "try" before), but does the service return some token that you
can cache in the datastore to keep the association without having to
request it on every page?
[7:46pm] Jason_Google: maxoizo: Unfortunately, no. It's not on the
current roadmap, and other features are being prioritized higher at
the moment.
[7:47pm] Jason_Google: Back2Basics: I don't know anything about FERMA,
unfortunately, so I can't say.
[7:47pm] Jason_Google: smwaveforms: I can make that happen.
[7:47pm] twilson: I am making a health API call where I need to
display data, but account linking only happens on login. I use a
session token for the life of a session, but after 3 months and 50
logins, I have the app linked 50 times
[7:48pm] jumand: I haven't found this anywhere in the GAE
documentation, but is there a per-min limit on number of datastore API
calls? if so, what is it?
[7:48pm] twilson: I have 3 screenshots here
http://code.google.com/p/chiefmedicalofficer/downloads/list
[7:48pm] Back2Basics: Jason_Google: ok thank you
[7:48pm] Jason_Google: twilson: I didn't think session tokens expire.
Did you sign out and sign back in 50 times? Either way, I'm not sure
if this is an App Engine problem. It seems like more of a Google
Health API issue -- this sounds like it would affect sites other than
*.appspot.com.
[7:49pm] Jason_Google: jumand: Yes. They are documented here:
http://code.google.com/appengine/docs/quotas.html#Datastore
[7:49pm] maxoizo: 2Jason: I understand that not on the current
roadmap, but i asked about next. Or in future you planned more
important features than security?
[7:50pm] twilson: possibly, I was hoping I'm doing something wrong
with the AuthSub token in python, but I can take this to the ghealth
group. Is there a ghealth irc?
[7:50pm] jumand: managed to miss that...sorry
[7:50pm] Theravadan: I think I have an awesome multi billion dollar
idea for you, are you ready Jason_Google?
[7:51pm] Jason_Google: maxoizo: We haven't planned the next roadmap
yet.  Once the current priority features are launched, I'll definitely
make a strong case for the DOS/access API.
[7:51pm] Jason_Google: Theravadan: Sure. Have you patented it yet?
[7:52pm] Theravadan: Jason_Google: no, but you will like this.
[7:52pm] Jason_Google: twilson: I don't know if the Health API team
has office hours. I doubt it though. There is a discussion group
though.
[7:52pm] Theravadan: So, to avoid adblock you can have your appengine
redirect urls for the path /myads to a "remote location".that is
handled by another app engine
[7:52pm] maxoizo: 2Jason: cool, thanks. I hope so
[7:52pm] twilson: thx, will post the question there
[7:53pm] Jason_Google: twilson: Thanks, and good luck. Sorry I
couldn't help you more.
[7:53pm] Theravadan: Jason_Google: so the image will be served via a
google appengine run by say Google, it records the impression/click,
displaying the ad. Adblock cannot get around that easily
[7:53pm] Theravadan: But this requires mapping say /myads to say
appgoogleads, giving it the parameter "myusername" so I as a publisher
can be credited.
[7:54pm] smwaveforms: ok, I'll send new text to your email that starts
with api
[7:54pm] LacrimaMax: Jason, if I have my app in the state, in which it
was several days ago, it updates Ok. But then if I do any changes to
any file, following updates are failed. Sorry, my English is poor.
[7:55pm] LacrimaMax: I am talking about BadStatusLine exception
[7:56pm] Jason_Google: Theravadan: Interesting idea. So you're asking
Google to create and manage an App Engine application for displaying
your ads to circumvent ad blockers?
[7:57pm] Jason_Google: smwaveforms: Thanks. Make sure to include the
name of the app also and any other information I can use to find it.
The next chat time isn't for another two weeks.
[7:57pm] evilmushroom: patented? oh god.. software patents...
[7:58pm] chilts: Jason_Google: apart from nickjohnson are there any
other Googlers who 'hang around' on this channel regularly?
[7:58pm] Jason_Google: LacrimaMax: So it works consistently before
your updates but after your updates, everything stops uploading? What
are you changing?
[7:59pm] Theravadan: Jason_Google: yes. I'd love to be able to
remotely invoke other app engines, I'm sure there are other
applications. But for online ads, it would be hugely useful to
circumvent ad blockers. Ad blockers would have to block at a per-site
level, and what if you have it change the url mapping to the remote
appengine  randomly?
[7:59pm] Jason_Google: chilts: Nick hangs out here the most. You might
notice Jeff_Google or jscudder_Google (I forget which name he goes by
in the channel) from time to time as well. He usually runs the office
hours in the other office hour session on the third Wed. of every
month.
[7:59pm] chilts: sweet, thanks
[7:59pm] smwaveforms: OK thanks for the help
[7:59pm] LacrimaMax: Yes. I make any trivial changes. Like change
string variable 'hello' to 'goodbye'
[8:00pm] LacrimaMax: Even after such changes it stops uploading
[8:00pm] evilmushroom: Nick? I seem to remember a nick in the android
channel....  although given the size of your company the chance of a
name hit is probably quite likely haha
[8:00pm] Jason_Google: Theravadan: You're more than welcome to file a
feature request; like you said, there's probably other applications.
But aside from the existing URL Fetch for making HTTP requests to
other sites (or apps), I wouldn't expect anything around the corner.
[8:00pm] maxoizo: Yep, CTR rating (and impressions of course) must be
increased if AdWords blocks be in the application URLs
[8:01pm] maxoizo: * destination urls of AdWords blocks
[8:01pm] Jason_Google: LacrimaMax: That's very strange. Is this a test
app? If so, can you zip up the source code and send it to me?
[8:02pm] evilmushroom: how prevelant are adblockers?
[8:02pm] evilmushroom: I guess I was under the impression a minority
used them
[8:03pm] Theravadan: Jason_Google: the problem with fetching URLs is
you can't trust that the publisher invokes you for each impression,
they might cheat. I'll file a request, if you talk to the doubleclick
guys there, they'll go bananas over this.
[8:04pm] Jason_Google: OK Everyone. This ends tonight's office hour
sessions. I'll be back in two weeks, Wednesday, October 21st, from
8:00-9:00 a.m. PDT, and you can catch me in the Java discussion group
until then -- we have other Googlers in the Python and general groups
too.
[8:04pm] Theravadan: thx
[8:04pm] Jason_Google: Therevadan: Well, I can't promise anything, but
I'll include it in my notes and see how excited they get.
[8:04pm] maxoizo: see you again!
[8:04pm] LacrimaMax: It's not test app. But I'll create new test app
and will test it for the same issues.
[8:04pm] LacrimaMax: Thanks, Jason
[8:05pm] Jason_Google: LacrimaMax: Sounds good. And if you see the
same thing, please let me know. There's something else going on there.
[8:05pm] Jason_Google: LacrimaMax: Feel free to send me the source to
the test app if it exhibits the same behavior.
--~--~---------~--~----~------------~-------~--~----~
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