Category Archives: Random Thoughts

Stuff that wafted through my brain

Curmudgeon, Revisited

A while back, I mentioned the value of keeping an IT Curmudgeon around the office. Due to recent events, I must now amend that post.

At the time I wrote that, I was working in an office with one and only one such person and immediate evidence matched my past experience.  However, I have now spent two months working in an environment where there were two such people.  Specifically, these two were on opposite sides of me and their preferred method of communication was to yell to each other loud enough to cover the 15 feet that separated them.  You are probably starting to feel my pain now.

The last two months have been spent listening to these two complain about how standards are not what they used to be, Specs are not properly divided in accordance with guidelines from 1985.  The voluminous merits of fixed-width flat files.  Everything in .Net is so much more difficult than it was in COBOL.  Of course, those mainframes and mini’s were laid out so nicely, making it easy to find programs.  Naturally, text editing was far superior on a mini as well.  Oh, and do you remember when the AS400 came out??? Now THERE was a machine that shook the world … and so on … for two months … 8 to 10 hours per day.

If your office is equipped with two or more such people, do not place them in close proximity to one another.  Doing so afflicts all people within earshot with IT Reminiscence Aural Syndrome that cripples morale, creativity and productivity.  ITRAS also can damage hearing as those in nearby cubicles have been known to increase the volume on their IPODs to unsafe levels in the hope of blocking out the non-stop stream of I.T. Tall Tales and Legends.

Make sure that any and all curmudgeons in your organization are separated by as many layers of acoustic insulation as is available.  If they are not allowed to communicate audibly then their overall damage is diminished greatly.   If you won’t separate them for yourself then do it for the others around them.


There is a trend out there where people are taking perfectly good machines running Windows Vista and then uninstalling it in order to install the venerable Windows XP.  This process hasn't had a name up until now but I think I have come up with a good term for it : Devistafication. 

Here is how I would define it:

tr.v. de-vis'ta-fied, de-vis'ta-fy-ing, de-vis'ta-fies
The act of removing Windows Vista from a computer and then installing a different operating system, such as Windows XP.

de-vis'ta-fi-ca-tion  n
de-vis'ta-fi-er  n

I hope this helps to ease the language burden often associated with this task 🙂

The Battle for Nothing… or is it Null?

I have worked in numerous programming languages and the one thing that I find most irritating is that every language feels the need to reinvent Nothing – literally – and then applies their own rules to it.

In VB, Nothing is Nothing.  In C# and JavaScript, Nothing is null.  Ruby's Nothing is nilNothing can also be Null or Empty or undefined, although it can sometimes be NaN, which is not necessarily Empty or Null.  Something that is undefined is sometimes null and sometimes not but something that is null is rarely undefined.

Throw in the mix how badly empty strings are handled where "" is not Empty or null, but is an EmptyString and could be NaN.  It could also be a NullString, which is still not a null or even a Null and certainly not an Empty or undefined.

Nothing/Null/null/nul/nil is a basic part of any programming language.  Is there any chance that we could pick one term, like Null (or null even), and use it across languages?

It's just a word, what is the big deal?  The word itself is trivial but the need to use a new term for something so basic is the root of my aggravation.  Each language feels that they have to use their own terms to be "cool", yet are just rebranding well established concepts without adding functionality.  That isn't innovation, that's marketing.  It's "New and Improved" without being either.

All it accomplishes is that it adds one more tiny step in the learning curve for that language and slows adoption.  Further, assuming that the "cool" factor won out in other areas, then there will be hundreds of other such tiny steps as well, all without any added benefit.

Tell you what, I'm going to create my own programming language called Presidents.Net, where all of my core data types are named after past Presidents.

private Jefferson ProcessRequest(Washington pRefID, Jackson pAmount)
   Lincoln User = getUserID(pRefID);
   Eisenhower AccountNumber = getAccount(User);
   return applyTransaction(AccountNumber, pAmount);

What is the value added?  Nil, or … null … or … Polk.

The Value of an IT Curmudgeon

They have stories from the dawn of computing, about the problems with tape backup, data layouts using bitmasking to save single bytes wherever possible and can regale you with tales of horror about the era of punchcards.  While they can expound for hours on middling details of tech found only in museums, they are surprisingly quiet on the merits of any recent technologies.  One could say that their value is historical but I think they serve a far greater purpose.

They are warning posts, put in place to remind you about the perils of complacency.  About what will happen to you if you let your skills lapse or get too comfortable with any one particular technology.  This field moves too fast and they are glimpses into your own future if you stop moving with it.

Talk with them.  Listen to them.  Consider them the career equivalent of a car wreck.  They hit the brick wall so you don't have to.

What the Heck is RSS?

The intent is for this to be one of those links that you send to your family when they ask: "What is RSS? Why would I care about such a thing?". If you are already familiar enough with RSS to know what it means, then this article is not for you. Move along.  Nothing new to see here. You can go about your business.  These are not the droids you are looking for.

Good, now that they're gone, lets get down to business.

Why do I care about RSS?

Definitions can wait; this is the meat of it. RSS is basically a way to get the news you want from the sources you want in the format you want, when you want it. Think of it as your own personalized Associated Press service. There is even a little bit of dark pleasure involved as you are the editor in this whole process and you can "fire" sources you dislike by unsubscribing to their feed (explained later). Don't lie, I'm sure there are a few columnists in your local paper you'd like to fire and with RSS, you can!

Much more than news

It is true that the most common use for RSS is news feeds, but it can be used for anything that might be of interest to other people. Some sites use it for press releases, some for bug reports, some for articles of interest, others are just for fun and, of course, there are some focused on the latest and greatest deals.

Best of all, you can include sources that most newspapers can't or won't use. Opinions, technical journals, Alumnus organizations, hobbies, etc. Almost anything that you have an interest in has an RSS feed available somewhere for it.

Ok, got it. Now what is it?

RSS stands for Really Simple Syndication and it simply is an agreed upon way for web sites to make anything of interest available to anyone that might be interested in it. These items are available in things called "feeds" that are nothing more than a bunch of news items grouped together.

Think of a feed as something like a newspaper. You "subscribe" to your daily paper, and you "subscribe" to a feed. There's just no messy ink to smear or double-collecting paperboys to deal with. The difference is that a newspaper is actually what is known as an "aggregate feed" meaning that it is a bunch of different topics (news, politics, sports, entertainment) all bundled into one big paper. If all you read is sports, then the rest of the paper just gets in your way. Likewise, on a properly designed site, you can get an aggregate feed of everything, or you can subscribe to just the sports. Try telling your local paper to only deliver the sports section and see what response you get!

FoxNews and CNN are both good examples of this. You can subscribe to only what you are interested in and ignore the rest. Yes, that means you can almost completely filter Britney Spears out of your news.

Hopefully, I have your attention about why you should be interested in RSS. The next steps are the mechanics of actually setting yourself set up to be able to read feeds.

How do I get a started?

First off, you need some software called a reader (a.k.a. Feed Reader, RSS Reader). This software is available in two formats: online and desktop application. The largest online reader is Google Reader and it happens to be free. The interface is a little strange, but it works for a lot of people.

There are several free desktop reader applications out there as well, such as FeedReader and SharpReader, but I strongly recommend Omea because it has plenty of features to grow with. Technically, Internet Explorer 7 has a reader built into it as well, but it is so limited that you will probably outgrow it in the next 10 minutes.

The next thing you need is a feed to subscribe to. Think about your interests; What sites do you visit regularly? Where do you get your news from? Go to some of those sites and look for one of the RSS feed icons (rss_icon_Small xml rss). Some sites hide the feed link in text in footers and you have to actually search for "RSS", "XML", "feed" or "subscribe" in the page to find the link for it. Annoying, but if it is a site you like, it's worth hunting for.

Clicking on the link or the icon should bring up a page that only has the news items in it, usually with no advertising or even site identification. In some cases, you will bring up a page that almost looks like computer code. Don't worry, this is the actual feed that the reader uses but you won't have to see it in this form again. In other cases, the link is actually a list of feeds available, in which case, click on one of the feeds that interest you. Now go to the address bar of your browser and copy the URL. You will need this in order to tell your reader what to subscribe to.

Next, you need to actually subscribe to the feed. The term subscribe is a bit of a misnomer here in that you don't really subscribe to anything in the traditional sense as that implies that you are having something delivered. Instead, you are telling your reader to keep checking this feed and to let you know when it changes. You don't have to provide any personal information or any money to subscribe, not even your email address. The feed you are subscribed to has almost no information about you.

The actual mechanics of subscribing depend on the reader you have chosen to use, but they all have an option called something like "Add Subscription", "Add feed" or "new feed" or even simply "subscribe", usually found on the File menu. Click that and paste in the URL you copied earlier, accept any defaults listed for the other options and click OK. Don't worry about those other options for now, they aren't too important and the defaults are usually good enough for most people.

Your reader should now load the feed from the site and give you a list of news items from that site that you can pick and choose from to read. This is great, but you don't get much benefit from one feed! Go find more! Be sure to look for RSS feed options on all of the sites that you visit regularly. Subscribe to anything that interests you – you can always unsubscribe later.

Here is where it gets fun: as long as your reader is open, it will periodically check your feeds and update with the latest articles. Depending on the reader, it might also put a little popup on the screen with the latest news or play a little sound. All automatically. You no longer have to try to remember all the sites you were interested in or keep track of changes or anything. If it is new, it will be in your reader waiting for you. If you close your reader, it will simply look for new items the next time you open it.


Ok, ok, sheesh. All you "Type A" people out there. Fine, you want control? You
’ve got it! Remember those options I told you not to worry about when you subscribed to the feed? Take another look at them (in most readers, right-click on the feed and click on "properties"). The main one that most people change is the update frequency. Most feeds are ok with the default, which is usually 8 hours, but some feeds (like FoxNews and CNN) update very regularly. Change that value to 1 hour to get frequent updates and satisfy your inner news junkie. Odds are that you can also rename the feed to something more meaningful than the default name of the feed. Some readers offer dozens of properties that you can fiddle with.

Ok, you got me hooked but what if I want to change readers?

Ah, but you don't want to lose all those feeds you set up, right? Fear not! Nearly every reader on the planet has an Import and Export feature that supports OPML. What is OPML? You don't really care, other than to know it is an agreed upon way of listing all the feeds you have subscribed to. You Export your feeds as OPML from your current reader. Then Import it into your new one. Voila! You might have to go mark everything as read again because the new reader doesn't know where you left off reading, but that's about it.

What reader do you use, personally?

Omea. I find it easy enough to get started with and it has plenty of features so that when I find myself thinking: "If only I could…", odds are good that Omea already supports whatever I had in mind. It was just in there waiting for me to realize I needed that feature 🙂 With the 158 feeds that I watch, I end up needing a lot of features that I hadn't imagined needing when I first started using RSS.

And, in conclusion…

Hopefully, that is enough to get you into the exciting world of information via RSS. Once you start using it, you will have a hard time going back to reading sites to get your news or even (gasp) picking up a printed paper with its "ancient" 12 hour old news 🙂