Posts Tagged ‘Google’

Reliability On The Grid

There’s been a lot of discussion lately (in particular NYTimes, Data Center Knowledge) regarding both reliability of web applications which users are becoming more and more reliant on, as well as the security of such applications. It’s a pretty interesting topic considering there are so many things that ultimately have an impact on these two metrics. I call them metrics since that’s what they really are.

(more…)

Google Open Sources Browser Sync

Google decided to open source it’s no longer supported browser sync extension. You can find the Google Code project here. The other major extension in this category is Mozilla Weave. I’m not sure what (if any) functionality might be gained by combining efforts, though I’ve seen some suggestions around the web to that effort. Anyone dig into that source code?

Google’s on roll with open source lately.

Google Releases Protocol Buffers

Google today released Protocol Buffers. Protocol Buffers is their “language-neutral, platform-neutral, extensible mechanism for serializing structured data”. In general it’s pretty interesting stuff, and looking over the docs, seems pretty well thought out.

I agree XML is bulky and wasteful for the task. There’s a reason why many web developers prefer JSON rather than actual XML when using xmlHttpRequest: XML parsing can be a real performance killer. JSON in my mind is currently the winner in this department since it’s light weight, simple, and a can be interpreted by pretty much any language on the planet (may need to install a module, gem, extension, or include a class). The downside to JSON is that it doesn’t really allow you to define structure. JSON also is still not binary format, so you have a performance penalty to parse the string. The upside is that JSON is rather easy for humans to read (great for debugging). The NY Times even made a database abstraction layer called DBSlayer that interfaces using JSON.

Serialized PHP has become somewhat popular (Yahoo Developer Network API’s support it), but it’s language specific, though interpreters that can read/write it exist for other languages including Perl, Python and Java. It’s also somewhat complicated for what it provides. At a glance it’s a string of garbage until you break it down.

It looks like Google already has support for Java, Python, and C++. It’s only a matter of time before Perl, PHP, and Ruby get support for Protocol Buffers as well.

I could see Protocol Buffers being pretty useful in combination with Memcached.

It’s great to see Google open sourcing stuff like this.

Gmail’s Remote Signout And Logging

Google has recently upped their profile in regards to security and privacy. Last week Google made the subtle change of adding a privacy link to the homepage. This is common on most sites, but avoided by Google because they are very strict about cluttering their homepage. Privacy groups have wanted this for years, so this is a pretty large win.

Today Google announced it’s rolling out the ability to remotely sign out other computers from your Gmail account. You’ll also be able to view the IP address, interface (web, mobile, IMAP, POP3), and time that anyone has logged into your account. This is a groundbreaking change in regards to email security.

Now it’s possible for email users to review the logs and see if and when anyone else has accessed their personal email.

I suspect Yahoo, and Microsoft will be working to copy this feature, perhaps with their own enhancements (invalid password logging maybe?). I can also see Facebook and MySpace rolling out a similar feature in the near future. It’s an easy enough enhancement that provides a lot more comfort and security to the product.

Employers going through employees personal email has been hostile waters for a long time including a recent high profile case. This is certain to agitate that. I suspect there are a few companies who will be updating their policies in the next few weeks to try and protect themselves. There will even be a few who will sue Google claiming libel or that Google’s privacy policy should cover you when you log into someone else’s account provided you have one of your own. This is guaranteed to happen.

It’s a good move by Google. This feature greatly enhances the security of Gmail and puts it in a class well beyond what Yahoo or Hotmail currently provide. This is likely the biggest threat to email other than viruses which they all scan pretty well, and phishing, which they also do a decent job with.

WWDC 2008 Analysis

iPhone 3G

The Presentation

As usual I keep tabs on all the major Apple events using pretty much all the top tech sites that run “live blogs” and the like. This year none failed completely though I think they all were overcome with traffic at one point resulting in a failed load attempt. Not bad. This year I threw twitter into the mix. That was pretty interesting itself. Kevin Rose pointed out a decent audio feed. I did this in the background while I worked.

One thing I did note is that the parade of iPhone Apps got pretty painful after a while. Just wanted to yell out “we get it… cool apps built quickly… move on!”. For those who were following along at home, my predictions were mostly right (yay me!).

iPhone 3G

To me, this was really what the announcement was all about, and I’ll explain why a little later. The obvious big gain is the performance of 3G. This will win over a lot of people who just couldn’t imagine paying that much and surfing the web with EDGE. Another awesome addition is GPS support. It’s notable since geolocation is the “next big thing” [I should note update GeoLocateFox... I was ahead of my time]. I suspect there may be a few other goodies under the hood of this new iPhone that have yet to be revealed due to the suspected chipset. If Apple doesn’t unleash the full power, hackers will. Rest assured.

The real big thing here is that the phone is now much cheaper with a much more reasonable amount of storage on board. $299 for the 16GB model and $199 for the 8GB model. This is substantial for a few reasons. Besides obviously saving some cash, it makes the phone suddenly a possibility for people who would have never shelled out the original sticker price.

AT&T’s pricing looks to be $30 for unlimited data. The cheapest Voice/Data combo you could do would be $69/mo. That’s $10 more than it was for the first generation. Presumably that will help curb the cost of the massive 3G upgrades they are doing and subsidizing the iPhone’s hardware costs.

iPhone Apps

Pretty impressive demos from the screenshots I’ve seen. I’m really interested in more basic stuff should I get an iPhone. SSH, FTP, Email that doesn’t suck. I’d prefer to read/write office docs, but I guess I can always use something like Google Docs, which I’m sure will support the iPhone at some point if it doesn’t already.

Rather disgusted that I haven’t seen anything really change in terms of Application distribution or licensing. Apple is still very prohibitive of what it will allow. Don’t hold your breath on Firefox or Java anytime soon.

Apple will let you distribute Apps for free (how kind of them), but you still need to pay $99 to provide a free Application:

Standard Program $99
The Standard Program is for developers who are creating free and commercial applications for iPhone and iPod touch.

How about no charge for Applications with an OSI approved license Apple? Seems fair. No charge, and you get more software to make your ecosystem look more attractive.

Strikes me as pretty lame that a developer needs to pay $99 so Apple will let others use software for free.

  1. Disable download/install functionality.
  2. Charge $99 to distribute applications, even if they are free.
  3. Profit!

MobileMe

I was wrong regarding the use of MobileMe. Sadly it still doesn’t seem to fit the bill for something worth $99. Google provides most of the functionality pretty nicely. I suspect Google Calendar will get some iPhone sync love in the near future. In my opinion would have been better to just partner with Google and offer something really awesome and let Google monetize it. I suspect they didn’t do this because of the whole Android thing.

Jailbreak

Jailbreak is far from dead. The SDK isn’t open enough to kill off Jailbreak. Expect it to live on an coincide with Apple’s efforts for some time to come.

Mac OS X 10.6

Damn you NDA… would someone start leaking the goods ;-) . There’s some basic info out there, but nothing really juicy yet.

Photo Courtesy of Apple

WWDC 2008 Predictions

And the a tradition continues. Here’s my predictions for WWDC 2008. Steve Jobs will announce the following:

iPhone 3G

Well duh. At this point if it’s not at least announced, Apple’s stock is going to tank. There’s a ton of stuff to back this up including AT&T telling employees not to take vacation in the near future. And mystery shipments of presumed iPhones. I’ve got a good idea what the technical specs will likely be.

AT&T Subsidy

AT&T will likely subsidy the new iPhone when purchased with a 2 year contract to help lower the price and encourage more people to buy it. This is looking even more likely as the economy declines and potential buyers may now be more hesitant.

.mac to become me.com and mobileme.com

.mac will finally die and be replaced with me.com and mobileme.com. I suspect mobileme.com will be free for iPhone users. me.com may be paid if Apple does it in-house, or free if they contract the functionality out to someone like Google (which is likely).

Mac OS X 10.6 Insights

I don’t think we’ll see it until at least late 2009, more likely early 2010, and I doubt Steve will suggest any faster of a timeline. Remember after 10.3 the plan was slower OS releases. I suspect it will stay that way. I don’t think Apple likes the idea of two Mac OS X branches, the mobile and desktop one. I suspect 10.6 will be an effort to “unify” the platform at least from a marketing perspective. Starting from WWDC 2008 onwards I suspect a “Mac OS X powered phone” will be more common branding. Again Apple’s goal is to sell computers. Using the iPhone as a method to sell the desktop experience is pretty obvious. But what does that mean for the OS? Likely a lot of focus on things like Sync, the future of tech (64bit, multi-core, intel) and blurring the distinction between phone and computer. I don’t think we’ll see much more than a little eye candy and some buzz words considering we’re not far from Leopards release. Just enough to get the press talking about it.

New Desktops / Laptops

I don’t think Apple plans any desktop/laptop announcements just yet, I suspect they will hold off until August as tradition. At that point pretty much all of Apple’s computer lines are due for a major overhaul. I suspect the MacBook Pro may be the first to experience a major design change. Apple desperately needs a mid-range tower to build more market share as the Mac mini is under powered and the Mac Pro is very expensive. If anything is announced I suspect it will be just that.

Special Guests

No idea who the special guests will be. If the new iPhone is based on Atom, I suspect an Intel Exec. Other than that, really don’t know. Likely an iPhone developer or two will make an appearance during the iPhone Apps part. No clue on musical guest.

So there you have it. We’ll see Monday what I got right.

.mac To Become Me.com And MobileMe.com

A few days ago, various websites noted a change in the recently released Mac OS X 10.5.3 that Apple replaced hard coded references of .mac with a variable, as if they plan to change the name at some point in the near future (WWDC 2008 is just around the corner).

Now it appears Apple owns me.com and mobileme.com. The SOA records confirm me.com, though not mobileme.com is owned by Apple. The timing and name strongly suggest the same owner. MarkMonitor.com manages domains for most of the large tech companies including Apple, so that’s to be expected. Remember Apple owned iPhone.org for ages before actually launching the iPhone, so it’s not impossible that this is just a strategic purchase and has nothing to do with a WWDC 2008 announcement.

;; QUESTION SECTION:
;me.com.                                IN      SOA

;; ANSWER SECTION:
me.com.                 77583   IN      SOA     ns1.markmonitor.com. eddingsk.apple.com. 2008052918 28800 7200 604800 86400

;; Query time: 16 msec
;; SERVER: 68.87.64.146#53(68.87.64.146)
;; WHEN: Sun Jun  1 22:17:29 2008
;; MSG SIZE  rcvd: 91

Considering the tight relationship between Google and Apple thanks at least in part to a certain someone, one must wonder if .mac will be replaced by a Google powered service. Google already offers pretty much the entire product line. It might make sense for Apple to just outsource the .mac operation to Google. Apple initially planned for .mac to be partially free (and it was initially), but costs forced it to be a paid only service. Letting Google power it, would undoubtedly be cheaper since Google has an ability to scale is unrivaled.

I’ve got to put together a better list of predictions before WWDC 2008 (as tradition requires). But this is likely one of them.

Usefulness + Speed = Users

As a frontend developer I’ve long argued the magic formula for a good website is:

Usefulness + Speed = Users

This is based on the fact that the best websites on the internet are pretty spartan in appearance. When you look at many of the successful ones (Google, Yahoo, Craigslist, Facebook), they’ve all taken the approach of simplicity on the frontend. They keep the user interface as minimal as possible, and they keep the technology and code as minimal as possible.

An interesting quote from CNet:

The same effect happened with Google Maps. When the company trimmed the 120KB page size down by about 30 percent, the company started getting about 30 percent more map requests. “It was almost proportional. If you make a product faster, you get that back in terms of increased usage,” she said.

Emphasis mine.

Just goes to show that faster things become more than useful to users. They become a convenience. Users don’t really care how it looks or they would have switched from boring Google a long time ago. They just find it so convenient and quick they can’t stop using it.

I suspect this is why digital clocks are so popular.

Roman Numeral Analog Clock

Most people find an analog clock to be “classy”, in particular when there are roman numerals. But when you come down to being practical, they aren’t as quick to read for most people since we rarely deal with roman numerals. The solution used to be using Arabic numbers to increase usability and speed:

Arabic Numeral Analog Clock

This is better, but not perfect. Still slow to read, and your estimating the minutes. These days, we have the technology to produce low cost digital time readouts with Arabic numbers. These are more accurate since they show the minutes, and maybe even seconds, and can be read at a glance with almost no effort.

Arabic Digital Clock

Despite hardly looking fancy, this is what you see in most train stations, airports, etc. The older clocks are still around, but mostly for aesthetic purposes. People are willing to sacrifice looks for convenience. That’s why they walk around with digital watches rather than the more classy ones. Both can be found for cheap, but one can easily be read (even with poor vision, and in the dark).

Simplicity always rules. Unless your a nerd with a binary clock (which is cool).

I suspect this rule also holds true for software. If it’s faster, people are more inclined to use it. People moved from IE 6 to Firefox because it’s faster. Given that Firefox 3 is even faster… I’m hoping this trend will be proven yet again with an improved adoption rate.

Another upcoming test of this principle will be the Apple’s 3G iPhone. Will the average number of minutes browsing the web increase with the additional speed of a 3G network? Will faster performance make people use the device more? I suspect so. I also think it will increase adoption as many people were turned off on the idea of spending that much for EDGE. For 3G, that’s a different story.

It’s really pretty interesting stuff. People often associate usability with user interface design, and never performance. But that data really does seem to point to performance being one of the easiest ways to make a product more usable.

Images: Grand Central Terminal clock © 2004 Metropolitan Transportation Authority, Clock in Kings Cross, LCD Clock Grey via Wikipedia

Rebreaking The Web

It’s happening again. Once upon a time, browser vendors started adding their own features without consulting with each other and agreeing upon standards. What they created was a giant mess of inconsistencies across browsers and platforms that is still in effect today. Ask any web developer and they can tell you of the pains that they have suffered trying to make seemingly trivial things work everywhere consistently. It’s no easy task. Before IE 7, even an ajax required something along the lines of:

Javascript [Show Plain Code]:
  1. var httpRequest;
  2. if (window.XMLHttpRequest) { // Mozilla, Safari, …
  3.     httpRequest = new XMLHttpRequest();
  4. } else if (window.ActiveXObject) { // IE
  5.     httpRequest = new ActiveXObject("Microsoft.XMLHTTP");
  6. }

That’s right, IE 6 didn’t support the native xmlHttpRequest object (more here). This is just one of many examples in JavaScript and CSS. document.all anyone?

The end result of this problem became to be known as the “Web Standards” movement. Simply put it’s an idea that code should follow a standard that results in consistent output across all browsers on various platforms. Write once, run anywhere. While it’s taken years for this to manifest, it’s slowly become a reality. Firefox, Safari, Opera have fairly consistent rendering (at least in comparison to the mess of just a few years ago on the browser scene. IE 6 was fairly poor in terms of modern web development, but IE 7 made progress, and IE 8 is Microsoft’s greatest effort to date to bring their browser up to speed.

(more…)

Google Reader’s Inverted Unread Checkbox

I’m not sure who thought it would be a good idea to invert Google Reader’s “read” checkbox, but it’s confusing, and in my opinion an unnecessary UI change. Way to obscure. Before it “checked” meant it was read, unchecked was unread. Now it’s just the opposite. It could have went either way, but the quiet change just isn’t cool.

Read
Google Reader Read

Unread
Google Reader Unread