Scott Hanselman

The ErgoDex Alternative Keyboard and the Rise of "CodeRush IL"

May 27, 2004 Comment on this post [0] Posted in TechEd | CodeRush | Gaming
Sponsored By

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.

facebook bluesky subscribe
About   Newsletter
Hosting By
Hosted on Linux using .NET in an Azure App Service

Karma and the TabletPC Pen

May 27, 2004 Comment on this post [3] Posted in TechEd | Speaking
Sponsored By

If you hung out with me at all you no doubt heard me complain that I had lost my TabletPC pen literally an hour after I arrive in San Diego. 

I had all these images of me in "Slate Mode" with my famed Toshiba m205, taking notes in OneNote 2003 SP1. (I was most excited about this feature: "Simultaneously view and edit the same pages of notes with multiple users in different locations."

But, alas it was not to be, and my convertible TabletPC was immediately rendered flacid by the loss of it's magnetic member. (Remember, you can't just use ANY stylus with a TabletPC, the screen isn't pressure sensitive.  You have to use a special Wacom-style stylus with charged pixie dust)  So, I used the keyboard.  Sigh.  I felt so 2001.

Then someone mentioned that there was a hidden reserve pen literally buried underneath the main battery.  Egads!  It was like discovering a new directory on a computer I'd owned for years.  How could I not have known about this feature!

I immediately ripped my battery off and was presented with...SHOCK...AMAZEMENT.  There was only a chalk outline of a replacement stylus.  Had it been murdered?  Stolen?  Gasp...sucide?  Why would Toshiba go to the effort of actually drawing an outline of a pen but NOT INCLUDING IT.

Cheapness.  Stingyness.  Turns out a little Googling explained that the Toshiba TabletPC m205 ships everywhere else in the world with a backup stylus.  Americans, however, are screwed.  Gotta save that 10 cents, eh?

A light in the tunnel...

So, dejected, I went online to the Toshba store and shelled out $50 to get a kit that includes a replacement stylus, a backup stylus (to cover up the chalk outline in my battery compartment) and a tether (yes, a tether) to keep my pen, well, tethered.  But, as things go, it was Saturday and they wouldn't be able to ship it until Monday.  Sigh.

I complained.  Bitterly.  To anyone at TechEd who would listen to my woes.  Then, someone (I think it was John Bristowe) said one day, "Is this your pen?" and handed me a pen that someone else had lost! (I'd lost mine at UCSD.)  Joy!  I was back in business!

I arrived back home with my newly found (someone else's) pen to a package from Toshiba with my ordered replacement and backup.  I secured my tiny reserve pen in it's cubby and moved on.  Then, a few hours ago, Michele emailed me with the news that someone at UCSD had actually found my originally lost pen.  Glory be, it's on the way in a envelope. 

I left a man without a pen, now, I am a man with three pens and one in reserve.

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.

facebook bluesky subscribe
About   Newsletter
Hosting By
Hosted on Linux using .NET in an Azure App Service

Edward Tufte is coming...you need to be there

May 26, 2004 Comment on this post [4] Posted in Programming
Sponsored By

I made a reference to Edward Tufte early this week when I made up the word "Tuftesque."  A few people asked what I meant.  So, if you've never heard of Edward Tufte, listen up.  If you've heard of him, but never seen him speak, listen up.  If you have a complete clean desktop with no icons, listen up.

Information Design just isn't sufficiently covered in most computer science courses, otherwise the average programmer wouldn't suck so bad at PowerPoint and Excel.  So, why not pony up and get a refresher.  To give you an idea about what Tufte's about, here's a great thread on his Forums about how Gantt Charts suck.

His book "The Visual Display of Quantitative Information" made Amazon's "Best 100 books of the 20th century."

Edward Tufte has written seven books, including Visual Explanations, Envisioning Information, The Visual Display of Quantitative Information, and Data Analysis for Politics and Policy. He writes, designs, and self-publishes his books on information design, which have received more than 40 awards for content and design. He is Professor Emeritus at Yale University, where he taught courses in statistical evidence, information design, and interface design.

He'll be in Seattle on June 21st and 22nd, and in Portland on the 24th.  Additional dates and cities are on his site.

It's only $320 for the one day course, AND you get ALL THREE BOOKS for the fee.  Believe me, it will make you a better person and a better computer scientist.  Get your boss to pay.

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.

facebook bluesky subscribe
About   Newsletter
Hosting By
Hosted on Linux using .NET in an Azure App Service

One Image Editor to Rule Them All - You Shall Not Pass!

May 26, 2004 Comment on this post [2] Posted in TechEd
Sponsored By

Richard Campbell just chatted me with this tidbit that I missed from the MVP Summit.

Richard Campbell says:Dewd.

Scott Hanselman - Portland says:kewl

Richard Campbell says:So get this - at the MVP summit, Balmer did his keynote thing. And he had a list of most common concerns by the MVP. Guess what was in the top 10? The image editor tangle.

Scott Hanselman - Portland says:awesome

Scott Hanselman - Portland says:what did he say?

Richard Campbell says:He said "I didn't know anything about this. So I called up some folks at Microsoft, and apparently we make a lot of different image editors."

Scott Hanselman - Portland says:holy crap

Richard Campbell says:And so apparently there is a Balmer-demanded initiative to make one image editor to rule them all, one editor to find them, one editor to bring them all and in the Windows bind them.

Scott Hanselman - Portland says:can I blog this conversation?

Richard Campbell says:Fine with me, bub. I was gonna put comments into your blog anyway, but this is more fun.

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.

facebook bluesky subscribe
About   Newsletter
Hosting By
Hosted on Linux using .NET in an Azure App Service

TechEd: Geeks on the Floor

May 26, 2004 Comment on this post [5] Posted in TechEd | Speaking | CodeRush
Sponsored By

I didn't know this picture was taken...here's us on the exhibit floor (literally) at TechEd.  There's (left-to-right) Clemens, Mark Miller (from DevExpress), Me, Goskin (RD from Turkey) and Mitch Roebush.

This is us staring at CodeRush in wide-eyed amazement.

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.

facebook bluesky subscribe
About   Newsletter
Hosting By
Hosted on Linux using .NET in an Azure App Service

Disclaimer: The opinions expressed herein are my own personal opinions and do not represent my employer's view in any way.