I’m currently founding a company, and just purchased a new Go board. As I was explaining the principles of the game to my wife I was forcibly struck with the similarities to founding a compa… | Continue reading
I don’t recall any coding books talk about organizing the different members of a class. However, the lack of any standard for organization has been the single biggest obstacle to feeling at … | Continue reading
The reason most logs are huge and useless is the piece-meal accumulation of statements which were thrown in over time. To avoid this problem, log files should be explicitly written for consumption … | Continue reading
I view “toxic masculinity” as being what the philosopher, Ayn Rand, called a package deal. That is, a bunch of concepts grouped together with the effect (usually deliberate) of damning… | Continue reading
I recently was able to attend Edward Tufte’s seminar on presentations and data graphic design. This blog post covers the essential elements I took away from the lecture. | Continue reading
I recently picked up “Atomic Habits” by James Clear, and I think it will become one of the most influential books I’ve read. | Continue reading
I started using the GTD over 10 years ago now. Since then, I’ve learned a lot. Here’s what I currently do for my “capture” step. | Continue reading
Estimating most projects is necessarily an imprecise exercise. The goal of this post is to share some tools I’ve learned to remove those sources of error. | Continue reading
I have been meditating on and off since I was a teenager. When I mention it to others, though, they’re often somewhat surprised since I don’t really seem like “the type”. I&… | Continue reading
Instead of refusing what you can’t do, offer what you can do. | Continue reading
In our family, I’m the de facto “second” parent. | Continue reading
Of all the books in my collection, I view these three as having been most personally influential on the way I write and think about code. | Continue reading
In this post I’m going to focus on using the “fixup” command within git’s interactive rebase tool. | Continue reading
My work day doesn’t naturally divide itself cleanly into commits. This post is about one trick I use in those situations. | Continue reading
A good commit is much like a good sentence: a well-formed, grammatically correct, complete expression of a single thought. | Continue reading
One easy step to help simplify your programs is to follow the adage “fail early and fail loudly”. | Continue reading
Makers and managers are often at odds about the best way to schedule time. Here I offer two techniques to keep the peace and make everyone productive. | Continue reading
It’s important that every candidate be treated like you’d treat a VIP customer. Even if you don’t wind up making an offer, you want them to go away wishing they’d gotten on… | Continue reading
Short circuit statements allow a reader to take certain facts for granted for the remainder of a method, thus greatly simplifying the code. | Continue reading
White privilege isn’t a positive benefit that white people receive overtly: it’s a lack of the hostility directed exclusively at people who are different by not being white. | Continue reading
Consensus deadlock occurs whenever there’s not enough data, the team wants a unanimous decision, no one is willing to budge, and there’s no clear owner. | Continue reading
I’m constantly trying to make decisions with other people. One of the tricks I’ve learned for making these situations easier is to say how strongly I feel about each option. | Continue reading
Weighing the pros & cons of server-side graphics rendering, canvas, and SVG | Continue reading
There are a number of different circumstances when it’s important to distinguish between reversible and irreversible decisions. | Continue reading
In which we dive deep on the utility of object streams in Node.js. | Continue reading
In which we learn about the basic stream functionality provided in the Node.js API. | Continue reading
Redis GET & SET commands seem like they support “paths”, but they really don’t. | Continue reading
I can’t count the number of times when I’ve seen two people trying to solve a technical problem where the real conflict is anything but technical. Fortunately, I’ve run across an… | Continue reading
A “goodwill account” reflects the emotional reserves you have with another person. Keeping your balance “in the black” can take some deliberate effort. | Continue reading
One of my other hobbies is cooking, and I’ve been collecting recipes for a while now. As I try new recipes, I re-write the ones I like into my own online cookbook. | Continue reading
In starting out a self-funded company, I didn’t just get a board by virtue of taking on an investor, but I still found that I really wanted a way to get feedback and advice from more experienced pe… | Continue reading
I wanted to store time-series data in a sorted set, but, since I can be pretty sure that the values won’t be unique, I can’t use a plain sorted set. However, I did figure out a handy work-around us… | Continue reading
When I first set up my wood-shop, I was using an old door thrown across two sawhorses as my work bench: It was wobbly, the door tended to slide off the horses, and you really couldn’t attach … | Continue reading
I find it works best to manage my unstructured work hours using a variation of the Pomodoro Technique. | Continue reading
When I was a solo founder, and I would tell people what I do, their first response would nearly always be: “Oh, I could never do that. I’d goof off all day. How do you keep from getting distracte… | Continue reading
I’ve applied this technique for both personal and work email for years now, and I get my email inboxes empty several times a day. I’ve decided to respond to work emails about twice a d… | Continue reading
If I could make every recruiter understand one thing, it would be: you are in sales. I’m a prospect, and you have one chance with me. Don’t blow it on cheap form letters or junk mail.… | Continue reading
I’ve worked at a pretty diverse range of companies, and in every place I’ve worked, interviews are conducted according to the same general pattern. This series will explore what I thin… | Continue reading
When I moved into my current house, there was a lot of work to be done. One tiny piece of that was to remove / replace a long since broken trash compactor in the kitchen. As one of the first proj… | Continue reading
I started my company with a reasonably clear idea in mind of what product I wanted to build. The hard part was deciding what to call it. | Continue reading
That 20 minutes away, and especially the mild exercise and change of scenery, resets my brain… [and] forces me to check my premisses about exactly what I think I know. | Continue reading
In other words, JSDOM supports creating the in-memory structure of the web page, even running JavaScript code and altering CSS attributes. However, it doesn’t actually assign the height, width, or … | Continue reading
After the long wait to get back my incorporation papers, the first thing I did was to open a checking account. The most important reason this was first was that I’d been told many times that it’s … | Continue reading
The most immediate decision was what kind of legal entity to create. While there are a ton of options, the ones which were on the table for me were: a C-corp, an S-Corp, an LLC, or a Sole Propriet… | Continue reading
Following the example of several startups I’ve previously been in, I decided to choose a different name for the company and the product. | Continue reading
The first step I took in founding a startup was to find a lawyer. | Continue reading
One of the first things I had to learn when starting my company was how to actually start a company… | Continue reading
The crucial thing I try to keep in mind when choosing method names is that I’m writing for the sake of other humans, and that methods should be tiny, imperative sentences directed at the obje… | Continue reading