Comment App Engine is great (Score 1) 396
Google App Engine is great.
Obviously lots of people around these parts have issues with the fact that you are giving Google control of your data, and that much is certainly true, but I think it misses the point.
Not every site needs to store people's private data, and for everything else GAE is a Java developer's dream come true. It's incredibly fast to get set up, the APIs are all very intuitive to anyone with experience in Java webapp development, it scales quickly and powerfully when it gets hit by a flood of users, and the management tools and UI are top-notch. On top of that, the free quotas are fairly generous, and charges after that are reasonable.
My only real complaint would be the BigTable-based database. They expose it (as an option) with JPA, and it's tempting to treat it as a relational database, which is decidedly isn't. You'll get terrible performance and quickly use up quotas if you don't spend a lot of time designing for the storage model they use, which is probably best described as a hierarchical tree of maps.
(For what it's worth, and I'm sure I'll regret doing this, here is a recent app engine based project I worked on, tracking Toronto's streetcars)
Obviously lots of people around these parts have issues with the fact that you are giving Google control of your data, and that much is certainly true, but I think it misses the point.
Not every site needs to store people's private data, and for everything else GAE is a Java developer's dream come true. It's incredibly fast to get set up, the APIs are all very intuitive to anyone with experience in Java webapp development, it scales quickly and powerfully when it gets hit by a flood of users, and the management tools and UI are top-notch. On top of that, the free quotas are fairly generous, and charges after that are reasonable.
My only real complaint would be the BigTable-based database. They expose it (as an option) with JPA, and it's tempting to treat it as a relational database, which is decidedly isn't. You'll get terrible performance and quickly use up quotas if you don't spend a lot of time designing for the storage model they use, which is probably best described as a hierarchical tree of maps.
(For what it's worth, and I'm sure I'll regret doing this, here is a recent app engine based project I worked on, tracking Toronto's streetcars)