Up to Newsletter Index

August 2012 Newsletter

 

Quotable Quotes

 

The ability to pay attention, to focus, to concentrate, to resist distractions, is as essential to the design process as it is to successful life generally. It is the quality of attention that distinguishes design detail, that enables an architect to design a building that belongs where it is. For attention to detail does not mean fussiness, but an appropriate locating of energies.  In the end, it is something very close to grace.  –Ralph Caplan, Cracking the Whip: Essays on Design and its Side Effects

 

I seek not to know the answers, but to understand the questions.  Kwai Chang Caine

 

A long habit of not thinking a thing wrong gives it the superficial appearance of being right, and raises at first a formidable outcry in defense of custom. But the tumult soon subsides. Time makes more converts than reason.  –Thomas Paine

 

We learn more by looking for the answer to a question and not finding it than we do from learning the answer itself.  –Lloyd Alexander

 

Programming requires, above all, a quiet, peaceful attitude toward the feeling that you don’t really know what you’re doing.  –Stephen Ramsay, Learning to Program

 

We do not err because truth is difficult to see. It is visible at a glance. We err because this is more comfortable. –Alexander Solzhenitsyn

 

Return to top

 

Software Development Process and Methodology

Article:  Computer Programming Is Still an Art

This article presents some strong evidence that even though the technical advances in programming over the past 50 years have been incredible, at its core, programming is still more art than science.

http://spin.atomicobject.com/2012/06/12/computer-programming-is-still-an-art/

 

Article:  Run IT as a responsive business, beat the cloud vendors at their own game

In the last decade, it was outsourcing; now, the IT organization faces the challenge of cloud providers (remember when they were called ASPs in the 1990s?).  Here are some tips from a new organization dedicated to helping IT become a nimble competitor and partner with their business groups and sustain their relevance in the organization.

http://www.zdnet.com/run-it-as-a-responsive-business-beat-the-cloud-vendors-at-their-own-game-7000001529/

 

Article:  How We Changed the Agile Development Process to Work for Gist

One of the factors that makes (small "a") agile (or any methodology for that matter!) successful is the ability to adapt and adjust for your particular environment.  This article presents some good examples of how one organization structured their process.

http://blog.gist.com/2012/06/26/how-we-changed-the-agile-development-process-to-work-for-gist/

 

Article:  Kanban for Skeptics

As agile methods continue to mature, one of the significant transitions is the adoption of lean principles along with agile, particularly kanban.  In this free ebook excerpt, the author examines one of five common objections to kanban:  It takes longer.

http://www.infoq.com/articles/kanban-for-skeptics

 

Article:  Code that counts

This short article looks at the metrics question from the perspective of how much control a project needs.  The author makes the interesting observation that the more control required by a project is a good indicator of (proxy for) low value or return on investment of the effort.  And, therefore, organizations should invest in low-control, high-value projects.

http://plasmasturm.org/log/valueofcontrol/

 

Article:  Interview with Alan Kay

Alan Kay, pioneer of object-oriented programming and co-creator of Smalltalk, is a larger than life figure in the programming world.  This wide-ranging interview gives you some new insight to his genius and how he continues to impact the development realm.

http://www.drdobbs.com/architecture-and-design/interview-with-alan-kay/240003442

 

Article:  IT Values Technologies Over Thought

This article reflects on pundit Steve Jones' (no relation) contention that over the past 5 years, IT has focused too much on the "bright shiny object" of technology without regard for the business value to the detriment of emphasizing problem-solving and thinking.

http://www.infoq.com/news/2012/07/thinking-is-dead

 

Article:  Agile, The Good Parts

This article eschews the common agile "marketing" terminology (what might be called "big-A Agile") and discusses the important principles and concepts for teams to adopt to actually implement ("little a") agile in their organization.

http://caines.ca/blog/programming/agile-the-good-parts/

 

Article:  How to Estimate like an Adult – A Developer’s Guide

Estimation in software development is still considered by many (most?) a black art.  This two-part series offers six specific ideas from agile methodologies to help improve the estimation process.

http://www.writemoretests.com/2012/02/how-to-estimate-like-adult-part-1.html

 

Article:  Disciplined Agile Delivery in a Nutshell

This book excerpt presents a hybrid agile framework that addresses one of the shortcomings of most agile methodologies in that they do not deal with the overall solution delivery process (see also patterns of effective delivery).  The article describes it as:  The Disciplined Agile Delivery (DAD) process framework is a people-first, learning-oriented hybrid agile approach to IT solution delivery. It has a risk-value lifecycle, is goal-driven, is scalable, and is enterprise aware.

http://www.informit.com/articles/article.aspx?p=1912063

 

Return to top

 

Software Testing & Quality

Article:  POKA YOKE - Applying Mistake Proofing to Software

Poka-yoke (Japanese for "mistake-proofing") is one of the cornerstones of lean manufacturing concepts from the Toyota Production System.  This article discusses how to apply this concept to software design and development, including some salient examples.

http://techie-notebook.blogspot.in/2012/07/poka-yoke-applying-mistake-proofing-to.html

 

Article:  Software Testing In the Large

This excellent article presents some ideas about developer-tester communication and how to implement an independent test function within a team as a project grows.  The authors discuss many practical ideas for overcoming "fuzzy" requirements when developing and implementing tests.

http://www.adampetersen.se/articles/developmentfuel/DevelopmentFuel.htm

 

Reference:  Session Based Test Management (SBTM) Mind Map

As an outgrowth of the development of exploratory testing, James Bach also created the concept of session-based testing.  This mind map (also in list form, if you prefer!) provides a concise reference to SBTM to help you get started.

http://www.ministryoftesting.com/2012/06/session-based-test-management-the-mindmap/

 

Tutorial:  Software Testing: How to Make Software Fail

Udacity has introduced a new online course in software testing presented by John Regehr.  Topics include the basic elements of testing, code coverage, and various subjects in random testing.

http://www.udacity.com/overview/Course/cs258/

 

Article:  My Experience as a QA in Scrum

Most people involved with software development know that agile methodologies like Scrum require each team member to more of a jack-of-all-trades rather than a specialist.  This first-person essay demonstrates just how true that is for the test analyst.

http://www.infoq.com/articles/experience-qa-scrum

 

Return to top

 

Tutorials/References

Tutorial:  RESTful Web Service Discoverability

Services and APIs are becoming nearly as important as web applications themselves.  This article presents some suggestions on how to make your REST service discoverable by others via a "generic" response to your URI.

http://www.baeldung.com/2011/11/06/restful-web-service-discoverability-part-4/

 

Tutorial:  Preparing Yourself for Modern JavaScript Development

With the rise of JavaScript as both a client (browser) and server language, chances are that you'll do some development with it in the not-too-distant future.  This article is intended to help you understand some of the basic concepts that you'll need to work with the various JavaScript frameworks.

http://www.codethinked.com/preparing-yourself-for-modern-javascript-development

 

Tutorial:  How to Design a REST API and Why You Should

Many Web 2.0 startups have transitioned from service provider to "API provider" and the majority use REST web services.  This comprehensive, yet very understandable, article explains how to design and implement a good REST API for your application.

http://www.websanova.com/tutorials/web-services/how-to-design-a-rest-api-and-why-you-should

 

Tutorial:  User Stories for Agile Requirements

User stories are the cornerstone of Scrum and other agile methodologies.  This excellent video tutorial from Mike Cohn explores how to prepare good user stories and to use them for requirements on agile projects.

http://www.requirementsmanagement.net/videos/user-stories-for-agile-requirements-2/

 

Reference:  A Visual Git Reference

If you're still trying to learn Git and need a nice cheat sheet to use, check out this reference.  It provides a simple, visual reference to the basic Git concepts and the most used commands.

http://marklodato.github.com/visual-git-guide/index-en.html

 

Tutorial:  Windows PowerShell Crash Course

Still using the plain batch/command scripts in Windows, because you haven't had time to learn PowerShell?  Well, put those excuses aside and spend just a little more than an hour to learn it using this video featuring PowerShell expert Don Jones (no relation).

http://channel9.msdn.com/Events/TechEd/NorthAmerica/2012/WSV321-R

 

Return to top

 

Career Development/Miscellaneous

Article:  Why Showing Your Face at Work Matters

New research suggests that telecommuters are judged more strictly by managers when it comes to performance reviews.  This article also has some tips for both workers and managers on how to improve interactions and make the review process more consistent.  Of course, there are differences of opinion on the whole matter, such as this one.

http://sloanreview.mit.edu/the-magazine/2012-summer/53407/why-showing-your-face-at-work-matters/

 

Article:  I Won't Hire People Who Use Poor Grammar. Here's Why.

Good grammar is a passion of mine (some might say more like an extreme pet peeve!).  Frequently, people dismiss good grammar as a "nice-to-have".  This essay eloquently shows the importance of good grammar and plain language as a relates to professionalism and attention to detail.

http://blogs.hbr.org/cs/2012/07/i_wont_hire_people_who_use_poo.html

 

Article:  IT class warfare — It’s not just IBM

The "class warfare" nomenclature aside, this article gives an excellent explanation for the dichotomy of so many unemployed IT workers at the same time that businesses say that they can't find qualified IT employees.  The bottom line is that it's simple economics:  Companies want to pay less for IT workers.

http://www.cringely.com/2012/07/06/it-class-warfare-its-just-ibm/

 

Article:  The Perfect Compliment

Everyone likes to receive compliments.  But not all of us are good are making our accolades specific, timely, and heart-felt.  This essay talks about how to do it and make it natural.

http://www.esquire.com/print-this/how-to-compliment-1009?page=all

 

Article:  A Strategy For The Dreaded Interview Coding Question

While you can brush up on answers to the "soft skill" questions that you are likely to get in an interview, it's often hard to anticipate the coding questions.  This essay gives a good approach for handling it and, just like writing good code, it starts with outlining your design, before writing the code.  And I would add that in most cases the interviewer is really just trying to verify the skills you list on your resume.  So if you don't really know Java, don't list it on your resume.

http://www.etherealbits.com/2012/07/a-strategy-for-the-dreaded-interview-coding-question/

 

Site:  Envisioning Emerging Technology

This site presents some excellent visualizations (a.k.a. infographics) about anticipated trends through 2040 in technology and innovation in a broad spectrum of domains, including AI, energy, biotech, robotics, and more.  The author assesses the relative importance and consumer impact.

http://envisioningtech.com/

 

Article:  Why Procrastination is Good for You

In this newsletter, we frequently feature tips about improving productivity and avoiding procrastination.  In this interview with Frank Partnoy, author of the new book Wait: The Art and Science of Delay, he says that our drive to fill every waking moment with productive activity has detrimental effects on creativity among other things.

http://www.smithsonianmag.com/science-nature/Why-Procrastination-is-Good-for-You-162358476.html?c=y&story=fullstory

 

Article:  How I Learned to Stop Getting Distracted and Love Productivity

There are probably enough web sites and articles on the Internet about productivity for you to spend the rest of your life (and beyond) trying to avoid procrastination.  This brief one has some great practical ideas.  The one that I liked best is to "bill yourself" for time-wasting activities.

http://www.stentontoledo.com/blog/how-i-learned-to-stop-getting-distracted-and-love-productivity/

 

Article:  The Best Strategy for Reducing Stress

This author makes the interesting observation that most of the stress we experience is due to unmet expectations.  Accordingly, he suggests that to reduce stress we need to re-calibrate (not necessarily lower!) our expectations into big-picture context.

http://blogs.hbr.org/bregman/2012/07/the-best-strategy-for-reducing.html

 

Article:  A Busy Person’s Guide to the Seven Habits

Management expert Steven Covey died this past month.  On the occasion of his passing, WSJ published this brief summary of his famous Seven Habits of Highly Effective People and the time-management matrix.  These principles are timeless and it helps to be reminded of them from time to time.  (In some ways, I find it ironic that the day he died is the same day that Marissa Mayer became CEO of Yahoo and the number of articles about Mayer's job change far outweighed those reporting about Covey's death.)

http://blogs.wsj.com/atwork/2012/07/16/rip-stephen-covey-a-busy-person%E2%80%99s-guide-to-the-seven-habits/

 

Return to top

 

Telecommunications/Networking Industry

Article:  We already use Wi-Fi more than cellular; Why not continue the trend?

With costs for carrier-grade wi-fi access points typically 20% of that of small-scale cellular picocells, this author suggests that industry look toward wi-fi technology for wireless WAN access.

http://gigaom.com/2012/07/10/we-already-use-wi-fi-more-than-cellular-why-not-continue-the-trend/

 

Return to top

 

Useful Utilities

Excel Multi Find Add-in (Free – Microsoft Excel 2007 or 2010 – 48kB)

If you ever want to find ALL occurrences of something in Excel, but are tired of clicking "Find Next", the Multi Find add-in comes to the rescue.  It displays all of the cells that meet your search criteria and allows you to go right the desired cell or to highlight all of them.  Moreover, you can search for multiple different items at one time.

http://www.mightymacros.com.au/Downloads.html#mfind

 

HTML Shell (Free – Cross-platform/Online tool – N/A)

HTML Shell is a free online generator for building a standards-compliant HTML boilerplate file.  In has options to include populate Javascript libraries (Mootools

, jQuery, and Dojo), Google Web Fonts, external or inline CSS style sheets and more.

http://htmlshell.com/

 

MyBatis Editor for Eclipse (Free –Cross-platform/Eclipse – 56kB)

This is a plug-in for Eclipse to supports syntax highlighting and code completion for MyBatis (formerly iBatis) XML files.  It supports both iBatis 2 and MyBatis 3 configuration syntax.  You can even navigate via <Ctrl>+click between your Java code and the MyBatis SQL definitions.

http://code.google.com/a/eclipselabs.org/p/mybatiseditor/

 

Weinre (Free – Cross-platform – 3.0 MB)

Weinre stands for WEb INspector REmote is a Node.js-based web debugger similar to Firebug, but designed to work remotely.  It is mainly intended to allow debugging of web applications running on mobile devices.

http://people.apache.org/~pmuellr/weinre/

 

Codebank (Free – Windows XP/2003/Vista/2008/7 – 763kB)

Codebank is a comprehensive hierarchical code snippet storage and management tool.  It includes syntax highlighting for popular languages (C/C++, Object Pascal, Java, XML, Visual Basic, VBScript, JavaScript, CSS, HTML, PHP, Perl, Python, SQL), indexed searching with regex support, encryption of snippet database, storage in portable XML format, shortcut keys for almost all functions, and much more.

http://zeraha.org/2011/06/codebank-hierachical-source-code-snippet-database/

 

Collide (Free – Cross-platform/Java – 40.8MB)

Collide (collaborative IDE) is a Java 7-based standalone collaborative editor designed to be used within a local network (i.e., no security, authentication, etc.).  It is built on a variety of technologies, including the open-source version of Google Wave.  Just launch it from the directory that you want to edit and have everyone connect via a web browser.  What could be simpler?!

http://code.google.com/p/collide/

 

Return to top

 

Just For Fun

A file that's both an acceptable HTML page and a JPEG

Do a "View Source" on this page in your browser.  Very interesting use of steganography to embed HTML markup in a JPEG file…  Or is it the other way around?!

http://lcamtuf.coredump.cx/squirrel/

 

Method and apparatus for representing numero-alphabetics in an analytical engine: encoding, storage, processing and retrieval

With Apple's recent award of patent #8223134 for the scroll bar, perhaps this satirical application for patenting ASCII code will make it through too.

http://www.groklaw.net/comment.php?mode=display&sid=20120719130253497&title=A%20bogus%20patent%20application&type=article&order=&hideanonymous=0&pid=992158#c992197

 

RFC 1097

Let it never be said that geeks do not have a sense of humor.  Although I haven't been able to find any Telnet implementations that include this.  And this is only one of many funny RFCs.

https://tools.ietf.org/html/rfc1097

 

fontBomb

This site's tag line is "stylishly destroy the web".  Basically, it provides a bookmarklet that allows you to "blow up" any web page by having it scatter the text content around the page.  Don't like what you're reading?  Then "fontBomb" it.

http://fontbomb.ilex.ca/

 

Return to top