Forest for the trees

“… but it’s MY life,” – stray fragments of self-absorbed reflection continued to rush through my mind, as dire struggles with my basic interview question inevitably closed the door towards the aspirations of a young immigrant graduate Chinese girl sitting in front of me. She just wasn’t very good.

In the same folder where she kept the code for my interview question, I saw interview files for Google, Apple, Amazon, Uber, Twitter. From the way she was thinking about the simple problem I presented, I knew she couldn’t have passed those interviews. I was playing a part in crushing her dreams; maybe she wouldn’t even get to stay in the US.

Perhaps this was a perfect metaphor for me. I felt like my life was falling apart too, as those with the power over my future, nonchalant and carefree, proceeded to make decisions that would devastate my inner world, my own hopes and dreams, and my ambitions.

She was writing out code in silence, slowly. I tried to help, but she asked if she could have a minute, and I didn’t want to make things worse by making her nervous, or disrupting her flow. She was very introverted, lost in her own thoughts, and I’d need to see her thought process to really help her succeed at the interview. At a certain point it’s out of my hands – I have to make an objective evaluation, and there was very little chance she’d make the cut. Clear communication is itself an important skill to get hired as a software engineer.

So I patiently waited for her, as my mind drifted to the struggles that I had been facing. “This sort of thing can happen to anyone. And ultimately, we exist to serve; living is about virtue, purpose – happiness isn’t owed to us, it shines through the routine, between the lines. I should give, and not lament what I no longer have. Wasted time – is just a part of life. But this is MY life. These hours are all I’ll ever get. How could I allow this to happen!? How could things get so out of hand, a schism among like-minded, warm-hearted people, friends?”

My stomache hurt. I don’t know what I ate, but it’s been haunting me for days; every part of me was aching and broken, and I was doing my best to hide it from her, but she was too lost in the narrowness of her focus to care. I was safe.

It was sad. We could never hire someone who pays so little attention to the world around them, and just sees a task with no understanding for why they’re doing it, what place it has in their life. Just convert specification to code, and shelter away from reality in the obscurity of algorithms and calculation. She was not understanding that the interview evaluates more than just a completed assignment handed over through a barrier of anonymity. The way she connects with co-workers is just as important, we should work together to resolve her issues solving the problem.

I’ve made similar mistakes in my career, and in my personal life; in evaluating my priorities. It’s easier to be narrow – it’s almost a form of escapism, just focusing on the things you can do, and ignoring the larger context that your problems exist in. My boss tells me it’s my direct responsibility to know why – as far as the company’s goals go – I’m working on what I am working on; to question it, and course-correct if the “what” doesn’t align with the “why”.

I wish I understood these matters better in my failed relationships.

“What do I do now? I’ve resolved to leave the past behind, and conquer the world – to do my best, to contribute as much as I can, serve the people I love. Do I leave this country, go build a cryptocurrency business? The opportunity is now; and that is the opportunity in the world of software right now. There is nothing holding me behind. My immigration status in this country is coming to an end; my future is wrought with uncertainty. I can find funding, and go do a business – like I always wanted. There is nothing holding me back but fear, uncertainty, a need for continuity.”

These thoughts creep up on me. I’ve been thinking about the next steps for my life for months now; these huge decisions lay a heavy burden on my shoulders, and I never know how to approach them; they mix and shuffle with scattered feelings, a longing for comfort and authority, someone I can rely on. As I watch my interview candidate struggle to understand the structure of a simple algorithm question, I wonder if we’re both stumbling in the darkness – if only I stood from a higher pedestal of mental clarity and sharpness, the answers would be apparent to me.

I have a new relationship now… She supports me greatly, and I love her. She’s prepared to move all the way across the country to be with me – from DC to San Francisco. She tells me she’s never met a man like me. I tell her that no one has shown me so much care and love as she has, throwing her whole being, all her energy to try to make me happy.

And I have a friend who tells me of the opportunities for cryptocurrency in the Philippines. He tells me we should start a company together, and I should lead the technical team, be the CTO. It’s what I’ve been working towards for years; it’s what I want to do. It’s risky: I’d lose my ability to go back to the US, since I’m here on a work visa. I’d have to leave my girlfriend behind, and all the friendships I’ve built over the years living here. And all the painful memories I’ve worked so hard to leave behind.

It’s my destiny. It’s my life. What is the right path forward?

Here I am, thinking of the timescale and path of leaving my company, potentially breaking ties with everything I’ve worked to build over the last 5 years, while trying to help a girl pass her interview, and talking about how our company is the best to work for at a career fair. I realize every person has these neverending personal life struggles, and we make it work with the work we do. In a way I felt happy that the girl allowed my mind to drift into its own private oblivion. But on the other hand, I’d be happier to engage my candidate; I would never allow myself to not be fully present with a person who is reaching out, and trying to connect.

We’re running out of time; she doesn’t even know that what she’s focusing on is a tiny part of the problem I want to present. I start giving her hint after hint, and eventually, she arrives at an answer, though just for the little chunk she was stuck on. I arrive at no conclusion for myself about my life. I’m lost in an endless soup of decisions and emotions, both tempted to take bold steps, and afraid to lose what I have in making them. Perhaps like her, I’m failing to recognize the broader context of my decisions, and my focus is too narrow. Perhaps I need to take a step back, and see the forest for the trees.


There is no point wanting what you can’t have.

I want to live in a quiet area with the person I love, in a humble house, play guitar, make video games, work on my singing, dance tango, learn to do handstands, every sort of art, think about the world, read books on mathematics and physics, solve puzzles, problems…

That’s expensive.

If I live my whole life chasing that dream, I’m not living my life.

So I think the right attitude is to want the opportunity in front of you. Maybe I’d be better of doing machine learning, and an opportunity to do block chain is in front of me. Maybe I’d be better off living on a farm and studying art, but I’m here in the US, on a work visa that allows and forces me to work in software, and that’s the opportunity I have.

There is something to love about seeing the problem, or challenge – opportunity – in front of you and attacking it. Instead of thinking there is a different challenge better suited for you.

I respect humility, and I respect peace; a life of meditation, humble growth, service, and love.

But that’s not what it takes to attack the problem that’s in front of me. It takes a different character, and that is what can rise to the opportunity that I do have, rather than what I wish I had. So as I adapt, instead of cultivating the peace of mind I looked to cultivate doing art, I study a different part of my mind, one less peaceful and more ambitious – impatient, incessant, daring, passionate, fearless.

Though deep inside, dormant, at times forgotten, has to rest a truer form; one searching peace and simplicity.


Saturation 2

I want to lead a daring, colorful life.

Achievement, experiment, excitement, major milestone, major milestone, life changing revelation, epic place of dreams I’ve never been to, invention, overcoming challenge. You scroll through my facebook feed and it’s just like holy fuck how does anyone live like this.

But every day can’t be achievement, or life changing revelation.

There is a pace to the exceptional, and if it happens daily, it’s not exceptional. If I go to the Philippines once it’s exciting, what a man of mystery. But if I’m just living there it’s same old, might as well be gray and not extravagant sunset orange skies, milky white sand dunes, and emerald green crystal ocean.

To me, the every day would be great. But for someone who found out I live in the Philippines ones, seeing great weather day picture #247 is the same as just seeing the first few.

Having every day be filled with excitement and reaching milestones is not a real thing to want. It’s just impatience, and insatiable hunger that leads nowhere. It’s a distraction from the flow of excellence, of striving to learn, and do your best. It’s a goal, not a way of life, an addiction, not a path.

However, there has to be a way to organize life such that it is filled with novelty and overcoming great challenges. Finding new kinds of challenges, learning every day, planting new seeds that take years to grow. And eventually it will come time to reap them all; and maybe life then can be like holy fuck how does anyone live like this.


I often improvise on piano, and I sometimes find some really cool stuff to play, and enjoy myself greatly. But I never memorize any of what happens, I don’t write it down, and I’m not sure how to get there again.

Most of the time I play, though, I do get to an interesting place – so I’m reasonably certain that if I start, I can find something. And often, I don’t know how to start.

So I thought – I need a standard way to start. And I thought that this would be useful not just for piano, but for everything I do – a standard way to get into it, that is nothing like the thing itself, but that always leads to the target thing flowing well.

For piano, it had to be something very simple, that I know how to transform into everything else I’d play. And so that’s what I worked out – a basic flow, that necessarily forces me to go outside of it, that is not stable for me to get comfortable in and forget myself; a flow with an open question, something unresolved.

I don’t want to limit myself by the way I start. I’d love to work out many different ways to start, and keep working out new ones. But I think someone who truly knows their craft always knows some standard openings. A chess maestro has them memorized.

For software, I feel like I should never be at a loss of ideas for the next most important thing to change in the world that contributes to my goals the most. My standard way of getting into the years-long flow is notes. And they have to work on every scale of time – from my day to day, to the intermediate milestone, to the grand vision. And opening to think about every scale of the problem.




A friend of mine told me that discipline is skill – that getting up early at the same time, and going to bed at the same time – is not a choice, but a skill.

I asked him why – I’ve been trying to stick to that sort of schedule, and I’ve been very consistent over the course of a few weeks. In my understanding, a skill is something that takes years to develop, and you can’t have if you one day wake up and decide you want to have it. I asked – what is the trainable aspect of getting up early?

He answered.

The skill isn’t getting up early once, it’s having a low error rate – what percentage of days in a year do you fail to stick to your daily commitment? More importantly – why?

Understanding why it happens each time, and committing to routines that prevent those situations in the future – is the skill. And it takes years, because only in trying to implement your routine will you find your natural habits that break that routine. And only in knowing them, and deliberately avoiding them – having tools, tricks, hacks to avoid them – can you improve the rate at which you respect your commitment.

And that is the skill of discipline: knowing yourself.


I quite enjoy talking with my mentor – I learn a lot, or at least I get food for thought. He’s a busy man, though, so we can’t talk every day.

But if we could, we’d have nothing to talk about. Part of how the conversation starts is reflecting on progress. With no progress, there’s nothing to reflect on. A thoughtful conversation with someone more experienced is bound by saturation, as is all growth.

Every day we wake up, we have a finite amount of energy, and we can choose what to do with that energy. But only a certain amount of it can be allocated to each type of growth until the saturation point is reached, and you will grow no further by investing more of your energy into the problem.

Most complex skills are subject to this, and optimal practice is informed by the limitation. Practicing guitar for 30 minutes every day yields much greater improvements than practicing for 3.5 hours every Sunday. If one day, old, you wake up and decide you want to know how to play, you’re inspired, and explode with energy – you won’t be able to transmute that energy to skill.

Perhaps a major cause of the limitation with something like guitar is the limited pace at which neurons can grow. It’s similar to the constraints on muscle growth. Work out, eat, muscles grow, repeat. Attempt a pattern of movement, eat, neural tissue grows, repeat.

This understanding places a limit on incremental growth, which is a crucial part of development. I think one way around this sort of limitation is to focus on breadth in a skill: practice a different aspect, that a different set of neurons would be responsible for. For truly complex skills, there are enough different aspects to occupy a full day, so all the time you have in a day can be dedicated to improvement.

There is a different sort of limitation – a bottleneck of understanding. Often work is done in the wrong direction, or not fully correctly. Or the right question is not asked for optimal growth; the framework of thinking about the problem is missing something. This is a sort of thing that mentorship and guidance is good for. It can help find the right questions.

Until you arrive at a question, though, hearing the answer may not even be helpful. Questions only come in struggling with the tools you have at your disposal. But once you have earned the question, you are truly ready to hear the answer, understand it, and instantly incorporate it into your worldview. This is the limitation of conceptual jumps, epiphanies.

These sorts of limitations – incremental and fundamental – apply in the realm of thinking as well. It’s possible to get very good at thinking, but it’s a journey of stumbling in darkness, making mistakes, reflecting deeply. You need to incorporate a style of thinking – which is a life-engulfing discipline – apply it, course-correct, and try again.

Human life is fraught with moderation. The most beautiful moments in life are moments where the rules are broken, or when a transcendental truth is spoken. But if a rule is broken every moment, they don’t truly exist, and there is no beauty in breaking them. If all truths are transcendental, there is too much noise, and nothing is worth listening to. Transformational conversations only have something to transform if there is something between them.

Creative thinking

One thing  that I’ve been paying special attention to is creative thinking.

I’ve long had this theory that it is merely logical thinking, after taking a step back from the problem at hand, and looking at it at a space on level above, or a meta space, or perhaps adding an extra dimension into consideration.

I’ve been paying more attention to it in the interviews I conduct at my company, and in my problem solving – to turn hypothesis into firm belief.

For dance, taking a step back would mean instead of executing the sequence of moves, looking at what rules those moves are made out of, and then altering those rules. You’d get drastically different moves! And that tends to be interpreted as being quite creative.

For music, there are some straightforward illustrations as well. A piece of music can start to feel quite flat and lifeless if you’re just playing interesting patterns in a scale. Perhaps you find one interesting pattern; then another interesting pattern. And then eventually you exhaust that variety of new note patterns. You’re stuck playing by the rules of note patterns. If you take a step back and consider what the sound is made out of – the properties of each note, or the notes as a system – you can start to vary the music at that level. Instantly, a dramatic change in the quality of music: staccato, legato, attack, volume, string bending – the music communicates in many dimensions other than tonality.

For problem solving, taking a step back from the known rules, and reflecting on the nature of the rules – tends to produce sufficient variety to solve the problem. Within the rules of the problem, you are playing in a formal system. But the rules themselves are described in a formal way, so they are also a formal system. So while varying them dramatically changes the universe of someone stuck playing by those rules, it’s done by the same means as exploring those rules – and so what feels like a creative leap to someone stuck inside the box, is merely logical thinking for someone who is able to think at the meta level of the problem.

One example immediately available to me is a system I designed at work.

We have academic papers submitted to our website as pdfs, and some of them are spam. After one is submitted, we eventually run a classifier to figure out whether it’s spam or not – in a background job on a dedicated job processing server. The classifier takes into account many signals, including whether the user is spam or not. So every now and then we re-run the classifier, to catch tricky spammy works littering our site.

Additionally, we have a smart algorithm that discovers academic papers related to a particular paper.

We wanted to notify users when a paper is uploaded to the site, if it ends up being related to a paper they recently downloaded. But only if it’s not spam.

There were two obvious designs, which I think immediately stem from the description of the problem, and the stages presented:

  1. After the paper has been classified as spam/not spam – run the related papers algorithm, but only if the paper is freshly uploaded. We don’t store this sort of data, so we’d need to find a place in our database just to store this “freshly uploaded” flag, just for this purpose.
  2. After the paper has been uploaded, start a job that will wake up every now and then, and check if the paper has been classified as spam/not spam yet, and run the related papers algorithm if it has indeed been classified.

Both approaches have undesirable qualities. Storing a “freshly uploaded” flag is fickle and ugly. Spinning wheels actively asking the system whether it’s done classifying a paper is fragile and feels like unnecessary work.

So I proposed a third solution:

  • Have a system that accept events about papers. It can have many different kinds of events – paper uploaded, classified, deleted, commented on, recommended, bookmarked, downloaded – and can react in various ways to those events. Each event is stored in a database, and we have a log of everything happening to every work in the system. Reacting to an event can involve looking through this log.

This solves both of the previous problems. The “freshly uploaded” flag is automatically stored in the system in a nice, non-ad-hoc way – as the recent “paper uploaded” event that the system has stored. If that event is stored, and we determine that it hasn’t yet met its “paper classified” event, and a “paper classified” event comes in, we run the related works algorithm.

It’s not clear where this last solution comes from. It may feel like a creative leap. The first 2 solutions only used terms from the description, but this solution includes brand new words and concepts.

The way I derive it, however, can be explained with my framework of creative thinking as logical thinking, after taking a step back into the meta-space of the problem.

Here is the sequence of thought:

  1. In one solution, the data I need to make my decision is not in one palce
  2. In the other solution, I’m not reacting to changes in the system at the right time
  3. There are 2 places that exist that make sense to introduce the solution into, and they’re both bad
  4. Maybe there needs to be a new place?

This changes the question from “Where do I put my logic?” to “What do I build?”. That’s the stepping back into the meta space part. The rest is straightforward logic:

  1. I want the data to be in one place.
  2. The data is “paper uploaded” and “paper classified”
  3. What do those two bits of data have in common? They’re both “(noun) (verb past tense)”, which could be called an “event” in the abstract
  4. So I can make a place where events go, and direct my events there

And beyond that, it’s a straightforward matter of figure out how that data should look, where I am again playing within the rules, and don’t need a creative leap.







A friend recommended I watch a talk by Gary Vee: . He’s an entrepreneur, and his approach to success is taking a long term view, connecting with people, helping as much as possible, and working hard.

I watched it. One thing that caught my attention was that he suggested focusing on your strengths, and not killing yourself trying to overcome your weaknesses. I’ve heard that advice before – from a guitar teacher in an online guitar course that I started with – Doug Marks, of Metal Method.

I get very curious when I hear the same advice coming from successful people from extremely different backgrounds. I think that signals depth, truth.

I asked my mentor about it – he thinks it can be good advice. I asked him what he thinks of my strengths. He listed a few:

  • Resilience, staying calm under pressure
  • Being happy to help others
  • Taking on work, regardless if it’s difficult or hard, glamorous or dirty
  • Egoless approach to work
    • Caring about the result, not the pat on the back – not needing to own achievements
    • Accepting feedback, and improving on it
  • Being comfortable out of my comfort zone, throwing myself against things I’m not great at until I get them
  • Coming up with crazy/creative solutions to difficult problems
  • Solving problems under extreme time pressure

He summarized this saying that I need to work harder than most with my set of strengths. I was reminded of a quote by Luciano Pavarotti (paraphrasing): “I’m not as talented as other singers, but I work harder”.

I can fail at something I’m bad at, then accept the feedback, and then work hard under extreme pressure to get better at it. Great. 😦

I was thinking about this in tandem with my goals, and the advice I got about working on discipline. That it may be okay for me to increase the pressure I have in my life, work under extreme pressure – on my job, on my side projects – and iterate on my release cycles, note the flaws in my work process, and improve.


I was thinking of all the things I’ve gotten better at, and how jumps in skill had to be preceded by overcoming an ego resistance.

Often, I had areas I was improving in, and I felt like I had a path of growth. Occasionally, I event felt like external circumstances were holding me back – not being attractive enough, or rich enough, or having enough free time, or having too much stress. But instead, most of the time I was totally blind sighted by my weaknesses in areas that I was not comfortable admitting to myself that I need improvement in.

I took for granted that I was good at certain underlying traits; improving meant admitting I was not, and then working really hard against my nature – or to change it, change who I am, or how I am. For certain problems, approaching them without ego was the skill: being curious, inquisitive, adapting rather than forcing pre-conceived notions and practiced approaches – are all elements of successful problem solving and engineering which are accomplished in large part by simply dropping your ego.

I’ve discovered many things to be skills, which I previously thought were mysterious black boxes, made out of many sub-components I could practice.

I also used to think that I’m simply bad at certain things, and will never be better. And have instead found that they are also skills, and also made out of small components I could practice.

I used to think being smart was something you were born with, and something I was good at – instead now I work to break it down, and improve on aspects of it. I used to think creative thinking was just some sort of unknown magical power some people have. I used to think memory was what you were given; that I was good at focus, or that I am naturally thorough. Or that I understand something when I first hear it, or that I’m good at conversation. I used to think I’m an introvert, not simply in need of better social skills.

I used to think I’d never dance, because that’s simply outside of the realm of possibility for me, and then came a time when I started to think I’m good at dance, and every sort of self-evaluation like that has always held me back – positive or negative.

It’s a harsh truth to accept – that someone is so much more popular than you because, while you’re incredible at certain things – they have a deeper truth about something that you’re exceptionally bad at. It’s not because they were born that way; it’s something you can have. And you are very far from having it, and you can certainly have it if you work on it. That feeling – is stepping over your ego. That moment – is when you can begin down the road to have whatever you desire.

One thing I thought I was always bad at is getting up early. I get really into whatever I’m doing, and am comfortable working late into the night.

In my situation, I need to work, and I need to work on side-projects, to get to where I want to go – have a business, have a green card. I don’t want to give up my hobbies, and I’m looking for a balance. And a friend told me I should live like in the military – come in at 9, and leave at 5, and work on my things 6-11, and repeat, repeat, repeat.

He said I’ll have to have discipline even if I quit. And that I won’t magically start living that way if all my time is free. I tend to be pretty productive in my free time, but what he said made sense. If I don’t project an aura of discipline and seriousness, and I try to employ people, they’ll happily take money, and not deliver, and my enterprise will never succeed.

Him and a few other people I respect maintain that it’s not something you just have. It’s a skill. I think incorporating that into my worldview – that for 29 years, I have not been “naturally bad at waking up early”, but rather “too lazy to be disciplined” – is a great opportunity to step over my ego, and try an approach that will salvage the best out of difficult circumstances, and perhaps lend me a tool that will propel my future goal towards success.



“Don’t waste your energy” – a friend once told me. I was being dumb; I thought I was getting something for myself, taking what I want from the world. What I was really doing was devoting my limited, priceless energy to a cause that served no purpose I believe in. I was stumbling in darkness, failing to see that I merely have no plan for myself in those circumstances. Instead of taking what I want, I was satisfying primitive desires, being a slave to impulse.

I’d done that mistake countless times before, and I’ve done it countless times since.

Today, I was forced to face this ever changing, shapeshifting issue once again. How am I spending my time? Are my actions aligned with my beliefs, and what I truly want to achieve? Or am I swiveling about, lost and confused, unaware of my own blindness and the chaos that my actions breed, as I aimlessly wander from my path in endless tangents?

It can be a painful and scary thing to consider.

I was talking with my mentor, and he outlined the ways in which I’m not succeeding. I proposed that it’s merely a problem, that a number of solutions come to mind, and it’s a matter of learning, adapting, experimenting, and growing – having a model of the problem, measuring the outcomes, and seeing how they respond to changes. He agreed with all the approaches I outlined, and was supportive of the general direction of thought.

But he went a step deeper, and asked me about my routines outside of work. He asked me what time I go to bed, whether my apartment is clean, whether I drink, or smoke, or do other drugs, how often. He suggested that the best thing I can do is to have a stable sleep schedule.

I said the reason my apartment is messy, and the reason I go to bed late is the same – I come home, and I work on projects, until I fall asleep. And I don’t go to sleep on a schedule, because I get into my projects, and want to keep working.

But I could see what he was doing. He was taking every time slot I have, and questioning whether it contributes to success, to my goals as he sees them.

This model of living is not one of two worlds – doing work so that you can get to the thing you actually want to do. It’s a model of optimizing your life to succeed at work, organizing your life around it. And to a large degree he has done that with his own life, as have many other successful people I know.

I’ve always thought I’m special, though. I’ve told myself stories of how guitar practice, dance practice – organize my mind in some not fully comprehensible way, to give me an advantage. Though truly, focusing directly on a single problem – could likely yield greater benefits for that one problem, and get you farther down the road of success.

I’ve always thought I’m special, though. I’ve told myself that I can use the tools for thought I gain in my life as an engineer, a mathematician, working on rigorous thought – to contribute back to things I enjoy where that sort of approach is not common. The other side of the excuse. Ironically recursive.

And so I was at the edge of a cliff at the mountains of the energy I’m granted every day, looking down at the valleys of opportunity. True beauty comes from depth; perhaps I’ve spread myself too thin, and breadth has limited my depth?

Today I thought – am I wasting my energy? Instead of taking something for myself from dance, and music – perhaps instead I’m the one devoting my limited, priceless energy to problems that are… beneath me? Beneath what I should be focusing on, what can truly elevate me in life? Perhaps I’m stumbling in darkness, and limiting my success, because I’m not focused on a singular cause?

A painful thought.

I don’t think it’s fully true. I think the resolution of the two worlds lies much deeper. The purpose of a life is not to win, significance is between the lines. The boldest paths are never straight; the outcome of a gauntlet thrown to the universe is never known. I can’t be slave to a destination.

I think increasingly, I do need to be very serious about the energy I have; not throw it around, trying to share and make everyone happy. Know its true value, and make sure it’s realized. Understand very clearly what’s a waste of time, and very clearly how what I do fits in with where I’m going in life. I need to crystallize my goals, so it takes no effort to decide if something is worth doing, and I should always have several things worth doing in front of me, and further refining my goals to only choose a few of those.

One last note.

It can be very hard to be present when striving for that sort of focus. Be open to the moment, or detached from outcomes. I think fundamentally, the model should start with being your best in the circumstances you’re in, and deciding what to do is about placing yourself in the right circumstances to shine. I think being present in the moment is in great conflict with being focused on a longer term goal – unless the people around you all contribute to that long term goal.

I think too often I find myself in groups of people who aren’t so focused, people in different stages in life, or different approaches to living. Perhaps I should be careful to surround myself with people with similar goals, and similar drive.