Showing posts from October, 2021

4 Ways to be a More Intentional Developer

When it comes to the decisions you make when writing code, you can either be intentional about those decisions, uninformed, or apathetic. Here are 4 ways to be more intentional about how you code.

Increments Episode 105: The Website

Continuing with the theme of commitments, I wanted to share a story from earlier in my career. In 2007 I launched a website that went viral. It was bigger than I could have imagined, bigger than I'd dreamed, bigger than I'd intended, and demanded more commitment from me than I had prepared to give.

Guidance Counselor 2.0 w/Alishah Novin, Director of Engineering


#DadBot v2.0

#DadBot v2.0: The new procedural programming interface has been released. Due to memory constraints, only 5 programmable memory slots exist. While a future release may look to expand the memory slots and provide functional programming capabilities, this first release allows the user to familiarize themselves with basic programming and reinforces the need to look a head, and work a problem in reverse.

Introducing: #DadBot v1.0

 #DadBot v1.0: While procedural programming capabilities are not yet available, the user interface allows the controller to familiarize themselves with the basic functions of the #DadBot.

Increments Episode 104: Languishing

Just a short one this week - rather than listen to me, a recent episode from Adam Grant's WorkLife podcast is worth giving a listen, and considering - especially as it relates back to last week's episode. Adam Grant - How to stop languishing and start finding flow

Sign Your Work With Excellence

If you've ever had an idea, an earth-shattering, ground-breaking, disruptively novel idea that inspired and motivated you to go beyond just "Ideation" to "Implementation" you'll undoubtedly know that nothing ever seems as good or as perfect as when it was still an idea. Imagine if that wasn't a problem: The thing in your mind perfectly made a reality. The bit of writing perfectly captures your sentiment and purpose. The drawing, flawless. That bit of code, executing without issue. Perfect inventions, perfectly innovated to perfectly adapt around an ever changing world. Never needing improvement or intervention. Never a "why doesn't this work like planned?" Never struggling with execution. Never a question of skill, only a question of the idea itself.  The 'Imagine' we know is not the 'Imagine' John Lennon imagined. There must have been parts of the 'Mona Lisa' that DaVinci agonized over, and grew frustrated that he c

4 Ways to Improve the 1 on 1

 If you're not having regular 1 on 1s, or you're unsure of what to talk about, here are 4 things to try out.  These meetings are critical for any manager to build a strong relationship with their team members, and ultimately contribute to the longevity of the relationship.

Exit Conditions

A strange thing occurred this morning: I normally use a battery-powered ultrasonic toothbrush that does a pulsing buzz after 2min to signal that my brushing is over. Because the battery had died I used a regular toothbrush for the first time in months. 4 mins into brushing, I started asking myself why the the brush hadn't done it's pulse/buzz thing. I continued to brush a while longer when I realize the problem isn't the toothbrush. My exit condition was broken. I had become an infinite loop.

5 Better Ways to Assess Technical Ability in an Interview

The most critical question when interviewing any candidate is simply: are they technical in the way I need them to be? And yet, time and time again we rely on the same standard set of questions that don't quite tell us how effective someone will be in the role we have. Assessing someone's technical ability in an hour doesn't have to be a stressful experience - for the candidate, or the interviewer. There are better ways to understand someone's skill, and here are 5 ways to go about it.

Increments Episode 103: What Are You Doing About Your Fears?

A fter talking about fears, let's do something about them. Let's make some commitments, and take some steps towards putting them to rest. Maybe all your worst fears about yourself are true - but if they are, taking the right next steps won't keep them true for long.

1 Thing To Do When You're Feeling Overwhelmed By What You Don't Yet Know

It's easy to feel overwhelmed by all the terms, acronyms, jargon, methodologies, and techno-babble. So here's a super simple trick that will not only help you learn them, it'll also help motivate you in the long run.

4 Tips on Building Rugged Software

Building "Rugged" software is critical in today's environment where software is used in many ways we can't always predict, and is exposed to attack. Here are 4 considerations when you're building rugged software. I f you don't know much about the Rugged principles, check out:

5 Tips for Jr Coders

After years of interviewing and hiring hundreds of Jr Coders for tech roles, I wanted to offer up the top 5 things I'm always looking for. It's a challenge landing that first job, so hope this helps out.

Hire The Right People

Calling out my fellow hiring managers: I know you want to think you're doing highly academic research work, but the truth is most of the "problems" you're dealing with on a day to day basis have been solved. The bulk of day to day coding work is no longer algorithmically complex. You need implementers, integrators (and there's nothing bad about that.) You don't need to be DaVinci to appreciate the Mona Lisa. Similarly, you don't need to produce complex algorithms to appreciate them and use them effectively. Stop stressing out Jrs and turning good people away by having them write out algorithms they'll never be doing from scratch. This does not inform you of their skillset. Ask questions around the problems space they'll be working in over the course of their time there: 1) You have a collection of objects and you need to filter based on a property, how would you do this? 2) You need to find the total count of objects that match a certain criteria,

Increments Episode 102: Your Thoughts on Fears

Recapping the responses to the questionnaire about your fears (What are you afraid of, and how do you manage your fears). The responses were interestingly consistent and I was asking myself why that may be, and how that relates back to what this whole experiment with Increments is all about.

5 Coding Drills to Keep Your Skills Fresh

Modern IDEs and modern languages have allowed us to really focus on writing the code that matters, the code that solves the problem we're wrestling with. It allows us to ship code faster and produce solutions quickly. But: just like any musician, any athlete, sometimes it's good to occasionally do things the "hard" way just to keep your baseline skills sharp. Here's 5 quick drills to try out once in a while just to keep testing that muscle memory.

Plain Bagels & Plain Cream Cheese

I've been thinking a lot about bagels lately. Maybe because I like them. Maybe because I'm dieting. Maybe because in crazy pandemic times, thinking deeply about bagels is a welcome distraction. One of my favorite bagels is a plain bagel with plain cream cheese. But I hate ordering it. It sounds like I'm belittling that which I love. Or perhaps it sounds like I'm proclaiming to the universe that I am undeserving of the more fancy bagels. The truth is that the double-combo of Plain on Plain is a spectacular delight that far exceeds the unfair critical suggestion of its moniker. Said differently, plain bagels are far from plain. I read recently how people should not chase the new and shiny project, until they finish what they're doing. That's something I used to always struggle with - and have had to constantly remind myself of my familiar refrain: Substitute novelty with nuance. Find what is intriguing, interesting, immersive in the thing that has grown familiar,

4 Ways to Become a Hero Programmer

Ahh, the legendary hero programmer who hath vanquished bugs and pulled marathon coding sessions fueled by energy drinks and fantasy metal. Want to be one? Here are 4 tips on getting to that legendary status...


Let's Clear Up The Ambiguity!

FAQs for a Software Engineering Hiring Manager

7 Steps to Writing an Amazing Resume

Work Experience vs Professional Experience

7 Steps to Building your Portfolio MVP