If you are a regular reader, you probably saw me mentioning LaTex at various times. I always praise it as the superior solution - one above and beyond the traditional, word processing products. So let me take a minute of your time and explain exactly why I choose to use LaTex, and why you should consider learning it.
Output Quality
The most striking difference between text produced by Word or Open Office and LaTex is the quality of the output. You have to keep in mind that LaTex is not just a mere word processor - it is a typesetting software. It does kerning, hyphenation and all the tricks used by professional typesetters who work in professional publishing industry. This means that your text is always beautifully justified and balanced across the page. Please compare the two screen shots below. This is some random Lorem Ipsum text in MS word:

sample produced in MS Word
Now compare it to the same text sample generated by LaTex:

sample produced in LaTex
They look similar, but you will notice that the LaTex sample just flows better, and looks more professional. Let’s see what happens when I contract some of the words to create really long expressions, and justify the text in word:

justified text in Word
You might be familiar with this situation. Word does not know how to break words across line with hyphens. Nor does it know how to use kerning to bring some letters closer together, and push other ones apart to avoid creating huge white space gaps. LaTex does both:

sample of the same justified text in LaTex
The difference is striking. On one had you have ugly gaps, on the other you have nicely flowing, justified text. Which one do you like more? You be the judge. And this is just the tip of the iceberg. I could show you many cases in which LaTex beats conventional word processing in placing figures, floating text around images, displaying mathematical formulas and etc.
Transparency of Markup
When you write LaTex you work with plain text files. You simply add markup commands to your text. This is very much like writing HTML - just with more features, and more powerful parser on the receiving end. So what do I mean by transparency? You simply always see what is going on. For example, consider the following LaTex code:
Plain Text. \textbf{Bold} Text.
The \textbf command is the equivalent of the HTML <strong> - it makes the text boldface. You clearly see what is going on - the text between braces will be bold, while the text outside will be plain. Word on the other hand utilizes hidden markup. Yes, there are markup characters in word! You can actually see some of them: such as paragraph breaks, tabs, section breaks and etc. Other ones, such as boldface, and font tags are hidden. But they are there. Consider the following situation:

Hidden formating in Word
Note that when I backspace too close to the boldface text, all of a sudden I find myself typing in bold again. This happens because the symbol that ends the boldface “tag” was inserted directly to the left of the space following the word Bold. Deleting that space, deleted the markup symbol, throwing me back into boldface mode.
When I taught a Fluency in Technology course at MSU this was one of the consistent issues that frustrated the students to no end. All the faculty members I talked to noticed the same thing. We know why this happens - but an average person takes it as a weird software quirk, a bug, or some sort of failing on their part. If you ever see someone struggling with Word, look for this moment:

Word paragraph formating quirks
Ask the user what do they think happen, and how do they feel about it. Reactions will likely range from disbelief to death threats addressed at Bill Gates. But this is the same exact problem that I illustrated above. Some hidden formating symbol gets deleted, and messes up all your paragraph format. How to avoid situations like this one? You can control it by being careful with what you format, and where do you put white space. But if someone gives you a file, there is really no way of clearly identifying issues like this.
In LaTex, markup is transparent. There are no nasty surprises. You match the opening brace to the closing brace, or \begin statement to \end statement - and it’s easy to see if one is missing. It saves a lot of frustration.
Ease of Modifying Styles
This is something that happens to you when you try to publish a paper. You write a really long document using one citation and formating style, and then you find out the journal requires a completely different style. So for example, you may need to two columns, different spacing between paragraphs, different ordering of bibliographic references, different style for figure captions and etc. If you are using word, chances are that once you change the font, the margins, the column layout and paragraph spacing, all your figures will end up in weird unexpected places. You may need to move them around manually. Same goes for your page breaks, section breaks and etc. You probably have a lot of work ahead of you.
In LaTex you will usually only have to edit few lines in your preamble. If you are changing to a known style such as IEEE for example you can simply download appropriate templates, toss them to your project directory and add one or two lines to your document - for example:
\documentclass[peerreview]{IEEEtran}
\bibliographystyle{IEEEtran}
Or something among those lines. The rest is done by the parser and typesetting engine. It will move around the figures as appropriate, format the text the way it should be, change the the way bibliography and table of contents is displayed and etc. It’s easy, and requires almost no manual tweaking, unless you were doing something very complex and specific. As opposed to word - it just works.
Ease of Debugging
Most of issues with a LaTex document can be fixed by analytical process of analogous to debugging code. The markup language has a strict syntax, and most mistakes will generate errors, and force you to deal with the immediately. A LaTex user usually problems such as:
- What is causing the error in this particular line of text
- What commands do I use to make this line up properly
- Did I miss a closing brace or an end statement here?
- What do I need to put in the preamble to change the spacing and text flow here
All of these problems are analytical problems that can be solved by careful elimination process, or researched via googling the error messages, or warnings and by reading extensive documentation available online. Word users on the other hand, tend to struggle with OMG WTF kind of issues:
- Why does my whole paragraph loose formating when I hit backspace (see above)
- How the hell did this embedded object get corrupted?
- I put some section breaks in the document and now my paging is all messed up
- Why does word merge these tables when I paste them?
- OMG! Everything breaks when I paste this into the multi-column section!
The only way you can debug weird formating issues in Word is by trial and error, and hitting undo many times, until you get it right. You can’t study the code and find out what you did wrong because most formating marks in your text are hidden, and handled internally. Documentation is usually lacking, and chances of finding good hits via google are directly proportional to how well can you describe the issue in a short search phrase.
No Vendor Lock In
Microsoft makes Office to make a profit. They want to lock you into their platform because they want your money. And unless we can make ODF the national standard, they will tweak their file formats with every edition, release half assed API’s and specs and do everything to make interoperability difficult. Open Office and other products will always be playing catchup. ODF is the only way out of the lock in - but the things don’t look so great on this front. My hunch tells me that Microsoft will succeed pushing their OpenXML specification (which, btw is neither Open, nor a specification - more of an incomplete set of purposefully confusing notes with a restrictive license attacked) as the de-facto format in the upcoming years.
So thanks, but no thanks! LaTex is completely open, and well documented. It has been ported to virtually every platform and architecture. And it does not require a bloated, slow editor to use. You can edit your documents in vim, emacs, notepad, or even Eclipse. You are not tied to a single company, and you are not tied to a single editor. You can pick and choose. And choice, ladies and gentlemen is an essential component of freedom, and individualism.
Don’t listen to the people who talk about the paradox of choice. If you feel paralyzed and unable to make a decision when faced with plethora of different choices, then you are probably either a indecisive person to begin with, a lazy bum who doesn’t want to do the research, or a brainwashed zombie-sheep. Some people all all of the above. Majority of people are at least one of those. But you and me - we are different. If you read this far in this long post, you are probably at least little bit intrigued by LaTex. And so you probably embrace choice and freedom. LaTex gives you that in the same way using ODF format does. The only difference is that ODF is currently supported by very few Office applications - while LaTex does not require any specialized tools. Just a text editor and the phraser/compiler.
Designed for Excellence
Tex the core of the language was designed by Donald Knuth - a man who made some impressive contributions of the field of theoretical Computer Science, and is hailed by many as a living legend. He is considered a father of algorithm analysis. The man is a genius, and he wrote Tex because he was disappointed by all the publishing software that existed at the time.
Tex was then embellished, and improved by Leslie Lamport (who also has impressive set of contributions of the field) becoming LaTex. Quite an impressive pedigree if you look at it. The system was designed by some of the most brilliant people in our field, to be the be-all-and-end-all of document preparation and publishing. Then it was released into the wild as an open source project, to be picked apart by millions of eyes and hands.
Word on the other hand… It was designed to compete and emulate Bravo - the first original WYSIWYG text editor for Xerox Alto. It was initially developed by Charles Simonyi and Richard Bridie. Simonyi was hired to work at Xerox directly from Stanford, and his crowning achievement before Word was development of the mentioned Bravo editor. Brodie was a code jokey who also worked on Bravo, and more recently a professional poker player. Since then it was slaved over by hundreds of developers on tight schedules, high pressure work environment, and conflicting goals of maintaining backwards compatibility, while preventing interoperability with 3rd party software. It’s not an impressive pedigree. Also, if you think about it, Word has all the qualifying prerequisites for a genuine OMG! WTF??? monster of a corporate monster of a project. One of those that you’d be likely to see on The Daily WTF.
I don’t know about you, but I’d rather go with the open source system designed by legends, than by kludge worthy, proprietary, corporate monstrosity. But that’s just me.
Mature and Stable
LaTex is still in active development (at least last time I checked) but the software is mature and stable. The development process is slow and steady. The current releases of the software are rock solid - I have never, ever encountered, or even heard about an issue with the compiler/parser software. The markup language is throughly documented, and widely used. Whenever you need to do something fancy, chances are that someone already did that before you and either published a complete package or at least a well documented solution online.
Office on the other hand is in constant flux. Each version tweaks the file formats, changes the menus, adds more useless functions, and more bloat. Software is unstable, and prone to crashes, and corrupting the binary files for no reason. Because of the poor design it is used by malware writers as an infection vector.
Open office, while more secure is plagued by the same set of issues. It’s a big application that is constantly changing, trying to catch up to the industry leader. Bugs abound, and interoperability with MS Office is still not where it should be.
Unfortunately, Latex is not for everyone
All of that said, LaTex is not for everyone. The learning curve is steep compared to Word or Open Office. You can’t just pick up LaTex by messing around with the UI. You have to understand the syntax, and learn it’s basic rules before you do anything. Users should at least have basic understanding or programming, markup languages, compiling and debugging software. Thus, it’s probably not something that you’d just give to a novice computer user. It’s a tool for technologically competent people who would rather work with a well documented document preparation system with strict, transparent markup syntax, rather than with quirky, buggy and unstable WYSIWYG setup.
LaTex is not something that would find much use in a corporate office environment. Who is LaTex for?
- College Students - there is no better software for writing essays, term papers, presentations, and research papers
- Grad Students - I wrote my Master’s thesis in LaTex. I can’t imagine doing anything like that in Word. It would be a suicide. Don’t do it to yourself. Use the proper tool for this task - that tool is LaTex.
- Writers - LaTex was designed for publishing, and there is no other tool that will produce high quality almost-ready-to-print documents out of your manuscripts
- Scientists and Researchers - no other tool makes it so easy to write research papers, books and journal articles
- Professors - in the past I used LaTex to generate great looking multiple choice exams, lecture presentation slides, lecture notes and etc..
- Developers - you want great looking documentation and user manual? This is the tool for you. LaTex can also output to HTML so you can easily create googlable online copies of all your documents.
- You - if you read this far, you probably have what it takes to try it, and use it well.
I don’t know if any of this convinces anyone. But those are some of my reasons for using it. Please feel free to add your reasons if you happen to be a LaTex user. And if you are not, check it out. It’s worth it. Don’t forget to let me know what you think of it once you try it.
If you guys want, I could run few introductory articles teaching basics of LaTex here on this blog. For example, if you are to lazy (or busy) to research it on your own, but you wouldn’t mind seeing some simple examples, and code samples here, please let me know.