The first time I tackled on the project of life was during high school, when I decided to quit Computer Science. I was frustrated by those surrounded me, who cared about U.S News & Report college rankings than the possibility of the subjects that we were learning then. Too often, we talked about too a bland thing - maybe we were all not-so-very-daring, conversations centered around homeworks, college, computer games and sports, and not upon the philosophy or the very core of human affinity for another that I was searching for. I felt that I was isolated from the mainstream society - like Bobby Fischer tinkering on an abstract chessboard in his head - what's the point if there's no one who could appreciate the beauty of the algorithm as you do?
So I went to a small, non-technical, liberal artsy college, bent on starting afresh. For the first two years of college, I tried to meet as many interesting people as I could, people, for a lack of a better phrase and to plagiarize Jack Kerouac, burn, burn, burn. So I went to hipster parties, concerts, and have had many a late-night conversation with someone, I meshed in the "social scene" of college, I had made lots of friends - I have met a few amazing people whom I could relate closet ever in my life. I daresay that I felt even happy for a time-being, except not. It was like a second language to me. I was fluent in the social subtleties, what to say at what time, but I said it like I was in a sheep's clothing - like I was LAMP developer forced to use .net tools for money. I hated that I couldn't be my true self, that I had to dress a certain way, that I had to have a specific set of approved outlooks and opinions, that I had to attend or do certain activities identified with a sub-culture, just to fit in.
So I decided to start all over again, and start programming again. I re-discovered the joy of striking it on your own, building something concrete out of just a trace of inspiration in your mind, a itch that you just wana scratch, doing it because you want to do it, not to placate anyone else. But at the same time, I alienated myself from all of my friends - in my cocoon of midnight bliss of hacking, I could care less about the everyday social small talk BS or superficial parties filled with even more superficial people. But always, after finishing a big project, I would hit a wall because after initial ecstasy, because I realize that I had been staying in my room for a whole week straight and haven't had talked to anyone for a long time.
I realize that my little tirade sounds a little bit like "Catcher in the Rye," the CS major edition. But I would like to know your experience as a hacker/programmer living in the real world filled not with news.yc/slashdot people, but with regular people.
In the hack of life for happiness, in the long-run is it about the people or the code?
I'm just kidding. This argument is getting ridiculous.
I went to San Francisco State and got my degree in film. Now I'm coding AS3 and RoR and doing UI design at a web startup. I discovered at some point after I graduated that a hobby is not the same as a passion - I like movies, but I love making cool things. I didn't have enough passion for movies to actually stick with the process of making one... nor did I love movies enough to be willing to work for other people doing insignificant tasks for free (or pizza) for three years to build a reputation... So I started going to events, meeting people, and reading everything I could about business, communication, technology, innovation, etc.
Right now, I have a great job building cool things. I come in whenever I want, I work roughly as many hours as I think I should, and then I leave. Some weeknights I go out, either with friends or my girlfriend, and weekends I try to stay away from all forms of work as much as possible. This balance works out pretty well - I feel like I'm accomplishing a lot and working towards a big goal at work, and yet I feel like I still have a social live and am, you know, "living". On Monday mornings I do not dread going into work. I feel refreshed and ready to tackle new problems.
So... your rant does sound like a Catcher in the Rye variation. It also sounds like stuff I used to write - usually completely privately, occasionally to friends - about my own life.
It's never about "code". And it's not about "people". It's about balancing the pursuit of your ambitions and the pursuit of gaining life experience. For some people, whose ambitions involve climbing mountains and/or starting a family, those two things are one in the same. For most of us, they're not. So you have to separate yourself from work so you can keep in touch with life.
And then, if your job does not fit with your ambitions, do it well enough not to get fired :)
If you're driven enough to apply to YC, and you were good enough to qualify for an interview, you've got something going. Don't give up on your ambitions just because you think other people are having more fun than you.
Also, btw, it takes a lot of guts to admit that you used to too write "Catcher in the Rye" stuff that I just wrote now, ;-).
Almost everyone feels like this at least some of the time.
I know it sucks to hear this, but I get the impression you're probably younger than I am, and a lot of this uncertainty can only be sorted out with time, age, experience, etc.
Maybe a few more failures, too. It took some really annoying stuff happening for me to get completely out of film stuff (and music stuff too - I used to be really involved in local music)... and it was incredibly liberating.
One of the big things that got me going in my current direction was the book The Art of Innovation. That may only be inspiration for people into product design, UI, etc. (like me) and not necessarily for CS nerds... just a suggestion.
I also tried the "hide your inner geek" thing, but in the end I seem to do better socially when I'm open about my interests (although I did lose a few people that I was friends with only on the base of common partying and clubbing interests).
The reason is simple - being an entrepreneurial programmer is one very distinguishable feature about you, especially in liberal art schools. If you look around you'll see that most people your age don't have something very unique about them.
For example, I only told a few friends about my startup, but the word spread out quite quickly and everyone is excited about it, calling me to check how things are going, etc. Somebody else got that McKinsey job, which is also cool, but that's not what people are talking about over drinks at the bar.
I am also staying in Boston (near Beacon Hill) for the summer, and slightly off topic but not really, what are the cool stuff that hackers could do in Boston?
Also, YC is obviously in town, so find somebody who'll get you in on a few of the dinners and you get the speeches for free. :)
Does the choice have to be so binary? People or code? News.yc/slashdot people or regular people?
I program, but I don't filter my relationships through this one fact. I am who I am, I get along great with some people and can't stand other people. It doesn't have to be much more complicated than that.
I come at this from the other perspective. I was a business guy who has learnt some hacking and got into the whole startup thing about 2 or so years ago. Nearly all my friends are non-hackers, they laugh at me when i receive tweets and think I am crazy and raise eyebrows when I make some programming joke.
But you know what, underneath it all they kind of envy me because I have a palpable passion which many of them lack. They see that for me, life is not something you endure its something you enjoy. I have recently made more hacker friends and have great conversations with them...
But ultimately the people i get on best with are the entrepreneurial types. They can be selling lemonade on the road or trying to do the next big web thing, they dont have to be hackers and so i would suggest you broaden your pallet. Look for those kind of people.
Mix and match and you will be happy. I am sure u can have friends who have little interest in internet startups but still get on well with. I just hope u have something more to you than internet startups.
Anyway, I think that in the long run it's about the people. But I faced pretty much the same choice as you as a college senior. I thought about it a lot and decided that when I was old and gray, I wouldn't be happy unless I'd at least tried and saw what I could do if I concentrated fully on hacking. If it didn't amount to anything, then fine, at least I gave it an honest go and had a sense of my own limits. But I'd much rather do that then always wonder what I could've done, maybe.
So I figure I'll keep this up until I'm 30. If I succeed, great. If I don't, I can have a normal, fulfilled life, surrounded by interesting people, and I'll have full knowledge of what I'm passing up. The twenties are kinda a professional wasteland anyway, when nobody really knows who they are or what they want to do with their life.
Can I quote you at my hedge fund interview this week? ;-)
(BTW, most of my hedge fund friends are quite happy with their lives. They work fairly normal 9-5 hours, take awesome vacations, and make insane amounts of money.)
I too went to an "artsy liberal arts college". I majored in English for about 3 weeks. Then it was math forever. I was also fortunate enough to join a social fraternity and had the time of my life (not just the parties, but all of it including managing a small "business").
Upon graduation, I had 2 choices: continue on to pursue my PhD in math or get my MBA and go into IT. As much as I loved math, it was an easy choice because I had already discovered the answer to your question by then. It's both, but mainly the people. A career in IT has given me ample doses of both and I've never looked back. I was always afraid that if I had continued in math I may have become a recluse again.
I love hacking into the wee hours of the night. It's so cool making something out of nothing that only another hacker soul could understand. Sounds like you do.
But just as much, I enjoy sharing my code and seeing people use it. Sometimes when I write something particularly cool, I find myself thinking something like, "I bet Jane will love this!"
Here's another question in response to your original question:
If your write the coolest app in the forest and no one ever uses it, does it make a sound?
One day, the apprentice startup wanabe asked the master hacker, "does a dog have true hacker-nature or not?"
The master hacker replied, "woof!"
Look everyone wants to be loved. There is nothing wrong with that and it is perfectly natural. But you gotta love yourself first, or the rest of the stuff is going to feel empty.
So what I am saying is -- are you doing what you are doing because YOU love it, or because you think you can get other people to love you by doing it? Did you go to concerts and parties because you liked the music and the beer, or did you go because you wanted people to think you are cool for going? Do you want to start coding again because you love the joy of creation, because you love discovering the elegance in ideas, or are you doing it because you weren't able to be accepted by "mainstream" society and you are now trying to get approval again from a different group?
Sure enough you'll have the motivation to work on something again, maybe big, maybe small. People aren't built for leisure, but enjoyable work.
But seriously, I see what you are saying. I have always been a all-or-nothing kind of person, but maybe I should actually try this work-life balance thing that I have been hearing about.
For example "alienate my friends" gives a compile error: if they are really your friends, being a reclusive from time to time wouldn't alienate them.
I have some friends from the arts scene, and my impression is that they are under a lot of pressure to be special and artsy. What made you think that they would be closer to life than hackers? At least hackers create something real, whereas most art is entirely virtual (in the eye of the beholder).
If you are doing something truly cutting edge, it will probably always be a lonely affair. Just try to find the right balance? You might also enjoy this letter from feynman to wolfram: http://elzr.com/posts/wolfram-feynman
Personally, I guess I am already spoiled by my involvement with computers. To me, people are "just" algorithms that run for a short amount of time, similar to threads in a computer system. In the long term, individual experiences don't matter much. In that sense, mathematics seem way more important to me than daily human struggles. A new mathematical formula could live for thousands of years. I am not sure about computer programs, but perhaps the same goes for some of them. Certainly they can outlive their creators.
I am not saying that daily human life is pointless (who is to judge)? I care about my people's happiness, too (including my own). I compromise to be reasonably popular (ie I invest time in buying nice clothes). But when I really think about it, mathematics seems so much more important and interesting.
Also, there might be environments that are more suited to you (or me). I imagined some universities to be like that, but it is hard or impossible to get into there (for example complex systems research in Santa Fe, or ycombinator). Trying to find the peer group where you really belong might be the ticket nevertheless. I am not sure how to do it, but just because neither the artsy people nor the hardcore hackers are for you, doesn't mean that there is no other group that would be suitable.
In a subtle way I guess I've been like you, neglected social aspects and focused on my business to the point where I only have a few firm friends. Life is still not, however, "about" them. Life is about doing what I want to do, but ultimately my wife, my (forthcoming) kid, and to a lesser extent, my parents.
The trick in life, I'm finding, is to still have respect for people, try hard, and be able to support yourself while you nurture the things you appreciate most. For me, that'll be my ambitions and my family. Friends will be a bonus. For you, perhaps, it's programming for now, and family later. Go with what feels "nice."
I hang around with a diverse group of friends. I find that the more interests I pursue (improv comedy, entrepreneurship, triathlons) the more people you meet. Some of them shape your life view; others are merely acquaintances. I am always shocked to learn again that some people don't think obsessively and analyze everything (a.k.a. analysis paralysis née nice guy née loner). One positive aspect of being able to dive into coding is that you can always exercise your creative mind and feel good, without relying on other people.
Life is not a measure of its longevity, but its complexity.
Happiness is as happiness does. Be happy with yourself. Everything else in life follows from that.
Sure, a week of coding without peeking your head out of your room isn't a bad thing per-se but balance that with some socialization the next week. Things tend to run in seasons and cycles for people like us who can get lost in our current obsession. I think it's ok to dive into a mad rush to finish a project or an idea, just be intentional about pulling back and balancing that out with broader things when you are done.
I tend to find that reminding myself to try and focus on meeting somebody else's need allows me to enjoy social occasions more, as odd as that sounds. Letting somebody else complain to me about their week for 15 minutes might not be all that interesting but being able to serve somebody else in that way can actually be very fulfilling and as a whole, looking at social interactions from that perspective can give you a whole new outlook on things. (again, within balance)
Here's the secret: It is about the people; just not all the people, but a select few. Who those people are and how they relate to you is something that you need to discover on your own, however.
You are really looking to figure out who you are and what you care about in life. And this is not a simple answer. People usually have many parts/areas of their "self" that they need to define as time flows on. Some of areas include spirituality, profession, service, fitness, family, etc.
You have to decide what areas of your life are important to you and from there, decide if the current state of those areas are what you'd like. If not, you need to work on that area. You don't need a life revolution even though it may feel like it. You need evolution. Keep parts of your self that you like. Reinvent the rest.
Reminds me of a quote that goes something like this: "Life is like a movie... You can either play an 'extra' in your life... or you can be the lead character."
I know you're getting at something, but don't frame it so rigidly, so early.
I struggle with the exact same thing, day in and day out. I have an 8 hour job, which after I'm done with, go and work like a mad man on my startup, coding away, brainstorming. I don't call people if I don't have to because, deep down I have this almost insatiable itch to start a company and be my own boss, work my own hours, be excited about what I do everyday, have more open doors... The list is almost endless and the fact that I could one day have all those things drives me to work even harder.
Alas, attention always needs to be given to family, friends and YOURSELF. Otherwise you'll break down. You'll go crazy. You'll screw-up your relationships and damage your health. Simply put, in the end, you are just gonna be plain unhappy.
It might take years to balance out but the balance must exist. I've done the geek thing and I've done the social thing. They are both interesting for a while but I always seem to eventually shift back to the center.
In time you will find your own path and there is more to life than many introverted scenes we often find ourselves in. Expose yourself to a broad range of things and hopefully this will lead to balance and perspective in life. Involve yourself in just one area too much and although it can lead to great things often it is at the social cost and danger of becoming too introverted. Just my $0.02. :)
the rest are just mindless zombies doing the 9-5 grind just trying to procreate.
Do what you love, worry about the rest later - it's all insignificant in the end, if you ever doubt that, just look up at the sky at night and realize the scale in which your perceived problems reside in.
You cannot have code without people, so understand the people (hint: start with yourself, you'll realize you are very much like "other people"; gulp this, you will uncover more about anything)!
You don't have to hang out with the kind of people who go to "hipster parties and concerts."
Follow the smarts. Smart people, smart ideas... smart code.
If you're asking, do you follow a path in life to make money off of code or socializing with people, why not do both? Be a manager, technical writer, or UI specialist.
you should give it a shot, you have till the 15th of may to apply.
make sure to stay physically fit. learning physical balance can help your life balance. try slacklining.
programming is very brain-intensive. make sure to give your body its due, too. the rest will fall into place over time.
You're sickeningly young (from the point of view of someone who's 31 soon), and you have all the time in the world.
Heck, even I still have a twinkle of hope of making something worthwhile out of my life.
At any given moment in time, just do what you feel like doing - especially in your case, where anything you feel like doing is likely to be productive/useful anyway.
As others have quoted all kinds of important people too, here's mine:
"Don't worry - be happy" (Bobby McFerrin)
:)