Getting Started With LaTex

LaTex is a document preparation system for the Tex typesetting program. It is widely used in academia. You can read more about it in the world wide web, but I am here to describe about how to set up LaTex in your personal computer if you want to get started.

For Windows Computer

  1. Download and install MikTex (this is the Tex engine)
  2. Download and install a GUI for editing LaTex documents. Texmaker is a cross platform LaTex editor which I have used quite extensively and its pretty  good.

For Mac Computer

  1. Download and install MacTex (this is the Tex engine)
  2. Download and install a GUI for editing LaTex documents. Texmaker is a cross platform LaTex editor which I have used quite extensively and its pretty  good.

The best way to learn LaTex is from this wiki book. You don't want to read the whole thing, but a first few chapters to get a feel for it. Then you can start typing on your favorite Latex editor and refer back to the wiki book as need be. In most cases, you don't have to start a document from scratch. A lot of free templates are available online which you can download and start from there. There are templates for letters, resumes, cover letters, presentations, thesis, you name it.

Top CS Text Books

  1. Discrete Structure and its Applications
    • Discrete Mathematics and its Applications, by Kenneth H. Rosen
  2. JAVA
    • Absolute Java, by Walter Savitch from Pearson Publishing
    • Effective Java, by Joshua Bloch
  3. Data Structures and Algorithm
    • Data Structures and Algorithms in JAVA, by Goodrich, Tamassia and Goldwasser
    • Introduction to Algorithms, by Cormen, Leiserson, Rivest and Stein
    • Algorithms by Dasgupta, Papadimitriou, and Vazirani
    • Algorithms by Sedgewick and Wayne
    • Algorithm Design by Kleinberg and Tardos
  4. Mathematics
    • Essential Calculus by James Stewart
    • Differential Equations and Linear Algebra by Farlow, Hall, McDill and West
    • Applied Linear Algebra by Olver and Shakiban
  5. C and C++
  6. Operating Systems
  7. Software Engineering
  8. Computer Networking
    • Computer Networking: A Top Down Approach, by Kurose, Ross and Wesley
  9. Artificial Intelligence
    • Artificial Intelligence: A Modern Approach, by Russell and Norvig
  10. Machine Learning
    • Pattern Classification, by Duda
    • Speech and Language Processing, by Daniel Jurafsky and James Martin
    • Foundations of Statistical Natural Language Processing, by Chris Manning and Hinrich Schütze
    • Natural Language Understanding, by James Allen