Scott Hanselman

Rory is presenting at PADNUG on Thursday and I'll be Code Monkey

September 22, 2004 Comment on this post [1] Posted in ASP.NET
Sponsored By

Just a reminder about the PADNUG (http://www.padnug.org) meeting next week.

  • Where: Portland Community College Auditorium, Room 104,
  • 1626 SE Water Avenue, Portland, Oregon
  • When: 09/23/2004
  • 6:00 p.m. Pizza, Sponsored by: 3Leaf (http://www.3leaf.com)
  • 6:30 p.m. Presentation
  • Topic: An Introduction to Membership and the Provider Pattern in ASP.NET 2.0
  • Who: Rory Blyth, presenting; Scott Hanselman, code-monkeying

Rory Blyth will introduce you to some of the new membership features in the upcoming ASP.NET 2.0, with particularly emphasis on the Provider Patter and how it makes it extremely easy to abstract away a data store for consumption in your application. Bonus content to be included provided time.

I'll (Scott) be the code monkey, playing Paul Shaffer to Rory's Letterman, playing Ed McMahon to Rory's Johnny, playing Balmer to Rory's BillG.

I can guarantee it won't suck.

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

The Programmer's Hands

September 21, 2004 Comment on this post [29] Posted in Speaking | Tools
Sponsored By

I've said a few things in the past about The Programmer's Back.  Well, when it rains it pours. We all have pain I'm sure, but since I'm the center of my own universe my pain takes priority. I've had trouble with my hands and wrists over the years of programming. Recently, however, it's become rather ridiculous as I can only type for a few minutes at a time before my fingers and wrists start to ache.

I've got the natural keyboard and I've got the trackball mouse but fundamentally I'm I/O bound when it comes to my hands.

If you've ever seen me present before, you know that I type fast. This is not hyperbole, this is simply fact, my fingers move really fast, and now I'm paying for it. I'm not particularly athletic either and 10 years of not working out has no doubt created a weakness in my hands and forearms that can be covered up no longer. Perhaps I'm just having a flareup, but regardless it's time to deal with it.

I've looked at all sorts of funky keyboards that claim to have the One True Way of typing but I've decided the typing is just not where it's at. It's just one syllable for me to say something like "code" but it's four keystrokes between two hands and that seems ridiculous to me. So lately I've been into voice recognition, first starting with the built-in Microsoft voice recognition software and currently with Dragon's NaturallySpeaking. I've taken a few typing tests online using the voice recognition software and I've achieved up to 100 (160 in one case) words a minute - which is just about what my typing speed was at my peak. The quality is so much greater than it was five years ago when I tried previous versions of voice recognition software that at least I can feel that the future will hold positive things around voice recognition.

In fact this entire post has been dictated entirely with Dragon NaturallySpeaking version 7, and I have to say I'm not completely disappointed. For dictation, it's fantastic. The accuracy is easily 95+%, and the only strange things happen when there are words like "Corillian" that are just too weird for it to possibly understand. However it does mitigate some of these issues by scanning all of your e-mails and all your documents looking for potential vocabulary words.

I don't know if I could use it effectively if I had no hands at all, as most of its commands consist of one or two word chords and it seems to have trouble with very small words. For example the breeze forcibly on the microphone it might say "up" or "pop". It knows about a large number of applications, except it doesn't know about Firefox which makes browsing a bit of a problem. One day I'll have to go Google for additional command sets for the tools and programs that I use.

Seems that a lot of people out there have had carpal tunnel release surgery and continue to have trouble. That seems like an awfully drastic step. The only answer seems to be to "lay off" the keyboard.

Has anyone else had to stoop to this level and use voice recognition software in lieu of a keyboard? Has anyone found a vertical keyboard or some strange alternative keyboard that has changed their life and suddenly opened up new vistas of use for their damaged hands? Am I the only programmer out there with a bad back and a bad pair of hands who's 12 years into his career and wondering what the next 12 will hold? Or do I just type to damn fast?

(P.S. One thing to note, I am using a USB microphone for this dictation, and I can't imagine someone getting this kind of accuracy with an analog microphone.)

(P.P.S. Looking back on this blog post, I shudder at the sheer number of characters and keystrokes that would been required had I'd done this by hand. Perhaps voice recognition will usher in a prolific new era in blogging for me. Or, I'll just ramble a lot into my blog. :) )

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

Getting the little RSS Orange Badge to show up in the Status Bar on Firefox 1.0

September 15, 2004 Comment on this post [5] Posted in ASP.NET | DasBlog | XML
Sponsored By

I run dasBlog as you likely have noticed.  I also am a FireFox fan fo rmy personal browser, and there's a nice new RSS feature in FireFox 1.0PR.  It shows the RSS Orange badge in the status bar, and when you click on it, you can subscribe to a "smart bookmark" that will appear as a folder with each RSS item as an item.  Very slick, and makes RSS reading easy for someone like my Mom.

Additionally it's nice for a browser to FIND the RSS/Atom feed rather than hunting for the badge on the web page.

The way you let Mozilla know about these features is with the <link> tag like this. I added these lines to my dasBlog homeTemplate.blogtemplate file.  You should too. 

<link rel="alternate" type="application/rss+xml" title="RSS" href="http://...">
<link rel="alternate" type="application/atom+xml" title="Atom" href="http://...">

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

Performance in General

September 15, 2004 Comment on this post [2] Posted in ASP.NET
Sponsored By

While reading EricGu’s post on Performance of Generics, I was struck by this sentence which expresses perfectly what I was trying to express to a group of programmers earlier today who were arguing about the :? operators in C# being “faster” than explicit if statements.  I called B.S. on the whole topic. Thanks Eric!

Performance is rarely dominated by small decisions, such as whether you use an ArrayList or a List<int> to store your data. It's usually dominated by algorithmic concerns - how you process data, how much redundant processing you're doing, etc. My experience is that the ability to be able to address these concerns is fairly well correlated with the resiliency of your code to change, which usually comes down to how clean and understandable the code is. If you have clean code and good tests, it is probably feasible to refactor your code to improve performance once you find out where the performance issues are.

Note that I'm not saying that you should put performance off until the end - that rarely works, as time at the end is fairly precious. I think you should focus on macro performance rather than micro performance. [EricGu]

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

Back to your regularly scheduled technology blog: ASP.NET ClientSide JavaScript Fix for Validation Problems in .NET Framework 1.1 SP1 and ASPNET_REGIIS -c

September 14, 2004 Comment on this post [2] Posted in ASP.NET | Bugs
Sponsored By

OK, back to programming, as this is not a political blog.  Apparently there's some trouble with the .NET Framework Service Pack 1.  I personally have not experienced this problem, and I have to admin that it's so obviously weird that I am suspicious that it is in fact a bug.  Lots of stuff should/could never have worked if it is.  It's likely an install/permissions related bug.  That said, here's the details from a recent series of posts on Channel9.

Symptoms

  • ASP.NET Forms stop posting back when they have validators on them
  • Errors in Event Viewer like "Failed while copying the ASP.NET client side script files to directories under D:\Whatever. Error code: 80070005"

Fix/Potential Fix

  • Copy a PRE-SP1 version of WebUiValidation.js over the one you have in aspnet_client.
    • Certainly make sure you HAVE an aspnet_client folder either in that directory or mapped in another VDIR. (This is a common and unrelated problem.)

I'll get the details/diffs on the changes in this file and post them soon.

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.