11 Comments
Oct 6, 2023·edited Oct 6, 2023Liked by Leonardo Creed

I once added something to a file originally created by Jeff Dean's and it was the most beautiful code I've ever read.

As an ex-Googler, I'm a fan of readability because it makes everything so much easier and faster to understand and modify. I missed it after switching companies.

Also, readability becomes increasingly important after the original authors / owners of the code leave the company.

With respect to the fact that it's slower, I think after a while you just get used to thinking about building the code in a readable way, so all in all it's not that much slower. Also it saves a ton of time spent if you need to troubleshoot an issue if you're on-call for example.

Expand full comment
author

Thank you for sharing Irina! Totally agree with your take on readability.

Also, definitely cool you got to edit a file created by Jeff Dean himself 😄

Expand full comment

Re. your last paragraph: "Biofeedback works wonders" 8}

Expand full comment

Interesting setup. I wonder if that would generate bottlenecks with fewer readability reviewers.

"Facebook (now Meta) has had “code quality problems” for almost a decade now," -- I would not sugar coat it if we compare to other mature companies but since last few years this has improved a lot.

The company grew first chasing business outcome and then started working on "quality" so it is natural for code/test/etc quality to be a bit lagging.

Expand full comment

It's the first time I'm reading about this concept, very interesting!

I can see the logic of it. I guess that after a time you get used to the standards and it comes naturally. It's a great way to onboard team members to new languages, and as you mentioned being picky without seeming so.

The problem is those cases when you want/need to move faster, the C++ example is a good one. When it's a temporary project for a few weeks in some side-tech (or a legacy project that is barely maintained), needing that readibility expert sounds like a pain. As I'm used to working in a startup, this seems like a huge slowdown process 😅 I can understand the internal advertisment in Android...

Expand full comment
author

Yup, it seems it’s less of an issue nowadays because most teams have readability approvers for the languages they code in. But obviously its not perfect because, like you said, many people prefer a higher coding velocity!

Expand full comment
Oct 23, 2023·edited Oct 23, 2023Liked by Leonardo Creed

I like the idea of readability-lite for smaller companies.

When you have very few in the company, i.e. < 5 developers, you usually don't have time to spend on anything else than the absolute necessities. I'm starting in a company very soon with 2 software engineers and 2 marketing people in total. Reasonable readability goals with a validity check from a collegue is then sufficient I think. But most important is of course that you solve the problem. Usually that transfers to writing the proper unit or integration tests.

After all if the code looks ace and everyone loves to read it, but it won't solve the problem, it's just a waste of time :-)

Expand full comment
author

I agree! Readability-lite is a great idea, but readability for the sake of "nice looking code" is pointless.

You make a great point of making sure the problem is solved. After all, we're hired to solve problems, not just write code :)

Expand full comment
Oct 23, 2023Liked by Leonardo Creed

Just to be clear: The article was great. I wouldn't bother to comment otherwise ;-)

Expand full comment

I think it's so important to have a standard to refer to. Otherwise, code reviews are random: Some of them go super fast, and in another, you have a person pointing out these styles and good practices.

Having something everyone expects I'd expect that everyone familiar with readability refers to the style guidelines, even if they are not "readability certified".

Expand full comment

Curious how do you think people building on their own (solo devs) can cultivate great habits around readability and maintain clean code?

Expand full comment