Geeks With Blogs
A Technical Debtor Toward continuous improvement May 2007 Entries
Front Range Code Camp Post Mortem
Well, the Front Range Code Camp was this past Saturday. I gave two talks -- threading and speech recognition. The threading talk (code samples and slide deck here) was pretty well attended -- about 12 people, which was a good third of the attendees. The strangest part was that there were only two people in the room that were .NET developers, and one of those was still using 1.1 so my BackgroundWorker examples weren't all that much use to him. The rest were Ruby and Java developers, plus a small cadre ......

Posted On Monday, May 21, 2007 10:50 PM

"Is Speech Recognition Finally Good Enough?"
An interesting article from Computer World. Among other issues, the article explores some of the reasons why most people don't use SR. The biggest reason is the amount of training -- both of the user and the engine -- to get to 98% recognition accuracy, which is the threshold at which users feel that SR is actually useful. "Without help on those issues, about three-fourths of the people who attempt to use SR eventually put it aside and go back to keyboarding, Parks said, and even among those with ......

Posted On Monday, May 21, 2007 9:25 PM

Dynamically Building Custom Grammars
One of my favorite features of System.Speech is the ability to generate custom grammars dynamically. As I've mentioned earler, this took about 50 lines of code in SAPI 5.1. The System.Speech team has included some very nice coarse-grained methods to accomplish this same task in just four lines of code: Protected WithEvents reco As SpeechRecognizer Public Sub LoadGrammar(ByVal options As List(Of String)) Dim choices As New Choices(options.ToArray) Dim gb As New GrammarBuilder(choices) Dim g As New ......

Posted On Thursday, May 17, 2007 1:34 PM

String.Format performance
Since I work with a lot of data-centric applications, I've come to really like String.Format. There's something nice about seeing all your single quotes without them being obscured by double quotes. For example, if I were adding a call to javascript function as an attribute of a control for use in client-side validation of an aspx page, I can use chk.Attributes.Add("onclick", String.Format("updateSelect... workTicketId, chk.ClientID)) instead of chk.Attributes.Add("onclick", ......

Posted On Wednesday, May 16, 2007 5:00 PM

Binding a Dictionary to a ComboBox

I had cause recently to try to find a way to use a Dictionary as the data source for a WinForms combo box. There's a really cool, really simple way to do this, as described here.

Posted On Wednesday, May 16, 2007 4:29 PM

Design Patterns
This month's Northern Colorado .NET Special Interest Group presentation was on Design Patterns. Ben Hoelting came up from Colorado Springs, and gave a great talk; slide deck and code samples will be posted on his blog. Ben will be giving a similar talk at the Denver VSUG in July. If you're at all responsible for design, especially design you get to do the maintenance on later, you'll want to be familiar with these patterns ......

Posted On Wednesday, May 16, 2007 4:18 PM

System.Speech -- What is it?
I've been lurking on the fringes of speech recognition for quite some time. My first exposure required installation of a dedicated ISA sound card. Yes, it was that long ago. As you can imagine, that experience was somewhat less than exhilarating. My next go round was with Dragon in 1999 (I think they were owned by Corel at that point). Although the engine took a while to train, and didn't do very well on some of the words I tried to feed it ("Kosovo" comes to mind). However, once you corrected what ......

Posted On Sunday, May 13, 2007 4:37 PM


For anyone thinking about starting their own blog, I have to highly recommend SubText. The setup process is extremely easy, and the instructions are pretty good... other than some IIS config issues (that were entirely my fault), the install went smoothly and took less than half an hour.

Posted On Sunday, May 13, 2007 2:08 PM

Front Range Code Camp

Next Saturday (May 19th) is the Front Range Code Camp in Denver. I'll be speaking on both the System.Speech namespace and threading in .NET.

Posted On Sunday, May 13, 2007 1:44 PM

Copyright © Jeff Certain | Powered by: