Corrina Barber adds a really nice skin to her portfolio

SilverlightI posted last week about a set of skins that Corrina Barber had produced for Silverlight. Well she has added a fourth one to the set and it is by far the best at showing just what can be done with Silverlight skins. As before, click on the image below to access the demo page, or click here for the source files.

She describes it as being organic in appearence. I disagree and think it looks cartoon-like, but in a really nice way. The controls basically look hand-drawn, yet work just like normal controls.

The “Rough” skin
The 'rough' skin

Does Apple’s update utility constitute malware?

Apple logoLooks like Apple are being more than a little naughty with their update utility on Windows. Whenever you install an Apple application (Safari, QuickTime or iTunes), you are offered the option of installing a handy update utility too. I like update utilities, as they do the hard work of checking for important updates for me. However – as Microsoft found out last year – there are two really important rules to updates: never force updates on those that don’t want them, and never ever ever install a new product under the guise of an update. Apple have broken both of these rules sadly.

Firstly, their update utility has been caught, by John Lilly, Mozilla CEO, of trying to install an “update” to Safari on PCs that do not have Safari installed. Apparently according to the feedback to John’s post, the update utility does this with iTunes and QuickTime too.

Not happy with forcing new software on people through disguising it as updates, Apple also completely disregard the request not to install the update utility. When installing one of their apps, the user is given the choice of whether they want the update utility installed. Regardless of whether you say yes or no, the utility is installed anyway.

Unsurprisingly,this has led Apple-haters to accuse Apple of pushing malware on users, and it has also provoked a strong counter response from the fan-boys. Beneath this schoolboy banter though lies a very serious point as John points out. Updates are vital to keeping machines secure from criminal elements that hijack them for illegal purposes. Anything – by any company – that damages users confidence in updates needs to be strongly condemned and Apple needs to address this situation, fast.

Until Apple do fix it, you can fix the problem yourself very easily. Simply go to the control panel, select “Add/ Remove Software” in XP or “Uninstall a program” in Vista and select “Apple Software Update” for removal.

Microsoft release incredibly detailed VS2008 comparison chart

Visual Studio logoDid you know there are 11 versions of Visual Studio 2008? If so, have you ever wondered what the differences are between them all? If so, Microsoft have come to your rescue with a 32 page Visual Studio product comparison guide. So now you too can know which versions support the Settings and Constraints Editor or the C/C++ Code Analysis tool for example, along with dozens of other feature comparisons.

It’s even available as a PDF. Hurrah for EU fines 😉

Netmite Corp try to con the greedy into buying a worthless patent

netmite.pngNetmite Corporation issued a press release on the 18th March announcing the sale of U.S. Patent 6,418,462 at the Ocean Tomo Spring 2008 Live IP Auction on April 2nd at The Ritz-Carlton in San Francisco. So what? Well they rather boldly claim that the patent covers AJAX technology and that therefore every existing AJAX site could be in breach of the patent:

” The patent, which will be offered as Lot 7, discloses methods for allowing additional tasks being performed by a client through a sideband communication channel in addition to the main communication channel between a client and server. The patent contains broad claims covering general methods for diverse industries of web, Internet services, communications, and entertainment.”

If true, there are a whole range of big, rich companies out there, such as Google, ripe for suing for infringing the patent. Before you rush to get your cheque books out though, it’s worth pointing out a huge flaw in this reasoning by Netmite Corporation. Their supporting documentation describes the patent claim as being:

1. A method in a metacomputing, distributed network of utilizing remote client resources in the network, comprising:

server that implements tasks by utilizing idle resources in multiple clients;

individual communication channels between each client and the server;

a second, separate dedicated communication channel (sideband channel) between each client and server, through which the server distributes the tasks to the each client downstream and through which each of the clients sends the results of the task upstream to the server.

Anyone who has even the most basic understanding of AJAX will know that AJAX works through the same channel as all other communications between the client and server, and that it doesn’t involve the server distributing tasks to clients. However even if one could successfully argue that the asynchronous communications that underpin AJAX are described by this patent, there is still a problem. Since their creation (before this patent was filed), clients have asynchronously communicated with the server to fetch images. That constitutes prior art, I suspect.

However all is not lost for Netmite: there is one very obvious use made of this patent. Criminal gangs use these techniques to get “zombie” PCs to spam the world with emails offering cheap porn, penis extensions and fake Viagra. Perhaps the buyer of the patent could try suing these criminal lowlifes…

Silverlight 2 not only supplies controls, they are skinnable too

SilverlightOne of the criticisms levelled at Silverlight 1 was it lack of controls, such as buttons, checkboxes and the like. Not only has Silverlight 2 addressed this, but the power of XAML now really shows itself. Using XAML, it is possible to easily re-skin those controls to give them radically different appearances.

Corrina Barber has put together three very different looking examples – complete with source – to show just how easy it is to make radical changes. Click on the images below to play with the live demos (requires Silverlight 2 beta to be installed on your browser), or go to Corrina’s page to access the source.

The “Bubbly” skin
The 'bubbly' skin


The “Red” skin
The 'red' skin


The “Flat” skin
The 'flat' skin


The .NET Framework: bloatware or power to the developer?

.net logoBrad Abrams has published details of the number of classes, members, namespaces and assemblies in the various .NET frameworks. The latest offering, .NET 3.5, has 98 assemblies, containing 309 namespaces. Those namespaces in turn contain 11,417 classes, which define 109657 members. He doesn’t say whether this is total, or whether these are just the public classes and members. Hopefully it is the former.

Brad claims that “in each release [Microsoft] are adding new functionality that make it easier to build .NET applications”. Is this true though? One could argue that as the number of classes goes up, so it becomes more difficult to find the class you need to solve a particular problem. Take XML as a case in point. There are 48 classes in the XML namespace, including confusing sets that appear to have the same, or very similar functionality. For example, XmlWriter, XmlDictionaryWriter and XmlTextWriter.

Perhaps rather than speculating on how much the .NET 4 framework might grow by, Brad and his colleagues could try making heavy use of the System.Obsolete class to reduce the numbers. Now that really would make it easier to build .NET applications.

Assembly stats for different versions of the .NET framework

Namespace stats for different versions of the .NET framework

Types stats for different versions of the .NET framework

Members stats for different versions of the .NET framework

Silverlight is coming to a mobile device near you soon

silverlight2.pngThe first “Community Technology Preview” (CTP) of Silverlight for mobile devices is due in the next three months. Initially it will be a CTP of Silverlight 1 for Windows Mobile 6 only. With the recent announcement that Microsoft is working with Nokia to port Silverlight to the Symbian OS though, this CTP is hopefully just the start of an eventual roll-out of Silverlight 2 across many platforms.

C# “How To” Article Section Launched

c_sharp.pngI’m a big fan of C# and so have decided to launch my first side project on that subject: the C# “How To” Articles section. There are only two articles there at the time of writing, but I hope to add roughly an article a week. Thus over the coming months, it will hopefully grow into a truly useful resource.

There are of course many C# resources out there already, and so you might ask why I’m bothering. Take a look at the articles and hopefully you’ll see why. There are lots of little known, but often very useful, features tucked away in the C# language. My set of articles aims to explore these, at least as a starting point.