In 2006, I did my first start-up howcookingworks.com where the idea was a site to learn how to cook. The first part of the site described the techniques of cooking, and the other was where cooks could connect to participants to learn from them.
At the time, I went to a lot of start-up mixers in Los Angeles, and most people said they loved the idea. But the site never got much traction.
During that time, I also did cooking demos at companies like Google and Boeing, but it didn’t really draw much attention to the site either (though maybe things might have been different if the site had launched during the pandemic).
The site and start-up failed, and to this day I still haven’t answered the question of how people should learn to cook. However, that failure was still one of the best things I’ve done in my career, as it helped me think more clearly about product-market fit.
Cooking is deceptively one of the most complex tasks you can do in the world. It involves shopping, food preferences, ingredients, recipes, heat, techniques, etc. It is harder than you think and our older family members have spent decades in the craft.
We were in Denver recently, and did one of these self-guided audio guide walks on the phone. As we walked around state capital building, it had us stop by a used and rare book store, Capital Hill Books. Upon entering you would see lots of books you wouldn’t easily be able to get online. I saw a hard cover copy of the Hardy Boys books, which I remember reading as a kid.
Meandering around a bit, I found myself at the cookbook section, and one book caught my eye, “The Chinese Vegetarian Cookbook.” Everything about the book was odd. It had the format of a Garfield book where it was half the size of a book, and I noticed it had no ISBN number. The book was written in 1972, almost 54 years ago.
The book starts off with:
“Cooking, especially the Chinese way, is just impossible to define in such a way, as it requires a lot of good sense, judgment, and experience. In preparing the same dish a hundred times, he is a genius if he can manage eighty percent of them to be the same quality.
This is the main reason I have written this book. It was not written just to give you recipes from the second page to the last as many cookbooks do. I do not pretend that cooking is as easy as ABC as may claim. This book is written to help you understand how to cook. Unless you are willing to read and practice carefully, I don’t think you will find anything useful in this book-maybe a can-opener will do a better job.”
The first half of the book contained detailed descriptions of ingredients, and some recipes were written in paragraph form. It is quite different from cookbooks today, which present recipes in very precise formats but don’t really challenge you to think about them. This excerpt comes from the “How to Make Soy Bean Milk” section:
“… Normally overnight soaking is enough, but the actual surrounding temperature makes the difference. The cooler the temperature the longer the time that will be needed. However, by the next day you pick out one of the beans and break it apart with your thumb and first finger. When the bean is separated into two halves, see if the central part shows a tiny dent (Normally they are smooth). If the dent has appeared the beans are well soaked and it is time to start making the milk.”
Compare this to a recipe from Serious Eats on making soy milk, where that entire paragraph is reduced to this bullet point:
Rinse, drain, and soak beans in about 6 cups of water for 8 to 10 hours. Rinse and drain again
Reflecting on the book more, I think truly learning how to cook requires a certain amount of friction. What I mean is that blindly following a recipe doesn’t lead to much growth. It’s more the struggle of iteration, along with learning from others or from rare books like this, that helps us improve.
In the early pandemic, I decided to pick up the hobby of reading cookbooks. Fortunately, I had already gone through the phase of baking bread a couple of years earlier, so all of that was out of my system.
I was pretty obsessed back then, to the point where the sourdough starter reminded me of an electronic Tamagotchi. It was this strange little digital pet that you had to feed by pressing buttons every day, otherwise it would get upset. If you’re younger and don’t know what that is, it’s worth looking up online to have a laugh.
When you make bread, you have two options: you can use instant yeast in a package, or this living and breathing starter. You feed the starter a mixture of flour and water every day—or at least a couple of times a day—to keep it alive. One time when I took a trip to Washington DC, TSA took a look at the starter, and I was immediately flagged for secondary screening. Fortunately, it was an older lady who understood and let it go. It technically was less than 3 ounces, just saying.
Reading cookbooks is quite different from browsing recipes online. Because they aren’t easily searchable, you often find deeper insights in niche books focused on a specific cuisine. We’re all familiar with Chinese food, but reading about something like Shanghainese cuisine highlights how diverse the food world is. What can seem monotone at first reveals a much richer tapestry when you look more closely.
To keep track of my cooking experiments, I started my own personal wiki. My process would be:
1. Find the recipe I want to cook
2. Write it down on the personal wiki with ingredients, steps, and history
3. Take a couple photos
4. Upload the photos to the wiki recipe
This process is no different than the spiral bound journals of recipes our parents used to have, but one key aspect that I have found to be a game changer, is documenting the history of cooking the recipe (or for my techie peeps out there, keeping track of the diffs).
There is something to be said about iterating through a recipe and seeing how small tweaks make a difference here and there.
How do you improve a recipe? One way is by trial and error. But the easier shortcut way is to ask someone more experienced what their recipe is.
In Vancouver, one of our favorite Peruvian restaurants is a place called Silvestres. There is this one dish, pescado sudado, which is a stew of tomatoes, ají amarillo, and fish. Usually in North America, when you ask a restaurant for their recipe, you get a hard no, and you might try to reverse engineer it by looking at the ingredient list. However there was one exception where I asked how they made a sauce at a restaurant, and they e-mailed me a powerpoint on how to make it.
We were recently in Costa Rica, and after many days of eating the local cuisine, we were craving something Asian. In La Fortuna, we found a Peruvian restaurant that served pescado sudado. The dish was quite good, with a tomato sauce, chunks of fish, and some fried strips of cassava on top.
I had previously messaged them on WhatsApp to confirm their opening times, and I decided to ask how they cooked their recipe. I was shocked when the lady gave me her recipe and let me ask questions to clarify some of the steps.
You know when you ask a good cook for a recipe, they give you some instructions. But when you delve deeper, you realize they usually leave out important details—not out of intent, but because they’ve done it so many times that it’s second nature to them.
I have spent a lot of time looking up recipes for pescado sudado on the internet. I found some on YouTube and Facebook, but unfortunately there aren’t many Peruvian homestyle cookbooks out there, so I didn’t have a good baseline for reference.
The recipe I found online, at a high level, was: sauté onions and garlic, add blitzed tomatoes, then add ají amarillo (yellow pepper). It is very difficult to source ají amarillo in North America, so the next best thing is to use it from a jar.
However, every time I cooked the dish, it was too spicy and the balance was off. When asking the Costa Rican chef for her recipe, she mentioned slicing the tomatoes into rounds, and when using yellow peppers, to deseed them (she didn’t tell me about deseeding the first time). The odd thing about chili peppers is that there is a difference between heat and spice. Spiciness, to me, refers to chilis with that intense kick—the kind you get when you ask for Thai food “spicy.” Heat is what remains when you devein a chili and remove the seeds. You get the flavor and back heat without it being overwhelmingly spicy.
I had a couple flaws in my recipe:
1. I blitzed the tomatoes instead of sliced them into rounds. That small change dramatically changed the texture of the dish making it more velvety.
2. I had been using jarred ají Amarillo sauce which already had the seeds ground into it. So no matter what, the dish would always be too spicy.
#1 was easy to fix, and for #2, what I did instead is use Mexican guajillo and Pasilla Oaxaca chilis to get the heat.
Looking at the history I was a little shocked that the first time I cooked the dish was November 26, 2020, and only now 6 years later do I feel this recipe has passed the taste test.
Good recipes aren’t just a list of ingredients, steps, and instructions. At its core is the wisdom of the creator who iterated through the recipe many times to get it just right.
RECIPE Ingredients
350 grams of fish (rockfish or ling cod, doesn’t matter any fish)
half a sliced onion
1 large garlic sliced
Sliced ginger
1/4 yellow bell pepper
segment of guajillo, pasilla oaxaca, tiny peruvian spice
1/2 cup chicken stock
SIDE
60 grams quinoa per person (120g total) pot in pot steamed
Directions
CHILI PREP
Soak de seeded chilis in boiling water
Blitz with water
FISH
Cut fish into cubes
Marinate with a little salt
SAUCE
Add lemon as needed
Stir fry onion, garlic, ginger, and bell pepper for a couple minutes, add salt
Remove, then add tomatoes, let it sautee for a couple minutes until the thick sauce comes out
[note – there is some detailed computer science jargon – feel free to skip that if you’d like]
Vibe coding is one of these new trends where people who know nothing about computer programming are able to code up websites and applications. It is really quite an impressive thing to do for people who don’t have any training.
Can you imagine this happening in other fields? What if I went to a dental office for the first time to clean teeth and had a magic tool in my hand that could do it without any knowledge of the field, but was still able to adequately clean teeth?
For a long time, computer science was a boring field. You would have these new software architecture patterns and paradigms every 5-10 years, but now it is like someone mega dosed computer science with an IV drip of coffee and an infusion of chocolate.
Now with AI, things are absolutely insane. Every 3-4 weeks there is some new breakthrough or pattern that makes software development easier. To give you an idea how life used to be, coders use Integrated Development Environments (IDEs), to code. You would have to type code by hand, and it is not so different than learning a foreign language.
In fact, computer languages are like spoken languages but with a much more constrained and detailed set of grammar and rules. We write code to do something, and then compile and execute to test it. The code you write must fit the rules defined, or else it will not run.
When we were stuck with a problem we didn’t know how to solve, we would usually Google, “how do I do x… stack overflow”, or read documentation. However now in IDEs, there is a chatbot window on the right hand side similar to ChatGPT.
This magical window is like a genie that can grant any of your wishes such as explaining the codebase, or generating new code.
These tools have existed for the past 2 years, but only recently have they gotten really good. I would even say the tooling can make an engineer 20x more productive. So the amount of work that used to take 1.5 years, could now take about a month.
At work, there is this weird illustration that comes to mind. Fredrick P Brooks wrote this book called the “Mythical Man Month”, which was about his experience and why software projects fail. Here is a quote from the book:
“When a task cannot be partitioned because of sequential constraints, the application of more effort has no effort on the schedule. The bearing of a child takes nine months, so no matter how many women are assigned. Many software tasks have this characteristic because of the sequential nature of debugging.”
When doing project estimation exercises with staff, they might tell me this feature would take 2 months, and I would agree with their assessments based on the premise Brooks wrote. It takes time to write software, just like a woman takes nine months to have a child—you can’t have 9 women produce a baby in 1 month. My staff would mostly laugh about this whenever I mentioned it.
But with AI, all the rules are broken, and in this world, women can have a child in 1 month—or even 1 week. Basically, the premise Brooks wrote no longer feels valid.
I say I half vibe code, because I do understand computer science and programming, so I mostly understand what is going on. But with this half vibe coding, I have been creating my own projects. Here are some examples of things I have done on my own time.
Personal Finance Ledger
I used to use You Need a Budget (YNAB—which is still around). The site lets you add transactions as line items so you can keep track of your finances. I found it kind of a pain to manually enter everything, but automatic syncs didn’t exist back then.
I’ve asked a lot of friends how they manage their financial records, and I’ve heard a wide range of approaches—from doing something similar to what I have done, to just casually browsing their credit card statements, to paying the bills at end of the month without auditing anything.
Even though it is annoying and time-consuming, I have found that reviewing every transaction is helpful. I’ve caught fraud quite a few times (for some reason, it always happens when going to Mexico), and it also helps me spot trends in my spending.
These finance applications like Mint and YNAB now have automatic syncs with your credit card companies to pull in transactions so you don’t have to enter them. However, me being cheap—and a bit paranoid about having any software company connect to my bank account—I downloaded an open-source version called Financier which was a clone of YNAB and ran it in a Docker image.
It kind of worked, but was still annoying to use since the docker image was very old. With AI, I completely rewrote it in Ruby on Rails (a programming framework) and added some features where I could upload my credit card statements to automatically create all of the transactions. This would have taken me 6 months to do previously, but I did it in about 2 weeks with AI.
Tennis Court Availability Checker
In the winter in Vancouver, it is hard to play tennis outdoors because of the rain. There are indoor courts you can book at the University of British Columbia, with two options.
You can pay $400 a quarter for a special pass that lets you book ahead of other people, or you can book 24 hours in advance. So if you wanted to play at 8am on Sunday, you would book right at 8am on Saturday.
The problem is that to check availability, you would have to look at each court one by one, and it would take 5–10 minutes just to see all the 8am availabilities.
Instead, I wrote a website where when you click the button “check availability,” it scans all 13 courts and aggregates the availability.
Technically, it is a static website hosted on Amazon S3 with website hosting enabled. When the button is clicked, it launches a Lambda which calls an API I found on the site with AI. Because Lambdas have a 30-second timeout, I asked Claude to refactor the code to run everything in parallel, and I got it working in roughly 7 seconds. Now for future checks, I can see availability in one shot.
.
Gmail Sync
Like many of you, I find myself bombarded with emails and find it nearly impossible to get to inbox zero. What I did was write a website that runs locally on my computer where I download all of my unread Gmail, grouping it by category and sender. From there, I use keyboard shortcuts to quickly mark groups of emails as “read” or “trash,” and I am able to get through about 1,000 emails in roughly 15 minutes.
What I realized is that a lot of the emails I get are from the same businesses, so when grouped, I can go through them quickly.
Technically, I created Google service credentials and had it download everything into a local DuckDB database. I created models for emails and threads and used DuckDB WASM so Chrome could access it natively. A bit overkill, I know—but I originally had 30,000 unread emails, and I actually got through them in about 3 hours after writing this program.
Personal Newspaper Website
As part of the Vancouver Public Library, you get access to free newspapers via PressReader. This is a newspaper app, and I usually read the Wall Street Journal and Vancouver Sun daily.
One thing I don’t love about the app is that there is often a comment count next to articles, and there is always a temptation to click and read the comments. When I lose that battle of willpower, I click—and feel a little part of me dies inside reading the inane arguments people are making.
The other problem is that it visually mimics a newspaper, so you have to scroll up and down constantly, which makes browsing a bit clunky.
What I did was write a script that downloaded the newspaper as an EPUB, then converted it to a JSON file. From there, I rendered my own personal static website in React so I could read the newspaper more easily without distractions, and turn pages using the left and right arrow keys.
Technically, I used an MCP with Playwright to remotely control a Chrome browser to understand the PressReader login, then wrote a headless script to log in and download the EPUB to Amazon S3. From there, I triggered a process to convert the EPUB to JSON and exposed it via a Lambda API.
Next, I wrote a React frontend that calls the API, returns the JSON, and renders the HTML. Later, PressReader removed the “download EPUB” button, but I found that the API still existed. I parsed my old logs to figure out how it worked and asked the AI to work around it. It did some complex things like inspecting cookies and local storage to extract UIDs—but somehow it all worked.
The interesting thing about this exercise is I don’t know anything about React, and Python isn’t my primary language so I was surprised to get most things working. I also was reviewing the code in the beginning, but eventually gave up because of the volume it was creating and just trusted that it worked.
Computer science is approaching a scary point where we might be creating systems without any human audit in the future.
I recently turned 44, and this year resonates more than others for the simple fact that there are two repeating numbers. Other numbers that have come to mind are 22, 44, and 88.
At 22, I had just graduated from college with a computer science degree during a mild recession, so none of my friends had jobs. We all questioned our decisions to pursue this degree, but about six months later, most of us had landed jobs.
Our graduating class always had an informal pact to look out for each other if anyone got laid off or needed a job. In the present day, I think only 50% of my old cohort is still doing computer science–related work, as the other half have moved on to other fields.
Now at 44, career-wise, I never would have guessed the impact artificial intelligence (AI) would have on my field. To give an example, five days of work that I would have done as a junior engineer at 22 can now take some of these models about 5 minutes to complete.
I’m greatly concerned about this disruption because the junior job market is probably the worst I’ve seen in 20 years. No companies are really hiring junior developers because AI can do most of their work. The problem we’ll see in the next 20 years is that if no juniors are being trained now, who will become the next senior engineers to guide these information technology systems? In a world without apprentices, who becomes the master?
This was also the time I started to learn how to cook. I had moved out under the watchful eye of my parents, and in the kitchen made a ton of mistakes. I remember buying ground turkey, and was surprised it turned bad after 7 days. Cooking is harder than it looks because you’re balancing so many dimensions at once.
Examples of some dimensions are the five tastes (salty, sweet, sour, bitter, umami), plus managing texture, temperature, cook time, ingredient size, knife technique, and the appropriate heat type (sauté, steam, bake, broil, grill, etc.).
I also would never have imagined that at 44, my dad wouldn’t be around. We sometimes like to think of our parents as superheroes, but there comes a time when we have to reckon with the inevitable. I have few regrets in our relationship, as we traveled a lot with my parents and my partner over the past 10 years. However one thing that comes to mind is I wish I had stored some of his voicemails to me.
He never really texted much, but he would call and leave voicemails to see how I was doing and remind me to do things like call Mom for her birthday. I have quite a lot of pictures of him, but there’s something different about hearing a message just left for me.
At times I find myself slipping into similar mannerisms as him. Sometimes when I slouch I catch myself sitting straight and remind myself that is what he did often.
My mom is also slowing down a little bit—not because of health issues, but just age. I’ve noticed she’s walking a little more slowly and gingerly, but she’s still pretty active, playing tennis at least once a week and going to the gym often as well.
I wonder as we grow up how much of our parents’ personalities distill into ours. When we would eat out at restaurants, my mom always would mention how she could make that dish at home. And in restaurants, I find myself saying the same thing.
As for myself physically speaking, I find playing sports a little more challenging on my body now. There is always a weird shoulder pinch, or muscle sore that takes much longer to go away. To help alleviate this, I rotate seeing my chiropractor, physiotherapist, and massage therapist. I’ve been to a lot of dicey massages living in Southern California, and it is a world of difference going to a session of someone who is actually licensed.
My physiotherapist gave me an analogy that doing some sport, like playing tennis or swimming, is withdrawing from the bank, and going to the gym is depositing in the bank. I get lazy doing strength training, but since I’m losing muscle mass at a rate of 3% per year, working out in the gym is something I should do more of.
In terms of my life philosophy I roughly ascribe to the principles of an Adventist program called NEWSTART.
N – Nutrition E – Exercise W – Water S – Sunlight (though I’m pretty sure the authors never thought about northern climates in the winter) T – Temperance – originally targeting alcohol and tobacco, but definitely the new topic du jour is technology addiction A – Air R – Rest T – Trust in God
The premise was that a Post-it note represents a year, and when visualizing the arc of our lives, most of our time is spent working. Having goals and aspirations is important, but even more important is being happy in the moment.
Nobody wants to think about what we’ve done over the arc of our lives, but events like tragedy and loss force us to reflect on it.
What does it feel to be 44 or to look 44? That’s kind of a difficult thing to say. I think age is more psychological than anything, but I do feel there is discrimination on how you look depending on your profession.
For example in tech, older people are sometimes discriminated against. When you interview for jobs, people sometimes assume that you are too slow to handle the fast changing pace of tech. Strange, right? In almost all other disciplines, age and experience are treasured assets conveying a sense of wisdom, yet in tech, you’re sometimes assumed to be too slow for the fast-changing pace
Do I mentally feel younger than 44? I think so. Many of the people I play sports with are younger (and often beat me), which keeps me on my toes. At church, lots of my friends are younger than I am, which helps me feel younger too.
Obsession
One of my friends’ families recently moved back to Canada after a year and a half of living in Saudi Arabia for work. We caught up for dinner with his family, and despite quite a long time passing, the conversation wasn’t awkward. It’s always interesting how we can pick up the last thread with friends despite long gaps of time.
For dinner, we ate Korean BBQ at 5 p.m., and the whole place was packed. I’ve noticed that since the pandemic, restaurants are quite crowded much earlier than usual, and I thought the early dinner trend would only be temporary.
After the dinner catch-up, my friend’s family left, and we went grocery shopping. We noticed a new soy milk store called Yuan Soy Food. Every day they make fresh soy milk and tofu pudding (in Chinese – tau foo fah – 豆腐花 – and also in Vietnamese – tàu hủ nước đường). I had this dish a lot as a kid from Vietnamese markets, and it’s quite similar since it probably came from China.
The dish is a soft tofu pudding topped with either a ginger syrup sauce or a Vietnamese variation made with pandan and coconut milk.
When cooking, I go through phases of getting obsessed with a dish and not being satisfied until I’ve cooked it perfectly. I blame—or attribute—this to how computer science has influenced how I think about things.
In computer science, code must execute perfectly or it doesn’t work. Programming languages have a concept of grammar, like English, but code only works if perfect syntax and rules are followed. If not, the code won’t run at all, so you need 100% precision. With modern editors, this rarely happens anymore, but I remember a time when my code worked perfectly in the development environment but kept failing in production. I had a configuration file that looked like this:
In my configuration file, the framework crashed because there was a space after the hostname. It’s these annoying little details where obsession and precision are required to see why things work and to solve problems.
When I cook, I carry over these same methodologies from engineering. Now the task: how do I make tau foo fah?
The first question is: what is tau foo fah exactly? We know it’s soy milk. The next question is: how is soy milk made?
That in itself starts the rabbit hole. It’s impractical to cook things from scratch when we can just buy them from the store, but there’s a kind of intrigue and satisfaction in knowing the roots of a dish—how far you can trace it back. It’s really no different than debugging a code stack trace and tracking the details until you get to the top.
First, you start with soybeans. You soak them in water overnight, then optionally rub off the skins. You blitz them in a blender, then cook the mixture on the stovetop, and strain it with a sieve. Fun fact: in Taiwan and many other Asian countries, they use Canadian soybeans specifically to make high-quality soy milk and tofu.
The liquid part is the soy milk, and the fiber part is called okara in Japanese. The problem is that making soy milk generates a lot of soybean byproduct, and you can only eat so much of it.
To add some complexity, certain cultures—like Korean-style soy milk—change the order: they blitz the soaked soybeans and water, strain it, then cook it. I find this style a little lighter than cooking the whole pulpy mass together.
Now with soy milk, you have several options. To make Japanese-style tofu, you heat the soy milk to 170 degrees and add nigari (magnesium chloride) in two stages. There are these strange instructions which tell you to “stir the coagulant in a figure 8, only 20 times” for the first run, and then in the second coagulation, “stir in the coagulant once in a figure 8”. One day I was curious and asked ChatGPT Deep Research to find some academic papers and it turns out there is actually science behind some of these traditions.
Once the soy milk starts coagulating, similar to ricotta cheese, you scoop out the curds and gently press them together in a tofu strainer. The firmness of the tofu—medium or firm—depends on how long it’s pressed.
For tofu pudding, you can use different coagulants: nigari (the same used for tofu), food-grade gypsum (calcium sulfate), or glucono delta-lactone (GDL). I’ve experimented with all of these, and nigari is pretty much my favorite of the batch.
Some of this begs the question: if tofu is just soy milk, is its nutritional composition the same as drinking the equivalent amount of soy milk? It’s kind of weird that tofu starts out as a liquid, but I suppose that’s no different from cheese—where large amounts of milk are used to make something like ricotta.
End to end, it takes about three hours to make tofu from scratch—and only about $3 to buy it from the store.
I go through these obsession phases in cooking where I do something over and over until I understand and get it right. I went through a French Macaron phase a while back (fun fact, I’ve made them so much I don’t enjoy them anymore), a ramen making phase, a corn tortilla making phase (still in progress).
My cooking style is totally impractical. During the week I find myself making the most complicated items and sometimes I’m just like, I should just stir-fry some chicken and get done with it. But no, instead it is buying a whole chicken, deboning it, making stock out of the bones, and then marinating the chicken, then cooking it.
I might have mentioned this before, but what has really helped my cooking, is keeping a journal. Since the pandemic, I have created a personal wiki where I have written down every recipe I have created, with photos, and a change log. I found that the act of writing, and seeing how things worked in the past has greatly helped move the discipline of cooking forward in my life.
Maybe I do this because it is my counter-balance to staring at a screen all day. Cooking isn’t coding though, and I would attest cooking is so much harder. You have variables which are constantly changing like the changing quality of the ingredients, your spices, and the weather. A dish you cook once, will slightly be different maybe because ingredients also fluctuate in quality and flavor. I think the only way to get better at cooking is simply just to practice, and maybe obsess about it a little.
Museum of Ancient Greek Technology by Kotsanas
Earlier this year, we went to Greece and visited the islands of Mykonos, Santorini, and Heraklion. Santorini was surprisingly quiet because many tourists had canceled their trips after a week-long series of small earthquakes in March. Locals said the media exaggerated the situation so much that it scared visitors away—tourism that summer was said to be worse than during the pandemic.
Our last island stop was Heraklion, where we randomly wandered into a small Museum of Ancient Greek Technology. I didn’t expect much, but it turned out to be fascinating—filled with working models of inventions from as early as the 5th century BC.
The one that completely amazed me was something called Philon’s Automatic Servant from the 3rd century BC. It was essentially the world’s first robot—a life-sized mechanical woman designed to serve drinks. When you placed a cup in her left hand, she would automatically pour wine from a jug in her right hand, then add water to mix it.
Inside, she had two sealed containers—one for wine and one for water—connected by clever tubes and air pipes. When a cup pressed down on her hand, it triggered air pressure that let the liquids flow in sequence: first wine, then water. Once the cup was full, the hand lifted slightly and the flow stopped. If you removed the cup midway, everything stopped immediately.
It was an ancient machine that used air pressure, balance, and gravity to act like a human servant—over 2,000 years before modern robotics even existed.
I wonder what our society would be like today if we weren’t driven by a capitalist system, and instead had all the time, like the Greeks did back then, to just focus on inventions and tinker. Can you imagine, that instead of worrying about money, there was no 9-5? Or maybe we didn’t have five-day work week? What would you do if you had all the time in the world to pursue any interest? Would you be motivated if you didn’t have to worry about money?
Sometimes we think that the systems we have in place are those which will stick around forever, but history tells us that probably capitalism will not last forever in its current from and something new will come in its place.
There has been much discussion about what happens if human level artificial general intelligence (AGI) permeates throughout society. Some define it when an AI system by itself can do a better job than a human.
Right now we specifically are using AI as a tool at work for engineering, but the concern is what would happen if AI began to do mass job displacements in society. Currently as mentioned, software engineers are first on the chopping block, then perhaps call centers in the future, and who knows what next.
At church, I was asked to give a short devotional (a short message) on something related to Fanny Crosby. She was a pretty famous hymn writer for her time period, and before writing the devotional, I decided to do some research.
I found that she wrote an autobiography at age 85 and decided to read it. I was expecting a pretty boring book — I did not expect what I read.
The story starts 200 years ago, when she was born in 1820. At six weeks old, she had swollen eyes, and the regular family physician couldn’t come. Another physician came and put some substance in her eyes, and she became blind.
At 85, she stated that through all those years, “she has never felt a spark of resentment against him, because I have always believed from my youth to this very moment that the good Lord, in His infinite mercy, by this means consecrated me to the work that I am still permitted to do.”
Reading about life in the 1800s is quite fascinating. She was amazed by trains and mentioned:
“In the present era, with its many modes of rapid transit, one is quite liable to forget that most of them have come into being within less than fifty years, and I am sometimes amazed at the thought that not until after I was born did the first locomotive turn a wheel on this Western continent. When I ride in the mighty express trains that fly across the country, how marvelous it seems!”
She was adamant about getting an education, so she left rural New York and attended the New York Institute of the Blind at 15. There, she learned a precursor to braille, using a system of embossed print letters.
You have to remember, in the 1820s and 30s there was no social media back then, so one of the main forms of entertainment was poetry.
Five years into her time at the New York Institute, she became good — like really good — to the point she could feel pride starting to get to her head. She was basically the Taylor Swift or Beyoncé of poets in her day.
There were even echoes of epidemics like ours, as she talked about her experience living through the spread of cholera in 1848:
“For many months, while the black cloud now seemed to be hanging over the defenseless towns of America, we hoped that we might be spared from its ravages, but I think the cholera reached New York in March or April of 1849. At first it was confined to the lower part of the city, where the authorities tried vigorously to stamp it out, meanwhile endeavoring to keep the matter as quiet as possible for fear of unduly alarming the people.”
It’s interesting that, despite being 200 years apart, history seems to repeat itself.
She ended up becoming very famous — she read her poetry in front of the U.S. Congress, met four U.S. presidents in her lifetime, and was friends with President Cleveland (#22).
In the 1800s, she lived to be 95, which was incredible — more than double the average lifespan of her time. Today, that would be like someone living to 150 years old.
She wrote around 8,000 hymns over her lifetime. As for her writing process, she said, “Most of my poems have been written during the long night watches, when the distractions of the day could not interfere with the rapid flow of thought.”
It’s interesting that her timeless advice about being productive centers on minimizing distractions, advice we could heed today. There is something about stillness, silence, and being by yourself to help process and think through thoughts.
My mom recently had a free consultation from her electric company to assess replacing her propane water heater with an electric water pump heater. She forwarded the assessment report to me, and I spent some time reviewing and researching the program.
Despite living quite far away, I have been surprised by how much remote help I am able to do. Since my dad’s passing, I sometimes play the role of executive assistant and researcher.
I think as our parents grow older, our relationship with them changes. When I was young, my parents were more of a guardian figure telling me what to do. But around my university years, things began to change where I wouldn’t call them a friend, but it wasn’t the same dynamic as an authority figure.
After using copious amounts of ChatGPT to research the program for pros and cons, I discovered my mom was eligible for an $8,000 credit through the High-Efficiency Electric Home Rebate Act (HEEHRA) program which was passed as part of the US Congress Inflation Reduction Act. It is a bit odd, as I don’t really see the correlation between inflation, but hey, free money.
The HEEHRA program would allow residents to replace their air conditioners and furnace with a heat pump. Last September, I just happened to visit my mom during a heat wave where it was a 104°F (40°C) during the day and temperatures only slightly dropping at night. I then learned my mom’s air conditioner was broken when we tried to turn it on.
With the heat wave, every HVAC technician was booked solid through the next week, so I decided to open the air conditioner.
Looking at this, I was like huh, maybe uhh, the brown rusted thing is broken. After doing many YouTube, Google, and AI searches, I determined this was a capacitor and it was probably broken. I fed AI the user’s manual as I needed to order the capacitor with the right ohms, as I know nothing about hardware at all. One day later, with an Amazon package delivery, and doing some prayers while replacing the capacitor, the replacement worked!
Given my previous experience with the program, I was pretty heavily pushing my mom to take advantage of the program, as I was afraid the air conditioner may fail for different reasons in the future.
I began engaging with talking with contractors local to my mom, and they asked “are the power lines to the house over ground or under ground?”. I said I had no idea, and that I could look at Google Maps Street View.
After pulling my mom’s address, I began looking around, and saw a shadow of someone with a dog, and decided to zoom in.
It was a perfect snapshot of my dad and old dog going for a walk. I even looked around the parking area and saw my car there so I must have been home at the time. I would estimate that this photo was taken at least 15 years ago which is quite surprising since the Google Street View car hasn’t come back to update the photo.
After much time, I have pretty much finished digitizing all of the old physical media he had. There was a litany of insane formats like VHS-C, Video8, and mini-dv players. On Facebook Marketplace, I was surprised how many people offered digitization services which was helpful in saving me hours of working through a manual process.
On the one-year anniversary, I stitched together a highlights video putting together another compendium of his life I wasn’t able to put together in time for the funeral. Going through the process triggered quite a few memories as I was watching things occurring way back from 35 years to the near present.
Going through the videos led to one piece of regret. Back then when people used to send voice mails, he sent me a couple on my phone and I just deleted them. I wished I had kept them, because that memory is one specifically from him to me. Often, he would remind me to call mom for her birthday, or ask what I was doing when I didn’t answer the phone.
When my mom was cleaning out some old bank documents, she discovered my dad’s old journal. A lot of the journal talked about the difficulties and challenges and finding purpose after he left Vietnam for America. Others were more succinct such as
4/29/1972
“Today is my 28th year old birthday. 21 years in school, 7 years in the service.”
I want to ask my mom more about it, but I choose not to for the time being, as I can tell talking about it brings back a lot of memories.
In a way, all these digital fragments—videos, journals, old photos, even Street View ghosts—feel like little time machines. Some are clear, others fuzzy. But all of them, no matter how serendipitously they appear, are treasured reminders of the past.
Digital Wisdom
Recently I took a trip to attend a technical business conference about Generative Artificial Intelligence (AI). The field of consulting has changed greatly since the pandemic. In a prior life, I would take a business trip to see customers maybe every 2-3 weeks to work in their office, but with online meetings now the norm, customers have a hard time justifying the expense.
Now we are about 2 years in from ChatGPT’s release, I have more concerns than before about Generative AI’s impact to the junior-level workforce, and eventually on broad swaths of the white-collar work population. The systems are getting better where they excel in deterministic based systems, meaning fields which are structured like coding. I advise my team that they need to work on their reading, writing, and speaking, because inevitably, AI will do some part of the engineering aspects of work in the future.
I randomly came across the book “More Than Words: How to Think About Writing in the Age of AI.” The author John Warner provides a slightly different stance of AI, as he approaches it from the perspective of an English teacher.
His core observation which struck me was the statement “ChatGPT cannot write. Generating syntax is not the same thing as writing. Writing is an embodied act of thinking and feeling. Writing is communication with intention.”
There are times at work I can tell somebody has sent me an e-mail written with AI. The writing comes out as flowery non-offensive, where there are snippets of an ask nestled in between. Sometimes I get lazy and use an AI to reply back with a message, which makes me wonder, are just two AI systems talking to each other with minimal humans in the loop? Why are we doing this? Should we just write more succinct e-mails without the formalities?
During one of the morning sessions, a presenter gave her own opinion on AI. It was all pretty standard fare stuff, but one slide caught my eye on her opinion of AI. It stated the progression of AI was
Data
Knowledge
Wisdom
Analysis
Synthesis
I sat there a little stunned and muttered to myself, “wisdom”? This bothered me a little bit, but I couldn’t articulate why exactly. After the session I spoke to the speaker outside about her slide deck and some of her management methodology as she brought up some interesting points in other parts of her presentation. During our conversation I was a little more confrontational than expected. The wisdom slide somehow set me on edge, and in retrospect what I should have done is asked her to explain what she meant by AI being wise and some examples.
Very often when we encounter people with a differing viewpoint, our typical tendencies are to stay in our box, and in our camps. But there is a benefit to having a cooler head, and being genuinely introspective in peeking into a viewpoint that is not ours.
What is wisdom? For me, growing up in the church, my definition is one that comes from God. With that context in mind, I think that’s where the whole AI and wisdom comment bothered me the most. Similar to Mr. Warner’s book, I believe AI will be disruptive and change the world in ways we don’t know, but for me, it is important not to anthropomorphize AI as having a soul and spirit.
Digital Tennis Matchmaking
With the summer in Vancouver I have picked up the frequency with which I played tennis. When I was living in Southern California where it was mostly sunny, I played tennis here and there (but did surf more). Vancouver is one of the most impractical places to play tennis as it rains a lot in the winter so you don’t get a lot of play outside.
A friend told me that there was this Vancouver Tennis group, where you can meet up with people and play pick up rallies or matches. How it works is you post
Your level, roughly based off the tennis rankings, I consider myself self-rating wise around a 4-0-4.5
The location you want to play
What time you want to play
Meeting up with strangers to tennis is a bit weird, as you have to negotiate expectations up front. The general rule of thumb is you want to play with someone about your same level or a bit better. You don’t want to play with someone worse than you as it eventually drags your game down, or you don’t want to play with someone so good, you can barely keep up or drag them down.
Just to keep track, I have a spreadsheet of who I played with, and what I think their level is as well as some notes.
The 3.5 Player
I played with a 3.5 player on an early Sunday morning and when you come to the court you always warm up mid baseline. At that time, you get a chance to talk to the new person, and ask things like how long they’ve played etc.
As I was playing with her, she was doing okay, but when I would push the ball to the corners she had a hard time keeping up. To make sure we both had a good time, I held back a little bit. She said she had a non-existent serve so asked if we could play a game where we would play up to 11 points. Somebody would start a rally, and would hit softly twice, then try to hit a winner on third shot.
It was kind of a weird game, but sure why not? After about an hour we wrapped up and walked out of the courts. She immediately went, “hey when are you free to play next?” I kind of hesitated and told her I would have to check my schedule, and she followed up with, “I prefer you to be transparent, if you don’t want to play with me let me know, and we can move on. Sometimes some people have said I’m not good enough, and they eventually don’t want to play with me.”
The moment was kind of intense, and it felt almost like a “tennis friend date”, where expectations were being sorted out. I guess sometimes it is natural, and sometimes there is an explicit conversation.
The 4.5 player
I posted on the chat one day that I was looking for someone to play in Granville Loop. These courts are quiet, but have very strange quirks. They are two freshly resurfaced courts, but one court has a huge crack on it. When the ball occasionally hits the crack, it is as if a Super Mario mushroom power-up gets activated because the ball would fly crazy and higher than usual.
The second court is slanted so depending on which side you play on, the court would play slower or faster.
In Vancouver, I would say the most popular courts are the Kitsilano Beach Tennis Courts. There are 8 courts, and is by the beach and it is super beautiful. Only problem is they haven’t resurfaced the courts in a while, but it is a very odd mix of players who are very good, and players who are complete beginners.
Since it is in a prime area, these courts are super crowded. There is always somebody waiting for a court, and lots of beginners don’t know the rules, so they might just randomly walk behind you if you are playing a match. Somebody also is always playing loud music which is distracting.
I met the 4.5 player at the court, and first thing I notice is this person is very good. He has a lot of topspin and hits everything at baseline. I can kinda keep up-ish, but he’s good where all his shots are hard to hit.
After chatting around a little bit, I learn that he formerly played for his university and is just trying to get back into it. He had a trip to Asia, so I was going to message him a bit later if he was interested.
There is this odd thing also like, after you play a tennis match, how long do you wait before you message each other? You don’t want to be overly aggressive, but on the other hand summer is short in Vancouver so you do want to get as much play as possible.
I did reach out recently, and saw on Facebook messenger the message was read. But to this day, no response. Did I just get ghosted?
The 4.0 Player
I met up with a 4.0 player at my favorite tennis court (I’m going to keep that one a bit of a secret here) a second time, and he was flexible because he was in transition looking for a new job. I try to play in the middle of the day during my lunch break, because courts get really crowded after work. At 11am, all 4 courts were full. I was kind of surprised because it was a random Tuesday in a neighborhood court. As we played a second time, we were at about the same level, where both of us were better in different aspects in the game, so it was quite fun playing with him.
After the match, we caught up a little bit, and I learned he was looking for a job in the project management of the construction industry. I referred him to a friend, and said if he wanted to learn more he can follow up if he liked.
In life, we tend to help out our communities. One prime example is your alma matter. Typically when people see someone from their alma matter in a resume or an event, people try to help them out more than the ordinary person. I think it is human nature when you have a commonality to help out that other person.
Back in 2003, when I graduated there was a mini recession, so none of my friends in our computer science cohort got jobs. But as a group, we looked out for each other, and when one person got a job we helped other people get jobs.
I went through a string of job interviews without any results and was a bit depressed. I ran into a friend in the Ring Road Park during my university senior year, and she told she didn’t pass a job interview, but recommended I talk to that recruiter anyway.
About two months later, I actually got the job. And it was only because I was connected through my school in my computer science group.
I struggle with this a little bit though. I understand the power of networking, but I think there is a danger of being insular to not allow others in our community when ideally we should be as open as possible.
Maybe we shouldn’t play?
I was browsing through the False Creek tennis meet up group, when I saw a post,
“Looking for a 3.5-4.0 player, False Creek, Sunday morning.”
What I usually do is just like to scan their Facebook profile briefly. It’s more so just to make sure they are legit, but I try not to spy too much into their lives. My goal isn’t really to talk politics, but to play tennis.
I looked at this one profile and was like, hm, the name seems familiar to me. Scrolling down, I was like, yea based out of Vancouver, they went to a Yuja Wang concert – oh wait, this is one of my partner’s doctors.
Immediately I was like uhh, yea I’m not moving forward with this. I can imagine in a weird hypothetical scenario we did meet up, and it might go something like this?
“Hi, my name is Dan. “ “Oh yea I know who you are, I see you sometimes at Jason’s appointments. How is it going?”
I imagine in this hypothetical scenario I would set ground rules like not talking to him about my partner’s medical history. And what would happen if I beat him or he beat me in tennis? Would this affect how he treats my partner?
In this imaginary world, I have the ability not to pursue this, but what would have happened if he messaged me to play, with me knowing who he was? Should I ignore him? Should I instead say who I know he is and decline to play? Or should I play with him knowing he reached out to me first? Maybe I’ll avoid the False Creek tennis meet-up group for a while.
Rules are rules?
After I played with a 4.0 match one day, we were wrapping up, and a family wanted to play in the court next to us. The problem is they brought a soccer ball.
There are rules posted on the court which state:
“Tennis courts are for tennis only”.
“No dogs on court”.
It was a young kid with his parents. A part of me says, to decline them and say, “hey rules are rules.” But this kid was so young. I could imagine myself saying, “sorry kid, go play in the park outside.” And I further imagine that he gets traumatized from this experience from being rejected and dislikes tennis people forever.
Fortunately for me, I had an out as I was leaving, and said, “I’m actually leaving” and didn’t answer the question. At Granville Loop, weird non tennis things are always happening. It is either a pickle ball player or dog walkers who want to use the second court.
The other thing is I worry if I also set bad precedent, now I invite this kid to come into the court anytime.
It oddly reminded of church where we sometimes talk about the law and love. The law consists of rules from God, meant to protect you, but people don’t get attracted to church because of the law, but instead of the love of people.
Fortunately in this case I didn’t have to answer that question today.