Containers & Containerization – Pros and Cons

Containerizing can be a useful approach to developing applications. While it has many benefits, there are also situations where you might not want to use it. In this post, I’ll cover both the pros and cons. What Are Containers? Containers are the result of a packing mechanism that decouples applications from the environment where they […]

Using SkiaSharp to Create an Inner Shadow in Xamarin.Forms

I’m currently working on a project that uses Xamarin.Forms, and the other day I started a story to implement some design on a multi-selection list in our mobile application. The design added checkboxes to each cell in the list, and each checkbox has a subtle inner shadow. This is a common design convention–so common that […]

Why You Should Try Meeting Segues + My Top Five

I commonly walk into meetings thinking about all kinds of topics that aren’t the real focus of the meeting—my last meeting, the nagging to-do I have to complete, my overflowing email inbox, my promise to my family to pick up dinner on the way home from work, etc. These types of thoughts and concerns aren’t […]

Why Milestone-Based Payments Are Never a Good Idea for Custom Software

During two separate meetings with potential new accounts this week, milestone-based payments (sometimes also called fixed-bid payments) came up in conversation. One potential customer was interested in working this way; the other one had just been burned by it. These conversations reminded me of the reasons milestone-based payments are a bad idea when you’re building […]

A “Grand Unified Theory” of Agile

Okay, that’s a bit grandiose, I admit. But I often see tweets or posts about how people don’t “get” capital-A Agile. Tweets like this and this point out common faults. Everything they say is technically correct but not especially useful. Pointing out all of the not-get-its in the wild won’t make people “get it” better, […]