Posts made in 2006

« Older Posts   

A Great Game: The Battle for Wesnoth

Happy Holidays! To match the festive mood this week, I thought I would write a lighter article about a great game I came across a while ago called The Battle for Wesnoth. It is a turn-based strategy fantasy game that offers compelling tactical and strategic choices with a wide variety of scenarios and content. Best […]

Lessons Learned in 2006

As a proponent of perpetual learning, I like to periodically take the time to reflect on what I have learned. Looking back at this past year, I definitely expanded my understanding in a number of areas based on my experiences at work and at home. My most significant growth was in the area of personal […]

Automating FTP with ANT

This article describes how to automate the transfer of files between servers via FTP using the Java-based ANT build tool. I have been using ANT to do automated FTP for a number of years now, and will share some of the lessons and limitations I have discovered. ANT provides a FTP task. It requires the […]

Producing Good Software is Hard

This is a public service announcement to all project managers, business analysts, others working in the I.T. industry, and the general public: producing good software is hard. The next time you wonder why the software you are using crashed, or why your software development project is behind schedule, or why your software doesn’t meet the […]

Assembling a Free Development Tool Set

In my article on personal learning by doing, I wrote about the importance of personal development projects for professional development and mentioned that I maintain a complete development environment at home assembled from free, open-source tools. In this article I present the tools that I use and find the most valuable, focused particularly on Java […]

Are You a Rule Maker or a Rule Breaker?

In order to work effectively with coworkers and clients, you need to understand their viewpoint. Over the last few years, I have discovered that a person’s approach to rules such as processes or standards is an important element in understanding and predicting how they will operate in the workplace. One reason this is a useful […]

ICE Conference Highlights

I recently attended two seminars at the ICE 2006 Technology Conference in Edmonton thanks to my employer CGI. I enjoyed both presentations and regret not attending more. I was able to pull some useful tips and ideas from each seminar that resonated with me. The first session was Lessons for Risk Management Taken from the […]

Best of the Web – November 2006

As I described in my article on personal learning via online reading, I am an avid reader both online and off. I wanted to share some of the great material that I have encountered on the web over the last year. In no particular order… Everything You Know Will Be Obsolete in Five Years by […]

Crunch Mode

I have recently experienced two episodes of ‘crunch mode’ – the flurry of activity prior to deploying new functionality into production. The crunch happens because there is insufficient time to do everything that needs to be done. To compensate, people work longer or take shortcuts like skipping thorough testing. The result is often a higher […]

Tips for Using Log4j

Log4j is a logging framework for Java, part of Apache’s suite of logging frameworks for various languages. While using log4j on various applications, I have had to figure out how to do certain things that were not clearly documented, possibly because the full manual for log4j is only available commercially. Before showing what I have […]

Working Four Days a Week

For over six months now I have been working four days a week instead of the usual five. I originally made this change in schedule in order to spend more time with my young son. When I started, I was unsure how it would go, and how long I would be able to maintain it. […]

Being Thankful

Celebrating Thanksgiving Day here in Canada inspired me to write this article. Too often, we focus on the negatives – the obstacles or problems in our way – and fail to appreciate and be thankful for everything else. I find this to be especially true at work, where part of my responsibility is to investigate […]

Deploying Application Changes

The maintenance team for a typical enterprise business application must make ongoing changes to the application. In the effort to fix defects, revise existing functionality, and add enhancements, little thought may be given to the process by which these changes are deployed from development through to testing and then the production environment. However, this process […]

Personal Learning by Doing

As part of my series on personal learning, I’ve previously written about learning via online reading and reading books. Reading websites and books is a good strategy for gaining knowledge, but works poorly for gaining skill at doing something. Your ability to retain the information you read is also greatly increased when you actively use […]

How to Make Time for the Important

Do you find yourself constantly busy with urgent tasks, left with no time to work on less urgent yet more important activities? In my experience this is a wide-spread problem, both at the workplace and at home. How many people do you know acknowledge the importance of exercise, but claim they don’t have the time? […]

Complexity and Reliability

Unrestrained complexity is a critical limiting factor in producing working software. The more complex a system, the more it will cost to create and operate and the less reliable it will be. Yet the bane of complexity is largely ignored by the IT industry. Software vendors, competing on the basis of feature sets, are constantly […]

The Reuse Trap in Software Design

I stared at my code on the screen, but inspiration wouldn’t come. I was trying to design a new feature which shared some commonalities with the existing code base. In particular, there were a couple classes that I knew I could reuse. I just wasn’t sure how they would have to be modified because I […]

Advanced Uses of Java 5 Enums

Enumerated types – called enums for short – were introduced to the Java language recently in version 5 (the version after 1.4). The name essentially defines what they are: a type that has a fixed set of constant values. The Java Sun website has a good tutorial on using enums which covers their basic capabilities. […]

Is Ethical Consulting Possible?

Integrity and ethics are important components of being a professional. In today’s business environment it is not uncommon for ethically-challenging issues to arise. When working as a consultant, however, the very nature of the engagement can strain even the most seasoned professional. I am not talking about the kind of consulting where the consultant is […]

How to Achieve Peak Performance

Being a professional at the top of your field means being able to consistently perform at a high level. Those underneath may have the same knowledge and abilities, but if they cannot apply them consistently, then they will never rise to the top. This is true across a diverse collection of activities including athletics, photography, […]

« Older Posts