Posts Tagged ‘learning’

« Older Posts   

World Class Mindset

I had an interesting experience some time ago when I went up eight flights of stairs to go to a meeting. When I arrived at the meeting room badly out of breathe, someone remarked that I must be in good shape because I took the stairs rather than the elevator. I was shocked by the […]

Exposure to Extremes

I love being exposed to different ways of doing things, especially when they are extremes that provide a sharp contrast with standard, commonly-accepted methods. I deliberately search out such examples because I feel they provide great learning opportunities to reflect on the true principles underlying successful endeavors. If someone can be successful while doing the […]

Expertise in Starcraft 2

I have previously written about how to become an expert developer based on the general principles of expertise presented in the book Talent Is Overrated by Geoff Colvin. I recently have had the opportunity to appreciate the nature of expertise in a different context after picking up the real-time strategy game Starcraft 2 created by […]

Growth through Operating Under Constraints

The other day I was composing a tweet and it struck me that the difficulties I faced in crafting my message to fit within 140 characters without using abbreviations was a good exercise for making me a better writer. After further reflection I generalized this specific case to a broader principle about personal development: performing […]

Connecting with Calgary

I recently had the opportunity to travel to Calgary, Alberta to visit the CGI office there and hang out with several of the development teams. These teams have extensive experience with larger-scale agile development including both XP and Scrum and have a good reputation for having a great development culture that excels at mentoring and […]

Minimum and Optimal Thresholds of Competence

People naturally have varying levels of ability in the different aspects of their work (and life). These varying abilities are often divided into two categories: strengths and weaknesses. In the reading I have done in the literature on personal improvement, employee performance management, and entrepreneurship I have come across widely differing advice on how to […]

How to Become an Expert Developer

What if I told you there was only one activity you needed to do to become an expert, high-performing software developer? You might be doubtful of my claim. Yet this is exactly the finding reported in the book Talent Is Overrated by Geoff Colvin. Across multiple professions research points to the same activity as being […]

Lessons Learned Championing Continuous Improvement

For over one year now I have been championing continuous improvement across multiple teams. I have seen and struggled with various problems, some of which I have seen reoccur time and time again, and I have identified successful strategies for dealing with some of these issues. In this article I present my lessons learned in […]

Adopting Test Driven Development

I have always been keen on using automated unit tests since I first heard about them almost a decade ago. I have known about test driven development (TDD) for almost as long but the practice of writing tests first before writing production code never really clicked for me when I first tried it years ago. […]

Evolving my Vision and Mission

If you are a regular reader you may have noticed that I use guiding statements like a vision or mission to motivate and inspire myself and clarify my future direction. The following articles contain some of my past efforts: My Vision for IT Our Mission as Software Developers Becoming a Champion of Continuous Improvement I […]

Using Rotations to Develop Expertise

This article continues on from my prior article Improving Computer Science Degrees for Software Developers on the topic of better methods of developing expertise as software developers in the work place. The original inspiration for these articles is the post Master Craftsman Teams by Robert C. Martin in which he proposed a formalized development path […]

The Core Skills All Software Developers Need

Software development spans a wide gamut of technologies (e.g. C, Java, and Ruby) and environments (e.g. embedded, desktop, enterprise, web, computing infrastructure, and scientific). Despite all the variation, I believe there are core software development skills that you must possess in order to be an effective developer across most, if not all, of these different […]

Improving Computer Science Degrees for Software Developers

Two recent experiences prompted me to think deeply about how software developers start out in the field and develop their expertise. The first experience was reading an article by Uncle Bob titled Master Craftsman Teams. Bob’s main point is that the current model of developing expertise based on entering the field with a four year […]

How to Always Get Better: A Framework for Continuous Improvement

If you believe like I do that organizations must develop a culture of continuous improvement in order to flourish, then the question is how to achieve this. Throughout my career and especially in the last few years I have promoted effective software development practices and a philosophy of learning and growing as a professional. I […]

Continuous Improvement Experiments

If, like me, you believe strongly in championing continuous improvement then an obvious question is how exactly can continuous improvement be implemented? One answer I have come up with is something I call continuous improvement experiments – CIE for short. What is a Continuous Improvement Experiment? The idea is simple: a CIE provides guidance via […]

Becoming a Champion of Continuous Improvement

I am pleased to announce that I am a Champion of Continuous Improvement. The story of how I became such a champion starts a few months ago when I spent some time reflecting on my mission / purpose / vision as a professional software developer and architect. I was inspired to do so by two […]

Celebrating 100 Posts

This is post number 100 on my website! To celebrate I am going to take a look back at my previous posts. My prior posts add up to approximately 70,000 words or 250 pages – that is the size of a book! At approximately one hour per page that equals approximately six weeks of full-time […]

A Love of Learning

I recently attended a convocation ceremony at the University of Alberta for the Faculty of Medicine and Dentistry where I noticed one theme that was emphasized throughout the ceremony: life-long learning. The speakers emphasized that the graduates should strive to remain eternal students, keeping the passion and excitement about learning and their profession that they […]

Running My Website: One Year Retrospective

I am happy to announce that this is the one-year anniversary of my website! I wanted to take this opportunity to share my observations and lessons learned since my last retrospective after the first three months. Running my website has continued to be an incredible learning experience. I have learned more about building web traffic […]

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 […]

« Older Posts