I'm about to graduate with a degree in Physics. While the degree itself is brilliant I don't really think it is incredibly helpful in the startup world.<p>You do learn C, Mathematica, MatLab, etc, which means you will at least know what is going on when you look at code, but by itself this is not enough.<p>Something that has definitely helped me was taking a Microprocessors course, where you learn Assembly, which meant really understanding computational processes like memory, power, speed. I was lucky that we were able to create a standalone project that really helped solidify all the theoretical ideas. If If you can do a course like this, I highly recommend it.<p>Unless you spend as much time auditing CS courses as you do in Physics lectures (and really have the commitment to learn both), you will not leave with the same knowledge as a CS student, but if you put in the work, you can be competent.<p>I really have only one piece of advice: If you want to build applications once you graduate, start building now. It doesn't matter if they aren't brilliant or even good for that matter; build. It doesn't matter if they don't look incredible; build. It doesn't matter what languages or frameworks you learn; build. If you do this, with time, you will learn that you can learn most things relatively quickly and be competent in whatever it is you decide to do after graduating, because you spent time hammering away, grinding and really learning.