Take the Math Class or the Programming Class?

In summary: I don't know, I just think that knowing the foundation is important.Proof-based learning is so much more effective than learning based on a teacher telling you what to do, because you can check your work. It's like math -- you need to know basic concepts in order to do any proofs. I guess that's why I'm conflicted; I want to be able to do proofs, but I also want to be able to program.Yeah, I know discrete is very proof based, which...I don't know, I just think that knowing the foundation is important. Proof-based learning is so much more effective than learning based on a teacher telling you what to do, because you can check your work. It's like math
  • #1
BrainFloss
6
0
Hi everyone,

It's that time again at my school-registration. I've been picking out my classes but I came across a rather annoying dilemma. My discrete math and data structures and program design classes conflict temporally. The discrete math class would count for my math minor, and the data structures class is the next sequence in the computer science program and it was suggested to me to take at least a year of programming to be a good physicist. However, it is not counted towards my physics degree or my two minors (math and chemistry).

So which one do I take? Is it more important to know the math behind all my physics or be hip with the new technology that's so important nowadays (I keep hearing about physicists who wish they had taken more programming in college). I absolutely hate computer science, I find it to be the most boring and frustrating thing on the planet, but I see as eating my vegetables, I suppose. It's good for me.

This wouldn't be a problem if I could just take a different math class for the time being but I can't because all the other math classes I need to take I am not ready for yet. (pre-reqs...) Pushing a math class back and taking my last GE instead (which is what I would have to do if I cut out discrete because I have no where to go) would make me have one more class left over after my intended graduation date. :/ Argh!

Also, I know it would not be a very good idea to hold off on programming, as I would forget everything I have learned in my object oriented programming class this semester, especially since I dislike it so much...maybe I can just take a programming in C class at a community college later if my employer wants me to?

Thanks, guys...
 
Physics news on Phys.org
  • #2
why not take a different CS course like algorithms or computer simulation or graphics and then go back to the data structures class later.

For me data structures was one of the most useful CS classes I ever took. True I seldom use all the data structures described or implement anything near as complicated but I do choose Java collections over implementing things as arrays which is the tendency of beginning programmers. It often makes cleaner and easier to debug code.
 
  • #3
jedishrfu said:
why not take a different CS course like algorithms or computer simulation or graphics and then go back to the data structures class later.

For me data structures was one of the most useful CS classes I ever took. True I seldom use all the data structures described or implement anything near as complicated but I do choose Java collections over implementing things as arrays which is the tendency of beginning programmers. It often makes cleaner and easier to debug code.

Good idea. So, okay, just looked at the catalog, and the only one I think I could feasibly take is this:

Comp 162 Computer Architecture and Assembly Language

"An introduction to computer architecture,
assembly language programming, system
software and computer applications.
Topics include: number systems and
data representation; internal organization
of a computer; primitive instructions
and operations; Assembly language;
language translation principles; overview"


So...would that be useful to me as a physicist?
 
  • #4
BrainFloss said:
So...would that be useful to me as a physicist?
Those things will greatly increase your general understanding of what computers are; and in my opinion, every non-novice programmer should know them by heart (and, in particular, also know this stuff before taking actual CS courses --- because going bottom-up gives you lots of context to anchor other low level concepts (e.g. algorithms and data structures) and more complex stuff to).

Will that be useful to you as a physicist? In this form: No. It lies some foundations which you will need if you ever want to learn how to write really fast programs[1]. It will help you understand what you actually do when you program. It will not help you getting better at Labview or Mathematica/Maple/Maxima or scipy/Matlab. And in many areas of physics one can get very very far with such tools.


[1] e.g., memory hierarchies, virtual memory, concurrency, and maybe, since it was listed: Some understanding of how compilers actually translate source code, and what they can do and what they can't do (and how to make it easier for them to generate good code).
 
  • #5
If I were you, I would take the data structures class. A class on data structures is in many many ways useful to a working scientist. A class on discrete mathematics is not so useful to you.
 
  • #6
micromass said:
If I were you, I would take the data structures class. A class on data structures is in many many ways useful to a working scientist. A class on discrete mathematics is not so useful to you.

Yeah, I know discrete is very proof based, which I know is not a big deal in physics (from what I've heard) but I have to take it for my minor. It's the only class in the math minor that I would take that wouldn't count towards my physics major. ie, If I plan it all right in my degree I am one class away from the minor so I figured it would look good on a CV or something with a low cost to my time. I guess it doesn't really matter though, then, if discrete is worthless for a physicist. Or maybe I can get it substituted with something else. I dunno...

Thanks for all your advice, everyone, I still have a few weeks to think about all of this. :)
 

Related to Take the Math Class or the Programming Class?

1. Should I take the math class or the programming class?

This is a difficult question to answer because it ultimately depends on your personal interests and career goals. If you enjoy problem-solving and critical thinking, you may find the programming class more engaging. However, if you excel in mathematical concepts and logical reasoning, the math class may be a better fit.

2. Which class is more beneficial for my future career?

Both math and programming skills are highly valued in many industries, so it's important to consider your specific career goals. For example, if you're interested in software development, the programming class may be more beneficial. On the other hand, if you're pursuing a career in finance or data analysis, the math class may be more relevant.

3. Which class is more challenging?

This is a subjective question and can vary for each individual. Some may find math more challenging due to its abstract and theoretical nature, while others may struggle with the technical aspects of programming. It's important to assess your strengths and weaknesses and choose the class that will challenge you in a way that is beneficial for your learning.

4. Can I take both classes simultaneously?

It may be possible to take both classes at the same time, but it's important to consider the workload and time commitment required for each class. It's also important to make sure you have a strong foundation in the prerequisite skills for each class before attempting to take them simultaneously.

5. Will taking one class help me in the other?

There are some overlapping skills between math and programming, such as problem-solving and logical reasoning. However, the two subjects are also distinct and may not directly benefit each other. It's important to focus on the individual learning objectives of each class rather than trying to use one to supplement the other.

Similar threads

  • STEM Academic Advising
2
Replies
40
Views
820
  • STEM Academic Advising
Replies
14
Views
725
  • STEM Academic Advising
Replies
29
Views
758
  • STEM Academic Advising
Replies
4
Views
973
  • STEM Academic Advising
Replies
3
Views
1K
  • STEM Academic Advising
Replies
11
Views
651
  • STEM Academic Advising
Replies
4
Views
922
  • STEM Academic Advising
Replies
4
Views
1K
  • STEM Academic Advising
Replies
16
Views
2K
  • STEM Academic Advising
Replies
32
Views
586
Back
Top