Up to Newsletter Index

September 2007 Newsletter


Quotable Quotes


To gain respect, begin by respecting yourself. Live up to your word. Do not, under any circumstances, go against that in which you believe. Do not exploit others. And, most importantly, start to love, wishing good and success to everyone you meet.  –Thomas D. Willhite


Anger, if not restrained, is frequently more hurtful to us than the injury that provokes it.  Lucius Annaeus Seneca


The vast majority of human beings dislike and even dread all notions with which they are not familiar. Hence it comes about that at their first appearance innovators have always been derided as fools and madmen.  Aldous Huxley


Power lasts 10 years; influence not more than a hundred.  –Korean proverb


Doubt comes in at the window when inquiry is denied at the door.  –Benjamin Jowett


To be a leader is to take responsibility for outcomes...good, bad or indifferent.  This, more than any other characteristic or trait, is the mark of a leader.  –Thomas D. Willhite


To think is easy. To act is difficult. To act as one thinks is the most difficult.  –Johann Wolfgang Von Goethe


The way a team plays as a whole determines its success. You may have the greatest bunch of individual stars in the world, but if they don't play together, the club won't be worth a dime.  –Babe Ruth


The man who thinks he can do without the world is indeed mistaken; but the man who thinks the world cannot do without him is mistaken even worse.  –Francois de la Rochefoucauld


Return to top


Software Development Process

Article:  Multi-Tasking: Why projects take so long and still go late

Multi-tasking is often considered to be a desirable skill among workers.  However, this author lucidly argues, based on Goldratt's theory of constraints, about how this single factor frequently contributes to late development projects.



Article:  A Guide to Hiring Programmers: The High Cost of Low Quality

Finding good programmers is difficult.  Here are some tips about how to identify and recruit the best ones.



Article:  Agile Brings Professionalism to Software Development

This summary of the Agile 2007 shows that agile development techniques are becoming mainstream and businesses are looking to use agile for competitive advantage.



Article:  Pressure in Software Development

Using pressure to improve quality or productivity on development project is a dicey undertaking.  Here are some ideas about how effectively use pressure to achieve appropriate results.



Article:  The Red Shift Theory

Sun Microsystems CTO proposes an interesting theory that "elite" group of companies have a demand for computing resources that outpaces typical businesses.  He explains how this will drive new innovation in technology and computing.  But some people wonder if this is just another take on "utility computing".



Articles:  Software Estimation, Enterprise-Wide

Software development estimation continues to be more of an art than a science.  This two-part series introduces the concepts and some of the common techniques for estimation, as well as suggestions from improving estimation accuracy.




Article:  Avoiding software development failure

Most people are familiar with the statistics about the high rate of failure on software development projects.  So what can you do to avoid becoming one of those statistics?  This article emphasizes that having a well-defined process that will be automated is the key to success.



Article:  Study Predicts Upswing In Dynamic Language Use

A new study from Forrestor Research shows that use of dynamic languages like Ruby, PHP, and Python may be a boon to more user-centered development, similar to the way that Visual Basic did in the 1990s.  However, there will be some distinct differences too.



Article:  What makes software so hard?

In comparison to other engineering disciplines, software development seems to be much harder.  But what specifically is different?  This article takes a great comparative look between traditional engineering and software development.  And be sure to check out this other take on this popular topic.



Article:  Most IT projects fail. Will yours?

Stories of software development project failure are all too common.  This author looks at some common reasons for failure and suggests how agile development principles can mitigate them.



Articles:  Did The Wall Street Journal sabotage businesses by publishing tips on how to circumvent IT?

Recently, the WSJ published an article with "tips" on how to bypass IT restrictions placed on employees.  Was this a constructive contribution to the relationship between IT and business users or not?  This matter goes to the heart of the discussion about how IT contributes to creating "rogues" in the business.




Report:  The next big things in IT

Mark Twain famously said, "The art of prophecy is very difficult–especially with respect to the future."  But that doesn't stop industry pundits from making their guesses about what we might see.  This report talks about anticipated new technologies across the IT spectrum.



Article:  The Secret Sauce of Highly Productive Software Development

These authors suggest that learning is the main bottleneck in achieving a productive software development team.  By learning, they mean the identification and resolution of the "unknowns" in a project, such as how to work together as a team, what the true system requirements are, etc.  They suggest that learning should get a higher priority in attention and resources on a project.



Article:  Is IT moving toward an inevitable split between in-house strategy and outsourced operations?

Pundits are predicting that over the next decade, IT organizations will move from cost centers to technology strategy groups and that day-to-day operations will be substantially outsourced.



Return to top


Software Testing & Quality

Article:  What's Worse Than Crashing?

Finding hard failures, such as crashes and locks, is often the focus of software testing efforts.  But many times, crashes and the like should be the least of your worries.  Testing needs to also focus on the less obvious and more insidious types of failures.



Article:  Three Questions About Each Bug You Find

This author suggests that fixing the bugs in an application that have been identified are only part of the developers debugging/bug-fixing task.  The developer should ask three questions to dig deeper to further improve quality and reliability.



Site:  TesterQA

This site is a portal on software testing and QA topics, focusing on industry news, such as announcements from tool vendors, etc.  It also includes sample questions for certification exams, articles, and videos.



Humor:  That's not a bug!

Well, this one's a bit hard to describe.  You'll just have to check it out yourself.  And, yes, it's safe for work!  :)



Article:  Defect Tracking Lacks Appeal But its importance is at a premium

Defect tracking is one of the less glamorous parts of software testing.  Nevertheless, defect tracking and management is probably one of the single most important tangible deliverables and metrics provided by the testing team.  Here's how to do a better job at this mundane, but critical task.



Article:  Five Questions With Danny R. Faught

Danny Faught is one of the "old guys" in the software testing world.  This interview gives you some background and he provides some unique insights to the history and direction of software testing.



Article:  The top five software testing problems and how to avoid them

This is an interesting and thought-provoking presentation of what the author believes are the top 5 issues that prevent a successful testing organization and effort.



Return to top



Tutorial:  Introduction to UML

This article gives a high-level (perhaps executive level) overview of UML and the various elements that are part of typical UML models.  It also discusses some of the best practices that surround the modeling process.



Reference:  CERT C Programming Language Secure Coding Standard

This comprehensive guide, using examples from actual vulnerabilities and exploits, can help you write more secure code and avoid common pitfulls like buffer overflow errors.  Even if you don't program in C, this handbook will give you some good ideas about the kinds of problems to watch for.



Online Tool:  Free Printable Calendars

On this site you can generate a weekly, monthly, or yearly calendar in PDF format.  Simply download the calendar and print it.  Calendars can include images (either your own or from a selection of provided images) and your own text or text from a bank of quotes, etc.



Tutorials:  Eclipse And Java For Total Beginners

Want to get started with Java development using Eclipse, but don't know where to begin?  This is the place for you!  This site provides 16 short (9-14 minutes each) video lessons on Eclipse and Java.  It assumes no prior knowledge or experience with either and takes you through the basics configuring Eclipse to create a project to using JUnit to creating a generating a JAR file for the complete application.  The video tutorials include a PDF companion guide.



Tutorial:  Representational State Transfer (REST)

REST is one of the cornerstones of interactive, client-server Web-based applications.  But it's not always easy to grasp the concepts at first.  This excellent brief overview helps takes some of the mystery out of REST.  For some additional context around understanding REST, see this excellent article about how REST fits into SOA "big picture".



Tutorials:  PHP 101:  PHP For the Absolute Beginner

This multi-part detailed tutorial gives you all of the basics for using PHP as a web-development language or even as a scripting language.



Book:  Practical Common Lisp

If you are interested in learning functional programming, there is no better language than Common Lisp.  And to learn Lisp, Practical Common Lisp is the best resource.  This is a free, online copy of the entire book.  For a more advanced treatment of Lisp, be sure to check out the free, online version of Paul Graham's On Lisp.



Tutorial:  Understand the inner workings of generics in Java

Java generics are both powerful and confusing.  This article gives an overview of generics and attempts to demystify them a bit.



Tutorial:  Job scheduling with cron and at

Even casual users of Linux and Unix often have a need to run processes repeatedly or on some type of schedule.  The cron and at tools come to the rescue.  This excellent tutorial explains how to use and configure them.



Return to top


Career Development/Miscellaneous

Article:  Bad bosses get promoted, not punished?

New university research shows that of almost 2/3 of survey respondents said that bad bosses either got promoted or nothing was done about their tyrannical ways.



Article:  The 20 Biggest Online Time Wasters, and 6 Strategies for Beating Them

Having an Internet connection at your work can be both a blessing and a curse.  It puts immense amounts of data at your fingertips.  But it can also be a major distraction.  Here are some of the biggest wasters of time and some great tips on getting control of your online habit.



Article:  Hear no evil, see no evil: business e-mail overtakes the telephone

A new survey shows that e-mail use has overtaken use of phones, both landline and wireless, as a business communication tool.  The study indicates that 100% of the end-users surveyed use e-mail, followed by fixed-line telephones (80%), mobile telephones (76%) and instant messaging (66%).  Interestingly, respondents indicated that e-mail has a greater positive impact on productivity than telephone.



Article:  Complaining and How to Stop Complaining

Sometimes, Steve Pavlina is a little too "new age" for me, but he really offers some excellent practical advice for breaking out of the pattern of complaining and negativity.  I need to read this more than most folks that I know!




Article:  Ways to Create a Professional Image for your Organization

How do you create a professional image for your group?  It comes down to the actions of each of the individuals that make up the group.  Here are some tips for how portray your team in a positive manner.  [Full disclosure:  This is an article that I wrote.]



Article:  Nine ways leaders and managers work together

There is a distinct difference between leaders and managers and successful projects need both.  This excellent list helps compare and contrast the roles and skills of each.



Article:  E-mail stress keeps workers on edge of inbox

Do you feel overwhelmed by e-mail?  Well, it might not just be you.  New UK university research says that workers are increasingly tired, frustrated, and unproductive due to the incessant flow of "urgent" e-mail.



Article:  Effectively Integrating Into Software Development Teams

Being the new kid on the block on a project team can seem overwhelming.  Here are some ideas for navigating the technical and political waters of a new team.  And it's good advice even for the old timers in helping the new folks feel welcome.



Article:  How to Write a Resume

This excellent and comprehensive article brings tips on preparing a great resume from many sources into a single, cogent summary.  Learn how to avoid common errors and build a resume that stands out, but doesn't put off a potential employer.



Online Tool:  Notepad Generator

This free, online tool allows you to create customized and personalized notepad paper on standard 8-1/2" x 11" paper.  Just enter a few simple bits of information and it will generate your own paper in PDF format.  Then just print and go!



Book Excerpt:  The Truth About Becoming a Leader

Leadership (as compared to management) is an art.  Here are some key concepts that new leaders must grasp and internalize for success.  This article focuses on "increasing bandwidth" by concentrating on important tasks and delegating.



Article:  Do you have a dysfunctional workplace?

Here are some signs that you work in a not-so-friendly workplace.   (Warning:  Contains some "R"-rated language.)



Article:  Good Project Management Can Advance Your Career

Many of the key skills for project managers turn out to be skills that employers consider to be important for all new employees.  Here's a summary of some of these key talents.



Return to top


Telecommunications/Networking Industry

Article:  The Internet (Apparently) Isn’t Ready For IPTV

Service providers are expressing concerns about capacity to support content providers desires for more streaming video.  Furthermore, this issue is likely to lead to lead to a bandwidth crunch for cable providers.



Article:  Hunting down dark fiber

A startup run by one of the founders of Cisco is offering a product to allow customers to take advantage of the abundance of dark fiber by using their own simplified optical gear for network transport.



Return to top


Useful Utilities

Shup (Free Windows 2000/XP/2003/Vista – 513kB)

Shup is a unique screen capture utility that allows you to upload your captures directly to any of the various image hosting sites, such as Flickr, Imageshack, Photobucket, and others.  You can capture your entire desktop or a specific window and Shup includes some basic editing tools, as well.  After uploading your file to the hosting site, Shup gives you the URL for your image so that you can include it in your HTML files or share it with your friends.



OpenProj (Free – Cross-platform – 6.35MB)

OpenProj is a free, open source alternative to Microsoft Project.  It is supported on Windows, Linux, Unix, and Macintosh platforms.  OpenProj is amazingly similar to MS Project and includes the standard project plan tools, such as Gantt charts, WBS, EVM, and much more.  It can share files with MS Project by using the Project 2003 XML file format.  It is the perfect project management complement to the OpenOffice desktop application suite.



PING (Free – Platform-independent – 18.85MB)

PING (Partimage Is Not Ghost) is re-packaged version of the excellent Partimage utility that comes as a bootable CD-ROM image.  It allows you to create and restore disk images of most any Linux or Windows file system format, even over the network.  In addition, it includes system rescue tools including backup/restore BIOS settings and blanking/resetting the local Windows Administrator password and much more.



RapidEE (Free – Windows 9x/NT/2000/XP/2003/Vista – 630kB)

RapidEE (short for Rapid Environment Editor) is a single-purpose utility for editing system and user environment variables, such as PATH.  It is very intuitive and well implemented.  Simply browse through the environment variables and values and change the desired values or add a new variable.  It even validates that paths specified are correct/exist.



Edgeless (Free – Windows 2000/XP/2003/Vista – 272kB)

Edgeless is a simple background utility that removes the edge boundaries from your desktop so the mouse smoothly moves off one side of the screen and appears on the other.  It works on both the sides and top and bottom of the screen.



AMP WinOFF (Free – Windows 9x/2000/XP/2003/Vista – 452kB)

AMP WinOFF is a utility that allows you to shutdown or restart your Windows computer in a variety of ways.  It includes options for shutting down at a particular time, after a designated period of time, or when the CPU reaches an idle state.  It can shut down, restart, log off, suspend, hibernate, or most any other "restart" option.



OpenBerg Lector (Free – Cross-platform Firefox Extension – 309kB)

OpenBerg Lector is a free Firefox extension that turns Firefox into an e-book reader.  Lector supports Open eBook formats, Microsoft Reader format (via convertlit utility) and comic book "cabinets".  In addition, it enhances other document types that can be read natively in Firefox, like Adobe Acrobat, by including bookmarks, tab browsing, and other Firefox extensions.



WinSplit Revolution (Free – Windows 2000/XP/2003/Vista – 1.1MB)

WinSplit Revolution allows you to divide up your large screen area into separate spaces for different application windows.  You can think of it as being the opposite of the standard virtual window managers.  Each screen area can access via a hot key combination and you can move any window to one of the spaces.



Off-The-Record Messaging for Pidgin (Free – Cross-platform – 1.23MB)

Off-The-Record (OTR) Messaging is a plug-in for the Pidgin (formerly Gaim) instant messaging client which allows you to have secure, encrypted IM conversations with most any IM service supported by Pidgin.  Features include authentication that the other party is who they say they are and deniability if a message seems forged.



SSL-Explorer Community Edition (Free – Cross-platform Java – 22.4MB)

SSL-Explorer is a free, open source (GPL) simplified VPN solution for small organizations.  It is based on SSL and does not require anything to be installed on the client systems inside the firewall.  Some of the interesting features are Microsoft Outlook Web Access 2003 support, excellent granularity permissions, and much more.



DropMyRights (Free – Windows 2000/XP/2003/Vista – 164kB)

Running Windows as an administrator is dangerous.  All sorts of malware can infect a system this way.  But the fact is that most of us do it anyway.  DropMyRights makes a little easy to run as an administrator safely.  Simply use DropMyRights to launch your application and it will run the application as lower privilege user ("Normal" user by default).  This is perfect for running your web browser or e-mail application to protect yourself from these threats.



QuickREx (Free – Cross-platform – 1.08MB)

QuickREx is an Eclipse plug-in for writing and testing regular expressions (regexs).  It supports a wide array of regex libraries for Java, including the JDK version.  You can even create your own persistent library of regexs for reuse.  And a standalone version of QuickREx is also available.



HashTab Windows Shell Extension (Free – Windows 2000/XP/2003/Vista – 186kB)

HashTab adds a new tab to the standard Windows Properties window for files that calculates and displays common hashes for files.  It allows you to directly compare the calculated hashes to the expected value from the file provider.  It supports MD5, SHA1, and CRC-32 hash types.



Return to top


Productivity Tips

Do a "warm boot" to save time when restarting Windows XP and Vista

When you install a new application or patch your Windows system, it often requires a restart (reboot) of the system.  You can save 30 seconds or more in the restart process by doing a "warm boot" instead of the full ("cold boot") process.  To perform a "warm boot", which bypasses the BIOS initialization, memory check, etc., simply hold down the <Shift> key when you press OK with the Restart option selected in the Shut Down Windows dialog box.


Quickly change between views in MS Outlook

In MS Outlook, you can use these handy keyboard shortcuts to switch between views, such as Inbox and Calendar:

<Ctrl>+1 - Inbox

<Ctrl>+2 - Calendar

<Ctrl>+3 - Contacts

<Ctrl>+4 - Tasks

<Ctrl>+5 - Notes

<Ctrl>+6 - Folder List (in the side bar) synchronized to the last selected view/folder

<Ctrl>+7 - Shortcuts (in the side bar)

<Ctrl>+8 - Journal


Return to top

Just For Fun

12-sided Calendar

This site features a template (in PDF format) for creating a 12-sided (regular dodecahedron) paper calendar.  You can generate the calendar for most any year, print it on card-stock paper, and have a fun calendar for your desk.  Calendars for many languages are provided and you can start the weeks on Sunday or Monday.



The Vincent van Gogh Gallery

This online gallery of van Gogh's works is comprehensive and fantastic.  It includes not only his paintings but his letters and sketches.  It is even endorsed by the official van Gogh museum.



If God Were a Programmer

Here's a cute little take on the first few chapters of Genesis from the perspective of God being the ultimate programmer of the universe.



Arizona State University Apollo Image Archive

A recent effort to digitize the images from the Apollo moon missions has resulted in some absolutely stunning pictures, including many never before seen.  The pictures of the moon surface are amazing.  I guess that I now really believe that we did land on the moon, but I still like Capricorn One.  :)



Somewhere Nearby is Colossal Cave: Examining Will Crowther's Original “Adventure” in Code and in Kentucky

Although it may seem dry, this is a fascinating academic history of the Colossal Cave Adventure interactive fiction game from the 1980s, including some background on the actual cave that it was based on.  You can even play an online, Java-based version of the game or browse the original Fortran source code.



Atomic Archive

While probably not quite in the "fun" category, this site explores the rich and complex history, science, and social consequences of the development of the atomic bomb.



Beg The Question

We're all familiar with the phrase "it begs the question…".  But what does it really mean.  It turns out that most folks, including me, completely use this in the wrong way.  Check this site for a great explanation.



Test Your Brain

This site offers two tests of brain function:  speed of processing and short-term memory.  This site has some great resources on keeping your brain in shape and how the brain works, too.



Return to top