Computer science.

Mar5000k

Beta member
Messages
4
Location
Uganda
Hi guys,
I am doing a bachelors degree in computer science but I am still in first year(Junior). I do really love writing soft-wares, a passion that made me decide to change my carrier.
My question is, Do you thing my 4-year bachelors degree in Cs will equip me with enough skills to write softwares similar to Nero, windows media player or even better ones??
 
My question is, Do you thing my 4-year bachelors degree in Cs will equip me with enough skills to write softwares similar to Nero, windows media player or even better ones??

No - but nor is it designed to.

Sure, you'll be able to write various applications with the knowledge you gain there (or at least you should be able to) but your degree likely won't teach you how to be an all singing, all dancing programming genius that can trump anyone else in the field. It gives you what, in the grand scheme of things, is the very basics so that you can progress (through academia or industry.)

Such applications are almost always written by large teams of people, who will all concentrate on a certain aspect of the application and then bring their functionality together. As a junior developer if you were working on such an application, you would be given small, simple tasks to do - perhaps testing the latest blu-ray burning feature for instance. You may then get into helping to code, or research the code behind a small feature of the software, before taking some part in implementing it. But it will always be small.

If you do get high up enough to oversee a large part of such an application, it will almost always be just that - only overseeing and not coding. Some may say this is sad but it's just the way things tend to work!
 
In my last year of my Comp Sci bachelor here, and I can say with utmost certainty that no, that's not the case. Not even close.

Basically your degree will help you to work within a team, which is how it should be. Rarely do softwares get created with one single man.
 
Hi guys,
I am doing a bachelors degree in computer science but I am still in first year(Junior). I do really love writing soft-wares, a passion that made me decide to change my carrier.
My question is, Do you thing my 4-year bachelors degree in Cs will equip me with enough skills to write softwares similar to Nero, windows media player or even better ones??

it depends what tools you use.
when I was doing my degree I took an elective module in Interactive Media technology, as a basic piece of coursework we made a very feature rich media player, but that was using tools that enabled you to create that quickly and easily.

it sounds impressive, to say I made my own media player, but given the correct easy learning drag and drop this component type tools anyone can!

the point of the coursework was actually to assess UI design rather than functionality...


the long and the short of it is this.
given the correct tools you do not need a degree in computer science to make anything.

the best example I can give is, any idiot can make a web page where they drag and drop page elements onto a canvas, but to sit down with a text editor and code by hand takes real learned skill.

likewise, any idiot can drag and drop media buttons onto a form, and make a media player.
but if you wanted to start from the beginning, and code media player in C, then no the course won't even begin to scratch the surface of everything that you'd need to know in order to accomplish this.
 
it depends what tools you use.
when I was doing my degree I took an elective module in Interactive Media technology, as a basic piece of coursework we made a very feature rich media player, but that was using tools that enabled you to create that quickly and easily.

it sounds impressive, to say I made my own media player, but given the correct easy learning drag and drop this component type tools anyone can!

the point of the coursework was actually to assess UI design rather than functionality...


the long and the short of it is this.
given the correct tools you do not need a degree in computer science to make anything.

the best example I can give is, any idiot can make a web page where they drag and drop page elements onto a canvas, but to sit down with a text editor and code by hand takes real learned skill.

likewise, any idiot can drag and drop media buttons onto a form, and make a media player.
but if you wanted to start from the beginning, and code media player in C, then no the course won't even begin to scratch the surface of everything that you'd need to know in order to accomplish this.

Root makes a very good point. Adding onto that, generally speaking the simpler tools that you use for the job, the more restrictive those tools are. There are of course some exceptions, but as a general rule that holds true.

So if I wanted to create a simple media player that conformed to the basics of what most media players do, I'd be able to do that pretty easily with a simple drag / drop style tool. Not a problem.

If I then wanted to add a hook into that media player so that it automatically built up a collection of all played DVDs in a MySQL database, or perhaps used the IMDB API to fetch information about the film being played and display it in a customised way, or wanted to implement seamless playback of films on 2 discs using 2 separate DVD drives, I'd (in all likelihood) be completely stuffed, as for the most part those aren't standard features that a drag and drop tool would be able to create. With simplicity you lose flexibility.
 
  • Like
Reactions: J03
Hi guys,
I am doing a bachelors degree in computer science but I am still in first year(Junior). I do really love writing soft-wares, a passion that made me decide to change my carrier.
My question is, Do you thing my 4-year bachelors degree in Cs will equip me with enough skills to write softwares similar to Nero, windows media player or even better ones??

Nope. Most of the coding you will need to know you will learn on your own or from job experience not from a degree program. Also keep in mind that Computer Science is not a professional degree, you don't have to get a degree in Computer Science to land a programming job. In fact you will find on the job that most people in the field don't have a degree in computers at all or even a college degree. My best advice to any current CS student is it would be wise to do a lot of volunteer programming or work as a cheap intern all 4 years during your undegrad if you really want to learn to code. I made the mistake of just taking an internship for 1 semester as a programmer, this is not much experience and not very impressive to a potential employer. One of the most employable CS graduates I have every met worked part-time as a Java programmer Intern all 4 years during his undergrad in CS. He started volunteering at the company and toward the end they were paying him $10/hr. He knew what most CS graduates don't, experience matters more then having the degree.
 
Everyone already contributed some value in answering your question and I'd just like to add something too :)

In my experience, the university's role is to introduce you to the basic concepts of programming and helping you gain some practical experience in developing small snippets of code or a develop a small project. I always thought that it is up to the student if he/she wanted to learn more.

In my case, I've just completed my second year and as a part of my degree I had the option of finding a placement. I started working for this software company thinking that I know what I was talking about and four months into the job, I'm still learning new things. It's humbling and incredibly exciting at the same time.

Back to your question, your degree won't give you all the necessary skills to develop large sophisticated programs like the Windows Media Player but you'll now have the basic building blocks to develop yourself to learn the new technologies and skills that may help you develop as a proficient programmer.
 
It will put you in the right path to building these types of software but for sure it will not make you achieve this. Meaning it will prepare you to do this but it will not make you do it. These types of programs you talk about are most times coded by a group of people..
 
As many others have said/implied, the purpose of the CS degree is to teach understanding of the concepts and the problem space - giving you the knowledge you need to effectively absorb the subsequent training and experience you will gain when entering the workplace.

Depending on where you work you may get very different levels of exposure to software projects but the main thing is knowing when and how to use the programming constructs taught throughout your degree. e.g. knowing what a semaphore/mutex is used for and how to use them correctly to avoid deadlock and ensure memory coherency or knowing when/why to use a stack over a FIFO and vice-versa.

Knowing these things and being able to demonstrate them (and verbalise them in technical interviews) in a straightforward manner will encourage employers to invest in you and your subsequent training because they see evidence that you understand the problem space and have strong interest and enthusiasm.
 
Back
Top Bottom