Climbing the wrong hill (2009)
cdixon.org
cdixon.org
The people whom cdixon talks to that say they want to be '"working at or founding a startup"' are lying. They are lying to themselves first and foremost and only secondarily to cdixon. Their actions speak much louder than those words. Those actions say that they want to safety and security of the job that they don't enjoy rather than the risk and uncertainty of a startup.
I think it's quite possible to have both. Have a full time job, work on a side project, and if it becomes successful enough to quit your full time job, then do so. Startup without the uncertainty!
Granted, now you've pushed the odds of your startup failing from 95% to perhaps 98% (since you're not devoting all of your time to it), but what do a few percentage points matter at that level anyway? Replacing a 5% chance of winning the lottery with a 2% chance doesn't mean you should no longer play (especially since you've eliminated the stress of potentially starving).
I have to imagine the failure rate of pushing a product that people don't need would be high, and the ability to support a product that they do need would not be compatible with the side-project concept. Am I wrong in thinking this?
However, if you build software for doctors that avoids the regulatory compliance problems, then get it expanded out to 14 hospitals, then raise, then have staff, you can then go back and do that HIPAA compliant SAAS solution that you initially wanted to. Which pretty much describes my path over the last 3 years
If you were able to dodge that, then, salute!
EDIT: And, I will admit, there has been an amount of conflation of the term 'side-project', and 'startup' and 'mvp' and 'project' and 'product' over the (esp. last two) years that confuses me from time to time. I often lose the thread on context. My apologies if my comments reflect my lack of appropriate modern contextual understanding.
If you stay at the bank, or at a nice job, you're almost guaranteed to continue that gradient ascent. It's not the case with a startup; it's not as simple as deciding to do it, having to deal with a local minimum, and then continuing upwards.
Many want to be at the top of the hill. Few want to take the risk of actually climbing it.
As much as I don't wish for another down-turn, I will admit that it washes out the gold-diggers, the frauds and the wantapreneurs.
> How can smart, ambitious people stay working in an area where they have no long term ambitions? I think a good analogy for the mistake they are making can be found in computer science.
It's as if being an entrepreneur is the end-all, be-all of all careers. It's hard work. It's riddled with failure. It's not for everybody.
In addition, the algorithm that the author attempts to describe is called Simulated Annealing: https://en.wikipedia.org/wiki/Simulated_annealing
EDIT: Almost all multi-agent exploratory algorithms have these characteristics: evolution, free-market capitalism.
And we all (as the species, as the beneficiaries of the system) benefit, even if 10M sperm died to give us 1K eggs to give us 1 living turtle to get back to the beach to re-spawn. The species will live. The ecosystem will adapt and thrive -- but it is very wasteful in terms of point-probes on the multi-dimensional problem space. 1K:1 or 1M:1 die, to have the one survive, because it found the niche in the problem space. That's all fine and dandy until we realize that each of us are the point-probes. We think that we are better than that. Well, maybe we are. In 1000 years, they will look back and see.
EDIT2: > It's as if being an entrepreneur is the end-all, be-all of all careers. It's hard work. It's riddled with failure. It's not for everybody.
Well, for the system, it's great. The system searches for it's maximum potential. For the entrepreneur, he's just a point-sample (in one algorithm), or a geodesic field in yours. These things are tried and tossed away as if they are trash if they don't "fit".
Nothing wrong with that ... it's as if the universe is using the human geoplex as a hive-mind to achieve something greater. But, we, as individuals, might have opinions about how we want to be treated as agents of this algorithm.
EDIT: I'm simply saying that saying: "I told you so!" 25+ years later doesn't get me my life or my wife back. I was a misplaced, from my agent-centric-point-of-view, sample. If I could only learn to lean back and give it up for England. (just kidding)
And the last one i thought was a nod to genetic programming.: https://en.wikipedia.org/wiki/Genetic_programming
In my experience I've found that by thinking about what they want, a person can get a better understanding of what their choices are offering. The challenge is differentiating between 'heading to' (aspirational wants) versus 'running from' (symptomatic wants). The question the example person in Chris' article did not answer was "Do you want to do X?" (aspirational) or "Do you not want to do Y?" (symptomatic). People can spend all of their careers running away from things they don't like, that seems to leave them feeling bitter.
The nuance that I think Chris overlooks is that you can see the next hill but the valley is still full of fog, and that fog can obscure the fact that some hills have a cliff on one side of them. For example you can't just go over to the local hospital and say "Hey, I'd like to be brain surgeon! Got any openings?"
One way I've found to separate things I'm simply running away from versus things I'm trying to run toward, is that when I think I want to go to X, I start researching X and what paths lead there. Sort of like looking at people who are in the space I think I want to go and looking at the path they took there. Then trying to figure out what steps were necessary and which ones were not. To be a doctor these days you need a medical degree, its necessary, but you don't need like biology, that is helpful but not essential. If I am unwilling to take the essential steps, I have to consider that perhaps I don't really "want" what I think I want.
As a result one of the things I try to do in every place I work is 'round' myself out in some way or another. The goal is to make as many "hills" accessible as I reasonably can.
Close to maybe 90% of those people said yes.
Something closer to 5-10% of those people have ended up starting their own businesses.
Anecdotal for sure. I'd bet that it's a statistical outcome that's not too far from the average however.
They like the idea of finally being their own boss. Most people don't know very much about running a business or starting one, so they think it means immense amounts of increased freedom, to take vacations when you want to for example, or set more convenient hours for yourself.
Then any time they think about taking concrete steps on it, the reality wall hits: the risk (financial & personal) is terrifying (often for good reason). Or they're intimidated by what seems to be a very difficult process ('where do I even start?'). And then they just never do start, the idea never leaves the drawing board, where it remains a sweet fantasy.
I've found you can quickly tell whether someone has a real intention of starting the business they have an idea for, just from the vocabulary they use when discussing it. For one thing, if they're not going to, they'll immediately turn away from any encouragement toward getting started or learning more about it (no matter how small the suggested first step is); they'll shoot down conversation that veers too close to reality, preferring to keep it as that nice thought.
Polling people about such things is ridiculously unreliable. Based on a common view of owning your own business, you might as well ask people: would you like to be your own boss, get rich, set your own schedule and love what you do for a living?
They should probably be more specific and say they want to be working at or founding a successful startup though.
Life is not so simple for all of us I guess. When your earning in a corporate job is supporting your family, you can't simply dropout and start chasing a startup lottery.
Only simple minded fools or rich kids who don't have any downside will play this game indiscriminately.
Funny. I deal with startups all the time. When I ask startup employees where they want to be in 10 years they invariably say "Working for Google" or some version of "Working for someone more stable than this bag of cats". When I speak to startup founders, honestly and in private, the answer is some version of "On the other side of either and IPO/buyout". The employees look for stability, thier bosses cash.
The grass is always greener. I once worked in film/TV and everyone wants to hear the stories. They all think it was so much fun. It was hell. That glorious job is never what you think. Except fighter pilot. Every one of the dozen or so I've met live and embrace the stereotypes.
I think most people want to try the startup thing for only a few years.
Also bear in mind that the post was written in 2009. My feeling is that startups have lost a lot of allure since then and are now increasingly viewed as sweatshops where grunts work for illusory payout whereas a job at megacorp with great pay and low stress is considered a sane choice.
Starting a startup is a lot easier when you're (relatively) financially secure. There's no way I would have been able to survive the first 6 months of my startup (when I didn't have any revenue coming in) if I hadn't saved up a decent amount of cash from working elsewhere (not to mention that working for others gives you important skills). The important bit is to think about this systematically: if you're going to take a job to accumulate financial and human capital, have a plan for how long you'll work there and how much capital you need to accumulate.
Being able to found a startup on your own terms (without having to desperately find angels) is very freeing and I definitely prefer it this way. My current startup is doing much better than my last one because this time I'm not worrying about investors at all.
How much do you think is a 'good' amount to have saved up? I have a little over 6 months saved up but all the articles I read are like "You need 18 - 24 months. Minimum." which I think is complete BS, especially for a tech founder with an MVP (this isn't to say non-tech can't do it, it was more that tech people can find freelance work)
Thoughts?
Note that you can spend $8k/month or you can spend $2k/month, depending on where and how you want to live while you're founding your startup. The nominal dollar amount could be a huge range.
You could also reduce the dollar amount of savings you need by the revenue in your MVP - if you're making $1k/month on a software startup you'll probably be able to net that against your monthly spend, even if most of that $1k/month is currently going towards fixed costs. The difference between an MVP that generates revenue and one that does not is enormous.
It looks today like everybody and their dog have to make a company, but first you need to have a very strong conviction that the world needs something that you provide. Starting a company is going to be very hard at first, specially when you are trained by school that effort always rewards you with results and you need a very strong force behind you to be able to face the difficulties.
The great shock is for great students that are used to have good grades or have a great job but in real startup life they struggle. In a company they will succeed but on their own they will depress and enter a death spiral. It is hard for them, for their partners, for their parents, even for their mentors.
You need a totally different set of skills than in a normal job, like the ability to manage yourself, manage risks, made decisions,make investments, choose your people, understand markets, creativity or selling yourself in front of others.
Similarly, if you're doing startups, failure doesn't go on your permanent record and you can try again. These career fields are about choosing your priorities in life, that's how you choose one path or the other.
Assuming he only does it because he's an investor is assuming the worst. He can probably only invest in a half dozen companies per year, so encouraging everyone he meets to start companies would be a very indirect Nd unnecessary way of filling the top of that funnel.
It's up to me to learn and find a better way.
It is also good to think about alternatives to the typical startup vs corporate dilemma. For example, securing a job and working on side projects until there is a signal they can be something more.
I started a company, failed miserably, but it was easy to get a well-paying job with a salary and a lot of stock when I did. And the company I'm at now I joined long after product-market fit. I was still ahead in my career of people who were in the same place but didn't start a company. And I paid myself slightly less but still well enough to get by, so the only painful part was the transition between jobs. If you're a talented engineer you'll be just fine. I've probably had a job offer per week since then, too.
Now I've Saved up enough money, and I'll make another go. If I fail? Back to the same pretty-damn-good default position.
Your anecdotes are not an indication that the risk is overstated. Who knows what factors decreased the risk for you, and while you attribute it to 'engineering talent', it's far more likely to be something like more skill at using the network of connections you've established (most jobs are still filled this way).
Whatever that factor is, it isn't necessarily a common skill.
I ran a remote company once before. I'll never do it again.
Assuming you live in SV or NYC
"The surprising thing here is that you can safely hill climb. If you guys are programmers... What percentage of the people here are programmers? Ok, a lot of programmers, so you all know what hill climbing is. You just do this simplest growth algorithm, you just go wherever it leads up from here. And you don't plan for the future, you don't try and think about the global picture, you just think what's going to grow this week.
The surprising insight there is that that is safe to do in a startup, that you can hill climb your way into something big. It turns out the space of startup ideas--I didn't know this, this is something I learned empirically--but it turns out that there are not dangerous local maxima. You can safely hill climb without really thinking that much ahead, and you will grow. You won't even know what you'll grow into, right? Just week by week you see.
And this works for a lot of things besides starting companies too. This would work for writing. You know, you just like work on whatever interests you and every week you try and do something more interesting, and eventually you'll look back and say "Holy cow, look, we started out way down there." You know?
So who would it not work for? It's very dangerous but there are some startups where you have to go off and build something for some number of months before you can start this sort of cycle of interacting with users. Like if you want to build a new database company, you can't just like write a version 1 in a week."
It's a passage that comes to mind from time to time. I've found that it can apply outside of the startup world, too. Interesting and easy directions in research often give insights that make harder problems easier, too.
Source: http://www.bnjs.co/transcript-paul-graham-in-conversation-wi...
If you are over 30 and look 10 years ahead, it's 40 - body breaking down, retirement planning is well underway, some form of collateral, possibly a family, etc. If you're gambling on startups then, you better be damn sure it doesn't crush all the other stuff you're juggling.
Dixon's advice is misguided. He's trying to say "Don't fear starting over", which is good advice, because you will probably start over some time in your life without intending to, and it will be fine. But he's trying to make startups sound like a good idea, or "try random things" a better one.
I would not treat life like a CS problem - I would treat it like an Operations change management action. List the departments of your life that are affected by the change. List the change(s), the work needed to implement it, the expected results, a test to evaluate, and a rollback procedure. In this way you can make a risky change and understand fully what it involves, and have some plan for how to revert if things go awry. Definitely try new things, but when it comes to changes that have potentially bad side-effects, use due diligence.
The danger of a major financial disaster for a healthy and educated young person in a developed country is much lower than it seems. I know many such people that traveled across the country, some with no money or possessions to their name. None of them were broke for more than a few months, and within 6 most of them lived a similar lifestyle to the one they left behind.
The danger is much greater if you're unhealthy, uneducated, or have other liabilities, but that doesn't apply to a good portion of the HN crowd.
What a lot of people don't think about is that a true disaster will knock you out even if you have a steady job, insurance, and education. I know several people whose lives were forever changed by a lawsuit, medical bills, and health problems. These risks are barely affected by anything you can control, so in most ways it's best to just go on as if they don't exist.
I work for a big company, and am paid decently well. I'm respected, but I have impostor syndrome. I really am doing nothing other than basic business logic coding. We have good tests, but no unit tests. We're not doing what I would consider as optimal programming practices, and I have not been able to convince them to change.
Yet when I look around in my city for jobs, most are lower paid than I am. Do I take the lower pay temporarily? I worry if I stay in my current job then in another 5 years, if I lose my job, no one will hire me.
I've kind of decided to make a goal for this year: Gain enough influence in my role to change some of the mindsets (e.g. convince them to introduce unit tests). If I succeed, I will have learned valuable influencing skills. If I don't, I should just find another job.
Still, sure, push for unit tests. Be careful though because everyone has a different idea of what a good unit test pattern is. You might paint yourself into a corner where you have to have 100% code coverage measured by some tool or mgmt sneers. Or dev time goes up temporarily and everyone blames you for it. Know the end game you're pushing for. Unit testing is a means, not an ends.
While I'm at a big company, the company is not highly regarded in the software world, which is my concern. And I don't have anything to show for it other than: Coding on a 1MLoc code base, with mostly business logic. Occasionally I run across cases where knowing something is O(N^2) matters, but only occasionally.
I think a part of me just feels I should do slightly more challenging work, where either knowing algorithms well will help, or having some greater domain knowledge will help (e.g. Operating Systems, Parallel programming, graphics algorithms, embedded systems). As it is, I'm doing nothing that sets me apart.
I suppose that's why I want to go more into the "influencing" realm. I suspect employers will care more for my ability to change important architectural decisions for a team of 30+ people - without having the authority to do so (I'm not the manager and cannot dictate to people).
As for unit tests: I'm not too religious on it. I think it has value, but my experiences doing it in C++ also taught me that there are too many ways "to do it wrong" (i.e. make the code horrible) and only a few that will do it right. If I'm to convince the team to go that route, I need a way to ensure they "do it right" and not just do it any way they feel they should. My management feels the team in general doesn't have the ability to distinguish between the two and are pushing back.
The victory for me wouldn't be that the code base will have unit tests. The criterion I'm setting for myself is:
1. Can I influence enough people to make this change?
2. Can I do it in a way that is not chaotic?
I'm merely picking "unit tests" as the way to achieve those two.
Is there anything preventing you from doing this in your free or spare time? Can you help out with an open-source codebase on github, for instance, or do you have an idea for a side project you could start and contribute toward?
While it won't be something you can point to as a part of your "career", you can still leverage the experience provided its documented in some manner and you have something to show for it. Just consider it another part of your portfolio.
For instance - in the domains you mention (operating systems, parallel programming, graphics algorithms, embedded systems) - there is one area which you can play around in at home which can encompass all of them (and much, much more). That area is robotics.
For a single individual, its probably one of the most difficult domains to explore, because it literally can encompass so many sub-domains and experience levels, depending on how far you take it, and what kind of project or projects you decide to pursue. Not just on the software side, either - there'll be plenty of mucking around on the hardware side as well (you might even learn welding and CNC machining on the side - or, if you're ambitious, make your robotic project a CNC robotic welder!).
There's also the fact that having such a side project (whatever it may be) can be a way of taking off the pressure of the day-to-day work you currently do. It can serve both as a hobby and a means to learn things you don't or can't learn in your current employment. As you develop the project, be sure to keep notes, and track of what you're doing, and put that info into your resume in some manner to illustrate what you know, what you learned, challenges faced and overcome, etc.
It may ultimately lead to that better job you're envisioning. Worst case scenario, you end up learning a bunch of new skills which you can apply to future projects or a later position (or heck, maybe even your current one).
So, I wouldn't say you should take lower pay now just to get a foot in the door. But if you do get to the point where you're hitting a glass ceiling, then certainly make the jump.
That's just the financial/career perspective. As far as how much you like the job / how much you contribute, well per my experience, the grass is always greener on the other side. When you're working on something small, you have greater influence on the product but the scope of the product itself isn't so great, and vice versa with big things (though of course there are some jobs that fail on both influence and scope). But ultimately your goals there are something you have to establish for yourself.
Another option is to work in a big company. After a few years there will be nothing new for you so you can bootstrap something while still having money for... food :)
skips current hill
"I know somebody."
"Over the years, I’ve run into many prospective employees in similar situations. When I ask them a very obvious question: “What do you want to be doing in 10 years?” The answer is invariably “working at or founding a tech startup” – yet most of them decide to remain on their present path and not join a startup."
"In 10 years, I want to be working extremely hard for extremely long hours, for low pay and a miniscule chance of real reward. I want to be a share-cropper on a venture capitalist's farm. I want to have a trail of failures behind me. I want to be doing the same thing over and over, because a MVP is a MVP is a MVP. I want to be ready to pivot at any instant, because shoveling everything into the crapper is better than spending an extra minute looking at another, greener pasture."
On the other hand, "I want to be working on the most interesting problems I can find" is crappy, too.
But your next startup should not be exactly random. Like the VCs who invest, you should learn something from failure and you should have the lay of the land. If you don't, if it's a random walk again, then perhaps you don't belong in startups or in VC.
Here's another take on the same concept: https://www.edge.org/response-detail/27033
Other people's mileages may also vary.
One of the best decisions of my life.
I learned tons of stuff that I wouldn't have learned going straight back into games. Not about COBOL or accounting, but about leadership, management and understanding the balance between business and technical needs.
As a human, I have limited time and that places a huge constraint on what is feasible. Ignoring that and trying to draw parallels to algorithmic domain seems to miss out on crucial constraints.
Wrong choices. Better to stay a few years, then start your own company or consulting business.
And in my experience large corporations, are often more progressive than most startups (work from home, technical equipment, software stack, conferences....).
For example the average professional NFL player running back career length is a bit over 3 seasons. On the other hand the average lifespan in the USA is lower than real 1st world countries, at 78, but still not too bad.
So in the introduction the implication is throwing away a year of career is utterly tragic WRT "starting over" now in terms of career damage is throwing away one year like throwing away an 1/3 of their pro football running back length career or like throwing away 1/78th of their lifespan which is a rounding error?
Another way of looking at the world, is if ageism is so rampant that the dude will be permanently unemployable in the field by 30 such that throwing away one year is a substantial measurable loss, you have to consider it from a long term perspective in that a lifespan of 78 and unemployability starting at 30 means you'll live, unemployable, for nearly a half century after your career ends, half a century of wondering what would have happened if you had made that jump to try the startup. I mean, lets say due to ageism your career does end at 30, at age 55 will anything be different in your 55 year old life if you had stayed put rather than trying? So you may as well try.
You're gonna live a long time. For various macro economic reasons your career will only be a couple years. That implies you should never live to work and should only work to live. In that situation it would be foolish not to take a risk.
Extreme ageism is like terminal illness. If you know your career will be dead in five years no matter what you do for reasons way outside your control, you can complain and feel bad, or make the most of what little time you have and risk it. You're done in five years anyway no matter what, so you may as well go for it while you can.
I had no problem at all. Got on site interviews at three of the "big four", some big industrials, some smaller companies, and a couple better-than-I-expected job offers. Maybe I got lucky or maybe it's typical, but that's my one point of reference.
The org I'm in, I'd say I'm slightly older than the others at my level, but not a ton. And it seems pretty fluid, I think within 2-3 years I'll "catch up" to the level I'd have been at if I'd not taken all that time off.
I'm not going to convince a banker that -
but maybe that's why there are bankers and that's why there are people who race sailboats solo around the world.
I'm not saying it is, but the metaphor that makes the post so strong is not particularly well-grounded. Maybe we programmers tend to think about life as hill-climbing precisely because that's metaphor we often think about when solving programming problems...
Real (geologic) hills can be measured. Their dimensions and slopes are objective quantities. There is no debate about their shape.
Mr. Dixon's hills (objective functions) are the stuff of wants, dreams, and deep conjecture. Their shapes are highly subjective and highly dimensional. So much so that the 3d-terrain construct adds little to the topic – whether a gradient, simulated annealing, or any other analytic approach is employed.
To me, the article is a whimsical piece of entertainment and is not useful for even notional career planning.
I particularly like this advice.
In a big company, you are insulated against that and you only do your specific role. Startups require employees to have a much higher, cross-company view.
Second, the argument is backed up by a false analogy. The whole reason that hill climbing works, is that computers are fast. If it takes 5+ years to 'climb a hill', starting at some random point costs a lot more. Actually, it is not even clear how 'starting over at a random point' translates to real life.
Third: The point (I would say is "Try something else once in a while" - and I mostly agree with this) could be captured in a single line. The blog post is basically the blog-equivalent of a motivational picture.
This mentality is why the quality of HN went to shit.