Category Archives: software development

Bill Buxton at Remix Brighton

Bill Buxton has made a considerable impression here at Remix. His theme is the critical importance of design, and he has a broad understanding of what design is that goes beyond what some developers may imagine: “here’s my app, now make it look good” would be the caricature. I Twittered his session – you can read it online here. He talks a lot about Apple and about how Jobs rescued it by creating a culture of industrial design; the unspoken question here is whether anyone can do the same thing for Microsoft.

Now in the ADO.NET Data Services session (Astoria).

microsoft,bill buxton,apple,design

Zend PHP Framework adds support for Adobe Flex, AMF

The PHP company Zend has announced a collaboration with Adobe to integrate AMF (Action Message Format) into the Zend Framework. AMF is an efficient binary format which is more efficient for transmitting data than text-based formats like XML or JSON. Zend and Adobe are also collaborating to improve their tools for work with applications that use PHP on the server and Flex or AIR on the client.

More info here.

Technorati tags: , , , , ,

Google’s plans for Gears

I attended Aaron Boodman’s session on Google Gears, here at Developer Day in London. Boodman is an engineer on the Gears team. He gave us a quick tour of the main features, most of which was already familiar to me, but I picked up a couple of interesting things. He told us that Google hopes Gears will eventually become a standard part of HTML, implemented by every browser. Some parts of Gears just implement things that browsers should do already, such as the ability to upload multiple files in one operation. Boodman would also like to see Gears enabled by default for all sites, rather than being enabled per-site as it is at the moment.

Or is it? What I had not realised is most of the Gears API is already accessible to any site, even if it is not in your “Gears enabled” list. It is only certain features, such as the ability to create a local database, which require specific consent.

That raises the question of security. I asked about risks like sites creating malicious desktop shortcuts disguised as good ones. Boodman says that creating a shortcut always raises a dialog so the user should spot this. What about reputable sites infected with malicious code? Boodman figures that if you are browsing such a site you are in trouble anyway.

Gears is built into Chrome and part of a consistent Google theme: upgrading the browser to make it a better platform for applications.

Technorati tags: , ,

Why Google doesn’t use Flash (much)

Here at Developer Day, I couldn’t decide between the sessions on Android and App Engine, so ended up hearing Ajaxian Dion Almaer talking on the state of Ajax. Almaer also works for Google on its developer programs.

The talk was a bit fuzzy and high-level for my taste, though I enjoyed his tour of JavaScript libraries.

Following the talk I asked him why Google makes little use of Adobe Flash (which he hardly mentioned). He said it would like to, but did not regard it as an open platform. I asked him what Adobe would need to do to change that, and he said that the key things would be to open source the Flash player, and to give the community more influence over future Flash development.

Might this happen? Almaer said that it is a subject of ongoing discussion with Adobe. The implication is that if Adobe makes these changes Google will start supporting and using it more actively.

It will be an interesting subject to take up with Adobe when I next have that opportunity.

Technorati tags: , , ,

Actual Android device spotted at Google Developer Day London

During the keynote at Google Developer Day London, Android evangelist Mike Jennings gave us what he says is the first showing of an actual device – prototype, of course – in Europe. I took a few blurry pics.

Perhaps inevitably, it seems reminiscent of Apple’s iPhone. It even has an accelerometer so you can code it to respond to tilts and turns.

The web browser is based on WebKit, of course.

We were shown a spinning cube created in Java using an OpenGL library. The Android SDK is based on JDK 1.5.

Another thing that was mentions is Gears for Mobile. Now that Gears has a geolocation API it will be particularly useful in this context.

Technorati tags: , , , ,

A smile at Google Developer Day London

I’m at Wembley Stadium for Google Developer Day. No, Google is not filling the entire stadium (yet); but it is a decent venue. On arrival we were given the usual USB stick though this one is distinctive:

Smiley Google USB guy

Made me smile after reading nothing but gloomy economic news on the journey over.

I’m not expecting news announcements today; just a bit more detail on initiatives like App Engine and Gears. The agenda was put together before the Chrome announcement; but I’m hoping Google’s new browser will make an appearance as well.

If you are here and would like to chat please come and say hello – tell me what you think of Google’s developer activities.

Sophos video about hacked BusinessWeek site

Sophos has a short video showing evidence of a hacked page on the BusinessWeek web site. I was impressed by how Google Chrome handled this:

The interesting point is that we are finding malicious JavaScript on highly reputable sites. Sophos says this one was caused by SQL injection, and I noticed that the page uses Microsoft’s old .asp technology in which it was particularly easy to code insecurely.

What’s the solution? Beats me; there are just zillions of insecure web applications out there. However, it’s disappointing that BusinessWeek still has not cleaned up the pages, which were reported last week (but perhaps that means last thing Friday).

Google Chrome for Mac and Linux will be a long while coming

When I looked at the Chromium source code and did a build, I noticed how much of it was Windows-specific. Although the WebKit rendering component is already cross-platform, it seems that the Mac and Linux versions of Chromium and therefore Chrome are a long way from ready. This is from the build notes for Mac OS X:

Right now, the Mac build is a work in progress that is much closer to the start than the finish. No application that renders web pages is generated at the end of these instructions!

Cross-platform work usually involves compromises, and it looks like the Google team pointed the dial more towards optimising for Windows than towards ease of porting. That surprises me, since it likely means more work maintaining the application for several platforms as well as delays now.

Chrome’s ambitions as an application platform cannot be realised until it runs on the Mac. Further, a disproportionate number of web designers and developers use Apple.

How long is a long while? Good question. I’ll be seeing some Google folk tomorrow; I’ll let you know what they say.

Technorati tags: , , , ,

Developers: will you or have you signed for ribbon rights?

This is the dialog you see when installing Delphi 2009 or C++ Builder 2009:

There’s a similar restriction on use of the ribbon controls in the latest MFC.

The license information page is here. The license itself has two provisions that you might care about. First, you agree not to use the Ribbon, also known as the Fluent UI, in “Excluded products”:

“Excluded Products” are software products or components, or web-based or hosted services that perform primarily the same general functions as the Microsoft Office Word, Excel, PowerPoint, Outlook and Access software applications, and that are created or marketed as a replacement for any or all of those Microsoft applications.

OpenOffice.org – that’s you.

The second provision is more troublesome (unless you are OpenOffice or Google Apps). You have to comply with the Design Guidelines:

Your Licensed UI must comply with the Design Guidelines. If Microsoft notifies you that the Design Guidelines have been updated or that you are not complying with the Design Guidelines, you will make the necessary changes to comply as soon as you reasonably can, but no later than your next product release that is 6 months or more from the date you receive notice.

So what are the Design Guidelines? Good question. This is where it gets silly. In order to see the Design Guidelines, you have to agree the “2007 Microsoft Office Fluent User Interface Design Guidelines Evaluation License Agreement”, which among other things is a non-disclosure agreement. Furthermore, you have to destroy them within 30 days:

3. RESTRICTIONS. The Design Guidelines are for reference only and may not be used in development. You agree that you will destroy the Design Guidelines within thirty (30) days after you first acquire them or upon termination, whichever is earlier.

I am guessing here, but I hope and suppose that if you agree the main license you no longer have to destroy the guidelines to which you are meant to be conforming. It’s not obvious that this is the case, since the main agreement refers back to the UI licensing page, and the only way I can see to get the design guidelines is by agreeing the evaluation license which requires you to destroy them.

I reckon Microsoft’s lawyers are getting carried away.

Lunacy aside, I’d presume that the guidelines are detailed and that conforming could involve considerable work. It is also unclear to me what would happen in the real world if Microsoft issued an edict requiring you to update your application to its latest version with 3D revolving icons, for example. If you are an external developer and your customer does not want to pay, what then? I suppose in theory you should insure against it, or sneak in a clause to your development contract that says the customer pays for extra work imposed by Microsoft in the event that it exercises its rights.

Pragmatically I guess it is unlikely to happen. Still, I don’t like unreasonable agreements. In any case, are we sure that if you did not agree the license, but still went ahead and used the Ribbon UI, that Microsoft could successfully pursue you? Call it a toolbar, and it’s been commonplace in software for years.