We are continually faced with a series of great opportunities brilliantly disguised as insoluble problems. –John W. Gardner
Any fool can criticize, condemn, and complain—and most fools do. –Dale Carnegie
The measure of success is not whether you have a tough problem to deal with, but whether it is the same problem you had last year. –John Foster Dulles
Authority without wisdom is like a heavy axe without an edge: fitter to bruise than polish. –Anne Bradstreet, poet (1612-1672)
To avoid criticism do nothing, say nothing, be nothing. –Elbert Hubbard
Current research shows that weak IT budgets are not only reducing the number of projects, but also how projects are carried out.
Navigation of a complex (or even a simple) web site is extremely important. This site discusses some of the various techniques using well-known examples and provides ideas for selecting the best mix for your site.
This article provides a good overview of the history of and reasoning behind the various agile methods of software development (extreme programming, etc.). This is a good introductory article for those who are unfamiliar with these techniques. This article is a summary, but it has a link to the full report.
Neal Stephenson’s classic treatise on the importance of good user interface design. He discusses some of the esoteric principles that make certain user interface designs good.
This article discusses four basic principles that IT departments need to follow to deliver good services and systems to their business customers. The principles revolve around the answer to the question: Which of our I/T projects, systems, and people would we want to “buy” if we were outsiders in the process of building an I/T department from scratch?
Many companies are starting to emphasize the importance of software quality, because of the direct impact that buggy systems have on the bottom line. This article examines the specific reasons for this renewed interest.
This site is a daily (or almost daily) update on wide variety of bugs and security vulnerabilities in applications and operating systems. While some items have links to solutions or workarounds, the list is mainly just a “laundry list” style compendium of problems. However, the site can be instructive in terms of considering the types of problems that may occur with an application.
Buffer overflow (a.k.a., unchecked buffers) are malicious hackers’ tool of choice for remote server attacks. The nice introduction explains, in non-technical language, what these problems are and how to avoid them. The article includes a step-by-step example of how this problem is exploited.
This is an online version of the previous version (3rd edition) of the classic O’Reilly Java in a Nutshell book. Although a newer print edition is available, this online version is an excellent beginner’s reference for learning the basic constructs and syntax of the Java language. The book is easy to read and has a plethora of good examples.
The Session Initiation Protocol (SIP) is one of the foundational protocols for Voice over IP (VOIP) as it controls call setup and teardown. This article gives a good overview with some of the technical details, without getting too bogged down in the technology.
Paul Glen, author of a new book on management of technical people called Leading Geeks, discusses some principles that managers must take into account when dealing with technical workers. Article includes a link to download one of the book chapters concerning the things that motivate professional staff.
Negativity on a project team is often a symptom of a larger issue. This article examines how to get to the root cause of the negativity and offers some ideas to resolve the problem.
XML (Extensible Markup Language) is the new lingua franca of the data exchange on the Internet. XmEdiL is a very capable native XML editor. It includes support for validation against DTD schemas and even supports HTML editing, plus custom syntax highlighting. The design is powerful, yet simple.
Although plenty of Windows Explorer replacements are out there (My favorite is A43.), fully escaping from using Explorer is next to impossible. DMEXBar3 is a nice add-on to Explorer that includes a toolbar with functions such as assigning a drive letter to a folder (similar to the SUBST command), using filters to select files, displaying multiple Explorer windows as either vertically or horizontally tiled, a “favorites” menu of commonly used folders, quick changes of file attributes and date/time, and many more. Very versatile and well integrated with Explorer.
Google Viewer displays results of your Google search in a scrolling window. The delay between display of new results can be set and the interface has CD player-like controls to stop and advance forward between results. In addition, a frame in the result window displays the target of the result as a “preview”.
MyIE2 is a tabbed-browser shell for the Internet Explorer engine. Although there are many tabbed browsers now available, MyIE2 is one of the best. It features built-in pop-up blocking, which is very configurable, is very lightweight and fast and has many options to make Web browsing easier. Highly recommended! (Note: Download the “lite” version unless you need the extra skins. Skins be added later.)
Occasionally, when trying to shut down (or restart) a Windows system, the system seems to just hang and never shut down. Often the problem is that Windows is waiting for an application to respond to the request to shut down. Sometimes misbehaving applications never respond to this request. A quick registry update can allow Windows to terminate these applications. To do so:
(1) Open the Registry Editor. (Start à Run à regedit.exe.)
(2) Navigate to the HKEY_USERS\.DEFAULT\Control Panel\Desktop branch of the registry.
(3) Locate the AutoEndTasks key and change its value to 1.
(4) The default amount of time for Windows to wait before a task is terminated is 20 seconds. This time out can be changed by modifying the WaitToKillAppTimeout key (in the same branch). This value is the number of milliseconds to wait. For example, changing this value to 5000 will result in Windows waiting 5 seconds before terminating non-responsive applications.
Having to switch from the keyboard to the mouse for some action can waste time. In MS Outlook, use the following shortcuts to browse up and down in the list of messages or other items in any folder, such as the Inbox. Use <Ctrl>+. to go to the next message and <Ctrl>+, to go to the previous message in the list. Remember that if you have the Preview Pane displayed, pressing <Space> pages down through the previewed message and <Ctrl>+<Space> pages up.
This site, sponsored by the Institute for Electrical and Electronics Engineers (IEEE), provides a quite fascinating look at the history of electricity, electromagnetics, and electronics. The site is well organized and is based on “exhibits” that take an in-depth look at a particular topic, such as the development of residential electrical service.
GeoURL is a location-to-URL reverse lookup service. It allows you to find a web site URL (according to host server) by proximity to a specified location designated by its longitude and latitude. The site also has a list of “recently added” servers for which you can check for “neighbor” hosts.
This site provides an online emulator of the original Nintendo Entertainment System (NES) with 48 classic games, ranging from Galaga and Dig Dug to Xevious. On a high-speed connection, play is quite good.