4 ms·
Here's perhaps some unexpected and unsolicited advice... so pretty clearly you aren't going to have a hard time with the CS curriculum (assuming that's what you
by poulsbohemian 3y ago
Here's perhaps some unexpected and unsolicited advice... so pretty clearly you aren't going to have a hard time with the CS curriculum (assuming that's what you intend to study) so my $0.02 is - find a second or even third major to augment your skill set. If you are already able to get to this level on your own, you'll likely breeze right through a typical undergrad CS course of study. So consider other courses of study that might be a bit more of a challenge / might give you an even broader skill set four years from now when you enter the workforce or consider grad school.
- eru 3y agoThe part of the advice that suggests acquiring more skills is good. The other part, that suggests doing more courses of study is somewhat questionable. Uni courses are designed partially to help you learn skills. But also for other requirements. If OP wants to learn more skills, they should go for that. Whether in uni or outside. If OP wants to relax and have fun, that would also be a good use of time in your twenties.
- katella 3y agoTake the grad courses.
- sam0x17 3y agoCan't agree more with this. I ended up double-majoring Philosophy and it was fantastic and has surprisingly helped several times in my career
- Serenacula 3y agoI still honestly believe coding should be a requirement in all philosophy courses. A system for layout out logical structures efficiently was something philosophy to this day sorely lacks, with formal logic being practically unreadable. And computer science has literally spent 50 years working on how to do that well.
- sam0x17 3y agoI actually ended up getting to teach a 20 minute segment on neural networks to my fellow philosophy students during a senior seminar on phenomenology, was great fun
- cardanome 3y agoI don't know the specific curriculum but I would caution that being a competent programmer does not directly translate into academic success. Yes, the author will have a massive head start but but that does not necessarily mean they will find studying easy. At least that was my experience as a self-thought programmer. The first weeks were super boring for me but also lulled me into being complacent until I suddenly found myself in deep trouble. Just because you understand the practical side does not mean you can will automatically grok the academic side of things.
- blensor 3y agoFully agree on that. In my first year I started discussing with the professor during a lecture that for sure java strings are not immutable because you are still able to access the memory behind it and proving it to him, while completely missing the point of the concept of an immutable object and that he was fully aware of that.
- dustingetz 3y agoi did this and regret it (38 now and have a technical CS startup), i studied electrical/computer engineering but what i should have done was gone to a better CS school or get approved for accelerated course work. the main problem for 18 yo me was lack of visibility into what a good CS program looked like, as opposed to just knowing more than the CS teachers at an eng school not ranked for CS. also, take as much math as you can. you should be studying: lisp ocaml haskell, interpreters (SICP), compilers, type systems, transaction processing, effect systems, FRP, concurrency NOT java guis python SQL databases webdev gamedev .. whatever
- stevedh 3y agoCan you expand upon why you chose those particular things to focus on? I’m genuinely interested and don’t have a traditional CS background so I’d like to know what I’m missing. (Serious question. I’m not being snarky)
- icsa 3y ago> lisp ocaml haskell Covers all of the major programming languages in a deep way. > interpreters (SICP), compilers, type systems, transaction processing, effect systems, FRP, concurrency These subjects are the core of almost any system that you'll encounter, in practice - academic or industrial.
- dustingetz 3y agoif only the industry recognized this – the-world-if.jpg. We get Conway's Law instead, which I'll cynically restate as "the org is a reflection of it's leadership" or "the org exists to lever up it's leadership, recursively" and that unfortunately has little to do with science
- icsa 3y agoThoughts from a Stanford CS graduate: https://www.youtube.com/watch?v=4SiFgB1lGxw https://www.youtube.com/watch?v=4SiFgB1lGxw
- brushfoot 3y agoI'd suggest the opposite. I originally double majored in the arts before switching to tech. For me, the classes in all cases were less useful than self-study with projects, more expensive, and oftentimes outdated. The degree opened the door to more jobs, but the classes themselves weren't worth the expense in my opinion. Your mileage may vary by university, of course.
- mindcrime 3y agoWhether done as a minor or second major, or not, I'd like to "second" what dustingetz said: take as much math as you can. You can, IMO, basically never take too many math courses.
- talldatethrow 3y agoI agree with this, but have a note about what the second major should be. I went into mechanical engineering because I had a great natural understanding of basics physics, materials, design, mechanics, blah blah. Even UC Berkeley engineering basically taught me things I knew or would have easily understood it I had to lookup that specific thing. I learned very little from my mechanic engineering degree. I ALMOST think people shouldn't go into a major based on their strongest aptitude, but I'm not sure yet. But definitely 100% add another focus since you'll probably breeze through the main course work. But I dont think it should be philosophy or art or calligraphy like Jobs would recommend. I wouldn't pick a second major that would be a foolish main major. Pick something that is a hard skill that is useful to learn and understand. Maybe electrical engineering. Maybe industrial design. Hell, I think tons of people would be well served with what they learned with a second major in accounting.
- josefdlange 3y agoReading this comment and its replies, I think it's evident that there's no "rule" as far as what you should or shouldn't do goes. For example, I had a second major in theatre, but I had no delusion of working a living in theatre that could compare with the kind of career that a CS degree typically delivers. It was and is a personal passion of mine, and to be able to deepen my understanding of it in an academic setting was valuable and rewarding to me personally. Studying theatre paid dividends in other ways as well. Managing a production is a beast, and you learn a lot about how to manage people and get things done. Dramaturgy, often called literary analysis, was quoted by my professor (a scholar on the topic) as "what are the parts, and how do they go together?" -- a shorthand that I still use to this day when thinking about a new system. If it wasn't clear already, I had a very positive experience in my studies at a Liberal Arts school, where the connections between fields, and the value they can offer each other, are a big focus. Just taking on a second major won't necessarily pay off, but keeping in mind the holistic point of your education may create an outcome where the sum is substantially larger than its parts.