Heartland Develpers Conference (HDC 07)

I am attending and speaking at this year’s Heartland Developers Conference. HDC has gathered an impressive list of speakers and sessions this year; despite allowing me to speak I am slated to give a talk on MonoRail.
MonoRail - An Agile Alternative to ASP.NETHave you looked at Ruby on Rails and [...]

Using Dynamic Proxies to Thread Enable MVP WinForms

The original version of the threaded code used two classes to implement the thread safe view and threaded presenter. These classes were specific to IView and IPresenter used by this application.
presenter.View = new ThreadSafeView(form, form);form.Presenter = new ThreadedPresenter(presenter);
The content of this post may seem out of place if you have not read the [...]

Cinco De Mayo - St. Louis Code Camp Style

Today was the St. Louis Code Camp. I had a great time. There were several outstanding talks. Brian Button did a fabulous job of organizing the conference.These are my notes from the talks I attended or presented for those of you who were not able to attend.Selling your Software [...]

Multi-Threaded WinForms Application - MVP

This is the third part of the Multi-Threaded WinForm Applications series, we will discuss how to use Model-View-Presenter (MVP) to inject threads into a WinForm application. In part one of this series, we discussed the basics of Multi-Threaded WinForms. In part two, we discussed using a BackgroundWorker to keep the WinForm application [...]

Multi-Threaded WinForm Application - BackgroundWorker

Welcome back to the second installment of a four part series (Part 1 - Basics, Part 3 - MVP and Part 4 - Dynamic Proxies).In Mult-Threaded WinForm Application - Basics, we discussed that long running operations render WinForm applications unresponsive. .NET 2.0 provides the BackgroundWorker component that allows us to perform long running [...]

Ruby - Assigning a block to a variable

On Friday, Brian and I were discussing how to assign a block to a variable in Ruby. I knew how to pass a block as a method argument def method(&proc), but I could not remember how to just assign a block to a variable. I finally looked up the [...]

Multi-Threaded WinForms Application - Basics

Have you ever written a WinForms application that froze when a button was pushed? Have your users complained that the application is slow (or locking up their machine)? Do you want your applications to be responsive and user friendly? If so, then you will want to read this three part series on Writing Multi-Threaded WinForms [...]

MonoRail - Figg (The Fake Digg)

I had a great time talking at the St. Louis C# users group tonight. We had a great time exploring MonoRail and it’s usages. During the talk, we built a fake Digg that I called Figg. I posted a more complete example of Figg at the following subversion repository. [...]

C# Multi-Type Generic Constraints

Today, I wanted to place constraints on a multi-type generic. Here is my starting point.public class MultiTypeGeneric<A,B>I wanted to put a constraint on A and B. I did several Google searches to find the syntax. There were suggestions, but none of them seemed to work. Here [...]

Converting String to byte[] and back again

I was working with some networking protocols in C# and I needed a way to convert from a string to byte[] and back again. It took a little time to find the answer, so I thought I would write it down for the next time that I would need it.The secret is in [...]