A Case Against Dependencies

When you need to add a major bit of functionality to your system, what’s the first thing you do? Naturally, you start looking through whatever package repository is appropriate for a solution that fits. While there’s nothing inherently wrong with this, it’s important to think of the trade-offs made by adding external dependencies. Read more on A Case Against Dependencies…

Getting Ready to Break Everything (in 5 Easy Steps)

Every project eventually hits a point where a big change needs to be made, and it’s going to break everything. And you’re going to be the one stuck putting it back together.

Whether it’s a language or tool change that causes your application to no longer compile, a third-party SaaS service change that breaks features throughout your app, or just a big refactoring, eventually you’re going to have to bite off more than you can chew. After having been faced with situations like these many times, I’ve developed a coping strategy. Read more on Getting Ready to Break Everything (in 5 Easy Steps)…

Seven Quick Strategies for Effective Scrum Stand-Up Meetings

The daily stand-up meeting is an important component of the SCRUM process. It helps the whole team stay in-sync and up-to-date on what’s happening with the project, and it alerts everyone to blockers as soon as they become an issue. However, if you do a stand-up meeting wrong, it can become a real drag—and a time-waster. Read more on Seven Quick Strategies for Effective Scrum Stand-Up Meetings…

Creating Psychological Safety Leads to Happy Teams

Have you ever loved being part of a team? It’s a great feeling. Often, it doesn’t even matter what you’re working on as a group. Everyone shows up to work with enthusiasm, and all members support one another. The feeling of being on the team makes you excited to go to work every day. You could be digging ditches in the rain, but as long as you get to do it with that team, it’s going to be a positive, inspiring experience. Read more on Creating Psychological Safety Leads to Happy Teams…

Want to Write Clearer Code? Follow the Cooperative Principle

Lately, I’ve noticed a transition in my craft as a software developer. While I once devoted almost all of my mental energy to getting code to run properly, I’m now putting more thought into writing clear and maintainable code. I’ve started to understand that programming languages are not only a way for me to “talk to” computers, but also a way to communicate with others about how a system is meant to work. Read more on Want to Write Clearer Code? Follow the Cooperative Principle…

Debugging Strategies You Can Use on Every Project

I’ve wanted to write a post about debugging for a while, but it’s a topic that can be really difficult to discuss in a general way. Approaches to debugging vary wildly and span multiple technologies and domains (hardware vs. software vs. other).

Bugs can also exist on all types of scales—everything from users reporting an issue in your production application, to code failing to compile, to your app crashing when you use it in a certain way. Read more on Debugging Strategies You Can Use on Every Project…

Three Ways to Build Trust & Safety as a Team Leader

More and more studies have shown that the most effective teams are the ones whose members trust each other and feel “psychologically safe.” Psychological safety is when a person feels he/she is safe to take a risk and does not need to worry that the team will punish him/her for asking questions, admitting a mistake, or any offering a new idea. Read more on Three Ways to Build Trust & Safety as a Team Leader…

If You Build It, Will They Use It? Assessing Your Client’s Change Management Readiness

A software project can’t be called “successful” unless it’s implemented successfully. And believe it or not, there’s a lot that software consultants can do to help with successful implementation. It starts back in the initial planning stages, with an effort to understand as many facets of the unknown as you can. Read more on If You Build It, Will They Use It? Assessing Your Client’s Change Management Readiness…

Software Exposes People Problems that You Can’t Ignore

Image credit : Alan D Cirker (CC BY 3.0), via Wikimedia Commons

Software, and computers in general, are excellent at enforcing process. But process is often in direct conflict with people. So what happens when a new software system is thrust upon people? Frustration, revolt, and other negative consequences—a net loss for all involved.

Read more on Software Exposes People Problems that You Can’t Ignore…