wood burning stoves*
The moose likes Meaningless Drivel and the fly likes If I go for a Masters Degree in CS Big Moose Saloon
  Search | Java FAQ | Recent Topics | Flagged Topics | Hot Topics | Zero Replies
Register / Login


JavaRanch » Java Forums » Other » Meaningless Drivel
Bookmark "If I go for a Masters Degree in CS" Watch "If I go for a Masters Degree in CS" New topic
Author

If I go for a Masters Degree in CS

Jose Campana
Ranch Hand

Joined: May 28, 2007
Posts: 339
Howdi Partners !

If I decide to go for a Masters degree in Computer Science, What are the topics I should reinforce ?

What's the Core of Computer Science ? I assume as of today that it is Computer Mathematics, and probably it is.
The thing is, I'm starting a quest to prepare myself the best I can before going for my masters degree by reading the Best books on the Subject.
I know there isn't a Head First Computer Science(too bad ! he he); But What would be the closest thing to it ?

Please discuss.

Good Luck,

Jose
Ulf Dittmer
Marshal

Joined: Mar 22, 2005
Posts: 42031
    
  64
Math (probably some statistics/stochastics and some discrete math) will be covered, but that's not the most important part. Some of the main areas of core computer science, along with principal texts you may want to check out (not that they all make for good self-study):
  • Algorithms and data structures: Cormen/Leiserson/Rivest, Abelson/Sussman, Wirth
  • Theory: Hopcroft/Ullman
  • Compilers: Aho/Sethi/Ullman
  • Software engineering: not sure what a standard text would be, but DeMarco ("The Deadline") and Brooks ("The Mythical Man-Month") are good starting points
  • Operating systems: Silberschatz/Galvin, Tanenbaum
  • Hardware: Hennessy/Patterson
  • Databases: Date


  • Ping & DNS - my free Android networking tools app
    Jose Campana
    Ranch Hand

    Joined: May 28, 2007
    Posts: 339
    WOW !

    That's awesome, keep'em coming, I'm taking notes !

    Regarding the part about languages, I would've thought it was the hardest part about computer Science, should I go as far as studying assembler language ? or C++ would be quite enough ?

    I'll keep posting to this thread as you reply. I have a lot of Questions, but right now I'm choreographing my SOA billing System.

    Read you later,

    And thank you very much Ulf !

    Oh, and by the way... Where's the best place to study a Masters degree in CS in Europe ? This goes to Everybody reading who has a good tip about it.

    Good luck,

    Jose
    Maulin Vasavada
    Ranch Hand

    Joined: Nov 04, 2001
    Posts: 1871
    This should be good also..

    http://en.wikibooks.org/wiki/Data_Structures

    In essence you should get a book that focuses on Data Structures that covers, regular arrays, multi dimension arrays, lists, hash tables, trees, graphs, stacks, queue etc..

    Regards
    Maulin
    Pat Farrell
    Rancher

    Joined: Aug 11, 2007
    Posts: 4659
        
        5

    Jose Campana wrote:I would've thought it was the hardest part about computer Science, should I go as far as studying assembler language ? or C++ would be quite enough ?


    Computer Science is not programming. Algorithms, structures, provability.

    No one writes assembly language any more. And the whole Java vs C++ argument is boring. Learn Scala, Schema, Python, Lisp and other languages to crack open your brain.

    Henry Wong
    author
    Sheriff

    Joined: Sep 28, 2004
    Posts: 18874
        
      40

    Many of those books listed should be for courses required for a bachelor degree. And as for programming language courses, do they really have courses dedicated to a language after the sophmore year of college, these days?. For example, I never took a course in Prolog -- instead it was just a requirement of the AI class that I took. I always thought that schools required that students be able to pickup languages on their own, after a few years of them.

    Henry


    Books: Java Threads, 3rd Edition, Jini in a Nutshell, and Java Gems (contributor)
    Pat Farrell
    Rancher

    Joined: Aug 11, 2007
    Posts: 4659
        
        5

    Its been 15 years since I was in grad school, but there were no programming courses. I think that my university offered a CS 101 programming course, but after that, you were expected to be able to pick up whatever you used.

    Nearly 40 years ago, when I was an undergrad, you could take one whole course, three credits worth, of programming for credit in the CS program.

    While the Dragon compiler book is a classic, there are more modern books that start with Java and use the more modern parsing functions of modern languages.

    The Date book listed above is very dated. Perhaps useful as an historical overview, but not much else.

    Of course, no real CS department should be spending much time on Databases unless its having the students write a relational DBMS as a project in a semester.
    Jose Campana
    Ranch Hand

    Joined: May 28, 2007
    Posts: 339
    It's quite remarkable to see that it's Not about programming, so I had thought before.
    But, it makes me wonder then, Is it the right path for someone with a profile like mine ? Someone who's spent a total of 4 years developing Enterprise Applications using the Java language.
    What kind of Jobs would I have access to If I become a Computer Scientist? and what's the difference for a Head Hunter for someone who's a Master and someone who's not ?

    I realize that I have a ton. of questions I know, and expect to see more of them because it's a huge decision for me. Oh, and let be a little annoying here by asking again:

    Could someone please tell me where in Europe would be the Best place to Study CS ?

    Good Night,

    Jose

    Ulf Dittmer
    Marshal

    Joined: Mar 22, 2005
    Posts: 42031
        
      64
    Jose Campana wrote:What kind of Jobs would I have access to If I become a Computer Scientist? and what's the difference for a Head Hunter for someone who's a Master and someone who's not?

    If you're pursuing a graduate degree in the hope of it having a direct impact on your employability, then you're likely to be disappointed. While there are jobs out there that require the kind of knowledge you'd pick up, it's definitely not the majority. The more experience you have, the less important becomes your academic CV.

    Over time you'll get an indirect career boost, since you'll be better at what you're doing by having a firmer footing on the basics and theory. But don't expect a recruiter or someone in HR to put much emphasis on it.

    Pat Farrell wrote:Of course, no real CS department should be spending much time on Databases unless its having the students write a relational DBMS as a project in a semester.

    I agree. That was listed more as something that a practitioner should have a good grasp on, than as something that would be treated in CS. Just like these days everybody should have a solid knowledge of TCP/IP (such as imparted by Volume 1 of Douglas Comer's series) although that wouldn't be taught in school.
    Monu Tripathi
    Rancher

    Joined: Oct 12, 2008
    Posts: 1369
        
        1

    You might want to revise your concepts in the fields of Computer Networks and Distributed Computing too.
    (Mr. Andrew Tanenbaum has written books for these too and I think they are very good.)


    [List of FAQs] | [Android FAQ] | [Samuh Varta]
    Jose Campana
    Ranch Hand

    Joined: May 28, 2007
    Posts: 339
    Being as honest as I can be, let me confess that....
    The reason I have to go and study to obtain a Master's degree in CS is still ambiguous even to me.
    Putting it in a different perspective, I've browsed through the job opportunities Google offers and, one of the obvious patterns I noticed, is their preference for people with Masters Degrees and/or PHDs.
    This should probably end up in a different thread, but... Do you find my reasoning to be satisfying enough for me to start considering a Masters degree seriously ?

    It's probably just an obsession, or day-dreaming, But I'd like to know what do you think about people like me with expectations that are high enough to do anything to give it a shot at trying to apply for a job at Google.
    It's pretty clear that I'd do anything... Would I end up disappointed ?


    Don't really know why, But something drives me to try to work for Google.

    Pat Farrell
    Rancher

    Joined: Aug 11, 2007
    Posts: 4659
        
        5

    Jose Campana wrote:But something drives me to try to work for Google.


    Google, Microsoft, and other firms have the pick of employees. They only hire the smartest, brightest folks, and they expect them to work incredibly hard and excel. Typically, folks they want to talk to are in the top ten of their classes.

    Jose Campana
    Ranch Hand

    Joined: May 28, 2007
    Posts: 339
    Pat Farrell wrote:
    Jose Campana wrote:But something drives me to try to work for Google.


    Google, Microsoft, and other firms have the pick of employees. They only hire the smartest, brightest folks, and they expect them to work incredibly hard and excel. Typically, folks they want to talk to are in the top ten of their classes.



    Hmmmm, I know.
    and what you're trying to tell me is ?

    Because I believe that what you just said its a Fact.I just don't see where's the advice in your statement, if it was implied of course.

    Thank you for reading my Meaninglessness....

    Jose
    Pat Farrell
    Rancher

    Joined: Aug 11, 2007
    Posts: 4659
        
        5

    Jose Campana wrote:and what you're trying to tell me is ?

    Its really a question for you to answer. You don't have to even reply. Are you the smartest guy in your classes? do you work the hardest?

    If the answer is "yes, absolutely" or even "yes, I'm confident" than this may be a realistic goal. But if its not, then whether or not you get a Masters will have no impact on working for Microsoft, EA, Google, etc.

    I'm not seeing why you are focusing on the Computer Science MS, there are other related Masters programs that will accomplish the same thing (get you noticed above the crowd) that may match your interests better. Software Engineering, Information Systems, etc.
    Jose Campana
    Ranch Hand

    Joined: May 28, 2007
    Posts: 339
    Oh yes, it is a Realistic goal as far as I'm concerned.
    Why the MS degree?, do you ask. it's because I truly believe my current education is not as deep in terms of courses in comparison to the education dictated in other schools.

    Hey, now That I have your attention, Do you know where in Europe would be the best University to study CS, or any of your suggested study programs ?

    Thanks once again.

    Jose.
    Pat Farrell
    Rancher

    Joined: Aug 11, 2007
    Posts: 4659
        
        5

    Jose Campana wrote:Do you know where in Europe would be the best University to study CS, or any of your suggested study programs ?

    Sorry, I'm in the US. Everyone knows the hot programs here, MIT, UC Berkeley, Stanford are the top three in any list. Places like UCLA, CMU, Washington, all are in the top 15 or so.
    Jose Campana
    Ranch Hand

    Joined: May 28, 2007
    Posts: 339
    Yes, those Universities are indeed awesome. Have read reviews about them many times.

    I hope somebody replies with an European suggestion, that would be nice.

    Thanks Pat !

    Have a nice day.

    Jose
    Jeanne Boyarsky
    author & internet detective
    Marshal

    Joined: May 26, 2003
    Posts: 30580
        
    154

    Jose Campana wrote: I've browsed through the job opportunities Google offers and, one of the obvious patterns I noticed, is their preference for people with Masters Degrees and/or PHDs.

    Google does a lot of deep algorithmic work. It's hard and requires a lot of study of algorithms to be good at it. Yes, they want the best. But they do have a reason behind wanting formal study.


    [Blog] [JavaRanch FAQ] [How To Ask Questions The Smart Way] [Book Promos]
    Blogging on Certs: SCEA Part 1, Part 2 & 3, Core Spring 3, OCAJP, OCPJP beta, TOGAF part 1 and part 2
    Jose Campana
    Ranch Hand

    Joined: May 28, 2007
    Posts: 339
    Jeanne Boyarsky wrote:
    Google does a lot of deep algorithmic work. It's hard and requires a lot of study of algorithms to be good at it. Yes, they want the best. But they do have a reason behind wanting formal study.


    And besides wanting people with a Great understanding about algorithms, is there another reason for Google to want formal study ? or that was your whole point?

    Good night,

    Jose
    Jeanne Boyarsky
    author & internet detective
    Marshal

    Joined: May 26, 2003
    Posts: 30580
        
    154

    Jose Campana wrote:And besides wanting people with a Great understanding about algorithms, is there another reason for Google to want formal study ? or that was your whole point?

    That was my main point. It's incredibly difficult to gain that formal mathematical understanding of complex mathematical algorithms on your own. And it's certainly easier to recognize that understanding from Google's point of view if it comes from a school.
    chetan dhumane
    Ranch Hand

    Joined: Jan 07, 2009
    Posts: 629

    Pat Farrell wrote:
    Jose Campana wrote:But something drives me to try to work for Google.


    Google, Microsoft, and other firms have the pick of employees. They only hire the smartest, brightest folks, and they expect them to work incredibly hard and excel. Typically, folks they want to talk to are in the top ten of their classes.



    What does mean by smartest,brightest folks.
    Can you please explain it in detail.
    I can't define it ? I want an example.

    http://www.androcid.com/
    chetan dhumane
    Ranch Hand

    Joined: Jan 07, 2009
    Posts: 629

    What type of masters degree you are going for ?
    Is it MS or M.Tech ?
    Please suggest.
    Ulf Dittmer
    Marshal

    Joined: Mar 22, 2005
    Posts: 42031
        
      64
    chetan dhumane wrote:What does mean by smartest,brightest folks.

    Get a dictionary of the English language and look up "bright" and "smart". Then apply the concept of superlatives to those adjectives.
    Monu Tripathi
    Rancher

    Joined: Oct 12, 2008
    Posts: 1369
        
        1

    The reason I have to go and study to obtain a Master's degree in CS is still ambiguous even to me.


    You should complete your studies first unless you have a very strong reason to defer it or not go for it at all. One you start working(which could be anywhere), it becomes very hard to go back and resume studies. And when you cannot you regret your decision.

    Learning and acquiring knowlege, perhaps even more than what is required for survival, will never hurt; it always does you some good.
    chetan dhumane
    Ranch Hand

    Joined: Jan 07, 2009
    Posts: 629

    Ulf Dittmer wrote:
    chetan dhumane wrote:What does mean by smartest,brightest folks.

    Get a dictionary of the English language and look up "bright" and "smart". Then apply the concept of superlatives to those adjectives.


    I am not asking the question in theoretical aspects.
    I think you did not get my question.
    Think in silent for about 1 minute.
    Ulf Dittmer
    Marshal

    Joined: Mar 22, 2005
    Posts: 42031
        
      64
    One you start working (which could be anywhere), it becomes very hard to go back and resume studies.

    I disagree. It's a common occurrence -for example in the USA- to get a few years worth of actual working experience after obtaining a Bachelor's degree, and then to decide whether to go for an advanced degree. Some schools or programs even require that you do so.
    Ulf Dittmer
    Marshal

    Joined: Mar 22, 2005
    Posts: 42031
        
      64
    chetan dhumane wrote:I think you did not get my question.
    Obviously not.
    Think in silent for about 1 minute.
    I promise I won't.
    chetan dhumane
    Ranch Hand

    Joined: Jan 07, 2009
    Posts: 629

    Ulf Dittmer wrote:
    chetan dhumane wrote:I think you did not get my question.
    Obviously not.
    Think in silent for about 1 minute.
    I promise I won't.


    I want to ask that whats the actual difference between the guys who work in smaller companies and the guys who works for google,microsoft.
    Why is it so ?
    Why there is level of earning difference between each person ? Who decides it ?
    Monu Tripathi
    Rancher

    Joined: Oct 12, 2008
    Posts: 1369
        
        1

    Ulf Dittmer wrote:
    One you start working (which could be anywhere), it becomes very hard to go back and resume studies.

    I disagree. It's a common occurrence -for example in the USA- to get a few years worth of actual working experience after obtaining a Bachelor's degree, and then to decide whether to go for an advanced degree. Some schools or programs even require that you do so.


    Saw this coming when I wrote that statement; I agree in your disagreement, it is indeed controversial.

    I found it hard to go back and resume my studies.

    It is a brilliant concept in theory to get your hands dirty and get valuable experience before you choose M.S. But there have also been cases where people got comfortable with their jobs, lured by the money and forgot about higher studies.
    It could still work for you if-
    1. you take your job as temporary with the intent of resuming MS again,
    2. manage not get lured or satisfied with the money and become complacent
    3. manage to find time amidst all the work to keep brushing up on concepts you've learnt.

    It is after all my opinion and I know how often I could be wrong...

    Jose Campana
    Ranch Hand

    Joined: May 28, 2007
    Posts: 339
    I think I already have what you guys know as a Bachelor Degree.
    I'm a Sun Certified Java Programmer. and have been working in the field of software development for 4 years now.
    Before obtaining my Bachelor's degree I worked for a complete year to gain experience, and I'm currently completing my academic goals, But seeing that I'm getting better at this, it is only natural to look for more ambicious endeavors.
    The next step was the easiest to figure out, because There is only one single choice really, and it became obvious that becoming a Computer Scientist was the path to follow if I ever wanted to get What I really want, that is, to work for Google.

    Maybe once I'm working on my Masters degree it will become hard to get back to work.

    I wonder what's a better place to go and look for a University in Europe: Sweden or Germany ?
    or in General, which country would you recommend ?

    Thank you Jeanne, and all of you guys, for reading my comments,

    Best Regards,

    Jose
    Pat Farrell
    Rancher

    Joined: Aug 11, 2007
    Posts: 4659
        
        5

    Jose Campana wrote:or in General, which country would you recommend ?


    If your goal is to get hired by Google, or the next Google, then you greatly improve your odds by going to a school where Google already does on-campus interviews. Which means go to UC Berkeley or Stanford.

    Sure, they are expensive and hard to get into. But that is where Google looks, since the founders came from Stanford.
    Henry Wong
    author
    Sheriff

    Joined: Sep 28, 2004
    Posts: 18874
        
      40

    Pat Farrell wrote:Sorry, I'm in the US. Everyone knows the hot programs here, MIT, UC Berkeley, Stanford are the top three in any list. Places like UCLA, CMU, Washington, all are in the top 15 or so.



    Side note. I don't know why, but there seems to be something special about Carnegie Mellon University (it is a great school). For some reason, when I talk to many of my client companies about their interns, they seem to favor, (and in one case, only use students) from Carnegie Mellon.

    Of course, it may just be coincidence.

    Henry
    Jose Campana
    Ranch Hand

    Joined: May 28, 2007
    Posts: 339
    Carnegie Mellon is a school I have always had my eye on.
    It's like a dream school, and I've seen their programs and they have by far the more options to choose from, when it comes to different emphasis areas of Computer Science.
    However, due to some financial issues I may not be able to study in the US. and would probably have to choose a place in Europe, that's why I ask so intensely about it.
    ha ha ha ha, Everybody seems to be dodging the subject of Europe.
    May I know why? Or is it simply that you guys don't know ?

    Jose
    Pat Farrell
    Rancher

    Joined: Aug 11, 2007
    Posts: 4659
        
        5

    Henry Wong wrote:Side note. I don't know why, but there seems to be something special about Carnegie Mellon University (it is a great school). For some reason, when I talk to many of my client companies about their interns, they seem to favor, (and in one case, only use students) from Carnegie Mellon.

    CMU is a great school. It has a long history of being first rate. It might even be as "good" as Stanford or Berkeley, but it doesn't have quite the world-wide reputation.

    For quality of education, I think CMU is in the top ten list, but since its not out in Silicon Valley, it hasn't infested Google and other SV firms as much as Stanford and Berkeley have. Folks tend to hire friends, and hire from schools that they went to.

    Each year, when you hire ten people from a school, they form the folks who do interviews in the future years, so you get a feedback loop.
    Pat Farrell
    Rancher

    Joined: Aug 11, 2007
    Posts: 4659
        
        5

    Jose Campana wrote:May I know why? Or is it simply that you guys don't know ?

    I have not dodged it, I addressed it directly. Since I'm in the US, I don't have experience with them, and with your stated goals, I believe that you should get to one of the top US schools.

    Or change your goals.
    Jose Campana
    Ranch Hand

    Joined: May 28, 2007
    Posts: 339
    I'll keep in mind your recommendations. I take them very seriously and I will analyze my current situation in academic terms including my goals.

    Thank you Pat.
    Martha Simmons
    Ranch Hand

    Joined: Jun 24, 2008
    Posts: 130
    PF: The Date book listed above is very dated.

    Hi Pat,

    I am curious what you mean by "dated" (nice pun, by the way ), especially considering that Ulf didn't specify which book he means. Here is a relatively (another pun? :shocked: ) fresh piece of writing by C. J. Date, but I guess you mean that the substance of what he is writing is dated, and I am curious why.
    Pat Farrell
    Rancher

    Joined: Aug 11, 2007
    Posts: 4659
        
        5

    Martha Simmons wrote:I am curious what you mean by "dated" (nice pun, by the way ), especially considering that Ulf didn't specify which book he means.


    His main book, An Introduction to Database Systems Addison Wesley; 8 edition (August 1, 2003), so even the latest revision is nearly 7 years old. I can't find a date for the initial vesion, but it was back in the 70s. I have not read a recent version, but the one I have is missing a lot of stuff that we take for granted.

    Its not wrong, just old.
    Jose Campana
    Ranch Hand

    Joined: May 28, 2007
    Posts: 339
    Returning to the original subject of this thread, as you guys have seemingly done already,
    I would like to ask the following question:

    What is your recommended book for Computer Mathematics ?

    I know many have been written on the subject, but my pick would be the closest to Head First style of writing and teaching. Is there such a thing out there ?

    I hope somebody knows...

    Thanks again,

    Sincerely,

    Jose
    Ulf Dittmer
    Marshal

    Joined: Mar 22, 2005
    Posts: 42031
        
      64
    What is your recommended book for Computer Mathematics ?

    I liked this one: http://www.amazon.com/Concrete-Mathematics-Foundation-Computer-Science/dp/0201558025/ref=ntt_at_ep_dpt_1, but it's not in HF style.
     
    GeeCON Prague 2014
     
    subject: If I go for a Masters Degree in CS