Protest

Students Protest Campus-wide Ban Thank you Zach. It’s too bad that the issue is being made to be first amendment rights. I’d really love o’colly focus on the real causes of cancer, the sun and cell phones. We students are being bombarded by radiation from all sides and all the administration wants to do is eliminate the tiny wisps of death-vapor from cigarettes? How about eliminating the carbon monoxide spewing petroleum engines from the student body’s common property? Oh, right. Because, like all administrative bodies, it’s only out to excersise its power. Flex a muscle, do some strength training, hit on the cute personal trainer, then give the mathletes wedgies. All in a day’s responsibilities as ivory tower academic administrators. Shoot, why doesn’t anyone tell me when I slip into hyperbole mode?

Broken Windows

Check out some pop economics and learn about broken window theory. Then check out Michael Bates’ comments on immigration in Tulsa. Then maybe pop over to the pragmatic programmers comments on software entropy. Then get right back, ya here?

I have lost sleep at night deciding between a future of law versus software. While they might sound totally different, I think of them both as building rule systems to encourage progress. Software is all about automating processes, easing interaction, and protecting resources. Sound a bit like law to you?

But if we have to use automation that encumbers us more than disuse, chafing will ensue. If such easy interaction makes us more distracted and less able to affect our audience, or hear constructive criticism, we might as well cover our ears and shout, “LALALALALALALALA.” And if you waste resources protecting the stuff of others, you might prefer anarchy. The system has to be valuable or it is worthless. Even if this system is worthwhile but you think it is not, people will spend time, money, and words just to get rid of it.

I appreciate our cops following the letter of the law, and the spirit likewise, but if the spirit and the letter suck, please just cut out that part of the system.

NVarchar Oddness

I was wondering what the difference between varchar and nvarchar sql types, when I ran across a brief by guyS. I was slightly confused by such wierdness, so I did investigate.For future reference, you should be aware: SQL Server nvarchar data is UCS-2. That is Unicode but not UTF-8, the sort that acts just like eight bit ASCII when the high bit is 0. Otherwise it may map to any plane in unicode by gaining extra bytes to store itself. It’s also not UTF-16, the sort that automatically takes sixteen bits to store the lowest plane of unicode, and scales similarly to handle all the rest. This is similar but different.UCS-2 is the home planet of UTF-16, where everthing is two bytes. Instead of allowing sixteen planes for data, you get plane 0. That is all. Everything is two bytes or not supported.

Selenium Testing

If you have ever had to do QA on your product, you can relate to the nagging sense of dread whenever a manager walks past your door those weeks. Or you hear the customer, who speaks loud enough the office can all hear, explaining their latest error on speakerphone.

And unless you are brilliant, you’ve even had a problem in the second round of testing that worked in the first place.

Or perhaps, you are a test driven developer, but every so often the browser just does not want to care that your unit tests all pass.

If this is you, investigate selenium. Or hang around a while for a proper series of mini tutorials

Embrace your identity

If anyone knows you by a web address, than you’ve got a web identity. And all around today’s web we can find interesting distributed services. So you need a way to tie your web identity to the services you need and use. That is what Yadis does.

Posted by me in February 02006.

The service you need is authentication. Really. Because you need amazon to authenticate you to show your wish list. Your bank needs to authenticate you to let you transfer funds. Hotmail needs to authenticate you to show you targeted ads. Or whatever.

Yadis is what makes OpenID 2 nifty. With it, your new web identity can authenticate with OpenID, or Lid, or Dix. In theory, you could extend your identity to support SAML, or some other authentication protocol you happen to like. I hear that Microsoft is even working on CardSpace integration. No, I don’t know more than a google would provide.

Why do you want authentication? Because it means that you don’t have to remember a username and password for any OpenID suporting sites. Instead of typing in a username and password for jyte, you simply enter your OpenID and it redirects you to your identity provider. Then you type in a password, or in the case of vidoop, select the images of the categories you’ve chosen. When your identity provider is confident you are who you say you are, it redirects you back to jyte. And jyte recognizes you are http://josephholsten.com (or whoever you are today).

Embrace your avatar

I registered for a web app last week. It imported most of my profile from OpenID simple registration. But I want an avatar. If you’ve used myspace, then you get the idea of a profile picture. If you’ve posted on a site supporting gravatars, you know how nifty it is to get that little picture next to your post. I want this nifty feature as a yadis (nee xrds-simple) service with my OpenId. That means we have to invent something.

Here goes:

<Service priority="30">
  <Type>http://josephholsten.com/avatar/1.0</Type>
  <URI>http://en.gravatar.com/userimage/529392/71f60655008051cefc0474c09dac3289</URI>
</Service>

What is it? A yadis document specifying my avatar URI. Along with it might lie LID, OAuth, or OpenID service descriptions. The type element is just an example right now, I’ll be needing a real service descriptor URI before this is a standard. But the URI element is interesting. That’s my gravatar! Or rather, it’s a URL for a real live image somewhere on the internet. For the geeks out there, we should assume that the URL responds with the appropriate mime type. Even better, it should convert into the appropriate mime type that is requested of it, REST style. But if places like jyte like this, you won’t have to upload images to every OpenID supporting site out there, it’ll just figure it out.

I have considered that simple registration extensions might provide this role. The problem lies with updating information. I change my avatar often enough to reflect my current appearence. Simple Registration really should apply just to the one time act of registering at an OpenID relying party. This is not a one time sort of use case. Thus the new service type.

Some problems are unresolved. Gravatar, the gold standard for globally recognized avatars, supports multiple image sizes and filtering by appropriateness. This could be solved by having multiple services in your XRDS, with each service providing an optional size and appropriatness rating. Alternatively, the service URI could support HTTP GET parameters to specify those attributes. While both reasonable for Every Use Case, I feel that Usually, it is best left as the Relying Party’s problem. Or rather, You Aren’t Going To Need It.

Every Day, You Say?

I promise that for the next month, I will not have an unusual number of rhyming titles. But titles there will be!

I stated this blog back when google first took a liking of it. Life has changed a bit since then. I intend to occasionally note the interesting changes, but more often mention interesting problems.

I am glad that you are so foolish as to read my archives.

furl you man!

oh hey, i forgot to mention that i have stopped using furl. there is nothing wrong with furl, but i found a complete replacement which has additional features. this replacement is absolutely del.icio.us.

there are really very few features. obviously it can save a url, with a title and description. instead of folders for organization, it has tags like gmail. user collections are openly available, mine is at del.icio.us/pantosys. user collections filtered by tag are available, for instance del.icio.us/pantosys/comic. a collection of all links with the same tag are available like this del.icio.us/tag/comic. the most popular links are available at del.icio.us/popular. finally, everything is available in both rss and html representations. not quite as respresentational state transfer would have it, but hey it is a start. and for firefox users, that is a hell of a lot of live boookmarks.

it is late and early.

Page 9 of 10