Friday, May 30, 2003

Nanog and Pluripotency

As part of my occasional “science in the morning” postings:

The Washington Post had this
this morning, describing an exciting discovery in the field of cell biology.
Originally published in this
in the journal Cell, it
seems that scientists have discovered a gene that plays a crucial role in letting
mouse stem cells develop into any other cell. The property to develop into skin, liver,
brain, nerve, or whatever other type of cells is called pluripotency,
and understanding how it works may be crucial to developing new treatments for everything
from paralysis to old age.

The gene has been dubbed nanog,
a reference to the mythical Celtic fairy land of Tir Nan Og, a land of eternal youth.
If scientists are successful in the logical next step of the experiments – being
able to create human stem cells from any cell in the body – that name could
be prophetic: this technology may have the potential to lengthen the human lifespan
to near-immortality.

Wednesday, May 28, 2003

Media Futures

Tim Bray has an interesting piece that he summarizes as

            Journalism sucks. But there's hope.

I’ve had similar experiences to Tim’s with technical journalists: in all the times I’ve been interviewed, I’ve rarely felt that the interviewer was capable of expressing what I was saying technically. Usually, I get misquoted, a few times to the point of actually reversing what I meant.

What Tim is talking about is the fact that media companies – like any company – are beholden to those that write the checks, and that ain’t the readers, it’s the advertisers. The upcoming FCC decision to drop the rules on media ownership is clearly going to make this worse, not better. For example, if you think that radio is more diverse now than it was twenty years ago, raise your hand. Anyone?

Here’s a brief FAQ that talks about the proposed FCC rules change.

Monday, May 26, 2003

Half-Life 2: Whoa

A few people pointed to this
. It’s a (roughly) 500MB video of what appears to be a demonstration
of what’s coming in Half-Life 2. It took me about four hours to download the
sucker, but…wow. And…wow. I want this game yesterday.  

Culture Clash

Like many programmers, I subscribe to a handful of fairly active mailing
lists. After a while, you start to recognize names, since something like 90% of the
traffic on a list comes from the same 5% of the membership. Read a little longer,
and you can even sort of get to know people you’ve never met in person.

One guy I recognize from various lists is Thomas Tomiczek. He clearly
has substantial technical knowledge, but I’d always written him off as, well,
a jerk. He tends to write things like this:

Well, frankly - a very
ignorant attitude.

I myself generally try never to use words like “ignorant”
when replying to people in a public forum, and seeing these types of comments from
Thomas over and over again really colored my opinion of him, to the point where I
found myself reluctant to contribute when he had
questions. A recent conversation I had put the whole thing into a different light.

My wife started her career at a company that has a very high percentage
of international employees. Many of these people are now in her (and by extension,
my) social circle. It’s a rare gathering where I’m not the
only white American male present. Unsurprisingly, the conversation occasionally turns
to the differences between American culture and others.

One comment in particular caught my attention. A French friend of mine
was talking about how it was very difficult to get accustomed to American workplace
attitudes towards criticism. In his experience, Americans are unabashed cheerleaders
of each other. This contrasted sharply with his experience in France. For example,
in France his manager would have no hesitation over calling him on even relatively
small errors. Even grudging compliments were high praise. In contrast, he was taken
aback when – in the US – he performed some routine task adequately and
got a hearty “Good job!” from his supervisor.

From Thomas’s emails, I can tell that English isn’t his
first language. So it makes me view his emails in a new light: rather than being unnecessarily
harsh, I can see where he might view them as being simply unabashedly honest.

I don’t have to tell anyone reading this that email is an inexact
medium for expressing information with intent. Even the emoticon-laden messages that
I find myself occasionally embarrassed to be the author of can only convey so much
out-of-band information.

I’m not sure I care to actually make a point out of these observations,
but having a blog means never having to say you’re sorry. <emoticon mode="gratiuitous">:)</emoticon>

Friday, May 23, 2003

Mail Enable

After getting pretty well fed up with the extreme email latency I’ve
been dealing with on and off this week (imagine trying to sync source code with someone
by email when it takes twenty hours to arrive), I decided to set up my own email server.
I didn’t have too much in mind other than that it should be free. Fortunately,
I’m already using to get a free
DNS name, and they have the ability to add MX records, so it was really just a matter
of installing an SMTP/POP3 server.

My first stop was to try the stuff that’s built into the OS,
of course. Windows 2003 now comes with both SMTP and POP3
servers. But for whatever reason, I couldn’t get them working. I’m (fairly)
sure they do work, but I couldn’t
figure out how to do it. Oh well – I knew there are free programs out there,
so I went off in search of something decent.

My next stop was Mercury. It looked
like a nice product, and it installed easily. But it appears to run as a standalone
app, not as a service. If there’s a toggle somewhere that gets it to run as
a service, I couldn’t find it. Then again, I didn’t look that long.

My final selection was Mail Enable.
Bingo! Runs as a service, has a really easy to understand user interface, supports
an unlimited number of domains and emails, and basically has just enough features
to fit what I want to use it for. Plus, the latest update was like three weeks ago,
which is always good to see, as it indicates someone is still working on the thing.
It even has mailing list capabilities. Very nice.

One of the ways I plan to use it is to make up addresses to hand out
to websites. Because you can define a catch-all account that all mail goes to, what
I can do is make up an account like “” and hand
that out to only to Amazon. I’ll still get the mail, but if I start getting
unsolicited email from other people on that address, I’ll know where it came

Anyway, so far I like it. We’ll see what happens after I’ve
had it running for a few weeks. If anyone has any experience with the product that
they’d like to share, comments are, of course, welcome.

Thursday, May 22, 2003

The Biggest Issue We're Not Hearing About

There has been remarkably little
media discussion about the upcoming FCC decision, which looks set to pave the way
for further homogenization of the media market. Pretty much everyone except giant
media companies appears to think this is a bad idea. Especially interesting is this
opinion piece
on the NY Times website (signup required, but it’s free and
worth it, IMO). My friend Jeff pointed it out to me. His favorite quote (and mine):

The concentration of power — political,
corporate, media, cultural — should be anathema to conservatives. The diffusion
of power through local control, thereby encouraging individual participation, is the
essence of federalism and the greatest expression of democracy.

In other words: there’s reason for both Democrats and Republicans
to hate this idea.  

Matrix Sequel Has Hacker Cred

This link has
an amusing and interesting discussion of how the authors of  “The Matrix
Reloaded” made use of a real-life cracker tool in the movie. Gotta love touches
like this.  

A Security Haiku

Quicken was broken
When running as non-admin
Now it’s working again

So apparently whatever stupid, administrative-privilege-needing thing Quicken was doing was a startup issue, because now that I’ve used it a few times and configured everything, I’ve been able to go back to my non-admin ways. I need to thank all the people that commented helpfully, in particular:

·        Raj Chaudhuri for pointing me (and a few others, it seems) to the Windows Application Verifier – that alone has made this detour worthwhile.

·        “Aeb” for reminding me of what I should have remembered: good ol’ runas. My only excuse is that I was so annoyed at things not working I didn’t stop long enough to think of this.

·        Samer Ibrahim for wailing and gnashing his teeth about my deviation from the one true path. :)

It’s been very tempting to switch back to running as admin before this. I thought when I gave it up this time it would be for good. But it wasn’t as hard to give up the extra privs this time as it was to start – I guess I’m getting used to it.  

Tuesday, May 20, 2003

Nice Tool

Raj Chaudhuri posted a comment trying to help me with my “I can’t run as non-admin because Quicken won’t let me” problem. He pointed me to the Windows Application Verifier. I downloaded it, and it looks like it has some pretty nice features. For example, it caught that Quicken is trying to open HKLM\Software\Intuit\QAgent\Guide with KEY_ALL_ACCESS, which it clearly shouldn’t be doing. In fact the tool listed about a hundred things that Quicken shouldn’t be doing – this looks like a great product for identifying some of the things that your app is doing incorrectly. I only ran the security-related checks, but there are checks for memory usage, locks, stack allocation, and a bunch of other things.

Thanks for the link, Raj!  

Monday, May 19, 2003

Email and Weblogs

I see Greg has announced that
NewsGator 1.2 will be available tomorrow. Cool. I love NewsGator because I live in
Outlook. His latest
suggests that support for IBlogExtension is
now complete, which means I can compose posts in Outlook as well. Very nifty.

Here’s what Greg has to say:

With most news aggregators available today,
you can read weblog posts.

NewsGator 1.1
offers excellent integration with Outlook; and given a weblog post, you can forward
it via email.

Tomorrow, May 20, 2003, everything changes.

NewsGator 1.2. Available Tuesday.

[Greg Reinacker's

Sunday, May 18, 2003

Off the NonAdmin Wagon

been a lot of talk about developers not running as admin. I’ve been successfully
doing it for a few months now. Tonight I hit my first real roadblock: Quicken.

So far, I have
been unable to get Quicken running as non-admin. Or rather, I have been unable to
get it running correctly. It starts just fine, but then starts to act all screwy,
like showing me the online registration dialog, but never coming back once I hit “Next”.

Needless to say,
this doesn’t exactly fill me with confidence.

Anyway, managing
my finances currently outweighs my desire to join this (IMO) important effort to raise
developer consciousness about security issues. Especially because my new wife and
I are trying to merge our finances, and that’s a task in and of itself without
throwing in wrestling with poorly designed software.

Intuit: shame
on you for writing such an important piece of software (it manages what is quite literally
the most important data on any of my computers) and not getting this right. It’s
too bad that using MS Money isn’t an option for us or I’d switch based
on this alone.

I’m hoping
that once I get Quicken all set up and happy, and it’s done writing to HKLM
or whatever stupid thing it’s doing, that I can switch back to being non-admin.
But for now, I’m off the wagon.

Saturday, May 17, 2003

Intel Article Now Available

I had asked my wife (then girlfriend) as we were driving all my possessions across the country en route to Washington D.C.: What would it look like if an asteroid slammed into the Earth? My idea was to write a visual simulation of this. From there I started diving into Direct3D, writing a generic simulation engine that would bounce notional particles off of one another and model gravitational attraction. But since it was just a side project I had going I didn't take it too far.

A month or two later, Chris Sells asked me if I'd be interested in writing an article for the Intel website, as part of a series he was editing. The idea was to demonstrate how big-ass CPUs were still important in a web service world. I thought, "Here's a great chance to get paid to finish working on that idea." Because if there are two things that can suck CPU, they are simulations and 3D graphics.

Chris had given me until December to finish the article, which I did. It was fairly challenging, as I had to learn a lot about Direct3D in the process. I turned in the article, submitted my invoice, and waited for it to show up on their site.

And waited. And waited.

Five months later, after emailing Intel roughly every other week, we were finally able to cut through all the red tape. A check is supposedly in the mail. And today I went to see if the article is there. It is! Here.The code is here.

And I will not be writing for Intel again any time soon.

Thursday, May 15, 2003

DevelopMentor Internal &amp;quot;Run as Non-Admin&amp;quot; Debate

I've used my brand-spanking new content creation system to post an article here. Here's what it's about:

One of the great things about working at DevelopMentor is access to the internal mailing lists. Being able to send a message off to that particular group of smart people has helped me more than once.

As you might expect, instructors at DM are not just bright people, but highly opinionated. So in addition to just answering each other's questions on the internal lists, we also frequently (continuously might be more accurate, actually) debate the merits of issues both technological and social.

One recent debate revolved around whether or not developers should run as administrator. This is something that Keith Brown has been advocating. Since there's been a lot of public discussion around this issue lately on mailing lists and weblogs, I thought it would be interesting to post the discussion here, publicly, to both show people both sides of the argument and to give them a glimpse into the inside of DM.

Long-Form Writing Infrastructure In Place

BlogX is great for posting little blurbs that occur to me. But it doesn't have a good facility for writing long-form pieces, like the Direct3D tutorial series I've been working on. So I set out to write one myself. I wanted it to be based on XSLT so I could easily give everything a consistent look and feel (plus add navigation), but still allow me to write my articles using Word.

Version 0.5 is now done. Accordingly, I've added a link on the blog to the new writing page. More content to follow. I have a whole bunch of ideas for features I'd like to add (e.g. an RSS feed for the articles separate from this blog, last-modified dates in the articles themselves, etc.), but for now I'm pretty happy. If anyone is dying for a copy of the code, I can provide it, but it's still pretty rough.

How to Ask Questions the Smart Way

Hugh Brown posted this
 over on the WinTech Off-Topic Mailing List recently. I've seen it before,
but it's one of my all-time favorites. Following the advice contained in this gem
will greatly increase your chances of getting a good answer on mailing
lists, newsgroups, and even in conversations. I know I've been guilty of violating
these principles a time or two, and it usually ends up with me sending a message that
starts, "D'oh!"

Wednesday, May 14, 2003

The Non-Admin Lifestyle Saga Continues

Brad has now jumped on the non-admin bandwagon - which I think is pretty cool of him considering his publically stated reservations about the process. He's also blogging his experiences with various apps - what works, what doesn't. I did something similar a while back (see Craig's AppList). The list is slightly out of date now, but since I switched from Radio, I don't have a good way to generate long-form content, and rather than edit the list in-place, I'd rather spend my time writing my content generation system.

In the meantime, let me share something I learned along these lines. Here's a recent post I made to the WinTech Off-Topic Mailing List:

I actually dug around working on WinKey some more (my AppList is a bit out of date) and it is indeed doing something funky. I think - but didn't nail it down - that it's dynamically registering CLSIDs at runtime. But here's the thing: it only does it when you pop up the UI. The bit that actually runs things works fine.

So what you wind up having to do is to run WinKey as admin, set up all your shortcuts, then export HKEY_CURRENT_USER\Software\Copernic Technologies\WinKey\Shortcuts and re-import it under your non-admin account.

Monday, May 12, 2003

Patterns of Belief

Human beings are terrible at making good decisions. But this
 offers an interesting theory on the evolutionary basis for this behavior.
As it applies to the software industry, of course.

Sunday, May 11, 2003

RSS Wiki

Tommy Williams has started an RSS Profile
Wiki here. Most of the discussion appears
to be going on on Sam's site at the moment, but - clearly - capturing it in a more
structured way wouldn't be a bad thing. I think there's room for both modes.

Update: Whoops! It was Mark Nottingham, not Tommy Williams, whose work the Wiki is. Thanks, Tommy: proper attribution and all that.

Can You Feel the Web Shifting?

Don proposes a
profile for RSS. Discussion ensues over at Sam's
, here and here.

I just love watching the process evolve in real time - that's the greatest thing about
blogs, in my opinion.

Saturday, May 10, 2003

Generics in CLR v.Next

Don loves to make
a splash. He's a good guy, so I'll help indulge him by encouraging everyone to check
out his blog. He just blogged this
interesting nugget
. It's a short description of the upcoming support for generics
(aka templates) in the CLR. It looks pretty cool. And although I'm a huge fan of staying
away from code that's too clever for its own good (which is why I was never fond of
C++ templates), I have to admit there have been a few times lately when having generics
would have been nice.

Thursday, May 8, 2003

I Can't Believe I Didn't Know It Either

Scott Hanselman has this
for users of PowerPoint:

When a slide is selected in PowerPoint (either in Normal or Slide
Sorter), while F5 will start the slide show at the FIRST slide, pressing
Shift-F5 will start the slide show at the CURRENTLY SELECTED slide

Oh. My. God. I know this isn't a big deal for some of you, but if you use PowerPoint
as much as most DM instructors do...

This is like finding out that your car has a "hover" button under the dashboard.

Thanks to John
 for the link.

E-Paper Getting Closer

I so want this to
be a reality. Having owned a PocketPC for over a year now, I've realized that it's
a read-mostly device. An actualy paper notepad is still better for carrying to meetings
and recording ideas. ePaper may or may not allow writing, but if all I want is to
read stuff, why wouldn't I want this form factor instead?

Wednesday, May 7, 2003

PASWA - Weird Acronym, Cool Spec

I just got done reading the Proposed
Infoset Addendum to SOAP Messages with Attachments
(PASWA). It's cool. Cool in
that way where you look at it and go, "Yeah, that's pretty simple. I could have thought
of that." Only you know that you probably would have made a proper muddle of it instead.

My New Gig

Last week I started a new consulting engagement at Microsoft. I was hoping to be able
to tell you all about it, but first I had to find out what it was okay for me to say.
Well, yesterday I got the answer to that question, so here's what I can tell you about
the project:

I'm doing work for MSDN.

And that, unfortunately, is all I'm able to disclose. But it's a cool project, so
I don't mind too much. And who knows? Maybe as time goes by I'll be able to say more.

Tuesday, May 6, 2003

Validation == Clue

Sam points to a great article
by Mark on validation
as an indicator of cluefulness
. Quite apart from the issue of mailing list ettiquette
(i.e. please try to at least look like you tried to find the answer before
asking us), I think that as I move more into the world of XML, HTML, and XHTML, I'll
find myself relying on this type of validation more and more. Good stuff.

Any Decent Free Blog Sites?

I was talking to my brother about blogs the other night. He didn't get what the big deal was. I told him I used to think the same way until I started doing it and realized the huge advantage the one-to-many form has over many-to-many styles like mailing lists. I said I'd get him started with one.

I run my own blog, of course, but Kevin doesn't have access to a site like that I do, nor the knowledge to set up something like BlogX. He is fairly computer-saavy, but since he's thinking about getting some of his collegues (he's a forensic chemist for a sheriff's department in the LA area) into blogging, I thought we'd try to find some site where everything is all set up for you.

My first stop was - it's a big name and I figured they'd be a reasonable choice. Unfortunately, I discovered that they don't have support for automatic RSS generation. Which is half the point, in my opinion. So I went out searching for other free services that do support it. I got dozens of hits on Google, but couldn't find what I was looking for after about half an hour of plowing through them.

So if you know of a good place for my brother to set up a non-computer-related blog (that includes RSS), let me know by leaving a comment. Thanks!

Monday, May 5, 2003

Nifty GPS Software

I've had a GPS for years - it's a fun toy even though I don't use it much any more.

One of the great things I like to do is to hook it up to my computer. This has several
uses. For example, I can mount the GPS on my mountain bike, take a ride, and later
download the coordinates as a text file. Of course, a series of numeric latitudes
and longitudes isn't particularly illuminating, but it's a matter of minutes to pull
it into Excel, and from there into MapPoint.

If you've never used MapPoint before, you're missing out. It's part of an MSDN subscription
(can't remember what level), so it's free if you're already paying for that. It's
basically like the online version of MapPoint, but local, so performance is way better.
And it goes well beyond the simple route plotting capabilities of the online version
in terms of number of stops, choosing which routes to follow (e.g. avoid toll roads),
and other things. You can even import information into it from Excel, allowing you
do to things like plot a GPS track on a map.

There's direct GPS integration, too. MapPoint will display your current position on
the map if you have a GPS connected that can do NMEA (most of them). I've used this
from time to time to figure out where I was in a strange city. But since it requires
looking at the laptop screen, it's really not appropriate for use from the road.

Well, the other day someone mentioned Delorme
Street Atlas
. Apparently, this thing works much like MapPoint, but it will actually
speak directions to you! "Turn left ahead." That sort of thing. According to their
website, you can even talk to it. As in, "Where
am I?" And it'll answer. I haven't tried it, but I've heard from at least one satisfied

Very cool - I want one.

Sunday, May 4, 2003

Setting up a &amp;quot;Network Place&amp;quot; with IIS6

I don't know if you've ever done this or not, but if you go into "My Network Places"
in an explorer instance, you can add a new "Network Place". This allows you to do
the equivalent of mapping a network drive, but over HTTP. I've found this useful in
the past for transferring really large files that won't make it through the email
system. All someone has to to is map to my server this way and then drag and drop
the file in explorer - voila! It transfers the darn thing.

This was particularly useful at home last week, since I needed to get some special
files for my new gig (more on this when I find out how much I can say about it). Since
I have cable, with its large downstream bandwidth, having someone push the files to
me made sense.

It wasn't easy, though. You might have seen over on Brad's
 that I was having some issues getting it set up. Well, here's the whole
sequence I had to go through:

0) Create a new virtual directory. Make sure it has "write"
permissions. Make sure the NETWORK SERVICE account has write permission in the physical
directory. (NETWORK SERVICE is the IIS6 equivalent of IUSR_MachineName, which - although
still present - is not used.)

1) Enable WebDAV. Open up the IIS admin tool and surf to the "Web
Service Extensions" folder. "Allow" WebDAV.

2) Enable FrontPage Extensions. Same place - "Allow" FrontPage
Server Extensions. You'll also need to do a "Configure Server Extensions" on the virtual
directory that you created in step 0. This will pop open a web page that lets you
create the new FP subweb. Keep it open when you're done.

3) Set up a FrontPage user. Using the same FrontPage admin interface,
set up a FrontPage user and give them "author" permission.

The client should now be able to do a "add network place". Horribly obscure steps
to get it set up, if you ask me, but very convenient once you get it going.

Saturday, May 3, 2003

What Kind of Thinker Am I?

A link from Brad points
me to the "What Kind
of Thinker Are You?
" quiz. Apparently, I'm an Intrapersonal Thinker. Here's the

Intrapersonal thinkers:

  • Spend a lot of time thinking about and trying to understand themselves

  • Reflect on their thoughts and moods, and work to improve them

  • You understand how your behaviour affects your relationships with others

Other Intrapersonal thinkers include

Sigmund Freud, Gandhi, Grahame Greene

Careers which suit Intrapersonal Thinkers include

Psychologist, Teacher, Pilot, Child care worker, Explorer, Drama therapist

I'm not sure this is totally right. I would hate being a Drama therapist.

Friday, May 2, 2003

OneNote Rocks

So I've been playing around with the Beta of Microsoft OneNote (part of Office 2003) this
evening, and I have to say I really like it. The shortcut keys seem very natural (e.g.
Ctrl-T to jump to the title) and the organization just makes sense to me. I haven't
been able to find anything yet that I've wanted to do but haven't been able to.

Wait - just thought of there a way to link notes across sections? I'd
like to be able to write a note and then have it show up in several different sections...

Thursday, May 1, 2003

Episode II: A New Beginning

I've been busy reinstalling my machines at home this week (all sorts of fun - I'll tell you about it soon) and decided that I was not going to reinstall Radio. Instead, I'm using BlogX, which isn't perfect either, but I've got the source, and that's very nice.

Anyway, this is my new blog. I'm going to leave everything up on the old site, since I hate it when links disappear. I haven't decided yet if I'm going to pull everything in to this new directory or what, but even if I do I'll leave everything over there, too.

In the meantime, update your subscriptions to my new RSS feed and Watch This Space.