Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Typesetting Code
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Arnout Engelen
September 27, 2016
Technology
98
0
Share
Typesetting Code
A casual presentation on typesetting code presented at the Xebia TED-style XKE
Arnout Engelen
September 27, 2016
More Decks by Arnout Engelen
See All by Arnout Engelen
Sandstorm.io
raboof
0
62
JVM Hacking
raboof
0
300
Heating Up!
raboof
0
47
CRDTs Illustrated - StrangeLoop2015
raboof
0
300
HTTP/2
raboof
0
71
Unikernels - Dutch Devops Engineers workshop
raboof
0
130
akka-persistence
raboof
0
51
Kamon
raboof
0
110
Slim table types (FitNesse meetup)
raboof
0
50
Other Decks in Technology
See All in Technology
AI フレンドリーなエラー監視を TypeScript で実現する
shinyaigeek
2
200
GoとSIMDとWasmの今。
askua
2
440
新規ゲーム開発におけるAI駆動開発のリアル
202409e2
0
920
TROCCOで始めるクラウドコストを民主化するためのFinOps
tk3fftk
3
540
電子辞書Brainをネットに繋げてみた(自力編)
raspython3
0
410
エンジニアは生成AIと どのように向き合うべきか? ことばの意味という観点から
verypluming
3
320
チームで実践する AI-DLC 思考の軌跡を残すチェックポイント設計
belongadmin
0
900
はじめてのDatadog
kairim0
0
260
AI駆動開発が変える、大規模開発の前提 ーHuman in the Loop から Human on the Loop へ / AIE2026
visional_engineering_and_design
1
370
ChatworkとBPaaS 異なる特性で学んだAI機能開発の ベストプラクティス
kubell_hr
2
1k
Spring AI × MCP 入門〜AIエージェントへのツール公開、境界設計から始める最小構成 〜
yuyamiyamoto
0
200
Platform engineering for developers, architects & the rest of us (AI agents)
danielbryantuk
0
160
Featured
See All Featured
New Earth Scene 8
popppiees
3
2.3k
Making Projects Easy
brettharned
120
6.7k
Bridging the Design Gap: How Collaborative Modelling removes blockers to flow between stakeholders and teams @FastFlow conf
baasie
0
570
[SF Ruby Conf 2025] Rails X
palkan
2
1.1k
The Pragmatic Product Professional
lauravandoore
37
7.3k
Building an army of robots
kneath
306
46k
Music & Morning Musume
bryan
47
7.2k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Reflections from 52 weeks, 52 projects
jeffersonlam
356
21k
Mind Mapping
helmedeiros
PRO
1
220
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
320
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
340
Transcript
Typesetting Code Arnout Engelen @raboofje Xebia TED-style XKE 27 sep
2016
Flamebait ahead Industrial-strength Asbestos Underwear
1954: IBM FORmula TRANSlating, FORTRAN Preliminary Report on The IBM
Mathematical FORmula TRANSlating System, FORTRAN
1963: ALGOL 60 Language Report
Fonts: proportional vs monospaced Adobe Source Sans Pro Adobe Source
Code Pro
1975: K&R “C Programming Language”
1983: Smalltalk
Fonts: propertional vs monospaced
1983: Knuth’s “Literate Programming”
1983: Knuth’s “Literate Programming”
Alignment
Alignment
Alignment: diff
Alignment: meld
Alignment: automatic
Alignment: elastic tabstops http://nickgravgaard.com/elastic-tabstops/
Alignment: dynamic re-flowing https://facebook.github.io/reason/tools.html
Ligatures in classic Typography
Ligatures - Fira Code
Fonts public class Elementary { public static void main(String[] args)
{ System.out.println(12345 + 5432l); } }
Fonts public class Elementary { public static void main(String[] args)
{ System.out.println(12345 + 5432l); } } 1) 66666 2) 17777
Fonts public class Elementary { public static void main(String[] args)
{ System.out.println(12345 + 5432l); } } 1) 66666 2) 17777 Java Puzzlers, Bloch & Gafter, 2005
Fonts: Il1 http://jessicahische.is/talkingtype
Fonts: emphasis
Fonts: emphasis E.W. Dijkstra, EWD74, 1964
Fonts: emphasis
Fonts: color scheme
Fonts: color scheme
Fonts: emphasis and colour schemes
Make your code beautiful!
• http://www.literateprogramming.com/knuthweb.pdf • • https://facebook.github.io/reason/tools.html • http://jessicahische.is/talkingtype • https://github.com/tonsky/FiraCode