Top all-time · #1848
Michael Feathers
Personal blog · michaelfeathers.silvrback.comprogrammingcareer
Michael Feathers's personal blog at michaelfeathers.silvrback.com covers programming and career. Since 2013, 42 different Hacker News readers have linked it 80 times, most often “Characterisation Testing”. The last post was in 2023, but the archive is still widely read.
The blog of Michael Feathers
Most-linked posts?
- Characterisation Testing5 people · 7 mentions · first linked 2016-08-08
- Microservices and the failure of encapsulation5 people · 7 mentions · first linked 2014-06-20
- Testing Yourself4 people · 4 mentions · first linked 2018-12-07
- (Possible) AI Impacts on Development Practice4 people · 4 mentions · first linked 2023-04-07
- Technical Debt is the refactoring effort needed to add a feature non-invasively3 people · 4 mentions · first linked 2016-12-26
- Papers every developer should read at least twice (2009)3 people · 3 mentions · first linked 2021-07-20
- The Ergonomics of Type Checking (2016)3 people · 3 mentions · first linked 2016-09-09
- Twitter, Reddit and Conway's Law2 people · 3 mentions · first linked 2017-01-09
- Functional Code Is Honest Code2 people · 3 mentions · first linked 2020-06-12
- Moving Past the Scaling Myth2 people · 3 mentions · first linked 2015-07-01
What Hacker News says?
I agree. Writer Michael Feathers has an article where he suggests that Microservices are a replacement to encapsulation, all we have to do it use encapsulation well. https://michaelfeathers.silvrback.com/microservices-and-the-...
Comment linking /microservices-and-the-failure-of-encapsulaton
on “Why Segment Went Back to a Monolith”Submitted Papers every developer should read at least twice (2009) as a story · 623 points
HN discussionThis is a way you can approach it. https://michaelfeathers.silvrback.com/characterization-testi...
Comment linking /characterization-testing
on “C4: C in Four Functions (2014)”Submitted Moving Past the Scaling Myth as a story · 100 points
HN discussion> Yes, it was complicated, but I think there is a benefit: it's very clear where certain functionality should live Off-topic, but your post reminds me of this Michael Feathers article [1], where he argues that while programming languages have tools to support encapsulation, the don't really work, but the thing about microservices (or layers in this case) is that they actually force us to actually encapsulate our cod…
Comment linking /microservices-and-the-failure-of-encapsulaton
on “The top bug predictor is not technical, it's organizational complexity”Submitted Does Software Understand Complexity? as a story · 86 points
HN discussionThere's this nice mix of technical and opinion papers: 10 Papers Every Developer Should Read https://michaelfeathers.silvrback.com/10-papers-every-develo...
Comment linking /10-papers-every-developer-should-read-at-least-twice
on “Papers We Love”Submitted The Simulation Argument and the Simulation Barrier as a story · 80 points
HN discussionI think it's inevitable we'll use some of their toolset. The problems we solve don't get easier so we will reach for more powerful tools. As an example, just being able to think in terms of a transpose makes many problems trivial: http://michaelfeathers.silvrback.com/moving-quickly-with-com...
Comment linking /moving-quickly-with-compositional-chains
on “Advanced programming languages (2009)”Submitted The Ergonomics of Type Checking (2016) as a story · 69 points
HN discussionThere's a myth around scaling [1]. Actually, it's almost like a cognitive bias. We assume that we can usually use the same structure as we scale. Because of this bias, we haven't thought enough about how to make bigger structural transitions normal. The GP points at the transition between the quick & dirty architecture and the architecture that handles Google-scale, but those aren't the only good stable points for a…
Comment linking /the-myth-of-scaling
on “Startup CTO – Premature Scaling”Submitted Detecting Refactoring Diligence as a story · 33 points
HN discussionThe dream of reuse has made a mess of many systems. The value of components (you can call them microservices if you like) lies in independent entities communicating over well defined interfaces. This means that you can split work up into manageable units (and distribute the work across teams if you want to). But if things are genuinely independent then we have to accept that there will be some redundancy. As long as…
Comment linking /microservices-until-macro-complexity
on “Microservices and the First Law of Distributed Objects”Submitted Unit Conversations as a story · 15 points
HN discussionMicroservices might be a hack to gain modularity when nothing else works. https://michaelfeathers.silvrback.com/microservices-and-the-...
Comment linking /microservices-and-the-failure-of-encapsulaton
on “You Want Modules, Not Microservices”Submitted Does Software Understand Complexity? (2018) as a story · 14 points
HN discussion> You can already share and resuse components, modules, stores, functions? You're absolutely right that we can, but the issue is that most teams are too large or too disorganised to share complex codebases, so they choose to do a hard division: splitting the code itself. Here's an argument that I love: Microservices and microfrontends are (most of the time) a failure of encapsulation [1]. Of course there are other b…
Comment linking /microservices-and-the-failure-of-encapsulaton
on “Micro-front ends in Webpack 5”Submitted Making Map Operations Implicit in Programming as a story · 14 points
HN discussionA few that I follow on a semi-regular basis: https://michaelfeathers.silvrback.com http://highscalability.com http://techblog.netflix.com http://www.natpryce.com https://8thlight.com/blog/ https://www.percona.com/blog/ https://www.smashingmagazine.com http://blog.crisp.se/author/henrikkniberg https://m.signalvnoise.com https://dannorth.net/blog/ https://codeascraft.com
Comment linking /
on “Ask HN: Good tech blogs to read”Submitted Scaling and the Friction of Dimension as a story · 12 points
HN discussionThe thing about unit testing existing code is that it is much easier than most people think: https://michaelfeathers.silvrback.com/characterization-testi...
Comment linking /characterization-testing
on “What to Do When Your Colleague Creates Spaghetti Code”Submitted The Ergonomics of Type Checking as a story · 7 points
HN discussionThis reminded me of a blog by Michael Feathers about a similar idea he calls Characterization Testing. There's also some code examples. The difference is instead of trying to find out where the gaps are in your scripted testing, it is about creating tests in order to understand something that isn't tested or has an unclear specification. The intentions are slightly different, but the I'd think the process is the sam…
Comment linking /characterization-testing
on “Exploratory Testing”Submitted Using Repository Analysis to Find Single Responsibility Violations as a story · 7 points
HN discussionI think the architecture of social media spaces affects their culture. I wrote up some observations here: 'Twitter, Reddit, and Conway's Law' https://michaelfeathers.silvrback.com/social-media-architect...
Comment linking /social-media-architecture-and-conway-s-law
on ““Did We Create This Monster?” How Twitter Turned Toxic”Submitted Gateway Teams – First experiences of your organization matter as a story · 6 points
HN discussionYeah. Michael Feathers' Working Effectively with Legacy Code book is good. Interestingly, Feathers defines Legacy Code as code without automated tests. the rough process goes like this: 0. you need to make a change to some code that you dont understand and that has no automated tests and no reliable documentation of what its behaviour is 1. you need to refactor the code or change some logic in order to fix the requi…
Comment linking /knowing-what-is-there
on “Ask HN: How do you deal with legacy code?”Submitted System Personas and Design Integrity as a story · 6 points
HN discussionAs the example above ( https://michaelfeathers.silvrback.com/microservices-and-the-... ) this doesn't change anything. I still can't comment.
Comment linking /microservices-and-the-failure-of-encapsulaton
on “Ask HN: Where do you discuss old articles?”Submitted Microservices and the Failure of Encapsulation as a story · 4 points
HN discussion