Hacker News new | ask | show | jobs
by jimrandomh 5688 days ago
There are a lot of apologists here, and they're all missing the point. Google App Engine has a large number of random issues and limitations which, while they each individually seem like they ought not to matter, add up to a substantial risk for a project running on it. I'm currently working on a project with a web component, and considered GAE. I chose not to use it, because some of the stuff I encountered in the documentation is absolutely terrifying. You're supposed to handle exceptions from the datastore? Really? The best you can possibly do is retry, but if that was going to work the library would be doing it automatically... so I guess it's saying that your app might just randomly fail sometimes. No https with a domain? I guess ever taking credit card numbers is off the table. Thirty second limit per request? Sounds reasonable, except for all the complaints about the app engine taking thirty seconds just to load the Python interpreter and compile their code. That sort of shit will sink a project; until App Engine has had a lot more time to sort out its issues and mature, I want no part of it.
3 comments

I'm not an App Engine apologist, although I'm seriously evaluating it for my current project. That said, could you please clarify the following points:

1. "You're supposed to handle exceptions from the datastore? Really?" — Are you saying you don't handle exceptions when your regular relational database throws them? I've seen Sybase and MySQL blow up with depressing regularity, and have had to write exception-recovery code for them.

2. "No https with a domain?" — What stops you from making https://<your-app>.appspot.com the handler for forms which read sensitive information? You can submit the form with XHR, have the server send back a structured response (perhaps as JSON), and deal with it with JavaScript on the client. I admit that it's annoying (you need different form submit targets in development and production), but it shouldn't be a deal-breaker unless you need your entire site to use SSL.

(If you do need your entire site to use SSL, then the appspot domain limitation obviously sucks. If that's the case though, then you're probably doing something with finance, and the datastore's transaction semantics probably cannot work for you at all.)

Re: https with a different domain. XHR doesn't let you access a different domain, you'd have to use JSONP which won't let you trap errors easily. And if I weren't sitting at a page served by HTTPS, I would not enter credit card information, and most web users are trained to look for the padlock icon and all that.
Google Checkout Gadget aside, I find it interesting that this is the closest thing Google has to offer for an individual or business to build a hosted online e-commerce presence (https exceptions aside).

Compare that, in terms of functionality and revenue generation, to Yahoo! Store (Viaweb), and it seems like Google really has its priorities with App Engine askew.

Obviously, the scope of Viaweb's functionality is much, much narrower than that of GAE, but what is the purpose of GAE from Google's perspective?

Surely, it is not to create bitchfests for upset developers on tech blogs. It doesn't seem like revenue generation, nor developer satisfaction is a priority, either.

It's generally not that hard to make it work well... though the datastore issues over the past few months were a real nightmare and could have (and probably did) sink a few businesses.

That said, it's a beta product.

"""That said, it's a beta product."""

It always is with Google. When exactly do you expect the "rc"?