February 2007 Newsletter
In every adversity there lies the seed of an equivalent advantage. In every defeat is a lesson showing you how to win the victory next time. –Robert Collier
It is one of the most beautiful compensations of this life that no man can sincerely try to help another without helping himself. –Ralph Waldo Emerson
The growth of the human mind is still high adventure, in many ways, the highest adventure on earth. –Norman Cousins
All things are possible until they are proved impossible—and even the impossible may only be so, as of now. –Pearl S. Buck
You cannot build character and courage by taking away man's initiative and independence. –William Boetcker
This art of resting the mind and the power of dismissing from it all care and worry is probably one of the secrets of energy in our great men. –Captain J. A. Hadfield
Excess is the bane of pleasure, and temperance is not its scourge but its seasoning. –Michel de Montaigne
Do not wait; the time will never be just right. Start where you stand, and work with whatever tools you may have at your command, and better tools will be found as you go along. –Napoleon Hill
He that studieth revenge keepeth his own wounds green, which otherwise would heal and do well. –John Milton
Let us not look back in anger or forward in fear, but around in awareness. –James Thurber
Other people's opinion of you does not have to become your reality. –Les Brown
Progress, far from consisting in change, depends on retentiveness. When experience is not retained, infancy is perpetual. –George Santayana
It's not stress that kills us; it is our reaction to it. –Hans Selye
Most of our platitudes notwithstanding, self-deception remains the most difficult deception. –Joan Didion
Too many people are thinking of security instead of opportunity. They seem more afraid of life than death. –James F. Byrnes
People who have too much authority and not enough responsibility destroy. They are not productive. There should always be at least as much responsibility as authority. When you have that balance, you are moving in the direction of success. –Thomas D. Willhite
This Q&A with some experts recommends that organizations have an office to ensure that execution (e.g., day-to-day activities) are in line with the strategy. Interestingly, some of the statistics cited are that 95% of employees don't know their company's strategy and almost 2/3 of HR and IT groups have their own strategic plans that don't line up with the corporate strategy.
What would you say are the applications that changed the course of personal computing? Industry pundit Peter Coffee gives his take on this question with a walk down memory lane.
This annual survey rates CIO's customer satisfaction with 40 top IT vendors. The overall message to suppliers was that IT managers are disappointed and disgruntled with their performance.
The year is still young and everyone wants to keep the shine on. This slideshow gives a look at the seven deadly sins from an IT perspective with some suggestions on how to avoid them.
Implementing a development process and methodology is a difficult, long, and costly effort. Here are some pitfalls in deploying your process successfully and smoothly.
Even though IT has changed substantially over the last 50 years, some things remain fundamentally important. This author notes that good communication within IT and between IT and business and documentation and maintenance of business rules is foundational to IT success.
Requirements gathering and analysis is probably the single most important factor in a successful project. However, the requirements process is fraught with peril. Here are some common problems and solutions to them.
Instead of gathering requirements from users, this author says that project managers should instead negotiate the requirements with the customer including difficult discussions on the costs and trade-offs involved with the various requirements.
The head of Google's enterprise business says that "insane complexity" is preventing IT groups from supporting their business customers, because IT has to spend so much time and money on maintaining the existing environments. His suggestion is to outsource non-key functions.
The relationship between IT and business users and customers is key to IT success. This article discusses why and how IT can lose their superiority complex to improve the relationship.
In most workplaces, meetings are inevitable, but they can also be frustrating and draining. This brief list gives you some good ideas for making your meetings more useful. The first tip is my favorite: Avoid meetings! See this article for some additional tips on why a meeting is appropriate rather than other communications.
In this interview with Scott Rosenberg, one of the founders of Salon magazine, he discusses his new book about the process of developing software and why the existing culture of programming persists despite high costs and missed deadlines.
This excerpt from a new book about professional programming practices discusses how to look at the application from the user's perspective to help you anticipate errors and handle them appropriately. It explores how to balance error handling with the task of writing the main code.
A former top IT manager discusses why IT needs to express their value in the language of business and the impact that IT has to the company's operations instead of in terms of the technology.
This blog includes insights from the software testing group at Google. Most notably, it includes resources from their "Testing on the Toilet" initiative where they post tips to encourage better developer testing in the bathroom stalls on the Google campus. These guys are passionate about the professional testing discipline… And having fun too!
Many testers have concerns when getting involved with projects that use the RUP methodology. This article explores the testing perspective of RUP.
Computer scientist Andrew Tanenbaum says that increasing complexity in operating systems is behind the decline software quality and reliability. He suggests developing more robust, "self-healing" OSes.
This article makes a strong case for independent software testing and for development of software testing as a recognized IT discipline.
This article presents 10 concrete non-testing techniques that development organizations can use to reduce the number of defects in applications that they develop. While none of them are simple, they do offer measurable improvements.
This site provides resources for those planning to take the Certified Software Quality Analyst (CSQA) or Certified Software Tester (CSTE) exams. The site has links to a variety of resources, as well an active forum for discussion.
One of the basic tasks in design of a new system is to create an efficient database. Database normalization is the key to efficiency and scalability of the system. Here is a step-by-step guide for normalizing your data model.
This portal site provides an excellent and comprehensive list of resources for online education. The topics include online lectures, notes, and podcasts, many from top schools worldwide.
SQLinForm is an online Java-applet tool to format SQL code for many popular database platforms (Oracle, MS SQL Server, MySQL, DB2, and others). You paste in your raw SQL and it structures and formats it to line up table and column names, fix inline comments, and much more. Very handy when you are having difficulty understanding a query that threw together a long time ago.
This book chapter gives a detailed and comprehensive tutorial on how to aggregate results in SQL queries by using the GROUP BY clause.
This book excerpt gives detailed examples on Java file operations including copying and deleting directories and files, reading and writing JAR/ZIP files, Java object persistence with serialization, using Random Access File I/O, and writing text filters.
The command line Wget utility is one of the most handy and useful download utilities. This article gives you some interesting tricks for using it more effectively, including some neat scripts. And Wget is not only for Unix/Linux users; Windows users can get a version here.
As you know, I don't usually get into political topics in this newsletter, since I don't want to offend anyone. However, I'm making a rare exception in this case. I urge you to sign this online petition to release this young man. While I don't condone what he did (oral sex with another teenager), I think that the punishment is not commensurate with the crime, especially considering that he had not otherwise been in trouble. Likewise, I feel that his imprisonment will do nothing but perhaps harden him against the world. You can read more about Mr. Wilson's situation in this ESPN article.
The leader of study group on global job migration says that computer professional jobs are still a good choice, but the skill sets required are shifting from purely technical. From the article: "To ensure job security, students must learn business, communication and interpersonal skills, Vardi recommended. The personal touch will become as important as technological expertise, he said."
This diagram gives a comprehensive history of the evolution of popular programming languages, including which ones branched into new languages. See the main page for links to detailed history of the various languages represented.
Behaviorial-based interview questions are becoming more common and important in interviews, even for technical jobs. This article uses a 4-point system called STAR (S = situation, T = task, A = action, and R = result) to make sure that you appropriate prepare and answer these questions.
This article points out the apparent perception and credibility gap that exists between senior management and technology groups about the role and importance of IT in businesses. While I don't agree with all of the points, it does make you think about the message that our actions as technical employees send.
Almost everyone has one or two people that we just can seem to get along with no matter how hard we try. This post gives some simple, practical ideas for improving your relationship with these people, such as acting friendly and being grateful.
I recent study of over 700 workers shows that 2/5 of them said that their boss fails to keep his or her word. And 1/4 of them said that their boss lies to cover up mistakes.
On the heels of report (see above) that 40% of bosses don't keep their word comes news that many people in powerful positions lack emotional intelligence, are egocentric, and have trouble understanding other's points of view.
This insightful post offers some nice anti-patterns for reducing stress in your work and personal life. It provides some nice perspective on things and how "more" is hurting us.
Although frequently ignored, the way that you close an e-mail often sends some strong signals about tone of the entire e-mail. Not sure that I agree with all of the findings, but some interesting food for thought since e-mail is such an important part of business and life.
This count is only for facilities-based customers and doesn't include users of free services like Skype. Vonage claims 1.7 million users and Time Warner Cable 1.6 million.
Analysts expect VOIP focus to change from cost reduction via converged voice and data over IP to improving productivity and creating new business applications that incorporate voice to generate new streams or enhance customer service in 2007.
PeaZip is a new free, open-source archive manager and extractor. In addition to supporting its own archive type called PEA that supports fast, single-pass archiving, it also supports 7-Zip, ZIP, Bzip2, TAR, CHM (Windows compiled HTML Help), RAR, and many other formats. It has an intuitive, user-friendly GUI and can even integrate with Windows Explorer.
Rumshot is a unique Windows screen shot utility. In addition to allowing you to save your screen shots in a variety of formats, Rumshot automatically adds borders/frames to the image. You can even download additional border themes, including postage stamp styles and more. It supports multiple monitor configurations and window transparency.
SQL Uniform is a cross-platform (Windows, Linux, etc.) database GUI front-end that supports a wide range of database servers, including Oracle, MS SQL Server, MySQL, SQLite, and many, many more. It is a Java (JRE version 1.4.1 or later) application and connects via JDBC drivers.
The Sysinternals Suite provides a single package of some of the most popular and useful of the Sysinternals tools. It does not include the non-troubleshooting tools, but many of the perennial favorites, like ProcessExplorer, RegMon, and BGInfo, are included.
Omea Pro is a multifunction information "dashboard". Originally developed as an RSS/Atom feed reader, it integrates (very well!) other functions such as Usenet/NNTP news reader, bookmark management (including viewing bookmarked web sites), instant messaging, and much more. It is a one-stop shop and all of the features fit together intuitively. (Although the Pro version is free, you must obtain a registration code from the web site.)
This Excel-based calendar for 2007 gives you a contiguous weekly view, which is excellent for ad hoc, on-the-fly planning discussions. It tends to give a more realistic view of time than standard monthly calendars. See this article for details behind the philosophy and how to use it.
EcSplorer (Eclipse Simplified Explorer) is an Eclipse plug-in that allows you to do file management from within the Eclipse IDE. It includes FTP client for loading files remotely, batch processing tool for the execution of long or repeatable tasks, and grep and find functions in the file system.
This is a small (~12kB!) pure Java RSS feed ticker. You must configure it manually via the included sample preferences.xml file, but it is very full featured. You can click on feed items displayed in the ticker to display them in your browser.
With just a few clicks, you can tile (or cascade) two or more desktop windows to make comparisons easier. Just select the first window on the taskbar. Then press and hold <Ctrl> and right click on the taskbar button for the other window and select Tile Horizontally, Tile Vertically, or Cascade from the context menu.
Entries from an annual contest for strange product warning labels. The 2007 winner is a Laundromat washing machine warning that says, "Do not put any person in this washer."
I've never really gotten into genealogy, but as I get older, understanding my ancestry is becoming more important. Geni is a nice web-based application building a family tree. You enter your information and build as much of the tree as possible, including e-mail addresses. Then others in the tree will be notified and can fill in other parts of the tree.
A new take on the classic comic about the views of a project from a variety of perspectives, updated for the web era.
This guy is developing a comic book (or, as my son informed me, graphic novel) version of Orwell's classic dystopian book 1984. So far, the first two chapters are complete, but he is adding more.
Everyone sleeps! But how much do you really know about sleep and its importance to your health? Here are some truly interesting facts about sleep.
LEGOs have always been (and still continue to be!) one of my favorite toys. They are simply fascinating. This article gives some of the history behind them and nice slide show of the manufacturing process.
If you made a new years resolution to spend less time on the computer and more time working out, but it just hasn't happened, then this site might have just the remedy. It's a modified version of Tetris that is connected to weight training gear. You use the weight training gear to control the game.
Colbert takes a tongue-in-cheek (as usual!) look at AT&T's decision to stop using the Cingular brand in favor the AT&T Wireless name.
If you are worried about mind control, then make sure you check out this impenetrable brain defense! And in case you are still skeptical about alien mind control, then be sure to listen to this report.