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.
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.
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.
Nov
25
Take pride in how far you have come, and have faith in how far you can go
Filed Under fear, stanford, things to remind myself | Leave a Comment
Take pride in how far you have come, and have faith in how far you can go!
– Christian Larson
This quote here today is for a very dear friend of mine. She is very direct/honest, a meticulous planner, and she makes for a great project manager. She measures progress, foresee roadblocks (drawn from experience), and delivers a hundred and one percent, on time.
Recently, we were talking over after hearty meal, and I noticed that she was self-limiting herself inadvertently by planning too far ahead. The lesson here however, is one that many people can learn from, and I’m writing this here to remind myself of this as well. Just as I have previous written here, Vinod Khosla (famed Silicon Valley fellow) has said that he has seen so many brilliant teams limit themselves by self-imposed limitations (they couldn’t think big enough).
Not that she was narrow in thought, but sometimes I feel she plans too far ahead. Just like my dad. He plans too damn far ahead. And I know he reads this blog. Just to put things in perspective, this is a person who would literally “book” me to come over for Thanksgiving dinner a year in advance (ok, so I’m exaggerating–but I dont mind it at all actually, I was just trying to illustrate a point). Sometimes when you plan so far ahead, then you just never get anything done, period.
Read more
Nov
16
What would you die for?
Filed Under changing the world, fear, passion, quotes, stanford, things to ponder about | Leave a Comment
And even if he tries to kill you, you’ll develop the inner conviction that there are some things so dear, some things so precious, some things so eternally true, that they are worth dying for. And I submit to you that if a man has not discovered something that he will die for, he isn’t fit to live.
– Martin Luther King, Jr., Speech at the Great March on Detroit
MLK would willingly die with no regrets for a cause worth fighting for. Do you know what cause you are fighting for? What would you die for?
From the Martin Luther King, Jr. Research and Education Institute at Stanford
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
16
Veracity — being honest with yourself
Filed Under failure, fear, quotes, self improvement, stanford, things to remind myself, values | Leave a Comment
I was reading an article published by MarcumSmith and in it, I learned a word that I have not previously known about but whose meaning I am familiar with.
Veracity is the English word for the Latin term veritas, which means truth. But why not just say the word truth if that’s what they meant by choosing it to describe what they found? Truth essentially refers to facts or reality; it implies accuracy and honesty. Veracity, however, differs slightly; veracity is the habitual pursuit of, and adherence to, truth.
Veracity differs from truth in action, not in value. So why is veracity so important—who doesn’t want the truth? It’s not that people don’t want the truth, but what portion we want is occasionally a different story. What part wouldn’t we want? The part that’s hard to hear. What fraction of the truth wouldn’t we want to address? The portion that’s hard to say.
There is a point and time in almost every important business discussion where we might be curiously exploring or intensely debating, and stumble upon brutal facts. If openness and progress are the outcome of humility, and innovation is the aim of curiosity, then veracity is the light that exposes the truth hidden in the shadows of habits and comfort zones.
Admitting your own failures and shortcomings are difficult sometimes. Veracity means to be honest with yourself, acknowledging weakness so that you can move on to address them. I _do_ want people to tell me the part they think would be hard to me to hear. I _do_ want to know the truth that is hard for me to swallow. Why? Because I believe in The Stockdale Paradox, as written by Jim Collins:
Retain faith that you will prevail in the end, regardless of the difficulties; and at the same time confront the most brutal facts of your current reality, whatever they might be.
Enough said. Sweeping the dirt under the rug doesn’t mean that the dirt is gone.
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
19
Winds of Change
Filed Under changing the world, perseverance, self improvement, stanford, strategy, things to remind myself, winds of change | Leave a Comment
![]()
* Image courtesy of GIS and AOL’s CDN
Update: Welcome Carnival of Career Intensity readers! Thanks to Dave for including this post in the Labor Day carnival.
I’m adding a new category to my blog, titled “Winds of Change”. I could have just called it “Change”, but that’s no fun
(in case you want to know where I got it from, it’s a name of a song I like). Change is inevitable, and I’ve learned a great deal (and still have much to learn), about embracing change instead of fighting to defend the mediocre status quo. Carly Fiorina gave a great talk about change at Stanford 3 months ago, and why sometimes leaders get “carried out on their shields” because change is difficult! I highly recommend listening to her talk, if you don’t have time, make time, I promise you will not regret it
So without further ado, I wanted to share a good article I read about change.
Begetting Change: Same Choices, Same Results
Repeated bouts of adversity are an unavoidable aspect of human existence. We battle against our inner struggles or outer world forces, and in many cases, we emerge on the opposite side of struggle stronger and better equipped to cope with the challenges yet to come. However, we can occasionally encounter trials that seem utterly hopeless. We strike at them with all of our creativity and perseverance, hoping desperately to bring about change, only to meet with the same results as always. Our first instinct in such situations is often to push harder against the seemingly immovable obstruction before us, assuming that this time we will be met with a different outcome. But staying power and stamina net us little when the same choices consistently garner the same results. A change in perspective, behavior, or response can do so much more to help us move past points where no amount of effort seems sufficient to overcome the difficulties before us.
Whether our intention is to change ourselves or some element of the world around us, we cannot simply wish for transformation or hope that our lives will be altered through circumstance. If our patterns of thought and behavior remain unchanged, our lives will continue to unfold much as they have previously. Patterns in which fruitless efforts prevail can be overcome with self examination and courage. It is our bravery that allows us to question the choices we have made thus far and to channel our effort into innovation. Asking questions and making small adjustments to your thought processes and behaviors will help you discover what works, so you can leave that which does not work behind you. To break free from those unconscious patterns that have long held sway over your actions and reactions, you will likely have to challenge your assumptions on a most basic level. You must accept once and for all that your beliefs with regard to cause and effect may no longer be in accordance with your needs.
Stagnation is often a sign that great changes are on the horizon. Courting the change you wish to see in yourself and in the world around you is a matter of acknowledging that only change begets change. The results you so ardently want to realize are well within the realm of possibility, and you need only step away from the well-worn circular path to explore the untried paths that lie beyond it.
Great lesson here. Sometimes, brute-force techniques aren’t the most efficient way to solve a problem. It’s always best to remain open to other possible problem solving methods. Acknowledging you have made a mistake (or could have done something better) is the first step, before making incremental adjustments to your course. When you feel growth stalling, then you know you have to actively seek out change, for the same choice will return you the same results. Take charge of your destiny.
What I’ve found true for myself, if you don’t take charge of your life, others will run your life for you. It’s your own responsibility to ensure that you end up where you want to be. If you don’t like where you end up, you only have yourself to blame.


