Grow Together (2023)

14 March 2024

Once again, I give you the Coupling yearly round-up. This time… 2023!

read more

A Kotlin Journey

04 August 2023

Discovering Kotlin

read more

Hit the Ground Running

02 August 2023

Over the last five years or so, I’ve noticed that when joining new projects, I’ve naturally adopted a pattern. There are techniques I instinctively apply over the course of a few months. Having recognized this, I figured these might be of interest to people.

read more

The Search (2023)

14 June 2023

Been quiet for a few weeks, so I feel overdue for a post. A post I say! So here’s what’s been going on in Rob-world.

read more

Testmints Retrospective (2022)

31 May 2023

Jan 16, 2019: “Created new sugar functions to help describe different components of a test in kotlin.” Coupling, Git Hash: 0da861e6

read more

Grow Together (2022)

30 May 2023

It’s coming in late, but here is the Coupling yearly round-up for 2022!

read more

Book Thoughts 2

22 May 2023

Following on from my last post revisiting my Continuous Integration Metrics paper, here are my thoughts related to another book I’ve read recently: Escape Velocity by Doc Norton.

read more

Looking Back, Part 2

19 May 2023

In the foggy past of 2017, I wrote a short paper called “Metrics for Continuous Integration”. It consists of a semiformal model of how software teams produce work, and how to use that model to measure things that have meaning.

read more

Book Thoughts 1

15 May 2023

So I recently took up a larger reading and re-reading project, to help better organize my own thoughts, and engage with the broader conversation regarding software collaboration. Basically, I want to get better at drawing parallels between my own line-of-thinking and what others think or are doing these days.

read more

Looking Back, Part 1

10 May 2023

Back in 2020, I wrote a series of essays. Now, I’m going to do a short series revisiting some of these pieces. I want to explore what still stands up, where my thinking has evolved, and what I feel I could have communicated better. Just generally improve as a writer and thinkster 1. Ok, thinkster is just me playing with words. Not sure what it means! Gangster of thought? Probably not. It feels good coming out of the mouth though. Thinkster. Thinkster. Thinkster. Way better than the pretentious and weighty “thought-leader”. Mind-worker (ick!). Ok, sidebar over, carry on. ↩

read more

Do the (Side) Hussle

05 September 2022

I’ve been an open-source library developer for a while now - ever since I started writing “testmints” in February 2019. So I thought I’d take this opportunity to share some quick thoughts about that process. Here comes a list!

read more

The Incredible Immutable

13 January 2022

Over the last year and a half or so, my coworkers and technical friends have probably grown tired of hearing me talk about “Immutable Web Apps”. “Sounds nice!” they say, politely suppressing their confusion and disinterest.

read more

Grow Together (2021 remix)

10 January 2022

Hey kids, it’s time for a Coupling yearly round-up, as has now become tradition. Lots of technical changes this year! I’ll list those in a moment, but first, lets talk numbers.

read more

Grow Together (2020 edition)

21 February 2021

Alright, quick update on Coupling. 2020 was a crazy year in so many ways, and as such I wasn’t sure if people were going to really continue to use the app - between big shake-ups at companies that were using it, and this little thing called a global pandemic making everyone retreat to working at home… well, there were a lot of variables, so I didn’t really get my hopes up that it would be a year of growth or anything.

read more

Setting Yourselves Aside

24 July 2020

I’ve long been an advocate for distributing the work of staff management as much as possible. This can create strong initial bonds between new team members and the existing team. Having the team make the final call who is able to join means that everyone has ‘skin in the game’ for making it work. This is good.

read more

The Code Is Lava

10 July 2020

It feels like my job in life has become akin to the Scooby-Doo gang. I keep finding problems wearing technical masks, and yanking them off, revealing “the real problem was human-nature the whole time!” So bear with me - things are about to get a little dense, a little galaxy-brain, and probably has some banalities sprinkled throughout. But hopefully when you get through this text-miasma, you will have a clearer understanding of what the real villain is, and maybe a thought or two about how to manage it. Deep breath… let’s go.

read more

No Exit

29 June 2020

Beware of one-way projects.

read more

Intention Expression

19 June 2020

After rereading my last essay “The Test Ascent”, it occurred to me that I haven’t directly addressed the subject of “test-driving”, commonly encountered as TDD (test-driven development).

read more

Solo Queue Review 6

15 June 2020

Hey, a queue review! Today I’ll just throw some statistics out, because I calculated them today, and… why not.

read more

The Test Ascent

05 June 2020

When trying to get better at testing generally, developers tend to cry out for guidelines and goals. How do I assess whether I’m improving or not? How do I make recommendations to my teammates? How do I know I’ve tested enough, or not enough? How do I balance the expense of taking time to write tests against time I could use to do other things?

read more

The Flavor of Mint

28 April 2020

Given the principles described in The Quality of Test, I recently started to write a library that might nudge a developer to keep them in mind a bit more.

read more

The Quality of Test

24 April 2020

So testing. What’s up with that?

read more

The Old Hits

09 April 2020

I’ve been posting a lot of new stuff lately but I want to also draw your attention to a few old pieces I’ve done!

read more

Listening Like Superman

03 April 2020

Open workspaces are controversial.

read more

Death, Life, and COVID-19

24 March 2020

A few thoughts regarding the current situation the planet is facing - the COVID-19 pandemic.

read more

General Review

23 March 2020

Mea culpa!

read more

Radical Availability

20 March 2020

One of the concepts I’ve been advocating for over the last year is that of “Radical Availability” in the workplace.

read more

Debossing

06 March 2020

What does it mean to be responsible?

read more

Pairing for Outsiders

21 February 2020

I’ve been working as a software developer using “pair programming” for most of my career. Over the years, I’ve discovered that it can be quite difficult to explain, well, what on earth “pair programming” actually means. People who know programming but not pairing have one level of understandable confusion. People who don’t know programming can have a particularly difficult time understanding what I’m talking about, how something like that could work, or even get a picture of what it is.

read more

Solo Queue Review 5

10 February 2020

Ok, hopefully the monday Queue Review isn’t an ongoing thing. But hey! The highlights:

read more

Bossless

07 February 2020

I am constitutionally averse to “bosses”.

read more

Solo Queue Review 4

03 February 2020

Yep, review is late this week. Here’s why: I put a lot of time into building out the Coupling Adventure games systems and didn’t come up for air until around 6pm on Friday.

read more

Solo Queue Review 3

24 January 2020

Third review time. Whew! Getting things done! A little more to show this week.

read more

Lessons from Star Wars

24 January 2020

A long time ago, to a company far, far away, George Lucas sold his pop-culture ziggurat for 4 billion dollars.

read more

Solo Queue Review 2

17 January 2020

Alright, I’m back! Somehow. Yep, these will be updated every week. Some weeks will be less inspiring that others.

read more

Solo Queue Review 1

10 January 2020

Ok. Mostly as a disciplinary measure, I’m hoping to post a short and sweet update here regarding the things I’ve been working on. Why’s that?

read more

Grow Together (2019 edition)

08 January 2020

Hey, I just ran some quick numbers on how my Coupling application was being used in 2019. Overall, it looks to be very similar to 2018 (which was a strong year). Here we go!

read more

Meaning...?

09 December 2019

This month I’ve been putting some more time into verbalizing my professional goals and values, as I’ve had to explain and establish many core concepts over and over again. Now, I’m not saying that creating the content will alleviate that need (it won’t!), but I think having this clearly written and established will help people understand what they’re getting into when dealing with me.

read more

Descent Into the Microverse

26 February 2019

Ok, so as promised, its time for the much anticipated “what has Rob been doing with Kotlin?!?!?” post. I know, I know, I really kept you waiting there. No one expected a whole month to go by! A month which I spent… doing more Kotlin stuff.

read more

The Tome of Many Tales

28 January 2019

Hello friends! It has been many a moon since I’ve updated this here rant-box, and its time to collect some thoughts!

read more

Strange Adventures

02 August 2017

Lets get Big and Visible!

read more

The Exceptional Doorway

30 September 2014

I think about error handling a lot. Perhaps a shocking amount. I mean, it’s the first example I reach for when discussing programmer ethics. Its one of the first things I investigate when learning a new programming language. And my opinions (read: rants) on the topic tend to be long, detailed and interminable.

read more

Filibustering Under Oath

23 September 2014

Back again! Today I’m going to say a few words about one of the other Gists I put up last week: Pledges.

read more

Undercover Operation

14 September 2014

I’ve just published three new Gists, to my Gist page. The reason I haven’t posted here in a few weeks is that I’ve been nearly pathologically working on the Swift game I mentioned earlier. That game led me to develop these three libraries: Pledges, a Promise system for Swift ArmorXml, a system that augments RaptureXml with Pledges ArmorTestKit, a group of functions for simplifying testing Swift code using XCTest. This includes assertions designed for Pledges. Now, they haven’t been exposed to much light so far, and therefore I’m sure that there are usability quirks - if you try it out...

read more

A Synthetic Creature

25 August 2014

As I’ve been diving into Swift again these last few weeks, the issue of mocking has crept up a few times. I’ve had a few thoughts over the years on the subject, and recently I’ve observed a lot of testing-related pushback, so… a few thoughts. For the purpose of this article, I’m going to use the term ‘mock’ to refer to any test-oriented substitute implementation of a programmable interface.

read more

Closing Time

18 August 2014

I’ve been powering through converting a lot more of my Java game code to Swift in this last week, and while doing so I’ve been trying my best to learn about the closure syntax provided. For example, this code snippet is made possible:

read more

Heart of Silicon

11 August 2014

Periodically, I meditate on a favorite question of mine: what does it mean to be a software developer who acts ethically? That is to say, what challenges that developers face should be considered ethical first, rather then simply mechanical or strategic. I have a few answers, but I’d love to know what the community thinks, so please add ideas in the comments below so we can all be enriched by your meditation!

read more

Rapid Difficulties

04 August 2014

As I’ve been porting more and more code to Swift, I’ve noticed a problem emerge around 3-4 times already: when writing tests to measure the performance of a section of code, I frequently (though not always) run into EXC_BAD_ACCESS problems.

read more

Identity Crisis

01 August 2014

I want to talk for a second about a problem I ran into recently with Swift.

read more

Space Debris

31 July 2014

A little cross promotion to celebrate the release of Guardians of the Galaxy: my longtime compadre Jeff Jia and I run an utterly unprofessional pop-culture podcast. If you’ve been reading this blog and thinking “this would be a lot better if it was being read aloud, had a lot of extra swears, and was actually about Godzilla” then it is ideal for you. Its called Journey Into Mystery Science. The iTunes page is here and the related tumblr is here. And that’s all you’ll be hearing about those subjects on this blog - here we’re sticking to nice, clean, polite,...

read more

Secret Words

29 July 2014

I’ve been working in a few different languages lately for a host of reasons… mostly involving self-education in various ways. I realized a few years ago that in every language I picked up, I was trying to build a safer meta-language (really a suite of safe design patterns and coding styles) that works anywhere. Simple principles like:

read more

A Gemini Dilemma

28 July 2014

Well, to get things rolling here I figured I’d start by talking a smidge about my most mature side-project - Coupling.

read more

The Genesis Machine

25 July 2014

Welcome to my new, professional, code-monkey-centric blog. I’ll update periodically with information on independent projects I’m working on.

read more