Categories
Programming

Console DevTools Podcast

I recorded an episode of Console‘s DevTools podcast, talking about privacy engineering. You can listen to it here.

Categories
Books Programming

Book: Working Effectively with Legacy Code

Reading Working Effectively with Legacy Code (Amazon) made me really want to get into something and write some tests. It’s a really actionable book, and I liked how pragmatic it was – focusing on being able to create incremental progress, but balancing that with what you’re aiming towards. I think a sign of a foundational programming […]

Categories
management Programming

Estimations and Orders of Magnitude

Call me a cynic, but I don’t expect software estimations to be accurate. Because software is built by humans – and they take sick days, and vacations, time to help their colleagues (hopefully), have off days as well as good ones. But I still think estimations are worth doing. Firstly, because if we don’t have […]

Categories
management Programming

Towards Productive Technical Discussions

Note: I wrote this post for an internal team blog, but thought it was worth sharing more widely. Part of getting to good code reviews is some up front discussion about trade-offs and implications for bigger architectural changes. I think of code review as when “my” code becomes “our” code – for architecture, those conversations […]

Categories
management Organization Programming

Why Do Standup

Share work before it happens – prevent overlap, raise gotchas. Foster communication and collaboration – offer help rather than waiting for someone to ask. Start the day with intention. Turns out, status updates are not the most useful aspect of standup.

Categories
Programming

Creating a Randomized Emoji String in Python

You might have noticed this part of the 2016 Emoji Report – part of the graphic features an emoji for each of our subscribers. It’s a randomized ordering of all the different skin tones of the 👩‍💻 and 👨‍💻 emoji, repeated [number of subscribers] / 12. Our subscriber count wasn’t exactly divisible by 12, so I […]

Categories
Programming

We Hire The Best

The tech industry prides itself on its rationality, and yet is filled with trite slogans that are demonstrably untrue… and further, harmful. Originally published in Model View Culture, November 2014. “We hire the best.” It’s a slogan we can rally around in company meetings, a tagline to put on the jobs page… a shoring up […]

Categories
Career Programming

All the Leaves are Brown and the Sky is Gray

It’s a weird thing to reflect on my career and realize that very little of the code I wrote is still in production – because very few of the things I worked on are still in production. Most of the products I have worked on have failed. We build with bits not bricks. Architects and […]

Categories
mobile Programming

Android: Testing an Intent Service

There’s a handy thing in Espresso called the ServiceTestRule, which is for testing Services. Yay. I thought it was just what I needed until I read this bit of the documentation… OK, first up – refactoring my IntentService. This class already did very little, poking something else depending on the kind of Intent it received, and […]

Categories
management Programming

Creative Coding Podcast

I was on another podcast! This time, creative coding with @seb_ly [listen]. We talked about managing coders, color theory, side projects, lasers, being homeless, interviewing (and applied humaning). It was really fun (but cold!) to record, and I hope you enjoy it.