From Motion Mountain Wiki
The Motion Mountain Book is typeset in Latex. From 1988 to today, I have been a semi-professional Latex user. Around the year 2000, Latex, a free program collection, was the best typesetting system available. Nevertheless, since 2011, Latex is not up to date any more. Latex has lost its lead because of a typical problem of software development: mismanagement. Here are a few details on this sad story. Maybe it can be brought to a good end?
Tex/Latex's glorious past
Tex/Latex was the best typesetting system up to the year 2000 approximately. It was free, allowed good mathematical typesetting, produced good quality pdf, and was programmable. Free macros for most typesetting issues are available. Many textbooks in mathematics and physics used and still use it. But then came Adobe Indesign. And Latex fell behind.
When an author writes a text, he needs:
- Ease of use in all what he is doing:
- in typing, inserting reference labels, writing tables, writing math, spell checking, grammar checking, thesaurus use, adding bibliographic references, and in adding figures.
When an author checks a text, he needs tools that allow:
- Checking consistency in all that he did
- Setting up a style guide (e.g. serial commas or not, capitalization of titles, figure caption rules, etc.)
- Search for style guide deviations across the text
- Checking for frequently used words and expressions
- Statistics about his writing
- Search for bad language expressions, independently of latex commands and line breaks (e.g. 'the fact that')
- Mark each section (and paragraph) for completeness of: introduction, style guide, quality issues, to do's, indexing, summary, etc.
- Mark each section (and paragraph) with date of last editing
- Easy table checking and improving (e.g.: typeset only tables, one after the other, nothing else; check that all tables are referenced in the text)
- Easy figure checking and improving (e.g.: typeset only figures, one after the other, nothing else; check that all figures are referenced in the text)
- Checking and managing bibliographic references
- Manage author names from the bibliography for the name index (e.g.: merge all A. Einstein and all Albert Einstein in one index item)
- Checking and managing the glossary
- Checking and managing exercise solutions
- Manage figures, crop photos, cut and insert videos
- Collect index items
- Ease of use in all of these
When an author/producer typesets & layouts a book, he needs to:
- Define/choose a page format - with graphical help, interactively
- Choose and use a font - with graphical help, interactively
- Ensure good typography of titles, running heads, etc.
- Ensure good typography of text (e.g.: lines on same position on both sides of a page)
- Position figures & tables in the layout in a professional way (including spacing between digits)
- Produce front and back matter, table of contents, table of figures, a quality index and other lists
- Ensure good hyphenation (Oxford vs Harvard, preferred and less optimal places in all words)
- Ensure that all language-specific rules are implemented in foreign-language citations
- Ensure good microtypography, allow manual overrides (e.g. lower parentheses for oldstyle digits)
- Produce an ebook
- Ease of use in all of the above
What is missing in Latex?
In Latex, none of the above needs of a user is cared for.
- Use is extremely complicated.
- Grammar checking is not possible.
- Spell checking is complicated.
- Full reference checking (Have all figure been referenced? Are the figures correctly placed?) is not available.
- Writing of tables is really hard.
- Figure handling is complicated.
- Ease of use is non-existent.
- Page format definition is a disaster.
- Font usage is a nightmare.
- Typography rules are not supported well.
- Professional figure insertion ("always in the upper 20% of a page") is impossible.
- Table editing is extremely hard.
- Index production is the worst of all worlds.
- Automatic list production, especially their formatting, is extremely cumbersome.
- Microtypography ("all lines on fixed page positions") is not professional.
- Hyphenation is bad and hard to use.
- Ebook production is not possible.
In short, Latex misses two things: (1) Ease of use; and (2) Quality of typesetting is not as good as it could be.
Why did things go wrong?
The Latex project is mismanaged since many years.
Many dozens of programmers wrote spec papers, project plans and implemented nothing.
Specs did not reflect what book producers or graphics designers want, but what programmers thought.
Hundreds of programming man-years were wasted.
Documentation is mediocre.
What would be the solution?
- Get funding for a few full time programmers and one project leader. Find a way to finance the project for several years.
- Organize professional requirements management.
- Ask the users: authors, secretaries, book producers, typographers, and designers.
- Forget postscript programming tricks, Hethitic language, and similar crazy stuff.
- Focus on producing quality text and quality typography.
- Usability similar to Adobe Indesign/Word/Wordperfect/OpenOffice/Framemaker.
- Typography better than Adobe Indesign.
- Write a professional, usable interface that realizes these requirements.
- The interface should hide the details of latex and provides a typesetting quality comparable to Adobe Indesign.
- Write this interface for PC, OSX, Linux and Unix.
- Note: none of the available "Latex frontends" or "Latex environments" comes even close to what is needed.
- Produce a useable, state-of the art help/documentation feature.
- Nothing special, just the same as in other programs.
- Improve pdflatex/pdftex.
- The project site http://sarovar.org/projects/pdftex/ shows that essentially there is no progress in the project.
- Not much is needed on this front; just realize the features requested there, and use normal fonts.
- Get psfrag working in pdf output mode
- Produce pdf files that allow searching for ligatures
- Produce pdf files that have the same quality as those produced by Acrobat Pro
- Put Luatex, Context, etc. on prio 2: these are programmer-driven, not user-driven.
Here is my personal dream:
(1) Get Mozilla to take care of the project.
(2) Realize something similar to Wordperfect with Tex/Latex under the hood. (Remember how Wordperfect combined WISIYWIG and its own scripting language, and allowed editing in both windows?)
(3) Explore whether Openoffice could be extended. Or one of the existing Latex frontends. Explore whether it could be combined with mathml or some future xml version.