Advice For Computer Science Majors

Introduction

so probably around four or five months ago i released a article about just general advice for college freshmen a lot of people found that useful so i thought i’d make sort of like a more niche specific article directed towards computer science students or you know computer science majors or some other programming or.

related technical major about you know tangible advice that i wish i would have known.

earlier on in my college career so first go to your discussion sections i know i’ve mentioned this in previous blog post’s but.

it’s definitely worth repeating especially nowadays with a lot of online classes it’s very.

tempting and easy to you know not watch or attend your discussion sections discussion sections are.

so vital especially when you have programming assignments.

due coming up and sometimes the teaching assistants will literally give you i don’t want to say the correct answer but the correct path to go down the correct way of thinking and also it just gives you a really good opportunity to ask any you know specific questions that you.

need answered or specific bugs you’re encountering.

and honestly my grade was saved a lot by simply just.

going to tutoring sessions as well as discussion sections and ultimately just going to those you know spending an hour a week in those ultimately just made the class a lot easier.

second start your programming assignments early this is a very simple tip but it’s super vital and i wish i did.

this a lot more earlier on in my college career so let’s say you have a programming assignment and usually from my experience you usually get about a week.

or two weeks to sort of finish it and let’s say that.

it’s going to take you like 30 man hours at the keyboard solving it for two weeks would you rather spend 10 hours a day in the last.

three days to finish that assignment or like two hours a day.

over that two-week period honestly it’s you it might be tempting to say yeah i just wanna you know wait till last minute but if you spend ten hours a day for.

three days consecutive days in addition to all your other coursework that sounds awful so start your programming assignments early and often and you’ll be able to get help on any bugs you have.

early on rather than waiting until the last 24 hours.

and i really wish i knew this during my first couple years.

at university because it would have just saved me a lot of stress.

third get really good at keyboard and vim commands and this is just sort of a very.

tangible productivity increase so i even remember.

my i think it was my first college computer science class.

one of the first assignments we had was to just memorize.

vim commands and i definitely understand why.

my professor made us do that have you ever seen those like super fast competitive programmers that like are just like typing super quickly first of all it looks really cool you also probably have crazy words per minute but it’s also just a big productivity increase if you think about it it’s you know you don’t have to worry about doing all this more like logistical things and you can just get right down to the problem solving aspect of whatever you’re programming so also if you’re using any ides become familiar with that ide’s specific shortcuts and how to navigate that ide because it’s just.

a again a general productivity increase that’ll just help you.

along in the future it’ll definitely be tough in the beginning to memorize all of those commands but if you need to keep a keyboard or a vim command cheat sheet up on another monitor on your desktop wherever.

and just keep it open or open when you need it and you’ll definitely get the hang of it and i definitely wish i worked on this more early on it’ll definitely help be going on in the future third and a half.

so this is similar to the last one but get familiar with github.

and how to navigate it now not every company uses github but.

very many do so if you already know like how to navigate github.

really well you’re already gonna be ahead and just.

it’s very useful and it honestly just saves a lot of time and a lot of headache if you’re already familiar with the intricacies of github you definitely don’t have to be a master as a undergraduate computer science major in github but.

just become familiar with sort of navigating.

all the things github can do as well as doing that through the command line interface.

the portal or even you know github desktop and depending on the computer science class you’re currently in you’ll likely need to.

sort of know github anyway and if you’re working on side projects should probably put those on github so that you can just share the github.

link to you know employers or recruiters or friends.

so that they can just check it out as a current program manager.

at a tech company i can tell you that having a.

team member that’s really really strong in github is just.

super valuable four is understanding your operating system or.

platform so whether you’re developing software for windows mac os or linux just understand the differences between them.

and developing software cross-platform if that’s something you’re interested in so if you’re working on a side project or you’re in a software engineering student org and you’re working on a project let’s say you’re.

developing software for windows just keep in your mind how will that software operate on a mac os for example and just understand.

if the libraries you are using are also available.

on mac os because some might just be very operating system specific and you might find that your software that you’re developing only works on windows or only is designed for windows and that’s perfectly fine but it’s kind of.

important to know and it’s especially important if you’re having someone join your team or your project that’s you know trying to code on say a mac and they’re not able to get the correct libraries working because the libraries only support.

windows operating systems that’d be kind of valuable to know.

in order to uh you know sort of accommodate that team member additionally just being able to navigate your operating system.

usually just has a big increase in productivity as well for example like windows and mac os have slightly different.

you know file structures different keyboard commands.

so just being familiar with your operating system will also just be another tangible productivity increase number five is.

just be healthy being a computer science major or another sort of technical related major can definitely be very brain draining but i’ve always found that exercising.

eating semi-healthy and having a decent sleep schedule.

made programming assignments come easier to me and.

made me enjoy them more and i still find that today.

so the day after i go for a long run i typically feel better and just more productive the following day and as computer science students or computer science majors or any one major that’s sitting at a desk for long periods of time.

that can sort of be unhealthy in its own facet.

so it’s always good to just you know get up and stretch your legs and get the blood flowing number six.

is start working on some passion projects and i use the word passion there purposefully you’re more likely to.

work on a programming assignment or a programming.

side project if you actually like it so instead of making the 10.

000th version of an algorithm visualizer consider your non-programming hobbies and then try to apply.

programming to that and then the great thing about side projects is there’s no deadline and there’s no like correct way to do it because you’re just doing it for.

fun or for your resume or whatever but it’s not like you’re getting graded on it.

for example a few weeks ago i published a article about me trying to teach an ai about anime through custom vision so for me i like anime and i tried applying programming to that and honestly i coded it over a weekend and it was just really fun to do it was sort of stupid but also just.

generally interesting to me also i have a friend that really likes league of legends so.

he applied programming and built a side project around league of legends so not only will working on passion projects look good on your resume hopefully it will reinvigorate your affection to computer science programming and problem solving in general seven is.

understand the why and how i definitely didn’t do this.

a lot in college though i wish i had but it will definitely help you with tests and assignments and honestly just in your career in the future so if you’re going through a computer science lecture try to pay attention to the why and the how for example if you’re learning about java.

pay attention to why java was created you know why.

is there garbage collection why is this a better approach or why not is this a better approach to.

prior programming languages like c why is garbage collection.

better than manual memory allocation like and see.

and how is this sort of done this why and how.

train of thought will definitely help you learn.

the root of what the lecture is actually about and this.

definitely applies into becoming a software engineer so imagine you’re picking up an outdated code base or someone else’s code that maybe left the company and you have to sort of digest it figure out what it’s about and maybe.

do some improvements so let’s say you see a method that says you know gets user information or whatever it does so instead of.

taking that at face value and just say using that method because you know it gets the user information.

understand the why and how why do you need the user information.

and is that an important thing you need in this software.

and then as well as how does it actually work and how does the method work and lastly eight is look for internships early unfortunately rejection is very common in the internship sphere as a whole but if you want an internship it’s always better to just.

start early and apply to internship postings that are.

posted more recently so you’ll likely have better.

results or hear back sooner from an internship that was posted a day ago versus.

an internship posted three months ago and if you start applying early you’ll likely feel.

less stress towards the end of that application.

period so you’re not rushing to get internship applications in and you’re not regretting.

that you wish you started earlier so those are just some quick tangible tips for computer science majors out there computer science students.

or just people generally interested in programming or other technical related majors if you have any additional tips that have helped you throughout your college career.

feel free to comment them down below so that people can sort of like read the comments.

and then you know tag on any additional you know bonus bonus advice they see there just you know help people out also helps the youtube algorithm so if you liked the blog consider giving this article a like and if you like college advice computer science topics tech topics programming projects all things like that consider subscribing to the channel my name is michael you can always count on bad british accents from your boy over here tune in.

Conclusion

to some of my past blog my past self thank you and tune in to my future article my future self also.¬†thanks you stay healthy and happy and i’ll hopefully see you guys in another post.

now bye.

Leave a Comment