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 ......
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 ......
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 ......
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", ......
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.
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 ......
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 ......
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.
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.