# Best Way to Start Using LaTeX/TeX?

I'm not really a programmer but am quite interested in learning how to use LaTeX/TeX. I've looked it up on Wikipedia and scanned through it and the documents created through this way of editing is just beautiful. Formulas are also available within it too, so writing math thesis or physics papers would be amazing.

Is this system just for programmers, or can normal people use it too? (I'm mainly a designer so I usually edit it in Word or InDesign.)

-
As there is no single correct and objective answer, should this be made CW? –  Juan A. Navarro Oct 22 '10 at 15:31
I like the nice dichotomy between "programmers" and "normal people" –  Seamus Oct 22 '10 at 16:23
@Seamus: Hey! I resemble that remark. –  Matthew Leingang Oct 22 '10 at 16:30
@Seamus: And where do mathematicians fit into that picture? –  Caramdir Oct 22 '10 at 19:27
@Caramdir I refer you to this: imgs.xkcd.com/comics/purity.png –  Seamus Oct 23 '10 at 12:35

I think a good place to start is to flick through the not so short introduction to LaTeX. Obviously, you don't need to read it cover-to-cover, but it's good to read enough to understand how and more importantly why LaTeX is different from a word processor like Word.

The first most disorienting thing about LaTeX is that you don't have a WYSIWYG approach. (What You See Is What You Get). If you're unfamiliar with the idea of markup this is quite a change. Instead of showing your computer what you want by selecting the text and clicking the "bold" button, LaTeX works by getting you to tell your computer what you want:

``````\textbf{Something Something Dark Side}
``````

This command `\textbf` is basically saying to your computer "make the text between braces boldface".

When learning LaTeX, the most important thing is knowing where to go when you get stuck. I've found googling the problem to be a surprisingly good way of finding answers to problems. For example, if you want to know how to turn off automatic numbering of the sections, googling "turn off section numbering LaTeX" brings up two sites with useful information as the first hits: The LaTeX wikibook page on document structure and a blog with some tips and tricks which both include ways to solve the problem.

The LaTeX wikibook is a good resource. It is pretty basic, but it covers the basics rather well. Another LaTeX primer is available here.

If it's a particular package you're having difficulty with, use the `texdoc` facility. So if you're struggling with, say, the `hyperref` package, typing `texdoc hyperref` into the command line will open up the documentation for that package. This works for most packages. (If you're on Windows, I suppose Start Menu > Run gets you a command line, right?)

There is an awful lot to learn, and don't try and learn it all at once. Start with a simple project, get that to work. And only then think about how to complicate matters. LaTeX takes practice. You won't be able to migrate from doing everything in Word to doing everything in LaTeX overnight... But stick at it and you can do pretty much everything Word can and more! And better.

-
I should mentioned that I'm a research student in a philosophy department, so I'm not exactly a "programmer type". But then, I don't really fit the "normal person" category either. (How many philosophers do you know who use emacs and spend their spare time playing with R and netLogo?) –  Seamus Oct 23 '10 at 12:37
"How many philosophers do you know who use emacs and spend their spare time playing with R and netLogo?" Clearly, not enough... not enough... –  levesque Oct 23 '10 at 19:51

To add to Seamus and Pieter's answers, you should find yourself a project, a document which you would like to render with LaTeX. Without any goal, you will slowly lose interest (at least I know that I would).

-

It is not at all a system solely for programmers. Fact, the learning curve might be steeper than Word's or InDesign's, but that's because you need another way of thinking about typesetting. That might lead to the image of TeX being more for programmers, but that's just because programmers are more familiar with working in another mindset (e.g., using your keyboard and plaintext to get something done).

Just go ahead and learn LaTeX by reading some online tutorials. The Related section on this question suggests a really nice starting place for this: http://tex.stackexchange.com/questions/11/what-is-the-best-book-to-start-learning-latex.

And, as both a computer science and mathematics student, I'd say mathematicians are better at LaTeX than computer scientists / programmers. So there goes the proposition of LaTeX being for programmers :).

-

All of these are great responses. My simple response would be "write something." Take something that you would write any day, like a letter or any printed document for one of your customers. Then mark it up. Give it sections, bold text, etc.

Experiment!

It's fun.

-

The way I started, and often still use, latex is quick and dirty. Pull up what you want from your favorite search engine and copy/paste. Grab a resume http://rpi.edu/dept/arc/training/latex/resumes/ or a {any document type} {search: {any document type} tempplate latex} and start modifying it to suit your needs. If you need technical stuff some journals (ieee I know) publish their template.

You'll find yourself picking up little tidbits on your way to being able (eventually) to hack up a file from scratch. There's a nice smartphone app that's a quick reference. The LaTeX symbol list is a nice resource if you'll be doing some heavy stuff.

Latex is easy and fun and you'll be typesetting your Christmas cards from now on I'm positive.

-
I quite strongly disagree with the search engine & copy-paste part. There's an awful lot of bad code out there, either not robust or completely obsolete (not even mentioning sub-optimal solutions à la "code it yourself" when there's a package that does it better). I too often need help colleagues (mathematicians, not "programmer type") debugging their bloated preamble grown from copy-pasting overs the years. I definitely don't recommend this approach over the long run. –  mpg Oct 30 '10 at 1:11

Probably the easiest way to think about TeX is in terms of HTML and CSS, if you're a designer, or in terms of Styles in InDesign.

In InDesign, for example, you can write plain text files and then import them into your indesign document. You can tag those plain text files to tell InDesign what the proper application of styles are to various bits of text, this is a header, that's italic, and so forth.

Then, in your document, you can define what those tags mean in terms of output.

TeX is a lot like that. You write a text file that contains tags to define the properties of the text, and there is a separate file (a class file) that determines how big a section title is, how to interpret bold face, and things like that.

To get started, you need to install TeX Live from the TeX Users group. If you aren't a scientific type, and want great control over your document, you might consider using a different package than LaTeX. La is a set of macros (think shortcuts) that make TeX (the typesetting language) easier to use, but it is biased towards journal publications and isolates you from page layout.

If you want more control over the final look, you might be happier using the ConTeXt package--again, this is a layer on top of the underlying system designed to simplify its use.

To use any of these things is fairly simple: you write a plain text file in the editor of your choice and then use the command line (or at least, I use the command line) to run a typesetting command like `pdflatex mydocument.tex`. If all goes well, the result is a beautiful PDF.

-

Yes, you can use it!! While I am in computer tech support I am by no means a programmer. I use LaTeX for all of my procedure documentation as well as letters and it is outstanding! It just might take a while to get your head around it. Install TexLive and Texmakerx, find a simple article-class template and start experimenting. That's the only way you'll learn it.

I don't use a word processor unless it's to open someone else's document.

Kent

-