Word processors are getting better these days, and I'm wondering if LaTeX was a solution in the past for a buggy Microsoft Word, and it programmatically gave you the options to do formatting. I'm just starting out with LaTeX, and I find it quite good. I don't want to be working or learning an outdated technology (if it is).
[Tex/LaTex] Is LaTeX outdated
latex-misc
Related Solutions
As this question is unanswered so far, I will try my best to answer it. But I think, that because the way the question is worded, that no definitive answer is possible, so my answer will contain some portions that reflect my own opinions.
Also - as Joseph Wright pointed out in the comments - you may want to have a look at Why should I use LaTeX? and What professions use TeX/LaTeX besides CS?.
(La)TeX is great for producing texts while concentrating on the content and without too much distraction from caring about design. LaTeX can have a neat design, but the main focus is on producing text. So for essays you should be fine. Be warned, that LaTeX is not totally easy to learn, if you have to get ready an essay for tomorrow, don't try to learn LaTeX now. But if you learn it, you may save time later, because you can make all your essays with the already predefined macros and style.
You also talk about graphic design, and that may be a little more difficult. While LaTeX is able to make nice designed documents, most designers prefer to see direct output. That means, if you change something in your design-program, you see an immediate effect on the document. In LaTeX you always have to compile the document first. So, if you already have a license for a design-program and seem to able to use it, you may better use that for your design-work.
Is it worth learning LaTeX? In my opinion yes, especially if you produce many texts: reports, books, articles. What kind of people doing different subjects/occupations use it, and why? Hard to say, who uses it, but it is clear, that LaTeX seems mostly be used in science. Why? I think, everyone has another answer. For me is it the focus on the content, and doing design other days. I can even separate styling-issues in different files than the content. If I already had a solution for look for one document, I can simply copy/paste it into in similar document for same look. And as LaTeX uses simple text-files, I can use all programs for working with simple texts, from Unix command-line tools to version control.
A very common use of LaTeX is for automatic generation of high quality PDF reports that present the results of some routine analysis. For example, given some hydrology data in CSV format:
Date,Flow
2011-12-20,112
2011-12-21,109
2011-12-22,108
2011-12-23,106
2011-12-24,103
2011-12-25,105
2011-12-26,105
2011-12-27,102
2011-12-28,107
2011-12-29,202
2011-12-30,2080
2011-12-31,1940
(from: http://waterdata.usgs.gov)
One could write a quick script:
#!/usr/bin/env python
import sys, os, csv, jinja2
data = [line for line in csv.DictReader(open(sys.argv[1], 'rb'))]
# Change the default delimiters used by Jinja such that it won't pick up
# brackets attached to LaTeX macros.
report_renderer = jinja2.Environment(
block_start_string = '%{',
block_end_string = '%}',
variable_start_string = '%{{',
variable_end_string = '%}}',
loader = jinja2.FileSystemLoader(os.path.abspath('.'))
)
template = report_renderer.get_template('report_template.tex')
output = file(sys.argv[2], 'w')
output.write(template.render(data = data))
output.close()
To process a report template that uses some sort of templating language (Jinja in this case):
\documentclass{article}
\usepackage{booktabs}
\usepackage{siunitx}
\DeclareSIUnit\foot{ft}
\begin{document}
\begin{table}
\centering
\caption{Average daily flows for the Mad River}
\begin{tabular}{lS}
\toprule
Date & \multicolumn{1}{c}{Flow \si{\foot\cubed\per\second}} \tabularnewline
\midrule
%{ for row in data -%}
%{{ row.Date %}} & %{{ row.Flow %}} \tabularnewline
%{ endfor %}
\bottomrule
\end{tabular}
\end{table}
\end{document}
Bam. A table that had to be tediously compiled by hand each week using Word or Excel is now automatically generated by a re-usable tool:
Slap the script into a crontab
and forget about it.
Here is a more complicated example produced using Sweave, which is a part of the R programming language:
Best Answer
There are three aspects.
The first is the superior typesetting that LaTeX delivers. As long as no word processor approximates LaTeX’ algorithm for paragraph breaks, the latter will have its place in producing professional layouts.
Just compare a page of text written in LaTeX and Microsoft Word (or any other word processor) in the same font. The LaTeX-set text will look far superior because it will be more evenly distributed on the page, use word breaks more judiciously and if microtypography is enabled this will even have a stronger effect. There is simply no question that LaTeX delivers something unique here.
LaTeX cannot be replaced by a word processor here, only by a DTP (desktop publishing) system. Modern DTPs exist but are prohibitively expensive for most people.
The second is mode of operation: in LaTeX, I program my documents. This is fundamentally different from the usage of word processors or “modern” DTPs. But it’s not necessarily inferior.
Quite the opposite: I’d argue that it’s superior once you have learned the basics because it will always be vastly more powerful and faster to use. In fact, modern word processors provide complex scripting engines (VBScript) with huge libraries to allow users to automate certain processes. Most of what these engines offer comes for free in TeX and is vastly simpler to use.
The third is modernity of underlying technologies. Here LaTeX has some weaknesses compared to other systems and programming languages. TeX is pre-Unicode and the Unicode support that was grafted on is still causing trouble. Likewise, TeX lacks almost all features of modern programming languages. Foremost among these is the lack of a good module system. This makes package writing really painful.
In all these aspects LaTeX is indeed woefully outdated (although it gets better with XeTeX, LuaTeX and LaTeX3). But as long as there are no alternatives, TeX remains the only choice.