Meet Go, Google’s New Programming Language

Author: admin  //  Category: Uncategorized

Google has released a brand new programming language it hopes will solve some of the problems with existing languages such as Java and C++.

The language is called Go, and it was released under an open source license Tuesday. Google is no stranger to the open source world. The company has released the underlying code for several of its tools and services under open source licenses over the years. Just last week, Google released its Closure JavaScript tools for building Ajaxy web apps. And now Google has considerably upped its investment in free software with the release of Go, which is an entirely new programming language.

At first glance, Go looks a bit like C++, but borrows some elements, such as garbage collection, from scripting languages like Python and JavaScript. But Go’s real standout feature is its speed. A demo video shows the entire language — over 120K lines of code — compiling in under 10 seconds.

As a systems language, Go is intended to be used to developer applications like, for example, web servers. In fact, the golang.org website is being hosted by a Go program. But as Go developer Rob Pike says in recent Google Tech talk, “although Go is designed as a systems language, it has a much broader use than that.” Pike goes on to cite front-ends and other general purpose programming that Go can handle.

One of the most appealing parts of Go is its ability to handle multi-core processors and, as Google’s FAQ explains, “provide fundamental support for concurrent execution and communication.”

Existing systems languages like C++ evolved long before today’s modern, and very fast, processors hit the market and make supporting multi-core chips more difficult. While Google could have concentrated on writing libraries that can handle those tasks in C++, the developers behind Go say that “too many of the problems — lack of garbage collection, long dependency chains, nested include files, lack of concurrency awareness — are rooted in the design of the C and C++ languages themselves,” and decided it was time for something entirely new.

Like many of Google’s open source projects, Go began life as a 20 percent time project (the time Google gives its engineers to experiment) and evolved into something more serious. Go has been in development for over two years now, but Google is hoping that, by releasing Go under a BSD-style license, a community will develop and build Go into a viable choice for software development.

At the moment, Go is still very young and experimental. Even Google isn’t currently using Go in “large-scale production” applications. While the site that’s hosting the code is running a server built with Go as a proof-of-concept, the primary purpose of this release is to attract developers and help build a community around Go.

Despite it’s fledgling status, Go already supports many of the standard tools you’d expect from a systems language and even includes support for other Google tools like Protocol Buffers.

Also, it’s worth noting that Google’s Go is not to be confused with an existing language entitled Go! (note explanation point). Google Blogoscoped reports that Go!’s developer Francis McCabe would like Google to change the name of Go, but thus far Google has not responded to that request.

At the moment Go is only available for Linux and Mac OS. If you’d like to learn more, check out the video of Pike’s tech talk below (it’s long, but offers a pretty thorough overview of Go) or head to the new Go website.

See Also:


View this Post in: English Chinese(S) Chinese(T) French Arabic Bulgarian Croatian Czech Danish Dutch Finnish German Greek Hindi Italian Japanese

Google Cuts Online Storage Pricing, Fuels Anticipation for Cheap Cloud-Based OS

Author: admin  //  Category: Uncategorized

Google has dropped the prices for extra storage space in Gmail and Picasa. Ostensibly the prices have gone down because storage costs have dropped, but it might also be a necessary move anticipating the coming Chrome OS, which will likely need sizable online storage space.

For now, if you need some extra space for your Gmail or Picasa Web Albums, you can get it at a much more reasonable price. You can now buy 20 GB of storage for $5 a year — that’s twice as much storage for a quarter of Google’s old prices.

If that’s not enough, you can pick up 80 GB for $20 a year, 200 GB for $50 a year and so on, all way up to 16 TB of storage for $4096 per year. The Google Accounts page has a full list of pricing and storage options.

Compared to other online storage solutions, like Dropbox, which charges $240 per year for 100 GB, Google’s new pricing looks pretty good. Of course Google’s extra storage doesn’t sync files between computers like Dropbox does, but it might when Google’s Chrome OS finally emerges.

Chrome OS is little more than a vague press release at this point, but based on what we know, Google plans to make Chrome OS a lightweight operating system for netbooks with a strong link to the cloud — think a web browser on top of a bare-bones Linux kernel.

Given the space limitations of netbooks, and Chrome OS’s integration with online Google Services — like Google Docs — it makes sense for Google to offer large amounts of storage on the cheap. In fact, Google wouldn’t be the first to do so. Many netbook makers, like Asus, already offer free online storage in conjunction with the purchase of a netbook.

There’s also, as Google Operating System speculates, the possibility that the storage increase will go toward the long-fabled “GDrive.” According to rumors that have been circulating for years, Google is hard at work on a Dropbox-like, cloud-storage and syncing service. It’s already known Google has a massive storage grid called Platypus which the company uses as its storage back-end for most of its web-based tools.

While there’s no question that such a service would be a huge sell at these prices, GDrive remains a mere rumor, one that, quite frankly, we stopped believing years ago.

There’s no telling what Google plans to do with its additional storage offerings in the future, but at least, for now, you’ve got a much cheaper way to back up all those hi-res photos in Picasa or expand your Gmail account far beyond its current 7+ GB limit.

We should also point out, if you’ve already paid the old prices for additional storage, fear not, Google will automatically bump your storage space. For example, if you paid for 10 GB of storage at the old pricing you should now have 80 GB of storage available.

See Also:


View this Post in: English Chinese(S) Chinese(T) French Arabic Bulgarian Croatian Czech Danish Dutch Finnish German Greek Hindi Italian Japanese

Mozilla Paves the Way for Firefox 3.6 With Second Beta Release

Author: admin  //  Category: Uncategorized

Just two weeks after the first beta release of Firefox 3.6, Mozilla has already pushed out a second beta for users to test. Mozilla is making good on its promise to deliver Firefox 3.6 without the extended delays that plagued the 3.5 release.

Firefox 3.6 beta 2, released Wednesday, brings 190 more bug fixes to the table and offers the same performance boosts we saw in the first beta release. Firefox 3.6 also includes a number of new features like support for Personas, native tab-previews for Windows 7 and Web Open Font Format support for developers looking to use new fonts on their sites.

For a more in-depth look at what’s coming in the next version of Firefox — due to arrive in final form sometime before the end of 2009 — have a look at our coverage of the first beta release.

While Firefox 3.6 is still a beta release, if you’d like to test out the new features you can grab a copy from Firefox beta page. Also, if you’re running beta 1, you’ll notice Firefox probably gave you an alert as soon as beta 2 was ready.

So far, we haven’t noticed any show-stopping bugs in beta 2, but keep in mind that most extensions haven’t been updated to work with this release. That said, a few of our favorites do indeed work, notably AdBlock Plus and Firebug, though in both cases you’ll need to make sure you have the latest versions of the add-ons.

You can help out add-on developers by grabbing the Add-on Compatibility Reporter, which will run all your extensions even if they haven’t been updated. Any resulting bugs or strange behaviors can be easily reported to the developers through the Add-ons Manager.

See Also:


View this Post in: English Chinese(S) Chinese(T) French Arabic Bulgarian Croatian Czech Danish Dutch Finnish German Greek Hindi Italian Japanese

How to Handle Mobile Site Redirects

Author: admin  //  Category: Uncategorized

Building a mobile-optimized website is an increasingly common task being asked of web developers. Mobile-optimized designs take into account small screen size and often compress content for delivery over slower networks.

Mobile sub-sites are often the first strategy developers turn to. But at the same time, full-fledged mobile browsers like Safari, the Android browser and Opera Mobile mean that many users don’t necessarily need a mobile site; their browsers are capable of rendering any page, albeit with some pretty tiny text.

This creates something of a problem for web designers — how to you handle mobile visitors? Should you redirect them to your mobile site? Just serve the full size version? Offer links from one to the other?

Those are the questions Django developer Eric Holscher recently raised on his blog asking the community how to handle mobile browsers. Holscher breaks down the possible use cases for a mobile site as follows (note that all of these scenarios involve some sort of user-agent detection):

  • No Redirects — In other words, the mobile site lives at a distinct URL, but by default the main site is served to everyone, regardless of browser. The advantage is that those who don’t want a mobile site don’t get one, but at the same time some of your visitors might want a mobile site and in this case they can’t get to one without some effort on their part.
  • Redirect once (opt in) — As Holscher defines it, this “allows the mobile user to get a glimpse of your mobile site the first time they visit, and can then choose to visit in the future.” The problem here is that mobile browsers don’t always do well with cookies.
  • Always redirect (opt out) — In this scenario, users are always sent to the mobile site, but offered a link to the full site. If you do use this scenario, for the love of angle brackets, make sure you direct to the full URL of the page your visitor is currently reading. Redirecting from a blog permalink to the mobile homepage is about as useful as giving away free buckets of hamster vomit.
  • Interstitial page — Holscher doesn’t mention this one, but it does come up in the comments on his post, where several developers suggest offering a link before the page loads. Something along the lines of, “would you like to view our mobile site or the full size version?”

So what’s the best solution? Well, there is no one-size-fits-all answer. Which option will work best for your visitors depends on several factors.

Is your mobile site functionally identical to your full-sized site? If so, then there’s no real harm in redirecting to the mobile version. Just make sure you offer a link to the same page on the normal site for those who don’t want the mobile version.

This seems to be one of the more common workflows for mobile sites — Google’s mobile apps, Wikipedia’s mobile site and even Facebook.com take this approach.

If your mobile site lacks certain features found on your main site, we suggest avoiding redirects. The thing to keep in mind with a functionality-limited site is that, while your mobile site might not be a full-class web citizen, there’s a good chance your mobile visitor’s browser is a full class browser, which means they might not want to deal with your mobile limitations.

Regardless of which solution you chose, pay attention to your logs and watch your user’s behavior. If you see a lot of redirect traffic immediately clicking the link back to your main site it’s time to rethink your strategy.


View this Post in: English Chinese(S) Chinese(T) French Arabic Bulgarian Croatian Czech Danish Dutch Finnish German Greek Hindi Italian Japanese