184 comments

[ 3.0 ms ] story [ 253 ms ] thread
Note: The article is from 2016.
> Note: The article is from 2016.

Appending "(2016)" to the title would not detract from the article. But, as far as I could tell, none of the assertions in the article have changed in the past year since the post was published. LaTeX and WYSIWYG editing haven't undergone fundamental changes on that short of a time frame. So the article's modest age doesn't really imply anything about its relevance.

So? It's 2017, and it's not like what it discusses has changed, or wouldn't be applicable to 2007 or 1997.
The author misses one very important feature of LaTeX that is the reason why I keep a lot of my notes in it. LaTeX exposes two mechanisms for easily making replacements all across a document. One is with macros, which you can change the definition of when necessary. The other is the simple search-and-replace, which is very powerful since you can involve macro and formatting syntax in it. Traditional word-processing and note-taking software like Word and OneNote simply don't expose such powerful functionality for making edits across the entire document.
Probably word processors don't have an analgoue to LaTeX macros, but surely they do have search and replace, don't they?
Is there really a WYSIWYG word processor supporting search and replace for formatting?
I'd be surprised if word doesn't have it.

I'd also be surprised if word's implementation was anywhere near as powerful as a full-on search replace on latex using regexps.

LibreOffice Writer has it, AND regex search/replace.
Yes, Word has that (had it for decades).
But in WYSIWYG editors, you can only search for raw text correct? For instance, if I want to search for all bold text, its trivial to do so using a markup language, but I don't think there is really a way to do that with conventional word processors.
You use the style system built into the word processor. Then when you change the style, it changes all other instances of it. You can also trivially add new styles as you need.

In Microsoft Word for Windows it's the "Styles" bar, and on MacOS it's the "Styles Pane".

It requires huge discipline to use styles properly all the time, because the options to just tweak your formatting "a little" are made more prominent in every WYSIWYG word processor I've used. And if you have to collaborate on a document with others, no chance at all.

It would be interesting to see a word processor that enforced style usage...

Actually, ever since introduction of the Ribbon in Office 2007 I found the styles to be much more prominent than the presentational formatting. Not that it stops anyone who doesn't want to learn how to use Word properly to still use the latter, but simply by size and visual importance in the UI styles are far more into your face than the other formatting options.

And sure, it takes some discipline to use styles, but that goes for any other option as well (apart from things like Docbook maybe). You're supposed to use \em in LaTeX instead of \textit for the same reasons you're supposed to use an Emphasis style in Word instead of italic text. The only difference is that the mechanism is the same in LaTeX (type a few characters – which is pretty much why for any given macro you'd be hard-pressed to actually decide whether it's semantic or presentational), while in Word it's a separate feature.

It is possible to do it in word processors. LibreOffice Writer, for example, has a way to search for formatting and miscellaneous attributes, paragraph styles, and it supports regex search too.
Actually that's trivial in Word, and possibly other WYSYWIG processors too.
> One is with macros, which you can change the definition of when necessary.

I concur on this. In my phd thesis, I defined macros for all frequently used mathematical terms and expressions. This way, many places got almost as readable as the rendered formula.

For example, "\tfuzzy(1,2,3)", denoting a triangular fuzzy number with min. support 1, modal value 2 and max. support 3, is pretty clear after using it once or twice. We can then decide later how exactly to render it by changing the macro definition.

Similarly, when citing a lot of names (just using the names here, not actually paper references) wich characters which are not in my commonly used alphabet, I frequently define macros for them too. Then I can use e.g. "\Mares" in the text instead of "Mare{\v{s}}". Much easier, also when compared to hunting those special chars in a character map in a WYSIWYG word processor, or copy-pasting all the time.

However, I find this use of macros really only really pays off when working on larger documents, or living documents that keep changing, like CVs. For shorter and short-lived docs, I'd use Latex only if they have at least some math or special layouting requirements. I tried using Word's formula editor, but even though one can sort of get used to it, I find Latex much easier to use, especially with amstex. But for shorter documents without math, I find a word processor just much more convenient.

The author doesn't like writing using markup languages. Some of the rest of us do.

I'm with him to the extent that LaTeX evangelism can be oversold - when I'm talking to curious colleagues I tend to stress the vertical learning curve as much as the quality typesetting and convenient cross-referencing - but I do think most of his argument is simply a matter of personal preference.

For me, the fairly stiff default structure imposed by a LaTeX document class makes my writing easier, quite apart from any advantages at the publishing stage.

> For me, the fairly stiff default structure imposed by a LaTeX document class makes my writing easier, quite apart from any advantages at the publishing stage.

True, and if you write a lot of documentation or articles that require similar formatting, it's actually not that hard once you understand LaTeX to set up your own class that builds on one of the built in ones to make things look nicer or work in slightly different ways. You can get really nice, consistent documents without doing any extra formatting work.

So use LyX. It's a LaTeX word processor. I've used it for years to avoid having to directly write LaTeX.
I think many academics write in LaTeX because it is easier to switch between document formatting styles. If you submit to multiple journals that all have their own poorly made Word 2007 templates, even the pain of LaTeX is not so bad.
I think a lot of it is math type-setting. LaTeX just has great support because of age. Word is getting good, but there's no parity yet.
One of the best article titles I've ever seen on HN! I actually L'd OL.

I think the author's thesis could be summed up as 'I like WYSIWYG more than markup', which is purely a matter of preference. I also know there are several tools which let you do this (to varying degrees of success) with LaTeX as an output. My own preference is having a complete understanding of why everything is where it is in a layout. In my experience WYSIWYG UX has to compromise on its own flexibility and coherence in order to support intuitive and immediate operations around formatting. I have memories of superstitiously pushing bits of padding around when I had to sue word in high school. Editing complex proofs in a WYSIWYG editor seems like an exercise in frustration.

I think you could replace LaTeX with VIM, and WYSIWYG with an IDE and basically replicate the entire argument for IDEs that is often given.

It largely comes down to a ease-of-use vs power and clarity trade-off.

I thought the author's main point was that the tools seemed to be getting in the way of the student's learning and that OS in general seems to be great _after_ you have your comp sci degree and 1000 hours of RCS to draw on.

For people who wish to drive computers as opposed to building them, this seems an unreasonable hurdle and makes paid-for alternatives a rational choice. FWIW I agree.

I had a few things about TeX versus LaTeX. I think the reality is nobody really tries writing TeX.

But, ultimately my beef is the straw man that markup is bad because it is harder to read. That a graphical editor is superior because it is more readable. Instead, the advantage is that in the one you are only writing text and you are indicating special instructions to the computer. In the other, you only see what the computer is letting you see. Note that in both cases, all of those special instructions are still there. You just can't necessarily see them.

And this might sound like not a big deal. But the first time you find yourself unable to change the bold of one section of text (or centering/whatever), you will really wish you could just drop into a view that showed you why it was doing what it was doing. Which is ultimately just a markup language.

And heaven help you if you decide to upgrade word processor mid paper. Or go back and try to touch up a previous one. Markup wins because it is just plain text. And plain text wins because it is ubiquitous.

The other huge advantage that you almost touched on is tex files are text, so you can source control them. This is particularly important if different people are working on different chunks of a document. You can kind of hack around this in word, but it's a giant pita.
Word has its own version control built in, which works pretty well. You can see all revisions, and step through and accept/reject. You can also do diff of two documents.
This is definitely good for papers that are "one and done." Just don't upgrade during. And try to have a set of coworkers are using the same version and is.
(comment deleted)
For 2 people, maybe; but even then you're doing the equivalent of emailing your entire repo (in a doc) back and forth. Which is how you end up with

   report.latest.2017_0713.new.with_additions.current.adamssversion.ready.lastchange.docx
being emailed...

And if you have 3 people collaborating, sooner or later someone makes edits to something besides HEAD and then there's a giant mess to sort out.

Even better, you can script parts. Yes, the text nature was what I was highlighting. I didn't want to overstate it.

In particular, for short papers within a term, the sharing feature of word is decent enough. I confess I prefer text source control, but I know most of my peers in school did not.

There are git review tools that are able to diff docx.
How do those work with the rest of the git machinery? Does git add -p work? How are merge conflicts handled? What about git blame?

It seems to me that that everything about git is based on text files that are changed by adding and removing lines, but if there is a way to replace that behavior to handle non-textual file formats, I'd be very interesting in learning about it.

Unfortunately, this particular review tool was an internal utility at my previous employer. The only thing it could do was highlight changes in word documents. You could compare patch sets. That's all. And it was a review tool. Git itself still treated docx files more or less like binaries. The advantage was we could use word documents instead of markdown files, usually people would embed visio diagrams inside design docs etc.
On the flip side, sometimes simple formatting in Latex can be a nightmare, for example, getting your table columns spaced correctly.
Tables amuse me. I honestly think they are easier in raw TeX. Though, they are a pain in all languages, sometimes. Word, TeX, HTML, I don't think anyone has ever succeeded at the perfect table.
Yes, tables appear to be a Hard Problem.

Conceptually, there's not much to them -- a grid with one item in each grid square. How hard could it be?

Yet somehow, coming up with a system that produces nice-looking tables while using syntax that doesn't make you gouge your eyes out seems to be very difficult.

Yup, many times I have needed to blast misbehaving text with "Clear Formatting" or delete it entirely and recreate it.
Paste into text-only is a sad and modern requirement.
Also, he implies that LaTeX documents are always typeset in Computer Modern and the plain article template (which is ugly!). XeTeX can use all the same TTF/OTF fonts Word uses.

Oh, and let's not forget that Word's math renderer is gross.

He does not imply they are "always typeset in Computer Modern".

The relevant quote is "everything is (typically) printed in this weird, old-fashioned-looking typeface called Computer Modern." The "(typically)" implies that there are cases where the result is not in Computer Modern.

On the same topic, "if you want to do anything really wild and crazy – like using a typeface other than Computer Modern – then plain vanilla TeX and LaTeX won’t do. ... And anything other than vanilla TeX and LaTeX is really, really difficult to install. So difficult that most people seem to give up on installing individual packages and instead install the whole of something called TeX Live."

Again, that implies that not all LaTex documents are in Computer Modern.

He mentions XeTeX in the following: "I only needed XeTeX and XeLaTeX, which are quite small. So I tried to install just those. While I did eventually manage it, it took a long time and was very frustrating – and what was most frustrating was that when I looked for help online, the advice I found basically amounted to ‘install TeX Live; everybody else does’.

> The relevant quote is "everything is (typically) printed in this weird, old-fashioned-looking typeface called Computer Modern." The "(typically)" implies that there are cases where the result is not in Computer Modern.

In school, I was told that you should only put stuff in parentheses that is not strictly required to understand the statement. Without them, we're left with "Everything is printed in [...] Computer Modern". The first word sets the tone in a (IMO) manipulative way.

Here he uses the parentheses to clarify that not everything is printed in Computer Modern, but only that things are typically printed in Computer Modern.
Your own use of parenthetical comments shows that you don't follow that rule. Quoting you at https://news.ycombinator.com/item?id=14949375 :

"A typical megacorporation is just as centralized as a socialist government, and they probably do just as much forecasting and planning, and they apparently succeed (most of the time)."

Leave out the "(most of the time)" and it sounds like typical megacorporations always succeed.

I don't think you were being manipulative there, and I don't think the author of this TeX/LaTex essay is being manipulative now.

https://www.chachatelier.fr/latexit/ is a solution to that. Write your math in Latex > export as image. I always use that whenever I have to display math in something which doesn't support Latex.
That may work if you have a few formulas. A typical thesis may have hundreds, if not thousands, formulas.
Oh, I'm not saying it's a good option for a thesis, I would use LaTeX for that, I'm saying it's a good option if you have a few formulas and you have to use Word for whatever reason.
Can Word import PDF? How would I keep editable copies of the Math code?

I use a similar workflow for PowerPoint slides, where I have dozens of files with a minimal LaTeX template that render math fragments to tiny PDF files, which I can then include in the PowerPoint slides. It's a huge pain. (But less painful than LaTeX beamer).

It can generate PNG as well. I'm not saying it's a replacement for LaTeX, I'm saying it's a good option in the cases where you have a few pieced of math text which you have to input in a Word doc.
I dislike that the author called using a font other than CM "advanced". Since the mid-90s, it's been just \usepackage{fontname} in the header to change the set of base fonts to some other combination that looks good together.

Yes, you need to learn to do that, but it's nothing compared to all the boilerplate you need to get a basic LaTeX document working.

I agree with the overall sentiment, but I don't think that any WYSIWYG alternative exists yet that:

- Interacts well with version control: it is trivial to maintain a LaTeX document in a git repo, and the diffs are readable (especially with --color-words)

- Makes it possible to programmatically generate formatted text, tables, graphs, possibly from external data sources, either with the internal macro language or through an external scripting language

- Has reasonable separation of content and formatting. For example when submitting the same document to multiple conferences it is almost trivial to adapt the content to the required formats.

If writing mostly prose, these may not matter much, but for technical writing I would rather not do without them.

I believe that Google Docs actually handles all of those.
It does, but it has a lot of the same problems as MS Office, some worse. The scripting/macro system is arcane, proprietary, and only works in the cloud. The files aren't in an easily parseable format. You can export them to OOXML/ODF, but then you're stuck with parsing some ridiculously complex markup. As far as I know the version history is not exportable either.
Also, once I wanted to write some light math equations in a google doc and went hunting for plugins that provide just a bit of TeX-like math functionality. I did find something called "Auto LaTeX Equations", but it didn't really work all that well. It did let me typeset equations, but they came out very pixellated for some reason. I also found "gMath", but couldn't persuade it to render any equations.
How would Google Docs update a graph in a document from an external graphics file?

All my graphs and tables are generated in some programming environment, and updated frequently. In Word, I would have to right-click every single graph, select new source file, adapt graph size... Could Google Docs do this?

Make it a link to the file in Word instead of embedding it. Then it auto-updates in the document as well.
Don't know about external files, but it can update charts from sheets, and you can also write a script that does it automatically, both on word and gdocs.
Not sure about math, but dtp packages like framemaker are actually a half-decent alternative to LaTeX.

If you really want a word processor - I would recommend abiword over Ms word any day - but I still think you're better off in Lyx - but like all(?) Gui programs, it does seem to be easier to mess up your document (which could probably be fixed editing the underlying LaTeX - but if you're already comfortable doing that...).

Classical dtp packages will typically separate up text editing and layout. But then you need an editor to edit your text...

> Not sure about math, but dtp packages like framemaker are actually a half-decent alternative to LaTeX.

It appears that a license for framemaker costs over $1200 while LaTeX is free.

To command that sort of price, an alternative needs to be far more than a half-decent alternative.

True, framemaker was never cheap. I may also be conflating personal experience a bit with PageMaker or some other package - but I seem to recall FrameMaker was popular as a site licence as university. I did find this interesting review/preview of framemaker for Linux from 2000 - it was a beast - more than 20MB! :-)

http://www.linuxplanet.com/linuxplanet/previews/1812/1/

At any rate in the world of Free software, Scribus would probably be the dtp alternative that stands out.

For something in-between, Pagestream might be worth a look.

As for a commercial offering being expensive and only half-decent - that's pretty common for Free software - many Free software packages are incredible value. Things like zfs, postgresql, etc etc.

I write LaTeX mostly because it works and looks nice, everywhere. Reading the document is easy, because it renders every time I save, which is very frequently. I also use it because it let's me do sweet stuff when I want to, but I fully appreciate that that's just overhead for most people.

I mean look at the title on the screenshot rendered by Writer! It's horrific! I've found things improve when you move to a 15" 4k screen, but on my 1080p desktop monitors at work Writer is barely readable. You seem to be in luck you're using a Mac, since it's even worse on Linux in my experience.

> I know where it is because I put it there, but looking for it is hurting my eyes.

Perchance the fault is with your text editor. It hurts my eyes, too, but the problem disappears when I use my local editor.

I just write in emacs org mode and call latex (or any other language) when needed. Then I often export to latex+pdf for that nice latex look.
I am currently writing my first print book, and honestly feel that LaTeX is the best solution. I want precise control over a 250+ page book. I have never seen a WYSIWYG editor that doesn't make that a royal PITA.

Different gutters on left and right pages, chapters always starting on a right hand page, consistent and great justification, fine control over how chapter headings appear (and quick to update) etc. etc.

On a side note, is anyone aware of a good way to convert LaTeX (or the produced pdf) into an ePub?

I haven't used it, but pandoc seems like "the way".
You can compile from LaTeX to HTML with pandoc and then repackage the HTML into an epub using a tool like epubmaker[0].

YMMV though with pandoc, not sure how well it handles more fancy latex macros and packages.

The simplest thing to do might be start with a more HTML-based solution (e.g. Markdown with extensions, RST) and then compile that into whatever layout you intend for the physical/pdf form.

[0]: https://github.com/setanta/ebookmaker

Pandoc is excellent, but I'd recommend coverting Markdown to LaTeX instead of the other way around. I've tried several LaTeX to X converters (for any value of X other than PS/PDF) and frankly none of them are very good. The advantage of starting with Markdown is that you know that the format is a good match for the tool's internal AST, which makes the results much more predictable.

Pandoc has the advantage that you can still write LaTeX directly inline when you need to. You can also write in terms of divs and spans (which Pandoc understands natively) and convert these to whatever you want via filters. The latter approach has the advantage that different filters can generate the appropriate code for the format you're generating, so that you don't just lose the elements when you convert to an incompatible format.

Shameless plug: I've built a tool that helps manage the conversion: https://bitbucket.org/elliottslaughter/bookmd

HTML doesn't have a notion of multiple pages within the same document though?
> HTML doesn't have a notion of multiple pages within the same document though?

HTML is at a higher level of abstraction, but the HTML/CSS stack supports paged rendering, and browsers tend to support this for print (pre-Blink Opera did for on-screen use, though I don't know if current browsers do.)

That depends on what you're talking about. HTML itself is a text markup language, not a styling language. (Well ... mostly.)

But through CSS with a paper media-type, you can specify page-based conditions and actions.

I've worked with O'Reilly and Wrox and both have you do one document per chapter. Anything over 30 pages and MS Word starts to choke, especially with a lot of diagrams.

Neither gave me the choice to use LaTeX although I'm sure they might have been open to it had I asked.

> I've worked with O'Reilly and Wrox and both have you do one document per chapter

Ouch. The number of times I have changed stuff like gutters, margins, chapter headings, caption fonts and layouts would make that an absolute nightmare.

I am really happy how easy all that stuff is in LaTeX. (Of course, other things are a nightmare.)

> The number of times I have changed stuff like gutters, margins, chapter headings, caption fonts and layouts would make that an absolute nightmare.

The big publishers don't give you control over that. They give you a template and you have to stick to it. As an author your first and only job is to provide the content (typically).

Not everyone knows this but MS Word lets you create formatting blocks that essential behave like CSS classes. Most people have used MS Word Heading, Sub Heading, etc not realizing that as long as you never touch the font formatting options the classes can be changed globally just by applying a different template.

The final typesetting of the document is completely up to the publisher. I always assume they simply have a script that pulls out the raw text with formatting indicators and compiles it all together.

I am self-publishing.

> Not everyone knows this but MS Word lets you create formatting blocks that essential behave like CSS classes. Most people have used MS Word Heading, Sub Heading, etc not realizing that as long as you never touch the font formatting options the classes can be changed globally just by applying a different template.

Absolutely, but it's going to be a nightmare when all of my 40 chapters are in a different word doc...

Well, you would have one document tying them all together.
> I always assume they simply have a script that pulls out the raw text with formatting indicators and compiles it all together.

Not sure how it works for titles that are really 100 % text, but if any layouting has to be done for images etc. a typical workflow is to import all the files into a DTP/layout application like Adobe InDesign and do the final steps there. InDesign can import the format labels from Word and map them to its own.

You touched on the weak spot of MS Word. It works great for small documents, but anything longer and it takes forever and crashes a lot. In other words, MS doesn't scale, and I wouldn't do anything other than writing pure text in MS Word.
XSL-FO provides a similar level of format control without the headaches of a hard to debug language and fossilized macros. You can use Docbook as the launching point for the final translation to XSL-FO and use any number of human friendly markup languages (ReST, Markdown, etc.) that can be converted to Docbook. Other output formats like ePub also become easy to generate with a Docbook intermediate.
Unfortunately, XSL-FO is more or less abandonware at this point, with future development focused on CSS Paged Media.
I have only three gripes about LaTex and friends.

First, LaTeX was intended for physical publication, so there's no native notion of text reflow or "responsiveness". Worse, everyone distributes their documents as PDFs, which are a PITA to read on a smaller device or ereader. At best, an author could utilize something like pandoc to distribute an HTML version, but alas, publishers never give a damn.

Second, I have been spoiled into expecting that I can modify the way a document looks to my liking, not yours. I can't invert the colors at night. I can't change the font size, line height, or margins--and my God do people use some huge margins with LaTeX.

Then comes the math syntax... Yes it's very powerful, but its a noisy mess to read and write. I really wish we had a simpler syntax akin to ASCIIMath[0].

LaTeX: (\left(\frac{1}{2}\right))

ASCIIMath: (1/2)

[0]: http://asciimath.org/

> Worse, everyone distributes their documents as PDFs, which are a PITA to read on smaller devices

For anything other than simple linear text, I've found PDFs easier to work with than alternatives, even using letter/A4 PDFs on a smartphone.

I've found two-column papers quite awful to read on screen without the ability to reflow. Once per page you have to scroll up again to the start of the page before continuing to the next page. It's easier with a large display where you can just fit the whole page, but on a small laptop screen it wasn't a pleasant experience.
It's been quite a while since I wrote any LaTeX, but you could compile a LaTeX document into ePub if you wanted to. In essence, LaTeX is the source code for the document, and the output is whatever target it is compiled to. So, if it is compiled to pdf, that is what you get, but nothing fundamental prevents it from compiling to other formats, given that someone writes the compiler.
I've just been writing HTML/ePubs directly, with http://www.bluegriffon.org/. What do you use instead of LaTeX?
I mainly used LaTeX when going through university, but after that my use is so casual that Word is more than good enough (think short letters and the like to parents or boardmembers). For documentation and notes Markdown works very well, and certainly much simpler. At work I use a mix of Word because that's what the other non tech people use, and Markdown for documentation.
You blame LaTeX for all of these shortcomings, but some are a deficiency of your PDF reader.

For instance, if you use zathura and mupdf to read PDFs, with a single keystroke you invert the text for reading at night. I do it all the time, and it works great. Whether that PDF was generated with LaTeX or not has nothing to do with it.

I agree that at the draft stage it's not desirable to use LaTeX, or when you need to collaborate with non academic users. But Libre Office is really not a serious alternative to LaTeX (please don't ask why). Use markdown in the beginning, and when you have enough materials, you can export to LaTeX and do the final editing.
I just switch my consulting company to have all our documents (Statement of Work, proposals, NDA, MSA, etc) in LaTeX.

It has worked amazing well. For a few reasons:

1. We easily can typeset all our documents the same and if we do something like change the letterhead we can easily update them all.

2. Auto-generating documents (forms letters) is a snap.

3. Everything is source controlled.

3a. If a client needs customizations we can give them their own branch and easily diff the branch with master. Very useful for documents that have legal side effects.

Curious about clients that ask you to execute these items in their own templates? We run into this fairly often.
Unfortunately we're stuck with whatever format they use in that case. Haven't found a good way around it yet. Fortunately for our documentation system, Git does allow binary files.
Thanks. I was hoping you'd have the magic answer to that, as we face the same.
I have spent countless hours fiddling with both LaTeX and Word trying to get them to do what I want. The difference between the two is, once I had figured out how to make LaTeX do what I want, the steps were all documented and reproducible. With Word I had no such record of all the menu items, settings, and button clicks that had given me what I wanted.
This right here! This is why I generally prefer tools with a textual config/markup/command language to tools with a GUI.
> The difference between the two is, once I had figured out how to make LaTeX do what I want, the steps were all documented and reproducible.

I would add that once anyone figures out what they want LaTeX to do, they can simply create their custom document class and use it transparently anywhere they want, and share it with the world.

I'm one of those guys. I used to write my university philosophy papers in LaTeX (which I learned from physics+maths classes), and dealing with citations was definitely a lot easier. A more understated advantage of using markup was that I was trivially able to nondestructively comment out sections or leave comments on important points or paragraphs in a paper, not unlike what one would do in code. Once I got used to that I couldn't go back to WYSIWYG. Now, if I don't have time to deal with LaTeX, I'll just use Markdown or whatever format that isn't proprietary.
I've spent a lot of time in both Word and LaTeX writing papers and reports in grad school, and nowadays, strictly use LaTeX. I feel like the author missed some crucial elements as to why people use the latter. First, references, cross-references, and citations. These are all shockingly simple in LaTeX. \ref or \cite is all you have to think about to cite papers or reference figures, tables, etc. In Word, I have used Mendeley's citation system, and the built in cross reference system to the same task, but when it comes to the editing process between multiple people and having different files sent around, it invariably breaks, leading to hours of extra work either doing it manually (have fun updating figure numbers if you add another one, or citation superscript), or reinserting all the necessary cross references. With a LaTeX file, this is pretty hard to break.

Secondly, LaTeX handles figures 10000x better than Word, in that you just let it figure out placement inline. Captions are as simple as possible. Meanwhile, have you ever had that Word document with 10 figures in which you move one inline image, and every figure jumps to a different page, leading to spam clicking Ctrl+z? Or how about adding figure captions? Inline you have to use the caption tool, which isn't fantastic and often creates a text box that isn't strictly tied to the figure. The method I found best was just to have another document simply for figures and write the captions in regular text. This both looks bad, and during the editing process, requires you to switch between files to keep track of the figures that are being referenced in the text. Additionally, automatic figure numbering depends on where the figure anchor is, often leading to improper numbering. Again, referencing figures by number in Word is a nightmare that LaTeX handles amazingly.

Third, I agree, setting up LaTeX on a machine isn't fun, and I have always been bad at it. However, I don't do it anymore. ShareLaTeX has solved all of those problems for me. All packages are available, you don't have the funny "compile three times to get reference numbering correct", it's amazing at collaboration with both git-like diffs as well as Word-like track changes/commenting system, and has tons of templates so the pain of setting up your document's preamble is done for you.

One tip I have is if someone you work with doesn't know LaTeX and can't be convinced to learn it, still write in LaTeX, compile to pdf, and use Acrobat to convert to Word. That works surprisingly well. The Lyx version conversion does not work nearly as well. I can't say I've tried pandoc though, I would like to try that next.

One passage made me a bit mad:

"[...], but for now it is enough to observe that people who don’t know how to use a particular tool very well are being told to throw that tool away and learn to use an entirely new one on the grounds that it will enable them to do things that they could have done at least as well with the old one – which is (when you think about it) a little peculiar if the aim is really to help people with their writing, and not (heaven forbid!) simply to evangelise for a community’s preferred way of doing things."

I'm sorry, but this is a bad argument and the worst life advice in the article. It's the same students in school tell all the time, when they question why they should learn math, though they are set to become an artist or editor or anything that seemingly does not involve math. You particularly go to college or university to learn NEW things. Even if they are things you probably won't need in the future and are seemingly obsolete.

While he does have a point that (La)TeX Users fetishize their tool of use, most of his arguments can be used on Word or any WISIWYG tool, too. The example he gives in point 4 is so arbitrarily chosen and his minimal example he thinks is better is just as ambigious and confusing as the LaTeX one. Most comments already mention what the author's real problem: Preference of tool.

- complains about people being told to use a different tool

- goes on to tell people to use a different tool

Well, I don't agree with the author of the article in that I do think that Latex does offer an advantage in many of the use cases. In any case, any student in STEM is supposed to write some reports, and LaTeX is the only choice that makes sense, since there are not many other options with the same support for mathematical typesetting.

However, you're twisting his words a bit. He says that it's not good to learn a new tool if you have an old one which can do the job. Not that you should avoid things for which you need new tools.

I'm all for learning new skills and ideas. However, I hate learning new tools. The ideas in web development are not hard at all. However, there is an idiotic amount of trendy tools and programming languages, and that is something I would object to, because it costs a lot of people a lot of effort.

I never went to school or university to learn obsolete or unnecessary things.

Math, starting from a certain point, is useless for most people, still it is required to be learnt. Math might be a good tool to measure how good a person can think abstractly, but if it's used for that, then be honest and say so.

I wonder what would change in society if we forced all children to learn an instrument as intensive as we force them to learn math.

> It's the same students in school tell all the time, when they question why they should learn math, though they are set to become an artist or editor or anything that seemingly does not involve math.

I never finished high school. Went on to study a bit of nutrition. I work in my trade (metal fabrication) operating a laser cutter, doing a lot of 2D CAD work. I can rebuilt a car engine or build a house, including all electrical and plumbing and brickwork. I've built boats, sailed, dived, I ski, rock climb, occasionally draw a thing with a pencil. I can bash out a simple tune on a piano. I can pull a decent shot of coffee on a commercial grade espresso machine.

Please tell me which bit of your useless math I didn't do has limited me in anyway I care about?

The real downside to LaTeX/TeX is when there's a hard page limit and you have to keep hacking your document and recompiling it.

Also, writing in LaTeX you're more likely to make grammar, usage and spelling errors since those tools are not coupled as well if at all to your editor---no green and red squiggles telling you that you need basic English remediation. Yeah yeah, there are things that are close, like flyspell mode, but they're generally inferior in terms of the precision/accuracy of the types of suggestions they give you.

All that said, 'markup iz hard' is not a compelling reason not to use it.

I feel offended by the omission of my personal favorite, reStructuredText (reST). It's a very robust and readable markup language, and can easily generate documents in HTML, Linux man, latex, pdf, odt and more.

If readability of LaTeX bothers you so much, use reST. Best of both worlds, really. I only roll up my sleeves with LaTeX when I need precise control over appearance, like writing a CV or a board game manual.

Some good points for reST instead of markdown:

  * Markdown has many flavors, reST is standarized
  * reST is extensible
  * reST is semantic, Markdown is just text.
http://ericholscher.com/blog/2016/mar/15/dont-use-markdown-f...

reST is marginally harder than markdowns, so is it really worth sticking with MD ?

That margin is huge. I've worked with rST, and it's just not fun to write in the way that Markdown is; even a little friction makes a huge difference to the writing experience.
Asciidoc is a viable alternative, I think.
I've switched from writing latex to writing pandoc markdown. I then convert it to latex and then to pdf. This gets the same result as latex, but is much easier to type for common stuff like, sections, emphasis and verbatim. It also allows you to type "&" symbols anywhere.

When I require "advanced" stuff like tables and figures you can easily fallback to inline latex commands within you're markdown. It really is a significant improvement over plain latex and I haven't looked back.

I've been looking for something like Pandoc for a while, great tip!
> you can easily fallback to inline latex commands within [your] markdown

How? This sounds like a very nice middle ground between easy formatting and advanced features.

If you have LaTeX installed pandoc will interpret the inline latex when converting to pdf.
I have significant LaTeX experience and yet I do the same. Write in markdown using a good editor (I like Ulysses), then use pandoc to typeset using a custom LaTeX style file.
Yeah, I would definitely say I have significant LaTeX experience as well and use a lot of fancy packages. Using pandoc doesn't take away any of the power of LaTeX. It just makes common things easier.
I use a pandoc to generate HTML presentations in a similar way. Throw the whole thing in git and you versioned all your presentations.

In theory I could also generate the same presentations in PDF, but I sprinkled some inline HTML where needed, which would have to be converted to inline latex.

Pandoc also has a plugin system which I use to automatically convert inline graphiz graphs to png.

This is how I wrote my dissertation. I recommend it. I recommend it even though it meant I wasn't able to use Word's "Track Changes" with my advisor. Nice guy, but he wasn't going to learn Git to humor me. PDF annotations were a good enough middle ground. In the end I was glad that there was a barrier between his edits and my source -- like most academics, he tossed off his edits in a blazing hurry, and I was able to avoid some distracting changes in voice because I was typing them in myself.
Even when using only LaTeX, I still find the edit/compile/view cycle annoying compared to WYSYWIG. How much of a delay to this cycle does using pandoc add?
Pandoc doesn't add much, the compilation from markdown to latex is quite fast. The LaTeX compilation still takes most of the time, especially when having to run it multiple times because of references and cross references.
When starting with LaTeX I found myself compiling all the time.

I then realized that I cannot do much anyway and ended up writing text all the time and compiling one in a while to admire the work.

With Word I keep adding empty lines, reformatting, etc.

So, to demonstrate how bad LaTeX is, he picks the single most markup heavy thing you do (barring tables) and compares it to plain text? Plain text, I'll point out, that doesn't format the same way. In practice, there _are_ a bunch of extra steps to get this working in Word, they're just not easy to express in a text document.

Then he goes on to show the example of trying to find a spelling error. Ignoring that this just demonstrates his editor support isn't as strong as word's. And completely elides the cascading nightmare that is what happens when Word formatting goes wrong.

Someone else has already pointed out how much superior a text based format is if you want to work with multiple people or track the history of a document.

WYSIWYG editing has, to my mind, one advantage only: it's easier to get started. LaTeX has its disadvantages (such as being a macro language) but being a markup language isn't one of them.

(comment deleted)
I must admit that getting text to flow around images has always lead to cascading nightmares for me in LaTeX too.
Doing anything with images is a cascading nightmare. Thankfully the ratio of images to text in the articles I've written in Latex has heavily favored text and after a while you gather a collection of snippets for displaying images in a few common ways.
> getting text to flow around images

In general, either your images are too large when compared to the text column length, or you're trying to force text around an image when it doesn't belong there.

Usually, type-setting principles tend to place figures at the top of the page or in dedicated pages, the later due to its cost-cutting advantages. Somehow, people assume that an indeterminate-size figure can be placed anywhere without it affecting the text's readability

I like having pictures in a text, and exactly where they are referenced. If an image is not necessary for the text, then leave it out, or put it into the annex.
> work with multiple people or track the history of a document

I often proofread for my friends. I tell them that they must use Track Changes in Word. Is there a better tool that you recommend?

LaTeX + git
It would be interesting if someone could write a program that could diff two LaTeX documents and produce a change-tracked version showing insertions and deletions.

I think it's doable, but it's a serious project.

Plain old diff does just that.

I'm assuming that what you're actually asking for is a pretty GUI that pretty-prints diff's output.

Sharelatex if you want something that's easy to get started with for non-programmers (As opposed to Git)
Word change tracking is for word users like democracy. It's a bad system, but all alternatives are worse.
Google Docs supports multiple simultaneous editors and tracks revision histories. It was a lifesaver for group projects in college.

And while 'always online' is often a bad thing, it seems to be a lot more reliable than the alternatives of email chains with the attached Word document, appending -R3-edited-complete-final-done.docx to the filename, the manual merges when two people are working on the same thing, or the USB stick that gets passed around.

(comment deleted)
Being a text format means that you can use version control effectively. Latexdiff can generate diffs between versions. Wouldn't call it better, just different.
To demonstrate what a barrier LaTeX is, he illustrates by writing the title of a paper, the author, date, and first line. The result is obviously human-readable in a word processer without special training, but not in LaTeX.
Show me the person who can't answer the question "Who was the author of the paper?" by reading the LaTeX version and I'll concede you have a point.
The person first has to realize that it is an actual paper that they are supposed to be reading, instead of some kind of mangled file.
I think you're making it harder for yourself, not easier. Now you're assuming the following:

1) The person has no knowledge of LaTeX 2) They've never seen a markup language before 3) Yet somehow they've received this file, devoid of context, instead of the PDF, and they've opened it up in a text editor. And somehow this is relevant to something they're doing.

Who is this person? What are they doing? How is their experience worse than the guy with no experience of Word, no knowledge of Word who opens up the equivalent Word document in vi?

> he illustrates by writing the title of a paper, the author, date, and first line. The result is obviously human-readable in a word processer without special training, but not in LaTeX.

And that shows, at best, that if all you do is write papers with the author, date, and only thefirst line, then perhaps Word is better suited for that particular task.

But then, writing real documents is far more demanding than that.

For instance, let's say you're trying to publish your paper in a document, and your paper has more text than a single first paragraph. You find out that the style guide imposed by a journal demands that all your figures are placed at the end, in annex. In LaTeX, all you need to do is add a single line of text (include a package). How much work does Word forces you to do?

And I won't even get started on the fact that MS Word fails to support any vector graphics format.

Yeah, try to open those WYSIWYG editor docs, say, 20 years from now, and let us know how well this worked out for you.
Pretty measured essay. I went through my own LaTex fetish phase. The typesetting can get in the way of the writing. I've found it easier to first write in a text editor and then start typesetting once I'm pretty much sure of the content.