Computer Science Useful for Physicists?

In summary, the conversation discusses the possibility of pursuing a minor or major in Computer Science alongside a Physics major. It is suggested that having a computer science background can be useful for job prospects and understanding mathematical concepts. The conversation also explores the option of a Mathematics computational track which combines both Math and Computer Science courses. Ultimately, it is recommended to choose the option that aligns with one's interests and goals.
  • #1
Dr.Mobius
39
2
I've been contemplating the possibility of pursuing a minor (or maybe even a dual major, but probably not) in Computer Science to go along with my Physics major. But I must wonder, is it worth it? Will it help me at all when I look for a job in tens of millions of years after getting a PhD?

Any advice is appreciated, thanks.

(I know that I posted a question that was more or less like this in another thread, but it looked kinda dead, and I figured I probably shouldn't have tried to derail that discussion in the first place...)
 
Physics news on Phys.org
  • #2
I think it would definitely useful. Programming is almost a mandatory skill for physicists, and with a computer science minor you will learn algorithms and other things which will help improve that. Along side that, since it is only a minor, you will not go into the more detailed portions a lot and will not be too difficult. As for job prospects, it will likely help you substantially, especially if programming is one of the key skill set for the job.
 
  • #3
Yellowflash said:
I think it would definitely useful. Programming is almost a mandatory skill for physicists, and with a computer science minor you will learn algorithms and other things which will help improve that. Along side that, since it is only a minor, you will not go into the more detailed portions a lot and will not be too difficult. As for job prospects, it will likely help you substantially, especially if programming is one of the key skill set for the job.

Okay, I figured that this was probably the case, but wanted to know for sure before I wasted my time. Thanks.
 
  • #4
Dr.Mobius said:
I've been contemplating the possibility of pursuing a minor (or maybe even a dual major, but probably not) in Computer Science to go along with my Physics major. But I must wonder, is it worth it? Will it help me at all when I look for a job in tens of millions of years after getting a PhD?

Any advice is appreciated, thanks.

(I know that I posted a question that was more or less like this in another thread, but it looked kinda dead, and I figured I probably shouldn't have tried to derail that discussion in the first place...)

Programming is definitely a skill that is worth knowing. It will certainly help you down the road sooner or later, be it in physics grad school or when searching for a job. So definitely consider getting some programming courses under your belt.

Now, not everybody had this experience, but for me I felt that programming helped me understand mathematics much better. In programming I learned problem solving and I learned how to construct an efficient algorithm to reach a goal. I also learned how to express myself rigorously (because if you don't follow the rules of the language, the program won't work), it also gave me a very large playground to test various mathematical things or to program math that I've seen before in class (an easy example would be to develop a program that solves quadratic equations). All of these things are very useful and helped me a lot.
 
  • Like
Likes 1 person
  • #5
I think it will help too! I only took two programming courses and I wish I had taken more.
 
  • #6
Not only programming but actual computer science can be useful as well. I was reading an article earlier today about the application of graph theory to QFT. I guess technically graph theory is math but it is often grouped in with computer science.
 
  • #7
Hello, everyone. I decided to revive this thread because I now have some new questions.

I did some more research on what programs the University I plan on attending has to offer relating to computing and Computer Science, and I discovered that aside from several 'tracks' for a Computer Science major, they also have a 'Computational Track' for a Mathematics major that involves both Math and some Computer Science.

Doing the Mathematics degree with the Computational Track will certainly take less time, since there is quite a bit of overlap in required courses with the Physics degree I plan on pursuing (Plan I). But then again, taking longer to complete the Computer Science degree requirements will give me a much more detailed education in computing. Do you all think that a combination of extra Math and a Bit of Computer Science will be more beneficial? Or a pure focus on Computer Science?

Oh, and another option I'm considering is to just do a http://www.colorado.edu/cs/bsms-degree/minor.

So, yeah. I want to know what people here think is the best option for me, in terms of benefiting me in the long run. As always, any advice is appreciated.

Thanks again.
 
  • #8
So, to reconfirm, are your options these?:
1. Do a physics degree + computer science minor
2. Do a physics degree + computer science major
3. Do a physics degree + Math computational track which is Math + Computer Science
 
  • #9
Yellowflash said:
So, to reconfirm, are your options these?:
1. Do a physics degree + computer science minor
2. Do a physics degree + computer science major
3. Do a physics degree + Math computational track which is Math + Computer Science

That is absolutely correct.
 
  • #10
Do whatever you enjoy, but I would go with option 3 (or maybe 2, but definitely not 1).
 
  • #11
Yellowflash said:
So, to reconfirm, are your options these?:
1. Do a physics degree + computer science minor
2. Do a physics degree + computer science major
3. Do a physics degree + Math computational track which is Math + Computer Science

It depends on whether you like math or not. If you're just interested in a bit of programming, then do ##1##. If you're interested in more theory behind the programming, then do ##2##. If you're interested in the mathematical foundations of your programs, then do ##3##.
 
  • #12
Yellowflash said:
3. Do a physics degree + Math computational track which is Math + Computer Science
I'm actually doing a makeshift version of this option + a major in physics at my school.
 
  • #13
esuna said:
I'm actually doing a makeshift version of this option + a major in physics at my school.

Interesting! Can you tell us what it's like and whether the OP should go for this option or not?
 
  • #14
Yes, I'd love to hear about your experiences if you're willing to divulge them.
 
  • #15
Dr.Mobius said:
Yes, I'd love to hear about your experiences if you're willing to divulge them.

In my case it isn't an official "track." I've hand selected a series of computer science + math classes that I'm interested in/think will be useful. What I'm trying to do will essentially amount to a major in physics and a minor in computer science. A math double major as well if I have the time. This basically amounts to:

(very similar to the computational track at your university)
computer science 1&2 (programming)
discrete mathematics
algorithms
numerical analysis 1&2

At this point I've only had the two programming classes and discrete math. Both of my programming classes have been in the Java language. The first semester of programming was very basic. We wrote small programs like leader boards and programs that could estimate pi and do standard deviation, etc. The second semester focuses on data structures such as stacks, queues, binary search trees, and graphs. All theoretical underpinnings of databases and even the internet.

I must add that what we have been learning in these classes is very general and abstract. We haven't written any practical programs that someone would want to download and use, at least not IMO. Granted they are very early classes. However, I visited a local lab recently that is hiring a couple of interns. They want students with knowledge of Access, SQL, Visual Basic, etc. Things that applied programming students are learning but computer science students aren't (at least at this point). Although I do have a much better understanding of the actual data structures that our applied programming students are merely blindly implementing.

Probably the most practically useful class I've taken so far in this area is a game programming class I'm in this semester (in C#). We ended up implementing most of the data structures I've been learning in the Java class. Game programming is also a great way to get introduced to large-scale, object-oriented programming as well as software engineering, graphics, animation, AI, etc. As an aside, physics knowledge comes in quite handy here.

I know that algorithms will deal with designing efficient algorithms to search, add, and delete in those data structures learned in the second semester of programming, as well as doing math proofs to represent the time-complexity of those structures. Will most likely also be very abstract, but I think will make one a wiser, more conscious programmer in the long-run.

I've selected numerical analysis because I think it's essential for any physics major to learn the computational modeling. I'm sure just about everyone on these boards will agree with me here. Being able to use MATLAB or Octave to do matrix computations and solve PDEs comes in handy anywhere from physics to computational biology to machine learning.

I'm wanting to take graph theory and combinatorics as well, but this is purely out of interest.

To be honest, I'm not entirely sure if what I'm doing will help with job prospects at all. If you're going into a science such as math,physics, chem, etc. and want to have enough programming skills to be hired in a programming position, I think it takes more than just tracks and classes to gain the necessary knowledge. It requires a considerable amount of self study and practice as well. Not to mention interest. I do think that this stuff will help in graduate school if you're planning on doing anything computational.

Just my $0.03. Hope my ramblings are at least a little bit helpful.
 

Related to Computer Science Useful for Physicists?

1. How can computer science be useful for physicists?

Computer science is useful for physicists in many ways. It allows for complex calculations and simulations to be performed quickly and accurately, aiding in the analysis of data and the development of models. It also helps with data storage and organization, as well as visualization of data through various software tools.

2. What programming languages are most commonly used in physics research?

The most commonly used programming languages in physics research are C++, Python, and FORTRAN. These languages are known for their speed and efficiency in handling large amounts of data and complex calculations, making them well-suited for scientific research.

3. Can computer science skills enhance a physicist's job prospects?

Yes, computer science skills can greatly enhance a physicist's job prospects. Many industries, including research labs and tech companies, are looking for individuals with strong programming and data analysis skills. Additionally, many fields of physics, such as astrophysics and particle physics, require advanced computer skills for data analysis and simulations.

4. How can computer science help with data analysis in physics?

Computer science can help with data analysis in physics by providing tools and algorithms for processing and interpreting large datasets. It can also help with data visualization, making it easier for physicists to identify patterns and trends in their data. Additionally, computer science techniques such as machine learning can be applied to analyze complex data sets and make predictions.

5. Is it necessary for physicists to have a strong background in computer science?

While it is not necessary for physicists to have a strong background in computer science, it can greatly benefit their research and job opportunities. Basic programming skills and knowledge of data analysis techniques can greatly enhance a physicist's ability to analyze and interpret data. However, collaborations with computer scientists or learning basic computer skills can also be beneficial for physicists who may not have a strong background in computer science.

Similar threads

  • STEM Academic Advising
Replies
6
Views
1K
  • STEM Academic Advising
Replies
8
Views
2K
  • STEM Academic Advising
Replies
23
Views
3K
  • STEM Academic Advising
Replies
4
Views
1K
  • STEM Academic Advising
Replies
3
Views
892
  • STEM Academic Advising
Replies
2
Views
1K
  • STEM Career Guidance
Replies
17
Views
650
  • STEM Academic Advising
Replies
3
Views
1K
  • STEM Academic Advising
Replies
2
Views
1K
  • STEM Academic Advising
Replies
2
Views
5K
Back
Top