TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

The Impedance Mismatch Test: Is Your Data Layer a Complex Mess?

24 pointsby node-bayareaalmost 4 years ago

7 comments

defanoralmost 4 years ago
It looks like a rather oversimplified model: the examples assign the same overhead to any component, transformation, or feature, so anything monolithic or that can be grouped together is favoured, even if buggy, clunky, or poorly supported. Transformations may be awkward (lossy, or having to make assumptions and make up some data, and&#x2F;or dealing with poorly specified formats), which makes them unequal as well, but it&#x27;s often arguable which ones are simpler. Features may have different priorities, but even if they don&#x27;t, I imagine them to be among requirements, not up to technical decisions; if they were, it&#x27;d be another way to hack the resulting value by adding useless ones. And ignoring all that, it just says that systems with fewer components are generally simpler.<p>It seems to be the case with most talks about simplicity: pretty much everyone agrees that it&#x27;s good, but disagrees on what it means and how to estimate it.
评论 #27929391 未加载
drw85almost 4 years ago
I don&#x27;t really understand the need for developers to find some real world scenario or situation that they can use as analogy.<p>Impedance mismatch is a physical thing, it creates physical problems that are based on laws in nature. Having to map your database entities to a model that is different has nothing to do with any physical things, it&#x27;s a mental construct.<p>If you have a mismatch of impedance, what do you do? You insert something between the two mismatched devices to match the impedance. Isn&#x27;t that what all software does already anyways? Insert some mapping, converting, transforming layer between the two pieces?
评论 #27930198 未加载
评论 #27932840 未加载
评论 #27930083 未加载
SrslyJoshalmost 4 years ago
&gt; You have just one system ( Kafka + KSqlDB). Note that we are ignoring Zookeeper.<p>That&#x27;s not really something you can ignore, unless someone else manages it for you. (And then, of course, you need to take cost into account.)<p>Really, the model is completely ignoring the cost (time or money) of operating the storage layer.<p>It&#x27;s an interesting idea, but without taking the full picture into account, I don&#x27;t think it&#x27;s very useful.
评论 #27929349 未加载
评论 #27933392 未加载
specialistalmost 4 years ago
The Impedance Mismatch Score (IMS) notion is worth exploring. Novel, right? From the hip, I don&#x27;t recall a similar complexity measurement applied this way. Neat.<p>I like the potential that IMS potentially could be applied to more than ORMs.<p>Someone should probably link to Ted Neward&#x27;s (?) Vietnam of Computer Science.<p>Happily, there&#x27;s a resolution to this paradox. A time before ORMs, without an impedance mismatch. The key insight is realizing that client&#x2F;server is the root cause of the imperative code-to-RDBMS impedance mismatch.<p>The root causes of other mismatches are also caused by suboptimal mental mentals (metaphors).<p>Teaser, since I&#x27;m using a pseudonym account. Maybe some day I&#x27;ll get my shit together, polish and promote my FOSS projects.
mikewarotalmost 4 years ago
It was interesting until it became a full time ad for Redis.
评论 #27929357 未加载
fabbarialmost 4 years ago
How is adding features a reduction in impedance mismatch just because they are from the same vendor? For example: Redis timeseries is a separate setup - how does it reduce complexity?<p>Edit: fixed typo
评论 #27931621 未加载
pixel_tracingalmost 4 years ago
I hope credit was given to Krazam YouTube channel for that hero image.
评论 #27937742 未加载