Up to Newsletter Index

June 2011 Newsletter


Quotable Quotes


Commitment unlocks the doors of imagination, allows vision, and gives us the “right stuff” to turn our dreams into reality.  James Womack


If you attack people, expect them to defend themselves and expect this to distract everyone from common goals.  Jason Yip


The software field—really, any scientific field—tends to advance most quickly and impressively on those few occasions when someone (i.e., not a committee) comes up with an idea that is small in concept yet enormous in its implications.  –Cameron Newham, Learning the bash Shell


"Our project would be done by now if we didn't have such good testers."  If the doctor hadn't found cancer, I'd be well.  –Unknown (found on Twitter)


We really must understand that the lust for affluence in contemporary society is psychotic. It is psychotic because it has completely lost touch with reality. We crave things we neither need nor enjoy.  Richard J. Foster, Celebration of Discipline


Great leaders don't change people.  They create environments where people can change themselves.  Dan Rockwell


A healthy attitude is contagious but don't wait to catch it from others. Be a carrier.  –Tom Stoppard


Return to top


Software Development Process and Methodology

Presentation:  The Seven Sins of Project Management

Agile expert Mike Cohn shows some of the pitfalls that may beset project managers when transitioning from traditional methodologies to agile. 



Article:  Individuals and Interactions: An Agile Guide

One of the core principles of the Agile Manifesto is Individuals and interactions over processes and tools.  This book excerpt discusses how good communication skills are vitally important to agile implementation.



Article:  Consumerization And Cloud: IT Isn't Keeping Up

The CEO of Citrix says that IT is failing to adapt to the two most significant disruptive trends, consumerization and cloud computing (both of which are about mobility—think Google Chromebook).  He says that IT needs to move from a role of controlling technology to supporting.



Article:  10 challenges facing IT

Certainly, not all IT organizations face the same struggles, but this list probably hits many common themes.  The article doesn't try to tell you how to solve these problems, but is more about getting you thinking about how you'll address them in your own company.



Article:  Pragmatic Development

In this article, the author emphasizes that no methodology is a one-size-fits-all solution for any organization and that each business must adopt the techniques that work for them.  He suggests as a starting point to adopt from each of the agile, lean, and unified process "camps" that make sense for your business.



Article:  Agile at 10 – A State of Contradiction

One of the original Scrum practitioners says that agile is facing somewhat of an identity crisis because the practice hasn't kept up with the vision, particularly around quality and consistency.  He also expresses concern about organizations saying they are "agile" because they do certain things.  He says that in its second decade, agile needs focus on:  demand technical excellence, promote culture change, maximize business value, and organize knowledge.



Article:  25 ways IT will morph in the next 25 years

As it celebrates its 25th anniversary, Network World looks at what the next 25 years may bring in technology.  Some of the predictions include smartphones that have the power of today's supercomputers and agility across the enterprise will be necessary for mere survival.



Article:  You are NOT a Software Engineer!

There are a wide variety of analogies between programming and physical sciences or engineering.  This author compares programming to gardening ("software gardener") and makes a very elegant argument for this comparison.  Or perhaps we are more like diplomats.



Article:  Process kills developer passion

In this interesting (and surely controversial!) essay, the author says that while agile methodologies are better than the "high-ceremony" processes, most any process overhead is distasteful to developers and that it saps their passion for programming.



Article:  The 10 commandments of good source control management

Version control goes far beyond (or should!) having the VCS installed.  This excellent article provides a sound architecture for a strong version control process.



Return to top


Software Testing & Quality

Article:  Don't Give Short Shrift To Software Testing

This article emphasizes that software testing is just as important in the implementation of hosted/SaaS applications as with in-house development projects.  The author notes that the key characteristic for success with testing in this situation is understanding your particular environment.



Article:  Testing Survival Means Knowing What to Test

Every test professional knows that 100% testing is not practical (and possibly isn't even possible).  This article gives some good perspective on deciding what to test, based prioritizing "failure scenarios".



Article:  Testing for the Cloud

Adam Goucher says that most of the hype around significant differences for testing cloud-based applications is unfounded.  He talks about three specific differences and indicates that they are really variations on themes of "traditional" testing.



Article:  Basics Revisited: Test Strategy

Sometimes, especially with agile development, documentation gets overlooked.  One piece of documentation that I have found invaluable in almost all situations is the test strategy.  This article gives you a great refresher on the purpose of the test strategy and how to write good and concise one.



Article:  Basic Story Testing Styles

Agile testing approaches can sometimes be different from more traditional testing.  This article shows how to take user stories and develop tests from them.  One important positive aspect of good user stories is that they should have acceptance criteria which the tester should use as a guide for defining the "positive" tests.



Article:  Test(osterone)-infected Developers

This author makes an interesting observation about the apparently disproportionate number of women in testing roles as compared to development, some possible reasons for this, and how agile methods are likely to help bring this back into better balance.



Return to top



Tutorial:  What the %#$@ Is UTF-8? A Character Encoding Primer

Most developers have at least a basic understanding of multi-byte character sets and UTF-8 (or Unicode).  This excellent primer explains the history and gives a very approachable treatment on how to actually interpret UTF-8.



Tutorial:  Not a designer? Here’s how to make your web apps look awesome

Most certainly, I'm not a designer, but I do know what a good web application looks like.  If you lean more to the side of being a programmer/developer versus a design, this article provides some great tips for designing by dissecting a couple of CSS templates/themes.



Tutorial/Reference:  Data Structure and Algorithm Visualizations

We often feature links to algorithm and data structure visualizations in this newsletter.  To me, anytime that you can "see" how these work, it helps your understanding, especially when it comes to appropriate situations to apply these.  This site offers excellent demonstrations in JavaScript with source code available and even instructions for how to create your own.



Reference:  A Framework for Performance Based Competency Standards for Global Level 1 and 2 Project Managers

If you are (or aspire to be) a project manager, this is a great resource on the key skills and competencies project managers should have.  This standard is currently under review and you can provide suggestions or feedback on it, if you'd like.



Tutorial:  RESTful [Java] Web services made easy

This straightforward tutorial shows you how to build a simple REST web service in Java using only the JDK, Jersey, and Tomcat 7.  It walks you through the entire process step-by-step, including creating your web.xml file.



Tutorial:  Functional thinking: Thinking functionally

Even if you don't use (or intend to use) functional programming techniques directly, everyone can benefit from learning some of the concepts underlying the paradigm.  This tutorial explains the basic ideas using good examples in Java.  And be sure to check out the author's presentation slides on this topic.



Tutorial:  Just what is Node.js?

You may have heard about Node.js, but haven't looked into it enough to know what it's all about.  This overall article explains the background of the library and its aim to make coding web applications on the server side in JavaScript as simple as more common server-side languages like Java and PHP.



Tutorial/Reference:  The Gang of Four patterns as everyday objects

Design patterns, especially the Gang of Four patterns, are invaluable for efficient and effective coding and code refactoring.  But often, these patterns are explained only in terms of code making them too abstract to identify when needed.  This article compares the each pattern to commonplace things in real life.



Return to top


Career Development/Miscellaneous

Article:  How to Make the Best of Being Unhappy at Work

With the length of the depressed economy, many folks feel like they are stuck treading water in a job they don’t like.  This article gives some suggestions for how to have a more positive attitude about your situation.



Article:  Media Multitasking Now the Norm, Highly Distracting

We frequently point out the failures of multitasking in this newsletter.  Now, some new research using eye-tracking tools shows that people become even more distracted when using more than one media device.



Article:  Popularity Sucks: Kids Should Embrace Their Inner Loser, Author Says

In her new book, The Geeks Shall Inherit the Earth, award-winning journalist Alexandra Robbins says that the traits that make kids part of the in-crowd in school (primarily conformity) actually don't serve people well in "real life".  She says that quirkiness (she calls it "quirk theory") and the ability question the status quo are actually valuable life skills.



Article:  Interview with Ken Thompson

Doubtless that many others have had a more pervasive impact on programming in the past few decades than Ken Thompson, who wrote the original Unix operating system.  In this new interview, he talks about that and his role in developing the Go language at Google.



Article:  World's servers process 9.57ZB of data a year

According to a new study, each worker "handles" almost 3TB of data each year among 27 million enterprise servers.  The most striking fact is that vast majority of the data is transient.



Article:  Email: So yesterday?

In an independent survey commissioned by Microsoft about social media use, they found that, except for IM, all sectors, except instant messaging (IM), are still growing.  Most notably, they found that, at least for work, almost all of the respondents expected their use of e-mail to stay the same or grow in the next 5 years and over half said that e-mail is most effective means of communication, even beating meetings and IM.



Article:  Why is America the 'no-vacation nation'?

American workers tend to take much less vacation (or even 3-day weekends!) than employees in other industrialized countries.  Some new research shows that it's as much by choice as it is by our business culture.



Article:  The Rise of "Logical Punctuation".

Even though I've written like this for a long time (even though I knew it was "technically wrong"), I feel vindicated that grammar experts are now accepting that in the online age, putting punctuation outside the quotations (horror!) is a reasonable transition of our living language.  And now they are trying to banish the em dash too!



Article:  Hella way to describe massive numbers

As disk storage capacities and bandwidths continue to increase, some folks think that a new official prefix to describe 1027 should be established.  Here’s to all of the hellaknobs out there!  :)



Article:  The Sad, Beautiful Fact That We're All Going To Miss Almost Everything

Many people (perhaps most!) feel overwhelmed with the pace and busy-ness of their lives.  But the reality is that each of us will only do or experience a miniscule fraction of all that could.  This essay gives a great perspective on how we choose to use the time that we have and to decide what is most important.



Article:  The Cognitive Costs to Doing Things

Whenever we decide to do something, we often consider the financial and time cost of such an endeavor.  But have you ever considered the mental, or cognitive, expense?  This is a very insightful article for anyone involved in knowledge work.



Article:  The Top 3 Daily Time-Wasters & How To Tame Them

If you could get rid of one thing from your day that takes away time from getting things done, what would it be?  According to this author, the three biggest time sinks are e-mail, social media, and meetings.  She provides some practical tips for reining in each of these.



Article:  Software engineering ranked hottest job in U.S.

According to a new analysis by CareerCast.com, based on factors such as work environment, physical demands, outlook, income and stress, software engineer is the highest rated job.  The survey indicated that cloud computing and web application development were industry segments to pushed software engineer to the top.



Article:  How Good Designers Think

While this article leans toward aesthetic design, I think it applies to most any creative discipline, which includes programming and development.  Essentially, the author emphasizes that the great creative work isn't a result of constantly "doing", but more often comes from deep introspection and thought.



Article:  IT Salary Levels: Staffers vs. Superstars

Recently, there has been a lot of buzz about Steve McConnell's comments about how, even though the best developers are 10 times more productive than the average programmer, there isn't a 10x difference in compensation.  So what is the actual difference between the great programmers and the rest of the pack?  This article looks at some recent salary surveys to compare the upper (third) quartile to the mean.



Return to top


Telecommunications/Networking Industry

Article:  Ex-FCC chairman: Invest in fiber optics

The FCC chairman during the Bush administration says that, even though wireless growth is exploding, providers should continue to push fiber further into their network infrastructure to handle backhaul.



Article:  100 Terabits per Second Speed Sets Fiber Optics Record

Two independent teams have reported (here and here) long-haul transmission rates above 100 Tbps for the first team, using significantly different techniques.



Article:  US broadband providers invest USD 250 bln since 2008 - study

A study finds that providers have spent over $250 billion dollars in the last three years, with wireline accounting for $89 billion, wireless at $71 billion, and cable at $40 billion.  This accounts for over 1500 providers serving more than 200 million customers.



Return to top


Useful Utilities

NoReplyAll Outlook Add-In (Free – MS Outlook 2007 or 2010 – 290kB)

Do you get annoyed when an email was sent to a very large distribution and people inadvertently (or maybe intentionally) start replying all?  Or maybe you want to send an e-mail and don't want it forwarded to everyone else in the world.  This handy add-in for Outlook does just that.  It also includes a few other features such as checking for missing attachments or blank subject lines.



SyncDocs (Free – Windows XP/2003/Vista/2008/7 and Google Docs – 1.7MB)

If you use both Google Docs and off-line office tools, such as LibreOffice, you probably already know the difficulty of keeping your files synchronized.  SyncDocs easily and transparently synchs up your documents.  In addition, it contains some great features like Windows shell integration (right-click to open your documents in Google Docs), setting Google Docs as your PDF viewer/reader, and even setting Google Docs as your default editor for documents, spreadsheets, etc., if desired.  You can even map Google Docs to a drive letter on your local PC for even easier transfer.



PrettyRun (Free – Windows 2000/XP/2003/Vista/2008/7 – 1.3MB)

If you have very many items in your Start Menu or on your desktop, finding the application that you want to launch can become difficult.  PrettyRun is similar to the standard Windows Run dialog, but it provides much better searching, a nice "recently used" list with icons and description, and excellent customization of the items to search.  And you can even configure it to run as a portable application.



File Blender (Free – Windows XP/2003/Vista/2008/7 – 11MB)

At one time or another, you are likely to need to convert a file of some type to another type.  File Blender might be called the Swiss Army knife of file conversion tools, as it supports video, audio, and graphic/image conversions along with HTML/CSS Tidy, PNG optimization, and PDF splitting/joining.  In addition, it has a plug-in-based architecture, so you can add almost any other conversion that you might need.



Nemo Docs (Free – Windows XP/2003/Vista/2008/7 – 670kB)

Most Windows file managers are variations on the standard Windows Explorer theme.  Nemo Docs is quite different in that groups files by date and allows quick filtering on types, as well.  In addition, it allows you to label directories and integrates with Windows Desktop Search to make searching simple.  It also minimizes to the system tray to stay out of your way when you don't need it.



Return to top


Productivity Tips

Easily clear the terminal screen in Cygwin

If you use Cygwin as an alternate shell in Windows, one annoyance you may have noticed is the lack of the clear command.  Fortunately, there is an undocumented way to clear the screen:  <Ctrl>+L.  It works in the standard Cygwin shell, MinTTY, and xterm.


Return to top


Just For Fun

Hacker Typer

Have you ever wanted to pound out code lickety-split like the actors do in the movies?  With Hacker Typer this dream can come true.  Just choose what code base you want, such as the Linux kernel, the type of screen, and speed and hack to your heart's content!



365 Days of Clones

This off-beat but interesting site features some historical event for each day of the year along with a photo illustration using Star Wars action figures, of which one is always a clone trooper.



"That's What She Said" Software Recognizes Pervy Double Entendres Automatically

OK…  So this is very strange.  But what I really want to know is how the academics get funding for "research" projects like this?



One-Dollar Compound Microscope

As a kid, I loved playing with microscopes and looking at bugs, leaves, blades of grass, or most anything that I could get my hands on.  Here's a fun way to make an adjustable focal length ‑microscope that provides up to 75x magnification with common, everyday parts.



Return to top