Good morning! Today I’m hosting a Mastodon interview with Brent Simmons / @brentsimmons.
Brent is the creator of NetNewsWire / @NetNewsWire and a long-time voice in the RSS and open web community.

I’ll be asking a series of questions here in this thread and we’d love to hear form you.. Brent will reply whenever it’s convenient for him.

Follow along using #interview.

Let’s begin.

Hello, @brentsimmons, thanks for joining us for today’s interview. Over the course of your career, what beliefs about software development have you changed your mind about?
#interview

@Doomscroll The main thing is my understanding of what makes for high quality apps. I keep learning that there is another higher level of quality and at the same time learning how to recognize it and figuring out a path to getting there. And I learn how critical this striving is, not just for the health of the app but for my own spiritual health.

That's not to say that my code is so great. πŸ˜€ I’m in the midst of fixing a bunch of bugs and dealing with tech debt in NetNewsWire. Lots to improve!

@brentsimmons How do you recognize that next level of quality when you encounter it? What are the signs that tell you an app, or a piece of code, has reached that higher level?

You mentioned that striving for quality affects your spiritual health. What is it about software craftsmanship that makes it feel that way?

#interview

@Doomscroll That next level of quality is usually simpler, with fewer levels of indirection, and is very clear. It usually looks like what I call (in my head) β€œkindergarten code” β€” that is, it doesn't look at all special or especially good. Looks like it took no thought, as if it was the obvious code to write.

And, at the same time, I believe I’ve thought of all the corner cases and I know they’re all covered. I’m not just being optimistic.

#interview

@Doomscroll And then, later, sometimes I find out I’m wrong! There was a better, even more clear, way to do a thing. Or I thought I had all the corner cases covered, and I learn, usually from user reports, about something I hadn’t thought of.

It’s important not to be arrogant with software, because it will bite you and keep on biting you, no matter how many years of experience you have, no matter how good at it you think you’ve gotten!

#interview

@Doomscroll I call it spiritual, but I don’t know if it’s really that, but it *feels* like it.

We can choose what our purpose in life is, and I think most people choose to make the world better, however they define that. Taking care of friends and family, for one thing, for sure, and of themselves (so they don’t burden others unnecessarily).

Continued on next post…

#interview

@Doomscroll I think that people who make things have a sense that doing it right, to the very best of their ability, without cutting corners, is the path to a profound respect for other people, which we all need (and which seems to be in such short supply these days).

It’s also the road to gratitude, to telling the universe we are grateful to be alive and grateful for humanity, and we want to contribute our most inspired and careful work so we can say thank you, over and over.

#interview

@brentsimmons RSS has been declared dead many times, yet it keeps quietly surviving. What is it about the design of RSS that gives it that kind of resilience?

#interview

@Doomscroll It’s in the name, I think β€” it really is so simple. A regular file, easy to generate, easy to read.

And blogging systems tend to include RSS feeds because people who write blogging systems tend to like using RSS readers, and so RSS feeds continue to exist. Again: it’s so easy.

And don’t forget the role it plays in podcasting. (Appcasting too.) It’s not just for RSS readers!

(RSS is basically arrays for the web.)

#interview

@brentsimmons I’m old school and and have stuck with evangelized RSS all through the social media era.

When you look back at that moment in 2002, what did people misunderstand about RSS and blogging that seems obvious today?

#interview

@Doomscroll Some journalists were hyping RSS pretty wildly, as if RSS readers were going to be mainstream and that people might not even hardly use browsers anymore.

That seemed way overblown to me at the time, though I still think there’s a chance for RSS reading to be more mainstream than it is β€” just look at podcasting, for instance, which is a hugely mainstream use of RSS.

People were also predicting the imminent death of the Mac and of native apps back then. As always. Sigh.

#interview

@brentsimmons Back in the day, it seemed like every website had an RSS link or icon. At least these days, most websites automatically support RSS, but I don’t think the average person thinks to add a URL to their blog reader. Or have a blog reader.

What structural incentives cause large technology companies to move away from the open web?

#interview

@Doomscroll It’s hard to make billions of dollars when you can’t control everything β€” and RSS, blogs, and the open web are not controllable.

Big companies want to manipulate you to stay on site. Don’t go elsewhere. Look at the ads. Watch videos with ads.

The message is: pour your heart into this one easy website and we’ll reward you with little dopamine hits and your own feelings of self-righteousness β€” while we get enormously rich beyond dreams.

#interview

@brentsimmons If the incentives of large platforms push toward control and engagement at any cost, what incentives or structures help keep the open web healthy? Or in your case, what small choices can individual developers make that help keep the open web alive? And what does a healthier relationship between people and the web actually look like?

#interview

@Doomscroll I’m no Cory Doctorow or Dave Winer or John Gruber β€” talking about the big picture at the corporate and societal level is not my thing. But I can talk about the choices I’d like to see individual developers make.

Blog β€” don't just be on social networks. Write about yourself and your stuff *and* other people’s stuff too. Look outside to other people on the web.

And, of course, make apps that contribute to the open web. Lean into the idea of us all not being controlled.

#interview

@brentsimmons I love that. Sad to say, but I’ve all by given up urging people to blog.

How should developers think about platform dependency today?

#interview

@Doomscroll Developers should remember that the web is the platform nobody owns, and it’s the closest thing we have to a guarantee of freedom as developers.

On every other platform you’re a guest, and the owner might do things ban ICEBlock from the platform or run servers for ICE or provide AI for targeting software.

It is very much a bad idea to fall in love with any of these platforms. They are not your friends, and they will not take care of you or the things you care about.

#interview

@brentsimmons What does a healthy information diet look like in an RSS-driven world? Or what does it look like for you?

#interview

@Doomscroll The keys are intentionality and diversity.

We’re always going to have news that spreads by word-of-mouth or word-of-mouse β€” and that’s a good thing β€” but a person’s daily news should come from sources that they pick and that don’t all just represent one viewpoint, whether political, geographic, or demographic.

It’s also critically important to recognize which news sites are acting in good faith and which are seeking an audience by appealing to confirmation bias.

#interview

@brentsimmons How do you personally decide whether a news source is acting in good faith?

#interview

@Doomscroll If everything a site publishes is to the benefit of a single party or even a single politician, and they avoid certain facts β€” or always explain away those facts as something other than how they plainly appear β€” then that site is a propaganda outlet rather than a source for journalism.

It’s expected and fine that sites have a viewpoint, and it’s honest to not try to hide that viewpoint. But truth has to come first, and truth doesn’t always tell us what we want to hear.

#interview

@brentsimmons What I like about RSS readers is I can curate my own news sources & blogs of interest. Apple News, for example, is a fantastic app, but it feels like the USA Today of news apps & seems to serve up only the most palatable articles, no matter how much I try to brute-force it. So I use Apple News & RSS readers like NetNewsWire. But I feel like I’m drowning in info, misinformation, & disinformation. What mistakes do people make when trying to manage information overload?

#interview

@Doomscroll People overestimate how much time they have to read. They overestimate how *important* everything is β€” and they’re afraid to use mark-all-as-read. I use it all the time. Mark-all-as-read is your friend.

Try not to be a completionist. You can’t live that way. Mark-read, unsubscribe, have a life! If something is important you won’t miss it β€” you’ll hear about it via text message, social media, Slack or Discord, in person, etc.

Remember: your RSS reader is not your job.

#interview

@brentsimmons I’m all about inbox zero. But you’re right, I don’t need to make RSS my job.

Let's take this back to software development. Over the course of your career, what beliefs about software development have you changed your mind about?

#interview

@Doomscroll One dumb bias that I had was that engineers in big shops and in corporations couldn’t possibly be as good as indies β€” or else they would have chosen to go indie.

I was completely wrong! It wasn’t until my final job that I worked in a large corporation β€” and the engineers there (at Audible) are among the best I’ve ever known. And they work at a scale that indies can’t match, which requires an exemplary level of care, which I so much admire.

#interview

@brentsimmons Aside from that bias, what did working at a large company teach you that you couldn't have learned in independent software development?

@Doomscroll It taught me how much I enjoy working with younger developers (and they’re all younger than me!).

It also taught me to invest in my tools β€” to slow down and actually use the tools. I’ve always just wanted to code, and anything that’s not coding, like managing a bugs database or dealing with git, was something to deal with quickly and minimally.

I learned not to be so impatient that I miss out on some really helpful things.

#interview

@brentsimmons What small technical decision in your career ended up having the biggest long-term impact?

#interview

@Doomscroll In 1999 I was lead developer at UserLand Software on the Manila blogging system. I was, then as now, obsessed with performance, and it wasn’t as fast as I wanted to make it.

I hit on the idea of doing an optional static rendering feature for Manila. But I needed a guinea pig blog β€” so I created one at inessential.com. It quickly outgrew its initial purpose, and it’s meant so much to my career and to me personally. It’s the only thing I’ve done longer than NetNewsWire.

#interview

@brentsimmons Inessential is a no-frills blog that loads lightening fast. What role has keeping a blog played in how you think about software and the web?

#interview

@Doomscroll Having a blog makes me feel like I am part of the web and the web is part of me. Without it, I’m just a guy who happens to write an RSS reader. Could have been anything.

But with the blog I’m invested in the web *for real*, and that makes what I do a mission born from love and not just some random thing. It changes everything for me.

#interview

@brentsimmons Let’s talk software craftsmanship. What makes software feel good to use, and how does an engineer design for that intentionally?

#interview

@brentsimmons @brentsimmons Let’s talk software craftsmanship. What makes software feel good to use, and how does an engineer design for that intentionally?

#interview

@Doomscroll It should reward more than the effort you give it. It should be stable and the UI should feel stable. Performance needs to be excellent β€” nobody has time to wait. Bugs are ideally never encountered.

One aspect that seems wildly overlooked these days is latency. Button presses need instant feedback. So often I do a thing, nothing happens, I do it again, and then find I’ve toggled a thing on then off. So I do it a third time and wait, cursing.

#interview

@Doomscroll In my case, I’m engineer and designer. But I’ve been engineer-only sometimes, and there are some things engineers can control: bugs, performance, latency, and stability. Even an app with a middling design can be better-loved than a well-designed competitor app that crashes, has bugs, is slow, and is otherwise frustrating to actually use despite its better design.

Do those things. Do them as part of everyday practice; do them even when management isn’t asking for them.

#interview

@brentsimmons Love this! β€œIt should reward more than the effort you give it.”

What engineering lesson took you the longest to learn?

#interview

@Doomscroll It took me a long time to learn β€” and I’m still learning β€” that my capacity for engineering isn’t limited.

I’ve thought of myself as a writer, an artist, since I was a kid, and I bring that to this work.

So it’s easy for me to think I’m not like the other engineers (no CS degree, no college math, etc.) and I’m not, as an artist first, capable of the difficult kinds of programming other engineers do.

Bullshit. Thinking that way just imposes limits that aren’t real.

#interview

@brentsimmons @Doomscroll β€œdo them even when management isn’t asking for them.” Yes one thousand times.