Twitter Updates

Thursday, May 09, 2024

A Trip Down Memory Lane: Revisiting My Blog

It's been over 13 years since I last posted on this blog. With the rise of social media, blogs have become a less popular medium for sharing thoughts and experiences. Revisiting my old blog feels like taking a short trip back in time, allowing me to dig into my own mind and rediscover my past musings. I particularly enjoyed rereading my lesson-learned article from my startup days.


In the past 13 years, I have grown tremendously and gained valuable experience in both my career and personal life. I think it's time to gather my thoughts and write another lesson-learned article here. It will be a fun and insightful read for me when I'm older, providing a glimpse into my current state of mind and the lessons I've learned along the way.


To my future self: Joel, you have been doing well and staying true to yourself. Keep up the great work, and never stop learning and growing. Remember to cherish the moments and experiences that have shaped you into the person you are today. Stay curious, stay passionate, and always strive to be the best version of yourself.

Thursday, April 07, 2011

My Startup Lessons Learned


I have been thinking about documenting what I learned from my startup adventure so people could benefits from my mistakes. It seems to be the right time now. Please remember that this post is not about finger pointing. I am trying to document what I learned so far so I won't repeat my mistakes, and hopefully you could learn something from it too.

Background
A little background for those who don't know what I did before. I started a company called Appnergy with one of my MBA classmate last year, and as the technical founder I developed Qmazing!, a cloud based Queue Management Solution for restaurants, running on iPhone and iPad clients. The idea is to provide remote queuing up for restaurant using iPhone, and customer will get notification when the table is ready. With the help of my other technical friend, the two of us successfully developed, deployed this solution to real world customer. It is amazed that two of us could develop the whole system from scratch in such a short amount of time. I enjoyed every technical minutes of it even though it was hard work.

What went wrong?
Just like those who first started a company, we made many mistakes along the way. However, I think the most critical mistake is that I picked the wrong business co-founder for my venture. It is my mistake because I should have researched (e.g. like this excellent page) and prepared more before going into a business relation. A wrong co-founder will not only create lots of pain, but also destroy a startup in the process. Based on my experience, I think I will have the following questions for my next potential business co-founder.
  • Do you have experience in the IT industry? My next co-founder should come from the IT industry. Non-IT business partner will make strange and odd strategy that doesn't make sense, or not applicable to a Software company. For example, is it odd to be suggested to let go your core member and wait for a possible deal that may happens in six months? Maybe it will work for non-software company, but if you stop working on the software you will not be competitive at all.
  • Do you have domain experience? Unless the concept is so new that domain experience in irreverent, domain experience and connections are crucial.
  • Do you have good and real connection? Don't tell me you know someone who know big boss, and the only way to establish the connection is to offer a big chunk of the share to that someone. A business partner with only 1 or 2 connections makes it harder to get business, and also make it hard to gather real world software requirements.
  • Are you willing to do low level tasks hands-on? I gave up my previous management job and learned iPhone/iPad programming for the success of the company. As a business co-founder, don't tell me you are expected to only do relationship building with customer(Dinner and drink only). Go out and sell whenever you could, even though you need to knocks on 1000 doors. You are not suitable for startup if you are not willing to do low level works because there is always not enough resources.
  • Are you willing to learn anything new along the way? No one will know everything and startup always don't have enough resource. Even a business co-founder must be willing to learn new tricks. For example, if you don't know internet marketing, try learning it! Refusing to learn new stuff with excuse like you are not from IT background makes it really hard for others.
  • How do you handle the situation if you really don't know how to do the task? Don't expect others to automatically take up your tasks just because you don't know how to do. Please propose how to solve it together as a team.
  • Are you truly committed? Although it is very hard to know the real answer because the answer is always YES. One hint I learned from last time is that my co-founder keeps referring this business partnership as a game. When I first agreed to partner with him, he actually referred it as "game" couple time throughout our discussion. I should have spot this "Game" word because to me this business is everything but a game. If he thinks it is a game in his mind, he is treating it just like a game. And it shows in the end.
  • Are you currently working on other business? Or do you plan to start another business along the way? If yes, just tell me upfront so we could work things out. Tell me about how you are going to spend the time.
  • What would you do if you need help? Will you ask your other co-founder for help even though you may loss face? A co-founder must understand that it is ok to ask for help from the other founder. If you really don't know and cannot do certain tasks, bring it out and discuss. Don't worry about saving face as we should act as a team. Hiding the issues will not help at all.
  • A question to myself: How long do I really know the guy? If you have not really worked with that person in a project, you don't know him enough. Even taking MBA classes together for 2 years also doesn't help at all. My relatives keeps asking me questions like "Why are you partnering with someone you don't know enough?". I thought I know but it doesn't turn out right because we didn't seriously worked together before. Maybe it is best to create a new un-related small project to try it out first. There should be a dating period for partnership.
  • Request for a pitch presentation. For those who I am not already familiar with, I should ask the candidate to do a presentation to me, as if I am an investor (Because, after all, I am going to invest my life with him for a long time). So that I could observe his powerpoint slides and presentation skill. I was shocked by the ugly and hard to read powerpoint that I saw last time.
  • What is your expectation in me? Let's line up any expectation that could results in future problems early.
Some other things I learned...
  • Don't fall in love with your idea. Take the time to research the market and create a better business model before doing anything. Do not just rely on your business partner to do so. Is it really worth doing?
  • What's the most important document? Haha, the one that I don't have, which should be a founder vesting agreement and an written agreement that discuss every bad scenario that could happened. For example, what happened if one is not performing? What happened if one must leave because of family issue, or what happened if one want to buyback the share? This is something that I will definitely do in the future to prevent losing another friend because the negotiation of this stuff later-on is just not helpful and a complete waste of time and energy.
  • 50%/50%? A 50/50 split of share will not healthy as the company is totally idle when people are trying to argue the right strategy. Someone needs to be really in-charge and it is better to setup clearly the role and responsibility upfront. Also, when I first started I assume that giving 50% of share to my co-founder will make him truly committed and will do anything to help build the business. It is definitely a wrong assumption.
  • Vesting milestone. One thing that I should have done is to create vesting milestone that tights to real deliverable. For example, 10% share if you successfully acquired 5 customers in the first 6 months. In this case it will prevent partner who achieved nothing, yet hold half of the company.
  • Pay ourselves. Should have taken a small salary from the startup rather than zero salary. And the salary should based on the role you take.
  • Software IP Rights. Who own the software if the company is going to close? What is the process if a co-founder want to continue the development. How much is the costs? Everything related to IP should be discussed before partnering.
  • Adviser Should have find one or more experience advisers in the early stage to help.
  • MBA is only nice to have. Only a handful of stuff I learned from MBA class is relevant as most of the classes are for training manager, not startup entrepreneur. I suggest MBA school should add a course that let people to form REAL company so they could understand the process and make painful mistakes there.
  • The only way to learn is to try it. I have been dreaming about starting a company for a long time and I finally tried it. Although the outcome is not what I expected, the stuff that I learned is so valuable and I believe people should give entrepreneurship a try.
Of course, I am no expert and these are just something I think I learned along the way. There are definitely a lot of stuff I could handle better. If you have any better suggestions/ideas or if I am wrong, please feel free to let me know.

Maybe I will write a part two in the future about some other things I learned, like the technical stuff and other areas in the business.

Friday, December 31, 2010

Last day of 2010

Time flies and it is in less than 20 minutes it will be 2011 already! Looking back, I have done what I dreamed to do for a long long time, which is to start my own company and work on products that I wanted to do. My goal is to develop something that is useful and has impact to people's live. With the help of my great colleague, we developed a product and launched in real world with positive feedback. I also learned many valuable lessons as well. This is one of my greatest achievement in 2010.

However, today also marks the end of this service because of internal company issue. It is quite painful and difficulty to terminate what I have worked on for so long. And I am really heart broken to tell customer that we have to shut down the service. Nevertheless, I believe I have tried my very best and I am going to put all those unhappy events behind me and move on.

I am thankful to have wonderful supports from my wife, my parents, my in-laws and friends. Without them, this startup life will be much harder. Thank you!

2011 is going to be a another challenging year for me.

Happy new year!

Friday, September 24, 2010

What I am doing and What I learned so far

It has been about four months since my last post. To update everyone, I have started a company and is currently building a new product that we believe it will make both the users and businesses happy. It is definitely not an easy task and I learned the following in these four months:

1) It is ok to work in coffee shop almost everyday and actually many people do the same. haha
2) Finding the right people to work with you is absolutely essential to startup. I am fortunate to be able to form a team that is highly skilled. Of course we all certainly could improve in different areas.
3) It is also important to learn many different skills before you even start. I am doing programming, graphic, logo design, web site soon, biz development, researches.... I am glad that I was into graphic design before I start doing programming when I was younger. And also I am very interested in technology so new tech learning is not too painful for me. Although I don't considering myself as an expert, those are important skills to build the product as we don't have many resources to hire others to do these.
4) MBA helps, but not too essential for doing startup. Startup is about building a new thing and see whether it is could work out. MBA mostly taught people how to manage an existing business. I believe for HK we need more training to help people do startup.
5) Things will certainly not going well, but it is always a new learning experience.
6) Startup is also about self control. To move thing forward it is important to control my own emotion.

I am lucky to have the support of people around me. A big thank you to you all.

Will post more in the future.

Thursday, May 13, 2010

Last day of work. Challenges ahead!




Today is my last day at my current company.

I have been working in this place for three years and I learned a lot from my service here. But the most important element that I am going to miss is the people. Although doing projects are hard, it is the people that make it a lot of fun.

People is what makes a company great and move forward.

What's next? We will see...

Friday, May 15, 2009

Punch Party HK 2 - Great Experience

I attended the my first Punch Party HK today. It was a wonderful gathering.

This time the topics are mostly IT centric, with talks about BBS, PALM, NEWSGROUP, etc. Since I didn't grow up here in HK, there are certain newsgroup and BBS that I wasn't familiar with. However, I am old enough to experience BBS using software like Telix.

I feel the most when the presenter talks about Palm since I used to own many PalmOS products, including Palm 3, Palm V, Sony Clie N760C, Sony NX70V and Treo 650. I also upgraded my Palm V to 8MB as well. It is fun to see that presentation on ram upgrade.

Overall, I really glad I signed up for it. Looking forward to PPHK3.





Saturday, March 21, 2009

Firefox extensions that I installed lately

With so many new browsers like Safari and Chrome, I still like Firefox mainly because of its extension. It is because the other browsers lack the "smart drag and drop" feature. This feature lets you just drag and link and open it in a new background tab. Currently I am using the Easy Dragtogo plugin with Firefox 3.1 beta.

I am also playing with a plugin called AutoPager. This plugin will auto load the next page when you reach the end of current page. It is particular useful when using with Google.

What Firefox plugin do you use?