- cross-posted to:
- [email protected]
- cross-posted to:
- [email protected]
Have you seen this font before? This is Computer Modern and it’s used everywhere from exams sheets to research papers, all because it is default font in popular typesetting language LaTeX, known for its ability to diplay maths equations, as well as being the de facto standard of writing articles in many fields of science.
Which is surprising as LaTeX is a far less productive option compared to office suites, according to this study, it is much easier to make mistakes in LaTeX than word, something you don’t want on a research paper. So how did it against all odds, become the favourite of scientific communities?
Typesetting is the art of placing words on a page. Back in the 70s, it was usually done manually by professionals. However, this was not an option for Donald Knuth, as his publisher was too broke to afford one, instead they used computers to typeset his book, to which he was deeply dissatisfied with the poor results. Believing he can do better, he set out to create his own typesetting system for anyone to produce high-quality books with minimal effort.
This was no easy feat, as the system will have to know the dimensions of all characters to find the optimal arrangement of characters per line, and lines per page. It took him 7 years of typography, and by 1978, he released the first version of TeX along with the Computer Modern font.
After the initial learning curve, TeX slowly gained popularity among researchers. Soon words reached the American Math Society, who at the time was looking for a good digital typesetter. They quickly realised that TeX was exactly what they were looking for. Not only did they heavily promoted the use of TeX to members. Instead of waiting for new features to be added, they went ahead and extended TeX’s ability to typeset maths using its powerful macro system, publishing the first ever macro package - AMSTeX.
At the time TeX was able to produce high quality publications, but it was still very complicated to use. To make TeX accessible to everyone, 1984 LaTeX was created so macro packages such as AMSTeX can be used easily. This variant of TeX was so popular by 1990, it became the de facto standard in the scientific community.
Since then LaTeX has been adopted by students for note taking, some markdown editors even include it as a proper way to display maths equations. On the flip side, vanilla LaTeX is still the favourite of many experienced users. And as I see it, there is nothing more fun than perfecting your notes to the point people like it more than the textbook.
So have you hear of LaTeX before? What do you use LaTeX for? Let me know in the comments down below, anyways I’ll be seeing you in two weeks, have a good one.
LaTeX is great (that is, nothing can really compete with it), but its design is an abomination at this point. There’re just too many different subsystems working in different paradigms with different conventions simultaneously, e.g.:
Good luck debugging if something doesn’t work immediately - each of the subsystems doesn’t know how the other subsystems work, most have their own independent error handling and reporting routines, so ~95% of errors don’t actually tell what’s wrong, and only ~50% somewhat help figuring out where there’s something that’s wrong. You have reasonable suspicions in most cases, but not always (especially if you’re in the process of writing a complex macro and you know your initial try is likely to be faulty - you just don’t know where and why exactly, even with plenty of experience). There’re no easy ways to debug macro expansion step-by-step.
Here’re some fun exercises if you don’t realize how terrible the situation is:
.aux
,.log
&c.) end up in thebuild/
directory and not wherever your.tex
files are. Now draw some nice TikZ pictures. Now set up TikZ externalization. (medium)I had to solve these - or very similar in nature - problems while working on various things.
a few months prior i thought i had enough of LaTeX, because the compiling is slow, all the packages, unexplanetary error messages, its just a pile of mess from the 1980s. so i went and try out some newer typesetting languages, the one i tried was typst, it went fine until i got addicted to graphing in TikZ and now, i’m once again a firm LaTeX user
(but LaTeX is still a complete mess, and there is a lot of room for improvements that newer typesetting languages can take, if someone is willing to put in the effort to make one)