Dating, Lessons Learned, Ramblings

The Lean Dating Manifesto

I was cleaning out my cloud drive the other day when I ran into an article I wrote in Hawaii two years ago, so today I am going to complete my thoughts then and share something a bit different on this blog.

What if we treated relationships like a lean startup?

I’ve been involved in startups for most of my career. Now in a startup you don’t really have a lot of resources, so you have to make it count. There’s a pretty popular school of thought (made popular by the book The Lean Startup) where the idea is to fail fast and early so that you can iterate on your mistakes without wasting too much time, energy, or money. Then the idea hit me: We try so hard to make our businesses successful – why not also apply it to the way we approach dating?

Let’s face it, relationships are really hard. Perhaps you have good luck and have met your chosen one right from the get-go but not me. Every relationship that I was part of has been a humbling learning experience. In the beginning I knew I wanted someone to be with long-term and that was pretty much it. I was pretty adverse to the idea of asking people for advice because I wanted to invent my own way of doing things and prove to myself that it was a viable way thing to do it – maybe not so smart in retrospect but I think I’ve tripped over myself long enough to figure out what generally works for me and what doesn’t.

Who I think this is useful for

If you’re someone that is looking to find a compatible person to be with you for the long-term, I’m writing with you in mind. My metrics of success is to optimize for:

  1. Time and energy spent figuring if the person you’re dating is this person, this includes possibly dating multiple people.
  2. Minimizing the gap between what you think you want vs what you actually want.
  3. Developing a solid foundation for having difficult conversations.


Before I dive into the manifesto, I’d like to lay out some broad assumptions or observations I will be using as talking points:

Be wary of the “Honeymoon Phase”

I’ve had various relationships in the past, some with a long honeymoon phase and some with none at all. On occasion, I hear about people craving this component in their dating life, but I’m personally fine with out it.

Getting too deep into the honeymoon phase could get dangerous. I remember getting really blinded from someone I’ve dated because it started out like fairy tale movie. I didn’t really take the time to internalize and understand who she was and what was important to her. Even small conflicts felt impossible to resolve because my expectations were all over the place.

Trying to save a long-term relationship is a sunk-cost fallacy

I generally think indefintely waiting on your partner to change into something you’re happy with is a bad idea. Merely staying in a relationship you really no longer find joy in because you’ve been in it for so long is also a bad idea.

We usually only re-evaluate our expectations after breaking up

I think generally we stop accelerated rates of learning and personal growth after our mid-twenties. We mostly know what we will feel or behave given certain situations and become accepting and comfortable with who we are. Beyond that, major life events are the only times that we are forced to take a cold hard look at ourselves, it’s only then when we realize our own framework of how we expect the world to look like didn’t quite line up with reality. I’ve often felt “I should’ve done that back then” about my relationships only after I’ve broken up with someone when its really something I could have been working on proactively with the person I was dating.

Humans are generally too optimistic

People are generally optimistic when it comes to a relationship. We always want things to work out (and ideally with minimal effort), so we often fill in the rest of what is still unknown to us with a bit of something I’d like to call optimism. I kind of blame mainstream media for this, but I believe we think about the romantic “what ifs” way too often in the initial phases of dating.

Don’t try to help others that doesn’t want to be helped

This has been one of my greatest weakness: I keep trying to help people who don’t want my help. One of the best lessons I’ve learned (and am still learning) as an adult is when someone is complaining to me about something is to ask: “Do you want me to listen or are you looking for a solution?”. I find that most of the time they just want talk to someone who would listen.

Date enough to know your preferences

What ratio of romance or companionship do you look for in a relationship? Do you like outgoing people or introverts?

Honestly, he best way to figure out if you like something is to try it out. If you are planning to find a lifelong partner, your best bet is to date enough variety of people to figure out if he/she is right for you. Obviously nobody wants to end up being just a data point – but I find that biasing what I look for in my next relationship has helped me hone down what I really want.

There is no such thing as “the one”

There are billions of people in the world, I’d say its pretty close to impossible to find the best person for each of us. But luckily, I think we can come pretty close and the pool of those people is quite big. Being able to answer “how good is good enough?” to me is a huge accomplishment.

What that also means is that there is always someone out there that is “better” for you than the person you are dating and I think we have to be comfortable with that. I once talked to a taxi driver who was married with kids but had another woman in his life that he referred to as his soulmate. It was a novel situation to have heard that as a kid, but now I know things like this happens all the time.

The Lean Dating manifesto

Who doesn’t love mental frameworks? Here it goes!

1. Keep a running list of personal values and deal breakers

Take some time to figure out what kinds of minimums you would accept in a meaningful relationship. It’s more effective to do this when you’re not dating someone because our brains tends to make “exceptions” when we are high on love. There are obvious ones, but here 4 value categories that I use to evaluate if I want to be serious with somebody: Sex, Money, Kids, and Religion.

Keep in mind that this is meant to be a living document that should be revisited and updated constantly. Recognizing that something else is now more important over time is a sign of understanding yourself better.

Strong points in a partner can’t make up for other qualities that are severely lacking

Keep in mind that great attributes in someone can’t make up for other core values that you think are misaligned. I believe a partner in a strong relationship should always satisfy all the bars you’ve set for yourself, but I would also consider revising the standard if I’ve dated enough to know it is not realistic.

2. Do “relationship reviews” every 3 months

People often laugh when I tell them I do relationship reviews every quarter with my girlfriend and then they stop laughing when they realize I’m not kidding.

It’s hard for me to get into the brainspace of doing a deep retrospective on my relationship in the moment, why not plan for it so the “we need to talk” talk isn’t going to scare anyone shitless. My first one was in my room, but also have done it over a nice restuarant as we got more comfortable talking about the relatioship to each other. Honestly, the more we do it the better we get at it, and the more enjoyable the process becomes.

How to best prepare for it:

  • Make sure you are in a safe space (physically and mentally).
  • Be an active listener and in the mindset to take feedback. Seek to understand rather than to immediately defend your viewpoint. Remember it’s not so much ‘me’ vs ‘you’, but rather how do we make ‘us’ work. If it helps, take a few minutes to walk around if you start to feel emotional or tempermental.
  • Crying is okay.

Talking points:

  • How were the last 3 months for you?
  • What were the biggest challenges?
  • What were the biggest wins?
  • What were the things that we wanted to get better at last time we had a review? Did it happen? Why didn’t it happen (if it didn’t)?
  • Do you have any feedback for me? (It’s really important to ask for this about yourself rather than waiting for the other person to give it to you)
  • What are next steps for the things that we need to work on? How do we hold each other accountable or help each other achieve them?

3. Give immediate feedback – Address the concern while they are still relevant and work together to resolve the issue

I won’t lie, I ripped this one right out of my manager training from my job. It’s really hard to do well and the gains are not immediate, sometimes even invisible.

When people bottle up negative emotions towards the other for a long time bad things happen: 1. Future disagreements will not be small or focused enough to be resolvable. 2. People’s feelings and expectations towards each other will be increasingly misaligned. I think this is partly what has happened when people say they’ve “grown apart” over the years.

The important point to keep in mind is thinking about the relationship as an active investment where you would have to make effort and compromises for it to work out. One thing to keep in mind is that there is also a hard limit of how much one is willing to compromise or put effort into and that is okay. So long as they are recognized and talked about, thats really the best thing I can expect from two people trying to work it out.

4. Set a deadline for indefinite issues

“Let’s try it out and see how things go.” Sounds familiar? When there are some clear outstanding issues that needs to be resolved, setting deadlines for them is the best way to make sure you aren’t wasting your time. This can be indefinite long-distance relationships, waiting for values alignment in your relationship, and waiting for people to change their habits. (e.g. “Im going to quit smoking to be with you”). The deadline should trigger something actionable.

The main goal of this is to recognize that we are making a promise to our future selves and to remove the emotional feelings that often clouds our judgement in the present. Heck, write a letter to your future self if you have to – how can we expect to treat other people well if we can’t even threat ourselves with respect?

5. Life Goals Tracking

Believe it or not I have a spreadsheet with my partner to keep track of any short term goals that we have. Typically its better to be focused on 1 or 2 goals, but make sure they are actionable and measurable (“Getting better at x” is not a SMART goal).

The key to doing it together is to hold each other accountable. Much like how we care much more for our pets than ourselves, we are typically more objective about making sure the other person achieves their milestones. I also find rewards and punishments to be good motivators in helping each other reach their goal.

That’s it! I hope to be updating this manifesto as I go through more life events, but my hope is that this has sparked some thoughts in some way, even if you disagree with them.

If you have any questions or thoughts I’d love to hear them!

Q & A

This is a lot of process, you’re killing the magic in a relationship!

We are typically pretty good at the unstructured aspects of a relationship, letting things fall into place when it needs to happen. Having the kind of structure and cadence mentioned above is important because sometimes it is really hard to bring up these topics in our day-to-day lives.


New 3D Printer!

Just got this yesterday.

Took it for a maiden print after coming home from work today and damn am I excited! Right now its printing this cat file that came with the MP Select Mini v2. I bought it last weekend for $240, honestly much cheaper than I had thought for this type of pre-assembled printer. Honestly you can custom build a Reprap one for about $100 but you need to assemble it yourself – which is something I don’t have the time for. Plus, this looks way more professional.

Why do I have a 3d printer? I’m thinking about launching a line of 3D printed jewelry, and this was the last piece in the equation that I needed to finish. website and model design is already done. Ill try to find some time over the weekend to launch the actual site – keep an eye out for OxygenWear.


New job and updates!

Starting out next Tuesday I will be starting as a software engineer at Shearwater! The past 3-4 months has quite the adventure. I’ve left my post as CTO of Wizdy, went on a month-long vacation in Asia (4 days Singapore, 7 days Japan, 14 days Taiwan), retired as a TAP-Boston board member, searched and found a new job, and worked on several small projects here and there.

Honestly, I will miss working with my coworkers at Wizdy. I thought it was time for me to try something new having worked at Wizdy for the last 4 years. I will also be getting back to more web development after being in the game industry for so long. The interviewing experience and dealing with salary expectations have definitely been interesting – let me know if you would like me to write about it. During this period I really had to think about what my career goals were and choose the place that best aligned with them. Overall I’ve spent about 1.5 months from beginning of studying to looking to finding a job, which was much shorter than I had expected the process to go.

There’s a bunch of side projects that I am currently working on: a personal favor ticketing interface for my girlfriend’s birthday, 3D printing custom accessories brand, but really thinking about going into some music production for a while. A tool that I’ve been eyeing is the OP-1 (btw it’s $900 what!!). Here’s a cool demonstration. Music production is something I FEEL like I should grasp quickly but I’ll probably eat my own words soon enough. I’ve played violin for years as a child and taken music theory in college but my fundamentals are still shaky. I’m usually pretty critical of other people’s music, so this is a good chance to live up to my own expectations. Oh, did I mention it is $900? I still want it though. 🙂

Mighty Arrow

Mighty Arrow 3.0 Inbound

A friend told me yesterday that the Mighty Arrow logo sucked, so I went home and redid it. My god, looking at it side by side feels like night and day…

I figured I had some time this winter break so I told myself I’d give the game another update. Here are some things that are going to change:

  • Frenzy Mode will be removed from the game
    • Took a look at analytics and the play time is just not there compared to the main game, plus I feel like this extra mode is detracting from the game’s focus/mechanic. Rather than piling on more modes, I feel improving the core experience with new targets and better feedback would be much more engaging.
  • Achievements will be added
    • This is something I am testing to see if people like. I’m a completionist myself so this is all to help with the retention of the game. I thought it would be cool to whip out your completed achievement board to somebody to see how pro you’ve become (or how much time you’ve wasted in life).
  • Daily Reward will be added
    • I will reward you for coming back to play everyday either with coins or exclusive bows to be unlocked. Who doesn’t love free stuff?
  • New set of art assets
    • There are color value issues all over the game that I would like to sort out, the background colors fight with some of the UI for attention and that’s hard on the eyes. Also the ammo target is not obvious what it does.
  • Huge performance upgrade
    • I recently found out my own tweening library had an issue with Unity 5 where sprites off-screen still resulted in a draw call. Guess I had put too much faith on the engine… at points in the game it was doing 80+ draw calls (RIP iPad mini). Oh well, its fixed now (hovering at 20)!

Planning to have this all done by the new years before 2017. Chances are that isn’t going to happen but I’m definitely going to try. Keep your eyes peeled, this will be a big one!

Got any requests? Let me know in the comments below.

Lessons Learned, Project Management

4 Tips to staying motivated

Keeping pace with a self-driven project is hard, especially when you’re not getting paid for doing them. I always find myself coming up with new projects and starting them without ever finishing. Here are some things I’ve learned working for others (for free) and for myself over the years to help you stay motivated all the way to the end.

1. Develop a support group

Friends are great for hanging out with – why not bring them together to work on something productive? That doesn’t mean they need to be working on the same project – simply setting up a quiet time to do work in their company can really make you feel more accountable for getting things done. Obviously this only works if they have something they need to work on as well. For added effect, I like to play some ambient audio while we work (bossa nova is great, so is rainy mood).

2. Bite-sized tasks while keeping vision

Perhaps one of the best ways to feel progress is to accomplish something every time you sit down to work. When you’re working on something in your spare time that can be as short as 20 minutes of your day. If you aren’t already, use a project management service (I personally use Asana, it’s awesome and it’s free). Something as simple as a tasklist can really help in prioritizing and visualizing the road to the completion of your project. Keep your tasks reasonably small, so that you can hit a checkpoint every time you sit down. One of the feelings I dislike the most going to bed is the regret that I’ve accomplished nothing all day.

The reason that I have the ‘keeping vision’ part is so you don’t get caught up on the minute details when it doesn’t really matter yet. This includes getting feedback, some retrospection, and maybe even taking a little break from the project. Always remember the why, not just the what

3. Set deadlines

Make sure they are achievable! Many software developers under-estimate their project timeline by a factor of 2 to 3. So if you’re not hitting these goals on time early on, it’s a sign that you should re-evaluate your timeline and adjust expectations as early on as possible, especially if you are working in a team.

Deadlines also keep your requirements under check. Feature creep, the ongoing expansion or addition of new features in a product, happens all the time along with changing requirements. I would feel really lucky to go through a one-and-done type of project, but honestly that almost never happens. Be honest to yourself and keep an open mind moving forward. With any experience your peers will too.

4. Finish one thing before you start another

I am a victim of saying yes to everybody. There were times where I had to juggle 4-5 different responsibilities in my life I ended up doing none of them well. What was worse, simultaneously pushing these loads dragged it on for much longer than I would have liked. Over time, I’ve learned to say no to requests when I know I can’t do it justice – and that was perhaps the biggest blessing in disguise I can do for myself and to others.

Hope this helps. Let me know if one particular point has helped in the comments below!

Happy hustling!


Moving Goalposts

I have a pretty unhealthy habit of setting the bar a bit too far out of reach sometimes. I’m saying this from an accomplishment perspective. I already have some friends who are (seemingly) successful in their startups, and actually being in one things feel completely different. I’m not sure of I’ve ever felt that ‘basking in glory’ kind of feeling that publications make entrepreneurs make out to have. Perhaps you can call this the “Facebook effect”, where everyone seems to live ideal happy lives on the surface.

Back in middle school and high school, my mom would always compare me to a friend who, for the most part, get high scores our exams. I remember refuting that had she compared me to the dumber kids in class, I would’ve come out higher every time. Sure enough I got a beating that night… I never really cared much for school or grades even though I did relatively well.

What I do care about is trying my best to become ‘successful’. Now everyone has their own definitions of success, but for me it is a moving goalpost I likely will never reach. An accumulation of these thoughts and how I am going to achieve them is what sometimes keeps me up at night. And almost as a curse, whenever I see a part of other people’s lifestyle that I want to have, I incorporate that into my own goal. I’m a perfectionist at heart – I might get pretty darn close, but I will never get there as nothing is every perfect.

I think one of the challenges that I face is simply to acknowledge where I am instead of dreaming about the future and what could’ve been all the time.

Mighty Arrow

Mighty Arrow update 1.5.0 inbound!

Just started working on an update to Mighty Arrow! What the new update will include:

  • New logo (featured image)
  • New background lighting and recoloring
  • Frenzy Mode – A new game mode where you can shoot as many arrows as you can within a minute and see how many targets you can hit. For the record there will be LOTS of things to hit on the screen. I needed a way for people who have unlocked everything to use their extra coins. Thanks to Cullen for this idea!

Just checked my Unity analytics, and so far I’ve made enough for a lunch! To be honest my expectations were much lower than this, so thank you everybody for this awesome little victory as its the first time I’ve monetized any of my side projects. This is also where my inspiration for the next update began.

Marketing the game has been another project on its own. I’m not too sure how much time I want to be dedicating to marketing as it gets very time-consuming. This all depends on the resulting downloads and growth as I do them. Fingers crossed, and be on the looking for an update in a few weeks!

Lessons Learned, Project Management

Why (and how) should I ask for feedback?

Doing a project on your own is always exciting, you’ve worked out everything in your head and all the pieces fit together nicely. You then spend the next month hard at work making strides on your project. When you finally emerge with a fully functioning product or piece of art, you come to the realization that everybody you’ve showed it to has no idea what they are looking at. One of the worst feelings in the world is creating something that nobody wants or appreciate. Getting target feedback is crucial in the success of a product. But what is the best way to integrate a feedback system into your work flow?

Here’s what I’ve learned from the last 3 years of my entrepreneurship journey:

1. Your ego is your worst enemy.

Thoughts like “It’s not ready yet” or “I don’t want to show it until it is perfect” are extremely dangerous. The more I’ve worked on different things over the years, the more I realized that no product is ever or will be perfect. Nobody likes failure, but unless you’ve achieved full mastery, chances are you are not going to hit the nail on the head the first few times. Jumping to conclusions about how something ought to be can become expensive and time-wasting. So get feedback whenever you can and don’t be afraid to be proven wrong.

The way I see it, rejections are little blessings in disguise. Put your ego aside and embrace them!

2. Integrate constant feedback into your workflow

At Wizdy, the first game (Wizdy Pets) took a team of four 2 years to complete. Our second game took a team of three 1 year to complete. Why did the first one take so long? We kept changing our game design based on the few feedback that we’ve gotten by talking to only a few doctors too late into the game. Every time we decided to change directions, it was months of work down the drain. One thing that helped immensely on the second project was integrating continuous feedback throughout the development of the project and spending a considerable amount of time in the design and prototyping phase. Even before we came up with the final design, we brought devices to kids with very similar games and observed their reactions while playing. Even during the prototyping phase, we went to play-test with kids from after-school programs at least once every two weeks. This made sure we were on the most optimal track in the general direction we had wanted to go and constantly made small design changes that have huge opportunity costs down the road.

3. Talk to strangers

I am guilty of being the problem here. If a friend came to me with a ridiculous idea for a project, chances are I am probably going to be supportive no matter how inane it may be. People tend to become much more considerate of the things they say to their friends as they age (which also makes some adult friendships tricky). The best place to get honest feedback is from people that you don’t know. This doesn’t necessarily mean to go out on the streets to flag people down, but interest group meetups are an excellent place to start. Again, I want to emphasize that if you really want a product to succeed, learn to embrace constructive criticism, even though sometimes they hurt.

Every project is different, and unfortunately there is no silver bullet to solve all problems. I hope that the points above helps to serve as a guideline on avoiding some of the pitfalls that my peers and I have wasted a lot of time trying to remedy.

With that, good luck and happy hustling!

Mighty Arrow

Mighty Arrow live on iOS and Android!

Good news! Mighty Arrow is now live on iOS and Android. Though the iOS version doesn’t have any GameCenter support just yet, that’s one of the next few things that I plan to be working on along with much more arrow skin choices.

In the meantime, I will probably focus more of my energy trying to complete this website.

Want to support my project? Please rate my game, or shoot me an email at if there are any issues with this game that you come across. I’d love to hear from you!

Mighty Arrow

New 1.2.0 Update

Not doing anything this Valentine and it is too cold for me to want to go outside, so decided to spend the weekend doing some patches and improvements to this game. Lots of new artistic changes coming in, made the graphics less variable, so you won’t get distracted by all the changes in the background. Also fixed some physics and collider bugs here. Currently working on getting bow customization going, Im really looking forward to making some cool designs for you to unlock.

One of my friends has already gotten a high score of 59, and I could not, for the life of me, beat his score (currently at 39). Whats yours?