Jump to content

  • Log In with Google      Sign In   
  • Create Account


Question to CS Degree holders


Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.

  • You cannot reply to this topic
31 replies to this topic

#1 Confirm4Crit   Members   -  Reputation: 310

Like
0Likes
Like

Posted 14 January 2012 - 11:35 AM

This is kinda a weird question.

I'm currently in general edu in a community college, and planning on heading to a four year college afterwards.
With Computer Science, it seems like every 4 year college in my state (Florida), has different... languages and requirements.
Some want me to take Intro to C++, or C# or Java. Some go into theory more than classes, I've seen one do only C++, one only Java.

While I'm sure not taking the intro class won't kill me, it seems like it might be limiting me. I'm teaching myself C# just to understand programming in general, but I feel like should be practicing the languages that most schools are gonna throw at me anyway.

Or maybe I shouldn't to expose myself to other langs. more?

My basic question is, did your two years of CS education aid you to a point where self educating to other resources, and languages was easier?

I don't really know what I am asking, but I feel like I have two years of pure practice and self exploration before I hit the college stuff.

On a side note, while I'm sticking with C# for XNA and Head First, I personally liked C++ the most. I don't know why, it just seemed more dependent on me, which was helping me learn.

PS: If anyone has a personal opinion of Florida schools for CS, please share. :D

Twitter

Learning to code in general, Junior at FAU


Sponsor:

#2 shadowisadog   Crossbones+   -  Reputation: 2298

Like
3Likes
Like

Posted 14 January 2012 - 11:54 AM

In my opinion and in my experience a CS degree provides you with the fundamentals and theory. The choice of language is largely irrelevant. Some languages are easier to use than others, but all of them at core levels have the same constructs.

School will teach you such things as data structures, sorts, and algorithms. They can teach you about loops and conditional statements. They can teach you about linear algebra, artificial intelligence, and databases (to name a few).

Most of all school will teach you how to teach yourself. It will force you to learn to study, to budget your time, and to find what a good resource is. Often in my experience the given text books suck and you must find others if you want to do well. You will learn to self educate because your going to be forced to do it in a lot of cases. The classes are a guide. They will show you what to look at, and evaluate your performance, but the learning is going to be on you. Once you have been guided enough you should be able to know how to study properly. The key in my opinion is to know when you do not know. To realize when you are clueless and that you need to find/get additional help/materials. Arrogance can lead to hard lessons when it comes to test grades!

However school will not make you a good programmer. You can know about every ingredient and still not be a good cook. The only way to become good at programming is to practice. If you wish to learn programming (just like anything else I might add) you must write lots and lots of programs. You will write programs and the programs will be horrid, but you will learn. You will implement grand ideas and learn hard lessons about design when your design fails you. Once you feel the pain from deep class hierarchies you begin to rethink your notion of inheritance Posted Image .

My advice is to take as much math as possible. Take as much science as possible. Try to learn things outside of CS as well. Study hard but don't think you must learn everything at once. School should provide you with the background and the knowledge of all of the components, but you must supplement it with your own hard work if you wish to be successful.

#3 Telastyn   Crossbones+   -  Reputation: 3725

Like
2Likes
Like

Posted 14 January 2012 - 12:03 PM

If you're in college pursuing a Bachelor's in Computer Science and aren't studying algorithms and data structures your freshman year, you're in a horrible program.

#4 tom_mai78101   Members   -  Reputation: 568

Like
0Likes
Like

Posted 14 January 2012 - 12:59 PM

Supplemental questions that may or may not be added to the topic:

How does school that teaches you CS force you to study by yourself? What should I do, if my school doesn't force me to do anything, more like "giving you a laid-back option of learning" and "unable to encourage students to learn"?

I'm in my third year of CS, and I still don't feel like my school is forcing me to do something, other than staying above the passing grade thresholds.

#5 Confirm4Crit   Members   -  Reputation: 310

Like
0Likes
Like

Posted 14 January 2012 - 01:12 PM

If you're in college pursuing a Bachelor's in Computer Science and aren't studying algorithms and data structures your freshman year, you're in a horrible program.

I'm in a Community College getting my AA, and transferring to a four year college to get my CS Degree.
By the end of my AA, I should have this http://www.ceecs.fau...on-requirements along with this http://www.broward.e...rogramcode=1010.

Florida Atlantic asks for lots of Calculus, Physics, and some intro in to programming, and my community college asks for the humanities, history, and other credits.

Twitter

Learning to code in general, Junior at FAU


#6 Telastyn   Crossbones+   -  Reputation: 3725

Like
0Likes
Like

Posted 14 January 2012 - 02:25 PM

I shudder to think how far behind you'll be with that curriculum.

Anyways, back to your original post: Yes, just like anything else, more experience in something allows you to more easily learn advanced topics and make variants on existing knowledge easier to learn.

#7 Confirm4Crit   Members   -  Reputation: 310

Like
0Likes
Like

Posted 14 January 2012 - 08:04 PM

I shudder to think how far behind you'll be with that curriculum.

Anyways, back to your original post: Yes, just like anything else, more experience in something allows you to more easily learn advanced topics and make variants on existing knowledge easier to learn.

I mean, that's depressing. xD Shuddering is bad.

Twitter

Learning to code in general, Junior at FAU


#8 frob   Moderators   -  Reputation: 19040

Like
2Likes
Like

Posted 14 January 2012 - 09:57 PM

A college degree is not job training.


A CS program is about data structures, the algorithms to manipulate the structures, and the logic to turn those algorithms into massive applications.

The languages they teach are secondary. The school should teach you a few if you don't know any, but a good school will have classes that require you to learn 3-4 languages before you are done. C++, Java, Eiffel, Scheme, C#, Python, and more, will be options. You will also likely pick up SQL. You will be encouraged to work on other languages that you like, and that is a good thing. You and your peers can pick up as many new technologies and languages as you want.

The critical component of the BS in CS is not that you know how to program in today's current hot language, but that you will have the skills to program in ANY programming language, that you can learn ANY programming langage asked of you, and that you can learn, unlearn, and relearn technologies as the come available by knowing all the fundamentals in the field.

A good programmer from the 1950s could be dropped into the modern day, pick up a book on C#, and once he got over the amazement at how far computers have advanced, would be able to apply the same rules of logic and structure with today's language as he did in Fortran, Lisp, and Cobol that he used in the 50's. Each generation of programming languages and tools allows developers to work at a higher level than the one before; yet with each round of advancements the rules of logic and the underlying data structures and algorithms are the same.
Check out my personal indie blog at bryanwagstaff.com.

#9 frob   Moderators   -  Reputation: 19040

Like
0Likes
Like

Posted 14 January 2012 - 10:11 PM


I shudder to think how far behind you'll be with that curriculum.

Anyways, back to your original post: Yes, just like anything else, more experience in something allows you to more easily learn advanced topics and make variants on existing knowledge easier to learn.

I mean, that's depressing. xD Shuddering is bad.


I disagree. It is on par with many AA and AS programs I have seen.

Remember that an AA or AS is not the basic entry-level ticket to a programming job. That's a bachelor's degree.

The AA or AS program is something you would see in an office worker, such as a secretary or salesman (who isn't going into technical sales) or similar office professionals. It would enable the person to work closely with the regular programmers and not feel dumb. It is also an intermediate step to do exactly what was described -- get your general education and associates degree at a less expensive community college, then transfer to a bigger university for the BS degree where you focus on the topics.

I agree it could have been a little more heavy with CS topics, but it isn't so far out of touch with what many schools do.
Check out my personal indie blog at bryanwagstaff.com.

#10 BCullis   Crossbones+   -  Reputation: 1813

Like
3Likes
Like

Posted 14 January 2012 - 11:29 PM

Supplemental questions that may or may not be added to the topic:

How does school that teaches you CS force you to study by yourself? What should I do, if my school doesn't force me to do anything, more like "giving you a laid-back option of learning" and "unable to encourage students to learn"?

I'm in my third year of CS, and I still don't feel like my school is forcing me to do something, other than staying above the passing grade thresholds.


Yea...that's all your school is required to do. It's not a problem with the school, it's a problem with attitude. Though I will grant that select professors can be more or less motivating in their own right.

"C's get degrees" or my more favorite "what do you call a med school student that graduates with a 2.0 GPA? Doctor."
Doing only what the courses require is an entirely different mindset from "Wait, they only want me to produce this? But I could make it do SO MUCH MORE...and this other library I was reading about has cool feature X and..." etc etc. And those two mindsets produce two very different graduates. Both employable, both can cite their degree to potential employers, but the latter is going to be a better programmer, hands down.
Hazard Pay :: FPS/RTS in SharpDX
DeviantArt :: Because right-brain needs love too

#11 shadowisadog   Crossbones+   -  Reputation: 2298

Like
0Likes
Like

Posted 15 January 2012 - 11:06 AM

Supplemental questions that may or may not be added to the topic:

How does school that teaches you CS force you to study by yourself? What should I do, if my school doesn't force me to do anything, more like "giving you a laid-back option of learning" and "unable to encourage students to learn"?

I'm in my third year of CS, and I still don't feel like my school is forcing me to do something, other than staying above the passing grade thresholds.


If you feel that you are being under challenged, then it is up to you to push yourself more. Do not strive to merely pass, strive to excel. If you are still under challenged you can always take on a job, enroll in more classes/elective credits, participate in other organizations, or tackle outside projects.

School is not there to force you to do anything. All they are required to do is to provide some metric to evaluate your performance and give you a grade that tells people that you have some basic competence in the subject.

I like to think of it like this: In what other time in your life will you have an opportunity to do nothing else but expand your knowledge? Even if you do not end up using your degree directly, knowledge is one thing that can not be taken away (ok barring a traumatic brain injury of course).

So I agree with BCullis that you need to adjust your attitude.

#12 frob   Moderators   -  Reputation: 19040

Like
1Likes
Like

Posted 15 January 2012 - 11:53 AM

Example from my own history:

In a class on assembly language, one of our first assignments was to write a looping program to draw a Christmas tree.

All that was required was a set of alternating glyphs in as a big triangle, then a solid block of different glyphs as a small square for a trunk. Not too hard, yet a bunch of students didn't get it right and got poor grades.

I wanted to learn more. I wanted to do more. I investigated what bits to set to turn on color, and asked what else I could do to make my program more awesome. My tree was green, with a white star on top, and throughout the tree were either random other glyphs in colors (such as the universal money sign that looks like a pointy ball), and occasional blinking white dots with green backgrounds.


I did not do all that to try to show off. I did it mostly because it seemed like fun. And secondarily because it was something I wanted to learn. Obviously I ended up getting A's in the course, but it was mostly because I love the field and seek my own challenges.

Sticking to the bare minimum is enough to pass, but is that really what you want out of life? Life will certainly pass, it is up to you to do something with it.
Check out my personal indie blog at bryanwagstaff.com.

#13 Confirm4Crit   Members   -  Reputation: 310

Like
0Likes
Like

Posted 15 January 2012 - 09:58 PM

I mean, I feel I like I'm pushing myself if I'm studyin' on my own time, with no one prodding myself.

http://www.khanacademy.org is a neat resource xD

Twitter

Learning to code in general, Junior at FAU


#14 swiftcoder   Senior Moderators   -  Reputation: 9663

Like
0Likes
Like

Posted 16 January 2012 - 12:33 AM

If you're in college pursuing a Bachelor's in Computer Science and aren't studying algorithms and data structures your freshman year, you're in a horrible program.

You could equally well be in an average-to-middling program.

The majority of incoming freshman who declare a CS major, have no useful background in programming (many have no background at all), and scant knowledge of mathematics. First year is often spent teaching basic programming proficiency, and catching up on maths/physics and general university requirements (English, writing...). Advanced students may be allowed to skip straight to second year courses, but that's by no means a given :(

Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]


#15 frob   Moderators   -  Reputation: 19040

Like
1Likes
Like

Posted 16 January 2012 - 07:40 AM

I mean, I feel I like I'm pushing myself if I'm studyin' on my own time, with no one prodding myself.


Welcome to adulthood.

The only truly compelling forces in your life are your own. You can let those be the drives you have; to eat, sleep, and otherwise care for physical needs. Few people find that life satisfying. You can choose to make commitments to others and follow through with them. You can choose to set goals and push yourself to reach them. You can choose to develop your skills and talents.

It is your own job to prod yourself forward. Friends and family might help with the effort, but it is only you with the ability to act on it.
Check out my personal indie blog at bryanwagstaff.com.

#16 Confirm4Crit   Members   -  Reputation: 310

Like
0Likes
Like

Posted 16 January 2012 - 09:57 AM


I mean, I feel I like I'm pushing myself if I'm studyin' on my own time, with no one prodding myself.


Welcome to adulthood.

The only truly compelling forces in your life are your own. You can let those be the drives you have; to eat, sleep, and otherwise care for physical needs. Few people find that life satisfying. You can choose to make commitments to others and follow through with them. You can choose to set goals and push yourself to reach them. You can choose to develop your skills and talents.

It is your own job to prod yourself forward. Friends and family might help with the effort, but it is only you with the ability to act on it.



YAY, I'm an adult! xD. But I defiantly understand what ya mean.

If you're in college pursuing a Bachelor's in Computer Science and aren't studying algorithms and data structures your freshman year, you're in a horrible program.

You could equally well be in an average-to-middling program.

The majority of incoming freshman who declare a CS major, have no useful background in programming (many have no background at all), and scant knowledge of mathematics. First year is often spent teaching basic programming proficiency, and catching up on maths/physics and general university requirements (English, writing...). Advanced students may be allowed to skip straight to second year courses, but that's by no means a given Posted Image

Humor me. If I did get the chance to hand pick a stronger program, where should I go? Any suggestions?

Twitter

Learning to code in general, Junior at FAU


#17 Telastyn   Crossbones+   -  Reputation: 3725

Like
0Likes
Like

Posted 16 January 2012 - 10:14 AM

If you're in college pursuing a Bachelor's in Computer Science and aren't studying algorithms and data structures your freshman year, you're in a horrible program.

You could equally well be in an average-to-middling program.

The majority of incoming freshman who declare a CS major, have no useful background in programming (many have no background at all), and scant knowledge of mathematics. First year is often spent teaching basic programming proficiency, and catching up on maths/physics and general university requirements (English, writing...). Advanced students may be allowed to skip straight to second year courses, but that's by no means a given Posted Image


That's kinda sad. I haven't been out of college that long...

Even without programming background, students were expected to take the data structures and algorithms course freshman year where I went (though I wasn't in the CS program). Picking up a programming language & basics was considered something you got alongside the theory.

Hell, even my non-CS program required programming with the reasoning that any intelligent person could work out how to do the basic problems (make a series of 4 LEDs blink in order for example).

#18 Confirm4Crit   Members   -  Reputation: 310

Like
0Likes
Like

Posted 16 January 2012 - 10:48 AM

http://www.broward.edu/images/ProgramSheets/2195.pdf is the most intense thing I see at my community college, but I'll look for more later.

Twitter

Learning to code in general, Junior at FAU


#19 swiftcoder   Senior Moderators   -  Reputation: 9663

Like
0Likes
Like

Posted 16 January 2012 - 08:24 PM

Humor me. If I did get the chance to hand pick a stronger program, where should I go? Any suggestions?

Stanford, MIT, Chapel Hill NC, UC Berkley? And that's just a few from the cream of the crop... There are literally hundreds of universities with strong CS programs.

Tristam MacDonald - Software Engineer @Amazon - [swiftcoding]


#20 frob   Moderators   -  Reputation: 19040

Like
0Likes
Like

Posted 17 January 2012 - 12:27 AM

There's the difference in that last link.

It is not a Computer Science program.

It is a "Computer Programming & Analysis" (trade degree) program.


If your goal is to get the associates degree and then transfer to a bigger school for the computer science degree (which is the standard entry ticket) then the academic program will be fine. It is weaker than those who studied CS to begin with, but it should not be a fatal blow to your education.
Check out my personal indie blog at bryanwagstaff.com.




Old topic!
Guest, the last post of this topic is over 60 days old and at this point you may not reply in this topic. If you wish to continue this conversation start a new topic.



PARTNERS