Rants, rambles, news and notes from another geek

BlogJetThis Plugin

Ahhh very nice. I’ve been looking for this for a while, since Omea Reader supports the IBlogExtension intereface.

http://blogjet.com/wiki/pmwiki.php?pagename=Main.BlogJetThis

I installed the one with the configurable template. To use it with Omea Reader, just extract it somewhere (I used C:\Program Files\BlogJet\BlogJetIt), and then go to Tools Options in Omea Reader. Select Internet/Feeds in the tree and click “Install”. Browse to the plugin DLL and click OK. That’s it.

BlogJetIt

INI File Redirection When Running Non-Admin

One of the things that I’ve noticed running non-admin is all the apps that work, but not always correctly. Two interesting ones that you may not have noticed are the Windows Calculator (calc.exe) and Character Map (charmap.exe).

In Calculator, the problem is that is forgets your current view. As a geek, one of the first things I do is to switch it into Scientific mode. But when you’re running non-admin, it never seems to remember this and starts up again in Standard mode. Annoying, but if you aren’t looking for it, you may not even notice. After all, you don’t get any errors or warnings.

In Charmap there is a similar problem. Before, when running as admin, charmap would remember the last font you had selected in the dropdown list. But when runnning non-admin, it forgets and starts you off with Arial. Once again, you don’t get any error messages or warnings, it just doesn’t seem to remember.

The reason for both of these failures is that both apps persist their state information into the WIN.INI file. Yes, you heard me right, the Windows INI file. This is leftover from the old days of Windows 3.x. Since INI files are located in your Windows installation directory (typically C:\WINDOWS), the app can’t write to them because your non-admin account doesn’t have write privileges for files in that folder.

But thanks to the wonderful folks on the nonadmin alias (an internal list for discussing non-admin issues and techniques), I now know of a way around this problem. It turns our that since Windows NT, when the registry was introduced, we have had the ability to redirect INI files into the registry. (See Knowledge Base Article 102889 for the details of how this works.)

So, armed with this information, you can redirect those two apps into your HKEY_USERS registry hive with the following entry. (To use this copy-paste it into Notepad, save it with a .reg extension, and double click on it. You will have to be Admin to make this change!!!!)

Windows Registry Editor Version 5.00  
  
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\IniFileMapping\win.ini]  
"SciCalc"="USR:Software\\Microsoft\\SciCalc"  
"MSUCE"="#USR:Software\\Microsoft\\CharMap"

&nbsp_place_holder;Now playing: The Breeders - Drivin’ on 9

Geek Notes 2004-12-17

Christmas approaches and unlike my wife, I’m not done with all my shopping. Hadley, my two year old, found some presents the other day and prompty opened them. “Look mommy! Ants!” (It was an ant farm.)

  • When Nulls Aren’t Nasty - There has been an active discussion on TDD Yahoo Group about null parameters and exceptions and stuff. It made me remember this post from a few weeks ago by Michael Feathers.
  • DropMyRights - A little tool (and an article) that you can use to keep yourself safer if you absolutely, positively have to run as an administrator.
  • iOpener - Suppose you are an iTunes user and want to listen to your music on your non-iPod MP3 player this little tool will strip the iTunes file of its encryption and then you can use iTunes to convert it in place to an MP3. Interestingly it is written in C# and installs the source if you’re curious. Now if only I could figure out how to play encrypted WMA files on my iPod, I would have it all.
  • Metaphoric Questioning - Martin Fowler talks about how metaphors are good and bad when talking about developing software. “Comparing to another activity is useful if it helps you formulate questions, it’s dangerous when you use it to justify answers.”
  • Madness and Genius&nbsp_place_holder;- New Scientist interviews John Nash. In it Nash says, “But I think there is an element of choice. A person doesn’t pass into insanity when their situations are good.” Interesting [via Boing Boing]
  • Richard Stallman Answering Machine Message - If you get three people to donate to the FSF, Stallman will record a custom message for you. But then you have to publish all your messages to the internet, right?&nbsp_place_holder;&nbsp_place_holder;[via Boing Boing]

Now playing: Incubus - Make Yourself

Blog Updates

My wife was kind enough to give me a couple of hours off from the kids so I decided to do some work on my blog.

I’ve been wanting to do a couple of things for a while now:

  1. Add a CAPTCHA for comment spam control
  2. Add a calendar control
  3. Update the skin this one is boring

Well I got 1 and 2 done, and got a start on 3.

I was afraid that I was going to have to write my own CAPTCHA since the one Scott Hanselman found is for dasBlog and not .TEXT, but I got lucky instead and found this killer little control ready to go. Works like a charm.

Then I went looking for a calendar control. I always liked those, dumb though they are. It didn’t take me long to find one of those either. Scott Willeke wrote a nice one as an ASCX file (no DLL) that works marvelously. If you are viewing this with a browser, then you should see it. I dig it.

As for the skin, I’ve mostly been brainstorming some ideas. Next I will prototype in Photoshop (or something) and eventually I’ll work it into .TEXT. Don’t wait up for it I’m notoriously slow on these kinds of things.

Geek Notes 2004-12-12

We’ve have a couple weeks of straight rain, but yesterday was mostly sunny and it is looking like today could be nice. One can only hope. (Although as my friend Kris Syverstad will remind me I was warned.)

Comment Spam Is Getting Out of Hand

I know other’s have complained about it in the past, but suddenly in the last 3 days, I’m getting assaulted. I check a few times a day and am finding more and more each time. The pace of these bastards is increasing!

I’ve considered disabling comments site wide, but I really don’t want to do that. I’ve thought about adding a CAPTCHA to the comment control. Or maybe posts older than a certain age (say 30 days) should automatically have comments disabled.

You know, since these guys are almost certainly using an engine for this, I wonder if just randomizing the input element’s name would work. Has anyone tried this?

Regardless, I’ve got to do something or I’m gonna end up with nothing BUT comments.

New Google Groups

I assume everyone noticed that Google Groups switched over to their new interface. I like it and dislike it at the same time

  • I like that threads open by default. I don’t like that I don’t see the thread tree anymore.
  • I like that it looks more like Gmail, but I don’t like that you can’t use Gmail keystrokes and that you can’t collapse posts by clicking their headers (as you can in Gmail).
  • I don’t really find any value in all that wasted space on the left side. But I also don’t use Google Groups to subscribe or post, so maybe this is for those people. I should be able to collapse it.

Also, you can’t browse the newsgroup heirarchy from a post anymore. For example, I used to search for something, say, C# related. The I could click one of the newsgroup names from a specific post (e.g. microsoft.public.dotnet.languages.csharp). Then from the group’s main page, I could browse up and down the tree by clicking the parts of the name (e.g. clicking the word dotnet allowed me to browse up to microsoft.public.dotnet).

By the way, event though it is on a new URL (http://groups-beta.google.com), you can’t actually use the old one (http://groups.google.com) to get around these deficiencies. As soon as you do a search in the old, you end up on the new search results page.

All in all, I give it a C+. Needs improvement.

Geek Notes 2004-12-10

The whole family is sick. Ugh. Nothing worse than having the kids and the wife sick at the same time.