SA
Skip to main content

Service Shimming

In computer programming, shimming is a method of transparently intercepting, modifying, and redirecting the API calls. A smooth shim is hardly noticeable; imagine Mission Impossible, where you ordered food at a restaurant, but actually, Ethan Hunt intercepted your call, cooked, and delivered your food.

People really don't care about how developers implement services. If you withdraw some money from an ATM, you don't care if it's an actual ATM, a secret terminator trying to assassinate you, or actually, there's a person inside a machine counting the money for you. The important thing is giving the illusion that everything is working. If this is true, engineering might not be as crucial as we developers think. Maybe Time to Market is more critical. Here are a few examples:

  • Edison faked his invention of the light bulb for more than 4 years.
  • The first iPhone failed to integrate individual apps, so Jobs had to prepare separate iPhones for calls, music, maps, etc. He had to switch between each iPhone, pretending it was the same device.
  • Tesla is also a similar example; Elon always makes bold claims but never delivers something on that date. Where is our Cybertruck?
  • Naver (≈ Korean Google), for a while, failed to make a News automation service, making the CEO visit Press organizations every morning to ask permission to distribute the articles.
  • Woowa Bros (≈ Korean Doordash) failed to make an order relay system, so they had to call the restaurant one by one whenever they got an order request.
  • Toss (≈ Korean Paypal) failed to make the transaction system, so the CEO visited the bank three times a day to bulk-process pending Venmo requests.

One interesting observation is that Theranos, known for the "Bad blood" incident, had the same flow. They claimed to diagnose NN amount of tests with a drop of blood, but the device never worked, and they operated a full-scale diagnosis lab to fake as if the results were coming from their flagship machine. Soon they were exposed and ended in a fiasco; how would history change if they had succeeded in the end? Another observation: 4 years in the 20th century and 21st century is extremely different in velocity.

How far can we accept fake it until you make it?