Current and Upcoming Projects

6. November 2006 19:15

Over the course of the next month, I will be dabbling with several different things.  Hopefully, time will permit me to share some tidbits of useful information related to these "pet projects".

So, what are these pet projects?

Custom WCF Encoder
I am currently working on a custom WCF encoder.  I don't really want to give away what it does yet, but I think it will be pretty useful.  Right now, it is one of my lower priority tasks.  So, it will probably be another couple of weeks before I am ready to unveil it.

Smart Client Software Factory
It appears that I will be doing some work with the Smart Client Software Factory in the near future.  Most everyone that knows much about me understands that I am not much of UI person.  Although UI is a very important part of an application, I prefer getting into the guts of back-end processes, services, business logic, etc.  However, smart clients are somewhat of an exception since they typically interact heavily with services.  It should be some fun work that might possibly tie into WCF.  I will be posting some of my experiences with the factory approach.

Niche GUI Concepts
Even though I don't typically play around in the GUI realm, I am currently experimenting with some concepts for the prototype of the interface of an upcoming product.  Some of the ideas include a deskbar, appbar, and system tray application.  Deskbars typically reside on the Windows Taskbar (think Google Deskbar).  Appbar is short for Application Desktop Toolbar.  These are usually dockable to the side of your desktop and have the ability to optionally float on top of other windows.  Finally, most everyone should be familiar with the good-ole applications that minimize to an icon in the system tray.  It has been difficult to find very much useful information about how to achieve some of these UIs in .NET 2.0.  So, I plan on sharing some of what I discovered.


11/7/2006 4:02:03 AM #

Hey Jeff,

My $.02 on the SCSF.  It isn't really about building great UIs, it is more or less a pattern or architecture for building the application.  It extends the concept of a Model View Presenter architecture to a Smart Client.  For example, how do you get this tab in this other control to update based on an event in this other unrelated module?  That is what it solves.  Everything else is left up to you.  

Just FYI since I've seen several devs on our team tackle it, it takes about a month to really get your head around it.  One week for exploring labs and trying to understand what's going on and then several weeks of working yourself into a whole to say "How do I do that now?".

Keith Elder |

11/7/2006 11:48:36 AM #

Keith, thanks for the info.

From what I have seen so far in playing around with the SCSF, it appears to be exactly what you described...essentially a model view presenter pattern for smart clients.

I think it is going to work well for this particular scenario.

jeff.barnes |

11/18/2006 7:02:20 AM #


Hi Jeff

I'm also trying to implement an Application Toolbar, and I have a lot of problems to launch windows forms from the toolbar (ie non modal windows don't work). I guess it can be managed with WCF.  I'm anxious to share your "Niche GUI concepts".

http:// |

Comments are closed

About Me

I'm a passionate software developer and advocate of the Microsoft .NET platform.  In my opinion, software development is a craft that necessitates a conscious effort to continually improve your skills rather than falling into the trap of complacency.  I was also awarded as a Microsoft MVP in Connected Systems in 2008, 2009, and 2010.

Can’t code withoutThe best C# & VB.NET refactoring plugin for Visual Studio
Follow jeff_barnes on Twitter

View Jeff Barnes's profile on LinkedIn


Shared Items


Anything you read or see on this site is solely based on my own thoughts.  The material on this site does not necessarily reflect the views of my employer or anyone else.  In other words, I don't speak for anyone other than myself.  So, don't assume I am the official spokesperson for anyone.