29.1.08

Official DotNetNuke Chat Module as Live Support Chat: A First Look

Today a live chat module for DotNetNuke was released. This module can be inserted into a page and then any logged-in users can participate in a simple, live chat.

I think this is an excellent step towards live service and interaction on DNN websites. However, there are a few things that definitely will need to be addressed in order to make this a viable option for live website support. I recognize that this is currently a generic and simple module, but feedback was called for, and this would be the primary reason for which I would implement live chat on a DNN installation.

  1. In todays, multi-task computing, its likely that users are going to be working in many different windows at once. With the current module, new messages do not "alert" us if the browser window with the message is not visible on screen (minimized, behind another window, etc.). At minimum, an incoming message needs to be able to get our attention. Whether this is a beep, a notification popup (like googletalk, Live Messenger, etc.), or simply a flashing of the browser task in the taskbar.
  2. If you are the only person in a page-based chat, you are chatting with yourself. If this is just a casual chat system, then you are conversing only with the people that happen to have loaded that page in the same timeframe as yourself. For more purpose-driven communication such as live support, this means that support agent has to have this page up and visible 24-7 to even know if someone wants to chat. A live support chat system needs to be able to get the notice of the support agent when a customer comes online, and it has to be fairly quick. Perhaps a client side application is needed that can poll the chat module on a certain page and provide this "chat awareness". At minimum, an email (to any interested parties) could go out that an empty chat room has become occupied.
  3. Free-for-all chat can be fun. However, there are many cases in which this is inappropriate. If this is support chat, or private chat, then the fact that anyone on the page can see whats typed makes this an unsuitable place to share any non-public information. A live support chat system needs to be able to spawn chat "instances" that are private and secure. It also needs to be able to queue these instances across a limited support staff. Perhaps if there is a public "waiting room" similar to the current implementation, but then the support agent can invite persons to private chat instances from ther.

19.1.08

.NET Framework: Source Code Released!

It had been previously reported that VS2008 users could get their hands on the source code of the .NET framework to aid in debugging, understanding, etc. Now behold that anyone can get it.

I think I'll go get it and take a look at the CollectionEditor. Seeing what they do could really help in my ListEditor (with support for generic List<T>).

10.1.08

It's a new year...so run Disk Cleanup?

There are a bunch of tools that are very necessary to the regular maintenance of a Windows computer. However, if you are like me, I sometimes forget to regularly use them. I know I can schedule something to regularly run (I do this for virus scan, etc.), but I haven't felt like it was necessary for something like Disk Cleanup.

But today someone mentioned deleting system restore points to regain hard drive space, and Disk Cleanup came up. I have a love/hate relationship with that tool, and running it reminded me why:

1. HATE: It takes FOREVER to start up. Since it calculates how much space each option will reclaim, you spend a lot of time waiting for a progress bar to march before you ever even get to the options. Why not let me select what things I care to change and THEN grind away?

2. LOVE: It's a simple and centralized way to clean up all the "residual" files that pile up over the months. Once again, I was surprised how much space this cleared for me on my PC, and all without the compressing files option.

Like a really early spring cleaning, or a digital New Year's resolution, I'm encouraging you to revisit your PC maintenance. Maybe you can save your self some pain and progress bars later.

2.1.08

Howto: Programmatically get the (Click-Once Published) Version of a .NET Application in C#

The ClickOnce mechanism of deployment maintains its own version separate from the File and Assembly Versions of .NET binaries. Occasionally it is useful to retrieve and use such information. Since the ClickOnce version can automatically increment on publish, it can represent a clean way to version test builds outside of the standard and manual methods of versioning.

//Default to the version of the currently executing Assembly

Version v = Assembly.GetExecutingAssembly().GetName().Version;

//Check to see if we are ClickOnce Deployed.

//i.e. the executing code was installed via ClickOnce

if (ApplicationDeployment.IsNetworkDeployed)

{

//Collect the ClickOnce Current Version

v = ApplicationDeployment.CurrentDeployment.CurrentVersion;

}

//Show the version in a simple manner

string sVersion = string.Format("Version: {0}", v);

MessageBox.Show(sVersion, "My Application");


1.1.08

Release: Notepad++ v4.7 [FTP and WYSIWYG]

Happy New Year! What better way to start the year than a new release of the fabulous Notepad++. I haven't yet had a chance to try it out, but this release is proported to have some interesting FTP and RTF/HTML capabilities.

Get it here.