Some Books I’m Reading, and Why

Ever since I got my Kindle 3 years ago, I’ve been reading more. A lot more: before my Kindle, I’d probably average less than one book a year (not including those required for school). For me, it seems that the convenience of reading was a big factor.

Why do I read? As Newton said, to “stand on the shoulder of giants”. So much of mankind’s history, so far, has been recorded in physical writing–not online. Books are still the best way to see into the minds of the greatest scientists, philosophers, leaders, businessmen, etc. of all time.

It’s a balance of course, between actually taking action, and sitting down to spend time learning. The two behaviors are not mutually exclusive: one does learn from taking action, usually skills. Experience–success and especially failure–can teach very important lessons. One can’t meet new people by reading books all the time either. Sometimes though, one can discover brand new ideas and ways of thinking by reading books, ideas that are only talked about in-depth through text, by those in our history who have made a big impact. It is a different way of broadening horizons and gaining perspective.

Onto a few of the favorite books that I am reading, or have read recently, and a short reason why:

  • Buffett: The Making of an American Capitalist, Roger Lowenstein
    • The first/original biography on Warren Buffett. Intriguing insight into who he was–and is–as a person, and what characteristics of his personality and events in his life made him so successful, walking the reader from early childhood through the rescue of the Salomon Brothers
  • Mindset, Carol Dweck
    • A book backed by lots of research studies on what the “growth mindset”  is, how it’s so related to success in life, and how to develop it. A good balance of theory and practicality.
  • One World Schoolhouse, Sal Khan
    • Khan, the founder of the successful and impactful Khan Academy, makes convincing arguments for school reform, and talks about his project and how Khan Academy is the start of an educational revolution. He also talks a little bit about his childhood and subsequent path to the founding of Khan Academy. Inspirational and informative.
  • Hooked, Nir Eyal
    • A very practical and impactful book on building habit forming products, products that have fiercely loyal customers who come back to use the product day after day, from someone who has lots of experience doing so. I’ve heard this one recommended a lot by my start-up friends, and it’s one that I often recommend as well, to entrepreneurs looking for a more practical, “business” book.
  • Power of Habit, Charles Duhigg
    • Basically, the science behind Hooked. I believe habits are one of the greatest “force multipliers” in life (definitely a post for another time), and in his book Duhigg presents the science behind them so we can better understand and utilize the power of habits.

You can see I prefer non-fiction, the reason why is pretty utilitarian.

How our talented team won $2500 at the TechCrunch Disrupt NYC Hackathon

Tags

corpsquare_screen1

We had an absolutely amazing and talented team at the TechCrunch Disrupt NYC 2014 Hackathon! Shout outs to our awesome front end designers Amanda Gobaud and Michelle Lee, and our tireless devs, Amine Tourki, Andrew Furman, and Teddy Ku. Here are the lessons that I learned from building a web application that won the $2500 Concur Technologies API first place prize.

  • Our app, CorpSquare (Concur + Foursquare), solved a problem. Several of the team members (me included) used Concur in the companies we worked for. So we had experience with problems or cool and practical use cases that an app designed around the Concur API could do. Even the  Concur VP of Platform Marketing told us afterwards that he had seen many with the problem we were trying to solve.
  • But, we also played the game strategically. Concur is a business expense tracking platform; most of their clients are big businesses. We felt that a business expense API wouldn’t seem as “exciting” or “sexy” as some of the other consumer-facing start-up APIs (Evernote, Weather Underground, to name a few). Since the different companies who sponsored the hackathon had API specific rewards for teams that used their API in the coolest way, this implied that there might be less competition for the Concur API reward. We made a “value” bet of sorts, as value investors would say–the strategy seems to have paid off.
  • Our team’s skills were complementarybut not too much so. A good hackathon team probably needs both design and dev skills, and different people should specialize in one or the other to make things most efficient. But, everyone should be well versed enough in non-specialty skills (like designers in dev, devs in design) to be able to communicate efficiently. For example, our designers were comfortable with both UI/UX design as well front end development like CSS. Several of our developers were full-stack, implementing the back end but also helping out with the front end. We used technologies (frameworks, languages) that we were all comfortable with, which, perhaps out of coincidence for us, was also an advantage.
  • Presentation matters, a lot. Our two wonderful front end designers spearheaded the movement to make our web application beautiful. With the help of everyone, beautiful it was. For the actual 60 second demo, we also selected the most energetic and enthusiastic speakers to present. First impressions matter, but when you’re being explicitly judged in comparison to at least 250 other people, and 60 seconds of talking and app visuals is all you’ve got, first impressions really matter.

Hindsight is 20/20, of course. Causally linking our tactics and strategies to our success is fuzzy at best. But learning never stops; whatever happens, success or failure, there is always something to take away and improve yourself, and others, with.

Spreed – the exciting journey so far, and lessons learned

spreed_step2_cropped_raw

Spreed, the speed reading Chrome extension I developed last year to scratch my own itch, recently took off in popularity. People wrote about it in a few different places, and our installs in Chrome went up dramatically. The journey has just begun, but I’ve already learned some lessons that I wanted to share.

Lessons learned

  • Piggybacking on buzz can be an effective technique to increase awareness
    • We piggybacked (not deliberately) on the buzz created by the launch of Spritz, the speed reading startup. People wanted to learn more about speed reading, and came across our Chrome extension when they searched for it. We could have done better if we had optimized our web presence for the keyword “Spritz” after the launch, but my excitement at going from 2k installs to 20k installs in less than 5 days blinded me. Which leads me to my next lesson…
  • Be aware of emotions, instead of letting them take control
    • My excitement at our growth caused me to naively focus on vanity metrics like installs and visits, which blinded me to the SEO opportunity mentioned above.
    • Another example: I recently almost made a grossly sub-optimal decision regarding the outsourcing of development. Again, I let excitement and optimism tempt me to “forget” to use a disciplined decision making approach. The particular one I like to use is called the WRAP technique (pdf), which I learned from the fantastic book Decisive, by the Heath brothers.
  • To quote Steve Jobs: “A lot of times, people don’t know what they want until you show it to them”
    • We’ve not only developed the features that our users have said would be most helpful to them, we’ve developed (and are developing) game changing features that  we anticipate users will find immensely helpful. We test our hypotheses by collecting feedback from users and doing small tests/experiments. The lesson here, I think applicable to all of life, and not just product development: be proactive instead of just reactive.

What has been most exciting has been working with our users to make Spreed the most helpful it can be. Building things that help people, having those people reach out to thank you, and then having conversations with them to make the product even better has been extremely meaningful. Some excerpts from our most enthusiastic and dedicated users:

“Your chrome app is phenomenal. I have been using it for 4 days now, and still find it hard to believe that such a basic app can change one’s life so much.”

“Thank you so much, this has revolutionized my life.”

“I am a dyslexic and I have always had difficulty reading with full comprehension.  I can’t believe how this has changed this for me.  I can read at 350 words with great comprehension.  What happens for dyslexics is the words flow together sometimes forming new words that aren’t there.  With this app I see only the word!  It is going to be a life changer for me.”

There’s still a lot more to do, but I’m looking forward to the future. Learn by doing and building, strive to help others, and the journey will be an exciting one.

Shout out to Ryan Ma for the beautiful redesign of the Spreed Chrome extension!

 

Weekend hack: AngelList Alumni Bot

screenshot

Ok, it’s more of a scraper than a “bot”. But the reason I developed it was because I was looking through NYC startups on AngelList, and wanted to find founders who had graduated from my alma mater, the University of Pennsylvania. I didn’t want to click through the AngelList startup pages one by one and then click on every founder. There  was no easy way of doing what I wanted, and I also wanted to get to know the AngelList API a little better.

The AngelList Alumni Bot basically gets all startups given an input city (e.g. NYC), grabs the founder’s name, and checks AngelList or LinkedIn to see if they are a graduate of an input school (e.g. University of Pennsylvania).

There are a lot of areas for improvement (e.g. it’s not a web app, it’s really slow, it currently only supports two cities/locations NYC and SV and one school UPenn, it only grabs one founder for each start-up in a very hacky way by exploiting AngelList page meta tags). You can make contributions to the source code at https://github.com/troyshu/angellistalumnibot.

Everything was done in Python. I used and extended, this AngelList API Python wrapper: my extended version is at https://github.com/troyshu/AngelList.

My first webapp built on a framework: wtfconverter

wtfconverter

www.wtfconverter.appspot.com converts between common units of measurement (e.g. liters, seconds, etc) and silly units (e.g. butts, barns, etc.).

It was the first web application that I had developed using a web framework, in this case the webapp2 framework, on Google App Engine. This was two and a half years ago. Before that, I had developed everything from scratch, using PHP and MySQL for the backend.

This introduction to web frameworks intrigued me, and is what jump-started my journey into Ruby on Rails. Pushing local code to the Google App Engine production server and just having the site work blew my mind. Templating (the GAE tutorial taught how to use jinja2) was like magic, creating and managing dynamic content was so much easier.

I started out by following the GAE Python tutorial word for word, which walked the user through actually building a site. Then I developed my own little webapp that was a little more useful and wasn’t much more complicated than what I had learned in the tutorial. This is exactly how I learned Ruby on Rails too: I walked through the Rails tutorial, building a microblogging app along with the author. Then I built my own web app, Pomos the Pomodoro Technique timer, using what I learned from the tutorial. Pomos has since been deprecated, but here’s a screenshot:

pomos

 

Anyways, I learned a lot from following these tutorials where I actually developed something concrete, and then branching off to do my own thing. This is the heart of experiential learning, and what Sal Khan, founder of Khan Academy, talks about in his book One World Schoolhouse; when the student has ownership of his education by actually applying it, e.g. by building something, he is much more likely to enjoy learning new knowledge and skills. But reforming the current state education is a topic for another post.

My holiday break project: quarterly earnings snapshot webapp

Link: www.qesnapshot.herokuapp.com

qesnapshot

Problem: I just wanted to find out how much a company’s current quarterly earnings grew compared to their earnings for the same quarter last year (called year-over-year). I wanted this info for companies that just released their quarterly earnings recently (e.g. within the past few days), so I could generate new investment ideas. “I see AEHR released earnings recently, on December 23. How did its 2013 Q4 earnings grow from 2012 Q4 earnings?”

There’s no easy way to do this. The current options are:

  1. go to an earnings calendar site like Bloomberg’s, then look up the symbol and find quarterly earnings on a site like Morningstar, calculate the growth % number yourself OR manually find and sift through press releases to find earnings growth %
  2. pay a ton for data that tells you, through an API or web interface that isn’t at all user friendly

Solution: Quarterly Earnings Snapshot is a webapp that scrapes an earnings calendar and then scrapes SEC EDGAR filings for companies’ recently released, and historical, quarterly earnings numbers. It displays earnings per share (EPS) and year-over-year (same quarter) EPS growth in an easy to read format so I can get the relevant numbers I need at a glance.

After being in development for only a couple days, the webapp has already helped me generate new stock investing ideas quickly. For example, a few days ago, i checked the site and saw that KBH (KB Home) had released earnings a week or two ago on Dec 19, and that earnings per share had grown a whopping 671% (see below screenshot).

qesnapshot_example

This prompted me to do more research on KBH, as well as its competitors in the home-building industry, an industry that seems to be rebounding from a bottom. Some homebuilder stocks have already risen a lot, others are still undervalued, and  so present potential investment opportunities.

Feedback and comments are always welcome! I know there are many different features I could add, many different directions i could take this. My short term goal over the holidays was just to build something simple in both design and usage, and to share it.

Thanks for reading. Happy holidays and happy new year!

PS: the site is Ruby on Rails + Heroku. Extremely grateful, rapidly prototyping webapps for free/cheap would not be possible without them.

What I learned from traveling across the world for 7 weeks

Ha Long Bay

Ha Long Bay, Vietnam

Ok so technically I went “around” the world: NY->Vietnam->Cambodia->Thailand->Singapore->Hawaii->NY. But mainly I did my adventuring in Southeast Asia. What did I learn?

  • I dislike being non-“productive”. I didn’t get to work on my programming projects while traveling, and sometimes I wished I had gotten the chance to. I guess more time spent on traveling, self-development, gaining perspective means less time spent for career goals.
  • If you fail to plan, plan to fail. The city planners of Singapore essentially play Sim City and plan every aspect of the city’s development, from zoning to sewage systems, to a T. Singapore is also ridiculously well run and efficient. I believe the latter is a causal effect, to at least a large degree, of the former.
  • Do not control your thoughts and emotions. Become aware of them. The harder you try not to think about something, the more you think about it (study). What matters is not what you’re feeling, but how you feel about what you’re feeling. Awareness of your thoughts and emotions is a powerful ability to have, and is one of the main goals of meditation.
  • You can learn from every situation. My monk instructor in the two-day meditation workshop that I took taught me this too. In the context of meditation, he taught me to not be so hard on myself when I catch my mind wandering during meditation, and to learn from the situation (e.g. what my mind liked to think about, how I felt about what I was thinking about, etc.). I feel it also applies to the greater context of life: we can always learn something about ourselves, other people, or the world in any situation, good or bad, success or failure. Learning, and self-development, is a never ending journey.
  • Appreciate the things we have in life. There are the little things, like drinkable tap water, and air conditioning, but what impacted me most was my experience teaching English in a rural Cambodian village for a week. I met an American philanthropist (http://anywayfoundation.org/) named Ray in Phnom Penh and he invited me to teach for a little bit at an elementary school he had just built. In a place where cassava farms and rubber plantations stretch as far as the eye can see, where electricity is a luxury and daily temperatures rise above 100 degrees F, the kids I taught English to bubbled with enthusiasm to learn. They were so eager to learn, definitely much more so than I was when I was 9 years old, but before Ray donated his time and money, they had no pens and paper, no textbooks, a shortage of teachers, and no school building. Education means so much to them, but they did not even have the means to pursue it. I am truly grateful to have had the opportunities that I’ve had in life so far, for example access to education, and I hope to help those who don’t have them yet experience them.
  • People make the experience. My traveling experience could not have been nearly as fun and educational without the people that I met and befriended from all around the world: other fellow backpackers, the locals (restaurant owners, tuk tuk drivers, hostel staff, etc.), random people on the streets or waiting in line, and of course, this one. Everyone has a unique and interesting story, and one can learn a lot from others.
  • Live life with authenticity. Because in the end, it’s between you and yourself; it was never between you and them anyway. When you are on your death bed, you will judge your own life. Will you judge it based on how well you lived your life the way others wanted you to, or how well you lived your life the way you wanted to? I learned of the following poem from Ray, the American philanthropist who I met in Cambodia:

The Paradoxical Commandments
by Dr. Kent M. Keith

People are often unreasonable, illogical and self centered;
Forgive them anyway.

If you are kind, people may accuse you of selfish, ulterior motives;
Be kind anyway.

If you are successful, you will win some false friends and some true enemies;
Succeed anyway.

If you are honest and frank, people may cheat you;
Be honest and frank anyway.

What you spend years building, someone could destroy overnight;
Build anyway.

If you find serenity and happiness, they may be jealous;
Be happy anyway.

The good you do today, people will often forget tomorrow;
Do good anyway.

Give the world the best you have, and it may never be enough;
Give the world the best you’ve got anyway.

You see, in the final analysis, it is between you and your God;
It was never between you and them anyway.

I hope to travel abroad more. Traveling, and taking the path less traveled, provides something that is easily lost in the hectic and fast paced city that I live in: perspective.

adaptivwealth.com: sign up now for free trade alerts, other features

www.adaptivwealth.com

Sign up now before the month’s end: free monthly trade email alerts, both position entry and position exit reminders, have been implemented. The emails are sent out automatically by the backend a day before entry or exit. Positions are exited on the last trading day of every month; new positions are entered on the first trading day of the new month.

Note: the historical performance results on adaptivwealth are based on using market on close orders, an order type that allows you to buy/sell stocks right as the market closes.

Other features include the ability to view the adaptive Minimum Variance Portfolio’s historical allocations. One can see the benefits of being dynamic (vs. static, such as wealthfront.com or betterment.com) during the last few months of 2007, going into 2008: the MVP during this time period was around 80% in US intermediate term bonds (IEF), which largely protected the portfolio from the precipitous losses experienced by the stock market in the next year.

The MVP vs. VTI performance table (shown below, or when you mouse over the performance time series chart on the main adaptivwealth page) also show the benefits of an adaptive/dynamic allocation model.

mvp_vti_performance

The Minimum Variance Portfolio has a comparable compound annualized growth rate (since June 2006, when the ETFs it uses came online) to that of VTI, the Vanguard Total Stock Market ETF, a proxy for the overall US stock market. The MVP has a much lower maximum drawdown (-16.5% compared to VTI’s -55%), and almost double the Sharpe Ratio (0.62 vs. 0.35): in essence, it seems that the adaptive Minimum Variance Portfolio achieves stock-market like returns over the long-run with much lower volatility than the stock market.

adaptivwealth: the new web app that I made to bring adaptive asset allocation to the masses

adaptivwealth: www.adaptivwealth.herokuapp.com

adaptivwealth

I recently finished the beta version of a web app I’ve been building, a web app that brings adaptive asset allocation to the masses.

What is adaptive asset allocation?

I’ve written about it in several previous posts. Essentially, it’s the idea that traditional Markowitz mean-variance asset allocation can be improved–generating portfolios that have better risk-adjusted performance–by making the models more adaptive to market changes.

What’s the point of the web app?

adaptivwealth’s goal is to make models that try to improve upon the weaknesses of traditional asset allocation more accessible to individual investors.

Asset allocation–allocating one’s money to different asset classes such as equities, bonds, and commodities–often produces more diversified portfolios than, for example, just picking stocks. Portfolios constructed using asset allocation can have decreased risk and increased returns (see the above screen shot of the performance of the Minimum Variance Portfolio vs. the performance of the S&P 500 for an example). A portfolio’s holdings can be optimized such that return is maximized given a level of risk. Asset allocation is powerful: the famous Brinson, Hood, and Beebower study showed that asset allocation is responsible for 91.5% of pension funds’ returns. Not stock selection, not market timing.

Asset allocation is traditionally not very accessible to individual investors. Individual investors have data, computation, knowledge, and/or time constraints that prevent them from running asset allocation algorithms to optimize their portfolios; asset allocation services are usually performed by financial advisers for individual investors, and large institutions like pension funds and hedge funds obviously have the resources to do it for themselves. Companies like https://www.wealthfront.com/ are closing this gap, taking out the middle man, financial advisers, and lowering the costs of implementing asset allocation for the individual investor.

Companies like wealthfront implement traditional asset allocation algorithms. adaptivwealth differentiates itself by using models that try to improve upon the weaknesses of traditional asset allocation, and by making these models more accessible to individual investors. One approach to addressing the weakness of traditional asset allocation is by making the models more adaptive to market changes.

A call for help

adaptivwealth is still very rough around the edges, and I have a whole list of features that I want to implement, ideas for growth, etc. But I wanted to get a minimum viable product out there and collect feedback as quickly as possible. Let me know your thoughts! Questions, suggestions for features, advice, criticisms, anything and everything helps. Thank you.

Follow

Get every new post delivered to your Inbox.

Join 192 other followers