Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Google Previews App Engine

Posted by Zonk on Tuesday April 08, @09:12AM
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

[+] Google Takes Down HuddleChat After Complaints [Warning] 156 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.
Google Previews App Engine More | Login | Reply
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.

Please Log In to ContinueClose 25 Comments More | Login | Reply /

 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • GAPE - Google App Engine
  • It looks very similar to Amazon's EC2 [amazon.com] 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?
    • If it's anything like Photoshop Express, you have all the rights to your code to lose (even with their revised EULA). If it's anything like the rest of google's services, you'll have to accomodate text ads.
      • by *weasel (174362) on Tuesday April 08, @10:35AM (#23000112)

        6.3. Except as provided in Section 8, Google acknowledges and agrees that it obtains no right, title or interest from you (or your licensors) under these Terms in or to any Content or the Application that you create, submit, post, transmit or display on, or through, the Service, including any intellectual property rights which subsist in that Content and the Application (whether those rights happen to be registered or not, and wherever in the world those rights may exist). Unless you have agreed otherwise in writing with Google, you agree that you are responsible for protecting and enforcing those rights and that Google has no obligation to do so on your behalf.

        8.1. Google claims no ownership or control over any Content or Application. You retain copyright and any other rights you already hold in the Content and/or Application, and you are responsible for protecting those rights, as appropriate. By submitting, posting or displaying the Content on or through the Service you give Google a worldwide, royalty-free, and non-exclusive license to reproduce, adapt, modify, translate, publish, publicly perform, publicly display and distribute such Content for the sole purpose of enabling Google to provide you with the Service in accordance with its privacy policy. Furthermore, by creating an Application through use of the Service, you give Google a worldwide, royalty-free, and non-exclusive license to reproduce, adapt, modify, translate, publish, publicly perform, publicly display and distribute such Application for the sole purpose of enabling Google to provide you with the Service in accordance with its privacy policy.

        8.2. You agree that Google, in its sole discretion, may use your trade names, trademarks, service marks, logos, domain names and other distinctive brand features in presentations, marketing materials, customer lists, financial reports and Web site listings (including links to your website) for the purpose of advertising or publicizing your use of the Service.

        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.
    • by Tyball (139432) on Tuesday April 08, @09:27AM (#22999368)

      It looks very similar to Amazon's EC2 [amazon.com] 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.
      It's actually nothing like EC2--EC2 is a virtualization platform. 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.

      Google's offering is more like a web framework hosted on Google's servers. Much different.
      • by sentientbrendan (316150) on Tuesday April 08, @07:23PM (#23006736)
        >It's actually nothing like EC2--EC2 is a virtualization platform.
        >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 know for a fact) that they are relying on limitations in the python environment they set up to provide isolation from hardware and google internals, instead of using virtualization or some other more general sandboxing method. This may bite them later, and they should really just provide some access to some C libraries, and let developers wrap them in whatever language and framework they need.

        2. They need to provide a MySQL service. MySQL won't scale up like their internal datastore will, but their internal datastore isn't relational and thus will be incredibly difficult to port existing applications to. They need to offer MySQL as a migration path and let business write against the google datastore as they are compelled to by scalability issues, and not all in one shot. Note that *many* aspects of a given application could probably be left in MySQL indefinitely, and in fact MySQL does scale up quite well, although not as well as mmphh mphh *cough* *cough* which google's datastore is built on top of.

        Still, right now google app engine looks like a good bet for a lot of smaller developers looking for a place to put their CRUD applications that will scale up once they turn into the next killer app, and I suspect this is what google is hoping for. Beware though, that writing for google's proprietary infrastructure is going to tie you to google in the future. This isn't that bad a thing, after all google is going nowhere and is probably going to provide reasonable procing. However, it is platform lockin, and you may have trouble moving your backend from google datastore to S3 or your own servers if you find a better pricing on competitors computers. Although maybe someone will write a cross platform API that wraps google and amazon thus commoditizing the services?
  • Obligatory (Score:4, Insightful)

    by buruonbrails (1247370) on Tuesday April 08, @09:23AM (#22999336) Homepage
    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..
  • First off (Score:4, Interesting)

    by Chrisq (894406) on Tuesday April 08, @09:31AM (#22999404)
    Implement your own GDrive - It shouldn't be to hard with 500MB of storage, user authentication, etc.
  • Why? (Score:5, Insightful)

    by Chineseyes (691744) on Tuesday April 08, @09:36AM (#22999434)
    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?
    • Re:Why? (Score:5, Interesting)

      by mobiGeek (201274) on Tuesday April 08, @09:49AM (#22999566)
      Because as a business owner you recognize the benefit of not having to invest in IT administration overhead?

      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?
      • Re:Why? (Score:5, Informative)

        by Chineseyes (691744) on Tuesday April 08, @10:07AM (#22999750)
        Because as a business owner you recognize the benefit of not having to invest in IT administration overhead?
        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.
        • Re:Why? (Score:5, Insightful)

          by IamTheRealMike (537420) on Tuesday April 08, @12:02PM (#23001304) Homepage

          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.

          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.

      • by merreborn (853723) on Tuesday April 08, @11:58AM (#23001254)

        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.
        The resources google's providing here cost hundreds or even thousands of dollars a month. The CPU limits on the cheap hosting plans you refer to give out after a few tens of thousands of pageviews.

        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.
  • by Idaho (12907) on Tuesday April 08, @09:36AM (#22999444)
    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..
    • Re: (Score:3, Insightful)

      Or, what happens if you would create anything that takes off and Google decides that they like it.. and that to me is the killer. If someone had a really good idea and it did well whats keeping someone at google from peeking at the code and creating a co
      • Re: (Score:3, Insightful)

        Peeking at the code? Seriously...there are an insignificant number of software applications where code is the true IP.

        Coding is never holy grail...it is a combination of the initial idea and the (often more importantly) the implementation of that idea tha
    • by Bazman (4849) on Tuesday April 08, @09:57AM (#22999638) Journal
      The SDK includes a standalone web server, so if you decide to move it off of Google's service, all you need to do is find somewhere to run that server. If you have a DNS entry for your app then you're probably a click away from moving it. Just run the dev server...

        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...

  • by saterdaies (842986) on Tuesday April 08, @09:48AM (#22999558)
    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).
  • The future (Score:5, Insightful)

    by pubjames (468013) on Tuesday April 08, @10:26AM (#22999976)
    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.
  • by Wiseman1024 (993899) on Tuesday April 08, @10:32AM (#23000054)
    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.
  • ...please turn off the L.A.M.P.?

    Thanks.
    • by hanshotfirst (851936) on Tuesday April 08, @12:27PM (#23001626)
      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?