Ordinarily, when it comes to document editing, tools such as notebooks and word processors come to mind. But alas, that’s usually the last thing math folks have in mind when it comes to the task…
In fact, in what follows, we’ll introduce you to the fascinating world of mathematical typesetting. We’ll also introduce you to a marvelous tool adopted by a wide range of technical scientists — so that they can communicate with each other with precision and ease.
Ever heard of a software application called Microsoft Word? Of course you do! And chances are, you have been using it — or another What You See Is What You Get (WYSIWYG) word processor (e.g., OpenOffice.org Writer, Google Docs) — all along over these years.
And here is something potentially unpleasant to the ears: what if we were to object that sometimes, they could just be the poor tools designed with the wrong philosophy in mind? Or that they are built primarily for general usage, and is thus ill-suited for technical publishing at a wider scale?
And while these text editors are undoubtedly highly powerful and accessible, there are also 6 critical flaws that they tend to suffer from. These range from the ones that may have been annoying you in the past — to the subtler ones that you might not even have been aware of.
Quick question: How do we open a doc/docx file? With Microsoft Word of course! (or a variant that accepts these filetypes). In other words, opening a Microsoft Word file requires a Microsoft-Word-like application. Try opening these files with basic text editors such as NotePad (or TextEdit in Mac) and see what happens: you’d probably get a bunch of weird and unintelligible symbols that just make no sense!
In addition to being text-unfriendly, converting these filetypes to other formats — or even just older formats — could very well jeopardize the formatting, alignment, or other specifications in the document. This would then require another round of judicious manual correction on your own, which could very well be somewhat painful or infuriating. In fact, there have been many recurring episodes of file conversion disasters in the history of Microsoft Word (in the olden days at least).
How much does a proper Microsoft Word® costs? Well, here a picture is worth a thousand words:
Or if you prefer subscription plans for Office 365, which seems at least a bit cheaper on the surface:
As powerful as word processors are, the proprietariness of document preparation applications, while many times justifiable, can hinder the democratization of the publication of creative and scholarly work — a right previously reserved to the elites, and often associated with the publishing industry even decades ago.
And of course, there are also the free, open-source variants of Microsoft Word such as OpenOffice.org, LibreOffice, NeoOffice (for Mac OS X) or Google Docs. The problem — if there is one — is that they invariably suffer from the typical weaknesses exhibited by a standard WYSIWYG word processor, such as the limitations when it comes to feature extension, and the general clumsiness of the design interface.
While traditional WYSIWYG editors provide an enormous amount of choices in terms of fonts, font sizes and colors, documents produced using those editors tend to lack the typographical machineries to make them visually pleasing and satisfying. For one, the texts in these editors tend to be typesetted in low resolution, with usually little to no care on minute ornamentations (e.g., ligature) and spacing/alignment details (e.g., hyphenation) that are commonly observed in professionally produced journals and printed books.
Poor typography aside. With the traditional WYSIWYG word processors, the end of the lines are — more often than not — poorly aligned. And even if a paragraph is fully-justified, there is usually a lack of consistency in the interword spaces — which in turn could make the document look even messier than usual.
And if you want to produce elaborated formulas and equations in its full glory, you are pretty much out of luck. After all, while the standard WYSIWYG editors usually allow for the insertion of exotic symbols and rudimentary equations, in more likelihood, you’d probably find yourself doing a lot of clicking and hand-and-eye coordination — often with very little in return…
Some more words of caution: if you run too many equations, text boxes or figures in the same Word document, you could very well risk of having your computer run out of memory and freeze to an infamous Blue Screen Of Death (BSOD).
There is of course no doubt that Microsoft Word and its competitors has evolved to become some formidable text editors over the years. For example, in the newer Microsoft Word (e.g., Word 95 and onward), users can determine the position of the images via a simple and intuitive drag-and-drop.
But as it turns out, this intuitiveness can also be problematic at times. as the position of the images can now be altered at the slightest mouse clicks and keyboard taps. And when that happens, the image position would need to be readjusted again — usually with very little feedback as to where the image would land after the readjustment ends…
And if you manage to integrate some text boxes smoothly into the paragraphs, similar formatting issues could then resurface again: you would drag a text box to an intended position, and it would slip away to another position or simply disobey your command. And if you’re really unlucky, it might even disappear from the document altogether, making any attempt of recovery very difficult — if not impossible.
In a structured document with a large list of items such as chapters, captions and references, it usually makes good sense that we number the items — so that we can keep track of them in a fairly simple manner.
And while it’s certainly possible to do the numbering manually (which admittedly is rather intuitive), this can actually become increasingly difficult — as the number of items increases.
Moreover, what if we accidentally numbered Chapter 13 as Chapter 12? Or that we later decide to introduce a new section in between Section 5 and Section 6? Well, that can only mean one thing — that our numbering is all messed up and that it needs to be redone all over again!
But of course, the point here is not just about the chapters and sections, as the same numbering issue could apply to bibliographical references, tables, images, definitions and equations (if you manage to make some that is!).
To be fair, Microsoft Word does support automatic numbering adjustment in some cases, but it does so at the cost of bringing in more confusion and complexity. Here’s how Microsft Word MVP John McGhie puts it:
Numbering in Word is difficult to understand because Word attempts to hide “complexity” from us. In many cases, it provides insufficient detail in the explanation of features. Regrettably, a simplistic explanation does not help understanding of a complex subject. It fills our heads with loose ends, which makes the problem worse!
And of course, the issue runs deeper than simply the numbering of the modules themselves. For example, let’s say that you referred to page 91 where you elaborated a bit on the Keynesian theory of economics, but later edited the text so that the same content now appears on page 87. Well, that’s not a good news, because it means that you would have to change your reference page now from 91 to 87!
And there is more: imagine doing that for hundreds of page references for equations, sections, chapters, paragraphs, tables, figures, footnotes and citations… Not exactly a human-friendly task if we may add!
While WYSIWYG text editors provide an intuitive graphical user interface by displaying, in real-time, how the document will look like when it’s printed, in some instances, it has also been argued that it’s this overemphasis on elaborated graphics that forces traditional WYSIWYG editors to water down its display resolution and typesetting quality. For example, Alain Cottrell, a strong proponent of $ \TeX$, puts it this way:
The typesetting algorithm employed by WYSIWYG word processor sacrifices quality to the speed required for the setting and resetting of the user’s input in real time. The final product is greatly inferior to that of a real typesetting program.
In addition, as the demand for more powerful features and functionalities grow over the years, there is a tendency — for developers of traditional WYSIWYG editors — to sacrifice the cleanness of user interface (UI) by featuring an excessive amount of friendly icons, menus, boxes and bars into the editor’s main window. As a result, the users would find themselves performing repetitive mouse clicks and an unnatural amount of fine hand-and-eye coordinations — just to get to some feature which could have been implemented in a more energy-efficient manner.
What’s worse. The decision to opt for a more graphical — rather than a more minimalist user interface — would eventually take a toll on the speed of the text editors, putting additional demands on the computer’s memory and graphic card while making the installation larger and longer as the year progresses.
As we have seen, WYSIWYG text editors operate on the philosophy of an intuitive, output-editing graphical user interface — one which is easy to maneuver, but which could make document preparation tedious and ineffective for the large-scale tasks with higher professional demands.
And because of that, we now turn our attention to a different kind of document processing system — $ \LaTeX$. In official terms:
LaTeX is a high-quality typesetting system; it includes features designed for the production of technical and scientific documentation. LaTeX is the de facto standard for the communication and publication of scientific documents. LaTeX is available as free software.
Based on the work on $\TeX$ by the legendary computer scientist Donald Knuth, $\LaTeX$ (“x” pronounced as a “k”) was first developed by the mathematician Leslie Lamport, who published its first user manual in 1986 before it became popularized in the typesetting and scientific community as the tool that it is today. Since 1994, $\LaTeX 2\epsilon$ (a.k.a., New Standard LaTeX) has been the current version of $ \LaTeX$ — even though the LaTeX 3 project was already underway back then in the early ’90s.
Before delving into the powerful functionalities of $\LaTeX$, we’d encourage you to take a quick look at this Visual FAQ . It would give you an overview as to what $\LaTeX$ is — and what it can help you achieve.
In $\LaTeX$, the fonts are typeset in high resolution and are so intricately designed that once you get a hang of it, it can become very difficult to even reminisce about your former lack of textual aesthetics.
And if you think about it, for a paper that bears any resemblance to mathematics, it’s rather difficult to think about the typesetting of piecewise functions, proof systems, matrices and elaborated equations without some kind of specialized tools. And while many WYSIWYG text editors are very well capable of typesetting mathematics to a certain extent, they usually do so by requiring a fair bit of clumsy clicking — if they even manage to produce the desired output in its entirety.
And of course, there is definitely more than meet the eyes (literally) when it comes to the typesetting capability of $\LaTeX$ — which can be further extended through the use of additional codes and packages. For a more comprehensive typesetting comparison between Microsoft Word and $\LaTeX$ — in images — check out Dario Taraborelli’s The Beauty of LATEX.
Ever notice how disorganized the usual left alignment looks on webpages — or even in some books? By default, documents prepared with $\LaTeX$ are fully justified, and while full justification has been known to be sub-optimal for webpages, the same is not true for $\LaTeX$. Why? Because the full justification in this case is achieved through the intelligent use of hyphenation — and not through the stretching of interword spaces as we do in the webpages.
Actually, speaking of alignment, did it ever occur to you to hit the
SPACE key multiple times to get the right look, only to mess it up a few seconds later?
Oh well. we’ll just have to point out that in most instances, that would be considered a typographical abuse and a rather awkward way of achieving proper alignment and formatting. In $\LaTeX$ for example, the system is actually deliberately set up to discourage
ENTER tapping, which means that as users become increasingly proficient in $\LaTeX$, they’d also become more habitually conditioned to create alignment through the use of commands, invisible columns or separators — as opposed to some apparently-intuitive tricks which have the potential of making formatting more difficult in the long run.
As alluded to earlier, giving the user the option to tinker with the position of the images is not always a wise thing — especially if the system itself is terrible at managing their positions for textual aesthetics and proper alignment.
Because of that, $\LaTeX$ has long before chosen to handle this issue differently — by letting the user declare a figure or a table as a float, so that it can be automatically placed in a spot that is as close to where the user wants it to be — without sacrificing design consistency.
Of course, that doesn’t mean that the user has zero control over which place the tables and figures should be. For example, they could instruct $\LaTeX$ to follow a priority list for the placement of a specific figure (e.g., top, bottom, here, separate page — in that order), and let $\LaTeX$ decide which one is the optimal placement.
Imagine writing a weekly performance report with 15 already-numbered sections, and as you rush towards the completion of the report, you forget — in the midst of confusion and chaos — to include the Metrics & Chart section, which is supposed to be inserted between the 4th and the 5th section in your report.
So what now? Well, it means that your numbering is pretty much messed up — assuming that you did the numbering manually that is!
On the other hand, if you were using $\LaTeX$ instead, then this kind of issue would have never surfaced to begin with. Why? Because, whether you are dealing with sections, subsections, chapters, footnotes, theorems, equations or figures, $\LaTeX$ has a built-in compiling process which handles the numbering (and the display of those numbering) automatically.
And if you want to refer back to any of the objects (e.g., sections, equations) mentioned in the earlier pages, manually typing in the reference numbers is also not necessary! As a cross-referencing system, $\LaTeX$ is fully capable of automatically adjusting the numbering every time you modify the document. All you need to do is to give the object a label and refer back to it using that label:
In fact, $\LaTeX$ is also equipped with a robust citation system that works in a similar manner through the use of citation labels, so for the love of God, don’t get into the habit typing in the numbering or the in-paragraph citations manually. Instead, let $\LaTeX$ take care of that burden for you!
If you ask a regular LaTeX user about what’s so great about $\LaTeX$, chances are, you’ll probably get a response like the one that follows:
The biggest difference between a traditional WYSIWYG (What You See Is What You Get) editor and $\LaTeX$, is that the latter is designed to specifically discourage working on the content and the design — at the same time.
While it is customary to compliment traditional WYSIWYG editors for its intuitive user interface, to the eyes of a $\LaTeX$ proponent, the ability to easily modify the design or the presentation of a document — on the spot — represents one of the major weaknesses of a document preparation system rather than a strength.
In fact, the within-the-reach availability of presentational features could easily translate into repeated, intermittent tweaking of formatting details from the end users themselves — who are usually not trained as designers and who might end up messing up the template as they alternate between design and content.
On the other end of the spectrum, the system of $\LaTeX$ is set up so that in most likelihood, the layout and other formatting specifications are found exclusively in the preamble (i.e., the beginning of source code) and the style sheets. This would have the effect of conditioning its users to specify the design components of a document once and for all — before shifting their focus entirely to the content creation process.
As such, the end user won’t have to worry about changing the text size, font, color or paragraph indentation as they work through the content, which reduces the risk of switch cost that’s commonly associated with multi-tasking and which leads to a more streamlined document editing experience as well.
If you’re in a WYSIWYG text editor and want a new feature, or a new shortcut that involves loading a pre-existing feature, what would you do? In many cases, the solutions aren’t easy, while in other cases, there is simply no solution readily available.
In contrast, because a LaTeX user prepares a document through its source code, they have plenty of rooms and opportunities to innovate and do much more than any set of standard functionalities can ever afford. In particular, $\LaTeX$ does not lock its users into a system which only gives them the illusion of abundance. Instead, it provides them with the coding framework so that they can make use of it however they like — as long as they’re up to the tasks.
For example, one way to get the features extended in $\LaTeX$ is through the creation and use of new environments and commands — which essentially are shortcuts that chunk a load of codes into one or two lines. Once these “shortcuts” are written and revised, one can then proceed to use them as many times as they like — or even repurpose them into more complex features, so that they can do more with even less lines!
And there is more: once you become supremely proficient with the LaTeX language, you can even create document templates, stylesheets and packages of your own — which may even include some of your favorite new environments and commands if you choose to! And once they’re completed, you can either elect to keep them as treasures for yourself, or publish them online in some centralized repository such as CTAN — so that other people looking for the same features don’t have to start from scratch!
In fact, over the few decades of LaTeX development, we’ve already seen the emergence and the popularization of a few key document classes and packages that are nowadays considered an integral part of $\LaTeX$. These include for example the
beamer class which is used for the creation of presentations, and the
tikz package which is used for the creation of high-end technical illustrations within the LaTeX system itself.
As cool and as popular $\LaTeX$ can be (in the scientific community at least), it should be noted that it’s also not without its flaws and shortcomings. In what follows, we’ll attempt to shine a spotlight on some of these — so that an average user knows what to expect if they were to make the shift.
Traditionally, $\LaTeX$ is used offline by installing a TeX distribution as the engine, along with a LaTeX editor as the front-end for source code editing and output previewing. There are many TeX distributions freely available on the Web, with the standard ones being as follows:
In addition to the different types of distributions, the size of the distributions can also vary, with the basic ones being around 200MB (e.g., Basic MiKTeX), and the complete ones being around 4GB (e.g., Full MacTeX).
Depending on one’s level of technical proficiency, installing a TeX distribution and adding/updating the fonts and packages can be either a breeze — or a nightmare in the making. At the LaTeX editor level, configurations to the TeX distribution also need to be correct to ensure that the compiling is as smooth and error-free as possible.
If you have made it this far, it might already have dawned upon you that unlike users of traditional WYSIWYG editors, LaTeX users don’t really edit a document by typing in the exact symbols they want to see. Instead, they edit the source code of the document in $\LaTeX$ — and let the markup language take care of the rest.
And while in many instances, implementing features by typing in the source code can certainly be faster than clicking on the icons, menus and windows, it can also make the interface look a bit human-unfriendly — especially when it comes to a large chunks of codes with backslashes, parentheses, brackets and braces in between.
In fact, one could even argue that this is a common experience regular users of traditional LaTeX editors have to get used to at some point, as they work through the complex formulas, tables, diagrams and drawings. Take a look at the following source code along with its associated output for instance:
And to be sure, the code here is still relatively straight forward, but it might not be if we were dealing with a schematic drawing of a complex network — with various sub-components, connectors, nodes and curved arrows in between!
If anything, this sort of shines a spotlight on the weakness of the coding approach, in that a code-based tool such as $\LaTeX$ can also be rather awkward whenever heavy graphical tweaking and minute layout changes are involved. Take a look at what the fellow mathematician and LaTeX advocate Jim Hefferon has to say for instance:
The opposite extreme, a document such as a brochure or an advertisement that is dominated by graphics, font changes, and color, is best tackled in a layout tool like Quark or Framemaker.
Of course, another way to navigate around the coding complexity of introducing new features is to make use of the popular document classes, templates and packages created by some of the most reputable LaTeX users around the corner. But even then, one still needs to be aware of the best practices to adopt in coding and the incompatibility issues that could possibly emerge when everything is put into the mix.
And depending on one’s experience in coding, learning the LaTeX language can either take a few days or a few weeks to master the basics, or it can take a few months or a few years to achieve a significant level of proficiency.
Admittedly, these are all non-trivial disadvantages for using a technical tool such as $\LaTeX$ (the traditional ones at least), which is why we were compelled to develop the Ultimate LaTeX Reference Guide — the largest LaTeX cheatsheet of its kind to cut down the learning curve and make the LaTeXing process as uneventful as possible.
At the end of the day though, we are ourselves regular users of both $\LaTeX$ and the major WYSIWYG editors, so if the aforementioned barriers seem like a major put-off, then here’s an insight which we think is representative of those who dabble between the two worlds:
In the traditional WYSIWYG world, one can make a half-decent document with a minimal barrier of entry and a smooth learning curve, but as the project becomes increasing structured and large-scale with high technical/professional demands, that’s when using $\LaTeX$ can become a no-brainer.
After seeing both the good and the bad, you might be wondering “hmm… so what’s the best way to take advantage of the full capabilities of $\LaTeX$ — without being dragged down by it?”
To be sure, this type of question is by its own nature subjective, in that if you’re a techie, then you’d be compelled by the idea of turning blocks of codes into a beautiful document, but if you’re not, then you’d be more prone to its inefficiencies rather than its scalability.
Fortunately, with the advent of newer technologies, the next generation of $\LaTeX$ is slowly emerging, and in what follows, we’ll present two of such tools which infuse $\LaTeX$ with elements of the WYSIWYG philosophy.
OverLeaf — formerly known as WriteLaTeX — is a cloud-based, online LaTeX editor that allows for the creation and editing of documents — without the hurdle of installing and maintaining the TeX distributions themselves.
Of course, this is in part because file management, typesetting and PDF previewing/compilation are all processed in the cloud, so all one needs to do is to create an account, add a project — and when the typing is done — export to a PDF or publish/share the document in other ways.
Since its acquisition of Sharelatex in July 2017, Overleaf has since then been relaunched as Overleaf v2, with a more robust interface and a wide range of features such as real-time collaborative editing, commenting, sharing, and version tracking (in the paid plans at least).
Of course, the founders behind this project are well aware that even with the TeX distribution hurdle gone, $LaTeX$ can still be tricky if a document were to be done from scratch, which is why they provide the option of starting a document from their cloud templates (2000+ of them), and offer an autocomplete feature for commands and in-paragraph citations so that the users won’t feel like they’re lost again.
In addition, Overleaf has this “graphical” source-code mode called the Rich Text Mode, where sectional headings, bold/italic texts and ordered/unordered lists are graphicalized right after the codes are typed in.
What’s more, the user can also choose to have the preamble, figures, inline math and displayed math displayed in either the rendered form, or the source-code form. All that’s required is for the user to move the cursor away from their corresponding code (or into their code).
So does that mean that Overleaf is WYSIWYG by nature? Not really, since the graphicalization is limited and can only represent a rough approximation of the final output, but despite that, it still plays an integral part in making the interface simpler, more streamlined, and more human-friendly to work on.
And if that’s not enough, the free version of Overleaf also allows one to host as many projects as one likes in the cloud, and for those that are part of a participating institution, they can even get the professional plan for free — which comes with all the online collaborative editing, version tracking and backup capabilities.
As powerful and as simple as it is, Overleaf is still not without its fair share of flaws and disadvantages. Here are a few of them that might be worth mentioning for instance:
CTRL + SPACEcompilation shortcut instead, then it’s possible to preview the PDF fairly quickly without wasting the server’s bandwidth.
In brief, if you’re a power user dealing with large-scale projects of high technical demands, then OverLeaf — the free version of it at least — might not be good enough to suit your needs (as there would be a cap on maximum timeout and project storage size), but for most purposes, we’ve found it to be a formidable tool which makes mathematical communication simpler and more effective.
While in this day and age, there’s a tendency towards moving LaTeX editing online, as alluded to earlier, there are still plenty of good reasons as to why that’s not always preferred.
So if you’re one of those who would rather keep the source code offline and benefit from the full range of features unavailable to online LaTeX editors, then do know that there is a single offline alternative that can help you address those concerns — all of the while perhaps outperforming most of its competitors.
The name? BaKoMa TeX Word. Named after its creator Basil. K. Malyshev, BaKoMa TeX Word is part of the newer generation of LaTeX editors that allow one to prepare the document by either editing the source code — or the preview of the source code. Both types of editing are synchronized and rendered in real-time, which makes the LaTeXing process substantially more efficient and enjoyable.
For example, instead of modifying a figure or a table by tweaking its source code, one can — in BaKoMa TeX Word — achieve the same result by simply modifying the figure or the table itself.
And since any change in the preview or the source code is immediately reflected, this has the effect of dramatically cutting down the time needed for a wide range of visually-demanding tasks — whose successful completion requires an extensive amount of trials and errors in the source code (e.g., drawing diagrams, networks, mind maps and other complex figures).
Put it slightly differently, BaKoMa TeX Word essentially combines the full implementation of the WYSIWYG approach, along with the full coding power which $\LaTeX$ is known of. The result is a uniquely refreshing application where editing is drastically simplified — without ever losing the full control $\LaTeX$ can provide (an aspect which other similar editors such as LyX, Cassiopeia, TeXmacs and Scientific Word are poor at.)
To be sure, BaKoMa TeX Word also has many other perks aside from its WYSIWYG-ness. These include, among other:
And of course, we’re definitely not the only one doing the talking. Here’s what Martin Osbourne — an economist from the University of Toronto — thinks about it:
BaKoMa TeX Word is a true WYSIWYG LaTeX editor: it is truly WYSIWYG—the output window displays precisely the LaTeX output—and it is truly a LaTeX editor—the input file is a LaTeX file, without any need for conversion. It is a stunning achievement, a huge step forward in LaTeX-editing technology.
[…] [BaKoMa] TeX Word makes it easy: you type the code and the output appears instantly. For me, TeX Word has cut the production time for figures by at least 75%.
Now, it should be mentioned that unlike the way many LaTeX editors are, BaKoMa TeX Word is actually not free (which is in part why it’s still in active development). Here’s what Jack Huizenga — a mathematician from Pennsylvania State University — has to say about it:
I agree the cost shouldn’t be an issue for serious researchers: this [BaKoMa TeX] is orders of magnitude better than the alternatives. It’s just hard to get people to pay for something when a free option exists, even if they are so far behind.
But of course, we’re not denying that the free, non-proprietary and open-source options (an approach advocated by the current LaTeX culture) can be good too. In which case, we would recommend TeXStudio as the LaTeX editor — which is pretty much as good as it gets insofar as traditional LaTeX editing is concerned.
While 100 years ago, the access to professional typesetting might have been mostly restricted to organized publishers and their associates, with the advent of technologies in digital typesetting, the same tools are now easily available to us the common folks — at a fraction of the price it was decades ago.
In fact, one could even argue that with the access to Internet, any non-professional with a willingness to learn $\LaTeX$ can now have their documents professionally designed and produced — with just a bit of clicks and keystrokes.
And if there is one thing we’ve learnt along the way, it would be the idea that the old debates about code-based and output-based editing are becoming increasingly irrelevant. After all, the newer generation of LaTeX editors have shown that it is possible for both to coexist together, and when that happens, the best of both worlds emerges.
And of course. $\LaTeX$ is not just a tool reserved for the mathematicians and scientists who want to type out some fancy symbols. Rather, it is a general document preparation system for books, reports, manuals, theses — all the way up to business cards, letters, presentations and music sheets.
If anything, it democratizes industrial-grade publishing, which makes self-publishing increasingly widespread and viable. And with the advent of cloud computing, preview-based editing, customizable shortcuts and collaborative platforms, it can only continue to evolve and make document preparation more effective and more accessible.
Math Vault and its Redditbots enjoy advocating for mathematical experience through digital publishing and the uncanny use of technologies. Check out their 10-principle learning manifesto so that you can be transformed into a fuller mathematical being too.