- The tech industry is cyclical
- Consumer Tech is going out of trendy and
- enterprise is coming into trend
- Look up for parallels, for example case studies for how the following company grew
- New Relic
- Co-founder discussions
- 4 year vesting, 1 year cliff
- Clarify edge cases like board seat, shares and voting rights in the event of death
- Date first before marriage
- need to test them on smaller scope to see if they can deliver (remunerate with profit sharing)
- if they prove themselves overtime, start exploring larger scope where they can work together (consider with shares)
- Team configuration
- product development
- product management
- Enterprise sales
- Finance – much later when sales is happening
- product development
Key take aways
- To control a population first control the language and supported concepts. This helps frame and thus restrict the thoughts of its users.
- The further up the hierarchy the increase the need to process contradictory ideas
- In a totalitarian state, even harboring a thought with no corresponding action is considered a crime
- The test of a first-rate intelligence is the ability to hold two opposed ideas in mind at the same time and still retain the ability to function, F. Scott Fitzgerald
- Control over the past allows control of the future. Control of the present allows control of the past
- Tiers of control and effects
- Control body without the control mind will lead to martyr – Romans and the Christians
- Control of body and superficial control of the mind leads to a brittle regime – Soviet Union
- Control of body and absolute control of mind through history leads a long lasting regime – Missionaries and the catholic church.
New Customer versus existing ones
- New customer is 6 – 7 times harder to acquire than to keep one
- probability of selling to new prospect 5-20% versus 60-70% existing customer
- loyal customer worth 10X their first purchase
Customer and feelings
- Loyal customer are buying into an experience they know they will get from your brand.
- What people say when you are not in the room, Jeff Bezos
- It is tied to their sensory cues
- Brand strategy is where you tell people how you want your brand to be perceived by your presentation of the different components
- Your brand should be very targeted and not sell to everybody, only to those who will benefit the most from your offering. That is the basis of differentiation
Experience – components in a brand
- customer service
- Pre-touch point: someone mentioned you to them
- premier first touch point: landing page
- pivotal touch point: reading up more about your product on your website
- category 1: no idea about the problem you are solving
- category 2: aware of the problem
- category 3: aware of problem, trust and love your content
- category 4: ready to buy but have questions
- category 5: made a purchase
- prime touch point: onboarding & magic moment
- post touch point: getting referrals
- To focus on going deep and narrow in the content you create
- 95% not ready but
- 70% will eventually buy from you or your competitor
- Only 3% are actively buying at anytime.
- What customers crave, Nicholas J Webb
- Top of mind, John Hall
- Lead generation for complex sale, Brain Carroll
- Content Inc, Joe Pulizzi
- Sticky Branding, Jeremy Miller
- Good quality decisions do not always yield good outcomes
- All decision makings in real life are made under uncertainty. All decisions are essentially bets about the future
- Decisions made in Chess are not made under uncertainty because every single permutation can be pre-computed unlike Poker.
- Most real life decisions are not zero-sum games
- Real life outcomes are probabilistic
- Outcomes are influenced primarily by the quality of our decision (skill) and luck
- While the outcomes might not always be positive, having a process in place to constantly improve the quality of decision making will tilt the odds in our favor
- Do not change strategy drastically just because a few hands did not turn out well in the short run
- For each premise understand what the base rate is
- Learn to be at peace with not knowing
- Recognize the limits of our own knowledge
- A great decision is a result of a good process. A good process attempts to accurately represent our own state of knowledge
- Watching: It is free to learn from other people’s experience
Cognitive biases that impede good decision
- Decisions are the outcomes of our beliefs
- Hindsight bias impedes against quality decision making
- Guard against black or white decision making
- Availability bias means lagging any prior conflicting data, our default setting is to believe what we hear is true
- Selective bias and consistency bias, means we are unwilling to change our mind despite contrary signals from the environment
- Avoid attribution bias
- Theory of Games and Economic Behavior, Jon Von Neumann
- Ignorance: How it drives Science, Stuart Firestein
- Stumbling on Happiness, Daniel Gilbert
It is hard but it works – needs to be tampered with empathy
On being product focused
- Consulting is limited by time and people – not scalable
- Effective Product-focused business
- Start with a product informed by your consulting – real life problems others face
Impediment to shifting focus
- Too comfortable
- not enough time
- difficulty finding the right customers for the product
On being a founder
- Great founders enable a vision
- forget about being hands on most of the time
- job scope changes every six months – for any road block encountered focus on sufficing the requirements instead of perfecting it
- you rarely get to do what you love to do
- be cognizant on when to lead and when not to – have the specialist do the job
- Cultivate self awareness in strength and weakness – structure company to work around them
- Attribute of founder is instilled with near-permanence in the organization while those of supporting team fluctuates
- the hardest parts of the business is less a reflection about the business than about the person experiencing them
- Build expertise before building network, build network before building company
- Focus on and reward the behavior, let the outcome take care of itself
- Authentic values force hard decisions – held to be more important than money
- have real costs: Impede certain behavior and strategy
- Values are discovered instead of set
- Used as a yard stick for recruiting new members to the cause. Helps get pass the competence versus cultural fit dilemma
- CTO should be those that should be oriented towards education instead of shielding you from the nitty gritty details (black box)
- Use your value system as a yard stick
- Hiring for diversity will make the mental model of the organization more holistic
- Great managers / coaches might not be great individual contributors
On markets and pivots
- Pivots Are expensive don’t make it a habit – only resort to this tactic when the original hypothesis is not longer valid
- focus on the market and then find a field ignored by others because it appears unsexy. From there craft a solution
- Err on the side of execution
- Need to take money for the right reason
- Investors interest will tend to get out of alignment overtime (return multiples and investment horizons)
- 80 percent of returns are by 20 percent of investments
- They need at least a 10X to break even in a position for all the other losing positions they took
- They don’t bring much value to the table
- follow up with CEOs they invested in to understand how they react in a shit storm
- Can help provide information on salary ranges
Choosing a market
- If you can keep your ego in check you can chase after smaller markets and don’t need VC money
- Great ideas are born of mediocre ideas that become better by
- time spent iterating
- humility learning
- look for searches that indicate problems
- Google Adwords
- Moz’s keyword Explorer
Knowing your customers
Defining your user base
- Call 3 different types of users
- Find out why they subscribed and stayed
- Craft messaging toward this group of people
Discounts are a doubled edged sword – while they might attract signups, these folks tend to have a higher churn rate
Schedule regular interactions with your user so that you can understand their habits. It helps you get to an empathetic position with them.
- Feature set needs to be coherent enough to be able to deliver value
- Early adopters
- have very different expectation as compared to early majority –
- hence more forgiving
- ok accepting MVP
- Retention triumphs acquisition any day
- Optimize for acquisition loops that reinforces the UVP instead of linear acquisition channels
- Practice the discipline of focus.
- Important to Focus and not waver around unnecessarily. Its a waste of resources
- A very focused and simplified product offering will help users to more easily understand and adopt it
- Helps keep teams lean as a by-product
- ROA improves dramatically
- helps avoid future layoffs
- Focus on what will not change in the next 10 years
- Lean Startup, Eric Ries
- Sprint, Jake Knapp
- Venture Deals, Brad Feld
The publication eco-system
- Every content creator within the publication ecosystem is under immense pressure to produce content under the tightest deadline.
- renumeration is based on number of articles per period time
- eye balls are converted to advertising revenue
- lots of copying happens
- Media was once about protecting a new, on the web it is about building one
- well defined scope matters
- content that dives deep into its vertical matters
- Headlines are the most important
- Tools of the trade
- lavish pictures
- impostors, frauds and fake interviews
- support for the underdog causes
- anonymous sources
- prominent coverage of high society and events
- different age but same old tricks
- On monetization
- Advertising is the main driver of revenue
- Subscription model focus on trusted source as opposed to advertising source
- RSS got killed because it went against the interest of Advertisers
- On the online medium
- The demands of the medium forces the bloggers to act they way they are
- Tim Berners Lee stacked new content on the top and the rest of the internet thus follows
- Thus the need to constantly create new content
- The most powerful predictor of virality is how much anger an article evokes.
- The most powerful predictor of what spreads online is anger
- Things must be negative but not too negative so as to incite action
- Media needs to get you feeling negative so that you are more likely to share
- Empty vessels are incline to snark so as to feel unjustifiably good about themselves
- Chris Hedges
- is complicated and boring
- the masses are incapable and unwilling to handle its confusion
- In an age of images, entertainment and instant emotional gratification, no one seeks honesty and gratification
- Cognitive biases
- we are bad at being sketical
- availability biases
- narrative fallacy
- we are worst at correcting our wrong beliefs
- social proofing
- consistency biases
- we are bad at being sketical
- First decide what you are intending to do with the information you collected
- The harder they fall and all the king’s men
- Say everything: How blogging began, what it’s becoming and why it matters, Scott Rosenberg
- Wrong: adventures in the margin of error, Kathryn Schulz
- Mien Kampf, Adolf Hitler
- Trading strategy that capitalizes on loss aversion triggered by hyper media coverage, Gary Teh
- Embrace constrains. The main constrain anyone will experience is time
- When constrain is acknowledged, one learns the importance of prioritization
- When the importance of prioritization is acknowledged, one learns the need to horn one’s judgement and foresight through constant learning
- When self aware of where one’s lack of judgement and foresight in specific domains, one learns the need to exercise prudence
- When one learns the importance of prudence, one practices by utilizing minimal amount of resources to de-risk the maximum possible areas of uncertainty.
- When one learns the importance of de-risking, one gives emphasis on strategizing and avoids blind execution.
- The Goal, Eliyahu Goldratt
- Mastery, Robert Greene
While I was reading through most of the success stories that were published on IndieHackers.com, it occurred to me that my project GetData.IO really took longer than most others to gain significant traction, a full 5 years actually.
I first stumbled upon this project back in December 2012 when I was trying to solve two other problems of my own.
In my first problem, I was trying to identify the best stocks to buy on the Singapore Stock Exchange. While browsing through the stocks listed on their website, I soon realize that most stock exchanges as well as other financial websites gear their data presentation towards quick buy and sell behaviors. If you were looking to get data for granular analysis based on historical company performance as opposed to stock price movements, its like pulling teeth. Even then, important financial data I needed for decision making purposes were spread across multiple websites. This first problem lead me to write 2 web-scrappers, one for SGX.com and the other for Yahoo Finance, to extract data-sets which I later combined to help me with my investment decision-making process.
Once I happily parked my cash, I went back to working on my side project then. It was a travel portal which aggregates all the travel packages from tour agencies located in Southeast Asia. It was not long before I encountered my second problem… I had to write a bunch of web-scrapers again to pull data from vendor sites which do not have the APIs! Being forced to write my 3rd, 4th and maybe 5th web-scraper within a single week lead me to put on hold all work and step back to look at the bigger picture.
Being a web developer, and understanding how other web developers think, it quickly occurred to me the patterns that repeat themselves across webpage listings as well as nested webpages. This is especially true for naming conventions when it came to CSS styling. Developers tend to name their CSS classes the way they would actual physical objects in the world.
I figured if there existed a Semantic Query Language that is program independent, it would provide the benefit of querying webpages as if they were database tables while providing for clean abstraction of schema from the underlying technology. These two insights still prove true today after 6 years into the project.
The trough of sorrow
While the first 5 years depicted in the trend line above seem peaceful due to a lack of activity, it felt anything but peaceful. During this time, I was privately struggling with a bunch of challenges.
Team management mistakes and pre-mature scaling
First and foremost was team management. During the inception of the project my ex-schoolmate from years ago approached me to ask if there was any project that he could get involved in. Since I was working on this project, it was a natural that I would invited him to join the project. We soon got ourselves into an incubator in Singapore called JFDI.
In hindsight, while the experience provided us with general knowledge and friends, it really felt like going through a whirlwind. The most important piece of knowledge I came across during the incubation period was this book recommendation?—?The Founder’s dilemma. I wished I read the book before I made all of the mistakes I did.
There was a lot of hype (see the blip in mid-2013), tension and stress during the period between me and my ex-schoolmate. We went our separate ways due to differences in vision of how the project should proceed shortly after JDFI Demo Day. It was not long before I grew the team to a size of 6 and had it disbanded, realizing it was naive to scale in size before figuring out the monetization model.
Investor management mistakes
During this period of time, I also managed to commit a bunch of grave mistakes which I vow never to repeat again.
Mistake #1 was being too liberal with the stock allocation. When we incorporated the company, I was naive to believe the team would stay intact in its then configuration all the way through to the end. The cliff before vesting were to begin was only 3 months with full vesting occurring in 2 years. When my ex-schoolmate departed, the cap table was in a total mess with a huge chunk owned by a non-operator and none left for future employees without significant dilution of existing folks. This was the first serious red-flag when it came to fund raising.
Mistake #2 was giving away too much of the company for too little, too early in the project before achieving critical milestones. This was the second serious red-flag that really turned off follow up would-be investors.
Mistake #3 was not realizing the mindset difference of investors in Asia versus Silicon Valley, and thereafter picking the wrong geographical location (a.k.a network) to incubate the project. Incubating the project in the wrong network can be really detrimental to its future growth. Asian investors are inclined towards investing in applications that have a clear path to monetization while Silicon Valley investors are open towards investing in deep technology of which the path to monetization is yet apparent. During the subsequent period, I saw two similar projects incubated and successfully launched via Ycombinator.
The way I managed to fix the three problems above was to acquire funds I didn’t yet have by taking up a day job while relocating the project to back to the Valley’s network. I count my blessings for having friends who lend a helping hand when I was in a crunch.
I remembered having the conversation with the head of the incubator two years into the project during my visit back to Singapore when he tried to convince me the project was going nowhere and I should just throw in the towel. I managed to convince him and more importantly myself to give it go for another 6 months till the end of the year.
I remember the evenings and weekends alone in my room while not working on my day job. In between spurts of coding, I would browse through the web or sit staring at the wall trying to envision how product market fit would look like. As what Steve Jobs mentioned once in his lecture, it felt like pushing against a wall with no signs of progress or movement whatever so. If anything, it was a lot of frustration, self-doubt and dejection. A few times, I felt like throwing in the towel and just giving up. For a period of 6 months in 2014, I actually stopped touching the code in total exasperation and just left the project running on auto-pilot, swearing to never look at it again.
The hiatus was not to last long though. A calling is just like the siren, even if somewhat faint sometimes, it calls out to you in the depths of night or when just strolling along on the serene beaches of California. It was not long before I was back on my MacBook plowing through the project again with renewed vigor.
First signs of life
It was mid-2015, the project was still not showing signs of any form of traction. I had by then stockpiled some cash from my day job and was starting to get interested in acquiring a piece of real estate with the hope of generating some cashflow to bootstrap the project while freeing up my own time. It was during this period of time that I got introduced to my friend’s room mate who also happened to be interested in real estate.
We started meeting on weekends and utilizing GetData.IO to gather real estate data for our real estate investment purposes. We were gonna perform machine learning for real estate. The scope of the project was really demanding. It was during this period of dog fooding that I started understanding how users would use GetData.IO. It was also then when I realized how shitty and unsuited the infrastructure was for the kind and scale of data harvesting required for projects like ours. It catalyzed a full rewrite of the infrastructure over the course of the next two years as well as brought the semantic query language to maturity.
Similar to what Max Levchin mentioned in the book Founder’s at work, during this period of time there was always this fear in the back of my mind that I would encounter technical challenges which would be unsolvable.
The site would occasionally go down as we started scaling the volume of daily crawls. I would spend hours on the weekends digging through the logs to attempt at reproducing the error so as to understand the root cause. The operations was like a (data) pipeline, scaling one section of the pipeline without addressing further down sections would inevitably cause fissures and breakage. Some form of manual calculus in the head would always need to be performed to figure out the best configuration to balance the volume and the costs.
The number 1 hardest problem I had to tackle during this period of time was the problem of caching and storage. As the volume of data increase, storage cost increase and so did wait time required before data could be downloaded. This problem brought down the central database a few times.
After procrastinating for a while as the problem festered in mid-2016, I decided that it was to be the number 1 priority to be solved. I spend a good 4 months going to big-data and artificial intelligence MeetUps in the Bay Area to check out the types of solutions available for the problem faced. While no suitable solutions were found, the 4 months helped elicit corner cases to the problem which I did not previously thought of. I ended up building my own in-house solution.
Traction and Growth
An unforeseen side effect of solving the storage and caching problem was its effect on SEO. The effects on SEO would not be visible until mid-2017 when I started seeing increased volume of organic traffic to the site. As load times got reduced from more than a minute in some cases to less than 400 milliseconds seconds, the volume of pages indexed by bots would increase, accompanied by increase in volume of visitors and reduction in bounce rates.
It was in early-2016 that I came across an article expounding the benefits of reading widely and deeply by Paul Graham which prompted me to pick up my hobby of reading again. A self-hack demonstrated to me by the same friend, who helped relocated me here to the Bay Area, which I pursued vehemently got me reading up to 1.5 books a week. These are books which I summarized on my personal blog for later reference. All the learnings developed my mental model of the world and greatly aided in the way I tackled the project.
Edmodo’s VP of engineering hammered in the importance of not boiling the ocean when attempting to solve a technical problem, of always being judicious with the use of resource during my time working as a tech-lead under his wing. Another key lesson learned from him is that in some circumstances being liked and being effective do not go hand in hand. As the key decision maker, it is important to steadfastly practice the discipline of being effective.
Edmodo’s CEO introduced us to mindfulness meditation late-2016 to help us weather through the turbulent times that was happening within the company then. It was rough. The practice which I have adopted till to date has helped keep my mind balance while navigating the uncertainties of the path I am treading.
Edmodo’s VP of product sent me for a course late-2017 which helped consolidate all the knowledge I have acquired till then into a coherent whole. The knowledge gained has helped greatly accelerated the progress of GetData.IO. During the same period, I was also introduced by him the Vipasanna mediation practice which coincidentally a large percentage of the management team practices.
One very significant paradigm shift I observed in myself during this period of continued education is the observed relationship between myself and the project. It has changed from an attitude of urgently needing to succeed at all cost to an attitude of open curiosity and fascination as one would an open ended science project.
To date, I have started working full time on the project again. GetData.IO has the support of more than 1,500 community members worldwide. Our mission is to turn the Web into the fully functional Giant Graph Database of Human Knowledge. Financially, with the help of our community members, the project is now self-sustaining. I feel grateful for all the support and lessons gained during this 6 year journey. I look forward to the journey ahead as I continue along my path.
- The same set of raw facts can be used to construct a really positive story or a really negative one. Choose your frame wisely.
- Ethics is not universal, but restricted for application only on a group. In domains where ethics don’t exist, Might means right applies.
- Do not count on continued gratitude and love from the crowd. They will just as soon turn against you as they would worship you
- When dealing within conflict first elicit all existing context, thereafter make your case by applying clear logic and consistent argument.
- Be wary of individuals with dubious characters. If anything, you can always trust them to stay dubious.
- Market is not always readily available. There needs to be willing buyers and willing sellers
- The vision will stay the same while the nitty gritty details should remain flexible to cater to changes as required.
- Timing is important. Some times are not conducive for specific activities while others are. The use of sacrifice /blood magic should be helpful in decipheringbthe present moment given a clear binary frame.