Jump to content

Recommended Posts

Posted

Hi, I am getting a PhD in computer science but don't know what to specialize in.  I originally wanted to do machine learning but after taking some classes I realized I am bad at programming.  Then I wanted to do theoretical computer science, but after some reflection I thought I would not be able to find a job outside of academia.  What should I do?  Are there any fields of computer science that don't require you to be a Google level programmer but will still render you employable upon graduation?

Posted

 Then I wanted to do theoretical computer science, but after some reflection I thought I would not be able to find a job outside of academia.

 

Interesting, what makes you think so?

Posted

A lot of 'Google level programmers' get that good through doing a PhD. Most CS PhDs will involve a substantial amount of programming - so you're likely to improve a LOT by the time you finish.

Posted

Interesting, what makes you think so?

 

Well I just haven't heard of any.  In your experience what jobs are there for theoretical computer scientists, besides academia jobs or jobs in research labs?

 

A lot of 'Google level programmers' get that good through doing a PhD. Most CS PhDs will involve a substantial amount of programming - so you're likely to improve a LOT by the time you finish.

 

That's a comforting thought.

Posted

I agree with most people here. Let go of the idea that you are not good at programming. You may be less experienced than others or less talented. And I understand how divergent skill levels in programming can be. The distribution is hugely broad. I know people who are 10x more productive than I am. And I know very productive ppl who are 1/10x as productive as I am. But fear of it is the worst barrier to getting better. Try, fail, fail, fail, and then you will be much better.

 

But also cs theorists are marketable at some places (microsoft research, google, biotech). And a CS phd pretty much guarantees a job in industry though you might meet expectations after a year or so if you do not code well enough.

Posted

Well I just haven't heard of any.  In your experience what jobs are there for theoretical computer scientists, besides academia jobs or jobs in research labs?

What kind of job would be ideal to you? I find that most CS PhD students enter their programs specifically so they can get an academic or research lab position, so I'm not sure what your target career is if you're not interested in either.

Posted

What kind of job would be ideal to you? I find that most CS PhD students enter their programs specifically so they can get an academic or research lab position, so I'm not sure what your target career is if you're not interested in either.

 

Hmm, well I'd want an industrial research job, but I got the impression most companies are not as interested in theorists and the ones that are have very few slots available.  I also wouldn't mind working in academia or a non-industrial research lab, but there don't seem to be many jobs and the ones there are are scattered across the globe.  Basically I'm not too fussy as long as I get some sort of job that doesn't make me feel like I've wasted the last four years of my life

Posted

Hi, I am getting a PhD in computer science but don't know what to specialize in.  I originally wanted to do machine learning but after taking some classes I realized I am bad at programming.  Then I wanted to do theoretical computer science, but after some reflection I thought I would not be able to find a job outside of academia.  What should I do?  Are there any fields of computer science that don't require you to be a Google level programmer but will still render you employable upon graduation?

 

For the purpose of research and publications, the ability to translate mathematical models into programming environment should suffice: it is not like you have to code up production-ready machine learning engine anyways.

 

Try MATLAB. I have Computer Science / Social Sciences PhD. student friends in Machine Learning / Learning Sciences research, and MATLAB is their platform of choice: simple, easy to get the ideas going, and there exist several toolboxes and packages for machine learning. (Provided that you apply(ied) for Computer Science PhD., I assume that the basic constructs of programming is not foreign to you.)  Plus, it has superb data visualization support: it can generate all the fancy graphs that your publication will be using.

 

Another platform you might want to be in would be Python: relatively simpler compared to other platforms (Weka + Java or Weka + CPP) and the machine learning packages are evolving there. And a lot of pretty pretty data visualization packages available too.  

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...

Important Information

This website uses cookies to ensure you get the best experience on our website. See our Privacy Policy and Terms of Use