Pattern Matching without Regex! – Introducing the Rosie Pattern Language

Recently, I was able to attend Jamie Jenning’s talk on the Rosie Pattern Language (RPL/“Rosie”) at Strange Loop 2018. I had not previously been aware of Rosie, but after learning about it, I am extremely excited about the prospect of never writing another regular expression again. Read more on Pattern Matching without Regex! – Introducing the Rosie Pattern Language…

Your Team Needs You! – The Power of Being an “Active Follower”

Good leaders get a lot of credit—and they deserve it. But leaders (and teams!) can only thrive if they have active followers.

What do I mean? Let me tell you about an experience I had this year in a very different situation—kayaking off the coast of New Zealand. Read more on Your Team Needs You! – The Power of Being an “Active Follower”…

An Introduction to Content Localization in Android Apps

When creating any kind of application, it’s important to build it for the users you expect to be supporting. Because of this, it may be necessary to display different strings, images, and other content based on the language or region of your users.

While creating the translations of an app can be a lengthy process, enabling content localization in an Android app is as simple as adding new files and folders to your resources. Read more on An Introduction to Content Localization in Android Apps…

My Three Note-Taking App Criteria – and Why Boostnote Meets Them All

Recently, my schedule has become quite busy, with various responsibilities competing for my time and focus. I find myself trying to hold onto as much context about these responsibilities as I can, but I can’t seem to remember all of the necessary information. After some careful reflection, I’ve found that I need to take more notes in both my personal and professional life. Read more on My Three Note-Taking App Criteria – and Why Boostnote Meets Them All…

Creativity Within Constraints: Having Fun with PICO-8

I’ve been learning about and playing with PICO-8, a “fantasy console” (as their website phrases it). It’s a virtual machine with specs designed to be extremely limited compared to modern computers. With a 128×128 display, 16 colors, and a program size confined to 32K, you’re dealing with what would now be considered pretty dated specs.

But that’s the point of PICO-8. It was designed with constraints so that creators could build things within well-defined boundaries. Experimenting with it is ultimately a fun exercise in creativity within those constraints. Read more on Creativity Within Constraints: Having Fun with PICO-8…

CSS-Animated Countdown Timer with React and TypeScript

A while ago, on an old project, we needed to implement a countdown timer. The specified design looked relatively simple: an outline of a circle with the number of seconds remaining inside. As the time counted down, the text would need to update, and the stroke around the circle would need to disappear at an appropriate rate so it would be completely gone when the time got to zero seconds.

I originally implemented this timer in an Ember project. For the past year, I’ve been working with React, so I decided to try my hand at re-implementing it as a React component. Read more on CSS-Animated Countdown Timer with React and TypeScript…

Wizard Consultant Skills – Protection Spells for Saying “No”

Atomic is home to lots of very high-level wizards. Their abilities and specialties span the whole of the software craftsmanship space, and each one has their own skill set to leverage when tackling the many unique problems that come through our door.

I’m not a very high-level wizard yet, but I’ve found that deliberately striving to steal/pick up spells/skills from others as I observe them has been a pretty productive way to level up. Read more on Wizard Consultant Skills – Protection Spells for Saying “No”…

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…

Using an Int Type in TypeScript

The project I’m working on has a Node.js back end written in TypeScript, with a PostgreSQL database for persistence. We had a production user who encountered an error when the system tried to insert a row into a table that had an integer column in it. The value it was trying to insert was 239.99999999999997, so it made sense that PostgreSQL was complaining about it being “invalid input syntax for an integer.”

Read more on Using an Int Type in TypeScript…

loading…