My other website

So, I’ve been in journalism school for about a month, which means I’ve got a couple of articles to share. Nothing’s been published yet, but I’m working on that.

For the moment, I’ll be showcasing my work at my CUNY blog, but I am still working out a model for managing my content, here, there, and also at, where I hope to eventually — as the title might suggest — write articles that decode the urban environment from big to small.

Onward and upward!

On earnestness and passion in New York City

Despite having been in New York for only two weeks, I already have one major observation: New Yorkers are genuinely very earnest and passionate about their chosen fields.

I’ve said this to a few people and it’s been interpreted as merely a comment on the level of entrepreneurship and creativity here. However, the level of passion goes deeper than that: New Yorkers seem to be unabashedly earnest about emerging ideas, to the point of what others might call naïveté about their chances for success.

New Yorkers are not actually that naïve — far from it. It’s just that they don’t seem to let criticism get in the way of their craft, and there does seem to be very little direct criticism of new ideas. The attitude seems to be more like how improvisational comedians do their work: rather than a “no”, every response to a pitch is a “yes, and…” type of answer that tends to encourage more refined ideas. Continue reading

Why I’m Leaving IT for Journalism

After ten years in IT, I’m changing careers. In the fall, my wife and I are moving to New York City, where I will be starting an M.A. program at the CUNY Graduate School of Journalism.

I wouldn’t be taking this step if I didn’t believe that the future of journalism is bright. I realize that my optimism flies in the face of popular opinion, particularly amongst those who bemoan the increasingly desperate state of the newspaper industry. The coming decades will bring a different type of journalism than exists today, but the fundamentals of news won’t change. World events will still happen. People still want to know what is happening in their communities. And finally, they will still want quality and accuracy, because they’ve been used to it for so long. The big questions for media organizations, large and small, are how to fulfill these demands without going bankrupt, or paying journalists below-subsistence wages. Continue reading

VMWare usability problems

As a follow-up to my last post about poor usability in Windows, I discovered that VMWare is guilty of usability problems, too. Take a look at this dialog box which appears during the creation of a virtual machine:

Huh? I looked at this and thought, how on earth can elect to only use a virtual IDE adapter? Apparently this functionality comes later:

Would it have been too hard to do the following?

Select an adapter type:

IDE SCSI (BusLogic Driver) SCSI (LSI Logic Driver)

Then you wouldn’t even need to ask the second question about the virtual disk type.

On a related note, some VMWare users are dumb enough that they’ll try anything.

Unskilled and Unware of It: How Difficulties in Recognizing One’s Own Incompetence Lead to Inflated Self-Assessments

The title of this post is also the title of a fabulous paper published in the Journal of Personality and Social Psychology of the American Psychological Association (PDF). I mention this in the context of technology because the paper was first mentioned as a response to this post on The Daily WTF, a site exposing bad programming in a daily blog format.

First, in regards to the post — I can vouch for the fact that there is some really bad code out there, and much of that, I’m sure, comes from programmers with overinflated egos who don’t realize their own incompetence because

people who are unskilled in these domains suffer a dual burden: Not only do these people reach erroneous conclusions and make unfortunate choices, but their incompetence robs them of the metacognitive ability to realize it.

Still, part of the problem is a lack of proper management oversight — whether it be functional management, or technical management. Indeed, in many cases, bad programmers’ incompetence is rewarded because their products are seen to be "business successes" because they allegedly meet the functional requirements — never mind the fact that the applications consume far too many resources on the system, crash all the time, and cause a huge maintenance burden for the operations staff. I can provide many examples, but I’m sure I would get in trouble 🙂

I considered printing out the APA paper and anonymously stuffing it in peoples’ mailboxes — not only in the mailboxes of those programmers who I feel are totally incompetent, but also in the mailboxes of their managers who still think they perform(ed) well. I decided against it not because I think I would get in trouble — they’d have no way of detecting who was the culprit — but again because their own incompetence would prevent them from detecting that the paper is targetted at them.

As Kruger and Dunning point out, the only way to resolve this dilemma is to remove the incompetence — train the bad programmers to be better programmers, and to recognize their own shortcomings. That can’t happen if bad management is preventing even the open discussion of the poor code quality.

Today’s my last day at I’m moving on to a pure systems administration position with a much smaller e-business company in Toronto called Devlin e-Business Architects. I decided that working on content delivery projects like the Torino Olympics website is really not where I want to be strategically with my career, and I don’t think I ever fit into the big company mindset very well. I’ll be writing more about that once I’m not formally under the employ of said big company 🙂

In the meantime I wish you all a very happy holidays and new year!

operating systems that hold your hand too much…

I’m all in favour of making an operating system like Linux easy-to-use. Linux’s popularity means that for many users it is the only exposure to a UNIX-like operating system that they are likely to see, and that’s why it’s important to give them the best first impression of UNIX so that they’re not turned off by it. This includes being standards-compliant and introducing as few distribution-specific hacks as possible.

I bring this up in the context of shell aliases. Today I was alarmed to see the following set by default for all users on a a SUSE Linux Enterprise Server 9 system:

alias +='pushd .'
alias -='popd'
alias ..='cd ..'
alias ...='cd ../..'
alias beep='echo -en "07"'
alias dir='ls -l'
alias l='ls -alF'
alias la='ls -la'
alias ll='ls -l'
alias ls='/bin/ls $LS_OPTIONS'
alias ls-l='ls -l'
alias md='mkdir -p'
alias o='less'
alias rd='rmdir'
alias rehash='hash -r'
alias unmount='echo "Error: Try the command: umount" 1>&2; false'
alias which='type -p'
alias you='yast2 online_update'

I get very alarmed when I see default behaviour set like this. There are a number of issues with this:

  1. It misleads new users by making them believe the behaviour of “ls” and other commands is different than what the actual default behaviour is.
  2. It introduces a set of commands to the user (e.g. “rehash”) that don’t really exist in the shell, leading to confusion if the user goes to use another UNIX machine without these aliases.
  3. It misleads users into believing that some DOS commands also exist in the Bash shell (e.g. “rd” or “md”). Rather than encouraging them to learn the correct commands, these aliases provide a crutch to the user that they are unlikely to discard. They may then use this incorrect information when describing procedures to other users. This would particularly be disastrous in an interview type situation (e.g. “Q: What is the correct command to make a directory under UNIX?”)

All of these aliases are unnecessary and imply that the personal shell alias preferences of SUSE developers are being imposed upon all users.

I would like this to serve as a call to all distribution vendors, SUSE particularly, to not ship Linux with unnecessary customizations that only serve to confuse users and introduce disparity between Linux distributions where none originally existed.