What did you do at work three days ago? What about eight days ago? Twelve days?

Depending on your job, keeping stock of the day-to-day work by memory alone is simply not practical. I sometimes struggle to remember salient details of the morning in the afternoon.

Am I getting old? Is my mind starting to go? While I’m sure sharpness fades over time, this is a product of the ever-increasing complexities of our work. …

Life is about meetings and partings; that is the way of it. — Kermit, the Frog.

Since launching Smashlists back in 2016, we’ve seen steady growth of people using our service. Unfortunately, a lot of that growth has been through the free plan. While we are stoked that so many people find our service useful, it simply is not sustainable.

To better serve our customers, we are discontinuing the free plan and replacing it with a 100% satisfaction guarantee. Within the first 30 days, you can cancel your plan for a full refund if you are not happy with the…

In many ways, PHP has come a long way to becoming a competent, typed language. With the newly minted PHP 8, strong types have eliminated a whole host of problems when dealing with class and function parameter input. However, it isn’t all just a bed of roses. Thrown exceptions (or Throwables these days) are notoriously absent from any sort of concrete specification within interfaces, classes, and functions. This is particularly troubling if one of our goals is for interchangeable implementations for a business process.

A common interop activity is swapping out a backend vendor for a specific business process. If…

Like many engineers, I have a life-long passion for learning. I satiate this need by creating side projects that explore new concepts, languages, and tools. Some of my side projects have been successful and used by a wide audience. Of course, like many others, I also have a big list of incomplete and abandoned projects. Each project may require it’s own services and other software dependencies, which over time becomes quite hard to maintain on a server. Let’s face it: managing software deployments is almost never the exciting part of a side project and in some cases is the reason…

Do you remember back to your school days of writing a paper, giving it a once over, and turning it in only to be surprised on return of bad editing marks? After all, I reviewed it; how did I miss so many mistakes?

When we start actively writing, our brains devote more processing resources to higher-order thinking. In other words, the brain filters out low-level mundane items like spelling and grammar in favor of conveying meaning. This is a well known phenomenon that has often been written about , so you’re likely already aware.

“OK, so you’ve made me take…

For most of my career, I’ve been an individual contributor: focused on the tasks at hand, writing code, among other things. All of that changed about six years ago. I found myself managing products, releases, infrastructure, and making many software decisions. As a result, I was promoted to “Lead Software Engineer.” Other developers were looking to me for answers, and I was involved with high-level decisions for products and features, so it seemed like a natural progression. However, I was ill-prepared for what it takes to be a lead engineer.

First, let me define what being a lead engineer means…

With Atlassian’s announcement suspending development of Stride and dropping support for Hipchat in favor of Slack, I decided that the time was right to learn and experiment with Slack integrations. Any time I take on learning some new technology, I always make a project that utilizes much of the features of that technology. The project needs to be small enough that I can complete it relatively quickly, but deep enough to flex the technology I am learning. Recently, I’ve been getting back into Chess and I wondered if I could make an interactive Chess game inside of Slack’s platform.

Learn the game


This year, I gave a talk at Syntaxcon in Charleston, SC. Being my first talk on design, I was out of my comfort zone, however I would be remise if I didn’t speak my mind on the subject. The over-arching theme was to get other engineers out of their comfort zones as well and to get involved in the design process.

Engineers typically don’t involve themselves in the design process upfront. They’re either not interested in design or still attempting to finish the previous project. Design is where most of the decisions are made, and as a result engineers are…

Sometimes it is not enough to show our clients and stakeholders what we have accomplished. It is often important to show our progress on tasks as well.

For customers that have Todoist premium, Smashlists will now include tasks that are not complete, but have new or updated comments. This is a great way to let stakeholders know where you are with any task without having to change your workflow. Simply by adding a comment to a task, you will be keeping your stakeholder in the loop.

Making progress within Todoist.

Add and remove recipients with ease.

We have released a new feature that enables you to modify the list of recipients. This makes it easy to adjust who should see your progress reports without having to recreate the notification. This is a feature that was requested by one of our customers and we were happy that we could deliver.

Just as when you create a notification, when adding recipients through this new interface, the recipient will receive a confirmation email that they must confirm receipt before they will start receiving reports via email.

This is a premium feature offered through our Professional and Ultimate plans.


Chris Saylor

Lead Engineer at Zumba. Founder of smashlists.com and boxmeupapp.com. Node.js/Go fan, and all around technologist.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store