Dan the man

Dan Whitcomb

Coming up for air

The rabbit hole: a deep line of thought with no clear end. It’s hard to know when to run with an idea or to come up for air and search for an alternative approach. Running with the idea may lead you to a solution, or you may reach the bottom with nothing to show for it. Knowing when to come out of the wrong holes as quickly as possible makes you a more effective decision maker and thus able to deliver value faster....

June 26, 2024 · 3 min · Dan Whitcomb

Influencing growth with design

Building software with people means the complications of the social world are dragged into the digital one. Software engineering has no real laws, making conversations on correctness highly subjective - a field of egos and feeling landmines stretching out before you. An organizational leader even has minimal power to influence design. Architects may be able to define and build agreement around high-level approaches on data flow and infrastructure. Managers may be able to set requirements for their teams around quality and efficiency....

November 11, 2023 · 8 min · Dan Whitcomb

PR comments that waste our time

The PRs I post have one of two goals: I had an idea that easier to communicate in code so here’s an incomplete, untested, likely dubious proof-of-concept. It should always be a draft. After anywhere between a conversation with a teammate and weeks of bureaucratic pain to align 8 teams across 3 business units, we have a path forward. This change is ready to go to production so we can ship some goddamn product....

September 25, 2022 · 3 min · Dan Whitcomb

On risk and knowing things in software

Most traditional engineering careers must grapple with strict truths. Laws guide standards for safety, and physics guide limits of designs. Software “engineers” encounter known truths much less frequently. In search of optimal solutions, new grads fresh from an education of exams with correct answers wince upon hearing “it depends” yet again from grizzled veterans. When the senior principal architect of a multinational corporation produces a 20-page design document for a groundbreaking web-scale product, the implicit number of ‘maybe’s, ‘should’s, and ‘probably’s you could rightfully scatter throughout would make a civil engineer scream....

September 9, 2021 · 3 min · Dan Whitcomb

Immutables, Micronaut, and Maven

What Java lacks in features, ergonomics, and general modernity, it makes up in ecosystem. C# devs have had generated getter/setter methods for the last 14 years, but Orcale likes their languages like their business strategy: behind the times. Since Java runs on 3 billion devices, engineers have been forced to make up for Orcale’s lack of Java interest for years. This is less true since Java 9, but I always take an opportunity to bash Oracle - and their database icon office buildings....

August 7, 2021 · 7 min · Dan Whitcomb

Rust on Arduino (from a cloud engineer)

Note: At the time of writing, Rust integer division on AVR is broken. Check out this issue against the Rust repo for the latest status. I had time, an interest in sensors, and two Arduinos sitting under my bed so I thought I’d take a whack at running Rust on an Arduino to gather some temperature and pressure data. I’ve spent much of my career working on web and cloud technologies - Java, C#, JS/TS....

July 23, 2021 · 11 min · Dan Whitcomb

Urban planning: Thoughts on Beacon Hill

I have a hobbyist interest in urban design. Last week my girlfriend made fun of me for noticing the curb cut on the north-west corner of Charles & Cambridge St was widened by a few inches. Had it not been clear that I was the only one interested, I would have audibly hypothesized that it may be due to the regular build up of pedestrians at the crosswalk moving between the shopping on Charles St and the footbridge to the river walk....

July 23, 2021 · 4 min · Dan Whitcomb