[Tex/LaTex] How to practice LaTeX

best practices

With many programming languages, you have the opportunity of practicing the language by doing problems or developing programs that will do certain things. With LaTeX, however, you can't exactly do that because it is a typesetting language and therefore, requires some sort of material to be practiced with. I understand there is the lipsum package but what are somethings that a person can do to practice their LaTeX skills without having the need for material? For example, practice for building various tables, practice for doing tricky math equations etc.

Best Answer

As several people have said, the only way is to write and typeset documents in LaTeX. Calculating the first 30 primes might make you a better programmer, but it is doubtful if it will make you a better LaTeX user, since it is of dubious utility to solve a problem for which LaTeX is not the right solution. If you're not sure what to write:

  • Do your homework, if you have any, in LaTeX.
  • Make notes and do scratch work in LaTeX rather than on paper. You will get quick at this fast, and will start to think of macros that are useful for you in particular.
  • An extension of this is to write a guide to whatever you're studying in LaTeX. This is a good learning discipline, as you will be checking the depth of your understanding if you have to explain to an imagined reader. Post it online and you might get feedback too.
  • Rather than recreate coursework assignments as one answer suggested, do something more useful. Find papers from the pre-LaTeX era and transcribe them. This makes them more accessible than dead-tree or bitmap scan formats (easier to access and share, easier to annotate/fix typos). Anything pre-1900 and quite a lot of early 20th century should be out of copyright (but check if you want to share your work and care about the legality) and can be shared online. There is a lot of golden-age mathematics that could be interesting to read included in this.
  • If you know (especially) French, German or Russian, you could also translate old papers into English. If not you could translate classics into your own language. Post them somewhere searchable and it will inevitably be useful to someone.
  • Write a book or an article on any subject in LaTeX or TeX. Even without math formulae there are hundreds of typeseting concerns that you might have to figure out.
  • Write a tool to generate LaTeX documents automatically from various forms of data. Eg 'turn your WordPress blog into a book', 'add an Excel table to your LaTeX document'. If useful and polished, you can make it into a package. Even if not, you will learn loads about document structure and edge cases.
  • Less hardcore: take your blog (or someone else's blog, or your fifty favorite StackExchange questions and answers, or a Project Gutenberg book, or whatever source documents) and turn it into a book manually, by copy-pasting and converting all the entries and creating the ToC, intro, appendix yourself.
  • Learn literate programming and combine that algorithm to calculate the first 30 primes in your favorite language with an explanation of why it works in LaTeX. Or make literate whatever programming project you're working on already. It's a good way of writing programming tutorials.