As a comp engg freshman, what should I be aware of before I become a sophomore?
I come across many junior, senior, and sophomore students who regret some decisions ( or no decisions) they took in freshman year. Some of them seem to be very common ( know your programming languages, be efficient in programming, signal systems course is going to be tough etc ). I just don't want to build up on existing mistakes :P
Thank You
3 comments
Understanding grammar and spelling (more generally: communication) is one of some of the most important skills you can possibly learn. Go take an English Comp class, or something similar. It'll pay huge dividends for the next 40 years of your life, far more so than knowing one more programming language possibly could.
Agreed. Without the professional communications class I took in college, I likely wouldn't have had the same success in my freelancing business.
Then after English Comp, take Public Speaking. You'll hate it, but you need it.
This is critical. IME, you're probably not going to get very good at programming while in school. That only comes with doing it several hours a day for a long time. So, certainly work on being efficient so that you can finish up the degree, but don't think about it much beyond that. You'll get there, and realistic people don't expect brilliant programmers right out of undergrad.
On the other hand, I haven't yet had a job where written communication wasn't important from virtually day one. You may start out thinking, "Oh, I'm just going to code," but in reality you have to talk to clients (even if they're your coworkers), your bosses, prospective hires, etc., and this often takes the form of written communication. If you write unintelligibly to a customer or your CEO about why a feature is taking a while to implement, you're going to have a bad time. If you issue a poorly-worded question to a prospective hire, you'll muddy the waters in an already difficult decision. And there's no substitute for dodging the heat with a well-worded CYA email.
Learn to write precisely and concisely. Rhetoric classes, if your uni offers them, are a great investment.
On the other hand, I haven't yet had a job where written communication wasn't important from virtually day one. You may start out thinking, "Oh, I'm just going to code," but in reality you have to talk to clients (even if they're your coworkers), your bosses, prospective hires, etc., and this often takes the form of written communication. If you write unintelligibly to a customer or your CEO about why a feature is taking a while to implement, you're going to have a bad time. If you issue a poorly-worded question to a prospective hire, you'll muddy the waters in an already difficult decision. And there's no substitute for dodging the heat with a well-worded CYA email.
Learn to write precisely and concisely. Rhetoric classes, if your uni offers them, are a great investment.
The biggest mistake I made in college was not listening to my advisor and thinking that "recommended" courses means I could get by with taking something out of order. For example, taking Circuits I without taking Electromagnetics (and likely Diff Eq) first is a bad idea even if it's technically allowed. Another mistake is to not understand that some of the harder classes need to be spaced out or you get burned out. There seems to be a big ramp up from first year to second year coursework.
75% or more of what you learn is going to be obsolete or not needed in your career. The problem is you don't ever know which is the 25% you'll use. That may even change over time. And those English/Comms classes are helpful while still being less of a PITA than your other coursework so they prevent some burnout. The most fun classes I had were a Foreign language which was taught by an actual native speaker, and a Comms class which just had a nice mix of students.
75% or more of what you learn is going to be obsolete or not needed in your career. The problem is you don't ever know which is the 25% you'll use. That may even change over time. And those English/Comms classes are helpful while still being less of a PITA than your other coursework so they prevent some burnout. The most fun classes I had were a Foreign language which was taught by an actual native speaker, and a Comms class which just had a nice mix of students.
>taking something out of order
I'd say the important thing to do is to really see what is and isn't necessary. At my college, it was very common to skip prerequisites and so on. My favorite class as a sophomore was a graduate applied mathematics class where I skipped both prerequisite undergraduate classes. At first I'd assumed from the course catalog that it wouldn't have been feasible and didn't even bring it up with my advisor, but then a couple of friends pointed me to it.
I'd say the important thing to do is to really see what is and isn't necessary. At my college, it was very common to skip prerequisites and so on. My favorite class as a sophomore was a graduate applied mathematics class where I skipped both prerequisite undergraduate classes. At first I'd assumed from the course catalog that it wouldn't have been feasible and didn't even bring it up with my advisor, but then a couple of friends pointed me to it.
Communication skills are as important to Engineering within World-Class Engineering teams as your actual technical skill is.