Slashdot Log In
Google Previews App Engine
Posted by
Zonk
on Tue Apr 08, 2008 08:12 AM
from the what's-not-to-like dept.
from the what's-not-to-like dept.
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."
Related Stories
Submission: Google previews App Engine by Anonymous Coward
[+]
Google Takes Down HuddleChat After Complaints [Warning] 157 comments
desmondhaynes writes "There were striking similarities between one of Google's App Engine demos, HuddleChat (a real-time chat application) and the Campfire app from 37Signals. Google has taken HuddleChat down from the App Engine app gallery." Google explains: 'The App Engine team was looking for some sample apps to help kick the tires on their new system, so we invited Googlers to build some as side projects. A couple of our colleagues here built HuddleChat in their spare time because they wanted to share work within their team more easily and thought persistent web chat would do the trick. We've heard some complaints from the developer community, though, so rather than divert attention from Google App Engine itself, we thought it better to just take HuddleChat down.'" We noted the launch of Google's App Engine yesterday.
Update: 04/10 14:51 GMT by KD : A reader wrote in to warn that the link in this article is infected. Windows users beware, and have your AV up-to-date.
Update: 04/10 14:51 GMT by KD : A reader wrote in to warn that the link in this article is infected. Windows users beware, and have your AV up-to-date.
This discussion has been archived.
No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
New Acronym (Score:3, Funny)
Re:New Acronym (Score:5, Funny)
Parent
Looks good and free (for 500MB worth) (Score:4, Interesting)
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?
Re:Looks good and free (for 500MB worth) (Score:4, Insightful)
Parent
Re:Looks good and free (for 500MB worth) (Score:5, Informative)
Terms of Service [google.com] and Program Policy [google.com] (afaics, just the usual hosting rules: no porn, gambling, piracy, spam, malware, hate speech, etc).
Also, adwords are pretty much 'Step 1' in trying to cover hosting costs for a fledgling webapp.
If all Google wants in return for free-ish hosting is something most people do anyway, I'd imagine most people won't blink.
If nothing else, I'd imagine many niche discussion boards will transition to GAPE in short order, once vBulletin is ported.
Parent
Re: (Score:3, Insightful)
hmm.. with that prediction i should probably start porting my django forum [sphene.net] to GAPE .. at least it is already django and python .. so i would "only" need to support the database backend ? great :)
Re:Looks good and free (for 500MB worth) (Score:5, Informative)
Google's offering is more like a web framework hosted on Google's servers. Much different.
Parent
Re: (Score:3, Insightful)
Re:Looks good and free (for 500MB worth) (Score:5, Insightful)
>You run an entire machine image of your choice on Amazon's infrastructure,
>and there's no explicit persistent storage except through the Ec2 interface.
It is geared towards solving some of the same problems as EC2 and S3 (how to deploy scalable web sites without having to build and maintain your own datacenters); however, it takes a different approach.
EC2 and S3 make you design your web stack from the ground up, choose your operating system, etc. They also let you run whatever kind of task you want, including stuff that runs in the background.
In contrast google app store limits your options, and provides it's own web framework, but is probably easy to get started with since they already handle things like load balancing for you, and starts your service up on a new machine if one crashes automatically, etc.
A lot of people have noted that you have to use python to develop, and that is one way that it lacks the flexibility of amazon's offering, but it is by far the least important! Google will doubtless add support for things like java and ruby in the future, as for them it is just an issue or wrapping an API.
The biggest concern that most people are missing is that this is a essentially a really big web server that they are letting you put your software on, and *just* a web server. From "http://code.google.com/appengine/docs/whatisgoogleappengine.html":
"when an application is called to serve a web request, it must issue a response within a few seconds. If the application takes too long, the process is terminated and the server returns an error code to the user."
That means you can perform *no* computationally expensive operations on their service. Most interesting web applications don't just process web requests, they use data that has complicated processing done as part of batch tasks. Internet search is the best example of this. It's not enough to have a database with the whole internet in it, you also need to generate an index, and that is an incredibly expensive batch job that must run on an enourmous cluster. That means if you wanted to implement something big like search on google app engine, you would need to roll your own cluster and then upload your stuff to google, *over the internet*. This is not practical because the terabytes of data involved may be quick to transfer across a lan in a data center, it will take a long time to transfer them across the internet...
In comparison, amazon will let you use the same service and data store both for interactive web applications, and backend batch processes. You could theoretically reimplement google search on top of EC2 and S3, but probably not on top of google app engine.
That said, I think that google is going to kick everyone's ass in this space in the long run. Google hasn't come out with every feature necessary for building big apps without having to worry about scaling, but for the features they have implemented, they've done it right, making it much smoother for the developer by handling administrative tasks. In comparison amazon's efforts give you all of the primitive tools you need, but then require you to roll a lot more of your own code.
When they get around to letting external developers run mapreduces (http://labs.google.com/papers/mapreduce.html) and similar long term distributed tasks by paying for CPU usage, they will have the opportunity to move into this space in a big way.
Aside from that, they need to provide better tools to migrate existing web apps to their service. Most people aren't going to write something serious for google from scratch, but might be willing to port an existing app that is facing scaling issues to explore cost/benefits of google's service. Right now, porting is much easier with EC2 since you can just image your existing servers and build on that.
Google needs to provide:
1. Some kind of language independence. Right now, it sounds like (although I do not kn
Parent
Re: (Score:2)
Well, if it's anything like some other Google sites, your entire site, if (after a couple years or so) they decide to change their terms of service:
http://lastgoogle.blogspot.com/ [blogspot.com]
That said, I'm looking forward to trying this out. But I'm not planning to use it for anything I consider too important or can't keep mirrored on my own system. Be careful.
Re: (Score:2, Informative)
GAPE (adopting the acronym from AccUser) is just a glorified virtual host. Not that it's a bad thing; that might be exactly what you need. EC2 is really more about computing power than the ability to serve up some webpages.
Re: (Score:3, Informative)
Re: (Score:2)
All the available blocks are now taken in their pre-release test. Much like Apple's iPhone developer program, they're now putting folks on the waiting list but you can download the SDK in the meantime.
Obligatory (Score:4, Insightful)
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..
Re: (Score:2)
Re: (Score:3, Interesting)
First off (Score:4, Interesting)
Why? (Score:5, Insightful)
Re:Why? (Score:5, Interesting)
Because as a business owner, you recognize that Google is investing in your business by seeding your startup costs?
Because as a software developer you recognize that leveraging the tools Google is offering (and will be adding to over time) will speed your time to delivery?
Parent
Re:Why? (Score:5, Informative)
So let me get this straight.. I leave myself at the mercy of google in order to save the cost of IT administration? That doesn't sound like a good business decision.
Because as a business owner, you recognize that Google is investing in your business by seeding your startup costs?
Startup costs? You can't be serious, both hardware and bandwidth are dirt cheap, in college (2000) between my four friends and I, we were able to start my first business using pocket money we earned from odd jobs. This is a VERY weak arguement.
Because as a software developer you recognize that leveraging the tools Google is offering (and will be adding to over time) will speed your time to delivery? I'd love an explanation on how this would speed up my time to delivery? I took a look at the video and read the article and it does nothing that I can't already do myself to speed up time to delivery other than have hardware resources readily available. But once again I leave myself at the mercy of Google for access hardware and bandwidth. Thanks but no thanks.
Parent
Re: (Score:3, Insightful)
It doesn't? So you don't use any web hosting services then, you host everything yourself? But wait, then you are at the mercy of your ISP. So do you have redundant connections? But wait, you're still hosting everything in one place, so you are at the mercy of floods, earthquakes, power outages, etc. So do you have geographically separated offices, with employees
Re: (Score:3, Insightful)
Re:Why? (Score:5, Insightful)
The point about App Engine is that it's based on Google technologies like BigTable and GFS (along with a bunch of others that I can't talk about, but are equally cool). The real saving is not on IT administration but on the enormous pain of scaling up your infrastructure as the site grows.
The IT industry is littered with companies that failed the scaling challenge and lost their advantage. Friendster is the canonical example. You really don't want to build a successful business and then see it fall over and die because you aren't equal to the challenge of resharding your MySQL databases every month.
But wait. There are other advantages. App Engine is really a platform for Google to expose its technology to others. Scalable databases is only one part of it. There are plenty of other advantages to running on top of the Google platform. I haven't had a chance to check out the videos yet, so I'd rather not shoot my mouth off, but seriously - the stuff we have here simplifies a *lot* of annoying goop that otherwise you'd have to handle yourself (managing datacenters being only one obvious example).
Having seen for myself what it takes to run a large, popular website at a high degree of availability, I'm pretty excited about the launch of this service (disclaimer: I work for Google but not on App Engine). It means people can spend more time writing interesting software and less time on crap like debugging database replication and figuring out the annoying parts of how to geocode Japanese street addresses - cuz we do it for you.
Parent
Re: (Score:2)
I'm a business owner and a wel developer
I watched the whole presentation. I failed to notice where they would help me to reduce any costs. I can already have (for free) everything I saw in this presentation (hosting excluded...And I don't pay this part...My clients do). It looks like a well balanced API, I won't certainly bash the work of those developers but there are already dozens of comp
flawed business model (Score:3, Interesting)
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
Re:flawed business model (Score:4, Insightful)
And those cheap hosting plans don't provide any sort of scaling. If you want to scale, you have to move to their dedicated servers, which cost just as much as everyone elses. Want to scale past a single dedicated server? You're on your own. They'll sell 'em to you, but load ballancing, database sharding... that's all on you.
This offer is unique. There is no comparable platform on the market.
Parent
Microsoft, take note (Score:4, Insightful)
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..
Re: (Score:3, Insightful)
Re: (Score:3, Insightful)
Coding is never holy grail...it is a combination of the initial idea and the (often more importantly) the implementation of that idea that make or break a company.
No business that creates an application within the currently published infrastructure of Google Apps Engine is going to have enough rocket science in it to worry about having it stolen by Google (or any competent set of developers
Re: (Score:3, Interesting)
But it is very very little web 2.0 software where looking at an existing implementation makes it any more easy to clone the implementation.
Remember that google still have to do a complete and independent implementation.
I do for example not really think that looknig at the slasthdot code, would make it any more easy for me to implement a complete clone of slashdot.
Re:Microsoft, take note (Score:5, Informative)
What you get from Google is the free hosting and access to the Google hardware. It might not be long before other providers offer Google App Engine hosting - it could become a standard. It looks like Django on steroids...
Parent
Re:Microsoft, take note (Score:4, Insightful)
Parent
Re: (Score:3, Interesting)
Which leads me to wonder...
Around here (developing Southeast Asia), connectivity to the rest of the world has its good days and its bad days.
People can either host locally, which means paying a lot, getting lousy customer service... and having good connectivity to internet users in the country, which is quite important.
Or they can host in the US, which means paying much le
... run my own Web applications? ... (Score:2)
wait
you meant on THEIR servers
right.
Very Different from EC2 (Score:5, Informative)
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).
Unless someone implements Google App Engine on EC2 (Score:3, Insightful)
Re:Very Different from EC2 (Score:4, Insightful)
http://simonwillison.net/2008/Apr/8/forms/ [simonwillison.net]
I would imagine that someone will also write some code to sit between your app and database, pretending to be the data backend that Google is providing, simplifying migration away from teh Goog.
Parent
Do you really want to give your code to Google? (Score:2, Insightful)
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,
Re: (Score:2, Insightful)
"Quit confusing people with facts." - Bill O' Reilly
Re: (Score:3, Interesting)
Really? You actually LIKE Struts? You have to be kidding me. Your statement may have been true 5 years ago but most of the Java industry has tried to move past Struts (including its author) and into something more testable and less verbose. Seriously, have you actually ever unit tested Struts code?
Your code sucks.
I love how this is the default answer. Sigh. A lot goes into supporting a million concurrent users besides "goo
Vendor Lockin (Score:2)
The App Engine datastore is not like a traditional relational database. Data objects, or "entities," have a kind and a set of properties. Queries can retrieve entities of a given kind filtered and sorted by the values of the properties. Property values can be of any of the supported property value types.
Say you create a successful app that really starts to take off. Are you stuck with google because the DB API will require massive rework if you want to migrate to another vendor.
Re: (Score:2)
And when I say "smart" I mean "unrealistically idealistic"
Re:Vendor Lockin (Score:5, Funny)
[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?
Parent
The future (Score:5, Insightful)
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.
Startup farming (Score:3, Insightful)
This is made of win and awesome (Score:5, Interesting)
- 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.
Re: (Score:3, Informative)
Note that transactions are semi-limited - you have to loosely partition your data into smallish chunks, and any given transaction can only act within one chunk. (There's no performance penalty to having /too small/ chunks, and indeed the default is to put e
Re: (Score:3, Informative)
Would the last one to leave Web 1.0... (Score:5, Funny)
Thanks.
Re: (Score:3, Insightful)