Big O Notation for Measuring Skincare Costs (Part 2)
A month ago I wrote about my girlfriend's weird habit of applying a 10-step skincare routine. I heavily criticized her skincare architecture because it fell into the O(n^2) or quadratic time category, meaning the more product layers, the more exponential the complexity and cost became.
And guess what happened yesterday? My girlfriend's face had a severe breakout. Irritated, red, and stung when splashed with water. In the IT world, this is called your server experiencing a kernel panic due to too many dependency conflicts.
I am not a dermatologist, but from a systems engineering perspective, the root cause is very easy to guess. She combined exfoliating products (AHA and BHA ingredients) together with retinol every night. This is equivalent to running a memory cache deletion script (disk cleanup) simultaneously with a new OS installation process. Your system breaks. Her face literally lost its skin barrier.
What annoyed me even more was the solution she chose. Instead of rolling back her system to the previous stable version (just using basic facial wash and moisturizer), she checked out new products. She bought centella asiatica serum, expensive ceramide cream, and honey sheet masks to "calm" her skin.
This is a real-life form of Technical Debt with a compounding effect.
In coding, this is called an anti-pattern. You have a bug in module A (over-exfoliation). Instead of deleting module A, you write modules B, C, and D to cover up the error from module A. The result? Your codebase gets fatter, your resources are depleted, and if another problem arises, it is even harder to find the main cause because the layers are too deep.
I told her gently (because discussing a girl's face requires high-level security protocols), you are better off using the Binary Search technique for debugging.
How does it work? Stop all those weird products. Return to basic skincare (cleanser, moisturizer, sunscreen). Wait a week until the irritation subsides. Once it is safe, slowly introduce one additional product (like toner) and observe the results for a few days. If it is safe, add another product. If it suddenly gets red again, it means the last product you used is the root cause. You can quickly isolate the problem.
A blind trial and error method by slapping 5 new products at once on your face is illogical. You will never know which variable fixed your skin and which one ruined it.
Eventually, she obeyed. A week of basic skincare, the irritation faded. She also realized the money saved from not buying weird serums could be used to save up for things with a higher return on investment, like upgrading my laptop's RAM (okay, this is just wishful thinking).
The moral of the story: you do not need a complex system to solve a simple problem. Sometimes, doing fewer things (an O(1) approach) gives far more optimal results, both for your server and for your face.
- Khay