Orange Code

What humble citrus fruit can tell us about software

Michael Feathers
August 28, 2018

Whenever I work on unfamiliar code I start extracting methods. I look for chunks of code that I can name - then I extract them. Even if I inline the methods I’ve extracted later, I have a way of temporarily hiding details so that I can see the overall structure.

When I’m working with someone, often they point out that I’m actually . . .

Read More

Does Software Understand Complexity?

Reflections from ICCS2018

Michael Feathers
July 28, 2018

This past week I was at a conference with some wonderful talks, but I also enjoy the hallway track - the conversations you have with people during breaks. You trade experiences and eventually you get to the question: “what do you do?” My answer started with one word: software. The people I met had a range of reactions but often they spoke . . .

Read More

The Loss of Locality

Social effects of increased communication

Michael Feathers
March 28, 2018

Silvrback blog image
One of the things about having kids is that their experiences put cultural change in sharp relief. You see the issues they deal with and think back to what you were doing when you were the same age.

Although my children are older now, I vividly remember conversations we had back when they were in elementary school and the . . .

Read More

Breaking and Mending Compatibility

Michael Feathers
February 22, 2018

We often think that backward compatibility is hard, but actually it’s rather easy. Any project with users has a built-in mechanism for maintaining backward compatibility — people complain when it’s broken. That’s how you know. And, most of the time they let you know quickly.

The problem with this is that users can force unwanted . . .

Read More

Negative Architecture

Guiding software by flipping figure and ground

Michael Feathers
January 03, 2018

Silvrback blog image

You’ve probably seen this picture before. It’s one of several images that people use to show how perception works. You either see a vase or two faces looking at each other. In the terminology of Gestalt Psychology, one becomes the figure and the other becomes the ground. We can switch between the vase and the faces but we can’t see . . .

Read More

10 Papers Every Developer Should Read

(At Least Twice)

Michael Feathers
November 15, 2017

(This is a requested repost of a lost blog I wrote in 2009. I'd change a few things, but not many)

I spent most of yesterday afternoon working on a paper I’m co-writing. It was one of those days when the writing came easy. I was moving from topic to topic, but then I realized that I was reaching too far backward – I was . . .

Read More

Knowing What Is There

Michael Feathers
October 20, 2017

If you want to know about the mechanics of refactoring there are quite a few resources out there. You can even find resources that outline refactoring strategy. But what about mindset? Is there a refactoring mindset that people should be aware of? I think that there is.

A while ago I was working with a team. We had time to refactor . . .

Read More

Archive
   Subscribe by email and never miss a post.

This update link alerts you to new Silvrback admin blog posts. A green bubble beside the link indicates a new post. Click the link to the admin blog and the bubble disappears.

Got It!