1. 30

  2. 25

    One big advantage of LaTeX (and other markup languages) the author misses: it’s plain text. In my experience, plain text makes collaborating much easier because it works nicely with version control, diffs, etc.

    Also the ecosystem around LaTeX is great, I wouldn’t want to miss latexdiff and I’m not aware of anything like it for libreoffice documents.

    Note, that I really hate some aspects of working with LaTeX, most of all the awful error messages.

    1. 6

      It’s not clear to me that the author misses that point. In fact, the author specifically calls it out:

      LaTeX is a poor writing and editing medium because it is a poor reading medium, and it is a poor reading medium because it consists not of plain text but of plain text littered with bits of code such as \ldots and \parencite.

      Then, later, the author specifically suggests Org-mode and Markdown (plain text formats that can export to LaTeX) as good alternatives.

      1. 8

        One big advantage of LaTeX (and other markup languages) the author misses: it’s plain text. In my experience, plain text makes collaborating much easier because it works nicely with version control, diffs, etc.

        Counter-point: That’s because you’re only collaborating when using Unix tooling which, surprise, works best with plain text. When using say, Google Docs, or Word on SharePoint/OneDrive, the collaboration tools become much richer, with multiple cursors and such.

        1. 21

          Counter-counter-point: those tools are highly siloed and locked-down. A Google Docs user and a Office365 user cannot collaborate on anything. Plain text is a universal common demoninator, so LaTeX and collaboration therewith is accessible to users of Windows, Mac OS, Linux, Android/iOS (if you can actually manage to type anything on a godawful soft keyboard), BSD, MS-DOS, version 7 UNIX…

          1. 13

            Just piling on this…working on academic projects where the code and the papers live together, it’s very handy to have the same versioning system handling both. And LaTeX makes it much easier to call out to source code.

      2. 10

        If you look at the three comparisons carefully, what’s actually being contrasted is not LaTeX and word processors, but the effective use of LaTeX and the naive misuse of word processors

        This is key, the value of LaTeX is less about the markup itself and more the emphasis on structure vs. appearance.

        1. 5

          I winder why other, newer semantic markup languages didn’t replace it? Docbook? HTML + MathML? Markdown + HTML + MathML? The last one provides lightweight markup for basic text structure allowing relatively easy inclusion of more complex elements.

          LaTeX is a rather dense language. I understand that tooling already exists and proven by time but it certainly doesn’t help writing. It’s not an excuse to ignore every technology advancment in the last three decades.

          1. 12

            Markdown is getting more common. It initially lacked many features needed for academic writing, like citation handling, but Pandoc’s extended form of markdown is pretty serviceable. It actually can solve problems for both LaTeX-haters and Word-haters. If you’re in a field that expects LaTeX (only provides LaTeX templates, etc.), you can write in markdown and then just use the journal/conference’s template at the end to make the PDF. And if you’re in a field where manuscripts are expected as word processor documents, you can write in markdown and then just convert to .docx at the end, letting you use a text-editor writing style.

            I personally still mainly use LaTeX, though, because I’ve grown to like some of the other packages around it, which are LaTeX-specific. For example you can generate plots directly in LaTeX from CSV files, which both fits in the “reproducible documents” trend and smooths over issues you often get when embedding externally generated plots in a document (especially around fonts). Once you’re using those kinds of features you’re pretty much committted to the LaTeX ecosystem. For the fairly large percentage of papers that are using nothing but the very basic document-structure and layout features of LaTeX though, pandoc Markdown should work fine.

            1. 2

              For example you can generate plots directly in LaTeX from CSV files, which both fits in the “reproducible documents” trend

              org-mode with babel is also exceptionally good at this. You can directly pass data from org tables to embedded code and embed the results of the code, such as textual output and graphs into a document.

              You can also embed LaTeX directly and render LaTeX fragments, equations, etc. in-line while editing.

              Screenshot: https://www.dropbox.com/s/hf5x3p9bne3tqbg/Screen%20Shot%202017-03-08%20at%2008.20.36.png?dl=0

              (Though I moved away from Spacemacs in the meanwhile.)

              Another cool feature is that you can mark any document header as a TODO item, to keep track of what sections need to be rewritten/revised/etc. I also tag sections to generate different (beamer) slides for students and myself.

              1. 2

                Yeah, there are a few approaches for handling that part of it. I’ve also just used old-fashioned Makefiles that generate figures (with e.g. an R script) and then regenerate the document.

                The thing I really like about typesetting graphs inside LaTeX isn’t really captured by org-mode as far as I can tell, though: fonts are handled in one place, and according to the parent document’s specification. The usual situation when you generate a figure with e.g. gnuplot (which org-plot seems to call out to) and then embed it in a Word or LaTeX document, is that the embedded figure has its own font configuration that doesn’t follow the parent document’s stylesheet, unless you manually configure it to be in sync. And the EPS or PDF embeds (or doesn’t embed) a different set of fonts that have to be merged with the parent document’s font embedding to produce portable PDFs. All quite possible to do, but I’ve wasted a lot of hours on this kind of thing (when IEEE Xplore rejects my PDF due to embedded font problems, some font inside a figure is the culprit 95% of the time).

                I also honestly just don’t really like org-mode files. Instead of \noise everywhere you’ve got #+NOISE everywhere; and in practice you often have both kinds due to needing to embed LaTeX markup in the org-mode markup. Doesn’t seem like a huge win except for a few things like bulleted lists (where it’s clearly cleaner). It’s especially noisy as a document format if you don’t use emacs to edit the files.

                1. 4

                  The usual situation when you generate a figure with e.g. gnuplot (which org-plot seems to call out to) and then embed it in a Word or LaTeX document, is that the embedded figure has its own font configuration that doesn’t follow the parent document’s stylesheet, unless you manually configure it to be in sync.

                  Indeed! But you can use LaTeX directly in org-mode, e.g. I have embedded pgfplots in org-mode slides. I use a small ‘by-backend’ function that embeds the tikz code directly for LaTeX-based output or generates a PDF/PNG for other outputs (e.g. HTML). E.g. in one slide deck a LaTeX block is preceded by:

                  #+header: :file (by-backend (beamer "gradient-lf.tikz") (tufte-latex "gradient-lf.tikz") (t "gradient-lf.png"))

                  it embeds the TikZ directly for LaTeX beamer and LaTeX output and creates an external image and converts it to PNG for other exports.

                  The nice thing is that I still get to use the simpler org-mode markup and the possibility to run source code a la Jupyter directly in documents.

                  I also honestly just don’t really like org-mode files. Instead of \noise everywhere you’ve got #+NOISE

                  This is definitely true. For me the balance is definitely on the ‘much easier to type and much more flexible than LaTeX’-side, but I can fully understand that you’d prefer plain LaTeX.

        2. 10

          I’ve asked myself why I persist in using LaTeX for complex documents:

          • Vanilla text. My programmer roots are showing when I use version management (git, but previously cvs and later svn) on my documents and leverage a whole collection of text-based tools including search.
          • The document workings are exposed and they (usually, see next) work. Styles, page layout, breaking, footnotes, endnotes, indices, table of contents all work and are not hidden. It’s possible that the state of word processing has improved in the last couple of years but I last found it frustrating to manage these things in Word. Years ago Wordperfect and, to a lesser extent, AmiPro had very good to excellent handling of these and could expose and change the markings. On OSX Nisus Writer Pro is great at most of this and the style management gets out of ones way.
          • Sunk costs. I’ve invested hundreds, maybe thousands, of hours with it, writing macros, debugging errors, fiddling with packages. As a highly experienced user, I can get most anything thing done.

          What do I use for simple documents? The Pandoc/CommonMark Markdown variant. The first two points above apply.

          1. 8

            Moreover, you don’t ‘have to carefully match any provided templates’, because you can switch templates just as easily in LibreOffice as in LaTeX. And you can do all these things in Word as well.

            I have had to do this, and alas, it doesn’t really work well. The initial annoyance is that the names for common parts of a paper template aren’t standardized in Word; they’re just anything the template author wanted to call them, like with CSS class names. So you have to manually map them over, matching up that what template X called “Figure caption” is instead called “Caption” or “Fig caption” in template Y. And then figure out what to do with the remaining ones that don’t map 1-to-1 between the two templates.

            And finally, and most difficult to debug, figure out what to do about the stuff that is now mis-positioned, oddly broken, or somehow missing. Especially title pages and figures are often composed of complex arrays of carefully positioned boxes, and applying a new template to a document that had been written for another one seems to often cause this to go haywire. When switching Word templates, you can map styles between the two, but you can’t (as far as I have found) do things like explain to it that the content of the floating box that semantically meant “figure caption” or “author block” in template X should go into the semantically analogous (but totally different looking) box in template Y. So in practice for me, I treat Word templates as not switchable once you’ve chosen one for a document. If I really need to switch to a new template, I just ditch the old formatted documented entirely, start with the blank example document in the new template, and then incrementally paste-without-formatting sections of the old text into the new one. This is tedious but much less likely to produce a mysteriously broken result.

            I don’t love LaTeX, but damn if switching out templates isn’t something that actually works.

            1. 5

              No mention of LyX: it is a What You See Is What You Mean text editor for latex documents. It allows me to focus on content only. You can only apply semantic operations to your content, e.g. no bold, only strong formatting of characters. It generates Latex under the hood. It also allows you to fall back to Latex commands if needed. It also features a highly desirable math expression editor. I would recommend this tool to any Latex newcomer.

              1. 1

                I would also mention gummi as a visual editor for LaTex.

              2. 4

                Really hard to beat Latex/Tex for mathematical typesetting.

                1. 6

                  Sure. But Pages.app supports LaTeX and MathML now. Further, Org mode also supports Embedded LaTeX fragments directly, and Pandoc supports Markdown with embedded LaTeX math fragments. I think the author is on to something.

                  1. 3

                    It’s really hard to beat LaTeX if you need to produce glossaries and multiple indices.

                  2. 3

                    One would simply have to type ‘Cartesian closed categories and the price of eggs’, etc – which is a lot more intuitive than typing \title{Cartesian closed categories and the price of eggs} (not to mention \documentclass{article}), as in LaTeX one must.

                    Each of these has an equivalent action that needs to be taken. Where in LaTeX you write \title{}, in a word processor you click the button to make a title (that may or may not be labeled nicely by default). \documentclass{} rather resembles the “Choose a Template” page that appears in many popular word processors. Granted, it’s writing a command as opposed to clicking a button, which seems to be the major usability difference here.

                    When it comes to stopping people from creating documents in purple 28pt Comic Sans, teaching them all to use LaTeX is a lot less efficient than stating that you will refuse to read anything that doesn’t match the style guide. (Teaching them to use word processors properly might also help.)

                    Yes, stating a specification and letting people use whatever tools they prefer is easier than teaching people to use any particular tool properly.

                    LaTeX does less to prevent authors from getting on with writing documents than TeX does. But if neither of the two existed, and you had to come up with something, right now, in 2016 – would it really be a markup language?

                    There is a good chance that the answer would be yes. The majority of programming languages tend to stick to plain text documents, due to a variety of reasons (some of these ideas apply). A document formatting (and typesetting) language would not be too different, which is what TeX is.

                    If perhaps the answer were no, then it would be a standardized data format (those also have a tendency to be plain text, or eventually be encoded in plain text, by the way), which would allow you to use whatever user interface your heart desires (and your mind and hands are able to create). This is also what most word processors do, except they don’t want to agree on a format, and each makes their own.

                    The MIT Research Science Institute argument isn’t much better.

                    I completely agree here. Those three MIT RSI arguments seem like bullshit to me. As the author said quite nicely: “Comparing good use of LaTeX with poor use of word processors is unfair”.

                    But that isn’t how most people want to write. Most of us would rather have a piece of paper or a screen that is covered in the words and punctuation marks that are actually going to appear in the finished piece than a screen covered in markup like \parencite[see][]{bennett_2002}.

                    This seems to be what the author is most annoyed about. They’re not writing about why LaTeX is bad for writing prose, as much as they are arguing as to why WYSIWYG or WYSIWYM is better for writing prose than markup. To which I can heartily say, there are WYSIWYG and WYSIWYM editors! See this table sorted by “Editing style”, and perhaps also take a look at this.

                    LaTeX was invented so that nobody would have to write prose in TeX, which is too hard for ordinary mortals. The above were created so that nobody would have to write prose in LaTeX – which is not too hard for ordinary mortals, but still a fairly bad idea.

                    LaTeX is very easy to write ordinary prose in, but it is not the most beautiful way to represent it. I agree with the author that markdown, or a word processor, may be easier to learn to use. However, I disagree that LaTeX is worse at letting me focus on my content than a word processor: the same metadata is required for both, and require learning how to use them properly; the only thing that changes is the user interface.

                    And I would like to finish by saying that TeX is not too hard for ordinary mortals, because even though typesetting is the first priority, writing content is the second.

                    1. [Comment removed by author]

                      1. 2

                        That’s not really a reasonable criticism. That is the author’s thesis statement. They then go on to use the rest of the article to argue in favor of it. The rest of the argument may be (in my opinion, is) flawed, but the thesis statement itself is just the conclusion presented a priori, so you can see what the author is arguing for. (This is normal in most writing. In scientific papers, we traditionally call it the “abstract”.) The mere fact that its grammar admits humorous substitutions is uninteresting, as that is true of almost all sentences.

                        1. 1

                          “LaTeX fetish” is a pun though.

                          1. 1

                            Yeah, I get the impression the author wouldn’t have spoken so strongly if they didn’t have such a good pun to back it up with.

                        2. 2

                          I’m glad people are finally starting to come to terms with how ugly and difficult-to-read these LaTex papers are, especially on book readers, compared to normal documents.

                          1. 3

                            I see what the author did there when choosing a title…