Arno# - The cutting edge of developer waffle

Some random thoughts on software development

Grisoft join the “Lets piss everyone off” Brigade

AVG LogoFor many years now, I’ve been a fan of Grisoft. They produce a superb - and free! - anti-virus utility for Windows - AVG - which I has kept my home PCs virus free without fail. Then version 8 appeared…

About a month ago, my installation of AVG prompted me to upgrade to version 8. As is normal with Grisoft, they initally pushed their paid-for version (which I have no qualms with, but which I didn’t want). After a few days, the free version then became available, and so I upgraded. Unfortunately, version 8 has a new feature called LinkScanner and this is where the problems start.

LinkScanner is a highly intrusive utility that integrates itelf into IE and FireFox. Whenever you visit Google pages and perform a search, a spinning icon appears by each entry, that then gets replaced by a red cross or green tick. Moving the mouse pointer anywhere near these icons results in a huge noisy pop-up that bombards the user with not-very-useful information as shown below:

AVG in action

As you may be able to tell, I didn’t like this new feature. So I opened up the AVG control panel and disabled LinkScanner. Unfortunately Grisoft treat the disabling of the feature as a critical error and so the notification icon greys out and a big red exclamation mark appears over it. By this point, I was starting to get annoyed. Treating a deliberate user action as a critical error is just plain stupid. The product basically bites off its own nose to spite me for daring to disable the feature, as it instantly renders itself incapable of notifying me of a real problem!

The final straw came on Friday when an article about AVG on the Register caught my eye. I’d assumed the spinning icons represented requests back to Grisoft’s servers for information on the sites in question. It turns out though that the product instead “silently” visits each site in turn to check it every time. In order to prevent malware sites hiding their evils from AVG, it pretends to be IE6 when requesting the pages. In other words, every time someone visits Google with AVG installed, they screw up that site’s visitor stats. This is just unforgivable behaviour for a product in my view.

So Grisoft join Micorosft (with their search gaff) and Apple (with their malware-style updater) in the ignoble hall of fame for pissing off their users. Sadly after many years of happiness, it is time for AVG and myself to part company. It is time to find a new anti-virus product.


Share This Post...
2 comments so far, click here to read them or add another

Firefox 3 Dayload Day is to happen after all (just 19 hours late)

Unless you live under a rock (or care not for technology), you will be aware that the 17th June is the official Firefox 3 download day. If like me, you have been patiently watching for it to be available for download ever since 00:01 on the 17th in Tonga (which is bizarrely 13 hours ahead of GMT), you will have been thoroughly disappointed. It turns out that FF3 isn’t actually going to be launched until the 17th is over for most of the planet, as it is to be launched at 17:00 GMT (or 10am if you live on the west coast of the USA).

Perhaps they ran into technical difficulties, which forced a delay? Or perhaps our dear American friends behind the launch are as clueless over geography as the stereotypes depict them and thus are oblivious to the fact that it will be the 18th for much of the planet when they hit the go button. Either way, never fear: FF3 is being released, it will just be a little late…

Update: Well I was a bit generous with the 19 hours late. The event is clearly going to be a major one as demand appears to have taken the Mozilla servers down at 17:00 GMT and they weren’t back up again for nearly two hours. So the record setting event is under way “just” 21 hours late. I think my download from the FTP site won’t count, so I’ll have to download again to register it.

I’ve taken down the link to the FTP site down now that FF3 is available from the website. And - as Laurence spotted - I was guilty of being badly windows-centric with the link, so sorry about that.


Share This Post...
1 comment so far, click here to read it or add another

Is Firefox’s Awesome Bar really that awesome?

firefoxWith the release of the Firefox 3 RC1 recently, I decided it was time to try out the new browser. I did so with trepidation, mainly due to worries over which add-ons I’d lose. Initially, it seemed a no-hoper as Tab Mix Plus and the del.icio.us add-ons weren’t supported. To my mind, Tab Mix Plus (TMP) is the single most important add-on ever for Firefox. It turns just another browser into an amazing tool. It lets you work within a single window, and can be made to always open links in the same tab, regardless of what links want to do etc. It has a massive number of features for customising the way tabs work, so that you can really get them to work “properly” (for just about anyone’s personal view of what “properly” is). Luckily, there is a pre-release test version of TMP available, which worked just fine on my machine.

Having sorted out TMP, I decided that FF3 RC1 was usuable and so kept it. The del.icio.us bookmark add-on was updated to support the release candidate yesterday (I also updated to RC2, so I’m not sure if the two events are related). With the other useful add-ons working (Flashblock, Adblock Plus, IE Tab, Tab Catalog and Download Statusbar), it’s a nice, stable browser, except…

… the “Awsome Bar”. The idea behind the new location bar in FF3 is a good one. Whereas previous browsers have matched URLs from left-to-right as you type, the Awesome Bar searches for the typed string anywhere in the URL and page title. It also uses a clever algorythm to rank the results (including taking into account what you selected before if you have typed those characters before). This is all very nice, but the resultant bar is a real usability nightmare as the screenshot below shows:

Different font sizes and colours and bold+underlined characters all presented in a dense mess that just completely overloads the user. I know what I’ve typed, so I don’t need the terms highlighted. Yet these draw the eye away from the page titles and URLs making it really difficult to read.

Luckily there is a really nice add-on available that fixes the problem: oldbar. The clever underlying algorithms are still there, but it simplifies the view back to something similar to that offered by FF2:

Now that really is awesome!


Share This Post...
No comments yet, click here to be the first

Will Java show Microsoft the way to .NET 4?

JavaHaving recently started a new job that is Java & ActionScript-centred (as opposed to my old .NET & ActionScript-centred job), I’ve been trying to catch up with the world of Java. Last time I used the latter was back around the turn of the century when Sun hit upon the cunning plan of calling a release both Java 1.2 and Java 2 (a mind-numbingly stupid idea that still continues today with Java 6/ Java 1.6). Things have moved on, the language has had many new features added and the core classes have mushroomed into a huge complex mess that involves a large download. This is of course much the same as .NET, which tends to follow in Java’s footsteps on many levels.

Recently I came across something that Java is soon to offer that .NET would really benefit from: Java 6 SE Update 10. This rather cumbersomely entitled release has the somewhat more snappy title of “Consumer JRE”. This new consumer runtime has a bunch of really nice features, the two key ones in my view are the Java Kernel and draggable applets.

Java Kernel
Like .NET, the Java runtime is a huge download. The first time you try and run a java application on a machine that doesn’t have the JRE installed, in must be downloaded. The Java Kernel is a clever - and oh-so-simple - idea: break the JRE up into lots of bits and only download what is needed. So the first time you run a Java application, the basic - small - kernel is fetched, plus any other parts that the application needs. At that point the application can run. The rest of the JRE is then downloaded in slow-time in the background.

The graph below (from http://java.sun.com/developer/technicalArticles/javase/consumerjre/) highlights this:

Comparison of Various Swing Application Download Sizes With the Full JRE.

Draggable Applets
Back in the days before Flash, Java Applets were the way to do programatically complex stuff in web pages. In recent years, they have declined in popularity, but this feature may bring them back into favour. If you visit a web page and see an applet that you like, then you’ll be able to drag it out of the browser window to the desktop. It then runs as a fully fledged desktop application, rather than just a browser applet.

When these features will be released is anyone’s guess (early betas of the Consumer JRE were “hot news” last year [2007] and it is still in beta), but they are great features none the less. And so this brings me to .NET 4. When Silverlight 2 is released (I’m still predicting late July or very early August for this release, ie just in time for the Olympics), Microsoft will have an obvious starting point for the equivalent of both of these features. The Mono team have their Moonlight desklets, which Microsoft could take and turn into Silverlight applications that can be dragged out of the browser onto the desktop. And the cut-down .NET framework that forms the kernel of Silverlight 2 would make a great starting point for a piecemeal downloadable .NET 4 kernel.

The “big chief” of .NET - Scott Guthrie - is a man who is happy to take great ideas from anywhere and shamelessly add them to .NET, so I fully hope and expect to see such features in the .NET realm sometime soon(ish).


Share This Post...
No comments yet, click here to be the first

Microsoft Parallel Extensions to .NET Framework 3.5, June 2008 CTP Released

AMD quad core chipLast week, Microsoft released a new Community Technology Preview (CTP) of the .NET Task Parallel Library. The new release has a brand new scheduler that repleaces the pretty crude protottype scheduler found in the December 2007 CTP. According to the help file that accompanies the release, the new scheduler “… uses cooperative scheduling and work-stealing to achieve fast, efficient scheduling and maximum CPU utilization”.

In addition to improving the performance of the Task Parallel Library (TPL) and PLINQ, a bunch of new classes that compliment the TPL, and that can be used for general multithreading work, are included too. These include things such as a spinlock class, that includes builtin support for the sleep/ retry loop when the lock isn’t available; and the ConcurrentQueue and ConcurrentStack classes. These latter ones provide builtin support for multiple threads reading and writing to the collections simulataneously, and remove the need to write semaphore-based wrappers around the previous Queue and Stack classes.


Share This Post...
No comments yet, click here to be the first

What was the point of the OOXML battle exactly?

ISO LogoUnless you have been living in a cave for the last year (or have no interest in technology; in which case why are you reading this?), you will no doubt have heard about the battle between Microsoft and “open source advocates” (in reality, Sun & IBM) over getting OOXML ratified by the ISO/IEC. It is a battle that I’ve watched with vague interest, but I’ve not had an opinion either way on whether OOXML should have been ratified.

Today though that changed. ZDNet reported that having got approval for OOXML, Microsoft won’t be doing much with it. It turns out that whilst building support for ODF into Office is an easy task, building OOXML support into it is a very hard task. So support for ODF will arrive early next year with Office 2007 SP2, whereas we will have to wait until the next release of Office for OOXML support. This obviously begs the question, what was the point of OOXML exactly? The whole episode definitely tarnished the reputation of the ISO/IEC, yet it turns out to have been for no real purpose!


Share This Post...
No comments yet, click here to be the first

.NET is NOT to blame!

World Wide TelescopeI have been following the World Wide Telescope project with interest ever since Robert Scoble made a bit of an arse of himself over the subject. Since I was really impressed with the ease of install and the beauty of the product, I gushed in near fanboy-style about it when it went into beta release (I didn’t woop; so it wasn’t real fanboy stuff ;)). It was thus a bit of a shock to see that Mike Dillamore was casting the install in a bad light.

Mike was my boss at my last place of work. I have a great deal of respect for him as he is the man that got me into TDD, Scrum, podcasts and of course blogging. An area where he and eye do not see eye to eye though is over .NET. I am a big fan; he has, for reasons I’ve never properly understood, a keen dislike of it.

The instructions for installing the World Wide Telescope are long and complex (and remind me of installing anything on Linux for example), but people seem to be forgetting that this is just a beta release of the product and thus it will be rough and ready. As for the comment that .NET is to blame, what nonsense! The real “blame”, if one must call it that, lies with Microsoft’s business model of supporting what ought to be long-dead products. They could take the Apple route and simply refuse to install the software on any machine that isn’t Vista SP1, but since they are a multi-billion dollar operation that dwarfs Apple, perhaps their business model makes sense. Of course the blame also lies at the feet of the inherent security weaknesses in Microsoft’s desktop operation systems, but that’s a whole different topic.

Far from being a yolk about Micrososft’s neck. .NET is their money-spinning future. ASP.NET single-handedly saved their dying web server business for example. The awesomely powerful shell - PowerShell - that is built into the Server 2008 operating system is .NET based and let’s not forget that SIlverlight is .NET based too. Ten years ago, Borland offered a superb IDE, which people sadly turned their backs on by adopting the awful Visual Studio 6 instead. Those days have long gone though. Now, when one can get Eclipse or the Visual Studio 2008 Express editions for free, the IDEs from Borland (or Code Gear as they now are) make no business sense.


Share This Post...
1 comment so far, click here to read it or add another

Microsoft release World Wide Telescope Beta

World Wide TelescopeYesterday, Microsoft released a public beta of its World Wide Telescope project.

According to the press release,

“The WorldWide Telescope is a powerful tool for science and education that makes it possible for everyone to explore the universe,” said Bill Gates, chairman of Microsoft. “By combining terabytes of incredible imagery and data with easy-to-use software for viewing and moving through all that information, the WorldWide Telescope opens the door to new ways to see and experience the wonders of space. Our hope is that it will inspire young people to explore astronomy and science, and help researchers in their quest to better understand the universe.”

Bizarrely, the website is a nasty 100% Flash affair (presumably no one told Microsoft Research about Silverlight?!??), but the download is small and easy to install. Of course the disadvantage of that is that you have to be online to use the thing as it uses web services to fetch the image data as required.

Once installed and running, it is a really nice program to use. One can pan around the sky and it shows the constellations and objects of interest in those constellations. Alternatively, you can flip it around and point at the Earth and zoom right in. Below are three screen shots (scaled down to fit on my blog) of some constellations, Mercury and a satellite image centred on my home town of Lewes. I was a bit disappointed that this seemed to be the extent to which I could zoom in. The satellite view on Google Maps lets me zoom in close enough to see cars parked on the streets for example and I was hoping this program could do the same.

World Wide Telescope: constellations
Constellation view

World Wide Telescope: mercury
Mercury

World Wide Telescope: sussex
Sussex

In addition to letting you explore by yourself, the program also has a nice set of guided tours that include a commentary. These include lots of extra details that aren’t available when you explore by yourself (as far as I could tell), such as this image showing how the size of the assumed black hole a the centre of our galaxy:

World Wide Telescope: Black hole at the centre of our galaxy

Black hole at the centre of our galaxy

All in all, a very impressive beta. As it is free, I’d recommend everyone download it and take it for a spin…


Share This Post...
No comments yet, click here to be the first

All change at Arno#

Today was the day when my employment with Eurotherm Ltd finished and my employment with Enigma Data Solutions began. I swapped a 45 minute drive through the traffic jams of the A27 for a traffic jam on the A22 due to an overturned lorry. Doh! Luckily though I was only delayed by 10 minutes. Some in the office - who came from the opposite direction - were stuck for two hours. Ouch!

The new job will involve ActionScipt 3 (which I love already; it is such a huge improvement over ActionScript 2) and Java. This blog has been very Microsoft-centric (especially with regard to C#) up until now, but I may not use C# again for some time. This raises some issues for me:

  1. Do I abandon the C# tutorial series?
  2. Do I scrap the Arno# name?
  3. Do I scrap my plans to get involved in Pash?
  4. How will I convince my new boss that sending me to Mix:UK this year would be worth their while?
  5. Do I write some decent documentation on flexunit?

The last question is a no-brainer. I’ve started experimenting with flexunit, and it is a good unit testing framework for flex. The documentation for it is utterly crap though. I’ve worked out how to use it mainly by reading through the source code! So watch this space for some tutorials on using flexunit.

As for the others, time will tell…


Share This Post...
2 comments so far, click here to read them or add another

Send your name to the moon

NASA is inviting people to send their names to the moon on-board their Lunar Reconnaissance Orbiter (LRO), which is due to launch later this year. Go to this page before June 27th 2008, submit your name and you are done. As an added bonus, kids (and me!) get a lovely certificate to show their name will be carried to the moon on a chip on-board the LRO.

Name to the moon certificate

I have no idea what the point of this is. But I think it’s a bit of fun and thought I’d share it. By the way, do not fill out your name if your are worried about Martians stealing your identity… ;)


Share This Post...
No comments yet, click here to be the first

Next Page »

Close