The ErgoDex Alternative Keyboard and the Rise of "CodeRush IL"
When folks say that the differences between C# and VB.NET are "syntactic sugar" I like it. Sure there are a few funky ; % & ^ things in C#, and every once in a while someone will add a new operator to VB.NET like "AndAlsoIsNotOnTuesday" but generally ifs are ifs and fors are fors, eh?
Since CodeRush lets you map something as innocuous as "c" to a complete class definition and "u" to "using{}" and the whole IDisposable thing in C#, the whole language is just sugar.
If you think "string" that's one syllable. String. Boom. Why type s. t. r. i. n. g. The whole middle "trin" part of "string" isn't value-added. So, you type "sg"-space and you get string.
So, I was thinking, since in CodeRush if you select block of code and press "u" it will put "using{ (your code block) } around it, what should it do in VB.NET as they don't have "using." But, even though VB.NET folks have to put a Try/Finally and explicit call to Dispose(), the semantics are the same. Why not map "u" in VB.NET in CodeRush to something like:
Dim o As Object
Try
o = New Object()
Finally
If Not o Is Nothing Then
con.Dispose()
End If
End Try
See? The semantics of "u" are the same regardless of language. Now, I used to be all about VB. I spent years getting paid for VB3/4/5. But it's been a while, and I'm largely a semicolon guy now. Even in VB.NET I'll sometimes type o = New Object()'; just for comfort (notice the ').
Often I need to do demos in VB.NET and I don't remember the syntax. I can, however, remember "c" or "u" or "pdt" (property that returns a DateTime). I'm calling it "CodeRush IL" and it's making me not only more productive in my own language, but also in VB.NET.
<bigidea>Now, what about a keyboard JUST for the .NET Programmer</bigidea>
If you know me, you know I have a few gadgets. I'm such an Early Adopter that I preordered Doom III when Castle Wolfenstein came out.
When I saw a new kind of game input device announced at E3, I know I had to have one. What's the first thing you do when you get a game? You have to make a conscious effort to marry syntax and semantics. What's jump? What's crouch? What's "Build Farm"?
The Ergodex is a completely customizable personal input system. I think of it as a combination tablet and keyboard. The 25 Keys are LOOSE. You can arrange them in any order or orientation you want and they will stick to the board.
You can also put templates and information under the plastic cover.
I'm going to map the keys in whatever what I think is comfortable to various expansions in CodeRush. I'll have the datatype section of keys, and the flow control section. I may even hookup a number of keys just to refactor.
It's going to be hot.
About Scott
Scott Hanselman is a former professor, former Chief Architect in finance, now speaker, consultant, father, diabetic, and Microsoft employee. He is a failed stand-up comic, a cornrower, and a book author.
About Newsletter
Comments are closed.