Day 1
I recently turned 27 and with this new chapter in my life I feel a sense of urgency to do things that will build a better future. Specifically, I've become more grateful of experiences with other friends and family and that I'm being more proactive with maintaining healthy relationships. It's not that I didn't enjoy my time with friends and family back when I was say 18 years old. It's more that I felt entitled to these relationships, but being away from home for so long I realize that is not ...
Read post
Enchiridion 20: It is not actions that hurt us, but our opinions of them
Remember that the person that gives abuse or attempts to harm you, isn't the one harming you. It is your views on their action that does you harm. Take a step back and regain yourself to help realize this in the heat of the moment. ...
Read post
Enchiridion 19: You never lose if you make the rules
The rules and things by which you find satisfaction should not include externals like wealth, status or fame. By focusing the things within your control: your judgement, actions, desires, aversions and rational thinking, you leave no room to compare yourselves to others. ...
Read post
Enchiridion 18: Take the advantage
It's up to you to see the positive from the negative. Let nothing negative go by without that search. ...
Read post
Enchiridion 17: Play the cards you're dealt
There is no alternative, accept your situation and make the best out of it. That's all you've got. Don't expect sympathy, but of course happily accept it if offered. ...
Read post
Enchiridion 16: Sympathize outwardly, not inwardly
Another person's loss is never truly bad. This is the view you should have if you are also hold this for yourself as well. If you can accept that the death of your loved is not truly bad, it should not be hard to see that another's loss is not truly bad. It is okay to sympathize with this person but be cautious that it doesn't change your view within. ...
Read post
Enchiridion 15: Be present, look at what is in front of you
Don't spend too much energy desiring a future or rummaging in the past. It is good to spend time in these moments but it is more important that those moments don't distract what is right in front of you. ...
Read post
Enchiridion 14: Stop wishing for foolish things
If you wish your loved ones live forever or that people would do you no harm, you are foolish. The lifespan of your loved ones is not in your control. And bad actors will continue to be as they are. If you wish to not be disappointed in your own actions, or tempted by your vices then that is appropriate as they are within your control. ...
Read post
Enchiridion 13: Time is limited
Learn to be okay with being seen as boring or uninterested in external things. Remember to distinguish between things that are in your control and things that are not in your control. Being absorbed with external things outside of your control, like the opinions of others, or the new fad will leave you neglecting the important things. ...
Read post
Enchiridion 12: The Price of Virtue
Does it matter if things don't go exactly how you wanted it to go? Wouldn't it be better if you felt good about whatever just happened? Well you can, if you think of it like so, imagine that the price paid to keep a level head was to have that negative outcome happen. Reverse the cause and effect. Doublethink it. Instead of seeing the spilled wine as causing the negative feelings. Think of how the spilled wine is the cost of having indifference and virtue. Is our peace of mind and tranquility ...
Read post
Enchiridion 11: Interbeing, Dependent Origination
It is the nature of things to come into existence and go back from where it came from. It is natural and not in your control, so you should practice indifference. If your spouse or child dies, you have not lost them, they have been returned to where they came from. ...
Read post
Enchiridion 10: Within ourselves
Within us is the capacity to resist hardship. If tempted by beauty, shift your gaze. If in pain, find fortitude. You are tempted to eat that pizza, but do you have to? No. Instead of following the whims of temptation, stop and have a conversation with yourself. Even that simple act we often forget. Believing in your own capacity will help you exist without overwhelm. ...
Read post
Enchiridion 9: Keep calm and carry on
Think of struggles as a way to practice virtue. Even on your worst days, treat others like it was your best day. Go about life as if you had a clear mind. ...
Read post
Enchiridion 8: No regrets, always grateful
Don't wish things could have been different because that is not in your control. Wish that the events turned out precisely as they did. Be grateful for the opportunity to practice virtue. ...
Read post
Enchiridion 7: Like is like a ship at sea
Just as when the sailor visits land, sees the sights, collects the shells and enjoys the resources of the island. When the captain calls, they must leave all that behind and make haste for the ship, unless they be deserted. So to in life we can enjoy all the wonderful magical things that it has to offer. We can make something or ourselves, have a spouse and kids. But if the time comes for them to go, realize it is the natural order of life and that you must let go what you once borrowed from a...
Read post
Enchiridion 6: What is truly yours?
Only take pride in things that are your own. Someone else's possession is not something to derive a sense of pride from. Neither is any material possession, even your money or clothes. The only thing that is truly yours is your mind and your actions. Take pride in your ability to practice virtue and use your body and mind to it's full potential as a rational, social being. On a daily basis remind yourself what is in your control and renounce all that is outside of our control. ...
Read post
Enchirdion 5: Nothing can harm you without your permission
Things do not hurt us, only our judgement of things can. Even death should not hurt us, as just as we were nothing before, so too shall we be nothing again. The time you had on Earth was wholly your own but it is nothing in the grand scheme of things. You are not so special. Like everyone, you will eventually die. If not today, then another day, but really, what is the difference? ...
Read post
Enchiridion 4: Whatever Happens, Just Let It Be
If you plan your day and something goes wrong. Someone shows up and interrupts you or an accident happens, use it as an opportunity to practice virtue. ...
Read post
Enchiridion 3: True Perception
See your favorite cup for what it is, a cup. If your cup breaks, no one will care. Why should you? It is only a cup. See your wife and kids for what they are, humans. If your wife and kids, are returned back to Earth, most people in the world would not care. Why should you? They are only human. ...
Read post
Enchiridion 2: Desire and Aversion
Remove the habit of wanting something that is not in your control. Desire things in your control. Virtue. Avoid things that are in your control. Passions. ...
Read post
Enchiridion 1: Two Things; Those in your control and those not in your control.
The things that are in your control are thoughts, perception, desire and aversion. The things that are not in your control are body, opinions of others, external things, death. Mind your own business, be able to say to things not in your control "You are by no means the real thing" ...
Read post
This Other Side of You
This other side of you is deceptive and gets what it wants. It silently takes control. It compels you, tempts you. But it is one of few things in life that is in your realm of control. You must attend to all things within your control and say to things outside your control "it is so." ...
Read post
Hot and cold states.
You 2.0: In the Heat of the Moment There have been a lot of studies that shows that we poorly predict how we'd respond when in a hot state. Women said they would confront sexist, inappropriate remarks but when put in that exact situation rarely did. Not only that, we also downplay past experiences in our head. For example, a man tried to put his hand in ice for 1 minute. After 20 seconds, he gave up. Not long after, he proclaimed that the next time he would be able to do it. He did not succeed...
Read post
Stoic Path: Psychological Immune System
You've probably already heard the phrase, "what doesn't kill you makes you stronger." It implies that stress and hardship paradoxically make you stronger (as long as you survive it). Stoics train for the ability to make calm, rational decisions at all times. To step back from the things that are forced upon you and view them without strong emotions requires emotional resilience. Just like your body's immune system, your emotional resiliency or psychological immune system only grows stronger wi...
Read post
Circe
This book is about the story of the Greek goddess Circe, daughter of Helios, the sun god. As a 'child' Circe was treated poorly by her siblings and her own parents. She was constantly an eyesore or the bud of the joke. She naturally finds her gifts in witchcraft not long before she is banished to island of Aeaea. There she lives by herself for centuries, carefully experimenting and improving in her craft. During this time you get a sense that shes finally able to blossom and discover herself. S...
Read post
Morning Routine
In today's world, we're constantly under siege by external stimuli and other people's opinions. The internet allows us to connect and communicate on a large scale but staying engaged 24/7 has repercussions. This worry is why many, including myself, have found that waking up early in the morning when there are no distractions has become vital for navigating modern life. I had a routine of meditating and stretching in the mornings and reading books or articles. However, I noticed that I would fe...
Read post
Journal
I looked at some of the old pictures from Vietnam 2012. I'm grateful for having the family in Vietnam welcome me with love and showing me around. It reminded me of a time when I showed more appreciation for the things around me. It's on me now to start reaching out and rebuilding that connection with them. From Xuyen I learned how family is important and that I should spend more time working on keeping it together. From Phuong I learned how important it is to come into life with a big attitud...
Read post
On Waking Up
When you wake up in the morning ask yourself, "was I born to be under the covers, hiding away from what is required of me?" The attitude you bring to your day sets out the tone of your morning which sets the tone of your afternoon and so on and so forth. Be aware of the attitude you have when you wake up. Contemplate the sage; what would the wise mentor or a future version of yourself say about how you're going about the morning? See every morning as a chance to live how you would ideally want...
Read post
Agency
It's important to live with a sense of purpose and direction. If none is there, ask yourself how much time do you spend thinking about what you want to do in life? How will you approach the next day? Initiating, executing and controlling your own actions in the world is the virtue of Agency. Building a sense of agency will ultimately lead to a fulfilling life. Making decisions might be hard, but never feeling like the captain of your own ship is harder. Indecisiveness is easy and safe but lik...
Read post
Perception, Action and Will
Perception Look at things in an objective manner; not deciding if it is right or wrong. Practice indifference for the things that deserve indifference. Keep a rational mind at all times. Action For the things within your control, act in a just manner. Act justly and respectfully to the people around you. Treat them how they deserve to be treated. Treat this person as they should be treated. Will For the things not within your control, realize that it can't hurt your inner character and ...
Read post
On Work
As a developer I'm very capable of focusing on the details, digging through code and debugging issues one step at a time. Each step is calculated from the previous, not too much foresight required. Having to context switch to the big picture can get overwhelming. Some of that is working on things that I'm not comfortable with. What did I do badly? Unable to control the feeling of overwhelm. What did I do well? Finished reading the book and took the extra step to write a piece on it. Connect...
Read post
Stoicism Is A Way of Life
Learning about Stoicism has helped me distinguish wisdom from intellect. Stoicism is not just an intellectual study for those interested in philosophy, it is a way of life that is to be practiced every day. It has given me a deep intrinsic desire to live virtuously and develop character. Underlying the philosophy is the belief that humans are rational, social beings. Although we have instinctual emotions and responses like animals, what makes us human is our ability to reason. By living in accor...
Read post
Step Back From Initial Reactions
Initial reactions come from deep within our subconscious mind. They are not in our direct control. The judgement and subsequent action are entirely in our control, however hard it may seem. Realize that these initial thoughts do not have to drive our actions. Acknowledge but distance them. When an angry thought comes in, see if you can stabilize the mind and act in accord to your values as if you were not clouded by emotion. Try a thought exercise and imagine what would happen if you acted out...
Read post
Memory
Forgetfulness. What did I do badly? Woke up feeling sluggish. Started the morning slow and without any sense of urgency. Did a little reading but after trying to recall, I don't think it stuck in my head. Indecisive communication with training partners and being in my head, not remember those around. Spent a bit of time watching videos and eating a bit more than planned. What did I do well? Stayed focus. Was able to upload images to signed url and get that to show content on the logo. Left o...
Read post
Pain
In mild pain towards the end of the day, perhaps after working out. I should just work out cardio more often instead of legs. I was able to work a little bit more on the project. Learnt a bit about signed urls and got a prototype working. In this regard I did well, prioritizing the project above other distractions. HTTLARE: Strategies for bearing pain and illness. I don't agree with at all. Most steps involve ignoring the pain and not doing anything about it. Instead of thinking of different w...
Read post
The Choice of Hercules
Lucius Verus and Commodos were not too far from the average person. They were Roman emperors that were quite unremarkable. Both lived a life of shallow unsatisfying pleasures. Lucius was believed to have suffered from alcoholism, anxiety and depression. In contrast, it would have taken Marcus Aurelius a Herculean effort to live according to his values. He sought wisdom and virtue over joy and pleasure. He practiced moderation and kept his vices in check. To live like this for a lifetime can seem...
Read post
Contemplating The Sage
Model actions and virtues after your role models and mentors. Act as though they were watching, criticizing as to hold yourself to a higher standard. Become aware of your own thoughts and actions, self-assess and work on your character flaws. Do this every day and you will live a virtuous life. Do this every day and you will be joyous. "The unexamined life is not worth living" What did you do badly? I consumed in excess last night and did not get enough sleep. I need to practice moderation wi...
Read post
Random Quote
There is no evading the reputation you have with yourself, you’ll always know. Be honest with your actions and you will live a good life. Find your nature and do it good. ...
Read post
10 Minute Timer
Tonight I'm trying to get into the habit of writing again by putting on a 10 minute timer and trying to let my thoughts flow into my writing. The easiest topics to write about are opinion pieces and journals. It might not seem like an interesting thing to write about but the act of writing helps solidify memories and gives you the opportunity to extract more insights from past experiences. Lately I've been learning about Stoicism. My perception of stoic was initially of someone that didn't sh...
Read post
What Would You Have Done In This Situation?
For context, I live in Seattle, where homelessness has been on the rise. On our walk through the city the other day, my partner and I happened to cross paths with a man I can only assume was homeless. If I could smell him, it would be of urine. He walked with his neck forward and back hunched, carrying a large ragged bag. As he walks by, I hear a loud hock and the sound of spit landing near us. My partner was in my line of sight, so I couldn't see it go down. But there was no mistake; the man ...
Read post
The Four Laws of Behavior Change
The Four Laws of Behavior Change are from the famous book Atomic Habits by James Clear. It builds upon elements of the Power of Habits' Cue Routine Reward. These laws help you have more control over your habits. Make it obvious Surround yourself with cues for your desired action. If you want to read more, leave the book on your desk or set the alarm every day as a reminder. This simple step brings to your attention what needs to be done. Conversely, if you want to avoid a specific behavior, re...
Read post
Why I Like Formik
If you've ever tried building a form yourself, you'll know that after adding a few fields, some validation, error messages, and triggering things onBblur and onHover you'll know how messy the code can get. A lot of the issues come down to boilerplate code. Code that isn't necessarily complex but will inevitably contribute to cognitive load. Intuitive Using Formik feels like using basic React, if you wanted to you could use the handleChange, handleBlur, and handleSubmit event handlers that Form...
Read post
Song of Achilles
Song of Achilles is a book of the legendary Greek hero Achilles through the eyes of his childhood friend and companion Patroclus. My favorite character would be Achilles; strong-willed and playfully cocky. He was born from the Goddess Thetis and King Peleus of Phthia. Ever since he was a child, he was told by his mother that he'd be destined for greatness and that people would remember his name like they do Heracles and Perseus. The story picks up towards the second half of the book when Achi...
Read post
Intermittent Fasting
George St-Pierre, retired UFC world champion, talked about his experience with intermittent fasting (16:8). Being a world class athlete, George has access to high quality body scans and nutrition facilities. After five months, the scans showed that although his weight was the same, his body had decreased body fat, increased muscle mass and increased bone density. During this period he maintained the same strict training schedule. George's only regret was that he had not started this during his a...
Read post
Anything Worthwhile Takes Effort Day In Day Out
Tackling big projects or trying to make meaningful changes in your life can seem overwhelming. The more time you spend on it, the more you realize how much to do or learn. To persevere and succeed, you need to manage your mood and motivation effectively. Learn to Enjoy the Process Don't focus on the end goal; learn to love the process. For example, when starting a martial art, just thinking about the black belt you'll receive in 10 years is not good enough to keep you motivated and progressing...
Read post
5 Great Decisions of My Life
Do you ever think back to some benign decision and think, wow, that was a great decision. 1. Getting a good mattress When I first moved out, I bought an IKEA mattress. I was still in the mindset of saving money at all costs. I wasn't aware early on, but I would attribute a lot of back and neck issues to the terrible support from the bed. After getting my annual bonus, I spent the money on a $1400 mattress and threw out the old $200 one. Never looked back. 2. Getting back into reading I had ...
Read post
The Importance of Reducing Content Consumption
Lately I've been thinking about the balance of consuming vs producing that will work for me. It's so easy for me to mindlessly watch YouTube videos, TV shows or scroll social media and feel stimulated. Don't get me wrong, I still find value in consuming but there seems to be a special category of videos that really provides no long term value and is really there just to kill time. That dopamine rush lifestyle used to be my life. I played a lot of games and watched a lot of shows. Whenever I wa...
Read post
Tips for Building Modern Responsive Websites
I've recently been working on a front-end project, and here's what I have learned so far. Create sections Create logical sections with the section element. This way, you can collapse and expand as needed when working in VSCode. When working with containers, put containers inside the sections, not the other way around. Containers usually center content and apply a margin on the sides. But sometimes, you need a full-width background image with elements contained in the center. For that, you woul...
Read post
I Uninstalled Instagram and This Is What Happened...
During a moment of boredom, I take out my phone. "Can't hurt to keep up to date" I think to myself. I love the occasional memes and inspirational posts. Something funny or really wholesome. But I eventually I get to posts that just puts me in a weird mood. Especially during the pandemic when it's hard to do anything, seeing posts of friends having fun living their best lives is just depressing! So like Tim Ferris I started an experiment. How would my life changed if I just tried uninstalling In...
Read post
The Results Are In...
An hour before I expected a call, my phone rang. I felt my heart racing and thumping through my chest. For the past four months, I have been spending all my nights practicing for interviews and applying for jobs everywhere I could, and this phone call would tell me whether or not I had passed the Google hiring committee. When I began my job hunting journey, I was optimistic. I went through a couple of on-sites, and I thought I did well in them, only to be rejected again and again. "Hi, Andrew.....
Read post
Thoughts on Medium
When I heard about Medium and the fact that I had to pay to read the articles, I never thought I'd subscribe one day. Every month a proportion of my subscription payment goes out to the articles and comments I've replied to or read. The business model incentivizes quality articles, and the website has a considerably low amount of clickbait. From my experience with writers on Medium, the level of engagement and back and forth is high. There's also a positive sense of community that allows peop...
Read post
Accidental Code Reuse
Keep it simple stupid! Redundant, duplicate. As software engineers, we're often told that we should reuse what is already available and cut down on the duplicate code we have to write. This is harder to follow in practice than it sounds. Imagine a scenario where you encounter a piece of code that could be reused to do what you need it to do with a bit of customization. On the surface, this sounds like a good thing. I have worked on several projects in the past where code reuse like this starts ...
Read post
Should We All Have To Hunt Our Food?
One Sunday afternoon when I was a kid, my parents brought me to the local Buddhist temple. At the temple, the youth group got together and practiced the teachings of the Buddha. One of the first things my teacher taught me was that all life was precious, animals, insects, even trees. In our infinite cycle of rebirth, we may one day reincarnate into one of these beings. So what are the factors that determine the fortune of our reincarnation? It's a simple system, really, one that many other rel...
Read post
The Ol' I Need to Get to Bed but Have to Write a Post Post
Have you tried the 100 Day Writing Challenge? Do you set aside a certain amount of time of the day every day to write? Or do you prefer to write whenever it's convenient? After some trial and error, you may begin to notice that writing at certain times of the day can drastically change your ability to write something with a sense of flow. I have my best ideas in the morning. It's also when there are no distractions. These are most likely related. Unfortunately, I've found that although my mor...
Read post
Redux Fundamentals
When I first started using React, I thought it was great how separation of components was by design. Unfortunately, this also meant that sharing state is a huge pain in the butt. Fortunately, the good people at Facebook created a design pattern called Flux that is the functional programming equivalent of having a global store. Redux takes Flux to another level. Instead of having multiple stores, applications using Redux are limited to just one. The Redux store has three main properties. State ...
Read post
The One Thing You Should Have Setup in Your JavaScript Project
Discipline equals freedom - Jock Willink When working on any project, it's essential to streamline the process. You should not be spending even a single ounce of your brainpower on formatting. Formatting should be standardized and automatically enforced and applied. That's where Prettier comes in. What is Prettier? Prettier is a popular opinionated code formatter that has minimal customization. When you embrace the style that Prettier gives you, you're able to free your mind from reading ba...
Read post
100 Day Writing Challenge
I started my journey on Listed.to doing the #100DayWritingChallenge. Although that did not pan out the way I had hoped, I've learned a lot about writing and myself during the process. What I learned The actual practice of writing was just as challenging as figuring out what to write about. I was so out of practice that even when writing about simple things, it would be difficult to string together ideas and sentences. To help with basic editing and grammar, I learned about Grammarly. Now, I ...
Read post
Physical Meditation
When I wake up, my body feels stiff. What I've recently enjoyed doing in the mornings is spending 20 minutes stretching out my body. It's a simple habit that allows me to identify and ease tension from my body before my day begins. The morning ritual starts with cat curls, where I start working on my upper back and neck, which are almost always tight after waking up. I will then spend time in the downward dog pose to begin mobilizing the ankle and hamstrings. These two movements are general eno...
Read post
Difficult Conversations
I've never really been into reality TV, but lately, I've surprised myself. One thing that fascinates me with shows like the Bachelor is that the contestants can finesse their way through difficult conversations that I would otherwise bomb or never realize needed to be brought up. Doing so requires a lot of self-awareness of yourself and curiosity for the other person. Being self-aware allows you to identify what's causing you to feel the tension and why it may be important for you to bring it ...
Read post
My Fitness, Pal
When I began my fitness journey, it was all amount the numbers. How many push-ups can I do? How much weight can I push? How big can I get? I thought more was better. My workouts at the gym were mainly isolated movements that targeted individual muscle groups. Strength Training At the end of high school, I started hearing about StrongLifts 5x5. The boys that were doing this routine were getting much stronger than me and I first realized that size does not necessarily mean power. Power is the e...
Read post
Failure Isn't Bad; It's a Lifestyle
Failure is a gift in disguise. If you never fail, you're only trying things that are too easy and playing far below your level. When you fail at something you care about, you can't help but feel intense negative feelings. This natural response is your greatest weapon. Memories are attached to strong emotions, so you have the opportunity to mould the failure into a motivating learning experience. Be thankful that without much effort, this lesson will stay with you. Unlike going over a book rep...
Read post
Random Thought
Life drags without purpose or control but goes by quickly when distracted. ...
Read post
Flow
Getting into the flow state is one of the most satisfying and productive moments of work. The laser focus and ability to navigate distractions like second nature can feel like operating at 100% efficiency vs 30% efficiency. When I first heard people's experience of Flow state, I didn't think much of it. Sure it sounded good, but why do I need to practice getting into it? It is a skill that we can hone? After reflecting on the times I entered Flow state, I observed common patterns that led up t...
Read post
Asian Hate Crimes
Hearing about the increased hate crimes against my Asian brothers and sisters really upsets me. Being of Vietnamese/Chinese descent I feel a need to participate in whatever way I can. In one video I watched, an Asian man was attacked on an N.Y.C subway and eventually choked out. No one tried to stop it. The victim didn't even file a police report. The police only found out about it from a viral TikTok video. If you haven't given it much thought, it can be hard to know what you would do as a by...
Read post
Sigh
I strained my neck yesterday, and it's the second time it has happened in the past two weeks. No doubt my poor posture is to blame, but I've noticed I'm much more susceptible to injuries on days when I'm tense and forget to take breaks. The tension in my body builds and eventually manifests as an accidental injury. This injury is a good reminder that physical and mental stress is something that we need to deal with daily or risk getting injured or demotivated. ...
Read post
Mistakes
"Some mistakes will be made along the way. That’s good because at least some decisions are being made along the way." - Steve Jobs In business and life, iterating through revisions and trial and error is essential for sustainable long-term growth. Requirements change, and failure is inevitable. Instead of having a goal, we should strive to have a process that's unwavering in the face of failure. ...
Read post
Why I Like Grokking the Coding Interview
I recently tried Educative's Grokking the Coding Interview course in preparation for my upcoming interviews. Unlike LeetCode or Cracking the Coding Interview, it wasn't free. Old me would have had a hard time swallowing the $179 fee. He probably would have thought, why spend money on something you can get online for free? Working through topics, not problems Educative groups problems into sections like Sliding Window, Two Pointers, Two Heaps, Top 'K' Elements and provides 5-8 questions with e...
Read post
Amazon Leadership Principles
There are 14 leadership principles that Jeff Bezos himself wrote for Amazon. Some of them seem to overlap, and some of them don't even seem like principles. I'm looking at you 'Invent and Simplify'. The principles that resonate with me are: Customer obsession Ownership Bias for Action Have Backbone; Disagree and Commit Dive Deep Customer obsession It's too easy to be doing something just for the sake of doing it. But with every task or feature that we work on, we have an obligation to ask o...
Read post
Waking Up Early
It's been about a month since I started using my new Apple Watch as an alarm. And one of the surprising things I found was that it's much easier keeping the habit of waking up early. I've been waking up at 6:30 AM on weekdays and 8 AM on weekends. My mornings are now a sacred time when I can work on things that are important to me. That usually means doing some light stretching, reading a book or following up on life tasks. It helps me maintain a sense of balance during busy weeks. The idea of ...
Read post
Being an Expat
Nearly five years ago, I decided to leave my home country to start a new life in the states. I decided based on career prospects and didn't consider how it would affect my relationships back home. In my mind, I was only going to live abroad for a few years and that I could somehow manage the distance for a bit. Unfortunately, the excitement of living in a new place and experiencing new things meant my relationships back home were at times left neglected. I wanted it all but never really took th...
Read post
Just Show Up
Just showing up is a habit that anyone can do but few people can do it consistently. It means being present for something or someone, day in day out. During my teens, I was part of a Buddhist youth group that met every Sunday 11AM - 3PM. We (the teenage boys my age) were lead by a couple of older guys who really went out of their way to treat us like younger brothers. The older guys loved sports and set up a time before the youth group started where we would get together and play some sports (...
Read post
My Flow State
It's hard to get into the flow state. The state where my focus is on the single task at hand and everything else seems to wash away in the background. What I've noticed is that it's much easier to get into when I'm not thinking about other things (duh). That seems to happen on two very different occasions. When I'm doing an intense workout and when I wake up early in the morning and carve time for myself. Being able to tap into the flow state is extremely satisfying and important to me. Not onl...
Read post
CARL > STAR
Most people have heard of the STAR method of answering behavioral interview questions. This easy to remember acronym stands for Situation, Task, Action and Result. It helps to keep an otherwise unstructured answer from getting side tracked with irrelevant details and emphasizes the impact of the actual task that you did. However I recently came across the CARL method from watching Jeff Su on YouTube and think that it may be even better. CARL stands for Context, Action, Result and Learnings. CAR...
Read post
Python
I started playing around with Python a few weeks ago and to my own surprise I've been really digging it. I think Python does an amazing job at reducing the friction in getting ideas into code. Little things like being able to print an array with the in-built print function and being able to execute the script without compilation has reduced friction in places I never thought would matter. It's also very refreshing to not have to type curly braces in my code which noticeably increases my coding...
Read post
Minimum Window Sort
Given an array, find the length of the smallest subarray which when sorted will sort the whole array. Example 1 Input: [1, 5, 4, 3, 10] Output: 3 Explanation: We need to sort only the subarray [5, 4, 3] to make the whole array sorted Example 2 Input: [1, 11, 5, -1, 10] Output: 5 Explanation: We need to sort the whole array. We can think of this as two related problems How do we find the start of the smallest unsorted subarray? How do we find the end of the smallest unsorted subarray? Ho...
Read post
Leaving Part I
I'm having a hard time deciding what my next career move will be. I can't help but shake this feeling that moving from my current employer will be a mistake. The compensation is good, the team is nice, the work life balance is great and there are opportunities to grow in different areas. But staying in my current team is a hard pass. Although they're a great bunch of people, there's some huge issues with the way the team has been managed over the past few years. The team started out as just a ...
Read post
Humans Are Resilient
I feel very privileged to hold this opinion but I firmly believe humans are more resilient than many of us care to think. That no matter how bad things get, there is always a path forward. All the setbacks, failures and difficult conversations that shatter our identity are some of the best opportunities for us to reflect and grow. This can seem like an overly optimistic view on life but I feel like there's no room to think otherwise. To think otherwise is to believe there is no point going on a...
Read post
Thinking About Your Exit Strategy
When should you start thinking about an exit strategy for your business or job? I have to admit I've never really given this question much thought. It feels wrong, a betrayal to my colleagues, to be thinking about leaving when I could be focusing on building on what I already have. Plus, I've been too caught up in the day to day and kinda assumed it would be whenever I felt like leaving. But after years of increasing feelings of "I want to leave" and not feeling like I was ready / able to, I c...
Read post
Sliding Window Technique
I've recently figured out a basic template on how to solve these types of problems: Create a 'window' that will store the information of things from index 'start' to index 'end' Let 'end' be the iterator that loops through the entire array For each iteration add the element at 'end' to 'window' While the question's condition is not met, reduce the size of 'window' by removing the element at 'start' After the while, the condition is met so update the result as necessary. You can identify slid...
Read post
Communicate Briefly, Create Curiosity
I love working from home. 😍 I have no idea how I managed to sit through these mind-numbing meetings at the office. At least at home I can intentionally zone out. In the office, I'd have to put on a show. Actually, maybe I didn't, because now I distinctly remember an instance my colleague fell asleep in one of these meetings. 😂 I feel like one of the issues with these presentations is that they tend to have too many details. It's not that these details aren't important. It's just that presentin...
Read post
The Software Design Interview
Just like the Coding Interview, there is a systematic way to approach these software engineering interview questions. Gather Requirements Back-of-the-envelope Estimates Interface Design Domain Modeling High-level Design Detailed Design Identify and Resolve Bottlenecks Gather Requirements System requirements are always going to be different so it's important to discover requirements before even discussing potential solutions. Even with the same set of requirements there is always more than o...
Read post
Why is Kafka so popular?
Kafka is popular for three main reasons: It adds an abstraction layer between producers and consumers of data streams. It is highly performant and allows real time data processing. It scales infinitely by adding more machines to the cluster. Abstraction layer between producers and consumers Without an abstraction layer, producers would need to know where and how to send data to consumers or consumers would need to constantly poll producers for new data. With so many different types of use c...
Read post
Fortune Favours The Bold
This proverb never really meant anything to me until just a few years ago. Before then, it just sounded like a cop out and a way to avoid having to think about what it really takes to make it. Now it's something I often think repeat in my head when new opportunities appear. It's also the main takeaway from Yes Man with Jim Carrey, where he goes from saying no to everything to saying yes. Looking back at some of the recent things I've done thanks to this mindset, I have gained a bunch of experie...
Read post
Chat Scale
Let's say you were building a chat app like Teams. What would the architecture initially look like? First Iteration / MVP Most likely, your architecture will have a client talking to a middle-tier API with a backing database. Given the nature of chat data, it would be reasonable to go for a NoSQL database. Unlike SQL, NoSQL lends itself to being easier to horizontally scale which will come in handy later. The client will need some sort of 2 way channel with the server in order to send and re...
Read post
Everyday
I somehow manage to forget how much willpower it can take to stay consistent with things. It's easy to be consistent with something and build an internal identity around it. You can use this identity to your advantage or you become arrogant and over time put less and less effort into it, until one day you find yourself back on square one. This is a reminder that we are not the things we have done, but rather we are the things we continue to do. Stay strong on your path and cast a vote for the t...
Read post
On Writing
I have recently been introduced to the idea that writing is a form of thinking. That the physical act is not only a good way to write down thoughts but is a also the manifestation of thoughts themselves. From my experience, the things I write down tend to last longer in my head. When I read books, I will sometimes write handwritten notes on the iPad and sketch diagrams. When I try to recall things I've read a week ago, that I didn't write notes for, there is almost a zero percent chance the ...
Read post
T-Ownership / Weak Ownership
What kind of ownership mode does your software team use? Strong ownership This is the mode where all changes to an area of code go through the owner. This mode probably benefits the individual the most as they have total control over their domain. I'm not a fan of this simply because there's no redundancy in place if the owner goes on vacation or leaves the team. It can also mean owners are less inclined to keep their code well documented and easy for others to understand. Collective ownersh...
Read post
Invest More Time in Others
What is a good day to you? I used to think it was largely based on how productive I was. Did I hit the gym or workout like I planned? Did I do extra coding outside of work? Did I read a book or learn something new today? To some extent I still believe these activities contribute a lot to my good day. But on my quest for a good day I've noticed that it's easy to get tunnel vision and forget the people around me. When I stop to think about it, it's the people and relationships in my life that g...
Read post
Clean Architecture Series: Chapter 19 & 20
Quick summary / thoughts as part of the Catalyst Book Club meeting. Chapter 19: Policy and Level Things that change together are on the same level. Good architecture identifies levels and keeps them clearly defined/separated. The further away from I/O the higher the level. The closer to I/O the lower the level. Chapter 20: Business Rules Entities are logical groups of critical business data and operations. These entities transcend the software system and apply outside the system. Use case...
Read post
Why I Like Listed and Standard Notes
On deciding which platform to start blogging on these were my three main considerations: Easy to use ✔ Open source ✔ Free ✔ Easy to use I know myself enough to realize that the motivation that I feel today will not be consistent. Some days I will not feel like doing it. Instead of hoping that that day never comes, I'd much rather have a plan to deal with it. Having a friction-less writing experience will give me less excuses not to write. Open source Technologies come and go so it's prett...
Read post