Problems worthy of attack prove their worth by hitting back. –Piet Hein
A man should never be ashamed to say he has been wrong, which is but saying in other words that he is wiser today than he was yesterday. –Alexander Pope
It is a capital mistake to theorize before one has data. Insensibly one begins to twist facts to suit theories, instead of theories to suit facts. –Arthur Conan Doyle
Technology is dominated by two types of people: those who understand what they do not manage, and those who manage what they do not understand. –Putt's Law
The act of writing a unit test is more an act of design than of verification. It’s also more an act of documentation than of verification. The act of writing a unit test closes a remarkable number of feedback loops, the least of which is one pertaining to verification of function. –Robert Martin
New information from Forrester Research indicates that project management offices (PMOs) intended to oversee multiple IT/business projects often fall short of goal of keeping projects aligned and on track, because the offices spend too much time providing reports to senior management.
System requirements defined by the users are one of the linchpins of a successful application development effort. This article outlines some best practices to ensure that requirements are captured and managed correctly.
Many organizations talk a lot about how business and IT strategies are aligned and they do much planning to ensure that. However, following up and verifying that alignment continues is more difficult.
A recent analysis of the open-source Java-based Tomcat application server application indicates that has approximately same defect rate as comparable commercial products. The most telling part of the analysis is that it indicates that Java applications suffer from the same problems as similar C/C++ applications, including null-pointer problems.
This article reviews the test-driven development (TDD) approach which puts creation of tests at the front the development process and promotes testing throughout the development effort to help find problems earlier. The article makes the case that independent test is still important, but that it can focus on the truly valuable testing instead of problems with basic functionality.
Brief Infoworld interview with Brian Marick of Testing Foundations about the history and advancements in software testing philosophy, methodology, and technology.
This is an online version of one of the seminal object-oriented development textbooks. The book covers the basics of OO analysis, design, and implementation and is language neutral. Good introduction to the topic.
This site provides overview descriptions of the 100+ services that are included in Windows 2000. While the focus of the article is on Windows 2000, most of the information is equally applicable to Windows 2000 Professional. The summary is also available as a downloadable Word document.
Instead of trying to be another job posting site like Monster or Dice, SoftwareJobLink is cast a “job search engine”. Essentially what it does is index job posting sections of web sites of hiring companies. While the number of jobs listed so far is small, the concept seems good. And, if you’re looking for a job, it might be just what you need.
This site provides links to over 100 free online technical texts. Their authors host most of the linked books. Most books can be downloaded and printed at no charge for personal/private use. Categories include programming and scripting languages, operating systems, and traditional computer science topics.
Most people believe that they are good listeners. This article provides some techniques to evaluate and improve your listening skills to improve interactions with others.
Everyone has to deal with some negativity on the job. But when does the run-of-the-mill negativity turn into “toxic negativity” that affects morale and productivity? This article explores this topic and a follow up article (second link) looks at some of the highlights of feedback to the original article.
STrace is utility to monitor all of the system calls that Windows program makes. It is similar to the Unix strace (or truss) command. This utility allows call filtering by category or individual call name. Very helpful for determining file and registry I/O calls made by an application.
Context Magic adds some very useful features to the Windows Explorer (shell) context (right mouse click) menu to speed your work. Features include copying the selected file’s name to the clipboard, opening the file with a variety of common editing utilities, copying or moving the file(s) to any folder, and creating shortcuts on the desktop or the Start menu.
WinMerge is a visual file and directory comparison tool. It shows side-by-side comparisons of files and directories and allows merging and reconciliation of contents of files and directories. Other features include multi-level undo/redo, syntax highlighting, and an integrated text editor.
MouseWrap is a utility that removes the “edges” of your windows desktop and allows your mouse cursor to wrap from one edge to the other. Thus, if you move the cursor below the bottom of the desktop, it reappears on the top. Likewise moving it off of one side causes it to move to the other side. Very handy!
Consulting firm Deloitte & Touche presents this utility that analyzes “marketing” language in your reports and presentations and offers suggestions for replacing it with more plain, lucid words. Use of the tool on documents from Enron showed that as the company descended further into trouble, its vocabulary became more elusive, as well.
There are a number of third-party defragment utilities for Windows 2000, but Windows itself has a quite capable, built-in defragment program. To access the utility, open the Run dialog (Start | Run…) and enter dfrg.msc and press <Enter>. (While you’re at it, you might as well create a shortcut to this utility.) The Disk Defragmenter utility is mostly self-explanatory and has a basic help file. For additional information, see Microsoft Knowledge Base article 227463. For a handy utility that allows you to schedule the defragmenter to run automatically, see AutoDeFrag.
If you create a new document in MS Word that has a table as its first element, it can be difficult to later add text, such as a title or heading above the table. To “move” the table so that text can be entered above it, place the cursor in the first cell (top left) of the table and press <Ctrl>+<Shift>+<Enter>. This inserts a blank line above the table.
A very interesting Flash animation in which an egg rolls around the screen and then sprouts legs and morphs into all kinds of different shapes. It even splits into multiple objects. All around a very creative little ditty.
This site is not a hoax. It is a real site about people who climb mountains, scuba dive, etc. in order to iron their clothes. It’s incredibly funny!
This spoof on the technology outsourcing craze is hilarious. For just pennies per hour, you can hire a chimp or orangutan to do your mundane programming tasks like scripting and report writing. The site is so well done you might be convinced that it’s for real, but it’s not.
This web site presents the entire works of Shakespeare (hence the name BardCode) in bar code format. Very interesting, but I couldn’t make heads or tails of it! ;)