Stories by Bob Brown, IDG News Service staff