September 2006 Newsletter
We are closest to people when we help them grow. –Milton Mayeroff
If knowledge can create problems, it is not through ignorance that we can solve them. –Isaac Asimov
There are two ways to live your life: one is as though nothing is a miracle, the other is as though everything is a miracle. –Albert Einstein
The purpose of computing is insight, not numbers. –R. W. Hamming
For he who has health has hope;
and he who has hope, has everything.
–Owen Arthur
Criticism, like rain, should be gentle enough to nourish a man's growth without
destroying his roots. –Frank A. Clark
The newest computer can merely compound, at speed, the oldest problem in the relations between human beings, and in the end the communicator will be confronted with the old problem, of what to say and how to say it. –Edward R. Murrow
Worry is interest paid on trouble before it falls due. –William R. Inge
Testing can show the presence of errors, but not their absence. –E.W. Dijkstra
Live in such a way that you would not be ashamed to sell your parrot to the town gossip. –Will Rogers
This excellent article provides a good structure to anyone who is trying
to implement RUP (or really any software development methodology) and feels
overwhelmed by the sheer breadth and depth.
This gives you an idea of the vital elements of any implementation.
http://www.devarticles.com/c/a/Development-Cycles/The-Ten-Essentials-of-RUP/
This article presents some techniques that project managers and development
leads can use to size up and plan a project quickly.
http://www.ddj.com/dept/architect/189401902
Many times when a technology or systems project fails the blame falls
squarely on the IT group and the failure is targeted as a technology
problem. However, this is rarely the
full story. This article discusses some
causes of failure and can be done about it.
http://www.mbsys.com.au/articles/has_it_become_a_dirty_word.html
More and more companies are learning, some the hard way, that IT
integration is the cornerstone of the successful overall company integration.
http://www.informationweek.com/news/showArticle.jhtml?articleID=189601047
This article is geared toward students in IT graduate and professional
programs, but it provides excellent advice to anyone in the IT world. It includes some particularly salient
questions to ask yourself if you are considering changing jobs or careers.
http://polaris.gseis.ucla.edu/pagre/leader.html
Despite the title, this list of a dozen things is good for helping anyone
improve their skills in the workforce and help them in their careers, whether
you are just out of school or an old pro.
http://blog.guykawasaki.com/2006/08/ten_things_to_l.html
This simple slide show-style article points out a number of things that
IT people continue to do, even though they should know better by now.
http://www.eweek.com/slideshow/0,1206,a=186516,00.asp
This author takes input from a variety of well-known sources and crafts
his own list of the characteristics of great software developers,
including: being pessimistic, angered by
sloppy code, long term life planners, and attention to detail.
http://www.softwarebyrob.com/articles/Personality_Traits_of_the_Best_Software_Developers.aspx
This three-part essay discusses the challenges and pitfalls of accurate
effort and duration estimation in software development projects. The author presents some unique and original
ideas about improving estimation and project planning.
http://www.cioinsight.com/article2/0,1540,1991823,00.asp
http://www.cioinsight.com/article2/0,1540,1995816,00.asp
http://www.cioinsight.com/article2/0,1540,1996504,00.asp
The premise of this comprehensive introduction to project management is
that PM is not a mystical art, but a skill that can be learned and
developed. The author introduces 10
axioms of PM success and then elaborates on those.
http://www.nickjenkins.net/prose/projectPrimer.pdf
This article discusses the six sigma quality management concepts with their applicability to non-manufacturing industries, such as IT.
http://www.informit.com/articles/article.asp?p=471093
In this article, the author examines some of the bad (negligent?) approaches to error handling (or mishandling) that result in application defects. It provides some good food for thought for “negative testing” scenarios. (Warning: The article contains some non-family friendly language.)
http://damienkatz.net/2006/04/error_code_vs_e.html
As SOA and web services become more common, standard approaches to testing these technologies is required. This article gives some ideas on the special testing needs for them.
http://www.it-director.com/article.php?articleid=13335
Brian Kernighan, creator of awk and C programming languages, looks at how considering testing makes developers write better code to begin with. His view is based on 25 years of experience in maintaining and enhancing awk.
http://www.cs.princeton.edu/~bwk/testing.html
Integration testing is a “necessary evil” on all software development projects. This article gives some techniques to simplify and make this testing more effective.
http://www.ddj.com/dept/debug/190302526
One of the common scenarios that testers find themselves in is trying to test an application without good (or any!) requirements. This article gives some great suggestions on how to approach testing positively in this situation.
http://www.riceconsulting.com/articles/testing_without_defined_requirements.htm
This detailed, easy-to-read article explains just how a bit of data (a
packet) goes from one computer, through switches, routers, etc. to another
computer.
http://www.securityfocus.com/infocus/1870
This AJAX-based online tool allows you to create and test regular
expressions online in real time. Great tool for quick checking of regex
syntax.
http://www.cuneytyilmaz.com/prog/jrx/
This detailed, hands-on article helps to demystify the process for
actually creating an AJAX-enabled web application. Not only does it discuss
the technical details, but gives some of the historical and architectural
background.
http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=9002170
This very well done tutorial provides an overview of the concepts and
purposes of database normalization and then provides a detailed, step-by-step
example of normalization through the various normal forms.
http://www.databasedev.co.uk/database_normalization_process.html
This comprehensive guide covers most of the command-line utilities in
Windows Server 2003 (of which many of the utilities also exist in Windows
XP). The guide shows syntax as well as
great examples for each utility.
http://www.preplogic.com/products/documents/cmd-ref-guide/default.asp
The Eclipse IDE platform has
built-in support for CVS version
control system. However, Subversion is starting to overtake CVS
as the version control system of choice.
This article provides detailed, step-by-step instructions for getting
integrated Subversion support in Eclipse.
http://www-128.ibm.com/developerworks/opensource/library/os-ecl-subversion/
This frequently-updated site provides many tutorials and code samples
from a variety of languages and technologies.
The site is oriented a little bit more toward web-based technologies,
but it's scope is still rather broad.
The author of this site presents an interesting argument: You can't completely avoid procrastination, so you need to make your procrastination "productive", by not doing absolutely nothing, but by working on something that is really lower on the priority scale.
http://www.structuredprocrastination.com/
This 13th annual report includes the list of the top 100 companies as well as what makes a great working environment. Oklahoma-based American Fidelity Assurance made the top 5 list. And be sure to read this editorial on the secret to being a "best place".
http://www.computerworld.com/action/article.do?command=viewArticleBasic&articleId=111558
While certainly the main objective of the interview is for the hiring company to determine if you are a match for the job, it is also important for the candidate to determine if he or she is a good fit, as well.
http://www.informationweek.com/news/showArticle.jhtml?articleID=187200561
While a single person with all of the perfect traits for IT probably doesn’t exist, this article outlines some characteristics that are important for future success in IT. Not surprisingly, this person has a combination of business and technical skills.
http://www.eweek.com/article2/0,1895,2002881,00.asp
With the many and often varying demands on technology workers, not to mention the distractions, it is frequently difficult to stay on task at work. This application developer offers practical advice on how keep your concentration, including some very simple ones (close applications you aren’t using) to some more complex, but equally important (write out a list of items to accomplish).
http://www.davecheong.com/2006/08/14/18-ways-to-stay-focused-at-work/
Understanding business operations is a key skill for today’s IT professionals. Most people don’t have time to take a full MBA course. This site can provide you with a jumpstart on the common MBA topics. The site is organized well into sections on all relevant topics, including accounting, finance, management, marketing, economics, and more.
Further solidifying the trend toward IT-to-business alignment, a new hiring outlook from survey of 400 IT executives shows that project managers and programmers/systems developers top the list of needed IT professionals.
http://www.cioinsight.com/article2/0,1540,2004045,00.asp
A recent survey of senior managers, indicates that almost 2/3 of them consider likeability and personality as more important factors when selecting employees than skills or certifications.
http://www.informationweek.com/news/showArticle.jhtml?articleID=192203543
While you may not agree with this author’s list of the greatest software applications of all time, it is definitely a well-researched and thoughtful look back at the history of development. And check out the author’s list of 5 applications that almost made the list and where Windows fits on the scale of greatness.
http://www.informationweek.com/news/showArticle.jhtml?articleID=191901844
Quick Access Infobar adds a simple, non-intrusive lookup box to Windows Task Manager that allows you to do a search of the ProcessLibrary.com site for details about any of the various processes running on your system. ProcessLibrary.com will tell you whether this is a process that is safe to terminate or related to a service that you may be able to safely disable.
http://www.processlibrary.com/quickaccess/
Folder2MyPC allows you to add a shortcut to any application (or file) to the main folder of Windows My Computer or the Control Panel to make accessing them convenient. The shortcut can be set to be available for all users or only the current user.
http://www.shedko.by.ru/en/soft/f2mpc.htm
Printer Anywhere allows you to print to any printer via LAN, WAN, or the Internet. Simply install the software on the host and client machines and share printers from the hosts. Then the clients can print to any printer (local or network) shared by the host.
http://www.printeranywhere.com/
pycron is Windows port of the Unix cron utility that allows you to run tasks automatically according to any schedule that you define. It uses the standard crontab syntax/structure and even includes a handy GUI crontab editor. The utility can be configured to run as a service, so that it will run even if you are not logged into the system.
http://www.kalab.com/freeware/pycron/pycron.htm
XMLStarlet is a set of command line utilities to transform, query, validate and XML data in a manner similar to the manipulation of text files using standard Unix tools like grep, sed, awk, etc. XMLStarlet is quite flexible and full-featured and since it is command line based, it can be easily scripted.
http://xmlstar.sourceforge.net/
ZuluPad is a Notepad-style text editor which features some built-in Wiki capabilities for added flexibility. When you enter text for a “Wiki-ized” topic, it is automatically turned into a link to that topic. It even has a feature called ZuluSync that allows you store notes to a server. Great for notes and even as a simple PIM.
http://www.gersic.com/zulupad/
True X-Mouse gives Windows users all of the common mouse functions that Unix/Linux X/Windows users take for granted: input focus set by mouse hover, copy selected text on release of left mouse button, paste text with middle mouse button, minimize window by right click anywhere in window, and more.
http://fy.chalmers.se/~appro/nt/TXMouse/
GroupBar is a tool for Windows XP that allows grouping of applications and windows according to any method that you like. It behaves similar to the taskbar, but provides a free form way to arrange windows. You can define tabs for related windows and drag and drop windows between various GroupBars.
http://research.microsoft.com/vibe/groupbar.aspx
I know that this space is usually used for application tips, but this one is useful too! Next time you are going on a trip, take along a plastic zipper bag and put all of your belongings that usually go in your pockets into it. Then, when you go through security, you only have one thing to put on the conveyor and to pick up at the end.
One of my greatest disappointments in the evolution of Windows was Microsoft's decision to drop the Office toolbar in Office 2003. I've searched for alternatives, but never found quite what I was looking for… Until now. And it's actually built in to Windows! You can add a toolbar (actually up to three!) to your Windows desktop with shortcuts to your most-often used applications. To do so:
(1) Create a folder in Windows Explorer for the shortcuts.
(2) Copy shortcuts from the Start Menu folder to the folder created in step #1.
(3) Create a shortcut to the folder created in step #1 and move this shortcut to the desktop.
(4) Drag the shortcut that you put onto the desktop to any of the desktop edges and release the mouse. Windows will create a toolbar of the folder's contents.
(5) Right-click on the toolbar title to modify options, such as displaying large or small icons, icon text, auto-hide, and always on top.
The toolbar will persist, even when you log off and back on. Furthermore, you can delete the folder shortcut on the desktop (from step #3 above), if desired. When you add new shortcuts to the folder (from step #1 above), the shortcuts will automatically be added to the desktop toolbar.
This online, Flash-based game is similar to the classic Risk game in strategy, but the game play is quicker and simpler. The object of the game is to win battles against adjacent territories by dice roll totals. You can compete against up to 7 computer opponents. The game is both addicting and fun.
http://www.gamedesign.jp/flash/dice/dice.html
Want an excuse to get out of the dreaded meeting? Or not sure that this blind date is going to work out? Just enter your cell phone number and time of call at Popularity Dialer and it will call you with a pre-recorded message that sounds like an actual conversation at the designated time.
This cool online (or downloadable for Windows or Mac) tool allows you to design and layout a garden and view what it will look like in 3D. You can save your creation and even view others' designs.
http://www.bbc.co.uk/gardening/design/virtualgarden_index.shtml
Board Dots is another one of those little Flash-based games that looks easy to begin with, but is actually quite challenging. The premise of the game is to fill up the board with dots by placing dots. You can only place dots adjacent to the last location and the row or column will automatically get filled until it’s blocked.
http://www.boredmuch.com/view.php?id=764
An all-new collection of those humorous, and sometimes oh-so-true, counterpoints to the common motivational posters.
http://content.techrepublic.com.com/2346-10878_11-30058.html
If the pre-made Demotivator posters are not to your liking, just use this online tool to create your own using any of your own photos or the millions available on Flickr. Choose the desired photo and enter your title and caption and you’re done!
http://flagrantdisregard.com/flickr/motivator.php