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
Arnout Engelen
September 27, 2016
Technology
0
95
Typesetting Code
A casual presentation on typesetting code presented at the Xebia TED-style XKE
Arnout Engelen
September 27, 2016
Tweet
Share
More Decks by Arnout Engelen
See All by Arnout Engelen
Sandstorm.io
raboof
0
59
JVM Hacking
raboof
0
290
Heating Up!
raboof
0
44
CRDTs Illustrated - StrangeLoop2015
raboof
0
270
HTTP/2
raboof
0
70
Unikernels - Dutch Devops Engineers workshop
raboof
0
120
akka-persistence
raboof
0
48
Kamon
raboof
0
100
Slim table types (FitNesse meetup)
raboof
0
49
Other Decks in Technology
See All in Technology
"サービスチーム" での技術選定 / Making Technology Decisions for the Service Team
kaminashi
1
160
GeminiとNotebookLMによる金融実務の業務革新
abenben
0
230
AWS アーキテクチャ作図入門/aws-architecture-diagram-101
ma2shita
30
11k
Navigation3でViewModelにデータを渡す方法
mikanichinose
0
220
Witchcraft for Memory
pocke
1
460
PostgreSQL 18 cancel request key長の変更とRailsへの関連
yahonda
0
120
監視のこれまでとこれから/sakura monitoring seminar 2025
fujiwara3
11
4k
SalesforceArchitectGroupOsaka#20_CNX'25_Report
atomica7sei
0
190
20250625 Snowflake Summit 2025活用事例 レポート / Nowcast Snowflake Summit 2025 Case Study Report
kkuv
1
320
Snowflake Summit 2025全体振り返り / Snowflake Summit 2025 Overall Review
mtpooh
2
410
ドメイン特化なCLIPモデルとデータセットの紹介
tattaka
0
150
Snowflake Summit 2025 データエンジニアリング関連新機能紹介 / Snowflake Summit 2025 What's New about Data Engineering
tiltmax3
0
320
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
223
9.7k
Fireside Chat
paigeccino
37
3.5k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.8k
The Art of Programming - Codeland 2020
erikaheidi
54
13k
Bootstrapping a Software Product
garrettdimon
PRO
307
110k
GraphQLの誤解/rethinking-graphql
sonatard
71
11k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
20
1.3k
The Invisible Side of Design
smashingmag
300
51k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.4k
YesSQL, Process and Tooling at Scale
rocio
173
14k
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