Marquee de Sells: Chris's insight outlet via ATOM 1.0 csells on twitter

You've reached the internet home of Chris Sells, who has a long history as a contributing member of the Windows developer community. He enjoys long walks on the beach and various computer technologies.




.NET Compact Framework Tools and Samples

Here. From Jim Wilson: The DevelopMentor .NET Compact Framework Tools and Samples page is finally available. Check it out to see if there is something that you need or if you have something that you think would be helpful to others please post it.

0 comments




Official Transparent Prevalence Implementation

Here. From Jesse Ezell: Bamboo.Prevalence now contains support for the transparent prevalence concept. In the end, it was decided to use proxies rather than context bound objects, but you still get a completely transparent object persistance system.

0 comments




"Spend A Day With .NET" Winning Entries

Sorry it took so long to judge the entries, but I was overwhelmed. That'll teach me to host an international, pan-galactic, cross-universe coding contest. : )

Grand Prize Winner and Best Developer Tool: Stoyan Damov

Stoyan wins the grand prize of free admission to the Web Services DevCon. His entry is shown here:

KbView allows the user to pick a technology or set of technologies that s/he is interested in and see what's new in that space. Once the articles are fetched, they're listed on the right hand side, where they can be shown directly in the text viewer below or they can be hosted in a separate IE window. Also, once the article has been downloaded, it's cached for quick access for next time. This is an app that I will use. Great work, Stoyan!

Best Rookie: Sorin Jianu

Sorin wins a year subscription to MSDN Universal for his submission:

Sorin's submission is a functional proxy server and represents his first .NET project ever. It's fully asychronous and uses non-blocking I/O. It's quite a testament to what can be done in .NET in a single day.

Most Polished: Jeff Braunstein

Jeff wins a 12-month subscription (5 points) to Safari Tech Books Online for his entry:

Jeff's entry was the most polished I got, both in the UI as shown above, but also in the documentation, which included a market justification. I can see Jeff selling a version of this tool soon. The UI above is a front end to an NT service, also written in .NET, that takes jobs off of an MSMQ queue for batch dispatch. Because of the flexible architecture, these jobs can be spawned on a single machine or across multiple machines.

Best VS.NET Add-In: Igal Ioffe

Igal wins a signed box copy of Visual Studio .NET for his VS.NET add-in:

Igal's submission is simple, but effective. I often mail snippets of code around and now I can do it with the context menu from without VS.NET.

Best Consumption of XML: Dejan Jelovic

Dejan won his pick of a combination of things, but I couldn't talk him into taking anything -- he just wanted to compete. His application is a fully functional RSS reader:

Dejan's RSS reader has two tabs, one for the RSS feed administration itself, persisted between sessions, and one for the combination of the content for all of your feeds in a single web page, cached between sessions.

Best Use of SQL: Simon E.P. Wilson, Markus Burri & Thomas Schwarz

Simon, Markus and Thomas win a 10-user copy of rmTrack for their SQL Stored Procedure code generator:

Once the settings are chosen, the generated code lets the user make calls into the stored procedure from their .NET language of choice almost as if the function was a native .NET method:

class MyApp {
    static void Main(string[] args) {
        // Create Connection
        SqlConnection conn = new SqlConnection(@"...");
        conn.Open();      

        // Invoke the Stored Procedure
        SalesByCategory.Result res = SalesByCategory.Invoke(conn, "Beverages", "");

        // Show Results
        foreach (SalesByCategory.Row row in res.Rows) {
            Console.WriteLine("{0} : {1}", row.ProductName, row.TotalPurchase);
        }
        conn.Close();
    }
}

Honorable Mention

There were so many other great entries that I couldn't narrow it to just the big prize winners. The following were each awarded their pick of a book or a free software package:

0 comments




"Spend A Day With .NET" Winning Entries

Sorry it took so long to judge the entries, but I was overwhelmed. That'll teach me to host an international, pan-galactic, cross-universe coding contest. : )

Grand Prize Winner and Best Developer Tool: Stoyan Damov

Stoyan wins the grand prize of free admission to the Web Services DevCon. His entry is shown here:

KbView allows the user to pick a technology or set of technologies that s/he is interested in and see what's new in that space. Once the articles are fetched, they're listed on the right hand side, where they can be shown directly in the text viewer below or they can be hosted in a separate IE window. Also, once the article has been downloaded, it's cached for quick access for next time. This is an app that I will use. Great work, Stoyan!

Best Rookie: Sorin Jianu

Sorin wins a year subscription to MSDN Universal for his submission:

Sorin's submission is a functional proxy server and represents his first .NET project ever. It's fully asychronous and uses non-blocking I/O. It's quite a testament to what can be done in .NET in a single day.

Most Polished: Jeff Braunstein

Jeff wins a 12-month subscription (5 points) to Safari Tech Books Online for his entry:

Jeff's entry was the most polished I got, both in the UI as shown above, but also in the documentation, which included a market justification. I can see Jeff selling a version of this tool soon. The UI above is a front end to an NT service, also written in .NET, that takes jobs off of an MSMQ queue for batch dispatch. Because of the flexible architecture, these jobs can be spawned on a single machine or across multiple machines.

Best VS.NET Add-In: Igal Ioffe

Igal wins a signed box copy of Visual Studio .NET for his VS.NET add-in:

Igal's submission is simple, but effective. I often mail snippets of code around and now I can do it with the context menu from without VS.NET.

Best Consumption of XML: Dejan Jelovic

Dejan won his pick of a combination of things, but I couldn't talk him into taking anything -- he just wanted to compete. His application is a fully functional RSS reader:

Dejan's RSS reader has two tabs, one for the RSS feed administration itself, persisted between sessions, and one for the combination of the content for all of your feeds in a single web page, cached between sessions.

Best Use of SQL: Simon E.P. Wilson, Markus Burri & Thomas Schwarz

Simon, Markus and Thomas win a 10-user copy of rmTrack for their SQL Stored Procedure code generator:

Once the settings are chosen, the generated code lets the user make calls into the stored procedure from their .NET language of choice almost as if the function was a native .NET method:

class MyApp {
    static void Main(string[] args) {
        // Create Connection
        SqlConnection conn = new SqlConnection(@"...");
        conn.Open();      

        // Invoke the Stored Procedure
        SalesByCategory.Result res = SalesByCategory.Invoke(conn, "Beverages", "");

        // Show Results
        foreach (SalesByCategory.Row row in res.Rows) {
            Console.WriteLine("{0} : {1}", row.ProductName, row.TotalPurchase);
        }
        conn.Close();
    }
}

Honorable Mention

There were so many other great entries that I couldn't narrow it to just the big prize winners. The following were each awarded their pick of a book or a free software package:

0 comments




Never Send An Email In Anger

Here. My proposal for an Outlook Add-In that notices and warns you when this is about to happen...

0 comments




TechEd2002 Sessions / MS Videos

Here. From Jesse Ezell: If you are looking for a place to brush up on your .NET skills and missed TechEd this year, you can see the TechEd 2002 sessions (like 200+ sessions with slides, video, and audio) from here, as well as check out some great Balmer videos like the infamous "developers! developers! developers!" chant. Definately a top notch resource.

0 comments




QuickCode for .NET

Here. QuickCode is a VS.NET add-in that expands phrases into code, e.g. prop int test would expand to an entire property implementation. It works for C# and VB.NET and appears to be very flexible.

0 comments




Never Send An Email In Anger

I learned how to write good emails at the foot of the master -- Don Box. Whenever we'd decide we wanted something, he'd grab his computer and say, "Let's write the email" and it would be done.

One of the most important things that I've ever learned about high-tech communications is to never, ever write an email in anger. Or, to be more precise, never *send* an email in anger. I encourage you to actually write it. It always makes me feel better. But don't address it, because you want that email to first end up in your Drafts folder and go from there to your Deleted folder. If you address it and mean to press Ctrl+S to Save but manage to press Alt+S to Send by mistake, you might well be looking for work in another industry. If you don't address it, however, Outlook complains and you can breathe a sigh of relief. Frankly, I wish there was an add-in that protected me even if I ignore my own advice:

Of course, this spouting could only occurred after I've violated my own advise, as I've often done over the years, always to my determent. When you're angry, all you care about is making sure that your anger comes through. If I give myself an hour or two to think on it, when I come back to read that angry email, it always makes me flinch. Writing an email once I'm done being angry always yields the nicest, most thoughtful emails that I can write. Those I find to be *much* more effective.

0 comments




DevelopMentor Developer Resources

Here. The list of tools and samples from recognized experts across technologies has grown to monstrous proportions at the new DevelopMentor Developer Resources page. Highly recommended.

0 comments




KDE To Support .NET

Here. "The KDE Project has emerged as possibly the first real-world adopter of Project Mono for application development. Mono is an open source alternative to .NET for Unix and Linux desktops, initiated in July 2001 by Ximian Inc." The reason that this is interesting for Windows developers is that with both of the major Linux desktops, i.e. Gnome and KDE, supporting .NET, it's possible that a simple .NET application or component could actually work across Windows, Gnome and KDE. Now .NET becomes the OS. Shades of Java, which failed in this space I know, but still interesting...

0 comments




Less Than 40 Seats Left at the Web Services DevCon

Here. Register now for the Web Services DevCon, October 10-11 in greater Boston, featuring Don Box, Tim Ewald and keynote speaker Sam Ruby. In addition to amazing talks by Microsoft’s Web Services Program Manager, Keith Ballinger, and IBM Distinguished Engineer, Noah Mendelsohn, as well as wizened practitioners from HP, Macromedia and the W3C, all attendees receive exclusive SellsBrothers t-shirts available nowhere else. Register now!

0 comments




foreach is Your Friend: Part 2

Here. Just when you'd thought you're learned everything there was to know about foreach in part 1, I've got more in part 2! This part (the final : ) discusses implementing support for foreach in your own custom types as well as how to patch holes in the framework where they forgot to add foreach support. Enjoy.

0 comments




Multithreaded .NET Web Service Clients

Here. Ian Griffiths and Chris Sells "Unresponsive programs are extremely frustrating to use. Applications that sometimes freeze for a moment are a source of much irritation, especially if they don't provide any feedback on what they are doing, or how long it is likely to be before they start responding again. This behaviour can be particularly common among applications that use remote facilities such as Web services. This article describes how to maintain responsiveness in .NET Windows Forms rich client applications, even when invoking potentially long-running Web services, by using multiple threads."

0 comments




Rich Client Database Interactions with ADO.NET

Here. Shawn Wildermuth and Chris Sells "In the .NET Framework, rich clients can bring database servers to their knees, just like Web-based applications. But with the disconnected nature of ADO.NET, your rich clients can manipulate and analyze database data without impacting the database server. Once you have the data in the rich client, you can do high-performance analysis of the data—including sorting, filtering, and querying—without expensive server calls. In this article we will show you how to use DataSet, DataView, and XmlDataDocument to make your rich clients work with database data in a disconnected way."

0 comments




Intel Rich Client Series

Here. I'd like to announce a new series of articles specially requested by Intel on the topic of making the most of the client tier. Topics include high-performance graphics, data and XML querying and filtering on the client-side, smart client deployment and more. Two articles are up now with more to come through the end of the year. Enjoy.

0 comments




340 older posts       2295 newer posts