Google Previews App Engine
An anonymous reader writes "Google is giving a handful of web programmers the opportunity to create and run their own Web applications on their servers. Today's launch of a preview release of Google App Engine signals a new era of collaboration with third-party software developers. 'The goal is to make it easy to get started with a new Web app, and then make it easy to scale when that app reaches the point where it's receiving significant traffic and has millions of users," said Google product manager, Paul McDonald in a blog post."
GAPE - Google App Engine
Any fool can talk, but it takes a wise man to listen.
It looks very similar to Amazon's EC2 hosted server service. They even have a simplified database system much like EC2. That in itself is enough to scare a lot of people away due to the pain of future migration.
However, the free 500MB worth of storage is really attrative for anyone who wants to try a few things out online. I wish it supported more than Python, but they say they are working on it now. Getting a few more programming languages supported will make this much more flexible.
I'm signing up for a block. Who knows what I'll do with it. But at no cost, what do I really have to lose?
I for one welcome our new Google Cloud Computing overlords!
Jokes aside, if done right, this thing can bring Google to the position of total control over a large part of the Internet, which is a bit scary, to say it mildly..
Implement your own GDrive - It shouldn't be to hard with 500MB of storage, user authentication, etc.
As a software developer and business owner why would I want to leave myself at the mercy of Google like this by being tied to their service?
I think the invisible hand of the market has its middle finger extended
--A wise old fart named SC0RN
This seems to be where (web) application development is heading: quick prototyping, no or hardly any deployment, storage or scalability issues. It's quite tempting, to say the least. Now compare that to the development environment Microsoft currently offers...
If I where working at Microsoft development I'd be shitting my pants right about now (imagine pictures of Ballmer dancing and screaming "developers! developers! developers!" here). This is clearly what google's after now that they own search (and web advertising). They have been building huge datacenters for a while now, they own probably one of the largest distributed computing systems on earth (and know how to keep it up and running), *and* they own parts of the netwerk that connects it all together (fibre etc.).
And now they are offering all web developers the ability to use this infrastructure..
On the other hand, I do see some important privacy and security concerns here. If I owned a company, I'm not sure I'd trust all my source code, data etc. to be stored on Google's servers, which are (in my case) even in a completely different country with different laws, jurisdiction etc. Not to mention, what if I later want to migrate because I don't like the terms of service, etc. Or, what happens if you would create anything that takes off and Google decides that they like it..
Every expression is true, for a given value of 'true'
Originally, I thought that this would be a great competitor for EC2, but in reality it's very different.
EC2 allows you to configure a GNU/Linux environment to your liking and use it almost the same as you would use a dedicated server or VPS. Google's App Engine allows you to create Google Applications. They're written in Python (one of Google's production languages) and need to be written specifically to use things like Google's Bigtable.
That's not necessarily a bad thing. Google's infrastructure is top notch, but don't expect to try and launch the next Web 2.0 app this way. If you use Google's App Engine, your only course is independent or being bought by Google - because you'd have to rewrite so much of your app to migrate to other infrastructure. With EC2, it's decently easy to switch to dedicated servers. S3 could be replaced by a MogileFS cluster. That's much more appealing to anyone that isn't Google.
Essentially, Google's App Engine locks you into Google in a way that EC2/S3 doesn't lock you into Amazon (in fact, some of the considerations like lack of persistent storage make it easier to move away).
With their history of censorship and government complicity, I know I wouldn't. I don't even like using any of there products.
A lot of talk is made about making web applications scalable, but in reality, you're not likely to have 200 million users overnight. Facebook and MySpace have about 50 million users a piece, and the reason that they can't scale is because everyone who works at those places is a moron. I mean MySpace runs on Windows and SQLServer, and then they wonder why they can't handle the traffic, or there application is exposing bugs to end-users at a rate of tens of thousands per second.
If you can't support a web application with a million concurrent users, and 50k transactions a second on a $4000 piece of hardware, then that generally means one of four things is wrong:
1. You're paying way too much for hardware.
2. Your DB Server is slow as hell. For high performance try PostgreSQL or MySQL instead of Oracle/SQLServer.
3. You application platform sucks. Try J2EE/Model 2. I've worked with everything you can imagine and Struts 1/Velocity smokes any other web-application framework out there. On average, It's about 10,000 times faster than CGI/PERL. Don't believe me? Quit being a fan boy and actually do some experimenting yourself[1]. Try doing some load testing against the same application implemented in different languages and see for yourself.
4. Your code sucks. Try picking up some books on Design Patterns. If you can't tell me what a Flyweight is or explain how process and threading models work on your particular platform, then you shouldn't be writing web-applications.
[1] That's why they call it computer science not computer religion.
You don't. The business model is flawed.
The only persons able to use AppEngine are programmers. As such, setting up a LAMP configuration shouldn't be too hard. You can get hosting for 6 euro/month. Basically what they are saying is: we are between the 6 euro/month line and 0 euro/month. I don't see the business advantage here.
Scalability and performance management: they don't mention numbers. I therefore do not trust them.
Exit strategy: I can find a lot of LAMP providers, I know of only one Google AppEngine provider.
There are a billion more holes, but one argument is enough.
nosig today
It's inevitable -- someone will write an alternative hosting environment for App Engine applications. Google will also doubtless eventually start selling an App Engine appliance to start penetrating the enterprise market.
I think this move is being mis-characterized by a lot of people. I actually think this is a very clever move by Google, and a taste of the future.
One of the key ways Microsoft won the desktop OS wars was basically making it easy for developers to create applications for it. Google has realised that the focus for application development is moving from the desktop to the web. If they can create a system that makes it easy for developers to create web based applications, then developers are going to integrate what they develop with Google services, effectively giving Google the kind of lock-in that Microsoft had with the web.
I don't know why people keep comparing this to Amazon's EC2. This I think is very different, both technically and strategically, and it is all about providing online developers with a rich way to incorporate Google services into their applications.
I'm quite excited at this announcement. Basically they are offering me:
- A system on which I can create and deploy applications that will always scale automatically, the only difference when doubling my traffic being the invoice I get by the end of the month. I don't have to deal with engineering or choosing a safely scalable application framework, looking, paying and dealing with a scalable application server, database, shared storage system (e.g. a SAN) and load balancer, run and maintain a fast network, perform backups, etc. All I do is write and run the application as I need.
- A system where such costs (application server, database, storage, load balancing, network and backups) scale perfectly with the actual use (and presumably profit) of my application, without having to make any huge investments.
- A system that will allow me to start for free and try it all, or just work freely for my hobby community, granting me no less than 500 MB. The competition today consists of a handful sub-par free hosts with 50 MB, a crappily configured PHP 4.3 and don't ask for speed or availability.
- Integration with Google applications (GMail; presumably, with all of them in the future).
- A standarized development environment based on a truly high-level, productive, modern language (not that Java business crap, but something that actually allows you to work fast and smart).
Google hosting it? I couldn't give a damn. My applications are usually GPL, including the business ones. It's not the application what's sold, it's the development and the service, and even if it were the application, I would trust Google as much as I would trust any other host.
The only caveat I see would be the datastore, which is not a relational database supporting SQL, but I'd have to see how good it is. At least it supports transactions, which are the single most difficult feature to implement in your own storage system. Everything else is just comfort, and when you work in Python, a language with first-class functions, builtin lists and dictionaries, list comprehensions, generators, a real object system, decent properties, operator overloading, mixins and dynamic modification of anything, and a dozen more features traditional languages such as Java or PHP couldn't dream of, I'm not worried about being able to query my data comfortably.
I was about to say 13256278887989457651018865901401704640, but it appears this number is private property.
Not only that, but any startup that's built with this infrastructure would be incredibly easy for Google to buy and integrate if they become successful. If YouTube had been built with this, it would have been a drop-in replacement for Google Video. Or even better, Writely, kicking off Google's semi-recent bid for the Enterprisey market. For Google, any new online Office-style productivity apps that spring up and happen to be built with this framework will look like a Christmas present with a bow on it.
Not to be Captain Obvious here, but...
[x] Limited Language Choices
[x] Non-relational Database
[x] Giant, Centralized Processing resource
[x] Said resource shared with others
Oh, Goody! Google just invented the Mainframe.
Where do I sign up for my timeslice?
Why, oh why, didn't I take the Blue Pill?
From the FAQ: "Sockets are disabled with Google App Engine".
Don't get me wrong, I think the service is really cool, and I understand that maybe sockets could be abused but... am I the only one that thinks disabling access to the net severely limits a web app?
That said, I put myself on the waitlist. Even if I only ever use this for fun, it's worth exploring.
...please turn off the L.A.M.P.?
Thanks.