4 ms·
You can still expose interfaces, the tricky part is that there are multiple systems you're creating interfaces to -- whether or not you intended it. Take blood
by idrios 6y ago
You can still expose interfaces, the tricky part is that there are multiple systems you're creating interfaces to -- whether or not you intended it.
Take blood for example. Through a fluid mechanics lens, the role of blood is to maintain a certain amount of flow and pressure in different parts of the body. You can look at it with Poisseuille's Law in mind: F = (ΔP/R) where F is flow rate, ΔP is pressure, and R is (for the purposes of this example) a constant [1]. Low blood pressure = lower flow rate, which means blood spends a longer amount of time in parts of the body than necessary. So blood is depositing oxygen slower than it should. Makes sense that the resulting symptoms would be things related to lack of oxygen -- dizzyness, lethargy, etc. Meanwhile high blood pressure = higher flow rate (which is good), but that pressure is being generated from a fluid pump (your heart), which means your heart is working harder than it needs to so it makes sense that high blood pressure results in heart-related problems. So the role of blood for fluid mechanics is to maintain the right pressure & flow.
Through a biomaterials lens, blood needs to flow easily when it's in the body but not when there's a leak in your pipes (a cut). Its solution is more or less that it recognizes a certain kind of surface as "self" and doesn't bind to that surface, but any other kind of surface attracts plasma which attracts blood.
Through an immunology lens, the cardiovascular system represents a huge vulnerability in the human system because it provides a channel for foreign attackers to reach any of the body's many microservices -- lungs, kidneys, brain, you name it. So it makes sense that the strongest antivirus would be present in the blood stream. That, and the blood is a very convenient transport service for antibodies that need to get to a compromised area quickly, to contain the incident.
Through a biochemistry lens, oxygen is a resource that every cell in the body needs for cell respiration. Blood needs to be able to pick up oxygen from the alveoli in the lungs, and drop it off in a fairly evenly distributed manner throughout the body. It'd be bad if it couldn't even pick up the oxygen (which is why Carbon Monoxide kills you -- it binds to blood and doesn't let go). It'd be bad if picked up the oxygen and dropped it off too early. It'd be bad if it picked up the oxygen and then refused to let go. So the body evolved a really clever system where it uses hemoglobin, which binds oxygen more tightly at higher Ph and more loosely at lower Ph. Conveniently, high concentrations of CO2 lower Ph, so blood naturally lets go of
its Oxygen when it's in areas of high CO2 concentration.
Through a bioelectricity lens, blood is electrically inert. This doesn't get talked about because it's uninteresting, but it is still a design decision that blood doesn't generate or consume electrical energy and does not interfere with the electrical activies of neurons.
You can still draw the interfaces as you would in software engineering. But anything you make will have interfaces to all of the body's systems so you need to make sure you're not throwing off any other equilibriums
[1] http://hyperphysics.phy-astr.gsu.edu/hbase/ppois.html http://hyperphysics.phy-astr.gsu.edu/hbase/ppois.html