As an academic, you write a lot of papers. If you contribute to the disciplines of Math, Computer Science, or some domains of physical sciences, you’ve probably used LaTeX – a typesetting language – through a tool like Overleaf. What’s nice about LaTeX is that it attempts to separate concerns: Authors with minimal effort can port the text and structure of a document from one style to another. It generally produces much more ascetically pleasing output by default than what most authors would do on their own. It handles formatting of three things that generally are extremely frustrating in other tools: citations/bibliography, cross-references, footnotes/endnotes, equations, and embedded code listings. When used with a source control like Git it provides one of the best change review and tracking mechanisms of any document platform.

But LaTeX is not perfect. It can be downright frustrating if the defaults don’t quite work correctly. LaTeX does a poor job with orphan control (creating large spaces in the document to keep a short part of a paragraph from starting or ending a column). This is especially poor in the presence of multiple figures. Providing manual hints like vspace are more likely to make the problem worse than solve the issue. The ability to be able to change styles depends significantly on the quality of the template author. Writing these templates is not trivial and not well documented. The style templates that are commonly used in LaTeX are by default black and white and often use the same font. Customizing these is harder than one might expect. LaTeX’s error messages are notoriously obtuse and difficult to debug. Overleaf – the Google Docs of LaTeX has long compilation cycles – especially with longer documents when many authors are editing simultaneously. With the primary output being PDFs, adding features like interactivity, video elements, audio elements, and accessibility features like alternative text are non-trivial.

There is an opportunity for improvement. Google Docs has three key limitations to be used for next-generation scientific writing: its inability to handle cross-references, its lack of sophisticated equation or source code embedding, and its ease in accidentally overriding a style in a way that makes it hard to port from one style to another. others might advocate Jupyter Notebooks, which while not a document preparation platform, provides a mechanism to easily embed figures, interactive elements, and more in between cells. It however lacks features like cross-references and biography support.

There is however one format that could truly support these features: the modern web. The web has interactivity through JavaScript. It has had excellent support for cross-references since the introduction of the anchor tag. It even has an approach to citations through DOI and services like ArXiV. There are excellent web editing tools ranging from highly textual to highly visual, and the appearance is easily customizable with modern CSS features like CSS grid. There are even collaborative multi-player editing environments for the web with editors like Zed and VSCode LiveShare. Even equations, diagrams, and source code can be addressed with libraries like MathJax, d2/Mermaid.js, and highlight.js. It’s even more accessible, debuggable, and automatable than LaTeX.

Now I can almost hear my colleagues now, “You can be serious!! No one likes HTML!” That criticism is likely somewhat fair, but is LaTeX actually better? You still have “begin” and “end” tags for most environments. Objections of this form seem to be largely syntactic and based on the preference for lack of angle brackets. And in many cases, you can use Markdown like the academic optimized zettlr and render to HTML which is even more syntactically light than HTML or LaTeX. You might say, “LaTeX produces documents that are so pretty!”To which I respond, most of the work that goes into making the documents so the beauty comes into the generating of templates, not the authors, and when the templates fail you, debugging them is a nightmare in LaTeX but is possible because of excellent developer tools in modern web browsers. Still, others might say “But LaTeX generates documents that are PDF/A compliant and can be more easily archived and more consistently viewed across systems!”. You can fairly easily get around this restriction by incorporating print styles into the journal/conference-wide style sheet and browser and producing a PDF where required.

It’s about time we move academic writing into the 20th century and adopt the modern web as our typesetting platform.