All posts by onlyconnect

Google Chrome: the developer angle

The real purpose of Chrome is to run web applications. Google would like it to be Google applications, of course. Here’s a few things I noticed.

1. The V8 Javascript engine in Chrome is really fast – thanks to just-in-time compilation and other optimizations. This is important, because it removes some of the advantages of plug-ins such as Flash and Silverlight, which also do just-in-time compilation.

2. Chrome includes Gears, which enables offline functionality and other useful services, like a local database engine.

3. This is really part of Gears; but it’s worth noting separately. The Gears Desktop API lets you create application shortcuts – without further permission, apparently. In Chrome this is surfaced as a Create application shortcut dialog:

Note that this is a browser dialog, not a web page dialog.

Why is this a big deal? Well, I recall Adobe’s Kevin Lynch telling me that the usability issue around navigating to an URL in order to run an application was one of the motivations behind the development of AIR, Flash on the desktop. Google reckons it is easier to deal with the usability issue, than to create a separate desktop runtime.

4. Web applications started from shortcuts have no browser furniture. Just the web page in a window. There are probably other ways to get this effect too. I noticed that if you type Ctrl-T while in one of these full-window Chrome pages, which normally starts a new tab, it actually opens a second Chrome window, not just a new tab. Google wants that shortcut to behave like an application, not like a web browser.

Technorati tags: , , ,

Chrome browser memory usage: a good start

If you go to the special url about:memory in Google Chrome, you get a summary of memory usage in all your running browsers, not just Chrome. I tried the following test:

1. Close all browsers.

2. Reopen all browsers – IE7, Chrome, Firefox, Safari – navigate to bbc.co.uk

3. Open the Chrome memory status page:

There are figures for virtual memory as well; I’ve truncated them to make the image fit better. Chrome is easily the smallest.

Microsoft.com blank in Google Chrome browser history

Google Chrome is available for download. I’ve done it in fact; very smooth install. It looks like the company is serious about getting this widely deployed quickly, despite its beta status – there’s a download link on the Google home page – must be important to break the 28 words rule.

Chrome shows your “most visited” sites as a kind of home page. I was amused to see that Microsoft.com shows up here as blank:

No doubt there is a good technical reason. People used to say “DOS Ain’t Done until Lotus won’t run”; and that was not true either.

Update: Honesty compels me to admit that the Microsoft snapshot eventually filled in. Still, it is not much better:

The problem is that the central Silverlight panel is failing to load; the main site looks like this in Chrome as well. OK, so Silverlight doesn’t support Chrome. But Microsoft no doubt has something better than a blank panel for incompatible browsers. Was it warned in advance about the advent of Chrome? Was anyone? I know this is WebKit and that what works in Safari should work here; but we all know that browser compatibility is complex. Still, it is entertaining.

Further update: It looks the same in Safari on Windows! I should explain that there is some more stuff to the right and below the empty panel; but the empty sky background occupies the main part of the page.

To get the full picture, I visited the page with FireFox on Linux:

 

This looks better, but it’s a tease. It has a link to download Silverlight; if you follow it, it eventually reveals that your browser or operating system is unsupported. Sloppy Microsoft; Google exonerated.

More on Chrome soon, no doubt.

Technorati tags: ,

It is time we stopped talking about Rich Internet Applications

I have a couple of posts on a new blog aimed at IT Professionals:

Delphi: a secret weapon for Windows developers

Is Adobe Flex and Air in your future?

The latter post is already out of date, following Google’s Chrome announcement. In it, I summarize the different approach to Rich Internet Applications, and argue that rather than discussing RIAs we should simply talk about the next generation of the client. I noted that “Google and Mozilla are also stretching browser technology”; now that we have Chrome this looks like a full-on battle.

Technorati tags: , , , , , ,

10 things you might not have known about XAML

I’ve written a short piece on XAML for the Register. Here’s a few things you might not have known about Microsoft’s Extensible Application Markup Language:

1. It is not just for WPF (Windows Presentation Foundation); it is also used as a language for Workflow Foundation (WF). Microsoft has hinted that we will see more XAML applications announced at the forthcoming PDC.

2. XAML doesn’t have to be XML – see the intro to the XAML Object Mapping Specification 2006, which says that “any physical representation may be used.”

3. XAML is a small core and distinct from XAML vocabularies. The huge WPF is a XAML vocabulary. WF is another vocabulary.

4. Although XAML is usually represented as XML, it is near-impossible to create an XML Schema to validate it usefully. Here’s where Microsoft explains why.

5. In Visual Studio 2005, a huge but imperfect .xsd schema file was used for validation and to drive IntelliSense (things like code completion) in the XAML editor. In Visual Studio 2008 Microsoft abandoned that idea and uses a language service instead.

6. The core idea behind XAML is to be a declarative language for .NET. WPF is merely an early application for XAML.

7. XPS, Microsoft’s fixed-layout language that competes (just about) with Adobe’s PDF, uses XAML that is a subset of WPF. This means that you can actually display XPS documents in Silverlight – there’s no need for a viewer, it is native Silverlight code.

8. When you compile a Silverlight application, the XAML stays as XAML, albeit bundled into a resource.

9. Silverlight allows you to write inline XAML within HTML.

10. XAML rhymes with Camel. Sorry, you knew that already. But did you know that CAML (Compiled Application Markup Language) is XAML compiled to MSIL (Microsoft Intermediate Language)? Microsoft tested this idea in pre-release versions of WPF, but apparently the performance benefits were disappointing and it was less compact than BAML (Binary Application Markup Language), a tokenized representation of XAML. Silverlight doesn’t bother with either: XAML is saved as a resource in a .NET DLL, and then zipped as part of the .XAP package by which a Silverlight application is delivered.

Technorati tags: , , , ,

The new Google Chrome browser: a bad day for Firefox

The Firefox angle is what puzzles me about Google’s announcement that it is is launching a new open source browser. We should get to try it tomorrow; perhaps we’ll see that Google is successfully reinventing the browser. In particular, this is a part of what is sometimes dubbed the Google OS: the client for cloud applications running on Google’s servers:

Under the hood, we were able to build the foundation of a browser that runs today’s complex web applications much better.

Google is using some proven technology in the form of the Webkit rendering component (as used in Apple’s Safari). I imagine it can do a decent job. But why? From Google’s perspective, the browser market was shaping up nicely already. Microsoft’s IE has a still large but declining market share; Mozilla Firefox is growing, has a vibrant community, and relies on Google for the bulk of its income in return for making it  the default search engine – a deal which has just been extended for three years.

Now Google appears to be going head-to-head against Firefox. It won’t necessarily succeed; Firefox has lots of momentum and will be hard to shift. Equally, I doubt that Microsoft’s market share will decline significantly faster against a Google browser than it would anyway against Firefox.

The risk is that this will split the open source community.

As for Firefox, this can only be bad news. It has the embarrassment of relying on a major competitor for its income, and the knowledge that it is driving traffic to a company that will push users to switch to an alternative.

Maybe Google Chrome is so good that it will all make sense when we get to try it. For sure, it is an intriguing development for web applications and I’m looking forward to seeing how well Google can substantiate its claims that it is “much better” for the job of running them.

Don’t tell me to turn off Vista’s UAC

I’ve been looking at music servers and music ripping software, and came across Ripfactory Micro, a fast and easy to use solution.

Unfortunately when I ran it on Vista it came up with this message:

Then it exits. I looked at the support pages and found that this is a documented problem:

If you are trying to run our software on Vista and get an "Unable to enable autorun" message, you have to turn off the User Account Control (UAC) as the program requires access to a registry key to determine autoinsert status.

It’s true. I checked using Systernals Process Monitor. The app asks for access to HKLM\System\CurrentControlSet\Services\cdrom\autorun. If it finds it disabled, it throws up this dialog:

This is such nonsense.

First, if the app finds autorun enabled it doesn’t need write access; and read access comes by default, so why break the app on Vista for this?

Second, there is no need to disable User Account Control to run the app. You can either set it to run as administrator (right-click the shortcut, compatibility tab); or else grant the current user read-write access to that specific registry key – not ideal, but either of these would be better than disabling UAC.

Third, a support note like this should at least hint at the implications of disabling Vista’s primary security feature.

Otherwise the app seems to work well, faster then iTunes, and downloads cover art. I still prefer dbPowerAmp though, because it links to AccurateRip to check the integrity of your rip.

Technorati tags: , , ,

The relentless branding of the Internet

For me, it started with Amazon affiliates. Before that, you mostly saw the Amazon brand on the Amazon site. After that, seemingly every web page you went to had Amazon somewhere on it.

Now we are into mash-ups and widgets; but inevitably it seems to be the big brands that dominate. Instead of going to the site, the site comes to you. It’s even worse if you install one of their toolbars: Google, Yahoo, MSN, eBay.

At the IE8 briefing the other day, we were shown the Accelerator – Smart Tags revisited – and Web Slices. The Accelerator is especially intrusive, because it behaves as if it is embedded in the site you are visiting. You go to an ad-free site (in the UK) like the BBC, select some text or right-click, and suddenly your screen is festooned with links to all the usual suspects: Microsoft, eBay, Google, Amazon.

It feels claustrophobic; an oppressive encirclement by brands.

The Web’s poor security makes this worse. After a couple of bad experiences, users are more inclined to stick with what is tried, trusted and well-known.

In the early days of the Internet, it was possible to think that the inherently low technical barriers to entry would benefit small players and make it hard for a few entities to dominate. It is hard to believe that now.

Technorati tags: , , , , ,

Internet Explorer 8, FireFox 3 pop-under failure

I attended a UK briefing for Internet Explorer 8 last night. An interesting product which I’ll be writing plenty more about – you can get it here. Installed smoothly on my Virtual Box Vista.

At the event I mentioned to someone from the IE team that it is annoying how pop-ups still somehow get round the pop-up blocker. The guy seemed mildly surprised and asked me to send him any urls I found. I didn’t have to wait long. If you want obsessive detail on the recordings of Elvis Presley, a great site to visit is elvisrecordings.com [warning: pop-ups and pop-unders]. I can’t recommend it though, because there are some annoying scripts there. I thought this would make a good test for IE8 Beta 2. The home page has some stuff that gets blocked, and it has some Java which doesn’t run because I haven’t installed it yet, but if I click the link for the Sun recordings (arguably the best of Elvis) I get this:

The only extra step I took to get this screen was to click the pop-under in the task bar so it came to the front. Lucky me, I’m a “possible Audi A3 winner”.

Just to be fair, I tried it in FireFox 3. Same result:

Maybe it is just too difficult to block this stuff successfully without breaking pages.

The other question: why do otherwise useful sites pollute themselves with this junk? Is the money really that good? For what it’s worth, the culprit seems to be a “free” web stats provider called Motigo. Avoid.

I’ll forward the url to my contact.

Apple rapped by ad standards body for not supporting Flash and Java

The UK’s Advertising Standards Authority has upheld a complaint (from all of two viewers) against an Apple ad which stated that “all the parts of the internet are on the iPhone”.

In its adjudication, the ASA stated:

Upheld
The ASA noted that Java and Flash proprietary software was not enabled on the iPhone and understood that users would therefore be unable to access certain features on some websites or websites that relied solely on Flash or Java.  We noted Apples argument that the ad was about site availability rather than technical detail, but considered that the claims "You’ll never know which part of the internet you’ll need" and "all parts of the internet are on the iPhone" implied users would be able to access all websites and see them in their entirety.  We considered that, because the ad had not explained the limitations, viewers were likely to expect to be able to see all the content on a website normally accessible through a PC rather than just having the ability to reach the website.  We concluded that the ad gave a misleading impression of the internet capabilities of the iPhone.

Nobody comes out of this with any credit. Apple’s point, when challenged, was this:

Apple said the aim of the ad was to highlight the benefit of the iPhone in being able to offer availability to all internet websites, in contrast to other handsets which offered access to WAP versions or sites selected by service providers.

Somewhat misleading I’d say. All the smartphones I’ve seen recently support HTML as well as WAP. Still, Safari on the iPhone has a larger screen and more complete standards support than other mobile browsers, and on these points Apple is on firmer ground.

What about Flash and Java? Apple apparently said:

They said they could not ensure compatibility with every third party technology in the marketplace and, in order to create the best customer experience, had created their platform on open standards.  They said Java and Flash were examples of proprietary software they had chosen not to enable on the iPhone.

A reasonable point, surely. But the ASA says:

…viewers were likely to expect to be able to see all the content on a website normally accessible through a PC…

Naive viewers, perhaps. Most would figure out at least that a much smaller screen will introduce limitations. And why stop at Flash and Java? What about ActiveX, Silverlight, Real Player, or any site that needs a plug-in to operate correctly? Of course the ASA doesn’t say that Apple should enable all that stuff. It merely says that the ad implies it. That strikes me as a fragile argument. I’d back Apple here.

Nevertheless, it is interesting to see this pressure on Apple to support proprietary plug-ins. I wonder who complained?

Technorati tags: , , ,