Academia vs. Industry in a short graduate program (computer science) I am an M.S. in Computer Science student at an excellent school, and I am trying to decide between pursuing a career in research (getting a PhD), and going into the industry to work for a company like Google. Unfortunately, the program I am in is only 3 semesters long, so there is not really sufficient time to do research before graduating without sacrificing a course I really want (and need) to take (I also did not do Computer Science as an undergraduate so I have a very high return for any courses I do take / high opportunity cost for any courses I don't take).

With this in mind, my questions are:


What type of factors should I be considering, knowing that doing research to see if I enjoy it is likely not on the table? How does one know that they want to do research? Is loving the theoretical aspects of your courses enough?
I am quite confident I could do the PhD at my current school, which is my top choice given the faculty advisor(s) I would have. The research would be absolutely fascinating, well funded, and almost certainly set me up for a fantastic career in either academia or industry when I graduate.
Getting the PhD would take 5 - 6 years (starting from now).
I would be giving up roughly 600k in income (before tax) if I did the PhD, not including any promotions I may get during the the way or inflation, which would drive this number up. I would also expect to be doing fun and interesting work in industry.


My program is geared towards setting people up for a career in industry, but it has also been made clear that it can be molded to set students up for a PhD track as well. My apologies if this is too open ended. I can clarify further if you would like.
I actually don't think you have to pretend that your choice is firm.  Lots of people leave Ph.D. programs and join industry.  Some of them then go back to their Ph.D. programs afterward.  Lots of people work in industry for a few years and then do a Ph.D.  Some of them go back to industry afterward.  And this is true in lots of disciplines, not just CS (which is rather closer to industry than some others I can think of).  

It's a mistake to think that this is a choice you have to make right now and then the rest of your life will be a march down a fixed road.  Careers, and educational paths, don't work like that.  

It's also a mistake to think that these kinds of decisions are hugely consequential for one's happiness.  A lot of happiness comes not from choosing the right path for you but from finding the you (as it were) in the path on which you happen to be.  See, e.g., the many Cal Newport posts on the subject, e.g.: http://calnewport.com/blog/2010/09/10/the-danger-of-the-dream-job-delusion/

If I were in your position, I'd apply both to PhDs and to industry jobs, see what I get, and then make a short-term decision, with the recognition that long-term decisions do not necessarily follow.