May
26
Incremental improvements .. meh
Filed Under entrepreneurship, innovation, product management, startup, things to remind myself | Leave a Comment
As far as innovation goes, I prefer major disruptive innovations over incremental improvements (not to say the latter does not have it place, it does). As a keen observer of human behavior, I’m interested in understanding in general why people do they things they do, with a focus on human interaction with technology–such as factors that affect the adoption rates of new technology.
I long discovered (the painful way) during my time as an academic in computer science that just because one builds something super well, that by no means guarantee that “they will come”. In fact, my favourite quote then became, “So what if it doesn’t do anything? It was made with our new Triple Shielded Core Blowfish Encrypted Reduced Internal Resistance 26 Level On-Die Cache 512 1024bit Registers Supercharged Iso Bifurcated Krypton Gate Metal Oxide Semiconductor process …” (souped up version from something similar I read from a UNIX fortune cookie, but I digress).
Thus, I found this blog post by Andrew McAfee, a HBS faculty to be quite interesting. I’m going to summarize the key takeaways, although I highly recommend you read the original post.
Changing the status quo is extremely difficult and often leaders get “carried out on their shields” (from an awesome and inspiring Carly Fiorina talk about change and leadership at Stanford, that I’ve quoted her before here). Let’s examine one of the traits of the status quo:
We are loss averse. A $50 loss looms larger than a $50 gain. Loss aversion is virtually universal across people and contexts, and is not much affected by how much wealth one already has. Ample research has demonstrated that people find that a prospective loss of $x is about two to three times as painful as a prospective gain of $x is pleasurable.
A bird in hand is worth two in the bush. Makes sense, it takes a non-status quo person with a vision or be hungry enough to be prepared to lose $50 for the upshot of potentially gaining another $50. The willingness to feel fear and keep going forward distinguishes the living from the merely breathing
.. behavioral economist Richard Thaler has called the “endowment effect:” We value items in our possession more than prospective items that could be in our possession, especially if the prospective item is a proposed substitute.
If you’re introducing a mere replacement of an equal product, it’d better be .. uhh, just realize that you’re fighting an uphill against change. Make sure you have incentives for people to change.
As if all this weren’t enough, Gourville also highlights that the people developing new products are very dissimilar from the products’ prospective consumers. You don’t go work for TiVo (to use his example) if you don’t ‘get’ the potential of digital video recorders and think they’re a really good idea. And after working for the company for a while, having TiVo becomes part of your endowment; you think of things in comparison to TiVo, instead of in comparison to a VCR. Both of these factors make it harder for developers to see things as their target customers do.
Many techies suffer from this, falling in love with their own creation and failing to see that it could perhaps actually be fundamentally, how should I put this gently, a completely useless product. If it’s not solving a real person’s pain point that he/she is willing to pay for a solution, then monetization may be a challenge. Doesn’t matter how snappy the UI is, or the fact that you’ve just spent a month shaving off 10 CPU cycles on the algorithm that calculates the number of molecules in a can of soda, I highly doubt anyone would pay you to compute out the exact number of modules in a can of Mountain Dew just before they pop the can. I’m sure the algorithm is still very cool, though!
There are three classes of people: those who see, those who see when they are shown, those who do not see
–Leonardo da Vinci
As an innovator, train yourself to see the things that you cannot see. Ok, so that’s admittedly difficult, so at least try to see the things that other people see that you don’t see.
This last point is one of the reasons why I strongly believe that techies should actually get out there (at least occasionally) to go talk to real human beings, such as the paying customers. Be aware of your own inherent bias and need to protect your “baby” (the product), but don’t forget that you are also creating value for someone else.
The bottom line is: if you’re developing something new, you’ll have an easier time if the benefits of the product surpasses the existing solution by (at least) a factor of 10.
Apr
24
SDSIC Integrated Product Management and Development - A Case Study
Filed Under business, entrepreneurship, marketing, people i like, product management, project management, san diego, startup, strategy | Leave a Comment
Recently, I’ve been really fortunate to have met so many amazing people, that I can just learn from through osmosis, merely by just hanging around them (the converse is also true, which is why I am careful to stay way from people I don’t want to model myself after). Two days ago, I attended a San Diego Software Industry Council (SDSIC) event on Product Management where a real world case study was presented by Alan Kiraly, CEO of Enterprise Informatics.
When I last took Rod Whitson’s class on product management at UCSD, I particularly liked the real world case studies that we went over. It was definitely a plus that Rod actually had real world experience to draw from. Likewise with Alan, who is also an industry veteran. The other thing I like about an actual face-to-face event is the people interaction, the stuff that you learn that nobody will actually write in a book.
Here’s a couple of things I picked up from Alan’s presentation.
A solidified and well defined business processes can be quite the competitive advantage. Alan talked about how Enterprise Informatics use their own product for their SOWs “lifecycle” management (eating your own dogfood == awesome!). What I particularly liked about this really manages decision making. Once an SOW is defined, if the time is not right, it can be thrown out in the “parking lot”. At a later time, if the opportunity arrises, the SOW can be picked up, dusted off a little, tweaked and be reused by putting it on the development cycle train.
The obvious value here is in saving time and resource in planning. Planning and strategizing stuff takes time and .. well, brain power! Too many times have I figured a whole plan for something, shelved it, and then later when I want to revisit it, I have to redefine the entire plan from scratch again.
Transparency is good. Ok, so nothing really ground shattering here, but it’s nice to hear about real world problems when transparency is not advocated. In a global and diverse organization, with people working across various continents and different timezones, synchronizing work and expectations can be a challenge. I can surely relate to that–my team at work, consist of folks in California, Australia, Israel, China, France, and the UK.
Read more
Apr
20
Y Combinator Startup School @ Stanford Univ. ‘08
Filed Under entrepreneurship, people i like, photos, silicon valley, stanford, startup | Leave a Comment
That’s Jeff Bezos, chairman and CEO of a small company called Amazon.com. And oh, the founder of a space company too.
At SUS, after each speech, the speaker usually has a 5-15 min Q&A session with the audience. The way Jeff handled his Q&A, and carried himself impressed me. He respectfully and politely provided a “good enough” answer when someone posed him the question in an attempt to pitch AWS head to head against Google App Engine.
What really impressed me though, was when someone asked him about some technical limitation imposed by the company on Amazon Web Services, an answer to which Jeff did not know, so he redirected the spotlight to one of his aides standing by the stage for an answer. The aide essentially gave a beat-around-the-bush type “politically correct” corporate cookie-cutter, investor-relations cover-your-ass type answer. Jeff cut the aide of in mid-sentence when he saw that the answer was practically rubbish, and said, “so basically, he’s not really answering your question” (referring to this aide) and apologized to the developer for not knowing the answer.
He then said the name of his aid so that the developer could follow up with his aide for a real answer. Jeff is obviously trying to woo developers to build on top of AWS. I tip my hat for his efforts to gain trust from the developer community. That burst of honesty, cutting through clutter .. was refreshing.
The videos at Y Combinator’s Startup School 2008 can be found here: http://omnisio.com/startupschool08
Picture taken at Kresge Auditorium, at Stanford University.
Fact: Did you know that Blue Origin does their computational fluid dynamics calculations on the AWS Elastic Compute Cloud? At first, I thought that was just corporate incest (and another sleazy marketing ploy) — but I was wrong. Blue Origin previously took 70 hours per calculation, and now they can get results in just 12 hours, quickly deploying (scaling up and scaling down) a massive fleet of servers! Talk about eating your own dogfood. Now that’s just plain good practice.
Update — Check out this video(s). In personal decisions, my methodical nature can confuse me. Some decisions are best made with the heart.
Apr
8
Lessons from the Warrior of the Light
Filed Under changing the world, entrepreneurship, execution, failure, fear, goal setting, passion, perseverance, quotes, regular reads, self improvement, startup, strategy, things to ponder about, things to remind myself, values | Leave a Comment
I’m definitely a fan of Paulo Coelho, the renowned Brazillian author. He has a unique way of teaching the lessons in life that he has learned through storytelling.
A few lessons from the Warrior of the Light.
Using one’s own madness
A warrior of the light studies very carefully the position he wishes to conquer.
However difficult his objective may be, there is always a way to overcome the obstacles. He verifies the alternative routes, sharpens his sword, and seeks to fill his heart with the perseverance necessary to face the challenge.
But, as he advances, the warrior realizes there are difficulties he had not foreseen at the outset.
If he waits for the ideal moment, he will never move from his position; he sees that a little madness is needed for the next step.
The warrior uses a little madness. Because - in war and in love - one cannot foresee everything.
Life is such that if you wait to gather 100% of every single detail before you can make a decision, others would have surpassed you. If you waited for the fog to clear, then what you see is what everyone else will also see. Given the perfect picture, anyone sane would make the same correct, best choice. This is exactly how *not* to beat the market.
CEOs often make decisions with incomplete data–and that takes a little madness. It’s about making decisions with the best information possible available at that time. Standing still through inaction is waiting to fail–and I’ll fail from action than inaction.
So when do you put yourself out there and wear your heart on your sleeve?
Read more
Mar
29
Technology and Changing the World: Trends roundup - March 29, 2008
Filed Under business, changing the world, entrepreneurship, microfinance, mobile, passion, poverty, regular reads, startup, technology, things to ponder about | Leave a Comment
This post consists of my “value-added” thoughts on David Kirkpatrick’s article on Fortune here.
Since I love all things technology and passionately believe that it wields the power to change the world, these numbers are just plain interesting to me. I’ve overlayed on the data some general technology trends on Web 2.0 startups, venture capital, microfinance and poverty, all cleverly slapped into one big fat blog post. Why? Because they’re all inter-connected, and I haven’t written anything all this week (been so darn busy lately!) Off we go.
Indonesia:
- 1 in 100 owns a PC
- 1 in 1,000 has broadband Internet
- 63 million cell phone subscribers, representing 27% of the population (of 234 million)
- Annual cell phone subscription growth rate: 36%
India:
- 166 million cell phone users
- Last year’s cell phone subscription growth rate was 84.5%
Switzerland:
- The Swiss have 85.1 PCs per 100 persons, beating the United States at 80.3 PCs per 100 persons
Global PC penetration is 12.9 for every 100 people. Room for growth? You bet. Many of PC owners are obviously in well developed countries, and not poor countries with lots of people. OLPC’s efforts to reach the billions at the BoP will move the needle here, if they succeed. Not forgetting the “middle” market, more of those who are neither rich nor poor will also buy computers and get on the internet. (Better start loading up on some PC stocks!) But wait, am I sure that the middle-class is not going to get poorer and not buy computers? Well the stats from Hans Rosling’s TED talk show that the overall trend here is that the world is slowly digging itself out of poverty, and I take comfort in that. Actually, read on below as I describe another trend that supports that.
Now, for some cell phone stats:
United States:
- 77.4 subscribers per 100 people
- Everywhere in Europe (except Turkey) exceeds penetration in US. Italy is at a whopping 135.1 cellphone subscribers per 100 persons.
- Hong Kong beats the US in penetration too, at 135.3
The global average is 41.6 per 100 people.
Cellphone usage growth in fast growing markets last year*:
- Peru: 57%
- Vietnam: 114%
- Pakistan: 170%
- Ukraine: 185%
*numbers might be fuzzy, but they show a general trend
What’s also important to note about this upward trend in adoption is that mobile phones were the crucial piece that first enabled the poor in Bangladesh to get out of poverty (see section on Village Phone). Women built business models around it and turned it into a source of income. These days, mobile phones are also playing another role in microfinance: enabling the transfer of money and information over, well, mobile phones! In poor countries, a brick-and-mortar bank branches with ATMs are hard to come by (ditto for computers and broadband), so mobile phones are serving this unmet need, facilitating microfinance and thus helping reduce poverty.
Other interesting stats:
- 1.3 billion of global population connected to the Internet, compound annual growth of 20.3% for past 8 years.
- Internet ad spending of $40 billion is only 6.6% of global total of $605 billion and is growing at 33%. (Ha, I should double down on this little company while I can!)
Data from 2008 Global Internet Snapshot compiled by Imran Khan, senior analyst at JP Morgan. (hmm, can anyone get me access to that full report?)
That’s why medium and big tech companies can weather the unfavorable US economy trend by going abroad. Fruit trees in your backyard not yielding? Then go after the greener pastures outside of your backyard too. It’s called diversifying. That’s the other thing I love about software is that it’s not a physical object–a computer scientist can create value with merely a laptop (and some coffee!) The cost of making that first software copy is the most expensive, then every other subsequent copy ad infinitum is basically free. This is just the nature of information economics, and has obviously served Microsoft very well. Actually, tiny tech startups can do this too — by leveraging the distribution power of this thing they call the internets.
Read more
Mar
10
Inveneo: The battle against information poverty
Filed Under changing the world, entrepreneurship, innovation, passion, startup, technology | Leave a Comment

While most of us in the well developed parts of the world battle attention poverty (I’ve come to peace with the fact that I will *never* be able to keep up with all of my RSS feeds!), we forget that this is actually a luxurious problem to have. Many in the underdeveloped world face the opposite problem: information poverty–the lack of access to information, which in turn means lack of access to knowledge and education, which really feeds back into the cycle of financial poverty.
As more people hop on the internet bandwagon in the developed world at rates that dwarf technology adoption in the poor countries, this will obviously further increase the gap between the rich and the poor–which we all know is a not a good thing. If you are unable to find food to eat or medicine for your baby, would you consider violence and theft? Decision making under those circumstances are difficult. The poor becomes an easy target for people with bad intentions; can you imagine someone walking up to you with a gun and saying, “Fight for me, and I’ll give you food.”
This digital divide is not a newly discovered problem, and is actually one of the initiatives of the World Economic Forum. I’m passionate about technology because I believe it’s an enabler for a better quality of life. I’m excited that I’m not the only one who thinks so, and there is a real startup with real products with that same vision (imagine that!).
Inveneo says it well in their mission page:
Information and Communication Technologies (ICT) can:
- help save lives (rural healthcare and relief)
- provide better economic opportunities (agriculture, market access)
- help enforce human rights (monitoring/reporting)
- offer a better future for children (education)
Feb
9
Randy Komisar
Filed Under business, career, changing the world, innovation, mentoring, passion, people i like, quotes, self improvement, stanford, startup, things to ponder about, things to remind myself, values | Leave a Comment
Randy Komisar, when asked in an interview about how he would ever make his mark at VC firm like Kleiner Perkins Caufield & Byers when they have a track record of investment home runs like Google says,
It’s a high bar, there’s no question about it. But I don’t feel competitive against that. I mean I think that the goal for me is to help create great talent in great companies, and what I’m hoping that in the process, they create wealth and opportunities for others. That being said, trying to measure up against something like Google as an investment return, that would just make you anxious. I don’t feel very competitive with that. I just hope that I continue to do good work and contribute.
I think that’s great advice. It’s so easy to fall into the trap of benchmarking yourself against a rare one time astronomical success. It only makes you more anxious and cloud your judgement in decision making, spinning you into an uncontrolled perpetual fall downwards. The negative energy just feeds back into the system and snowballs.
I think I have fell into that trap of focusing on the wrong thing. I think the reason why I fell for that is because I am very competitive. It’s only natural that when I see someone doing better than me, that I only want to do even better–to win. I’m not a life-is-a-zero-sum game guy, but I am competitive.
I think the other reason is because sometimes I care too much about what other people think of me. And it is so easy for external parties to view you from the outside and say, “Why can’t he accomplish this feat? Someone else has already done it, and therefore it’s possible. If he can’t do it, then he must be a loser”. It’s easy to benchmark others against the best. Not so funny when others benchmark you the same way.
That’s exactly what happened in that interview. The interviewer asked Randy a question that same line of external judgement: “how do you think you are going to beat the record?” In my opinion, Randy’s answer was perfect, “Look, I know it’s difficult, but I don’t ask myself that every time I go to work, or in every investment decision I mae. I focus on what’s important really here: contributing, creating wealth and opportunities to the best I can” I think I would have bombed that test. I would have said something that displays my naivete like, “oh, that’s nothing–I’ll beat it.” Sounds Dilbert-ish.
Towards the end of the interview, Randy was asked what his recommendation was for people who starting out and looking for a profession. The interviewer asked if he would recommend his own career trajectory he took, for instance. Randy says,
You should question authority, question convention, question other people’s expectations. We live in a day and time when all things are possible for people who have the raw intelligence, energy, and dedication to reinvent things. And that includes reinventing themselves. The shame of it is when smart people conform to conventional expectations and miss out on the opportunities to live a creative life. Within that confine, almost anything can be a great profession and can be a good and purposeful life’s work. But first and foremost, it’s gotta be important to you.
Randy Komisar one of the mentors at the Stanford Technology Ventures Program.
Feb
4
Dominant Logic
Filed Under business, changing the world, did you know, poverty, startup, things to remind myself, wokai | Leave a Comment
C.K. Prahalad writes on the powers of Dominant Logic,
All of us are prisoners of our own socialization. The lenses through which we perceive the world are colored by our own ideology, experiences, and established management practices. Each one of the groups that is focused on poverty alleviation–the World Bank, rich countries providing aid, charitable organizations, national governments, and the private sector–is conditioned by its own dominant logic.
Makes sense to me. We’ve all had different paths, and each of our paths has shaped our thinking in different ways. This reminds me of something Paul Buchheit said some time ago about the limitation of our own thinking.
In his presentation at Startup School 2007, Paul reminded us that when someone tells you, “That’s impossible” it should be translated as “According to my very limed experience and narrow understanding of reality, that’s very unlikely.” Everyone continuously builds a different set of experiences in their respective lives, and therefore everyone’s understanding of reality is fundamentally different.
I covered that here. Back to the story on why for-profits are generally viewed and treated negatively in their genuine endeavors to do good (and inhibiting them from achieving real success). Prahalad continues,
The policies of the [Indian] government for the first 45 years since independence from Great Britain in 1947 were based on a set of basic assumptions. Independent India started with a deep suspicion of the private sector. The country’s interaction with the East India Company and colonialism played a major part in creating this mindset.
The dominant logic, built over 45 years, is difficult to give up for individuals, political parties, and sections of the bureaucracy. This is the reason why politicians and bureaucrats appear to be vacillating in their positions. Most thinking people know where they have to go, but letting go of their beliefs and abandoning their “zones of comfort” and familiarity are not easy
Jan
26
Entrepreneurship Week 2008
Filed Under changing the world, ideas, innovation, people i like, stanford, startup, things to ponder about | Leave a Comment
At Stanford, nonetheless. Best youtube clip I have seen all week
The star-studded cast in this short video clip includes the likes of, Tina Seelig, Ann Winblad, Steve Jurvetson, Randy Komisar, Guy Kawasaki, and many more. I had the opportunity of meeting Ann Winblad from Hummer Winblad Ventures. She’s so nice, knowledgeable, and totally driven. I like her.
I love this quote from Tina Seelig: “Entrepreneurship is an extreme sport. You gotta get out and do it!” Maybe that’s why I have a thing for this!
Tina’s voice sounds familiar to me although I’ve never met her. That’s because her talk at STVP is one of my favourite that I listen to over and over from time to time. Tina is awesome, I hope to meet her in person one day.
Dec
18
Interview with Max Levchin, CEO of Slide
Filed Under people i like, startup, strategy, things to remind myself | Leave a Comment
Max Levchin is someone I admire. If the name doesn’t ring a bell, he is the co-founder of Paypal that was sold to eBay for $1.5Bil.
Here are some of my key takeaways:
- As an entrepreneur, you have to learn to define yourself as someone who runs a company. You know you’re really good at that if you dont think that much about what kind of company you are running (meaning, it’s second nature to you).
- After you launch something, watch the world respond to it. If they say it is no good, you must evolve.
- You don’t wait for the market to tell you that your product or idea sucks. You keep your ears close to the ground. Sometimes you must completely your strategy. Smell the opportunity.
- On reaching out to end-users: Being active in forums and the company blog is good, but that doesn’t scale. Satisfy your early adopter (your core base), then shift to metrics. Use metrics to drive all features. It’s important to measure, interpret the information, and feed that directly into product strategy. 10% of headcount at Slide is dedicated to measuring.
- Greatest fallacy: build products for yourself. Abstract yourself out of the equation. Startup founders are smarter and crazier than the average person, you can’t use yourself as the “normal” person this product is built for. Find out who you are building it for. It’s great if you are a part of your audience, but you may not necessarily be. If you are not, you must understand the audience really well.
- At Paypal, everyone on board understood the vision, and genuinely focused on customer needs. Build value, create something people want.
I found this cool interview of him, by iinnovate. Read more about Max on the New York Times.
Nov
23
If at least one person on this life has breathed easier, ..
Filed Under changing the world, microfinance, quotes, san diego, startup, things to remind myself, wokai | Leave a Comment
And today’s quote is .. *drumroll*
To laugh often and much, to win the respect of intelligent people and the affection of children, to earn the appreciation of honest critics and endure the betrayal of false friends, to appreciate beauty, to find the best in others, to leave the world a bit better, whether by a healthy child, a garden patch… to know even one life has breathed easier because you have lived. This is to have succeeded!”
–- Ralph Waldo Emerson
And on a related quote, by an unknown author:
“Life is not measured by the number of breaths we take, but by the number of moments that take our breath away.”
Speaking of changing the world, the non-profit microfinance startup, Wokai, that I am currently assisting on a volunteer basis is having it’s inaugural meet-and-greet for the San Diego team (and anyone interested). We’re hosting it tomorrow at Roger’s place at 2pm PST. Contact me for details (I’m not going to randomly posting someone’s home address on the web!)
Nov
7
Be foolish enough to try make your dreams come true
Filed Under changing the world, innovation, passion, people i like, perseverance, quotes, stanford, startup, things to remind myself | 2 Comments
An entrepreneur is someone who dares to dream the dreams and is foolish enough to try to make those dreams come true. Innovative bottom up methods will solve problems that now seem intractable- from energy to poverty to disease. Science and technology, powered by the fuel of entrepreneurial energy, are the largest multipliers of resources we have to solve our many social problems.
– Vinod Khosla, founding CEO of Sun Microsystems, former partner at Kleiner, Perkins, Caufield & Byers, partner at Khosla Ventures
An interview of Vinod, from iinovate. I found this podcast by accident from browsing the iTunes store after purchasing my new iPod nano. I’m impressed by it, and I love having access to the audio and video podcasts on the go. It’s like having a small TV on demand wherever I go. Do watch the video clip below, and visit iinovate
Here are some of my notes that to me are the key takeaways:
Read more
Sep
9
Change the world! (with a non-profit microfinance startup)
Filed Under changing the world, microfinance, poverty, san diego, startup, wokai | 4 Comments
I’ve just got back to town from LA (that’s Los Angeles, not Louisiana’s state code — I’ve had someone mix the two up before), and I’m catching up on a couple of things, hence my inability to post to this blog as frequent as I would like. I’ve also been busy shopping for schtuff for my upcoming Europe get-lost-and-sleep-in-an-alley backpacking trip, what a learning experience, but that’s a talk for another time.
In the mean time, I haven’t mentioned this before here, but I am helping out with a non-profit microfinance startup based in Beijing, whose goal is to reduce poverty in China. Currently, I’m seeking for volunteers in San Diego. This is a great way to gain some experience! I’ve just posted an ad on sandiego.craigslist, so I thought I’d cross post here too.
Wokai is a nonprofit organization working to build the microfinance sector in China. We envision a China in which no individual is denied choices and opportunities due to the inaccessibility of financial capital. Our mission is to enable Chinese microentrepreneurs to lift themselves from poverty.
We are looking for dedicated, passionate volunteers to help with our PR efforts. If you are interested in learning about microfinance and gaining experience in the nonprofit sector, please contact me
Aug
26
Holding a program in your head
Filed Under engineering, hacks, ideas, innovation, project management, self improvement, stanford, startup, things to ponder about | Leave a Comment
Here’s some good advice from Paul Graham writes about good practices that any good programmer can relate to.
-
Avoid distractions. Distractions are bad for many types of work, but especially bad for programming, because programmers tend to operate at the limit of the detail they can handle.
The danger of a distraction depends not on how long it is, but on how much it scrambles your brain. A programmer can leave the office and go and get a sandwich without losing the code in his head. But the wrong kind of interruption can wipe your brain in 30 seconds.
Oddly enough, scheduled distractions may be worse than unscheduled ones. If you know you have a meeting in an hour, you don’t even start working on something hard. - Work in long stretches. Since there’s a fixed cost each time you start working on a program, it’s more efficient to work in a few long sessions than many short ones. There will of course come a point where you get stupid because you’re tired. This varies from person to person. I’ve heard of people hacking for 36 hours straight, but the most I’ve ever been able to manage is about 18, and I work best in chunks of no more than 12.
The optimum is not the limit you can physically endure. There’s an advantage as well as a cost of breaking up a project. Sometimes when you return to a problem after a rest, you find your unconscious mind has left an answer waiting for you. -
Use succinct languages. More powerful programming languages make programs shorter. And programmers seem to think of programs at least partially in the language they’re using to write them. The more succinct the language, the shorter the program, and the easier it is to load and keep in your head.
You can magnify the effect of a powerful language by using a style called bottom-up programming, where you write programs in multiple layers, the lower ones acting as programming languages for those above. If you do this right, you only have to keep the topmost layer in your head. - Keep rewriting your program. Rewriting a program often yields a cleaner design. But it would have advantages even if it didn’t: you have to understand a program completely to rewrite it, so there is no better way to get one loaded into your head.
- Write rereadable code. All programmers know it’s good to write readable code. But you yourself are the most important reader. Especially in the beginning; a prototype is a conversation with yourself. And when writing for yourself you have different priorities. If you’re writing for other people, you may not want to make code too dense. Some parts of a program may be easiest to to read if you spread things out, like an introductory textbook. Whereas if you’re writing code to make it easy to reload into your head, it may be best to go for brevity.
- Work in small groups. When you manipulate a program in your head, your vision tends to stop at the edge of the code you own. Other parts you don’t understand as well, and more importantly, can’t take liberties with. So the smaller the number of programmers, the more completely a project can mutate. If there’s just one programmer, as there often is at first, you can do all-encompassing redesigns.
-
Don’t have multiple people editing the same piece of code. You never understand other people’s code as well as your own. No matter how thoroughly you’ve read it, you’ve only read it, not written it. So if a piece of code is written by multiple authors, none of them understand it as well as a single author would.
And of course you can’t safely redesign something other people are working on. It’s not just that you’d have to ask permission. You don’t even let yourself think of such things. Redesigning code with several authors is like changing laws; redesigning code you alone control is like seeing the other interpretation of an ambiguous image.
If you want to put several people to work on a project, divide it into components and give each to one person. - Start small. A program gets easier to hold in your head as you become familiar with it. You can start to treat parts as black boxes once you feel confident you’ve fully explored them. But when you first start working on a project, you’re forced to see everything. If you start with too big a problem, you may never quite be able to encompass it. So if you need to write a big, complex program, the best way to begin may not be to write a spec for it, but to write a prototype that solves a subset of the problem. Whatever the advantages of planning, they’re often outweighed by the advantages of being able to keep a program in your head.
Disclosure: Paul Graham runs the Y Combinator Startup School held annually at Stanford, so he does have a vested interest in helping startups succeed.
Now that I’ve got that upfront disclosure out of the way, I want to include Paul’s two observations which I agree with, simply because I feel what he says is true.
On why single solo great programmers are productive and get great products out the door,
It’s striking how often programmers manage to hit all eight points by accident. Someone has an idea for a new project, but because it’s not officially sanctioned, he has to do it in off hours—which turn out to be more productive because there are no distractions. Driven by his enthusiasm for the new project he works on it for many hours at a stretch. Because it’s initially just an experiment, instead of a “production” language he uses a mere “scripting” language—which is in fact far more powerful.
He completely rewrites the program several times; that wouldn’t be justifiable for an official project, but this is a labor of love and he wants it to be perfect. And since no one is going to see it except him, he omits any comments except the note-to-self variety. He works in a small group perforce, because he either hasn’t told anyone else about the idea yet, or it seems so unpromising that no one else is allowed to work on it. Even if there is a group, they couldn’t have multiple people editing the same code, because it changes too fast for that to be possible. And the project starts small because the idea is small at first; he just has some cool hack he wants to try out.
On why large software companies sometimes don’t realize that they work against these good practices for programmers,
Even more striking are the number of officially sanctioned projects that manage to do all eight things wrong. In fact, if you look at the way software gets written in most organizations, it’s almost as if they were deliberately trying to do things wrong. In a sense, they are. One of the defining qualities of organizations since there have been such a thing is to treat individuals as interchangeable parts. This works well for more parallelizable tasks, like fighting wars. For most of history a well-drilled army of professional soldiers could be counted on to beat an army of individual warriors, no matter how valorous. But having ideas is not very parallelizable. And that’s what programs are: ideas.
It’s not merely true that organizations dislike the idea of depending on individual genius, it’s a tautology. It’s part of the definition of an organization not to. Of our current concept of an organization, at least.
He then concludes,
Perhaps the optimal solution is for big companies not even to try to develop ideas in house, but simply to buy them. But regardless of what the solution turns out to be, the first step is to realize there’s a problem. There is a contradiction in the very phrase “software company.” The two words are pulling in opposite directions. Any good programmer in a large organization is going to be at odds with it, because organizations are designed to prevent what programmers strive for.
There is some truth to that. Established software companies have their own marketing departments. However, they sometimes tap outside marketing firms for help in their programs. Some things are just better when produced outside of the company. Are ideas and rapid-prototype software development one of them?
Aug
25
Value creation by opportunity cost
Filed Under business, ideas, innovation, startup, strategy, technology, things to ponder about | Leave a Comment
I was thinking about Tivo earlier. While it’s no rocket science product, it certain has become a common standard in households in the US now. In fact, Tivo has achieved the status of Google in the sense that people now use it as a verb. How many times have you heard, “I tivo’d that show”, “I will tivo that movie tonight”, “wanna come over, I have that game tivo’d”?
Anyway, I just thought it was interesting to note that one of the ways Tivo creates value for its users, is by reducing/eliminating the opportunity cost for its users. Opportunity cost or economic cost, is the cost of something in terms of an opportunity forgone (and the benefits which could be received from that opportunity), or the most valuable forgone alternative (or highest-valued option forgone), i.e. the second best alternative.
For instance, if there were two shows on two different channels that will show at the exact same time. If you only had one TV, you must pick only 1 show to watch. Even if you had 2 TV’s, you can’t really watch both at the same time. So in the pre-Tivo and DVR days, you would pick the show you liked better. The opportunity cost for viewers would be that other show that they unfortunately could not watch. Tivo fixed that. And good for them, because this is a pain that customers were willing to pay in order to get rid of. Just as a contrast, there are plenty of problems that aren’t painful enough such that customers aren’t willing to pay for a solution.
I like problem solving, and am on the lookout for interesting ways to create value. This is one way, so from now on, I will keep my eyes peeled for opportunity cost problems that can be solved.
Jul
10
Meeting resistance is a good thing
Filed Under passion, quotes, self improvement, startup, things to remind myself | Leave a Comment
As you go along your own road in life, you will, if you aim high enough, also meet resistance, for as Robert Kennedy once said, “if there’s nobody in your way, it’s because you’re not going anywhere.” But no matter how tough the opposition may seem, have courage still–and persevere.
– Secretary of State Madeleine K. Albright, at a commencement address
This quote is similar to the saying, “If you say you have no competitors, that means nobody is stupid enough to want to do what it is you’re trying to do”. If you’re doing something of value, you _will_ meet competitors.
May
21
Are you doing much?
Filed Under passion, quotes, startup | Leave a Comment
If you are not criticized, you may not be doing much.
– Donald H. Rumsfeld, US Secretary of Defense
No pain no gain, no risk no reward.
Update 5/22/2007: MSN Money: The rich have money — and passion
According to The Harrison Group, a research and marketing firm, the people who amassed those fortunes are primarily entrepreneurs — risk takers for whom wealth is a byproduct of pursuing their passion.
More than luck is involved:
One might think that good fortune would play a role, but even luck is largely a matter of one’s own making. Psychologist Richard Wiseman has found that people who describe themselves as lucky share common habits that account for their success: They’re friendly and fond of new experiences, traits that put them on a collision course with new opportunities. In addition, “lucky” folks simply have higher expectations of success — they’re too pigheadedly optimistic to heed the long odds and call it quits.
Not to say that getting rich is simply a matter of having a swell attitude. The path to riches usually involves the kind of risk that would make most people feel a little queasy.
Passion is the driver:
When Frank Darras graduated from law school, all he wanted in terms of material wealth was a middle-class life for his wife and kids. But while working as a doctor’s assistant to put himself through school, he developed a burning desire to help the folks he saw struggling with unpaid insurance claims.
“It was the David-and-Goliath aspect that attracted me more than anything,” says the Ontario, Calif., attorney. Once he had his degree, Darras was like a cruise missile aimed at the insurance industry. By 1990, Darras had his first million-dollar year, and today he oversees one of the nation’s largest disability- and long-term-care practices. “I never thought I’d make $5 million in two lifetimes,” he says. “I just loved the work.”
May
20
If you are in San Diego, come hang out with us at the local Open Coffee Club. We meet every Friday at lunch. Click here for more event details, the event page itself is hosted by a San Diego startup
From opencoffeeclub.org,
The OpenCoffee Club was started to encourage entrepreneurs, developers and investors to organise real-world informal meetups to chat, network and grow. Read the blog post that started the ball rolling. This is the online complement to that offline network. Meet people, find out what’s going on nearby you and then go and take part.
Apr
29
Why limit your own thinking?
Filed Under goal setting, google, innovation, passion, people i like, quotes, self improvement, startup, things to ponder about, things to remind myself | 1 Comment
Paul Buchheit brings up a very valid point about visionary super-achievers, that when it comes to possibilities–it’s not about belief but disbelief.
If you think about it, a vision is by definition, something that is a little farther ahead than the current state of things. It wouldn’t be a vision if it was already achieved, would it? By the same token, if a vision is too far fetched, would we label the person championing it as a psychopath who doesn’t understand reality?
I think the important lesson to be learned here is that when imagining the world of possibilities, as long as you ground yourself in reality, do not fear society disbelieving you. Let’s look at the opposite case: If everyone absolutely believes your vision in its entirety — wouldn’t that just really indicate that your vision isn’t really that visionary after all? At the very minimum, a vision would require a small leap of faith. Leap of faith equals risk, and we all know risk is proportional to reward.
Holding back when imagining the world of possibilities while in search for a solution to a problem is counter-productive, you’re just fighting this internal battle — and the only person that really loses is yourself. I have felt like that at times, and now when I notice myself running in such loops, I quickly disengage from such irrational fears.
In his presentation at Startup School 2007, Paul reminded us that when someone tells you, “That’s impossible” it should be translated as “According to my very limed experience and narrow understanding of reality, that’s very unlikely.” Everyone continuously builds a different set of experiences in their respective lives, and therefore everyone’s understanding of reality is fundamentally different.
Reality is larger than we can possibly comprehend. Are you certain of something? If so, is it possible that you aren’t seeing the big picture? Perhaps you would change your mind if your understanding were a little broader. Maybe invention is a simple matter of observing what has always existed, and change happens when you notice parts of your self that were there all along.
I met Paul last year at Stanford. Paul is Google employee #23, and among other things, creator of Gmail, and the “Don’t be evil” motto.
Maybe big ideas are only impractical for those who lack vision and imagination.
Nov
20
What will happen if you try and do not succeed?
Filed Under business, career, innovation, passion, quotes, self improvement, startup | Leave a Comment
For some reason, many times I catch myself not taking an action for fear that I might not get what I want, for fear of being rejected or laughed at. Then, I fail because of my inaction, rather than action. It happens over and over. So therefore, sometimes I find it extremely beneficial to couch the projected end result in terms of complete total failure (as in, the mission was not accomplished).
I ask myself “Seriously, if I failed miserably at this, how bad can it be?”. More often than not, the answer is “I will still have my arms and legs”. So it’s really not that bad at all. And I go do it. And if I do fail, I will have no regrets because I failed by action, and not inaction. Yes, I’m a person of action. I will not look back and say, “See, you shouldn’t even have tried”.
At my hockey practice with my buddies, we usually cheer when one of us fall and crash hard on the ice during practice. It’s actually pretty funny, because someone usually yells “.. AND HE’S OK!!” (insert scene from Austin Powers where mini-me falls and then gets up OK) It’s our way of reminding each other that “Hey, you did good, and you are learning! Keep on doing it!” And the truth is, when learning to skate, if you aren’t falling, then you’re not trying hard enough. I have completely let go of the notion of “not crashing”.
I’m going for breakthrough improvements. Little incremental improvements over time are ok, but not fast enough for my tastes
When I’m passionate about something, I push myself to attempt something that scares me, which usually result in me falling down. Fail fast, recover fast. No pain no gain (yes, that was a complimentary worn out cliché).
And with a mentality like that, I admire those _still_ around me. Thank you for putting up with me, and helping me in one form or another, with your words of wisdom. For those those who didn’t like or agree with the way I see things, I’m glad we parted ways because I am a product of the people around me and I too, wouldn’t want to be around birds from a different flock! Not to say that I’m always right, but I acknowledge my mistakes (and attempt corrective measures) when they are pointed out to me.
No one wants to fall short or be laughed at. What will happen to you if you try and do not succeed? The same thing that has happened to pretty much every successful person in history. You will get up and try again. Then you will probably fail again at some point in the future, yet continue to persist through setbacks. Every failure offers valuable lessons that you can’t learn any other way.
– Dave Lorenzo, author of Career Intensity




