No virus found in this blog post.

No virus found in this message.
You're probably familiar with the notifications that anti-virus programs put in e-mails letting you know that the e-mail has been scanned and is considered "safe" to open.

It's unfortunate that this is common practice with so many anti-virus applications. I can understand why they do this, but ultimately it makes the recipients of these e-mails less safe because it gives them a false sense of security.

Anti-virus publishers do this because it gives them an opportunity to advertise their product in every e-mail you send, at no expense to them. However, since there's no mechanism for the recipient of the message to test the validity of the notification, it does nothing to enhance security.

There are many opportunities between the sender and the recipient to inject malicious code into an attachment. The notification could be faked by simply pasting it into the message manually or by the tricks of a malicious program.

If people receiving these messages falsely believe that the notification is affording them security, because of these precautions taken by the sender, then they may open a malicious piece of code thinking it is safe.

I would encourage anti-virus publishers to make it clear in their notifications that it is simply a banner ad and affords the recipient no added security. If your anti-virus application allows you to disable the banners, I would suggest disabling it.

The best way to be safe is to use an e-mail hosting service that performs virus checking prior to you downloading your mailbox. This can also be accomplished in self-hosted environments using a number of open-source tools which are compatible with popular e-mail servers. Additionally, it's advisable to use a virus scanner on your local machine. ClamAV is a popular, multi-platform, open-source anti-virus program. Finally, it's never advisable to run executable files (programs, screensavers, batch files, etc.) that you receive as an e-mail attachment regardless of how protected you are.

Multi-Platform Mobile Development with PhoneGap

ecoVirtue
I've been working on a new project that requires support for multiple mobile device platforms. I've decided to use a local product, Nitobi's PhoneGap, which produces binaries for the most popular mobile device platforms: iOS, Android, Blackberry, and Windows Mobile.

PhoneGap makes it easy to produce HTML 5 and JavaScript applications that look and perform just like native apps. By leaveraging a common programming language and target platform (the web browser), PhoneGap helps start-ups reduce the overhead associated with developing and debugging for diverse platforms. These AJAX-driven applications also make it easy to perform over-the-air updates, without requiring the usual App Store update cycle for each new release.

Now, virtually anyone can take advantage of Nitobi's mobile build tool. They've made it easy to submit your HTML 5 app to their web interface and receive builds for every major OS. However, I've found it to be just as easy to setup Xcode and Eclipse for developing with PhoneGap for the major mobile platforms.

In addition to the platforms that PhoneGap supports, developing for HTML 5 and JavaScript means that your app will work on virtually any device--regardless of whether or not PhoneGap explicitly supports it. Simply provide a link to the app from your website as an alternative. These "unsupported" users' devices get the same experience as everyone else, without any additional headache for developers.

You can learn more about my latest project and sign up for updates over at ecoVirtue.com. Learn more about this exciting new app and learn how you can download it to your mobile device once the beta is released.

For me, PhoneGap provides a great way to produce mobile applications using standards and technologies that are readily available. It also helps me save a lot of time developing and debugging; it would be simply impossible for me to develop for every platform separately in any reasonable time-frame! However, the real magic happens on the server-side: That's where a powerful RPC architecture, developed in-house, makes it easy to develop AJAX-driven applications without barriers.