- #1
pi-r8
- 138
- 30
Whenever people ask what jobs they can do with a B.S. in physics (and to a lesser extent with an M.S. or Ph.D.), one of the first suggestions offered is that they can become a programmer. In my opinion, this is seriously wrong and harmful advice.
Look at the standard courses that physics majors take. None of them have anything to do with programming! Most of them are pencil-and-paper theory classes, with a few lab classes thrown in for kicks. In my program, they suggested one, *optional* introductory-level class in programming. Would you tell someone that they were qualified to be an engineer, just because they had taken one introductory course?
Some people do programming as part of research projects. Again, these are entirely optional, and not part of the standard curriculum. And even when they do, they mostly program simple number crunching algorithms in obsolete languages like Fortran. That kind of programming does not even come close to qualifying someone for a professional programming job. It can actually be *worse* than no experience, because it teaches bad habits that will have to be broken later.
Meanwhile, the skills that are actually in demand for programming jobs, are not taught at all. I'm talking about skills like web and mobile development, server maintenance, or managing a database with SQL. Not to mention languages that are slightly more recent than Fortran (or even C++). Oh, and since so many programmers have CS degrees, they'll also expect you to know a fair amount about CS, even if it doesn't relate directly to programming. No one will ever ask you to calculate an electromagnetic field, though.
As far as I can figure, the only people who are successful in landing programming jobs with just a physics degree, are the people who self-taught themselves programming (usually starting in high school or even earlier). Which is fine for them, but it doesn't really help the people who didn't do that. It's completely unrelated to the physics degree itself. It's basically like saying, that if you teach yourself piano very well, then you can become a professional piano player after getting a physics degree. Technically true, but misleading and unhelpful to anyone with a physics degree who is not a self-taught piano or programming virtuoso.
Look at the standard courses that physics majors take. None of them have anything to do with programming! Most of them are pencil-and-paper theory classes, with a few lab classes thrown in for kicks. In my program, they suggested one, *optional* introductory-level class in programming. Would you tell someone that they were qualified to be an engineer, just because they had taken one introductory course?
Some people do programming as part of research projects. Again, these are entirely optional, and not part of the standard curriculum. And even when they do, they mostly program simple number crunching algorithms in obsolete languages like Fortran. That kind of programming does not even come close to qualifying someone for a professional programming job. It can actually be *worse* than no experience, because it teaches bad habits that will have to be broken later.
Meanwhile, the skills that are actually in demand for programming jobs, are not taught at all. I'm talking about skills like web and mobile development, server maintenance, or managing a database with SQL. Not to mention languages that are slightly more recent than Fortran (or even C++). Oh, and since so many programmers have CS degrees, they'll also expect you to know a fair amount about CS, even if it doesn't relate directly to programming. No one will ever ask you to calculate an electromagnetic field, though.
As far as I can figure, the only people who are successful in landing programming jobs with just a physics degree, are the people who self-taught themselves programming (usually starting in high school or even earlier). Which is fine for them, but it doesn't really help the people who didn't do that. It's completely unrelated to the physics degree itself. It's basically like saying, that if you teach yourself piano very well, then you can become a professional piano player after getting a physics degree. Technically true, but misleading and unhelpful to anyone with a physics degree who is not a self-taught piano or programming virtuoso.