What would help a Comp. Sci guy the most?

  • Thread starter Thread starter tamtam402
  • Start date Start date
AI Thread Summary
Choosing between undergraduate mathematical knowledge and physics knowledge as a complement to computer science (CS) hinges on the specific applications of CS that interest the individual. Mathematics is beneficial for creating efficient algorithms and solving complex problems, while physics provides insights into hardware and electronics. For example, in video game development, both fields are crucial for modeling light and geometry, as well as for implementing complex systems like collision detection and camera mechanics. In data-driven software, a solid understanding of data structures and flow control is essential, especially in multi-core systems. Systems design emphasizes the importance of building extensible applications, with a focus on data-driven and component-based architectures. Familiarity with standards like Microsoft's technologies or CORBA can enhance system robustness and longevity. Ultimately, the decision should align with the individual's career goals and interests in either field.
tamtam402
Messages
199
Reaction score
0
Undergrad mathematical knowledge, or undergrad physics knowledge? Both fields interest me a lot, and I can do a double major in CS + either math or physics. I love these 3 fields almost equally, so I figured I would study the thing that complements CS the best.

Sorry for my bad english btw.
 
Physics news on Phys.org
Probably undergraduate mathematical knowledge. You aren't giving a whole lot of helpful information though.
 
both are good complements, math will help create efficient equations in coding and a new way to solve problems but physics will teach the underlying electronics in the hardware and how they work.
 
tamtam402 said:
Undergrad mathematical knowledge, or undergrad physics knowledge? Both fields interest me a lot, and I can do a double major in CS + either math or physics. I love these 3 fields almost equally, so I figured I would study the thing that complements CS the best.

Sorry for my bad english btw.

Depends on what you want to apply you're CS knowledge to. I'll list a few examples:

1) Video games
For this maths and physics would be beneficial. Let's say you model light. You have models that are dead simple (like ambient light aka sun light modeling) to raytracing and radiosity models. Same for geometry. You go from simple collision detection models in a plane (signed distance between point and respective plane) to convex hulls in any dimension (although you only typically use 3). Also think about writing camera systems: some use splines, springs + damping, quaternion interpolation on the unit sphere. And this is the tip of the iceberg. These million plus line monstrosities are very complicated

2) Data driven software
Apart from the particular sensory fields (visuals,audio) you will need to have good data driven software that's extensible and backwards compatible. Something like an XML container data structure is a good step in this direction.

3) Flow control
This is one thing that you should think about when you're writing programs or reading them. This is especially important with multi-core / highly parallel / independent hardware type systems where devices can work independently and fire off events independently.

Back in the day (and even now) our program would be nested in some infinite loop until some exit combination broke it and returned control back to the shell. While that probably won't change, what will change is that programs will more than likely move from one where you write heaps of do loop while not broken to the "register an event with the systemwide event handler" and hook the appropriate message.

On top of this you're event handler (if it is smart) could for example launch the callback in a different thread and monitor the time taken and if it is taking too long it can kill it. So if you did this and offered the ability for your program to be modded through DLL's then yeah you could in a way "debug" offensive addons.

4) Systems design

By systems design I don't mean the UML crap that software engineers do. When you design a system (any system) there are always going to be a few things that you should have especially when you are planning to have an application that can easily be extended. Some include it to be A) Data driven and B) Component Based

If you want to learn about this kind of thing your best bet is to look at the different standards of Microsoft's different technologies. If you don't like Billy G, then check out something like CORBA from the Object Management Group. I would however recommend that you look at the COM design (Component Object Model).

In relation to that things like Class Factory Templates, Interface Registration, Resource Templates, Some kind of interface that allows script language compatibility, and other metadata paradigms will help you get an idea of how to build rigid and robust systems with templates that will last a long time.

I'm just throwing some things out there since I don't know exactly what you're interests are or where you'd like to go with it.
 
I’ve been looking through the curricula of several European theoretical/mathematical physics MSc programs (ETH, Oxford, Cambridge, LMU, ENS Paris, etc), and I’m struck by how little emphasis they place on advanced fundamental courses. Nearly everything seems to be research-adjacent: string theory, quantum field theory, quantum optics, cosmology, soft matter physics, black hole radiation, etc. What I don’t see are the kinds of “second-pass fundamentals” I was hoping for, things like...
TL;DR Summary: I want to do a PhD in applied math but I hate group theory, is this a big problem? Hello, I am a second-year math and physics double major with a minor in data science. I just finished group theory (today actually), and it was my least favorite class in all of university so far. It doesn't interest me, and I am also very bad at it compared to other math courses I have done. The other courses I have done are calculus I-III, ODEs, Linear Algebra, and Prob/Stats. Is it a...
Back
Top