4 ms·
Going to college is not a binary decision. There are good ways and bad ways to go to college. If you go to college the good way, it can be definitely worth it.
by lmkg 16y ago
Going to college is not a binary decision. There are good ways and bad ways to go to college. If you go to college the good way, it can be definitely worth it. It's not required, as many people here can attest to, but that doesn't mean that it's not worth the time and effort.
First, go to a college, not a university. The ideal place is a teaching college that does not focus on research and does not have grad students. They exist, and they're awesome. Ones to check out include the Claremont Colleges (disclosure: I went to HMC), Occidental, and Reed. At a small undergraduate teaching college, you are the focus of the professors, rather than a duty to be discharged with the minimum of distraction from your main focus.
Second, take advantage of that focus. Don't just go to class, do the work, take the test. Talk to the professors. Ask questions. If you don't feel challenged, ask for more advanced work. They'll always take the time if you ask them, and they'll usually be able to work something out for you. And don't just get to the level where you can do the work, get to the level where you deeply understand ("grok") the material. You're not just going to college to get a rubber stamp on a piece of paper, you're going to learn. College is the best environment for that, but it takes effort, and usually going beyond the minimum requirements.
Similarly, talk to other students. Having peers is awesome. Making connections is useful. Having a community to support you will become necessary at one point or another in your life, and college is one of the best places to start building one. Plus, learning to interact with other people in a work-related environment is critical, and this is where you learn (high school is bad at this).
There is a shitload more to learn in college than just programming. That, in itself, is one of the best reasons to go. Maths, communication, writing, public speaking, business, economics, finance, and law are all available and are all valuable. Teamwork, leadership, and responsibility are also things you can learn, even though they're not taught as such, and they're critical to getting anywhere in life.
Now, there's two possibilities. One is that you're hot shit like you think you are. The other is that you're not, and you have no fucking clue. If the latter is true, you will find out very quickly, and be glad you did. If the former is true, then getting value out of college requires a somewhat different path, albeit one you may end up wanting to walk anyways.
If you are good at CS, and still want to get a CS degree, focus your studies on areas that you don't have much experience in. Math, logic, compilers, functional programming, and systems design are areas that autodidacts such as yourself are likely to be weak in. You may not end up using any of the specific skills, but they'll make you a better programmer. Get some practice working on teams as well.
Alternatively, don't get a CS degree (or double-major). Go do something else. You don't need a CS degree to program, and having a wider breadth of knowledge can be extremely useful. The ones most closely related to CS are math, physics, and engineering. Those disciplines are always in high demand, and always have high demand for programming skill. Engineering is a useful perspective to have when coding a large system, and math skills are never wasted (they're obviously not required, but if you have those skills you will always find ways to make use of them).
Alternatively, take something totally unrelated. Business and communications will help if you want to make a startup (if you take relevant classes, not requirements). If you don't major in them, still take a few classes, especially public speaking/presentation classes. You could even take up something like, say, basket weaving, and then you'll be one of the very few good programmers who understands basket-weaving, and your domain knowledge will give your basket-weaving-web-startup the ability to efficiently fill a need no one else even knew existed. I don't even know what a basket weaving startup would be, but that's sort of the point--you could be the first to figure that out.
Finally, college is a place where you can experiment, take risks, and make mistakes. Spend your summers in internships or work-placement programs in various verticals and types of companies, to see if that's what you want to do. Do some research, to find if it's interesting. Take a chemistry or a theater class, maybe you'll find a passion (most people I know, their favorite class was not in their major). Pull all-nighters (studying or Halo) just to find out if you can take it. Get shit-faced drunk. Get a girlfriend (or boyfriend).
And if you don't find it's worth it after two years, drop out and do something else.
- bendmorris 16y agoWhy avoid research? Probably better to go to a big school, and get involved in research. Actively participating in research gives you a much better education than just going to classes, IMO.
- makeramen 16y agoI wish I could upvote this more. Basically, life isn't black and white. Please take into consideration all of the points lmkg mentioned above, as they highlight the fact that college is not JUST an education, it's an EXPERIENCE (which could be good or bad depending on how you go about doing it). As a graduating senior who also hates the "corporate world" and has always been too smart for the "facts" learned in school, I'm very happy to have attended my state university for the following reasons: * You get to meet tons people of your age at a similar stage in life, and chances are, you'll find some people you like, or at least can learn from. * You have a chance to do crazy shit like no other time in your life, and I'm a firm believer it's your experiences that are unique to you and define you, assuming you're smart enough to be reasonably educated. * Having a degree > not having a degree. We still live in a world where that sheet of paper matters. we can argue all day about whether it SHOULD matter or not, but the fact is that it DOES matter, today. As someone who attended a state university (disclaimer!), I would recommend it as far as an experience goes, for the following reasons: * I paid cheap in-state tuition (relative to private colleges). This is pretty important to me, especially since I wasn't buying the knowledge, but the experience. * The experience is closer to the "real world" than other choices -- assuming you choose a reasonably sized state university in a city environment -- important points to ensure the environment you're in is not too culturally segregated where your sense of reality becomes distorted (unless it's to your advantage where you know it will strengthen your weaknesses, i.e. force you to be more social, or more studious, etc. but be careful what you wish for)
- alexgartrell 16y agoFirst, go to a college, not a university. The ideal place is a teaching college that does not focus on research and does not have grad students. They exist, and they're awesome. Or go to a top University. The Professors certainly care more about their research than you (it pays the bills and keeps them employed), but it's OK if you're smart. You don't need one-on-one attention. If you want to get super smart, join a research group and work on hard problems. And if you go to the right university, you have instant credibility. Even if your goal is not to work for a megacorp (which, by the way, is trivially easy out of CMU), people will assume you know shit, which makes your path infinitely easier. It's true that very smart people come out of all types of colleges with all kinds of backgrounds, and that there are a lot of idiots at places like MIT, Stanford, and CMU. But the intelligence density is still always going to be way higher at a top 5 school. In short: Stanford - Best overall for undergrads, in my limited experience. It's not that the smartest people I've met have been Stanford undergrads/alumni, but they're consistently bright (across a sample size of 10 or so). CMU - Very good at programming. Most of the systems classes follow the "Write X from scratch" mantra, which is a great way to learn about malloc, distributed systems, kernels, etc. MIT - Obviously a great school, and some of the smartest kids go there, but I've not been universally impressed (we're talking about rising seniors not knowing how malloc works). Still, my sample size is small. Berkeley - I've heard that the professors there are trying to create more professors. I work with one Berkeley grad (now a PhD student at CMU) and he's pretty sharp, but doesn't have the programming background that I do.