Up to Newsletter Index

May 2008 Newsletter


Quotable Quotes


Hard work spotlights the character of people: some turn up their sleeves, some turn up their noses, and some don't turn up at all.  –Sam Ewing


To take a significant step forward, you must make a series of finite improvements.  –Donald J. Atwood


We are so accustomed to disguise ourselves to others that in the end we become disguised to ourselves.  –Francois de La Rochefoucauld


The optimist proclaims that we live in the best of all possible worlds; and the pessimist fears this is true.  –James Branch Cabell


The music that can deepest reach,

And cure all ill, is cordial speech.  –Ralph Waldo Emerson


Life was meant to be lived, and curiosity must be kept alive. One must never, for whatever reason, turn his back on life.  –Eleanor Roosevelt


We act as though comfort and luxury were the chief requirements of life, when all that we need to make us happy is something to be enthusiastic about.  –Charles Kingsley


Learning is not attained by chance. It must be sought for with ardor and attended to with diligence.  –Abigail Adams


The greatest challenge to any thinker is stating the problem in a way that will allow a solution.  –Bertrand Russell


Return to top


Software Development Process

Article:  Use these interviewing techniques to gather project requirements

Requirements' gathering is as much art and technique as it is science.  Here are some tips for making the process go more smoothly.



Article:  Survey: Developers Seek Web, Dynamic Languages

A new survey shows that developers are planning to start using dynamic languages, especially AJAX and Javascript, at nearly twice the rate of traditional procedural languages over the next 18 months.



Article:  Is "professional software developer" an oxymoron?

A new book suggests that the often chaotic and random nature of software development raises questions about whether it should be considered a profession in its current form.  Lots of good comments for some perspective, too!  (I found it somewhat ironic that the book's publisher is Addison-Wesley Professional.  <g>)



Article:  Productivity Variations Among Software Developers and Teams: The Origin of "10x"

Steve McConnell explores how organizational structure and team dynamics affect the productivity of developers and development teams, sometimes up to a factor of 10-fold.



Article:  Why you want to be good at data modeling

The director of MySQL product management discusses the importance of good data modeling in building a successful application.  In particular, he takes the notion that application performance is affected mostly by code head on.



Article:  Guerrilla IT: How to stop worrying and learn to love your superusers

As technology continues to move into the mainstream, IT needs to work collaboratively with technically savvy users and even consider them as a valuable extension of the IT organization.



Article:  Writing Good User Stories

User stories are an alternative to "heavy" requirements documentation techniques and are similar to use cases, but with less structure and formality.  This guide gives lots of background and tips on writing user stories in an agile development context.



Article:  The Principles of Project Management

At one time or another, most senior developers will be thrust into the role of project manager.  Here's some background information to get you started in this task.



Article:  Who needs IT experts? Workers take control

As technology pushes farther into the mainstream of everyday life, business users are bypassing IT more and more to get their jobs done by using web-based tools and other "off-the-shelf" parts.  And IT management ignores this trend at its peril.



Article:  Pleasing Google's Tech-Savvy Staff

Google CIO Douglas Merrill (a TU alumnus) is interviewed about the Google philosophy of IT management.  His approach is to quite wide open (as you would expect!) and really empowers employees to use most any available technology.  This concept has launched a broad debate over user-managed PCs and the "autonomous user".



Return to top


Software Testing & Quality

Article:  What’s Neglected When Testing Services?

Testing services-oriented architectures (SOAs) is quite different from traditional application or web-based application testing.  This author says that SOA testing needs to include testing for reuse, heterogeneity, abstraction, and aggregation.



Article:  Does It Work? Are We Done? Is It Right? (Keep It Light!)

An agile development practitioner offers his suggestions for alternatives to traditional functional testing, such as TDD.



Article:  What’s the Definition of Testing?

The debate seems to go on forever about what is meant by "testing".  While I like the definition in this article, I think the key point is that the definition and the role of the test group needs to be well-understood by all project stakeholders.



Article:  Businesses fear lost revenues after poor software testing

In a new survey, 4 out of 5 businesses in the UK indicated concern about losing revenue due to application bugs and 40% have reported already experiencing such a problem.



Article:  Integrating Quality into Every Stage of Development

To have an effective QA and software testing regime, it must be integrated into and throughout the entire development lifecycle. 



Return to top



Tutorial:  The OSI Model:  Understanding the Seven Layers of Computer Networks

The seven-layer OSI model is the standard for building most networks today.  This article gives you a detailed, but non-technical explanation of each of the layers of the architecture.



Reference:  Commonly Overused Words

Want to make your writing unique and add a little punch to it?  Here's a simple list of synonyms for some frequently overused words that can help.



Online Tool:  Txt2RE

Txt2RE is an online, interactive tool that allows you to build regular expressions similar to the popular "query-by-example" functions in my database tools.  Even if you have no experience with regexes, you can develop them by using sample data and applying a set of rules.



Tutorial:  Database Denormalization Patterns

Most people, when they are learning development, are encouraged to substantially normalize their data models.  However, in some cases, a certain, effective level of denormalization is quite useful.  This article explores some patterns for appropriate denormalization, especially as it relates to efficient retrieval of stored data.



Reference:  Visual Guide to Java JDK Classes

This excellent site provides a visual and graphical/relational reference to the standard Java class libraries provided by the JDK.  All Java programmers will find it useful and a boon to productivity when looking for standard functions.



Tutorial:  How to Disagree

Paul Graham offers some great tips on how to disagree in the online world without being disagreeable.  He focuses on a hierarchy of sophistication in disagreement from name calling to refuting the central point.



Tutorial:  Java Concurrency Series with examples

As we've discussed quite a bit recently in this newsletter, concurrency and parallel programming are key changes (really paradigm shifts!) confronting developers.  This excellent introductory series shows how to use the new Concurrent class library in Java to add parallel processing capability to your applications.



Tutorial:  Setting up Subversion on Windows

While there are many source control applications available, Subversion is probably the most widely used and well known.  This detailed tutorial will help you get it installed and configured on your system.  And Subversion is great for document version control as well as source code.  If you need further information after learning the basics, see the canonical Version Control with Subversion free online book.



Return to top


Career Development/Miscellaneous

Article:  The Top 10 Changes In My Business Thinking

An entrepreneur looks back on the past five years and gives his assessment of how his thinking has changed.  Very insightful tips for anyone in business, especially entrepreneurs and small-business owners.



Article:  Everyone Thinks They Work Harder than Their Boss

Probably not surprisingly, more than 3/4 of workers think they work harder than their boss.  However, some economic theory indicates that they may be right in most cases.



Article:  Info Tech Salaries Drop, Our Survey Finds. What's Holding U.S. Pay Down?

For the first time its 11-year history, the Information Week salary survey showed a decline in median salaries.  The economy and outsourcing are partly to blame, but interestingly increased hiring is also apparently pushing salaries down.



Article:  10 ways to handle disagreements effectively

In any working environment (and in life, in general!) disagreements or differences in point of view are inevitable.  Here are some tips to managing these bumps in the road in a positive and useful manner.



Article:  TechRepublic's 2008 IT skills and salary report

This is an annual report, produced with Global Knowledge, that includes IT employment trends, the job market outlook, areas of growth and decline, skills that are in demand, highest-paying certs, and salary ranges broken down by region, job title, industry, and experience.



Article:  Going Topless to Office Meetings

The latest trend in the backlash against pervasive use of technology is companies mandating that people attend meetings "topless":  without laptops or other technology gadgets.  The premise is that people are too distracted by their gizmos to pay attention and participate in the meeting.



Article:  The Tyranny of Email

Email is probably the single most important efficiency boon of the computer revolution.  However, email can also be drain on productivity.  This excellent article explores two of the downsides:  broken concentration and deceiving you into inefficient problem solving.



Article:  Texting while driving? Time to unplug

Technology pros are starting to realize that returning to the "real world" now and then is important and refreshing. 



Article:  A Decade Of Disruption

This article profiles 10 companies that have a disruptive impact in their industry segments.  One of the key takeaways is that it's not always about technology, but about a fundamental shift in thinking.



Article:  Strategic thinking for tactical techs

Even though front-line workers are typically involved in the day-to-day work of keeping the business running, they still need to keep a strategic view in mind when making decisions.



Article:  10 Ways History’s Finest Kept Their Focus at Work

This author uses the practices of 10 of the most productive people from history, such as Churchill, Gandhi, and Beethoven.  The common theme in all of the tips is to avoid working too much.



Return to top


Telecommunications/Networking Industry

Article:  Does TCP Need an Overhaul?

One of the fathers of the Internet makes a radical proposal for congestion control on the Internet.  His perspective is that problems with the protocols, particularly TCP, are the main factor in congestion, not lack of bandwidth and alternatives are needed.



Article:  Limited Budgets Driving Small- and Medium-sized Enterprises toward North American Hosted IP Telephony

According to a new report, the economic downturn in the US seems to have one bright spot:  It is pushing companies toward hosted/managed telephony and VOIP services. 



Article:  XKL Brings New Life To Dark Fiber

A startup (17-years-old no less!) founded by Len Bosack, one of the founders of Cisco, aims to allow businesses to develop their own fiber optic networks with WDM using existing dark fiber infrastructure.  Could this take away business from existing long-haul carriers?



Article:  Video killed the ISP?

Predictions of a so-called 'exaflood' of Internet traffic appear to be more hype than reality, especially since Internet traffic growth in the US has been decreasing since the start of the new millennium.  However, AT&T seems to contradict this finding.



Return to top

Useful Utilities

WebShot (Free – Windows 2000/XP/2003/Vista – 575kB)

WebShot allows you to take screen shots of web pages (as displayed in your web browser) and save them as full-sized images or thumbnails.  It supports saving in JPG, GIF, PNG, and BMP formats.  Likewise, you can save the entire page, including the part outside of the displayed area, or just specify a part.  And WebShot can log the images that it saves in CSV format with page title, meta keywords, and description for cataloging purposes.



Find As You Type for Internet Explorer (Free – Windows XP/2003/Vista and Internet Explorer 6 and above – 818kB)

Find As You Type is an Internet Explorer addon that immediately highlights first occurrence of the text string that you are searching for on the displayed page (similar to the Find function in Firefox).  Likewise, it adds a nice integrated search toolbar into Internet Explorer, as well as the ability to highlight all occurrences of the text.



Tungle (Free – Windows 2000/XP/2003/Vista and MS Outlook 2002/2003/2007 – 5.3MB)

Tungle is an MS Outlook add-on that allows you to check meeting available among participants inside and outside of your Outlook domain.  It is compatible with iCal, Google Calendar, Lotus Notes, and more.   Furthermore, it integrates directly with MS Outlook, so you don't have to learn anything new about scheduling a meeting.



NewsGator Inbox (Free – Windows 2000/XP/2003/Vista and MS Outlook 2000/2002/2003/2007 – 4.4MB)

If you already use MS Outlook, why bother with a separate standalone RSS reader (or web-based readers)?  NewsGator Inbox integrates directly into MS Outlook and delivers RSS feeds into folders that you define.  You can even synchronize with other readers.



USB Disk Ejector (Free – Windows 2000/XP/2003/Vista – 467kB)

USB Disk Ejector is a handy, small utility that allows you to quickly and safely unmount your USB drive.  It is very important to unmount your drive before removing it to avoid data loss.  USB Disk Ejector has a GUI, but its real power is in the command-line options, which allow you to unmount by drive letter, drive name, or even part of drive name (wild card).



SQLiteSpy (Free – Windows 9x/NT/2000/XP/2003/Vista – 986kB)

For lightweight database applications, such as storing configuration data, SQLite is a great alternative to the heavyweights.  However, one of the drawbacks of SQLite is that it doesn't have many GUI-based management tools.  SQLiteSpy fills this void.  It is a full-fledged application that allows you to write and execute SQL queries, edit data in spreadsheet fashion, view the database schema structure, and much more.  It even includes the SQLite engine embedded in the application for ad hoc use.



Outlook on the Desktop (Free – Windows 2000/XP/2003/Vista and MS Outlook 2000 or higher – 643kB)

Outlook on the Desktop is a cool MS Outlook add-on that places your calendar on the Windows desktop.  The calendar is fully functional, just like it is Outlook itself.  In addition, you set the opacity, switch between Outlook views, such as Inbox, Tasks, etc., and it has a tray icon for quick access.



ReportZilla (Free – Windows 2000/XP/2003/Vista and MS Excel 2003 – 852kB)

ReportZilla is a free MS Excel add-in that simplifies the process of querying and reporting from Clear Quest issue tracking tool.  ReportZilla is much easier to use than the standard reporting functions in Clear Quest.  It includes more complex query criteria, alternate row shading, grouping and sorting of results, and much more.



Applino (Free – Windows 9x/NT/2000/XP/2003/Vista and JRE 1.6 – 9.0MB)

Applino is a tool that allows you to run multiple Java desktop applications using a single instance of the JVM, which saves substantial system memory.  It is based on the concept of servlets used for running Java applications on servers.  The site provides some example applets to be used with the core application.



Return to top


Productivity Tips

Get a combined Windows Explorer tree and My Computer view

If you like the My Computer Explorer view which shows your local and network drives, but also like to navigate via the tree view, you can create a short cut that gives you the best of both worlds.  Here's how:  Right-click on your desktop and choose New à Shortcut from the context menu.  In the Create Shortcut window, enter %SystemRoot%\Explorer.exe /n, /e, /select, C:\ and press Next>.  Name your new shortcut something like My Explorer and press OK.  Now, just double-click to get your customized view (or, better yet, assign a shortcut key combination to it!).


Trick to update multiple database rows with a single query

In general, you can only execute a UPDATE query on a single row in your table.  But here's a trick using a CASE statement to update multiple rows.  Basically, you construct your query like this:

UPDATE table_name t

SET t.column1 =

CASE WHEN t.column2 = expra

THEN 'New Value 1'

WHEN t.column2 = exprb

THEN 'New Value 2'

ELSE t.column1



Using the ELSE t.column1 is very important, because the query will update ALL rows that meet the WHERE clause criteria, so you want to set these to their original/current values.


Return to top


Just For Fun

Mad Magazine Fold-Ins, Past and Present

Remember those Mad Magazine fold-ins on the back cover, where you folded the page over to reveal another take on the original picture?  This retrospective allows you do this with many of the classics interactively online.



Super Mario in 14kB of Javascript

Check out this cool remake of the Super Mario video game written entirely in Javascript, including the graphics!  It doesn't have all of the features, but the author is working on it and it's incredibly playable.



100 Best First Lines from Novels

American Book Review gives their list of the 100 best opening lines from literary history.  No doubt you'll be familiar with many of them, but there are a few that are probably a bit more obscure.



Screen Cleaner

Is you monitor dirty?  Let this site clean it up for you!



Image of Internet on Display at Museum of Modern Art

I guess it's just a sign of the times when the Internet itself becomes the object of art.  Anyway, this is a pretty cool image.



Return to top