Google

Nice talk from O’Reilly OSCON Data 2011 by Steve Yegge on what programming/engineering activities are popular (cat pictures), and what should be popular (sequencing the human genome), and how some companies are trying to help facilitate a culture change:

Very cool.

It’s pretty impressive they can maintain something like a high-quality video feed whilst blasting around the Earth at almost 30,000 km/h, or 18,000 m/h — although I suppose zooming around the Earth at that speed is pretty impressive too.

Google just announced Google TV at Google I/O today. It’s basically a giant TiVo with Chrome built in:

Google TV is a new experience for television that combines the TV that you already know with the freedom and power of the Internet. With Google Chrome built in, you can access all of your favorite websites and easily move between television and the web. This opens up your TV from a few hundred channels to millions of channels of entertainment across TV and the web. Your television is also no longer confined to showing just video. With the entire Internet in your living room, your TV becomes more than a TV — it can be a photo slideshow viewer, a gaming console, a music player and much more.

It’ll be interesting if they can keep the streaming quality high. YouTube certainly doesn’t have the best track record in that department.

These devices will go on sale this fall, and will be available at Best Buy stores nationwide. You can sign up here to get updates on Google TV availability.

You Know Too Much, Google

December 17, 2009

in Fun

The Loneliest Number = 1


The Answer to Life, The Universe, and Everything


The Loneliest Number plus The Answer to Life


The Number of Horns on a Unicorn


Once in a Blue Moon


42, Unicorn Horns, Once in a blue moon

I’m not quite sure what I’d do without knowing that ((the loneliest number + the number of horns on a unicorn) / the answer to life the universe and everything) * once in a blue moon = 5.557096 × 10-10 hertz.

Thanks, Google. Really, Thanks.

December 13, 2009

in Fun,Web

While experimenting with the Google Similar Pages addon for Google Chrome, I tried it on this site:

PatrickMylund.com is similar to what?

I blame the addon’s “beta” label.

Speaking of, Google Chrome Extensions are out, and they are great — except for ‘Similar Pages’, of course.

Google logoGoogle has just launched a DNS service similar to OpenDNS, which I’ve written about previously. The service, dubbed “Google Public DNS“, aims to make domain name lookups (i.e. “What does www.google.com mean?”) faster, and is one of the steps in their plan to make the internet faster — or taking control of it, depending on how dramatic you want to sound.

You can test it by setting your computer or router’s DNS settings to the following DNS server IP addresses:

  • 8.8.8.8
  • 8.8.4.4

For instructions, see the Google Public DNS configuration instructions.

Unlike OpenDNS, which supports itself by providing advertisement-powered search pages for unresolved queries, Google promises that it will never do any form of redirection. A little strange, considering Google runs the largest advertisement service on the planet, but perhaps they genuinely just do want to make the internet faster.

In my tests, Google Public DNS had a significantly faster response time than OpenDNS from my location in Stockholm, Sweden (Europe). If you’d like to find out which DNS servers are right for you, Google also recently released a DNS server benchmark tool called namebench, which tells you just that, factoring in all of the major public DNS services as well as regional ISP DNS servers.

Note that you should never use DNS servers that you don’t trust. DNS providers have full control over what ‘google.com’, ‘gmail.com’, etc. mean to your machine, and can redirect connections to these websites to malicious websites without your knowledge.

A branch called chromiumos was just added to the official Chromium git repository, and the contents of the index files there indicate that Chromium OS, and in effect Google Chrome OS, is based on Ubuntu Linux. From chromiumos.git/src/package_repo/repo_list_image.txt:

  71 fontconfig 2.6.0-1ubuntu12 optional utils pool/main/f/fontconfig/fontconfig_2.6.0-1ubuntu12_i386.deb
  72 fontconfig-config 2.6.0-1ubuntu12 optional libs pool/main/f/fontconfig/fontconfig-config_2.6.0-1ubuntu12_all.deb
  73 gcc-4.4-base 4.4.1-1ubuntu3 required libs pool/main/g/gcc-4.4/gcc-4.4-base_4.4.1-1ubuntu3_i386.deb

Here are some videos from the Chromium OS website that just went live:

What is Google Chrome OS?

Chromium OS Security

Chromium OS & Open Source

Chromium Fast Boot

There’s a live transcript of the Google Chrome OS event speech by Google VP of Product Management, Sundar Pichai, over at TechCrunch. They have also just posted a video demo of Google Chrome OS recorded at the announcement event in Mountain View, showing off the interface, bootup times, and more.

Update: Ars Technica has just published an excellent analysis of Chrome OS.

Google logoIt seems very likely that Google is planning to release their own phone; not ‘merely’ a phone based on their mobile operating system, Android, but the Google phone — their take on the iPhone. Michael Arrington thinks the phone won’t be a traditional cellphone, but rather rely on data connections/VoIP via Google Voice entirely. Google already has the technology (they can rebuild him?) to give users of its Google Voice service real phone numbers; it seems like a logical next step.

Google is building their own branded phone that they’ll sell directly and through retailers. They were long planning to have the phone be available by the holidays, but it has now slipped to early 2010. The phone will be produced by a major phone manufacturer but will only have Google branding (Microsoft did the same thing with their first Zunes, which were built by Toshiba).

There won’t be any negotiation or compromise over the phone’s design of features – Google is dictating every last piece of it. No splintering of the Android OS that makes some applications unusable. Like the iPhone for Apple, this phone will be Google’s pure vision of what a phone should be.

I wonder if Google is having a serious go at world domination right now. First browsers, programming languages, operating systems, internet protocols, Wave, and now phones — where does it end? Oh well; for now, I don’t want it to.

Google Chrome LogoGoogle is apparently releasing their highly anticipated, lightweight, Linux-based operating system targeted at netbooks, Google Chrome OS, within a week, according to TechCrunch. TechCrunch also thinks we should expect shoddy driver support, which seems like a strange conclusion considering the maturity of the Linux kernel.

There’s really not that much information about the operating system, though it is safe to assume that there will be a strong emphasis on the Chrome browser and all of Google’s web-based services and applications.

Let’s wait and see.

Update: It seems that Google is planning a special Chrome OS event for Thursday, the 19th of November, which will include a demonstration and “complete overview” of Google Chrome OS. The product apparently won’t be released until (early) next year, but the wording “complete overview” gives me the impression that they are just polishing and testing now.

Update 2: Chromium OS is Out, and It is Based on Ubuntu Linux!

Go Language LogoGoogle has just announced the release of a new computer programming language named, quite creatively, Go. It is similar to the C family of imperative programming languages, but strives to be as simple in syntax as dynamic languages like Python and JavaScript. It aims to be very fast (both at compile time and at execution), safe, concurrent, memory-managed, speedy (in terms of developer productivity) and Open Source. Quite interestingly, some of its main authors are programming gods Rob Pike and Ken Thompson.

Here is an example of a simple web server written in Golang:

package main
import (
    "http";
    "io";
)
func HelloServer(c *http.Conn, req *http.Request) {
     io.WriteString(c, "Hello world!\n");
}
func main() {
     http.Handle("/", http.HandlerFunc(HelloServer));
     err := http.ListenAndServe(":80", nil);
     if err != nil {
         panic("ListenAndServe: ", err.String())
     }
}

I’m not sure what I think about Go yet; all of its features look extremely attractive, but I can’t shake the feeling of something being “off” somehow. For instance, I’m not particularly fond of the function name capitalization, and there are no generics/templates in the language (yet). I suppose the former might largely be a matter of conditioning, though.

One aspect of Golang that has really impressed me is how fast it compiles; you really have to see it to believe it. Projects with several thousand lines of source code compile in less than a tenth of a second on an average workstation. Sadly, I think this might mean we won’t be having as many office chair sword duels in the future:

xkcd: Compiling

Have a look at the Google Go TechTalk for an introduction to and overview of the language:

Note that Go (or Golang) isn’t to be confused with the Go! Programming Language. Why Google chose an almost identical name, or why they chose such a common word at all, I don’t understand. I’m rather fond of the term ‘Golang’ since, well, it makes sense. Ericsson previously made its own language, Erlang, so it’s only a natural addition.