December 2009 Newsletter
A true friend is someone who thinks that you are a good egg even though he knows that you are slightly cracked. –Bernard Meltzer
Everybody knows that something can’t be done and then somebody turns up and he doesn’t know it can’t be done and he does it. –Albert Einstein
Always and never are two words you should always remember never to use. –Wendell Johnson
Don't be yourself—be someone a little nicer. –Mignon McLaughlin
Nothing can add more power to your life than concentrating all your energies on a limited set of targets. –Nido Qubein
He will always be a slave who does not know how to live upon a little. –Horace
I'm not happy, I'm cheerful. There's a difference. A happy woman has no cares at all. A cheerful woman has cares but has learned how to deal with them. –Beverly Sills
This report emphasizes that enterprise architecture success is more about interpersonal/social skills and communication on the part of the architecture team than choosing the right platform or set of “best practices”.
Using the example of Google (and, probably more to the point, Gmail, which was in “beta” for 5 years), the author explains the essence and value of agile development: frequent, small improvements to maintain user interest and engagement.
Shifting requirements and changing priorities are a fact of life for developers and project managers in most organizations. This article presents some suggestions for how to adapt and to build a development environment that is tolerant of these changes.
Test-driven development (TDD) is a key agile development practice that improves cycle time by reducing defects passed down from the implementation process. Here are some tips on how to get started with TDD.
On almost any task, but particularly in software development, it is quite easy to get off track from the task at hand and from the overall objective that is to be accomplished. In this short article, the author recommends what he calls periodic “root objective analysis” where you objectively assess whether or not what you are doing now getting you closer to the goal or not.
This article explains the analogues of the kaizen principles from manufacturing in software development. In particular, the author discusses the seven wastes and gives tips about avoiding them.
Even though Microsoft has long touted the benefits of visual programming (think Visual Basic and Visual Studio), many of its top developers still prefer using a text editor and running the compiler from the command prompt.
As business intelligence (BI) goes mainstream in most organizations, management is changing from a focus on analytic dashboards to tools that tie these metrics to the organizational goals and objectives.
This article presents another perspective in the on-going debate about the future of Java. In addition to the (apparent) consensus that the JVM is the real future of Java, this author recommends some relatively minor changes to the Java language itself (based on some of the things he perceives that .NET does better) to preserve its utility for the foreseeable future.
With some pending guidelines on contract law for software, there are concerns that developers of any software, including open source, could be held liable for defects in the software, even if they weren’t known at the time of delivery/distribution.
Almost everyone can benefit from checklists and patterns and that includes testers. This article explores some of the heuristics that can be applied to testing to drive consistency and completeness.
The FAA has released a preliminary report on the 11/19/2009 failure of their flight-plan filing system (the third major failure in just over three years) that caused significant delays and cancelations. The root cause was a faulty card on a router and only one person who access to a replace card.
In their 2009 “Chaos” report, The Standish Group notes that project failure showed a marked increase over last year. While process problems, mainly around communication, were the major issue, Grady Booch says that issues of “imagination”, which are really around flexibility and agility, have become a significant contributor, as well.
Uncle Bob Martin emphasizes that test automation is important, but that automation should be focused on APIs and application functionality and not on the GUI to avoid problems when the GUI inevitably changes.
There are so many different development/programming tools out there that it’s hard to keep up. This site provides a well-organized and quite comprehensive list of tools organized by programming language, platform, and even use (e.g., modeling, project management, programming, etc.).
Every development project, even those with just one developer, should use some type of version control system to maintain their source code. Very quickly, Git has become the most popular free/open-source version control system and many open-source projects have moved to it. This tutorial is a comprehensive step-by-step treatment of Git, including even some of the esoteric features. And after you learn the basics, check out these tips to improve your GIt skills and productivity.
If you are looking for a brief, but comprehensive history of the Internet from the time that Al Gore invented it ;) up to now, this is a great resource. This article includes links to Wikipedia for additional information on most items.
If you are interested in learning the basic principles of lean software development, this is the first place to start. It covers the history down to detailed explanations of the “14 principles” of the Toyota Production System (TPS – Not that TPS!) and how they apply to software development.
In this presentation, AI researcher Michael Covington promotes a technique called “amplifying your intelligence” by using writing to improve your thinking skills, which in turn helps you assimilate information more effectively.
An IBM researcher has solved a 30-year-old problem in public-key encryption: Can encrypted data be fully processed and analyzed without knowing its content (i.e., without decrypting it)? It turns out that the answer is “Yes” by using a mathematical object called an “ideal lattice”. However, the practical application of this finding seems questionable at present.
Alain de Botton discusses the false grace that people demonstrate in the business environment, especially as it relates to meetings, and how these “courtesies” end up wasting so much time.
Not surprisingly, this salary survey shows that wages in IT stayed pretty much flat for the last year. The report also indicates that many technology workers will probably “jump ship” to a new job when the economy begins to improve.
In this interview, Ray Tomlinson talks about the invention of e-mail, including the choice of the ‘@’ as the separator between the user name and host name in e-mail addresses.
Many people were turned off about writing because of strict rules enforced in school. Well, here are some tips that give you some freedom to make your writing your own.
Bad behavior doesn’t seem to be limited to college kids on spring break. We often discuss business-IT alignment topics in this newsletter, but those tend to be focused on organizational misalignment. In this article based on some new research by the authors, they note that IT leadership of unconsciously engenders so-called “shadow” behavior that focuses on “doing it right” and continuous improvement rather than agility and flexibility that most organizations need in times of uncertainty. This behavior unwittingly pushes business customers away from IT. I think that this observation is what is driving the rise of recent discussions about the end of the CIO role.
At one time “farm-sourcing”, outsourcing
domestically to rural areas, looked like a very good alternative to
off-shoring. However, the economic
downturn and still persistently lower salaries in
Never one to shy away from controversy, H-P CEO Mark Hurd says that effective IT is ultimately the responsibility of the CEO. Furthermore, he says that business-IT alignment can only be successful when driven from the top levels of the organization.
While specifically focused on the manager, these tips are valuable to anyone who wants to improve his/her leadership skills. Remember that there is a big difference between management and leadership and everyone can (and should!) be a leader, regardless of your official position in the organization.
In these tough economic times, you need all of the help you can get to set yourself apart from the many candidates for a given job. This article emphasizes that rather than filling your resume with a bunch of technical jargon and applications you’ve used, you need to focus on the value that you added to your organization including quantifying it time and dollar terms.
With the growth of video on the Internet (YouTube alone accounts for 7% of Internet traffic!), carrier peering arrangements are undergoing transition from no-fee to revenue-generation.
Citing broadband adoption rates of 55% to 70% in rural, low income, minorities, and elderly communities, Julius Genachowski claims that each increase of 10% in broadband use corresponds to 1.2% to 1.5% increase in GDP.
Klogshow is a handy cross-platform (Windows and Linux) tail-like application that displays the last few lines of a text file in a transparent window on your desktop. Great for monitoring local log files when doing development.
Taskbar Helper allows you to clean up your cluttered taskbar by hiding the icons for applications that you aren’t currently using. You can either hide the application entirely from the taskbar or have it put an icon for the application in the system tray. In addition, you can even specify that particular windows should be hidden when minimized and even rearrange the ordering of items on the taskbar.
If you run a lot of applications, there are almost certainly times when one or more applications, such as anti-virus scanners, are taking too much time or processor power away from other applications. Rather than killing and restarting the hungry application, just “freeze” it using this application. Then you can come back later and restart it right where it left off.
Interested in learning to program in C# for .NET or Mono, but the price for Visual Studio is too steep? Then check out QuickSharp, which is a free full-featured C# IDE which generates single-file applications or libraries. It includes “Code Assist” which is similar to Intellisense which helps speed your programming.
There are many options for to-do list (and GTD) applications out there. To-Do Desklist is a simple application that has the advantage of allowing to put your to-do items directly on the desktop. You can specify a priority for each item and decide if you want a reminder for it, as well.
If you frequently get data in the form of a spreadsheet, CSV, or tab-delimited file and struggle to get the data into your database, CSV2SQL is just the thing for you. It transforms your file into a set of SQL INSERT statements that you can run against any SQL-92-compliant database, including MS SQL Server, Oracle, and MySQL.
If you use a Gnome-based Linux distribution, such as Ubuntu, you are probably familiar with some of the great features of the native Gnome Gedit application, including it’s great customization potential, such as making it work like Textmate. But what if you are on Windows? Well, the Gnome project also releases a compiled binary standalone version of Gedit for Windows that is true to the original with each release.
Does a quick round of golf sound good to you? Well, “quick” doesn’t apply at the Nullabor Links in Austraila: The course is almost 850 miles long! You play one hole per day and then drive to the next hole, sightseeing along the way. This has got to be the ultimate golf vacation! (And the blue whale in the article looks a lot like the one in Catoosa on Route 66.)
Feeling a little down in the dumps? Or maybe you just want to be like the Soggy Bottom Boys? If so, check out Blues Maker. Pick the lyrics and harmonica effects and let the virtual B.B. King serenade you.
Many of you probably remember the Choose-Your-Own-Adventure books from when you were a kid. Well, this site presents the high-tech version of some of the classics including finite state machine “maps” of the various paths through the books.
God certainly created a beautiful and amazing universe. Here is a list of some really strange unsolved mysteries about physics, astronomy, and cosmology.
Most of us probably get our day going with a cup of coffee. But how much do you know about the history and background of coffee? For example, did you know that it’s the second most traded commodity on earth (after oil)? Check out this graphic for more details.