A Week of Chrome

September 9th, 2008

So, I’ve used Google Chrome for an entire week now.

It’s nice. It’s clean, simple and fast. The UI is unobtrusive. It blends seamlessly into the look and feel of Google Applications (Reader, Mail, Calendar, Docs, Spreadsheets, Groups) but as a browser, it felt a little wrong. Things weren’t quite right. No home button unless I turn it on? Search in the address bar, powerful, but a bit of a mind twist to remember that’s how it works. No firefox style URL keywords. Bookmarks very marginalised (have to turn on the “bit horrible” bookmarks bar to get at them).

Then I read this:

Now along comes Google, carrying two nuclear missiles: Android and Chrome. Both are immediate problems for Microsoft. Let me be absolutely clear: Chrome is not a Web browser, it’s an application runtime. Chrome is really Google Gears with a browser facade. Sure, Chrome is based on Webkit and has browser legacy, but the product’s core capabilities—and Google’s objectives for them—is running Web applications. Chrome is a development platform, but in the cloud instead of on the PC. Way I see it, Chrome is the Google OS.

Which really put it into context for me. Google Chrome’s Application Shortcuts feature is great. Gmail runs really nicely in Chrome with that shortcut option. But as a day to day browser? It just doesn’t work for me.

It’s not just the lack of adblock. Or just the lack of del.icio.us integration. Or the lack of a home button by default. A separate search. Greasemonkey. Cookiesafe. NoScript. Developer Toolbar. Firebug. It’s the fact it’s streamlined for a purpose other than surfing.

It is a web based operating system.

Perhaps to move it to be more a browser, will make it fail as a web based operating system. But, to keep it as a web based operating system might fail it as a browser. Only time will tell.

But for now I at least return to Firefox, hoping some of the Chrome innovations will come to Firefox soon.

Popularity: 39% [?]

Browser Share?

September 5th, 2008

Google Analytics is reporting Chrome now, according to Techcrunch, Chrome is eating into IE rather than Firefox for their user base. Interesting. I want to see wider statistics for that.

Popularity: 43% [?]

Chrome vs RSS and Atom

September 5th, 2008

I’ve realised another gaping hole in Chrome. One that is more significant than the lack of adblock options.

Chrome does not auto-detect the prescence of feeds in a page. Visit a page with correct auto-detection links for an RSS, Atom or other syndication feed in Firefox, IE7 or any other modern browser and you will have an icon for the syndication feeds with easy options to subscribe.

Chrome does not provide this.

You’d think that with Reader, iGoogle and Desktop all consuming feeds. With Google having a dedicated feed fetcher that has helped define standards for reporting subscribers from feed aggregators and so forth. That a next generation browser, written from the ground up for the state of web browsing in 2008 would understand and deal with feeds natively.

Firefox did from the first days. And it has lots of options for extending and enhancing this native feed sniffing support.

Chrome has nothing.

I didn’t find this until I was linked to a new, interesting blog and wanted to subscribe. I had to hunt the page with my eyes to find the feed link and subscribe by hand. To Google Reader.

Trick missed?

Popularity: 42% [?]

Chrome Largest Browser Share? Not Without Adblock

September 4th, 2008

There’s a lot of discussion around the web, including here on my blog, about whether Google are targetting IE or Firefox with their Chrome browser. As I mentioned originally, I think the market is not 100% of browser use. It’s a subset of that where people are interested in switching. I think that subset is small. But if you are reading this blog, you are almost certainly in that subset. You are interested in development or browsers. That puts you in the market. Those who aren’t interested are much less likely to be in the market for a new browser.

But, as Sandeep says, Google do have the muscle to strike deals with OEM manufacturers to ship Chrome by default on the desktop of new windows machines. It will be hard, as the OEM manufacturers have good deals with Microsoft to provide Windows on the desktop, good leverage for Microsoft to stop them entering into a Chrome by default deal for windows.

But what about the OEM Linux machine market? Or the Linux distro default? How easily could that be switched to Chrome from whatever browser these systems ship with? Pretty easily I guess, what with the  Open Source chops. But, that doesn’t matter as using Linux almost certainly puts you in the browser market anyway. And you’ll probably use Chrome at least once, when it’s available.

On Monday, I expected Chrome to be massively discussed, eagerly tried, and thrown asside. On Tuesday I’d tried Chrome and decided it was worth trying to live with for a few days (read a week) to see what it was really like. And from my traffic logs I can see that this is happening with many people. People are trying to live with Chrome.

Those who are trying to live with it are nearly all people who use other browsers, or have tried to and switched back to IE. I don’t see any evidence of people “not in the market” trying Chrome.

Web traffic graph for this site, showing the majority is Safari.

Web traffic graph for this site, showing the majority is Safari.

My web log statistics show a swing, in the last week over 50% of my traffic comes from “Safari”, which I’m pretty sure must be Chrome.

And the reason for this swing? Most of the new traffic is coming in from Google Search. And what are people searching for? adblock for chrome. Or a variation upon that. Or Google Chrome XUL. People (who use a browser with adblocking) are finding many times over how awful the internet is when the adverts are back. The big animated flash movies in the sidebar, twittering away in the corner of your eye when you try and read an article. Hell, on CNET, one of the adverts “popped” out of it’s frame to show a bigger flash movie when I accidentally moused over it, obscuring the text I was reading and making me angry.

Without adblock. Chrome will die. In our big numbers we’re hunting for an adblock approach.

Thankfully, for Chrome on Windows there is a simple solution. I used to use this before I switched to firefox+adblock. It works across all browsers. Use the Windows HOSTS file to resolve the DNS of advert providers to your local IP address. You’ll get broken images and flash movie icons. But it’s better than the current state of ad-plagued Chrome browsing.

You don’t even need to manage your own black list. There are several available. I use MVPS’ hosts file, which can be found here. And magically, all is peaceful again in the browser.

Popularity: 100% [?]

Chrome Privacy?

September 3rd, 2008

Of course the big news now that Chrome is out is the privacy concerns. Matt Cutts has posted a paranoia deflating post about when Chrome calls home. But that doesn’t get round the scary EULA granting Google rights on anything we post or view via the browser. But the EULA is for the released product. The source code is under BSD Licence. So, all it takes is a little messing around and you can build your own Chrome which comes without the EULA and the paranoia. Or you can evaluate the source code and find out what it’s really doing, which appears thus far to be nice and harmless. Sure you’ve agreed to evil, but, the browser doesn’t do evil at the moment. Not that anyone’s found to my extensive searching knowledge.

Update Matt has a new post stating that the EULA is wrong and will be changed. Which I pretty much expected.

I’ve found a fault though, enabled Gears in Wordpress in Chrome:

Gears is installed and enabled on this computer. You can disable it from the Safari menu.

Pretty sure this isn’t Safari ;-)

Popularity: 38% [?]

Chrome, Gears & XUL

September 2nd, 2008

I’m writing this post in Google Chrome. Google’s beta release of the Google Web Browser. It took me some time to download and install Chrome because the download site is obviously swamped mere hours/minutes past it’s “exciting” launch.

First impressions? Very clean and simple. The Chrome is almost not there.
And it’s fast. It renders pages very fast. Very fast. Faster than anything I’ve used before. Wordpress is running nicely, the embedded Gears and the Javascript optimisations probably have a huge benefit for Wordpress sites due to the heavy use of Javascript techniques used in it. And Gmail? Scorching performance.

So far, the performance is the killer USP.

No rendering issues on any sites I’ve tried so far.

The big drawback? Lack of features. I guess it took Firefox quite some time to get to the point that I have my perfect profile, with use of firebug, HTML validator etc. But it is so simple and clean. To quote page 24 of the comic (which I can’t find a good way to deeplink, so won’t):

 

We don’t want to interrupt anything the user is trying to do. If you can just ignore the browser we’ve done a good job. 

 
They have done a good job. The browser is not there, in a way that Firefox and IE7 sadly are.

The question for me earlier today was Why? Dare says it’s because they want to drive the web forward, which is backed up by their comic and what they say on their blogs and posts and brochure pages. They live and die by the web. They are producing some of the best, or most influential at least, web based applications. And their ability to develop these and move them forward is stifled by the pace of browser development in IE, Firefox and other products.

The pages in the comic complaining about “Speed Limits” on the web etc seem to back this up. For them, the claimed point of Chrome is to show people what a fresh look at the web could be. Faster. More powerful. Safer. Better. More driven by the Google Ethos and approach to building great, inovative products that push the industry forward in big jumps.

Of course, not everyone buys into this. Microsoft Watch see it as a cynical thing. Killing their partners.  Some kind of anti-trust, Google doing evil, making the wrong move for a fair market etc.

I don’t think I buy into that.

Earlier today, my thoughts ran on the lines of, this is a bad idea and it won’t work. According to Google’s figures, 40% of their users are on IE6, 40% on IE7 and 16% on firefox. Talking to colleagues at work, who are all internet developers. Geeks. The people who live on the web as much as Google, a lot of them use IE because it’s on their PC and it works. They don’t want or need anything more. That 16% Firefox figure comes from Firefox being the best thing on Linux. From Firefox being the best non-Microsoft solution (for the religious out there). And being pretty damn good for customisation. But, I would hazard the opinion that the market is not 100%. There is a significant portion of that market that is not, and never will be, up for grabs.

It’s my family, they’ll only use what’s on their desktop. They don’t know or care why firefox might be better for me to use. It’s not going to change them using IE because it’s there. Microsoft’s bundling of IE was clearly anit-competitive black had because of this. And the number of corporate environments with lock downs that allow the net, or their intranet, but only via IE as it’s part of their OS and can be locked down as such.

So, that makes Firefoxes market share bigger. So Chrome is competing with maybe the 16% Firefox marketshare, and 10% of the IE share that hasn’t moved but could. And the niche things.

So, is Chrome really about forcing inovation? It’ll force it in that niche away from IE, and Microsoft might pull along. But only if it’s really good. I didn’t beleive I’d use it for more than 10 minutes. Now, having used it for a little while, I plan to install it at work too. And live with it for a while. It’s that good. In beta 1. With very few features.

And it’s so fast. Firefox 3 was a lot faster than Firefox 2. If Chrome had come out before FF3, I may never have installed FF3. Because it’s so fast. CLEARLY faster than FF3. Which when I first switched to from FF2 felt so much faster. And when I went back to FF2 on an older machine I hadn’t upgraded it was painful. Will I hurt in Firefox3 at work in the morning?

So Firefox needs to start worying. It needs to look at V8. It needs to pull some of this stuff in and catch up.

Chrome could get a good fast uptake and make a very significant dint into that 16%.

And it doesn’t have adBlock.

Ah, now I’m suspicious. Of that 16% marketshare that firefox has, how many users do you think have adBlock or GreaseMonkey or another script that takes that crap off the web? That removes Googles Ad revenue stream? I’ve not seen an advert on the internet since I switched to Firefox with early versions of adBlock. And I use the web a lot. And I know that most Firefox users have something like adBlock running.

So is it about revenue? Chrome is Open. I assume it will have/does have plugin support. Will adBlock for Chrome come? Or will Google keep that out of it’s ecosystem? Is Chrome about revenue? Switch people to Chrome, remove adblock, get the chance to show people more ads. In return for faster, safer browsing with richer applications.

(I’ve just noticed my CPU pegged at about 30% on task manager. I’ve checked the task manager in Chrome. Shockwave was eating CPU. I’ve killed the tabs with Shockwave in, and now the browser is a ghost in my system eating no resources at all. Neat.)

But, Chrome is about inovation we’re told. Yet doesn’t support XUL, Mozilla’s XHTML + Rich GUI markup language. That is something I thought would be a great thing to see grow. That could give the real edge to these rich applications that Google want Chrome to enable. I assume it’s lacking due to the use of webkit. But, with v8 powered XUL, the things you could build would be awesome.

It’s going to be a case of time will tell I assume. I think it looks positive. This morning when I heard the news, I couldn’t see the point. The competition (Firefox, Safari and Opera) are too far ahead. Google too far behind. Now I’ve used the “vision”, the speed, cleanliness and disruptive new thinking are converting me.

Chrome + Gears + Google’s web applications could be a massive boost in creativity, development and forward motion that the web as an operating system/platform for the future of computing really needs.

Popularity: 53% [?]

Specialist vs Generalist

August 18th, 2008

I just picked up a very interesting article on the never ending specialisation vs generisisation debate over on Ted Newards blog. It’s an interesting argument. Can you be a good developer unless you specialise in one technology and know it inside out and stick to that language?

I think the answer is emphatically yes, you can. In fact, you can’t be a good developer unless you understand the stack and related languages.

You can not be a good ASP.NET developer without understanding how to administer your server, how HTTP works, how HTML works, how Javascript and CSS work.

You don’t have to be a guru in the world of semantic, CSS driven HTML markup. But you do have to understand HTML and be competent at hand rolling it. You have to recognise bad HTML and good HTML. Most importantly, you have to understand your limits in those areas and how and where to get help to get that perfectly semantic, CSS driven layout working. You should be pushing your knowledge in those areas.

Looking at the learning progression of unconcious incompetence through to unconcious competence, you need to be somewhere on the path from concious incompetence to concious competence. You don’t need to be someone who can always get it right in the other languages, but you have to know where you will get it wrong. Understand your limits.

Essentially, you are not an ASP.NET developer. You are a web developer, and that’s about more than a specific language and framework, it’s about the entire development eco-system. You’d want to read about and know about what’s going on in Python (including IronPython), Ruby, PHP etc. You don’t want to be missing out on the new techniques that sit in that area.

If I was talking about people who work on products like Microsoft Word in C++, then they’d also need to know about UI design, the shell, the underlying operating system. Basically, Point 5 in Ted’s article:

Learn to be at least self-sufficient in related, complementary technologies. We see laundry list ads in “clusters”. Case in point: if the company is looking for somebody to work on their website, they’re going to rattle off a list of five or so things they want he/she to know–HTML, CSS, XML, JavaScript and sometimes Flash (or maybe now Silverlight), in addition to whatever server-side technology they’re using (ASP.NET, servlets, PHP, whatever). This is a pretty reasonable request, depending on the depth of each that they want you to know. Here’s the thing: the company does not want the guy who says he knows ASP.NET (and nothing but ASP.NET), when asked to make a small HTML or CSS change, to turn to them and say, “I’m sorry, that’s not in my job description. I only know ASP.NET. You’ll have to get your HTML guy to make that change.” You should at least be comfortable with the basic syntax of all of the above (again, with possible exception for Flash, which is the odd man out in that job ad that started this piece), so that you can at least make sure the site isn’t going to break when you push your changes live. In the case of the ad above, learn the things that “surround” website development: HTML, CSS, JavaScript, Flash, Java applets, HTTP (!!), TCP/IP, server operating systems, IIS or Apache or Tomcat or some other server engine (including the necessary admin skills to get them installed and up and running), XML (since it’s so often used for configuration), and so on. These are all “complementary” skills to being an ASP.NET developer (or a servlet/JSP developer). If you’re a C# or Java programmer, learn different programming languages, a la F# (.NET) or Scala (Java), IronRuby (.NET) or JRuby (Java), and so on. If you’re a Ruby developer, learn either a JVM language or a CLR language, so you can “plug in” more easily to the large corporate enterprise when that call comes.

It’s fine (and good) to want to be an adept in one language. But, technology moves, and to really apply that language, you need to understand it’s ecosystem and competitors. Or you will hit your edge far too early.

Popularity: 39% [?]

Summer of Code 2008

March 18th, 2008

The Geeklog Project (for which I am a Core Team Member) has been confirmed as a participating organisation in the Google Summer of Code 2008. We have our ideas list up and are recruiting for students.

So, if you are a student at university and interested in a Free Google T-Shirt and Some Money for contributing to a PHP Open Source Project, then check it out. I’ve identified three projects that I will be mentoring on if suitable students are found, and there are a number of other projects available if you hate me ;-)

Popularity: 48% [?]

Perfect Firefox Profiles?

March 7th, 2008

I’m an obsessive tinkerer. I can’t install configurable software without spending forever trying to get my personal configuration right instead of using the application.

For a long time I hated “browser nazis” who were always telling me that I should switch to [Mozilla|Firefox (pre 1.0)|Opera|Something Else] and eventually I gave in and switched to Maxthon. Then Firefox 1.0. Which really did make me feel silly. Once using Firefox 1.0 I realised the others had been right. IE was terrible. Firefox was awesome. But not too silly as Mozilla, Opera and other alternatives before Firefox were pretty rubbish too (Opera is sounding interesting now, but Mozilla and Safari etc still leave me cold).

I still can’t stand the thought that I might not have an “optimal” Firefox extension set enabled, so here’s what I’m using, is there anything you think would be best added to this list.

Firstly, I have three profiles. Lite - Need a browser fast. Default - Just for surfing. Developer - for doing web development. I don’t load firebug/developer’s toolbar and their overhead just to check my online bank. I’m most interested in optimising my Default profile, but that builds on my Lite profile.

(All profiles include the British English spell check add on and talk back crash handler)

Lite
This needs to load fast and provide a fast browsing experience. I have only a few extensions in this:

  1. Adblock Plus - Remove banner ads, save network time on them.
  2. FilterSet.G Updater - Keep my Adblock Plus filters up-to-date with the excellent FilterSet.G
  3. CS Lite - Prevent those horrible advertising types tracking my surfing patterns with a nice “AdBlock for Cookies” style tool.
  4. Del.icio.us Complete - The official Del.ico.us extension to replace per-profile bookmarks. I have access to the same bookmarks in all profiles.

Default
This is where I live when not in a rush and not coding. It’s optimised for surfing experience:

  1. Deepest Sender - UI For posting to LJ
  2. Digger - Right click the “go” icon to mess with the URL, very, very handy
  3. ErrorZilla - Better than a server not found message
  4. Greasemonkey - Tweak sites my way
  5. Leechblock - Keep me off “slacking off sites” when working
  6. TwitterFox - Update Twitter
  7. Google Reader Notifier - Check my RSS feeds
  8. IE View - Open current page in IE, if it’s not working in firefox (useful for MS sites!)
  9. Customise Google - but thinking of removing this…

Development
Really, this just adds Developer Toolbar, HTML Validator and Firebug to the above.

What essentials am I missing?

Popularity: 38% [?]

Faster, Easier Wordpress Upgrade

February 5th, 2008

In the last 38 days there have been two urgent security fix releases of Wordpress. In the last 3 and a tiny bit months there have been three maintenance releases of Wordpress. In the last 4 and a tiny bit months there have been four releases of Wordpress.

Other than the fact I’m starting to get pretty worried about the security and stability of the software in general, it’s a pain in the rear to have to keep upgrading. So I’m making it easier for me. Wordpress themselves have helped by having a decent system in place for making it easy to get the latest.

I now have the simplest of shell scripts which:

  1. Backs up my database.
  2. Backs up my Wordpress folder.
  3. Gets the latest Wordpress release.
  4. Unpacks that release.
  5. Deploys that release live.

Being nice, I’m going to share it with you:

mysqldump --host=localhost --user=wordpress --password=wordpress wordpress > wordpress.sql
tar -zcf wordpress_backup.tgz wordpress_live
wget http://wordpress.org/latest.tar.gz
tar -xzf latest.tar.gz
cp -r wordpress/* wordpress_live/
rm -r wordpress

Of course this assumes that you have a wordpress database in a localhost MySQL instance with username and password wordpress and that your live wordpress folder is wordpress_live so you can cope with a temporary wordpress folder from the unpack. It also assumes that mysqldump, tar and wget are available in your shell.

Also, I don’t just do this on live. I back up my live, put it on my portable instance and test the new version first. Then I do it on live. Then I update the versions of my plugins.

What an arse. This is why I prefer Geeklog. It’s more secure and doesn’t change at an alarming rate.

Now I can SSH into my server and type ./upgradewordpress.sh when I’m ready then hit http://inanger.com/[secretlocationofadmin]/wp-upgrade.php and finish things off. Job done. I still have a pain in the rear as I have to test the release locally first (./upgradewordpress.sh on local instance of course, after restoring a fresh backup of live into it and adjusting the config to refer to my local instance).

And I think this is less risky than tracking Wordpress via SVN on live.

Popularity: 54% [?]