3 ms·
Latex does not belong on the list. I have not been using it as long as many, but it does not meet OP's description at all. It's entire premise is to put the foc
by enthdegree 10y ago
Latex does not belong on the list. I have not been using it as long as many, but it does not meet OP's description at all. It's entire premise is to put the focus on writing, but at that it fails miserably.
Left to over 30 years of growth outside of its intended use case, LaTeX proper does nothing you would need it to, and the packages that you use with it are horribly fragmented. Maybe Latex is good at the things it sets out to implement, but those things aren't what I or anyone else uses it for (creating publication-quality documents). So in considering latex we are forced to also consider the environment of libraries it exists in.
LaTeX brings all the problems you had in the Windows 2000 era of programming into document creation. All your favorites like misleading compiler messages, dependency hell, choosing a compiler, knowing whether or not you have run the compiler enough times to produce a final document (!!!), bad compile environments, inconsistent naming, inconsistent syntax for passing parameters to library calls (!!!), GOTOs.
There is no way to write semantic latex for most documents where you would need it. Here's a fun project: find a way to reference the same footnote or endnote multiple times throughout a document in a way consistent with how you reference anything else (that is, using \label and \ref). Some arcane technicality in the way the counter is set up prevents you from doing this. Instead, you have to create your own global counter, write a function to maintain it, then use this function in lieu of LaTeX's implementation of footnotes.
Every time I want to do anything other than add words to my document, I have to think about whether I want to use Latex's meager facilities, facilities that I had to write, or facilities that someone else invented, then worry about all the quirks in them. If I want to add a table to my document, I need to decide whether it should be a `tabular', `tabular* ' `tabularx', `align', `array', `eqnarray', or `matrix'. Someone has told me once that one of these is very bad and should be avoided unless absolutely necessary, although he didn't tell me why, and I don't remember which one. If I want to make a cell span two columns, I have to remember whether that is the `multicols' package, or the `multicolumn' package. If my table gets too big, I now have to hard-code a split myself, or repeat the entire process and convert my table to a `longtable'. I hope I don't have to wrap anything in a `minipage'.
It baffles me that thinking about these things is prerequisite to creating a document.
The attitude that 'LaTeX is easy' is perpetrated loudly by people that haven't had to use LaTeX very much. It is only tentatively saved by the comprehensive (sometimes, if you're lucky, even readable) documentation of all its quirks.
I am not going to stop using Latex, but no one will ever get me to say that it's easy.
- lucb1e 10y agoI fully understand where you're coming from. Its syntax is weird at times and everything has to be magically done with yet another package, very few things seem to be built in. On the other hand, I don't know another environment that makes it as easy as LaTeX makes it. Markdown is easier but far from powerful enough; HTML is nowhere near as easy and just not really made for it; and WYSIWYG editors just suck as a whole. LaTeX seemed to me as everything I was looking for, even if the syntax and methods are from the eighties. Additionally, enough people use it that support is also not an issue. There are almost certainly other languages that do a similar job in a modern way, but the thing is, my girlfriend studies math and she can read/write these documents too. The network effect works in LaTeX' favor here.