Everything on the site.

Big-O notationAlgorithms · Count the steps in real loops, then compare n, n log n, n² and 2ⁿ on a live chart.RecursionAlgorithms · Watch frames push and pop on the call stack for factorial and Fibonacci.BFS vs DFSAlgorithms · A queue against a stack: draw a graph and see which order each search visits it in.Sorting algorithmsAlgorithms · Seven sorts on the same input, with comparison, swap and write counts side by side.Binary searchAlgorithms · Halve the range, probe the middle, repeat: with lo, mid and hi drawn on the array.Sets, relations and functionsDiscrete maths · Shade any set expression on a Venn diagram and test a relation for its properties.Proof by inductionDiscrete maths · Four worked proofs revealed one step at a time, and a broken one to diagnose.CombinatoricsDiscrete maths · An exact nPr and nCr calculator, and a Pascal’s triangle that shows its own addition rule.Boolean algebraDiscrete maths · The laws, De Morgan, and normal forms, with a truth-table generator built in.Finite-state machinesTheory · Build a DFA in a table, see it drawn, and run strings through it one symbol at a time.Domain theoryTheory · Why recursion needs least fixed points, and how CPOs, Scott continuity and powerdomains supply them.Truth table generatorTools · Expression in, truth table out: with DNF, CNF, a minimal form and LaTeX.Graph traversal visualiserTools · Draw a graph, then animate BFS, DFS and Dijkstra with the frontier shown.Recursion tree visualiserTools · Paste a recursive function or a recurrence and see its call tree and call count.Gradient descentML maths · Drag the starting point, set the learning rate, and watch it converge or blow up.Vectors and embeddingsML maths · Bend the plane with a 2×2 matrix and measure how close toy word vectors are.Softmax and cross-entropyML maths · Edit the logits and watch the probabilities, the loss and the gradient update live.AttentionML maths · Q, K and V for three tokens, a live score heatmap, and the weighted sum of values.Formatting a CS paper in LaTeXLaTeX · Page limits, \documentclass, front matter, theorem environments and the bibliography.Camera-ready checklistLaTeX · Fonts embedded, PDF/A, copyright form, source bundle, and why final versions get rejected.LaTeX templatesLaTeX · Where the official classes live, plus a minimal article template you can copy.AlgorithmsSection · Step-through visualisations of sorting, searching, recursion, graph traversal and Big-O growth, each with pseudocode that highlights the line being run.Discrete mathsSection · Sets, relations and functions, proof by induction, counting, and Boolean algebra, explained with worked examples and small interactive checkers.TheorySection · Finite-state machines, automata and the mathematical semantics of programming languages, explained from first principles.ML mathsSection · Gradient descent, vectors and embeddings, softmax and cross-entropy, and attention, each with a formula, a worked numeric example and a live version.ToolsSection · A truth-table generator with CNF, DNF and LaTeX output, a graph-traversal visualiser for BFS, DFS and Dijkstra, and a recursion-tree visualiser.LaTeXSection · How to format a CS conference or workshop paper in LaTeX, a camera-ready checklist, and a minimal template you can adapt.
Guide

LaTeX paper templates, and a minimal one to adapt

Every publisher and proceedings series has its own LaTeX class, and the official one is always the right starting point. This guide explains where those classes live, gives you a clean minimal template of our own for drafts and preprints, and shows how to move a draft into a venue’s class without pain.

Interactive: Template builder: pick options and copy the generated preambleUpdated

Where official templates live

Look in this order:

  1. The venue’s call for papers or author instructions. It names the class and links the exact version to use. This is the only source that is guaranteed to be current for that venue and year.
  2. CTAN, the Comprehensive TeX Archive Network, hosts the major publisher classes: llncs (Springer LNCS), acmart (ACM) and IEEEtran (IEEE), among others. Its journal and publisher topic lists many more.
  3. Your TeX distribution. TeX Live and MiKTeX install the CTAN classes, so they may already be on your computer. Run kpsewhich llncs.cls to find out.
  4. Overleaf’s template gallery, if you write online. Many publishers maintain official templates there; check that the template is marked as official and is the current version. Overleaf’s documentation also has good task-by-task guides.
Be careful with copies Class files passed between colleagues or found in old project folders are frequently out of date. Always download the class again for each new submission.

A minimal template you can adapt

For drafts, technical reports, preprints and theses that don’t have a mandated class, the standard article class with a few well-chosen packages produces a clean, readable paper. Pick the options you need and copy the result. Everything in it is ordinary LaTeX that compiles with pdfLaTeX on a current TeX Live or MiKTeX.

Template builder

Include

Save it as paper.tex next to a refs.bib file.

What each part does

  • \usepackage[T1]{fontenc} and lmodern give properly hyphenated, searchable text with scalable fonts, avoiding the bitmap Type 3 fonts that publishers reject.
  • microtype makes small, invisible adjustments to letter spacing and margins that noticeably reduce bad line breaks and hyphenation.
  • geometry sets sensible margins for a draft. Remove it when you move to a venue class, which sets its own.
  • amsmath and amssymb provide aligned equations and the standard symbols; amsthm provides theorem environments. The template numbers theorems, lemmas and definitions in one sequence, which makes them easier to find.
  • hyperref turns references, citations and URLs into links, and cleveref writes “Theorem 2.3” or “Section 4” for you. Load them last, in that order.
  • For the bibliography, BibTeX with plainurl prints DOIs and URLs. biblatex with biber is more flexible, but some venues can’t process it, so check before using it for a submission.

Moving a draft into a venue’s class

If you write in the minimal template, the move to a venue class takes a few minutes, as long as you have kept formatting out of the body text.

  1. Swap the document class and delete the font, geometry and spacing lines from the preamble. The venue’s class owns all of these.
  2. Rewrite the author block in the class’s own syntax. This differs most between classes: llncs uses \author with \inst plus \institute; acmart uses one \author per person followed by \affiliation and \email; LIPIcs uses a five-argument \author{name}{affiliation}{email}{orcid}{funding}.
  3. Remove theorem definitions the class already provides. llncs, acmart and LIPIcs all predefine theorem, lemma, definition and proof; declaring them again causes “already defined” errors.
  4. Switch the bibliography style to the venue’s (splncs04, ACM-Reference-Format, IEEEtran, plainurl). If you used biblatex and the venue requires BibTeX, change the two bibliography lines and recompile.
  5. Check packages against the class. Some classes load hyperref themselves, and some forbid packages that alter the layout. Remove anything the instructions prohibit.
  6. Recompile from clean and read the log. Fix every warning about undefined references and overfull boxes; the page count will usually change, so check it against the limit again.

Habits that make any template easier

  • Use semantic macros. Write \den{M}, not [\![M]\!], so notation can change in one place. Keep macros in a macros.tex file and \input it.
  • One sentence per line in the source. Version control then shows changes sentence by sentence, and co-authors’ edits merge cleanly.
  • Build with latexmk. latexmk runs LaTeX and BibTeX as many times as needed: latexmk -pdf paper.tex.
  • No visual tweaks until the end. Manual line breaks, \vspace and float placement are the last thing to do, and only in the venue’s class.

Related guides