career

tech

Technology

transition

leadership

opinion

Miscellaneous

AI

Linux

fandom

fandom-origins

reading

sci-fi

science fiction

year in review

social media

Juneteenth

star wars

politics

writing

MLKDay

Uncategorized

heritage

pardons

Commentary

fediverse

mastodon

threads

charity

donation

giving

charities

donations

death

law

election

history

mac

mac os x

deep space nine

star trek

birtherism

black

blackness

violence

Biden

debate

Trump

academic freedom

antiwar

free speech

amazon

bitnami

Free Tech Support

lightsail

mysql

wordpress

baltimore

journalism

racism

disaster

news

election-denier

fired

propublica

republish

Alabama

embryo

pro-life

Religion

imperialism

Lost Cause

Woodrow Wilson

Business and Finance

cult

idols

innovators

notes

birthday

milestone

reflection

insurrection

january6

copilot

mint

monarch

personal-finance

pocketguard

church

nonprofit

review

year

American Dream

emigration

immigration

social mobility

World Economic Forum

CustomerService

disney+

Hulu

Fresh Air

interview

poetry

Rastafari

flipboard

ifttt

tumblr

education

FreeCodeCamp

meme

work

Basecamp

DEI

IT

animation

stop-motion

Grenada

gop

barbados

jamaica

revolution

palestine

gaza strip

rebels

the clone wars

domains

email

fastmail

format

hashtag

invalid

bookmarking

affirmative action

citizenship

religious liberty

Civil War

holiday

memorial

manslaughter

parable

vigilantism

Bard

ChatGPT

software development

class

library

race

Christianity

revival

aws

self-hosting

cancel culture

democracy

layoffs

google

pixelbook

management

2FA

MFA

security

Twitter

fantasy

independence

july4

SCOTUS

state

slur

speech

hiring

MLK

diversity

fight for 15

minimum wage

UBI

conservative

culture

debt

loans

darth vader

vader

2020

monument

statue

gear

coronavirus

covid

puerto rico

music

résumé

patois

thanksgiving

conservatism

clean

clean code

code

javascript

progressivism

Aside

lead

manager

outlook

trello

two-factor authentication

c#

moq

unit testing

xunit

jquery

asp.net

mvc

fact

propertydata

theory

postsharp

developer

linqpad

linqpad4

Link

double

epsilon

infinity

NaN

struct

barcelona

europe

spain

recipes

nuget

rocknug

programming

linq

packt

.net

dependencies

merging

TFS

apple

appstore

sxsw

deployment

msbuild

mvc3

sitemap

automapper

home

mls

real estate

sale

townhouse

mc7968156

books

humor

vs2010

vs2012

microsoft

ars technica

versioncontrol

stackoverflow

Daisey

factory

sql

sqlserver

t-sql

development

faith

Rapture

marriage

wedding

food

task

powergui

powershell

wpf

android

iphone

cmdlet

ui

ui automation

mac mini

mssqlserver

aa1728

curacao

travel

vacation

file

files

itemgroup

computer science

computing

enthusiast

Slate

user

court

Novell

patent troll

SCO

e-commerce

magento

php

upgrade

economics

gdp

money

executeddl

tasks

ci server

continuous integration

hudson

scripting

cassini

GAC

webdev.webhost

brand

healthcare

internalsvisibleto

strong-named

strong-named assembly

googlewave

cedar rapids

iowa

iowa city

university of iowa

conference

dev days

dev days dc

REST

semanticweb

sparql

virtuoso

web service

rdf

semantic

xml

resharper

visual studio

macbookpro

random

sql server express

TeamCity

documentation

documentation generator

Doxygen

mstest

nunit

visual studio 2008

ccnet

datatemplate

funny

freeware

software

derivatives

finance

pdf

las vegas

photo

windows7

inauguration

windows

game

games

comcast

verizon

wifi

office

productivity

google chrome

alienware

MBA

taxes

photography

itunes

search

ipod

volkswagen

vw

Sports

tdd

project management

mini

Hubble

NASA

telescope

stored procedure

tufte

.net

1/6

1/6

9/11

9/11

ADOS

asp.net

c#

disney+

HP

OfficeJet Pro

tax

webdev.webhost

WFH

: A Lament for Stack Overflow The author of this LinkedIn post thinks he’s describing something great in Stack Overflow’s …

: Software Development Roles: Lead versus Manager, Revisited I first wrote about the lead vs manager distinction in software development in 2016. A decade later …

: Navigating the Great Delayering, Revisited It’s been less than a year since I wrote this piece about engineering leadership inside a delayered …

: How I Created My First LinkedIn Carousel Post with Claude and Canva A friend recommended I post more original content on LinkedIn as I enter the job market this year. …

: This story of the use of “less lethal” munitions brought to mind a weird idea: the goon squad has …

: 2 cases of tuberculosis detected at El Paso ICE facility - The Texas Tribune Concentration camps of …

: Jackie Kennedy’s 1964 Letter Comes Back to Haunt Trump - The Daily Beast Jackie Kennedy had a …

: From the Equal Justice Initiative 2026 calendar: February 1, 1965 - Dr. Martin Luther King Jr. and …

: This is the centennial Black History Month www.instagram.com/reel/DUM0…

: A sinister (and unfortunately appropriate in this moment) transposition of the National Anthem. …

: An early Black History Month note: Dr. Gladys West, a sharecroppers’ daughter, laid the groundwork …

: Silicon Valley's Latest Crisis of Conscience Doesn't Impress Me Anil Dash recently shared this N.Y. Times piece about the negative reaction within Silicon Valley to …

: Majoring in Minors Senator Elizabeth Warren’s response to a journalist asking what questions she would pose to the …

: The thin line between entertainment and war There may not be a more apt lyric to describe our present moment than that repeated line from No …

: Linux on the Desktop Revisited I write blog posts primarily for myself, and the post I wrote about running Linux on my Google …

: Revisiting Octavia Butler If you love science fiction, I strongly recommend you spend an hour listening to excerpts from …

: The New Year Brings The Same Dangers to Democracy To kickoff my 2026 posting, I’m sharing this story from ContrabandCamp, on the anniversary of Medgar …

: 2025 Wrapped: Charitable Giving Edition This post is my annual self-reminder to support worthy causes financially. If it encourages others …

: 2025 Wrapped: Media Edition (Part 2) Despite most of the movies and shows I watched being on (too many) streaming services, it proved …

: 2025 Wrapped: Media Edition (Part 1) Since Spotify and YouTube have started puttting out their “Wrapped” summaries of what we’ve been …

: You Don’t Need the Manosphere, You Need Hobbies Maria Bustillos wrote this great piece on the inadequacy of Scott Galloway’s kinder, gentler …

: Updating Micro.blog Cross-posting Settings to Blacksky While cross-posting something I’d written with blacksky.community-specific instructions on switching …

: How I Switched to a Custom Domain on Blacksky After migrating to Blacksky some weeks ago, I wanted to return to my custom handle as well. The …

: How Not to Talk About Being a Man Ian Dunt, a British journalist wrote [this piece] …

: Listen Frontier: Gov. Stitt says compassion has limits as state troopers clear Tulsa homeless camps by Dylan Goforth, The Frontier September 17, 2025 This week on Listen Frontier, we’re looking at …

: Charlie Kirk's Legacy Is Simple It is very unfortunate that any 31-year-old man already have a legacy–because that means he is …

: Navigating the Great Delayering as a Senior Manager or Individual Contributor The recent Wall Street Journal piece titled Your Boss Doesn’t Have Time to Talk to You …

: Mourning a Nation on Independence Day Frederick Douglass’ July 5, 1852 speech unfortunately feels very appropriate this 4th of July. While …

: Another Juneteenth, Another Trump Presidency My employer first started treating Juneteenth as a company holiday back in 2020, back when we still …

: Thoughts on Being a Gray Dad on Father's Day Jelani Cobb’s weekend essay, The Old Man, proved a timely and thoughtful read. I was 41 when …

: Yet Another Tribute to Andor This is my tribute to Andor. There are many like it, but this one is mine. As I write this, over a …

: Thoughts on the Press on World Press Freedom Day Were it not for emails requesting donations from The Center for Investigative Reporting and the …

: I Am Weary of Dispatches from the "Heartland" The latest one comes from John Dick (via excerpts from Mark Cuban), founder and CEO of a company …

: Vote No On Anti-DEI Shareholder Proposals One small way I’m pushing back against the anti-DEI tide is voting no on every such …

: The Cavalcade of Cowardice Grows According to this Wall Street Journal story, Google is the latest company to join the bandwagon of …

: Blaming Joe Biden for a Government He No Longer Runs This Franklin Foer piece is useful in a few ways: it makes clear that the destruction of the …

: How My Plan to Blog About a Great Podcast Episode Landed Me on Micro.blog I’d just finished listening to episode 981 of the Hanselminutes podcast on Blogging for …

: A Foolish Nation Repeats Its Folly Like a dog that returns to its vomit Is a fool who repeats his folly. --Proverbs 26:11 There may …

: Marcus Garvey, Posthumously Pardoned On this last full day before leaving the White House, President Joe Biden granted a posthumous …

: Farewell To Threads, And What Comes Next I deleted my Threads account today. Meta's previous announcements about the end of third-party …

: Charitable Giving in 2024 (Part 2) This will wrap up my annual charitable giving post that I began on Christmas Eve with a Part 1. …

: Charitable Giving in 2024 (Part 1) My final post of last year talked about charitable giving, but this I'm starting a bit earlier. This …

: The Return of White Impunity for Black Death Merriam-Webster defines impunity as exemption or freedom from punishment, harm, or loss. With their …

: A Nation Without Mercy, Revisited Yesterday, a mutual on Bluesky shared this news: How can you be deadlocked when HIS HAIR PROBABLY …

: We Are Going Back I hated the "zombie Palpatine" storyline for awhile on social media, but the United States of …

: My First YouTube Video [youtu.be/fE71ttWBu...](https://youtu.be/fE71ttWBuwo?si=0uOoP_H8zP8KAJM-) A hastily-made tutorial …

: Past Tense We are reaching and surpassing dates in real-life that were formerly part of our science fiction. …

: Toxic Fandom Keeps Winning Commentary: Can the Best of Star Wars Survive the Worst of Its Fans? Before Star Wars can have …

: Gatekeeping Blackness is the New Birtherism "Kamala isn't black" is the latest lie dividing black folks (and uniting those seeking to discredit …

: Reaping the Whirlwind For they sow the wind and they reap the whirlwind. The standing grain has no heads; It yields no …

: The Real Problem with Biden's Bad Debate The response to President Biden's subpar debate performance against Donald Trump creates an …

: How to Protest a War Machine: Thoughts on Campus Protests In recent days, we have seen many university leaders of various titles (president, chancellor, etc) …

: Migrating My WordPress Database from a Lightsail Instance to a Standalone Database Last year, I moved this blog off of a EC2 instance running a too-old version of PHP to a Lightsail …

: "I have no time for foolishness." The function, the very serious function of racism is distraction. It keeps you from doing your work. …

: Now Sharing to the Fediverse, My Threads Account When I checked in on my Threads account recently, I saw that the Fediverse sharing feature was …

: Blaming the Victim: The Shoddy Press Coverage of the Dali Destroying the Francis Scott Key Bridge I've noticed a nasty trend in the way the press is covering the recent destruction of the Francis …

: Grand Opening, Grand Closing Ronna McDaniel's tenure as an NBC contributor has ended far more quickly than expected. Depending on …

: How the U.S. Waged a Global Campaign Against Baby Formula Regulation The following story was originally published by ProPublica, written and photographed by the …

: Is the Alabama embryo ruling pro-life or pro control? That's the title of this op-ed by Solomon Missouri, pastor of a rural church in eastern North …

: Woodrow Wilson Needs to Stay "Cancelled" The Atlantic chose the second day of Black History Month to publish this piece by David Frum to …

: Idolatry of Innovators Can Lead You to Foolish Places Here's an insane thing I read on social media today: Post by @inspiringselfcompassion View on …

: Farewell to the Last of My 40s Today is my 50th birthday, and looking back on my 40s from this vantage point, they were *a lot*. I …

: Insurrection? What Insurrection? It is January 6, 2023 and in an even more depressing turn than I could have imagined, numerous …

: What We Left Behind in 2023: Mint Intuit decided and announced last year that Mint (an excellent personal finance app that I've used …

: Charitable Giving in 2023 The number of hours left in 2023 is down to single digits as I write this. This year as in past …

: Looking Back at Highs and Lows of 2023 Highlights: Expanded scope at work 2 stand-alone teams versus one large one New area of …

: The American Dream is Still Achievable--But Far from Easy One of my mutuals on social media takes special glee in puncturing strongly-held beliefs. His latest …

: Great Customer Service Smoothes Out Bad Self-Service Success at switching to a truly bundled Disney+ and Hulu experience (both with no ads) from the …

: How To Say Babylon: A Memoir Terry Gross has been an excellent interviewer for decades, so when my dad shared a link to her …

: Flipboard Renewing Its Relevance With the Fediverse Flipboard is jumping into the fediverse with both feet, according to a piece from The Verge. While …

: (Tech) Education Should Be Free (and Rigorous) Free tech education is the reality being created by Quincy Larson, the founder of FreeCodeCamp. I've …

: Last Day of Work Until the New Year I've signed out of my work laptop for the last time in 2023 (as long as no emergencies come up that …

: Duke University Libraries Drop Basecamp I was glad to see Duke University Libraries in-depth explanation of why they're dropping Basecamp …

: Peter Gabriel Is Why I Love Stop-Motion Animation Back in October, I was reminded exactly when I became a fan of stop-motion animation. A friend in …

: Recent Grenadian History Revisited Going deeper down the Grenada rabbit hole I fell into just a week ago, I recently learned of a …

: The Muscle Memory of Surrender: A Brief History of the Modern GOP All of these smart Republicans who frankly did not understand how thoroughly corrupted their party …

: Grenada: Nobody's Backyard I learned a lot from this episode of Throughline about an invasion that happened when I was just 9 …

: Rhymes with 9/11 History doesn't repeat itself, but it often rhymes Mark Twain I could not have anticipated that …

: What I’m Reading and Listening to About Palestine A friend of mine asked what I’ve been reading about the war between Israel and Gaza to help him …

: Ahsoka Fell Victim to the Marvelization of Star Wars via GIPHY I hate to say this about my oldest fandom, but Ahsoka wasn’t good. I'm not here to set …

: Why I Pay for Email (and Domains) In a world where you can get free email accounts seemingly anywhere, I recently decided to pay for …

: Postmarks Revisited Since my initial post on Postmarks, I made two minor changes to my bookmarking site: I edited …

: Remembering 9/11 It’s hard to believe 22 years have passed since the terrorist attacks of that day. I still …

: Unremarked Corners of Social Media: Substack Notes Edition It's been about 5 months since Substack introduced Substack Notes. Some Googling to refresh my …

: Everything Old is New Again: Social Bookmarking Edition According to this TechCrunch article, a Fediverse-powered successor to del.icio.us is now available. …

: The Presumption of Belonging In my occasional attempts to learn from people I disagree with, I watched an episode Briahna Joy …

: The Social Media Shakeup Continues: Bluesky & Threads Over six months have passed since I first started exploring Mastodon. I've switched servers (to …

: GOP state officials threaten legal action over company diversity policies A group of Republican U.S. state attorneys general on Thursday warned the country's largest …

: Religious Freedom is a Poor Cloak for Prejudice One thing I have noticed in the rightward lurch of the federal judiciary over the years, especially …

: What The End of Affirmative Action in Higher Education Means (and Doesn’t): Addendum Finally (for now), the end of affirmative action is far from the end of anti-black rulings from this …

: What the End of Affirmative Action in Higher Education Means (and Doesn't) [twitter.com/michaelha...](https://twitter.com/michaelharriot/status/1674424753929732106?s=61)&t …

: Memorial Days, Past and Present According to this article by Dave Roos, the earliest Memorial Day commemoration took place May 1, …

: A Nation Without Mercy Yesterday, Daniel Penny was charged with second-degree manslaughter for the death of Jordan Neely …

: Murder on the F Train: Vigilantism is America's New Normal On May 1, 2023, Jordan Neely breathed his last breath on the floor of the F train after another …

: Will AI Change My Job or Replace It? One of my Twitter mutuals recently shared the following tweet with me regarding AI: …

: Reading The South Through the Lens of Caste I recently finished reading Adolph L. Reed, Jr’s memoir of life in the Jim Crow South and …

: Is American Christianity Due for a Revival? Timothy Keller believes renewal is possible. He laments the decline in church membership and the …

: GenXJamerican.com Moves to Amazon Lightsail, A Follow-Up One change I missed after migrating to Lightsail, was ensuring that all the posts with images in …

: Salman Rushdie Talks Writing, Democracy, History & More I recently listened to David Remnick's interview of Salman Rushdie--his first since barely surviving …

: Exploring Mastodon Continued: Moving to Hachyderm.io After almost 4 months of using Mastodon, I found the community on Hachyderm.io (and its …

: From "Quiet Quitting" to Loud Layoffs One of the more loathsome inventions of the business press in this pandemic-impacted era of work is …

: GenXJamerican.com Moves to Amazon Lightsail Before last year ended, I moved this blog off its EC2 instance running a too-old version of PHP to …

: Insurrection Anniversary On this day, the second anniversary of the attempted insurrection at the U.S. Capitol, I took a look …

: Jamaicans Doing Big Things in America: Susan M. Collins Susan M. Collins is the new president and CEO of the Federal Reserve Bank of Boston. Per the bank's …

: Owning My Words, Revisited A few years ago, I wrote this brief post, after Scott Hanselman re-tweeted one of his blog posts …

: 2022 Year in Review Some highlights from this year: Very strong year-end review (best ever at my current employer) …

: Charitable Giving in 2022 As the end of this year gets closer, and more non-profits reach out for charitable donations, I …

: Linux on the Desktop: Google Pixelbook Edition A friend of mine recently shared this post in our Slack group marking 2022 as the year of Linux on …

: For Black Families in Phoenix, Child Welfare Investigations Are a Constant Threat by Eli Hager and Agnel Philip, ProPublica, and Hannah Rappleye, NBC News, photography by Stephanie …

: The [Tech Bro CEO] Strikes Back What Elon Musk is doing to Twitter right now is what happens when someone with the same ideology and …

: Tell Me About Yourself--Engineering Leader Edition The following tweet starts an excellent thread of questions that I’m taking as a starting …

: 2FA/MFA Revisited Seven(!) years ago, I wrote a bit about security breaches and how two-factor authentication …

: Your Mastodon Experience May Vary--And Not Always in a Good Way While my own experience on Mastodon has been a positive one so far, my experience is by no means …

: Exploring Mastodon Continued: Timelines and Federation While checking out the Mastonaut desktop client for Mastodon, I came across the following diagram …

: Exploring Mastodon Continued: Verification As I mentioned at the end of my first post on Mastodon, I’ve been following Martin …

: Navigating the Latest Social Media Shakeup: Exploring Mastodon In the wake of Elon Musk closing a deal to buy Twitter (after trying and failing to back out due to …

: Churches Are Breaking the Law by Endorsing in Elections, Experts Say. The IRS Looks the Other Way. by Jeremy Schwartz and Jessica Priest ProPublica is a Pulitzer Prize-winning investigative newsroom. …

: African-American Evangelicals and their November Dilemma Pastor Dwight McKissic, founder and senior pastor of Cornerstone Baptist Church in Arlington, Texas, …

: Waiter, there's a [brown person] in my [fictional world] The Lord of the Rings: The Rings of Power finally debuted on Amazon Prime, and right on cue came the …

: Who Is Worthy of Forgiveness? Plenty of people aired (and are still airing) their opinions regarding this question in the wake of …

: An Ironic Independence Day In two days, this country celebrates 246 years since the Declaration of Independence from Great …

: What Do Black Americans Think About Roe v. Wade—and Why www.thebulwark.com/what-do-b… Another excellent piece by Dr. Ted Johnson that makes sense of …

: Our Dishonest Discourse About "The Hard R" A controversy that began with this open letter asking Spotify to "take action against the …

: Social "Firsts" and the Supreme Court A few days ago, Stephen Breyer announced his retirement from the Supreme Court of the United States …

: Two Tales of Tech Recruiting [embed][twitter.com/jstTECHch...](https://twitter.com/jstTECHcharge/status/1487209360883339264)[/emb …

: MLK Day 2022 The third Monday in January is here, and once again people who oppose everything Dr. King stood for …

: 1/6 and 9/11 Absent from much of the written commentary I've read about the insurrection at the US Capitol last …

: Is a College Degree Worth It? Public discourse has turned (again) to the question of whether or not a college degree is "worth …

: Thoughts on the Many Shades of Anti-Blackness A friend shared the following tweet with me not long ago: twitter.com/meredith_… Whoever Jen …

: Thoughts on Diversity in Tech On April 28, I participated in a panel and Q & A on the intersection of race & technology. …

: False Unity and “Moving On” is Dangerous Even before yesterday’s inauguration of Joe Biden and Kamala Harris as the new President and Vice …

: The Minimum Wage Debate is Too Narrow and Small Recently I've found myself having variations of the same conversation on social media regarding the …

: Why Conservatives Are Anxious About America Rahmaan Mwongozi (@TheRocsWorld) recently had one of the few good-faith conversations I've heard in …

: Only a Little Forgiveness for Old Debts I came across this parsimonious student loan forgiveness proposal in a tweet earlier today. The …

: Life and Religious Liberty for Me, But Not for Thee With Amy Coney Barrett now on the Supreme Court and weighing in on cases, the payoff to the …

: Rest In Peace David Prouse I’ve loved science fiction and fantasy for as long as I can remember. But I hadn’t thought much …

: Empathy Now Predictably, the calls for empathy for “the other side” have already begun. This tweet from Ian …

: 2016 Was Not an Anomaly As of this writing, we lack certainty regarding the outcome of the 2020 presidential election. But …

: Kamala Perhaps unlike most people of Jamaican or West Indian descent, I was somewhat conflicted by …

: Thoughts on "Cancel Culture" On Twitter, I'm one of those guys who tweets "At-will employment" every time someone loses their job …

: An Imperfect Dividing Line for Honor America still wrestles with names, symbols and statues. But in the wake of George Floyd’s …

: My First Juneteenth Today marks the date in 1865 when General Gordon Granger read General Order 3 to the people of …

: New MacBook Pro The untimely death of the mid-2015 MacBook Pro that had been my primary machine the past few years …

: COVID-19 Doesn't Care About Our Politics A friend on Twitter asked the following question: Does the shortage of ventilators/mask[s] show the …

: Puerto Rico was a harbinger of the botched response to covid-19 In reading this excellent Financial Times piece, I was struck by this paragraph in particular: …

: Philanthropy is Marketing This post is the product of a conversation with some friends on Slack, on the topic of billionaires …

: (Stay) Inside [embed][youtu.be/mKzVc0rTh...](https://youtu.be/mKzVc0rThK8)[/embed] I came across a shorter clip of …

: Résumé Shortening (and other résumé advice) I saw a tweet from one of the best tech follows on Twitter (@raganwald) earlier today about the …

: Jamaican Anatomy I remember having a good, long laugh about this particular image when one of my cousins shared it on …

: Does Diversity & Inclusion Disadvantage Poor Whites? I came across a Twitter thread today (it begins here) which argued that diversity & inclusion is …

: Does Your Business Card Run Linux? Mine sure doesn’t, but George Hilliard's does: …

: What I'm Thankful For I have plenty to be thankful for this year. My 4-year-old twins are doing well--healthy, happy, and …

: Owning My Words After Scott Hanselman retweeted this blog post recently about owning your words, I've decided to get …

: A Thought on Black American Culture and the Racial Wealth Gap I listened to this conversation between Dr. Glenn Loury and Coleman Hughes with great interest. I …

: The JavaScript Guide to Clean Code This is a great presentation with numerous examples of clean JavaScript (and the much worse …

: Retroactive Repudiation Unless you’ve been living under a rock, you’re aware that Virginia’s Democratic Party has been …

: The Virtue Signalers Won’t Change the World A piece well-worth the time to read, regardless of your ideology. I disagree with Dr. McWhorter’s …

: Ta-Nehisi Coates isn't Voldemort I'm no Harvard-trained historian like Leah Wright Rigeur …

: Calling Out Racist Voters Is Satisfying. But It Comes at a Political Cost. theintercept.com/2018/11/1… I’m not sure what took so long for the “broad political left” to …

: Thoughts on America’s Need for a Healthy Conservatism nymag.com/daily/int… The link above is Andrew Sullivan’s latest diary entry for New York …

: Nulls Break Polymorphism, Revisited Steve Smith wrote this post regarding the problem with null about two years ago. It’s …

: Thoughts on the Damore Manifesto I’ve shared a few articles on Facebook regarding the now infamous “manifesto” …

: Entity Framework Code First to a New Database (Revised Again) As part of hunting for a new employer (an unfortunate necessity due to layoffs), I’ve been …

: Podcast Episodes Worth Hearing Since I transitioned from a .NET development role into a management role 2 years ago, I hadn’t …

: Best Practices for Software Testing I originally wrote the following as an internal corporate blog post to guide a pair of business …

: Software Development Roles: Lead versus Manager I’ve held the title of development lead and development manager at different points in my …

: Getting (and Staying) Organized During the past year-and-a-half as a software development manager for a local consulting firm, I've …

: Security Breaches and Two-Factor Authentication It seems the news has been rife with stories of security breaches lately. As a past and present …

: Bulging Laptop Battery Until yesterday, I’d been unaware that laptop batteries could fail in a way other than not …

: Which Programming Language(s) Should I Learn? I had an interesting conversation with a friend of mine (a computer science professor) and one of …

: Reflection and Unit Testing This post is prompted by a couple of things: (1) a limitation in the Moq mocking framework, (2) a …

: Pseudo-random Sampling and .NET One of the requirements I received for my current application was to select five percent of entities …

: RadioButtonListFor and jQuery One requirement I received for a recent ASP.NET MVC form implementation was that particular radio …

: Complex Object Model Binding in ASP.NET MVC In the weeks since my last post, I’ve been doing more client-side work and re-acquainting …

: XUnit: Beyond the Fact Attribute (Part 2) One thing I initially missed about NUnit compared to XUnit (besides built-in support for it in tools …

: Everyone is Junior at Something--Even You Hanselminutes #427 was an excellent interview with Jonathan Barronville, the author (perhaps the …

: XUnit: Beyond the Fact Attribute After using XUnit for unit testing the past couple of years, I finally got a bit tired of the …

: Learning New Programming Languages Important advice from The Pragmatic Programmer (page 62): "Learn at least one new language every …

: When Third-Party Dependencies Attack Last week provided our office with an inconvenient lesson in what can happen when third-party …

: Another Tale of a Developer Interview Loop There are literally millions of links on the internet about interviewing developers–interview …

: Farewell RockNUG! Last week was the final monthly meeting of the Rockville .NET User Group (aka RockNUG) after a …

: Managing Your Tech Career Episode #980 of .NET Rocks was an excellent 52 minutes on career management for developers. Since …

: Code Generation with LINQPad 4 Today I encountered a task at work that offered the prospect of some pretty dull development …

: How to Debug Small Programs This brilliant post by Eric Lippert is one I wish I’d had available to point to last month …

: Infinity, Epsilon and NaN I inadvertently learned some new things about the .NET double struct while refactoring some code …

: Advice for Aspiring Software Engineers Last night, I gave a talk at Towson University to a section of software engineering students (a …

: String concatentation Yesterday, Bill Wagner (author of a number of excellent books on C#) wrote a post on string …

: Europe in Winter: Barcelona, Spain (Day 2) The bus mentioned in yesterday’s post was the Barcelona Bus Turistic. It turned out to be a …

: Europe in Winter: Barcelona, Spain Barcelona is the first stop on our trip to Europe (hotels courtesy of my lovely wife, flights …

: Candied Sweet Potatoes 2013 Since the first time I posted a candied sweet potato recipe, I’ve made it a few more times. …

: Re-Introducing NuGet (and introducing Chocolatey) Last month, I presented on the topics of NuGet and Chocolatey at RockNUG as the lead-in to David …

: Reducing Duplication with Interfaces, Generics and Abstracts The parts of our application (a long-term service and support system for the state of Maryland) that …

: How can I become a world-class coder in under three years? I came across this question on Quora today and decided I would answer it. There were enough up-votes …

: Book Review: Building Interactive Queries with LINQPad Any new technical book has the challenge of adding value above and beyond what’s available for …

: Binding Redirects, StructureMap and Dependency Version Upgrades Dealing with the fallout in failing unit tests from a code merge is one of the most frustrating …

: Not Surprised, But Still Disappointed After being told the composition of the jury considering the case against George Zimmerman the week …

: Word Games I love word games. Whether it’s old-school ones like Scrabble and Boggle or the increasing …

: The App Store Economy Ain't Broken (So Don't Fix It) I came acrossthis article via Daring Fireball, and figured I’d post my two cents about it. I …

: The Dreaded CISPA is Back

: My 2 Cents on SXSW 2013 Size I hadn’t been to a conference so large (whether you’re counting people or land area …

: Replicating Folder Structures in New Environments with MSBuild I recently received the task of modifying an existing MSBuild script to copy configuration files …

: Fixing MVC Sitemap Errors When attempting to manually test a .NET MVC application, I got the following exception from Visual …

: Identifying All Bad Mappings with AutoMapper One of the long-running annoyances we’ve had with our test of AutoMapper configuration …

: Ours At Last After about two weeks of homelessness (a.k.a. living in my wife’s condo and hotels), we …

: Fastest Realtor in the East? I didn’t think a house could be sold in just 4 days, but I was wrong. We got a list price, …

: First-Time Home Seller Since my wife and I are buying a new place together, I’m selling the townhouse we currently …

: How to Be Black I finished reading this provocatively-titled book a couple of days ago. I expected Baratunde …

: Visual Studio & TFS Behavior Tweaks One of a few long-running annoyances I’ve had with every version of TFS is one of the default …

: Freedom From Default Color Themes in Visual Studio 2012 I finally joined the ranks of those who’ve installed Visual Studio 2012 this week. The default …

: Tim Cook Should Ignore Ars Technica (Almost) Completely I came acrossthis article by Jacqui Cheng and thought I’d add my two cents on each of the …

: Help Build a Tesla Museum One of my favorite cartoonists, Matthew Inman, is using his unique brand of humor tohelp raise funds …

: Introducing AutoPoco I first learned about AutoPoco from this blog post by Scott Hanselman. But it wasn’t until …

: The Perils of Renaming in TFS Apparently, renaming an assembly is a bad idea when TFS is your version control system. Earlier this …

: Please Learn to Code (Continued) A couple days ago, I wrote a post on why Coding Horror is wrong to suggest people shouldn’t …

: Please Learn to Code I came across this post from Jeff Atwood in my Twitter feed this morning. It even sparked a …

: Thanks Again StackOverflow! About a month ago, I wrote a brief post about starting a new job. In it, I tipped my hat to …

: From Web Forms to MVC In the weeks since my last post, I’ve been thrown into the deep end of the pool learning …

: New Gig Tomorrow will be my first day with FEi Systems. They design, build and maintain healthcare IT …

: Retraction Just came across this story relating to my January 25th blog post on Mike Daisey’s story of …

: Inserting stored procedure results into a table Working with one of my colleagues earlier today, we found that we needed a way to store the results …

: Saving Changes is Not Permitted (SQL Server 2008 R2) We just upgraded our development VMs at work, and I got bitten by one of the more annoying default …

: A Brief Introduction to LINQPad I presented a brief talk on LINQPad at RockNUG a couple of weeks ago. This post will elaborate on …

: Mr. Daisey and the Apple Factory If you haven’t already heard this episode of This American Life, it’s definitely worth …

: Ninja UI Since yesterday’s post about my goals for next year, I heard from my friend Faisal about a …

: Another Year Gone It’s annual review time again, which means this year has gone by even more quickly than usual. …

: LINQ Aggregate for Comma-Separated Lists of Values A couple of days ago, while pairing with my colleague Alexei on bug fixes to a new feature, we came …

: AppleScript + RSVP Emails = Weddings Guests Address Book Group I’ve been using Macs as my primary home computers for about seven years now, but hadn’t …

: About that rapture thing It’s May 21, and we’re all still here. Not that I expected a different outcome, but …

: Introducing NuGet Today at work, I gave a presentation on NuGet. I’ve suggested they consider it as an option to …

: Practical MVVM Last Wednesday night, I attended a talk at RockNUG on MVVM by Joel Cochran. It’s the best …

: Wedding Website Up Here it is: http://ebandscott.tying.the.knot.org/ Thanks again to my friend Sandro for setting this …

: Ballet This year is the second in a row I’ve gotten to go to a Kennedy Center performance. Last year, …

: .NET Reflector--No Longer Free, But Still Worth It Those of us who registered with red-gate.com after they bought Reflector from its creator, Lutz …

: (Finally) Engaged Back on January 14, I turned my girlfriend Ebony into my fiancée :-) The next day, we went cruising …

: Introducing .NET Reflector I gave a presentation on .NET Reflector at the January 12 meeting of RockNUG. I took most of my time …

: Candied Sweet Potatoes Last month (for Thanksgiving), my dad, sister, a few cousins and I cooked so mom could have a break. …

: The problem with exit interviews The biggest problem with exit interviews is that they’re too little, too late. I had an exit …

: Deleting TFS Tasks I changed the state of a TFS task I was working on recently, only to discover the workflow …

: Filtering Heterogeneous Arrays in .NET One of the bugs I was recently asked to fix for an application required me to determine whether or …

: PowerGUI and .NET Framework 4.0 On my current project, we use PowerShell scripts to automate our UI testing. We’ve been …

: New MSBuild 4.0 Features My current assignment has me working with the application build again. MSBuild 4.0 got a number of …

: ScrollViewer+ItemsControl vs. ListView One of my most recent tasks at work was determining the cause of slow performance in one part of an …

: Bloatware happens when you aren't the only customer This article in Ars Technica reminded me of one of the things I never liked about PCs you bought …

: My First PowerShell Cmdlet We’ve been using PowerShell to write automated tests of the UI on my current project. One of …

: In non-iPhone 4 news Apple stealthily revised the Mac mini. Get the full story here, but the part I think is the most …

: When default settings attack When you first install SQL Server 2008 Express, the TCP/IP protocol is disabled by default. Be sure …

: To Curacao and back I spent the past 7 days vacationing in Curacao with my girlfriend Ebony and another couple …

: Going beyond files with ItemGroup If you Google for information on the ItemGroup element of MSBuild, most of the top search results …

: From enthusiast to user My friend Sandro read this Slate piece yesterday and wrote this blog entry in part about enthusiasts …

: An update on SCO Though I wished them dead years ago, SCO still lives. With any luck, this latest court ruling will …

: Adventures in e-commerce I’m working on an e-commerce site for the first time in about 10 years. The site is Trés Spa, …

: More on migrating partially-trusted managed assemblies to .NET 4 Some additional searching on changes to code access security revealed a very helpful article on …

: Upgrading .NET assemblies from .NET 3.5 to .NET 4.0 Code access security is one area that has changed quite significantly between .NET 3.5 and .NET 4.0. …

: Why GDP Matters for Schoolkids Planet Money, one of many podcasts I listen to in Beltway traffic, had a great episode recently …

: When 3rd-party dependencies attack Lately, I’ve been making significant use of the ExecuteDDL task from the MSBuild Community …

: Continuous Integration Enters the Cloud I came across this blog post in Google Reader and thought I’d share it. The idea of being able …

: Set-ExecutionPolicy RemoteSigned When you first get started with PowerShell, don’t forget to run ‘Set-ExecutionPolicy …

: Can't launch Cassini outside Visual Studio? This may help ... I’d been trying to launch the Cassini web server from a PowerShell script for quite awhile, …

: Can Google Find You? Recruiters use Google. Whether you’re actively seeking a new job or not, it’s important …

: Transforming Healthcare through Information Technology Back on November 20, I attended a seminar at the Reagan Building on how healthcare in the U.S. could …

: Unit testing strong-named assemblies in .NET It’s been a couple of years since I first learned about the InternalsVisibleTo attribute. It …

: Figuring Out Google Wave I recently received an invite to Google Wave (thanks Rory). From the few minutes I’ve played …

: A visit to Iowa City Last weekend, I visited my cousin Kevin at the University of Iowa to sit on his Ph. D defense. For …

: StackOverflow Dev Days DC In this case, DC = Falls Church, VA. I went to the State Theatre to attend this conference. …

: A .NET Client for REST Interface to Virtuoso For my current project, I’ve been doing a lot of work related to the Semantic Web. This has …

: Adventures in SPARQL If this blog post seems different than usual, it’s because I’m actually using it to get …

: Adding File Headers Made Easy One of the things on my plate at work is a macro for adding a file header and footer to all the …

: Snow Leopard: Days 1-2 Thanks to a pre-order from Amazon on August 3, a copy of Snow Leopard arrived on my doorstep August …

: Random SQL Tricks (Part 2) In my previous random SQL tricks post, I discussed how to generate random alphanumeric strings of …

: A long overdue upgrade I’m finally running the latest version of WordPress (I’ve been way behind on upgrading). …

: Build Server Debugging Early in June, I posted about inheriting a continuous integration setup from a former colleague. …

: Random SQL Tricks (Part 1) One of my most recent tasks at work has been generating test data for integration tests of a new …

: Introducing Doxygen Last Wednesday evening, I gave a presentation on Doxygen at RockNUG. I didn’t actually bother …

: Converting MSTest Assemblies to NUnit If you wanted to convert existing test assemblies for a Visual Studio solution from using MSTest to …

: MSBuild Transforms, Batching, Well-Known Metadata and MSTest Thanks to a comment from Daniel Richardson on my previous MSTest post (and a lot more research, …

: Detect .NET Framework Version Programmatically If you need to determine what versions of the .NET Framework are available on a machine …

: Calling MSTest from MSBuild or The Price of Not Buying TFS When one of my colleagues left for a new opportunity, I inherited the continuous build setup he …

: CruiseControl.NET, MSBuild and Multicore CPUs When I was trying to debug a continuous build timeout at work recently, I came across this Scott …

: The unexpected home of IsHexDigit I was about to write a method that checked to see if a character was a hexadecimal value when it …

: Implementing Mouse Hover in WPF We’ve spent the past couple of weeks at work giving ourselves a crash course in Windows …

: Gotta love this April Fool's Day gag from Google Here’s the e-mail home page. They’ve got a little announcement, technical specs, even a …

: Free Software for Your New Computer If you’ve bought a new PC or Windows laptop recently, it probably came “bundled” …

: Recommended Listening: Derivative Dangers If you want to know how long ago the seeds of the current financial crisis were sown, definitely …

: Sometimes, I really love the web I’m at the airport to pick up a couple of friends, just back from a week in Spain. Adam asked …

: Alternative PDF Readers According to an article I got from my boss, there is a flaw in Adobe Acrobat and Adobe Acrobat …

: Las Vegas Sites and Attractions Photo Republished One of my Las Vegas photos from a trip last year got picked up by a little online travel guide. I …

: Microsoft Gets It Wrong Again According to this story, there’s no direct upgrade from Windows XP to Windows 7. Given all the …

: The rest of the inauguration day story The group of us that went down (my sister and I, plus two of our friends), secured our spot on The …

: So close, but so far away We were making great time until we tried to get to L’Enfant Plaza. Even though we caught the …

: On the train to downtown We got on the train at Wheaton around 6:40am. There was a bit of a crowd on the platform, but we all …

: Headed downtown Of course it’s crazy for me to brave the cold and the crowds to see Obama’s inauguration …

: Windows 7 Beta Here are my brief impressions of it so far: Installation Requires that Vista be on the machine in …

: World of Goo For years I’ve been more of a console gamer (XBox 360) than a computer gamer, but World of Goo …

: In Search of Wireless Internet Recently, I’ve gotten a couple of questions from family about where they can get wireless …

: Alternatives to Microsoft Office My dad asked me yesterday if there were any free alternatives to Microsoft Office. The one that came …

: Free Tech Support For family and friends of mine who don’t work with computers, I often act as free tech …

: Free Test Data If you find yourself in need of test data (and if you write software for a living, you’ve got …

: Another use for RSS feeds Caphyon, the vendor of Advanced Installer, has a feed for updates of the software. A brief look at …

: Clever Twitter Client Some googling for Mac OS X Twitter clients revealed this clever one. I wasn’t aware of Fluid, …

: Finally joined Twitter Being part of The Borg Facebook wasn’t enough–I joined Twitter a couple of weeks ago. At …

: Comparing XML Strings in Unit Tests Comparing two XML strings is painful. So of course, my current project required me to come up with a …

: Flu tracking, courtesy of Google According to this story in the New York Times, Google can detect regional flu outbreaks up to 10 …

: Converting File URIs to Paths I spent most of this morning looking for a replacement to Application.ExecutablePath. The reason for …

: It's morning again in America The U.S. is certainly a different place today than it was yesterday. The commentary I’ve seen …

: Election Day I got in line a little over 30 minutes after the polls opened. According to the poll worker who came …

: Mark Cuban, Keeping an Eye on the Bailout If you’ve been listening to NPR’s Planet Money, you already know about …

: My Two Cents on Reinventing the Wheel Yesterday, I came across a spirited defense of reinventing the wheel in a recent post from Jeff …

: Why Performance Reviews Don't Work This morning, I came across this interesting post about why performance reviews don’t work. …

: More Financial Crisis Info I heard about this site on the financial crisis during an episode of the Planet Money Podcast. They …

: Understanding collateralized debt obligations The best explanation of collateralized debt obligations (CDOs) I’ve heard so far comes from …

: Bailout Price Tag Continues Rising According to this story in the Wall Street Journal (it’s subscriber-only, sorry), AIG just got …

: More Financial Crisis Education The reporters who did the Giant Pool of Money story have followed up with Another Frightening Show …

: Planet Money Podcast The “Giant Pool of Money” episode of This American Life I blogged about in May has …

: Grand Canyon, North Rim After the Antelope Canyon tour, we pushed on to the north rim of the Grand Canyon. The north rim …

: Antelope Canyon This morning, we rode into Navajo Nation land to see Antelope Canyon. It’s one of a number of …

: Arches National Park A couple of days ago, we left Torrey and headed for Castle Valley, UT. Our purpose there was to …

: Bryce Canyon After breakfast at the Spotted Dog Cafe, we bid farewell to Springdale, Utah (and an excellent …

: Zion National Park We spent most of the day inside Zion National Park (in Springdale, Utah). The centerpiece of it is a …

: Need An Icon For Your Application? Visit ASP.NET Icons and download what you need.

: Stack Overflow is Live Stack Overflow is a great new programmer Q & A site from Jeff Atwood and Joel Spolsky. I (and …

: Now I'm Blogging for Work Too In addition to the entries I post here, I’ve started blogging for my employer, along with some …

: New Toy Vacations and holidays are my primary excuses for buying new toys. Since I’ve got a trip to …

: Granting full permissions to all tables and views in a database One of my assignments is to write a script that will grant CRUD (create, read, update, delete) …

: First Impressions of Google Chrome I started using Google Chrome (hereafter referred to as just “Chrome”) yesterday to see …

: Google Gives Us a Browser Even though Google Chrome is open source, I wonder what will happen to Firefox (my current browser …

: Reflector Update When I originally posted about the purchase, Red Gate hadn’t added a product page to their …

: smallestdotnet.com Scott Hanselman came up with this site that tells you what version of .NET you’ve got and your …

: Red Gate Buys Reflector I just came across the news this morning. I used Reflector a lot when I was first learning .NET. …

: Other People's E-mail Lately, I’ve been getting e-mail at my Gmail account that are clearly intended for other …

: My iPhone Review I picked up a white 16GB iPhone 3G on July 13. After a month of use, I can add my 2 cents to the …

: An Alternative to NUnitForms I first heard about Project White from someone at the Agile 2008 conference last week. I …

: More frustration with Alienware Today I come into the office to work, and find that my machine blue-screened overnight. I figured it …

: XML Schema Gotcha This is probably old hat to XML experts, but it’s new to me–the default values of the …

: My VW Passat and the Check Engine Light I took mine in for service this week for its regular 5000-mile service, and a check engine light …

: Writing the contents of a string to a text file I should have assumed this existed, based on Ed Poore’s comment on this post, but here’s …

: NDbUnit Revisited I first wrote about NDbUnit back in 2006. Unfortunately, it doesn’t appear much new has …

: Loading text file contents into a string While working on some XSD validation code today, I found that I needed to load a couple of text …

: A couple of "old-school" CS principles Robert Martin is a guy our CEO and architects really respect when it comes to software design and …

: iPhoto Archiving When I bought my MacBook Pro a couple years ago, I didn’t get the largest hard drive available …

: The Giant Pool of Money For a great explanation of the current meltdown in mortgages, definitely check out this podcast. The …

: Hello WordPress 2.5.1 Finally upgraded to the latest version, so I figured I’d change themes too. The upgrade …

: Strongly-typed DataSets in Subversion Strongly-typed datasets are the default option for creating a data access layer (DAL) with the …

: Paintball I spent part of my Sunday running through the woods shooting at friends and strangers. The place: …

: Macbeth, Teller-style I saw this production of Macbeth this afternoon with my friends Jen and Alban. We were rewarded for …

: Upgraded to Leopard I installed it last Wednesday. My first upgrade attempt failed, so I paid a visit to the …

: Changing Primary Keys from "int" to "uniqueidentifier" I’m in the process of doing this for a project that uses Microsoft SQL Server. One of the …

: Back to the trenches Instead of management and code, I’ll just be writing code (at least for now). Today, I started …

: Stockholm, Sweden Yesterday, before our concert at Ekebyholmsskolan, we got to tour Stockholm. We arrived there from …

: Scandinavia Tour I’m writing this from a school dorm at Toivonlinna, a Seventh-day Adventist school in Finland. …

: A More Perfect Union Barack Obama spoke at length yesterday on the issue of race in general and his former pastor in …

: $1.67 That’s how much one (1) euro cost me yesterday when I was converting currency with Chevy Chase …

: The truth about usability I came across this via Daring Fireball today. There’s a lot more than a grain of truth to what …

: Time to buy an iPhone? I went to the barbershop on Friday. During my haircut, I ask my barber how he likes the iPhone. He …

: Refactoring Last night, I went to a presentation on refactoring by Jonathan Cogley. My notes are below: refactor …

: Wireless Mighty Mouse I saw one of these as a clearance item at MicroCenter yesterday, so I picked one up to try it out. …

: Taxes For the first time in a number of years, I had a professional do my taxes. I’d been a TurboTax …

: Null Coalescing Operator I didn’t know about this C# 2.0 operator (??) until ReSharper suggested it as a replacement …

: Fixing Computer Science I’ve been reading a lot of complaints about the current state of computer science education …

: TeamCity 3.0 Now there’s a freeware version of it that supports up to 20 users and build configurations. We …

: Apple Stuff iPod nano The iPod I mentioned yesterday is the 4th (!) one I’ve owned. Each of the previous …

: Birthday I turned 34 today. I suppose I’m officially in my “mid-30s” instead of my early …

: The trouble with using strongly-typed datasets Apparently, if your database-driven website is under heavy concurrent user load, the Adapter.Fill …

: Welcome to 2008 If a single word could define my 2007, it would be “travel”. I suspect it’s the …

: Digital Cameras, and another Adobe Lightroom Plug This time, from a much higher-profile blogger than me–Tim Bray. The bulk of the post is …

: Happy Holidays I wish all my readers a happy holiday season!

: Lightroom: Day 24 My earlier plan of a longer series of posts on the ins-and-outs of Lightroom was devoured by work, …

: Sight and Sound Theatre My sister and I spent the weekend with my parents and an aunt to watch the Christmas shows at Sight …

: Are Exceptions Always Errors? It would be easy enough to assume so–but surprisingly, that’s not always the case. So …

: SourceForge to the Rescue I’d been hunting around for awhile trying to find a tool to automatically convert some .resx …

: Google Webmaster Tools I just started playing with Google Webmaster Tools yesterday. I was very interested to find out …

: Aftermath: The Failure of Virtual Case File The FBI awarded Lockheed-Martin (my former employer) the lead role in implementing Sentinel, a …

: Lessons Learned: The Failure of Virtual Case File I came across this article about the failure of the Virtual Case File project about a week ago. I …

: .NET Developers Search The latest podcast of Hanselminutes mentioned a custom search engine focused on .NET topics. …

: Lightroom: Day 1 If you love iPhoto, I warn you–stop reading now. Once you read even a little about what Adobe …

: URL aliasing After dealing with a few of the gigantic URLs to SharePoint documents in e-mail, a custom version of …

: Outlook Lookout While I wait for Google to fix their desktop search bug, I’m using Lookout (version …

: Google Desktop Bug It looks like Google Desktop 5.5 has a bug that prevents users from opening forwarded e-mail …

: A brief note on version control, labeling, and deployments One thing I didn’t realize about CruiseControl.NET until recently was that it automatically …

: Exposing InnerException This week, an application I work on started logging an exception that provided no help at all in …

: App_Code: Best In (Very) Small Doses When I first started developing solutions on version 2.0 of the .NET Framework, I saw examples that …

: First earthquake I was at the San Jose Airport waiting on a flight to Los Angeles when this earthquake hit. It …

: Chocolate Sunday at Cacao Anasa I spent a few hours this afternoon making chocolate at the Cacao Anasa kitchen. My friend Peter …

: Defending debuggers (sort of) I came across this post about debuggers today. I found it a lot more nuanced than the Giles Bowkett …

: What tests are really for Buried deep in this Giles Bowkett post is the following gem: "Tests are absolutely not for checking …

: Quick fix for "Failed to enable constraints" error If you use strongly-typed datasets in .NET, you’ve encountered the dreaded “Failed to …

: Multiple meanings of test-driven development This Roy Osherove post surprised me because I hadn’t been aware of so many different …

: Reactions to inherited code This entertaining Phil Haack post on inherited code definitely tells the truth when it says: "Here’s …

: Between in T-SQL isn't truly inclusive for dates I’d forgotten this when writing a stored procedure to provide access to log entries in a …

: Theory D or Theory P? Earlier today, I came across this excellent post by Reginald Braithwaite on the management of …

: I really hate SQLDataSource What I said about hating ObjectDataSource doesn’t count. SQLDataSource is worse. At least …

: Don't forget to Google prospective hires One of my colleagues reminded me of that today. The developer we’re interviewing tomorrow was …

: NCover goes corporate I was on vacation when this happened, but NCover has become a product you pay for. The rationale for …

: Lessons from failure It’s an older Reg Braithwaite post, but an excellent one. His four most important causes of …

: Back from vacation While I haven’t made much headway on my other four resolutions for 2007, I just accomplished …

: I hate DTS I’ve spent a good chunk of this week trying to revise some DTS packages to account for changes in …

: Windows Software "Best Of" Lists Scott Hanselman updates this list every year. I use 4 of his top-10 utilities on my work laptop (my …

: Universal vs. Apple on DRM-free Music A very interesting take on Universal offering DRM-free music directly instead of through iTunes. I …

: Improving developers Scott Hanselman posts a number of great tips for improving development teams. The technical brown …

: To rewrite, or not to rewrite? This question comes up rather often in my job, and this post by Adam Turoff answers the question by …

: Leading by example I found this post on technical leadership particularly useful because it’s my role at work. …

: No parameterless constructor defined for this object. This error message started showing up during testing of some code changes I made to an application. …

: Die patent troll, die! Thanks to Judge Dale Kimball, we may finally be rid of SCO. Since he ruled that they never owned …

: Refactoring An excellent post by Julian Bucknall of Developer Express on refactoring–more specifically the …

: SQL Server Table Properties I needed a T-SQL statement to get the created date of a couple of tables as part of a project. One …

: Jeremy D. Miller on Software Teams His top three preferences in brief: internalized discipline over externally-enforced discipline …

: Is Fit Testing Dead? Jeremy Miller asks that question in this post. I haven’t had a chance to use it on any …

: Implementing IDisposable One of the FxCop rule violations I found in one of my projects had to do with IDisposable not being …

: Comma-delimited strings in SQL with COALESCE I came across a nice how-to post this morning. When it comes to databases, I’m a fan of …

: ALT.NET-->NOT.NET? I came across this James Avery post via Mike Gunderloy’s blog. Avery attempts to make a …

: Strongly-typed datasets and queries without matching select clauses I learned an annoying lesson about these late last week. I’d created the dataset by dragging …

: Programming Language Wars Scott Westfall, a member of the SlickEdit development team, weighs in with three “theorems of …

: Subversion and Team Foundation Server There’s a Codeplex project that enables developers to use their Subversion clients with Team …

: Ruby on Microsoft This piece by Martin Fowler interests me more for his contention that the best technical leaders are …

: "Rails.NET" Revisited It’s been almost a year since I learned about the .NET Action Pack. Since then, the project …

: Fun with Settings.settings Apparently this is where Visual Studio 2005 stores connection strings when you add strongly-typed …

: My 2 cents on the iPhone This Sunday’s Opus comic strip captures the hype perfectly. I did get to play with one for a …

: Unlocking Value at Microsoft I came across this article, via a post from Mini-Microsoft. I wouldn’t necessarily expect a …

: Validation for Windows Forms I don’t do much WinForms work. So when I was trying to find out how to get the equivalent of …

: VSS Shadow Folders We still use Visual SourceSafe at my job for version control. I inherited the administrative duties …

: .NET Utility Classes I just came across this great post on overlooked .NET utility classes. I prefer to buy functionality …

: Guiding principles for developers This list comes courtesy of Patrick Cauldwell, an architect at Corillian Corp. I’m definitely …

: Slimming down the FxCop rule set I asked a group of consultants currently working in my office for advice on which FxCop rules were …

: Safari on Windows I’m trying it out on my laptop at work to see how I like it (I’m all Mac at home now). …

: Index Seeks versus Index Scans We were pointed to this blog entry by one of the DBAs at work today. I didn’t fully understand …

: Use code coverage Eric Sink wrote this post in favor of code coverage. I wasn’t terribly familiar with the …

: Requirements Eric Sink’s post on requirements is the best and most concise treatment of the subject …

: TFS: Scenario Coverage Analyzer We use TFS at work, so I found this blog post on scenario coverage rather interesting. I especially …

: I hate ObjectDataSource They’re ok if all you want to do is display data in a GridView control (and sort it, page it, …

: A use for XCode that has nothing to do with writing software I came across an old MacWorld tip while searching for a quick way to compare an iTunes folder on a …

: Richard Stallman on Software Patents I came across this opinion on software patents via the programming reddit. It makes a great for why …

: Quick Data Access Layer While trying to find information on what exceptions a table adapter could throw, I came across this …

: The Obsolete Attribute One of the consultants I work with told me about an alternative use of the Obsolete attribute last …

: Don't Derive from ApplicationException According to this blog entry (or rather, the annotations), deriving from Exception is the correct …

: Hackers and Fighters I found this post on "street programmers" and computer scientists quite interesting because I manage …

: .NET Progress Bar I’d managed to avoid all .NET WinForms work of any consequence until today. We’ve …

: Microsoft vs. Open Source--Don't Worry That’s the gist of this rather comforting post at groklaw.net about Microsoft’s claims …

: UML Sequence Diagrams Intro I came across this link on UML sequence diagrams via Mike Gunderloy’s blog. While the site is …

: Another MacBook Pro Owner I picked up my Intel Mac last week. It will soon replace the Mac mini I bought in February 2005, and …

: Resetting passwords with .NET membership provider Say you have a user with no password question and answer. It turns out that calling ResetPassword() …

: Classic OO Anti Patterns I started reading programming.reddit.com not long ago. Today, I came across Classic Oo Anti …

: GUID vs. Identity Column for Primary Keys From the time I started using databases (Sybase 10, Microsoft SQL Server 6.5), I’d always used …

: Recursive FindControl with Generics Came across this via Larkware. I’ll have to make sure this code finds its way into our custom …

: Unit testing framework for BizTalk solutions I didn’t know such a thing existed before today, but thanks to a couple of consultants in my …

: Unit testing assemblies with internals How do you unit test an assembly if the vast majority of its methods are declared …

: A rant on programmers who can't program I came across this post today and wasn’t sure what to make of it. In my current job and my …

: Working with virtual machines A few weeks ago, my employer updated the RAM on a bunch of our machines to 2GB. The reasons was so …

: What Makes a Good Software Developer? TSS.NET posed this question in one of their newsgroups on March 1. Here are the comments I added to …

: App_Offline.htm I came across a couple of useful posts from Scott Guthrie about App_Offline.htm. This page appears …

: The Honest Boss Some friends of mine on a mailing list I belong to are having an interesting dialogue on ways to …

: SQL Server Cursors Personally, I dislike them. I avoid using them whenever possible. But I came across this excellent …

: Getting rid of ThreadAbortException We came across this on one of my current projects. It didn’t prevent the application from …

: ApexSQL Diff I first heard about this tool from my friend Greg at work. I’ve been using it the past couple …

: Daimler-Chrysler: Another Failed Merger? Today’s news brings word that Daimler may be looking to break up with Chrysler. I find this …

: Short circuiting in .NET Last week revealed an interesting difference between C# and VB.NET. C# operators like …

: New Monitor (At Last) I’ve been using a 19" Hitachi CM751 monitor for a long time–until today. FedEx …

: Agile vs. Waterfall It seems clear enough to me which approach is the best way to develop software, but not everyone in …

: Visual Studio 2005 Default Browser Changes I’m a big fan of Firefox. So it’s the default browser on every machine I have access to. …

: Coding Guidelines Another free e-book, this time on C# and VB.NET development standards. Fair warning, you do have to …

: Free .NET Book Charles Petzold has written a book titled .NET Book Zero. It’s a guide to implementing …

: Sandcastle Rant I came across this excellent post on the problems with Sandcastle, the Microsoft offering for …

: More on VSI files A bit of “googling” turned up these links: An MSDN entry on the subject This link to a …

: Visual Studio Templates for Test-driven Development I came across this blog post earlier today via Mike Gunderloy’s Larkware.com. One of the …

: India Skills Gap I came across this article in one of the e-mail newsletters I subscribe to. It’s highly …

: Yet another xUnit testing framework I wasn’t aware of the existence of SPUnit until a consultant mentioned it yesterday. I’m …

: Visual SourceSafe Tidbit I administer my employer’s VSS and Team Foundation Server (TFS) instances as part of my job. …

: The SHAPE command is the bane of my existence I inherited some classic ASP code not long ago that needed some enhancement. The look-and-feel of …

: 10 Years I was in the middle of writing my self-evaluation for work (review time is coming up) when I …

: Goodbye 2006, Hello 2007 First, to my readers (all three of you), I hope that 2006 treated you well and that 2007 is even …

: More on databases and business logic This particular entry in the “forever war” of whether to use object-relational mapping …

: Source Code Control I came across this post from Joel Spolsky last week (though I’m just now getting around to …

: Common causes of the System.NullReference exception I came across this blog post today while researching a problem with one of our applications. The …

: Working with IT agencies I have to deal with IT agencies a lot more now as a software development manager than I ever did in …

: Training IT managers I came across this post in a rare break between meetings. Since I’m an IT manager now, I found …

: The right penalty for breaking a software build Maybe I should institute this at my office on Monday.

: String.Format is your friend One of the consultants that works for me was trying to figure out the best way to format strings for …

: SQL Injection It’s one thing to know that SQL injection is bad, and quite another to have some stats to back …

: NDbUnit I’ve been a big fan of test-driven development (and unit testing) since I first learned about …

: Home computer backups Some friends of mine in California have been discussing backup strategies over the past few days. …

: Continuous Integration The practice is well-defined in a couple of articles on Wikipedia and on Martin Fowler’s …

: Stop users from double-clicking Submit buttons I came across this tip via 4GuysFromRolla.com. It’s some JavaScript to disable a form’s …

: Leaving Lockheed Martin I’ve left to join APS Healthcare as a manager of software development. My last day at Lockheed …

: Aston-Martin & Jaguar Changing Hands There’s been quite bit of buzz in the press about the possibility of Aston-Martin (and …

: Why Unit Test I came across a great post on unit testing today that provided not just why to unit test, but what …

: MyGeneration and Gentle.NET After last week’s post about the stored procs vs. ad-hoc SQL debate, I decided I’d take …

: Inspired by Ruby on Rails Instead of vegging out on TV after work today, I decided to veg out on the web. Between reading and …

: Visual Studio 2003 Service Pack 1 Somehow I completely missed this announcement about the Visual Studio 2003 service pack being …

: Stored Procedures vs. Ad-hoc SQL Redux I’ve written on the never-ending stored procs vs. ad-hoc SQL debate before, but there are …

: C# versus VB.NET I decided to post on this topic today because of an article I saw on the printer at work this …

: Open Source on the .NET Platform (part 2) Back in April, at the end of my first post on the topic of “open source .NET”, I’d …

: Downtime I haven’t blogged in awhile since finishing my latest project, pushingback.com. My employer …

: ASP.NET 2.0 Membership Today I’ve been spending a bit of time fiddling around with Visual Studio 2005, particularly …

: Effective Bug Reporting This has been a real problem at work lately. I’ve decided to write a document to send to …

: Community Server 2.0 Quick Image Buttons The blog I’m building for a client at work needed an image button to trigger searches instead …

: A "Most Viewed Blog Posts" control for Community Server 2.0 The Code Project is one of my favorite sources for finding out how to do things on the .NET …

: Adding static pages to Community Server 2.0 I was actually searching for information on how to add dynamic pages to a Community Server 2.0 …

: Changing File Upload Limits in Community Server 2.0 I wanted to see how much effort it would take to replace this RSS feed with a CS 2.0 blog. …

: Browster I came across a story about this nifty little plug-in just this morning in MIT Technology Review. …

: Windows Vista: The Incredible Shrinking OS According to this article, Windows Vista is losing yet another feature. Reading further, PC-to-PC …

: RSS Publishing It shouldn’t be a big deal at all with apps like Community Server 2.0 or WordPress available, …

: Dad wants an MP3 player, but not an iPod :-( Since I own 2 iPods (the 2GB nano that came with my new Passat, and a 20GB I bought myself), I hope …

: ASP.NET Calendar Customization My latest assignment is to help redesign this website into a true blog for the office of the drug …

: A general theory of design “Design consists of creating things for clients who may not know what they want, until they …

: Community Server 2.0 Patching Telligent sent out an e-mail last Friday afternoon about a critical security patch. These were the …

: Paging in Microsoft SQL Server stored procedures Today I found out that an old boss of mine at Ciena Corporation has a blog (thanks to Plaxo). I …

: IntelliSense for SQL Query Analyzer Red Gate Software is giving away a tool called SQL Prompt until September 1, 2006. If you work with …

: Amazon "1-Click" Patent Challenge According to this article, Amazon’s patent is being reviewed because it looks like the U.S. …

: Stored Procedures vs. Ad-hoc SQL I saw this insightful article on the subject in a “most popular articles” list. The …

: Apple's business model beating Microsoft's So says Walt Mossberg, the man with the job I envy most in technology. I agree with what he says for …

: Removing time from a datetime field in SQL I’ve got a small project at work that required me to use the date, but not the time in a …

: ASP.NET Configuration File Handling One of things I like the least about working with multiple development, QA, and production …

: Downside of Certification According to this eWeek article pay premiums for skills that don’t have a certification grew …

: Amazon.com and A9.com switch to Microsoft Search I hadn’t noticed this until yesterday, but Google is no longer the guts of A9 & Amazon …

: Mac OS X gets its first virus According to this article in MIT Technology Review, the Apple operating system got it’s very …

: .NET Social Security Number Validation Writing code for work on a Sunday is certainly not my idea of a good time. Especially when our …

: Ether Beta Test Awhile back, I read a blog entry (probably from Robert Scoble) about a venture called Ether. If …

: VS.NET 2003 Annoyance VS.NET really annoyed me today. When I changed my custom page base class to be abstract, the web …

: Ads coming to iTunes I came across the article today in Advertising Age (via a Wall Street Journal link). The article …

: Open Source on the .NET Platform (part 1) Open source on the .NET platform is a topic I’ve been thinking about for awhile. My current …

: First bilingual application In the nearly 11 years I’ve been writing software for real money, I haven’t had any …

: We need heroism These are the words I least want to hear, especially when it comes to my job. I heard them today …

: Akismet Rules Akismet is a ruthless comment spam killer :-) Moderating comments is super-easy now (since I’d …

: iPodding my car (part 3) According to Antwerpen VW, Volkswagen says that the way the iPod adapter hooks into the stereo …

: Buying my car I should have written this back in February, since I don’t have nearly as many recommended …

: iPodding my car (part 2) The ugly continues :-( The sound on the satellite radio is back, but now some information on my …

: iPodding my car Last month, I bought a new VW Passat from the folks at Antwerpen VW (who gave me a great deal on a …

: The acquisition continues Lockheed Martin’s deal to buy Aspen Systems was finalized back in February, but until this …

: Windows Live Again This morning I came across an article that asks whether Windows Live is better than Google. I …

: Blogging and Podcasting for ONDCP Yesterday, I gave a presentation at the RSS, Podcasts, etc! workshop along with a colleague. Our …

: .NET User Groups are Good Before yesterday, I didn’t know what I was missing. I’d always gained my knowledge about …

: Bosses 'are deluded' over success of deals An interesting title for this story I read in the Times this morning. The acquisition of my current …

: What Corporations Know About Us This morning, when I was listening to the umpteenth radio story about the Justice Department …

: Advice from Warren Buffett Buried deep in this article about the dangerous size of the U.S. trade deficit was this bit of …

: 32 Today is my 32nd birthday. To me, it doesn’t seem like a particularly special birthday. It …

: .NET Development Tools Richard Slade came up with a great list of free tools he thinks .NET developers should be using. I …

: Ruby on Rails Progress I finished Curt Hibbs' first Rolling with Ruby on Rails tutorial today. After getting phpMyAdmin …

: Trying out Ruby on Rails I made it one of my resolutions to learn Ruby this year, so I took a bit of time yesterday and today …

: Who got money from Jack Abramoff The entire list is here. It includes how much he gave and when.

: Goals for 2006 Improve My Health Exercise 3 times a week Cook 3 times a week Maintain My Hobbies Shoot 36 film …

: Teaching the Clinton Presidency I admit it–I’m a C-SPAN junkie. The purpose of the open phones topic this morning was to …

: Windows Live Beta vs Google Homepage My office gives us the day off tomorrow, but it’s pretty much a ghost town already. I had a …

: Busier Ads from Google :-( This article from the NY Times (free subscription required) tells us that those of us who use Google …

: Acquired Last Friday, just before the end of the day, I found out that my current employer had been acquired. …

: Skiing Yesterday, I got on a pair of skis for the first time since 8th grade. A friend and I went to Wisp …

: Microsoft doesn't get Test-driven Development That’s what Scott Bellware contends in this blog post. He does a very thorough job of explains …

: Gmail signature graphic I came across an application that generates signature graphics for Gmail, Yahoo, and other e-mail …

: When clients (and bosses) go bad ... I came across this article via the Signals vs. Noise blog. While the entire piece is 100% on target, …

: Bush's Latest Appointment: Harriet Miers Trying to find some information about Bush’s latest appointee to the Supreme Court, I found …

: Debugging With two of the projects I’ve been working on finally out the door, I’ve finally got …

: $44.92 That’s how much it cost me to fuel up the Volkswagen Jetta I drive today. $3.59 a gallon, and …

: Refugees? I was listening to C-SPAN on the way into work and one of the callers had an interesting question: …

: Taking Time to Think Came across this blog post via digg.com. The management tips seem quite reasonable in isolation. But …

: A Leap of Faith I had a chat with a former co-worker at Ciena Corporation yesterday. I was surprised to discover …

: Robin Curry - AJAX and ASP.NET Resources When my employer moves to the latest version of VS.NET, this article will get a lot more …

: VB.NET Coding Guidelines My current project is the first one where I had to write a substantial amount of VB.NET code (I …

: 4GuysFromRolla.com - Retrieving the First N Records from a SQL Query Our development team found this article quite helpful during development of a custom portal. …

: Housing Bubble Burst? Paul Krugman seems to believe so. Check out his complete column in the New York Times online (free …

: 188 Megabytes All the papers, projects, PowerPoint presentations and spreadsheets of three years in the University …

: Map Hacking A friend of mine came across this page with a bunch of interesting googlemaps-related hacks. I …

: Bush Jumps into "Intelligent Design" Fray I wrote about “intelligent design” at length back in March. If anything it’s taken …

: Never expected to see a cellphone here ... I finally dragged myself to the gym for the first time in awhile. The combination of business school …

: Goodbye Blogger, Hello WordPress A quick note of thanks to the author of the illustrated tutorial, and Andy Skelton, the author of …

: Exceptions in .NET Hunting for best practices info on creating custom exceptions, I came across a post titled …

: Configuring multiple files in web.config I was hunting for information on security settings in web.config files when I came across this link. …

: Battle on Teaching Evolution Sharpens I first read about the Discovery Institute in a Wired magazine article last October. At the time, I …

: Fixing the C# IssueTracker SDK Beta My boss wanted to use it to track issues with projects we develop internally and for clients. So I …

: Giant Steps, Animated Came across this via Scobleizer (who came across it via Tim Bray). It's a recording of John …

: "Free" Project Management Software I was looking for information on the right way to modify the ASP.NET Issue Tracker starter kit to …

: Mac OS X Address Book Once I got over trying to import a CSV file into it (silly me), getting contacts out of my Yahoo …

: The mini has landed The Mac mini I ordered online back in February finally arrived tonight. The only real problem …

: "Free" Project Management Software I was looking for information on the right way to modify the ASP.NET Issue Tracker starter kit to …

: Why Your Broadband Sucks A good column by Lawrence Lessig on a problem with Wi-Fi access in the U.S. In short, lobbyists are …

: White House Turns Tables on Former American POWs I came across this story late, but it has to be one of the most bizarre and sad stories I've read in …

: More Mac mini Ideas 1. Make it a low-cost recording studio. 2. Make it a media center. I've already got a digital piano …

: Howard Dean: DNC Chairman Even though I haven't been a registered Democrat for some time now (switched to independent 5+ years …

: Cult of the Mac Membership++ About half an hour ago, I purchased a Mac mini. If you've read anything in the press about the "iPod …

: Gmail Invite Anyone? Google recently dumped 50 each on current members. I plan to donate some to our troops overseas, but …

: Blog Mapping I across a Scobleizer post about this and thought I'd give it a try: An interesting use of MapPoint …

: Three Paper Town? To the Washington Post and the Washington Times we can add another paper: The Washington Examiner. …

: Solution Spheres: How To: turn your Mac mini into a Media Center PC Some very interesting ideas on what you can do with a Mac mini.

: Yahoo! News - NFL Game Broadcasts Coming to iPods Interesting news for current and future members of the cult of iPod (I'm in the former category). I …

: Forbes.com: When IPod Sales Run Out Of Steam Not exactly a doom-and-gloom piece for Apple, but it does project a time when the gap between the …

: Social Security Formula Weighed (washingtonpost.com) If I'm reading this article correctly, it sounds like Social Security benefits are certain to be …

: Feasibility of Missile Defense This study from a trio of physicists does an excellent job of highlighting the incredible …

: DC Baseball in Doubt Whoever reads this should take my comments with a grain of salt. I've worked in DC on multiple …

: Unconventional Wisdom on Staying Put Instead of Off-Shoring This article from McKinsey Quarterly takes a look into why some companies continue to manufacture in …

: A Fight for Shiites You can read Charles Krauthammer's whole commentary to get the context, but he essential begins his …

: Situational Ethics Defined According to this article in The Hill newspaper, the House GOP will change a rule they enacted in …

: Gonzales' Secrecy Thing Eric Umansky, sometime author of Slate's "Today's Papers", gives another reason for concern about …

: Dispelling Malpractice Myths For anyone concerned about the state of healthcare in this country (which is probably just about …

: Loyal to a Fault? This excellent piece by Phillip Carter, author of the Intel Dump weblog, is a very worthwhile read …

: Yet Another Technology Plug--Bloglines Bloglines is a wonderful service that allows you to keep up with all your RSS feeds without having …

: My plug for Mozilla Firefox I've been using this browser since version 0.7, and it's great. No random pop-up advertising from …

: My 2 cents on the election It's easy enough to say it now, but I didn't see Kerry winning this election against George W. Bush. …

: Afghanistan, Iraq: Two Wars Collide Excellent analysis of the actions of our government in both countries.

: Next Stop: Iran? Dr. Cole seems to believe so. Read the whole post. It's worthwhile if only to get the historical …

: For Some Soldiers the War Never Ends Very interesting commentary on the Defense Department's use of stop-loss orders and activation of …

: Gen. Anthony Zinni's Remarks at the Center for Defense Information Board of Directors' Dinner He lays out a series of excellent ideas to be considered for solving the mess that Iraq has become. …

: Tax and Drill Now here's something you don't read every day--a conservative columnist arguing in favor of a …

: No Flinching from the Facts Very well-written column by George Will that touches on the actions at Abu Ghraib, the lead-up to …

: Moral Clarity, Courage Needed, Bush Aide Says From the article: America needs people who have “the moral clarity and courage to do …

: Casualty of War A fascinating piece in GQ about Colin Powell.

: How to get out of Iraq This feature by Peter W. Galbraith makes a compelling case for how the U.S. …

: The U.S. reaps a whirlwind in Iraq This article does a good job of laying out the mistakes that both …

: Iraq duty deters re-enlistment We can only hope this is a one-time blip instead of a signal of a …

: Moody's cuts Ciena Corp ratings to B2 This provides perhaps the best summary I've seen anywhere of …

: Our Last Real Chance Excellent column by Fareed Zakaria on how the situation in Iraq might be …

: Self-serving Gasoline Complaints Good column on the current debate over what to do about the high …

: Bush Admits Misleading Nation April Fools' Day column by Gregg Easterbrook.

: Killing Iraq with Kindness Excellent column on the unintended consequences of armed intervention, …

: O'Reilly, O'Franken, oh no! | csmonitor.com A thoughtful piece that talks about the downsides of …

: Avoiding attacking suspected terrorist mastermind This story from MSNBC indicates that the White …

: VoIP - Plan A vs Plan B Article by Clay Shirky on possible outcomes in the voice-over IP market. He …

: Radio Hosts to Pay for Lewdness I'm not sure how I feel about this. On the one hand, I'm not a Howard Stern fan. But if he didn't …

: Prosecutor in Terror Case Controversy Sues Ashcroft This can't be good news. Even with the expanded powers they've received due to the Patriot Act, the …

: Secret Report Warns of Iraq "Balkanization" Financial Times scoop on a secret report indicating fears of Iraq dividing into multiple regions …

: Bush on Meet the Press: A Rebuttal from Juan Cole Fantastic analysis and rebuttal to President Bush's statements on "Meet the Press" this Sunday. …

: The CIA: Method and Madness Ok column by David Brooks in the NY Times today about the problems with the way the CIA analyzes …

: Scott Ritter was Right All Along I heard him this morning on C-SPAN with Brian Lamb. It's very interesting that he was perhaps the …

: An Absence of Legitimacy Excellent commentary by Fareed Zakaria on what's happening in Iraq. The point that he makes at the …

: NASA Cancels Trip to Supply Hubble, Sealing Early Doom NASA Cancels Trip to Supply Hubble, Sealing Early Doom It figures. One of NASA’s most …

: The Troublesome, Vote-loving Ayatollah The troublesome, vote-loving ayatollah This story from The Economist covers a lot of ground on …

: Teach Yourself Programming in Ten Years Teach Yourself Programming in Ten Years Great essay by Peter Norvig that begins by talking about the …

: Fiber to the People Fiber to the People A Lawrence Lessig article on customer-owned networks. He uses examples from …

: USB FM Radio I wasn't even aware such a thing existed until my friend Rob told me about it. The one I bought is a …

: Stored Procedure Naming Don't name your stored procedures with sp_ I found the following note: Note: Do not preface your …

: Presenting Data and Information Presenting Data and Information (a 1-day course by Edward Tufte) I attended this presentation last …

: Presenting Data and Information Notes from Presenting Data and Information A basic Google search will reveal all kinds of pages of …