February 2003 Blog Posts
Descriptons Are OPTIONAL.

OK, so it looks like a couple people* in the community are not happy with the new "descriptions" feature. They are of course entitled to their own opinions, but I will NOT be removing this feature.

And nor should you; my argument was for more choice not less so that the reader could choose. Of course publishers have every right to make their content available in any way they see fit.

I have made it 100% optional. In fact, in the admin section, it actually says "OPTIONAL". I am not sure why this has become such an issue. If you don't like a blog using it, don't read it. Will some people stop reading a particular blog if the blogger chooses to use them? Maybe, but I guess it depends on the quality of the blogger.

Well, I've never seen the admin section so I wouldn't know about that. If occasional posts are long enough that it works better to have a description that links to them then that seems reasonable, although in my mind there is a fundamental distinction between these captured by "post" vs. "story" in many systems.

I personally am quite bothered by the, "I will take my ball and go home attitude" if this continues and the assumption that this is some how related to showing ads on the blogs, which is completely ridiculous. If you could always have it "your way", I would have received a pingback or trackback about these posts and not had to hear about it through IM and email. :D

This isn't the way that I would portray the argument and it has nothing to do with showing ads. It's the reality of life in a world where we are so overloaded with information. I have so many competing calls for my attention from closed circulation industry press to magazines, mailing lists, news groups, web sites and blogs that I simply don't have enough time to read everything I'd like to. Full RSS feeds are a way to maximise my reading time and to look at feeds when I wouldn't otherwise have web access.

I appreciate the goal of driving community by having people visit the site to enable them to see and add comments and other links. There's always a dilemma about whether you should add a comment on someone's site or write your own blog entry. I guess pingback and trackback try to work towards solving some of these issues [apologies for not being sophisticated enough to be using either of them ;o)]. I know some people publish RSS feeds for their comments too.

I am frequently tempted to remove comments from my site because I think they have dubious added value. I think that if and when I reach the point where I can record referrers and maybe try to understand these pingback and trackback things that they may disappear.

"As an end-user, I really prefer RSS feeds that have distinct abstracts in their <description> elements rather than just blasting the content in there." [ Don Box]

Yes. I think it really is an end-user preference as Don suggests (okay, I'm being a little disingenuous reading it that way, but...). If I had an RSS aggregator for my Smartphone then I probably would want abstracts then too. I think it depends who, what, and where you are reading.

I have been giving some thought about this recently. I am going to release an optional "short-description" feature tonight that I hope everyone will use for posts longer than a sentence or two. (instead of the full post text appearing in the feed, only the short-description will appear). 

...but I personally want to see the number of page views vs. Rss feed hits even out a little more. Syndirella, Newsgator, etc are all great, but they do take away (just a little) from the community. My hope is people will read a post, make a comment or two, check out the referrals/pingbacks/trackbacks and all of the other links that float around .NET Weblogs.

Sitting back using your favorite aggreator is nice, but you are definetly missing out on the "full community" here. (NOTE: more on this later). [ScottW's ASP.NET WebLog]

I really hope this option will be selectable by the reader rather than the blogger. One of the reasons that I am a fan of RSS based news aggregation is that it gives me the opportunity to read posts without having to visit the individual sites to read what people have written.

Often, I will do an RSS download first thing in the morning and then be able to read the posts later in the day when I might not have Internet connectivity such as on a train or working away from the office.

Of the feeds that I subscribe to, only a small handful have abbreviated feeds that give only an introduction to each post and these are the ones where I only read an occasional article. If all the feeds that I currently subscribe to from dotnetweblogs.com went this way, that would be a whole load of content from a bunch of interesting people that I wouldn't get to read.

Scott Guthrie opens a window on ASP.NET.

It's great to see that Scott Guthrie, Microsoft's ASP.NET lead, haspopped upon the blog radar screen. Back in 2001, for Dr. Dobb's TechNetCast, Scott gave a fascinating and candid talkon the genesis of ASP.NET. [Jon's Radio]

I hadn't heard this before and it is a fascinating listen, even now.

HOW TO: Connect to Microsoft Desktop Engine (Q319930)

Includes how to change MSDE from the default NT authentication to mixed mode authentication either during installation or after installation by tweaking the registry.

Haven't looked at this in any great detail but might be worth returning to:

ASP.NET gives a developer the opportunity to programmatically add controls to a web form using ParentControl.Controls.Add(new Control()); However, these controls are not persisted in any way thus having to be recreated for each subsequent request.

To create a control that behaves like a placeholder but additionally handles recreating dynamic controls on subsequent requests.

Yesterday, I spent some time experimenting with the side-by-side support for COM components within Windows XP. I've uploaded my sample code here.

Windows XP uses .manifest files a bit like .NET uses .config files to describe "assemblies" and to identify where the files containing the implementation of specific versions of COM component are located. This works with .NET applications too and my sample shows how to use the same .NET executable located in two different folders to call private copies of two versions of the same VB6 COM DLL. Incidentally, this means the DLL doesn't have to be registered, which means I can xcopy deploy it and not need admin access.

My original goal was to find out whether it is possible to deploy a .NET assembly as a COM component through interop using the side-by-side support because this would give you xcopy deployment with no registration required. Unfortunately, due to the way interop assemblies are declared in the registry, I'm not sure that this is a possibility.

Hitting Code Complete. A tester -- sitting in their office -- can configure the operating system and hardware they want to use (for example: Windows Server 2000, Advanced Server Edition on a 2 processor hardware configuration with a German language build) as well as the test suite they want to run (for example: all session state tests).  The automation framework with then find a hardware machine that meets the specification selected, reformat and re-image the operating system for the choice selected, and then execute the test suite run.  All pass/fail results can then be viewed by the tester on their own machine with their office (fairly fancy -- we are quire proud of this testing framework). [ScottGu's Blog]


Darren Syzling @ 02/15/2003 06:01 PM. Been running as non admin a couple of months now. The SQL Server service caught me the other day. There's a useful tool in the Win 2000 res kit - SUBINACL.EXE which allows an admin to delegate permissions to manage a service to another user. You should then be able to start/stop the MSSqlserver service manually if required. [Comments]

Thanks, Darren.

Smartphone. .......having the ability to leverage my development skills as well as code I've already written on to the phone is a tremendous plus for me. [The Furrygoat Experience] Well yeah, except that I don't know anyone who does windows development without one or more frameworks (MFC, ATL, Atila, WTL), none of which you get with Smartphone, just raw API's, very 1990's !. [Simon Fell]

Someone has ported a subset of WTL for the Smartphone however.

Windows Update isn't possible when you're not an administrator for fairly obvious reasons when you think about it. It does seem to be possible to run IEXPLORE.EXE from an admin command prompt, however, and to go to the windows update site from there.

Windows Server 2003: The Road To Gold [via Drew's Blog]

Part One: The Early Years
Part Two: Developing Windows

Craig's AppList. I've been taking the plungelately and trying to do development as a non-administrator. It's been...interesting. I'm starting to get used to it now, but what has been most interesting is the list of applications that don't work, or only work with modifications. I've postedthis list, which contains all the apps I've tried to set up so far, and whether or not they run in my new non-admin lifestyle. [CraigBlog]

My experiences have been a little different to Craig's:

  • WinKey
    I started running this the other day after having seen Craig blog about it - I hadn't realised it didn't allow you to update it since I had installed and configured it as an administrator and then just been using it without changing settings since. I'd put this under the "Sort of" category, as long as you've got your settings already defined.
  • WinAmp
    I didn't like WinAmp 3, so I went back to v2.81 long ago and this runs fine so maybe it isn't security related.
  • ActiveSync
    I'm syncing my Smartphone just fine for calendar, contacts, and tasks.
  • UrlRun
    I haven't had any problems with this - seems to work fine.

After a day and a half of running without being an administrator, I've only run into a refreshingly small list of "issues":

  • Had to make the Radio Userland folder writeable which it normally wouldn't be under Program Files.
  • I accidentally removed my admin rights while there was a folder in the recycle bin that needed admin access to remove, so I couldn't empty the recycle bin until I added back admin rights, logged in to empty it, and then removed the rights again.
  • I needed to stop SQL Server to do a backup but the SQL Service Manager applet sitting in my tray now just gives permission denied. Running sqlmngr from the Admin command prompt only activated the instance already running as me, so I had to exit that and then start another. Of course, I could have done this through a couple of carefully crafted "net stop" commands, but that would have meant finding the precise service names.

So far so good, then. What is interesting is that this thinking is already affecting the projects I'm working on - yesterday, we made some decisions about how and where to store user data that was in some way motivated by this approach. In general, the best thing now is that if there is any doubt about what permissions basic users have, I can just try it and see if I'm allowed.

Developer Lifestyle

If you're a Windows programmer today, then depending on your age, most likely you got your start programming one of Microsoft's early platforms, DOS, 16-bit Windows, or Windows 9x. ... Programmers quickly learned that Windows was a single-user system, and security wasn't part of the picture.


It's obvious that individual programmers need to learn how security works on this platform. I believe that a great way to start is to run from day to day as a normal, non-privileged user.

Enough other people have been making this move, especially recently, so I'm going to give it a go and then find out what breaks.

RSS. Greg has some thoughts on GUIDs in RSS

Open Source IE Web Controls.

Microsoft recently released the IE Web Controls open source, which I think was a very cool move. I can't wait to start adding some new functionality to the controls and fixing some of the bugs. [.Avery Blog] [via ScottW's ASP.NET WebLog]

Behind The Scenes

Once we got the computer on the net, we triedwww.google.com, which redirected immediately towww.google.ca. Cool! They think we're in Canada!

[Joel on Software]

The Log Parser 2.0 tool lets you run SQL-like queries on log files of almost any format, and then display the results in a file format of your choice, in a SQL database, or on a screen. Log Parser is available as a command-line tool and as a set of scriptable Component Object Model (COM) objects.

.NET Application Updater Component

This article talks about an approach to building .NET client applications that are able to automatically update themselves.

This component is not a Microsoft product. It is intended as a sample to get you started and as such the source is also included with this whitepaper. However, it is worth mentioning that this component has gotten a fair amount of real world use already. It has been used internally in Microsoft to enable auto-updatability in the .NET Terrarium game.

Greg Reinacker @ 01/31/2003 04:29 PM. What do you think of the http://www.newsgator.com/referrers?usersite=www.rassoc.com/gregr/weblog/ idea, similar to what Aggie and Radio do?

I guess I have mixed feelings about this: my first thought is that it is still appealing to the aggregator author's desire to get people to their site. That said, however, it does distinguish between real referrers and these pseudo-referrer link-backs. If I were to look in my logs and discover that I was getting 24 hits each day for my RSS feed from a particular site that didn't appear to link to me, this might be confusing.

I think this means that the referrer page ought to be one that says something to the effect of "you're here because I read your feed and you're checking your referrers". With this in mind, I think I am in favour because it relieves the reader from having to create such a page.

So, the options appear (to me) to be one of:

  • Don't send a referrer
  • Send a referrer of a custom page that explains why it is being used as a referrer
  • Send an aggregator specific page only when the URL includes a link to the reader