Hidden Doodles in the Thanksgiving Google Doodle

Google has a pretty neat interactive Doodle for Thanksgiving…

There’s more, but I haven’t found them all yet. To find them, just get the right combination of shoes, hat, and feathers and poof, it transforms. 🙂

Google Maps traffic… it needs work.

I always wondered how Google Maps knew traffic conditions. Today, there’s a blog post where they explain it a bit better.

That ain't on an iPhone...
That ain't on an iPhone...

Basically, they simply have all the phones running Google Maps with GPS send back data as to a) where they are and b) how fast they’re moving. Both of which GPS gives you more or less by default.

It’s a clever idea, and I like it, but it fails in a couple of major ways, IMO.

Firstly, when I use Google Maps on my phone, I tend to not leave it open. Google Maps is fine, but it’s not a very good navigation system. It’s just a map. A real navigation app is worlds better. I recently got Navigon Mobile Navigator on the new iPhone, and it’s pretty slick. Thinking about a dashboard mount for it now, actually.

Secondly, this system relies on a lot of people having Google Maps open and running and sending back data. If nobody with Google Maps running has been on your street recently, you get no information.

What Google really needs to do is to open it up as an API. Let other navigation system manufacturers both send and receive traffic data from the Google Maps system. It doesn’t have to be complex.

Any good navigation app knows your location and speed, so a simple way to send that info could be made easily enough. The problem, of course, is allowing third parties to use the data.

Google Maps works in layers of images, which is one of its major shortcomings, IMO. The street views are images. The terrain are images. Just big sets of tiles that get displayed next to each other. And I’m almost certain that this traffic thing is just another set of images they’re generating or updating. For navigation providers that use 3d views and such, they don’t need that stuff in the form of images, they need it in the form of data. What streets are busy? How can that information be used to improve the navigation? Etc.

Google is generally pretty good at opening up their APIs to third parties. However, they’re generally not good at providing data in different forms. Most of their APIs are “this is what we use, if you need something else we don’t have it” sort of thing. Hopefully, the Google Maps team will see the light here and realize that to get good data, you have to give good data, and start pushing in that direction. Because open traffic data would be pretty cool for everybody.

Now this is a phone I might get…

According to the rumor mill, Google is creating their own phone.

I could definitely get behind this one, as opposed to the iPhone. They haven’t actually decided on a design yet, but some obvious things that will be included:

  • Google Maps
  • Google Calendar
  • GMail
  • GPS
  • Google Talk
  • Probably Google Documents and Spreadsheets

Considering the recent talk-talk about bidding for the 700 Mhz spectrum auction, it’s possible that they’re considering building their own large scale data network, much like they’ve already done in parts of San Francisco and such. If so, then it seems likely that the Google Phone would work on that network as well as normal cell phone networks.

Hopefully, they decide to sell the phone standalone, with no service. If it’s GSM, then in theory, I should be able to simply pop out my SIM card from my existing phone and pop it into the new one. That should be the way phone service works, this sucky tying the phone to the carrier business has to end.

Also, Google was making talk-talk about how they wanted the network spectrum to be required to be “open” in the sense of allowing mostly unencumbered network access for various things. The FCC went along with a couple of Google’s ideas, but not the full set. So I’m thinking that Google might push to buy the spectrum and turn it into a countrywide data network (which the winner of the auction is actually required to do anyway, within 10 years), but perhaps offer free network access in exchange for pushed advertising and such. Maybe even to the effect of creating devices that sit on your home network and access the internet via Google’s spectrum. That would be very cool, and well worth the trouble.

Fully Integrating Google Apps for your Domain

Having two email accounts can be a pain. I’ve been using my GMail account for a long time, but I like the niceness of my ottodestruct.com domain better. It’s cleaner, overall. A bit more professional as well.

I also use Firefox with the Google Toolbar. One of the nice things about it is the little GMail icon that checks your GMail every 10 minutes or so, and shows if you have new messages. It also lets you search your email right from the toolbar. Very handy.

However, I also use Google Apps for your Domain for my email. This basically makes all my ottodestruct.com email go through Google and their GMail interface. The Google Toolbar doesn’t work too well with that.

So I got bored and fixed all that. How to do it can be found after the jump…

Continue reading “Fully Integrating Google Apps for your Domain”

Google Checkout Prime!

You know what would be very cool?

If Google rigged up their new Google Checkout service with something like Amazon Prime, but for multiple sites.

Amazon prime is pretty cool. I signed up for it for a while, and getting free 2-day shipping for virtually everything you buy really rocks. You can order stuff without thinking about it too much. It’s a hell of a lot more convenient than hitting the store. And I ordered a lot of stuff through Amazon while I had Prime. Mostly books, but basically it lets those impulse purchases be extremely easy to satisfy. And that’s cool with me, because if I suddenly need Pocky, then I can satisfy that urge. Pocky rules.

But what sucks is that a) it’s like $80 a year and b) it only works with Amazon.com’s stuff, not all their partner’s stuff. When you search for stuff at Amazon, and get a list of products back, you have no idea whether or not it’s sold by Amazon and thus prime eligible. So you still kinda have to pay attention to some degree.

Google’s searching for products, on the other hand, is great. Google for it, then at the top of the page you get some products and prices and such. Hit the button to show all Google Checkout results for that product, sort by price, and bam, you’re right there. Go straight to the site and buy it. Since you use Google Checkout, no account setup crap is generally involved, it’s easy and painless.

If Google Checkout had something similar to prime, where the individual vendors didn’t charge for shipping, then it would be perfect. I don’t know how that would work, as the only way Amazon can do it is because of bulk or something. Maybe Fedex would be willing to cut Google a deal for all its partners with the Checkout service. I dunno. But still, it would rock a lot more than Amazon Prime would.

Picasa Web WordPress Widget

THIS PLUGIN DOES NOT WORK ANYMORE. I doubt I’ll be updating it any time soon.

Playing around with my new Picasa Web access, I found the RSS feeds quite nice. So I made a widget for them.

Picasa Web Widget

Basically it puts a slideshow of photo thumbnails from one or more Picasa Web RSS feeds into your sidebar. You can click them to go to the photo’s page on Picasa Web. Uses divs and names and all that good CSS stuff to make styling them easy, if you want.

Enjoy!

—-

Update: Version 1.1 actually works now. )

—-

Update: Version 1.2 now has four additional options. Now you can:
-Turn javascript image rotation on/off.
-Limit how many images will be rotated through.
-Display more than just the one image.
-Control whether or not the images are shown in a random order.

The image rotation script has also been corrected to work in both IE and Firefox (and probably others as well).

—-

Update: Version 1.3 adds Brian’s fix for filenames with unusual characters in them being in your web album.

—-

Update: Version 1.4
– Output will now validate as valid XHTML. Should work all the time. Important note: Use the class for CSS styling of anything, the ID is only there when you are only showing one image.
– Added the ability to display descriptions below the thumbnail. It even works with rotating images. )
– Fixed the case where you are showing multiple images in a non-random order.

—-

Update: Version 1.5 – Corrected a problem where it would only show the last feed when you give it multiple feeds.

—-

Update: Version 1.6 – Corrected some cases where the rotate images javascript would fail to work in certain scenarios.

New Photo Album

I just got access to the PicasaWeb test, and uploaded a bunch of pictures. Gotta say, this thing is great! Picasa is an excellent photo organizer, which now has a bunch of new features.

  • Geotagging of pictures, integrated with Google Earth.
  • Upload photos to your own online photo album.
  • Online albums have RSS feeds.
  • Choose the quality of your online pictures.
  • 250 meg of free album space (6 gig if you pay for it).

It’s good stuff, I recommend signing up if you haven’t already.

You can check out my public photo albums here.

Fun with Widgets

Note: The ExecPHP widget does not work in the upcoming WordPress 2.5. Therefore, if you upgrade to 2.5, you will need to install the updated version of this widget. It can be found here, now and forever more: http://wordpress.org/extend/plugins/php-code-widget/

A new plugin for WordPress came out that’s kinda cool. It’s called Widgets, and the general idea of it is to make the sidebars on your blog a bit more configurable, a bit more easily.

So, I decided to spend an hour or so converting my sidebars to Widgets so I could manage them a bit simpler. Editing PHP code is easy but time consuming, while dragging stuff and dropping it to rearrange the blog, well, that’s quick and easy.

Few things I learned:

  1. The Widgets Plugin does not like Windows. Since I run this site on a Windows box (edit: I did then, I don’t anymore, and anyway, they have fixed this problem since then), it needed some tweaking to make it work. For those who want to know, the problem is in the sidebar_admin_setup() function in widgets.php. More info on this problem is in the comments of this post.
  2. Text boxes are extremely useful when converting from your existing customized webpage to a widgets based one, as you can simply cut and paste chunks of HTML into them and voila, you’ve got a sidebar widget. However, there’s not a lot of text widgets available. If you need more text widgets, you will need to edit these functions: widget_text_setup(), widget_text_page(), and widget_text_register(). As it turned out, I didn’t need but 4 text widgets because:
  3. Despite how useful text boxes were for a quick migration, they were not enough.

So, I ended up writing two plugins of my own.

The first one is a Google AdSense plugin. You can download it here: gadsense.zip. It’s exactly the same as the Text widgets, but with (very) minor tweaks specifically for inserting Google Ads in the sidebars. Also, it shows a name of “Google AdSense” in the widgets panel, which is nice. Like the Text widget, you can have more than 1 of them, but unlike the Text widget, you can only have 4 of them, since Google’s TOS only allows 3 ads and 1 link block on a page.

The next one is also like the Text plugin, however it will also let you put PHP code into the text and have it actually work. Here’s the download: execphp.zip. Like the Text plugin, you can have up to 9 of them (more if you want to tweak the code). Note that any PHP code you put into the widget MUST be surrounded by <?php and ?> tags, just like writing PHP normally. Also note that this is isn’t exactly safe, as it’s just doing an eval() on whatever you put in there, so you have complete and full access, as does anybody else who can get to your admin screen. Still, it’s very useful.

Both of those are plugins. Just drop them in the widgets folder under the plugins folder, and activate them on the plugins screen. Then the widgets will be available for you to use on the widgets screen.

Hope these help somebody. They sure helped me. )

css.php