December 2008 Newsletter
It is far more impressive when others discover your good qualities without your help. –Judith Martin
Each problem that I solved became a rule which served afterwards to solve other problems. –Rene Descartes
To change and to change for the better are two different things. –German proverb
How comes it to pass, then, that we appear such cowards in reasoning, and are so afraid to stand the test of ridicule? –Sir Anthony Ashley Cooper, 7th Earl of Shaftesbury
To acquire knowledge, one must study; but to acquire wisdom, one must observe. –Marilyn vos Savant
Stock prices are not the omniscient wisdom of the universe expressed in numeric form. They are the result of the machinations of millions of global gamblers. –Paul Glen, in Computerworld, 11/03/2008
Converting business requirements into working software that does what the
user wants is the key "transformation" process of software
development. But business users and IT
often speak different "languages".
Here are some ideas about how to use agile practices to bridge this gap.
http://www.sdtimes.com/link/32967
Most projects or applications have some longer-term objectives. This author warns against doing too much
modification during current development cycles in anticipation of future
enhancements.
http://www.37signals.com/svn/posts/1324-beware-of-future-creep
This article makes a good case for why the database should not be used as
the de facto API for integration of various applications.
An unfortunate reality of much of software development is that project
schedules slip, usually for multiple reasons.
Here are some tips for getting back on track from an agile perspective,
but most of them apply to traditional methodologies like waterfall.
http://agilesoftwaredevelopment.com/blog/peterstev/10-ways-save-slipping-project
An article from almost 15 years ago is still relevant today in helping
the IT organization determine its vision and role within the organization. The author's point out that a bad economy
might seem like an odd time to reassess the vision, but they say that it's
relevant, because the
business is increasingly looking to IT for innovation and differentiation.
http://www.cutter.com/research/2008/edge081111.html
While I'm inherently skeptical about government intervention, I guess
this action at least demonstrates recognition on the part of government about
IT projects and accountability for results.
Perhaps industry can follow their lead in this area.
http://blogs.zdnet.com/projectfailures/?p=1142
Robert Glass reminds us about some of those axioms of development that
are usually overlooked (or ignored).
http://www2.computer.org/portal/web/buildyourcareer/fa035
Industry pundit Johanna Rothman says that IT managers need to
definitively kill failing
projects instead of "shelving" them with hopes of returning to
them later. She says that setting them
aside causes people to continue to spend energy (perhaps emotional energy) on
the project instead of addressing closure and moving on.
http://jrothman.com/blog/mpd/2008/11/abandoning-vs-killing-projects.html
One of the author's of a new article
on creativity in business discusses how creativity
itself can't be managed, but organizations can promote an environment that
encourages creativity by such things as giving slack time, promoting
risk-taking, and fostering optimism that people can make things better.
http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=327195
With the economic turmoil and corporate belt-tightening, now is a good
time for corporate IT groups to start acting like "a business within the
business". This author suggests
that IT shops look at how 3rd party outsourcers work and try to adopt similar
models.
http://www.baselinemag.com/c/a/IT-Management/IT-Needs-to-Run-Like-a-Business/
The author of one of the "classical" texts on agile development
suggests that agile methods have been in decline for some time. And he points to a common malady of most any
methodology: The
tendency to only adopt bits and pieces or to give up on full implementations
when it gets "hard". And read this
counterpoint to Shore's position.
http://jamesshore.com/Blog/The-Decline-and-Fall-of-Agile.html
IT management has a habit of pushing developers to reduce estimates. This author suggests using estimate ranges
with different confidence levels associated with the points in the range.
http://blogs.techrepublic.com.com/tech-manager/?p=627
There has been a lot of discussion about so-called "business-IT
alignment" over the past dozen years or so. However, this author suggests that the key to
obtaining value from IT investments starts with proper management of
"organizational capital"—which at their core are the relationships
between individuals in the organization including between IT and business.
http://www.cutter.com/research/2008/edge080722.html
Bridging the divide (which sometimes seems to be widening) between IT and
the business is a top priority for most IT executives and senior managers. One of the key roles for the CIO is to
communicate with business counterparts and manage the business expectations of
IT.
http://blogs.techrepublic.com.com/cio-for-hire/?p=131
As software testing moves from a substantially manual discipline to more automated and data-driven, testers need to be aware that their tests themselves are also code. And they have to consider the question of: Who tests the tests?
This programmer suggests that even with all of the well-known problems with C (think buffer overflow, stack smashing, etc.), programming C actually results in more reliable code, because it steers developers away from sloppy techniques and makes them really consider the consequences of their implementation approach. And, I think that he has a point considering how many robust open source programs (such as Linux) are fundamentally written in C.
http://tratt.net/laurie/tech_articles/articles/how_can_c_programs_be_so_reliable
This author suggests three basic categories for bugs: logical (the "classical" error where the code implementation is incorrect), wiring (data type mismatches, incorrect field references [last name and first name switched, etc.]), and rendering (the output displayed is incorrect; must be assessed by person).
http://googletesting.blogspot.com/2008/11/my-unified-theory-of-bugs.html
Testing SOA applications presents some unique challenges due to the distributed nature of the systems and the fact that many components are often "black boxes". This article discusses some of the principles and presents a Ruby-based test harness that can be used.
http://www.ddj.com/architect/211600992
This author uses the example of the care and craftsmanship used by model builders as a paradigm for developing high-quality software. The underlying idea is that attention to detail on the parts of an application not seen by users is a good indication of the overall quality of the application.
http://unweary.com/2008/09/painted-on-the-inside.html
Effective writing can seem daunting, but it doesn't have to be. This article provides some tips on proving
more punch to your writing by reducing some "killer" words.
http://preciseedit.com/Article10OverusedWords/tabid/215/Default.aspx
This book, now available for free download in PDF, is a comprehensive
exploration and visualization of the Internet and the underlying
infrastructure. It includes over 300
full-color images and "maps" of cyberspace spanning 30 years.
http://www.kitchin.org/atlas/index.html
No, not computer languages, but real human languages! (Remember those?) This site provides a series of ten 1 - 2
minute language lessons in a variety of languages, including Spanish, French,
Mandarin Chinese, and more. These
tutorials are not intended to make you a fluent speaker, but simply to help you
with a few phrases that will help you when traveling or interacting with other
native speakers.
http://www.oneminutelanguages.com/
Even with all of the new communications tools, such as instant messaging,
Twitter, text messaging, etc., e-mail is still the primary tool for modern
communication. And most people are
inundated with e-mail. So you need to
have a plan and some tactics for using e-mail effectively. These are some great tips for doing that.
http://thinksimplenow.com/productivity/15-tips-for-writing-effective-email
This article presents a list of 15 simple tasks to do or programs to
write when you are learning a new programming language that will help you get a
broad understanding of the intricacies of the language.
http://smartprogrammer.blogspot.com/2006/04/15-exercises-for-learning-new.html
I'm not sure if these tips will make you the "coolest" programming or not, but this article definitely has some great points and links to other resources on developing your technical and personal skills as a developer.
http://effectize.com/become-coolest-programmer
Everyone wants to get along with the folks they work with. But sometimes we do things that annoy others without even realizing it. Here are some tips for good manners in the workplace.
http://blogs.techrepublic.com.com/10things/?p=438
This industry pundit suggests that if Microsoft is serious about competing with Google in the advertising realm that they should give Windows 7, the successor to Windows Vista, away for free as an ad-supported platform.
http://www.businesspundit.com/give-windows-7-away-for-free/
Computerworld's annual salary survey shows IT compensation increases were flat compared to 2007 with average increases of 3.5%. Nevertheless, in light of the tough economy, 60% of survey respondents said that they are very satisfied (17%) or satisfied (43%) with their compensation packages.
http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=9119020
Many people (and organizations!) confuse management and leadership. There are key differences between the two. This article explores some of the characteristics of leadership.
http://www.globalknowledge.com/training/generic.asp?pageid=2230
What do you consider the most significant events in the history of computers? Check out this article to see what the London Daily Times technology writers picked.
http://timesonline.typepad.com/technology/2008/11/top-25-days-in.html
This excerpt from Malcolm Gladwell's new book, Outliers: The Story of Success, indicates that hard work, especially early in life, is what sets those who excel apart from others. Also, he makes the interesting observation that these people also have to be around when the important tools of their trade are being developed.
http://www.guardian.co.uk/books/2008/nov/15/malcolm-gladwell-outliers-extract
The founder of startup incubator Y Combinator, who has been called one of "The 25 Most Influential People on the Web", discusses the difference between "wisdom" and "intelligence". One of his excellent insights is ' that "wise" means one has a high average outcome across all situations, and "smart" means one does spectacularly well in a few.'
http://www.paulgraham.com/wisdom.html
This article touches on some updates on a topic that was presented very well by Philip Greenspun a couple of years ago. The basic concept is that women (and men for that matter) don't go into technology or other sciences because they simply don't think the field holds promise.
http://www.nytimes.com/2008/11/16/business/16digi.html
Everyone is aware that the economy is bad everywhere. Now, more than ever, it is up to the individual IT worker to manage their own careers. This report gives some tips on how to survive–and even thrive–in the downturn.
http://www.infoworld.com/archives/t.jsp?N=s&V=116848
Read this list of common characteristics of messed up workplaces and decide if you've got it good or bad. But remember, you don't have to just be resigned to a bad work environment; you can do something about it.
http://blogs.bnet.com/ceo/?p=1462
Hourly wages for IT workers are down 6.2% and are at their lowest level since 2006.
http://www.informationweek.com/blog/main/archives/2008/11/the_incredibly.html
A common paradigm in most companies is that the best developers tend to not stay very long. This article discusses how the programming career is changing and is sub-titled "Employment 2.0".
http://thedailywtf.com/Articles/Up-or-Out-Solving-the-IT-Turnover-Crisis.aspx
Many people have the idea that experts in any field are born, rather than made. This article from Harvard Business Review refutes that thesis and says that expertise in most domains have some common characteristics, mostly around deliberate practice and coaching.
An L.A. Times business writer speculates with recent price cuts by Verizon for bundled services and the economic slowdown, a telecom price war is likely. He also notes that cable companies have been more successful at offering phone service than phone companies have at selling pay TV.
http://latimesblogs.latimes.com/technology/2008/11/telecom-price-w.html
IBM has entered a deal with International Broadband Electric Communications to bring broadband to rural customers via power lines. With a big name like IBM, this might mean that BPL will really take off this time.
http://www.informationweek.com/news/showArticle.jhtml?articleID=212002016
These vendors plus Level 3 have announced the first non-laboratory test platform for 100-GigE services. While a number of vendors have demonstrated 100Gbps waves, this is the first test system with Ethernet interfaces.
http://telephonyonline.com/ethernet/news/internet2-hundred-gige-111808/
Tom Evslin, who
founded IXTC, one of the first VoIP providers, predicts boldly that by the end
of Obama's first term, there will be no copper landlines in the
http://seekingalpha.com/article/106432-comm-forecast-no-1-no-more-landlines
This article is a good demonstration of how voice services are becoming (maybe "have become") just another data service on top of the IP platform. This seems to be the concept that BT had in mind earlier in the year, when they acquired Ribbit.
http://www.networkworld.com/news/2008/111408-google-microsoft.html
A new report from Arbor Networks says that denial of service attacks have increased bandwidth consumption from megabits in 2000 to in excess of 40Gb today and that service level attacks such as on VoIP are increasing. Also, they indicate that DNS cache poisoning is the largest unaddressed threat.
http://www.fiercevoip.com/story/arbor-networks-voip-ipv6-emerging-security-threats/2008-11-11
The most significant reason for failure of VoIP and unified communications implementations by businesses is that the existing network infrastructure is not prepared to handle it, especially the QoS requirements for voice.
http://www.processor.com/editorial/article.asp?article=articles/P3044/21p44/21p44/21p44.asp
Annoyed by printouts of web pages that leave extra white space or that cut off part of the text on the edge? Well, PrintWhatYouLike.com comes to your rescue. This free, online service allows you to select only the portion of a particular web page for printing and apply special formatting (text size, removing background images, etc.) to it. Just enter the URL of the page at the PrintWhatYouLike.com site to get started.
http://www.printwhatyoulike.com/
FragExt is a free defragmenting tool with some unique features. Specifically, it's implemented as a shell extension and it allows you to defragment individual files (or a few files at a time), instead of trying to defragment an entire drive. In addition, Windows Explorer will display file fragmentation details, as well as other relevant information like alternate data streams. Versions for both 32-bit and 64-bit Windows are provided, as well as source code.
http://www.mutexed.com/code/FragExt/
Code Browser is a unique cross-platform free text editor that supports code folding to make navigation easier. In addition to code folding, it offers natural links between files and folders, a tree view of the folded section hierarchy, syntax highlighting for many languages, as well as user-defined syntax highlighting, and powerful search-and-replace functions.
http://code-browser.sourceforge.net/
EtherPad is a free online collaborative text editor. It allows multiple users to simultaneously edit a shared document. It is sort of a cross between Gobby and Google Docs. EtherPad even lets you save multiple versions/revisions, so that you can always go back.
http://www.pcwintech.com/node/8
Even if you've made the switch to Linux (XUbuntu is my preferred distribution; go here for a pre-configured VirtualBox image if you can't completely switch!) for your desktop or laptop platform, there are still going to be times where you need (or want) to run Windows applications. In this case, Wine is the tool of choice. However, Wine is notoriously difficult to configure. Enter Wine-Doors which is a Wine add-on that simplifies installation and configuration of Windows applications running on Wine. Wine-Doors will assist you with installing the application in a wizard-like manner and even create desktop menu items.
We have featured TOra (Toolkit for Oracle) before, but it has recently undergone some major updates in new version 2.0. Not only does it have support for native SQL*Net connections to Oracle 8.x, 9.x, 10.x, and 11.x databases (10.x and 11.x are new), but it also provides native connectivity to MySQL (now owned by Oracle) and PostgreSQL databases, as well as any database that has ODBC support. It provides syntax coloring for PL/SQL and standard SQL constructs and has many other excellent features. Native binary packages are available for Windows, Debian Linux (and other DEB-based distributions), Ubuntu Linux, and Red Hat Linux (and other RPM-based distributions).
MS Word comes with many built-in Table AutoFormat styles (Table | Table AutoFormat…), but sometimes you need a little more customization or flexibility. Here's how to define your own style. Open the Table AutoFormat window and press New… In the New Style window, give an appropriate name for your new style and choose the style that you want to start with in the Style based on list. Then use the various choices in the Apply formatting to list and make the desired customizations. One of the best features is the ability to apply "stripes" (different colors or formats) to odd and even rows and columns and even to have multiple row or column "groups" with the same pattern/background. When you are done, press OK and Close. Now you can select that style the next time you create a new table. To limit the list to only your custom styles, in the Table AutoFormat window, choose User-defined table styles in the Category list. And, if you want to change your style later, just click on Modify…
Most people use caffeine of one sort or another: soda (or pop), coffee, or tea. This neat little essay explains why the effect of caffeine on alertness is not all that it's cracked up to be.
http://arvindn.livejournal.com/57651.html
Here's what happens if you aren't careful about your "out of office" automated reply! :)
http://news.bbc.co.uk/2/hi/uk_news/wales/7702913.stm
View and search from the extensive LIFE magazine photo archive. So far, 20% of LIFE's photographs have been archived, but Google plans to eventually host the entire archive.
http://images.google.com/hosted/life
This "good news" spoof of the NY Times was actually pulled off by three Times employees. They even handed out thousands of print copies!
Own a cat? You better check out this page, because he or she might be involved in a murder conspiracy!
http://www.catswhothrowupgrass.com/kill.php
Do you ever have people ask you a question that could easily be answered by a simple web search? It gets quite annoying after a while. As a tongue-in-cheek response to their request, give them a link to the search at this site. It displays an animated demonstration of how to do the search and then displays actual results from Google! :)
http://www.letmegooglethatforyou.com/
How well do you remember your high school geometry? And how good is your hand-eye coordination? Play this nifty little online Flash game to find out.
http://woodgears.ca/eyeball/index.html
All those things that you never knew had a name or didn't know what the name was? Well, this article tells you what some of them are. The list is heavy with anatomical names, but it didn't include one of my favorite words: that doohickey that hangs down in the back of your mouth.