This is a distribution of the course topics into a general syllabus and resources.
- Course Syllabus;
- Bibliographic references:
- Fundamental;
- Complementary;
- Online references and resources;
- (Fontlab) Video Tutorials
- From the course/faculty
- External
- Other Programs/courses
We mainly use Henestrosa, Cheng, and Unger as the main bibliographic references. But many more books, such as Mediavilla, Clayton, Knight, Samara, Bringhurst, Beier, Ahrens, Coles, or Campe are also invaluable resources we use on an almost daily basis.
Additional references such as Quelhas Ph.D. or even websites such as Microsoft’s documentation, Fontlab, or Glyph’s online manuals, and video tutorials are also very important.
The full bibliography, semester schedule, and online references can be found on the academic system page, and on the e-learning platform.
Course Syllabus
This syllabus assumes the current three-hour class per week duration in a 13 to 15-week long semester. Between classes, students are required to read from the selected bibliography references, or practice type design and font production.
Introduction
The introduction module is the most theoretical-intensive module of the semester. It continues the program of advanced studies of typography and aims at providing a conceptual and historical baseline for every student.
These contents are usually distributed over a period of two weeks.
- Writing origins & evolution of the Latin alphabet writing (systems of the world);
- Typography origins & evolution;
- Classification(s) & historical specimens, heavily based on Paul McNeil’s Visual History of Type and Vítor Quelhas’ PhD Thesis;
- Typeface anatomy;
- Type Design basics (process & steps).
Students are then challenged to produce an analysis of a known specimen or archetype typeface of their choosing — see the 2026 edition’s results.
Foundation calligraphy
Doing or learning (better) typeface design does not depend on the knowledge or previous experience in calligraphy. Nevertheless, knowing the tools and gestures that produce the strokes helps to understand the letter shapes better. So, we always try to include the basic information and practice in a [humanistic] foundational hand, as it is the base for the current latin script:
In the last years, due to a a very demanding and time constrained semesters the calligraphy classes have been shifted into optiona attendance extra-curricular classes. It is still addressed, but usually “not immediately” after the first class.
Yet, when the course semester schedule allows for it, we also try to provide additional classes or workshops on additional styles/hands. With guests, or by the lecturer.
- Gothic (Textura Quadrata);
- Italic (Arrighi’s Chancery);
- Copperplate (Bickham’s English hand);
Up until 2022 we have covered these specific hands during workshops held either in the masters’ classes — we cover the basics of the foundational hand every year within classes — or in open to attend workshops. In the near future, we aim to complete these important writing models with:
- Capital Roman hand (AKA Trajan);
- Block Letter model (AKA Neuland);
- Gestural Cursive (AKA Folded Pen or Brush Scripts);
Rustic, Uncial, Bastarda, Rotunda & Fraktur Gothics, Flemish Cursive, French Ronde, Spencerian or Madaraz Scritpts, and Contemporary Gestural Scripts (and many, many more!) are also important to know as they inform and provide the grounds for relevant type designs. But these may and should be the subject of further research & practice after covering these “foundational” models.
SLOType speculative design workshop
Together with Ana Catarina Silva (and with the help of Julien Priez and Eduardo Napoleão and Maíra Woloszyn over the years), we have been developing this induction to letterform design into a educational workshop and support application.
This class usually takes place in a very intensive three-hour session of sprints. During the COVID-19 pandemic, activities were held either in a hybrid or an exclusive online mode, and took almost two full sessions to complete.
- Gerrit Noordzij’s “The Stroke” theory;
- Agile workshop with the SLOType app;
- Formal relationships (Type genealogy, letter groups)
This workshop takes into account that most students don’t have the basic knowledge or practice of historical calligraphic models. Nor we have the time to practice formal calligraphy with them previously. Hence it is designed to kickstart their type design education using a series of design sprints, oriented by specific creative briefs and supported by pedagogical materials.
Even if students haven’t had the chance to practice the foundational hand, this workshop is the minimum required practice to jump into font design and development.
SLOType: The Game Edition (alternative)
In a recent evolution of the project/specifica class activity, and with contributions from Rúben Dias (2026), we developed an alternative approach to our methodology: the SLOType Game Edition.
Unlike the sprint version, which is designed to kickstart an individual project, this “battle” dynamic (resembling a typographic Pictionary) was created with a clear purpose: to promote communication, collaboration and group dynamics in the classroom. Typeface design tends to be an extremely solitary process, and we believe that the learning and consolidation of complex concepts are best achieved through dialogue and peer interaction.
This variation of the speculative workshop assumes that the game does not start from scratch. It is implemented following introductory / theoretical classes on typographic history and exercises in analysis and classification — in 2026, after the introductory class on history and classification an observation homework exercise was introduced to nudge students into analyzing the minute details of different faces; they brought it back to class, we’ve analyzed the different analysis of the different fonts (classifications) and discussed the results into detail. Following this, the workshop, or the Game Edition of the workshop are conducted in class as an fun game-like exercise for “self-assessment” of the leanrt concepts.
The pedagogical objective is to confront students with the acknowledgment of the (visual) properties they already know (or do not know), how to identify visually, how to describe them verbally (to communicate with others) requiring them to abstract and represent these features physically through drawing in 150-second rounds.
When testing this collaborative model, particularly with master’s students, we identified pedagogical pitfalls and educational challenges that substantially expand our learning objectives:
- The clash between knowing how to look and knowing how to draw: The mechanical requirement of drawing in outlines (a duolinear approach) imposes an enormous cognitive and physical load on the students. Without the aid of visual references, accurately representing from memory the exact difference in width or weight between a Transitional and a Humanist letter generates hesitation. While less experienced students look for shortcuts or draw visual metaphors to circumvent the rules, master’s students grapple with the true weight of morphology. This struggle sometimes slows their pace and tests their motivation under the time limit.
- Obstacles as “Boss Levels”: We observed that Tier 1 of the taxonomy (primary groups like Serif or Sans) is easily understood, but the real friction occurs when comprehending advanced concepts. Parameters such as Optical Size (Caption vs. Display), Italic Structure, or the representation of Neo-Humanist designs turned out to be the true hurdles—the “boss levels”—of the game. The difficulty in abstractly drawing an Optical Size is the perfect example of how pure theory falters when not physically tested by the hand.
These observations represent its core value. The Game Edition uses time pressure and creative blocks as triggers for discussion. By pausing between rounds to analyze and debate the drawings on the board, the frustration of a “failed” representation, or an original (unexpected) one, is instantly transformed into a collaborative learning opportunity.
For us, the next great pedagogical challenge is figuring out how to continue using these social dynamics to motivate students to investigate and delve deeper into these areas. By merging playful stimulation with formal theory and physical drawing, the SLOType Game Edition demonstrates that the best way to master typographic anatomy is to step outside the individual “bubble” and learn to dissect letterforms together.
Type Design induction
Type Design induction contents are usually distributed over a period of four weeks (two classes and two one-to-one sessions).
The introduction to the software usually takes between one and two classes to demonstrate. And then, students are required to explore these contents, design a test keyword, and submit the characters in a functional font in three weeks.
- Introduction to Type Design production software:
- Software interface & IDE
- Opening existing (open source) fonts & creating a new font;Font Map window, search & filter views;Opening and editing glyphs in the glyph window;Panels, Menus & Workspaces;
- Node types (Corner, Tangent, and Curve/Smooth)Placement (there are *ONLY* 5 rules to know)
- [on-curve] nodes at extremes, [off-curve] handles’ at 1/3 curve length [rule-of-thumb, or ~58% curve tension], curves in arches (2 on-curve and 2 off-curve points please), curvature or curve handles on the same side of the curve for each arch (either inside or outside of the shape, but tunni-lines, or the imaginary line that connects the off-curve handle points must not cross the curve), keep curve handles/off-curve points orthogonal whenever possible (this applies especially to the extremes!)
- Em square, x-height, cap, ascender, and descender heightsBearings (overshoot/blue values)
- Letter set width and/or glyph side bearings, Linking and binding metrics,* Expressions and operations;*
(*sometimes we see this here, but usually we address it again in further detail later during production)
- Naming, Family & Font Dimensions, Stem and Alignment Zones, Line Gap, WinAscender & Descender or Safe Top & Safe Bottom values;*
- Saving and Exporting files in different formats;
- QA of Variable Font/Glyphs (Font Info: Naming conventions, Masters, Axes & Instances; Glyph compatibility: Font > Layer > Element > Contour > Nodes; etc.)
- Troubleshooting / Common Mistakes in creating variable font/master glyphs
- Duplicate Font Master, Copy All Glyphs (recommended approach)
- When creating new glyphs on a multi-master font file, make sure that as soon as you design the first layer/master you copy (and paste) the contours to all layers / Masters (CMD / CTRL + Y)
- Make sure to configure / check all the font (specific master/layer) names and values of the axis location in the Font Info to avoid duplicates
- Make sure to configure / check you only have the range of values defined within your masters in the Axis/Graph (to avoid having Axis/Master out of range error in exporting). Also, check the Instances Panel to see if your trying to export an “extrapolation” (it will crash Fontlab)
- Troubleshoot the “More than one base master found in Design Space” issue when exporting. This is due to having a conflict of names between the (general) Font Masters (Layers) and the Glyph Masters (Intermediate masters, or Font-less masters). See more about this at: https://help.fontlab.com/fontlab/8/whats-new/whats-new-07-families-variation/
- Check the Masters Compatibility (on each master/layer)
- Glyph Window/Editing: Check for the Starting Point (lowest & leftmost point) of each countor
- Glyph Window/editing: Check the Direction of the countour (make sure the outmost one is counterclock-wise)
- Elements/Contour Panel: Check the number of elements (and their order) Ideally in the first stages, you should aim for having just one element (no filters, or nested elements inside). As you progress, you will be able to deal with multiple and nested elements.
- Elements/Contour Panel: Check the number and the order of each drawing countour in the elements
- Elements/Contour Panel: Check the number of total nodes, but especially the number of on curve nodes (bezier control points) and their type (smooth or corner)
- If you are not working with filters (smart corners, fills, etc.) it may help to
- use the “match masters” option in the elements panel
- use the sort contours and start nodes on the variations panel
- check masters geometry on the variations panel
- beware of the option “match edits” on the variation panel (make sure the points and edits propagate on all masters)
- Software interface & IDE
- Optional advanced vector drawing and software issues:
- Drawing adjustments: Servant, Smart & Genius nodes, stem nodes, nudge, and power-nudge;
- Optical compensations: overshooting, waist and joint compensations, inktraping & blunt corners ↗, and overall color adjustments;
- Smart, Loop ↗ & Unlink corners;
- Fine-tuning curve tension: interior and exterior curves, preferences and short-guides rule-of-thumb;
- Measurements: advanced measurement, and “short-guides”;
- Suggestions: stems ↗, and distance ↗;
- Power-guides ↗ ;
- Elements;
- Evaluating technical aspects with Font Audit
- Actions;
- Font Properties (naming conventions);
- Font Properties (Dimensions, Stems, Alignment Zones,…);
- Addressing the side bearings calculation with the Measurement Line –> in Fontlab 8, the Measurement Line is now called the Metrics Line: https://help.fontlab.com/fontlab/8/whats-new/whats-new-06-metrics-kerning/
- Designing a display test keyword (e.g.: “Raphesion123”)
- Test keywords (from “adhesion” to “hamburgerfonstiv);
- Design and develop a one-axis / two-masters (min.) variable font;
This is a very intense four-week module. It is designed to introduce students to the technical aspects of letter shape design, and type design (production). Afterward, it is expected that they are sufficiently proficient with the software to learn or research what they need to implement their designs.
Type Design production
The final module of the course program is usually distributed over a period of six to eight weeks. During this module, students are encouraged to work in groups.
They are required to design a text typeface based on a revival of their choice. But they are required to produce a full Opentype Std Character set and implement it in a functional variable font (with a minimum of two masters required).
We start this module with a lecture on the role and importance of Type Specimens. And then, throughout the classes the following topics are covered:
- A revival of a text typeface:
- Research & concept design. Finding sources:
- Local second-hand bookshop;
- Letterform Archive online;
- Archive.org online;
- Type.org.uk Library;
- Online Digital Libraries (BNP, BNE, LOC, BNF…)
- Foundries websites;
- Research & concept design. Finding sources:
This is the first important setp. A small lecture is presented and we reflect on what constitutes a “valid” and relevant revival for contemporary settings.
After a bit of research — depending on the semesters we usually revive an author’s important typeface, or we randomly search and select a sample of a book text typeface from the library (choosing a book printed before 1980).
Then we proceed to:
- Writing a brief and defining parameters
In this phase we may repeat a bit of the first module, but putting into prctice/consolidating what was previoously learned. And then, finally
- Font production:
- Sketches, Keyword & Family DNA/parameters;
- Conditional glyph substitution in Variation Axis (Glyph master [layers] / Glyph tags ↗)Terminals & serif shapes (components, references & glue selections);
- Lowercase characters;Uppercase characters;Diacritics
- ComponentsComposite glyphs (Diacritics) ↗;Auto-layers and attached components ↗ ↗;Anchors (and pins to position reference elements), saving/converting shapes into components (from “i” to “dotlessi trick“;
- Numerals (Lining and Old Style, Tabular and Lining figures)Euro Sign
- Spacing & Kerning
- Opentype features
- Adding glyphs
- Ligatures
- Contextual and Stylistic Alternates
- Character Positions
- Positional Forms
- Rotation & substitution;
- List of all Opentype features: From Microsoft (the most comprehensive list): https://learn.microsoft.com/en-us/typography/opentype/spec/featurelist; simple explanation on Wikipedia (ofr maths, positions and different languages): https://en.wikipedia.org/wiki/List_of_typographic_features. Here’s the full Fontlab 8.4 features list (in bold, the most used/recommended ones for Latin-based scripts)
- Empty feature (xxxx)
- Access All Alternates (aalt) •
- Capitals to Small Caps (c2sc)
- Contextual Alternates (calt) <– these are super fun to experiment with. start here! 😉
- Case Sensitive Forms (case)
- Glyph Composition/Decomposition (ccmp)
- Capital Spacing (cpsp)
- Character Variant 1 (cv01)
- Discretionary Ligatures (dlig) •
- Denominator (dnom)
- Terminal Forms (fina)
- Fractions (frac)
- Historical Forms (hist)
- Historical Ligatures (hlig)
- Initial Forms (init)
- Standard Ligatures (liga) •
- Lining Figures (lnum)
- Localized Forms (locl)
- Medial Forms (medi)
- Numerator (numr)
- Oldstyle Figures (onum)
- Ordinals (ordn)
- Ornaments (ornm)
- Proportional Figures (pnum)
- Required Ligatures (rlig)
- Stylistic Alternates (salt)
- Scientific Inferiors (sinf)
- Small Caps (smcp)
- Stylistic Set 1 (ss01)<– 20+ variant sets (ss01..ss20)
- Subscript (subs)
- Superscript (sups)
- Swash (swsh)
- Titling Alternates (titl)
- Tabular Figures (tnum)
- Slashed Zero (zero)
See a full (AI post) for a table and description of the features and it’s use here: https://typedesign.fba.up.pt/opentype-features-in-fontlab-8/
- Important info: The order of features is important. Reorder them (drag and reposition in features panel). Also, you have to compile (press play button) to add the text info to the binary font data. Don’t forget to “Remove All Features” before undoing or changing the font.
- Using classes and the custom features: https://help.fontlab.com/fontlab/7/manual/Features-panel/ –> Common Substitution Lookups
- Naming features (Stylistic Sets) and special names for features (Readable in InDesign panel): https://help.fontlab.com/fontlab/7/manual/OpenType-Features/#descriptive-names-for-stylistic-set-ss01-ss20-features [2024 update: looks like Adobe has done it again… they’re no longer readable. Use Font Goggles or Dinamo Font Gauntlet to check these out]
- Skin Filters: _corner.xxx, _cap.xxx, _segment.xxx and _dash.xxx: Youtube (RU) tutorial (corner-component/skin filter) + don’t forget to add the necessary Origin, Left and Right anchors to the filter contour element/component glyph for it to work correctly (preferably add anchors from the Glyph Menu — for correct named anchors in the (hopefully) correct place — instead of the contextual menu (right click) because it adds “one” and “two” anchors…). See the RU creating a Skin Filter corner component Tutorial: https://www.youtube.com/watch?v=O7vxu107c4g
- Sketches, Keyword & Family DNA/parameters;
- Evaluating overall quality;
- Exporting for Publishing and Distribution (Font Info Panel):
- Checking Names;
- Checking Stems (per master)
- Checking Alingnment Zones (Familly & Local ones)
- Filling the Creator and Legal Copyright Information;
- Specimen design;
- Presentation & Distribution
Creative Coding & Font Engineering with the FontLab Python API
As contemporary type design increasingly intersects with software automation and generative art, the curriculum is expanding to bridge the gap between visual intuition and algorithmic execution. We are introducing a new pedagogical focus centered on creative coding, designed to transform how students interact with digital letterforms.
Core Integration (in the course): Font Engineering Basics
In the final stages of the Master’s curriculum, where the pedagogical focus shifts from drawing to production, one of our concluding classes will be dedicated to Font Engineering & Automation. Students will step inside FontLab 8’s Python engine to look at typefaces not just as collections of static vectors, but as structured, interactive data.
This class introduces the core mechanics of the FontLab API using the native Scripting and Output panels. Students will learn to navigate the structural hierarchy of a digital font file—moving programmatically from fonts and glyph collections down to layers, elements, contours, and coordinate nodes. By exploring FontLab’s default scripts, participants will understand how to automate repetitive production tasks, perform batch adjustments across multiple masters, and validate contour integrity. This foundational class demystifies code for designers, proving that scripts are powerful tools for optimizing type design workflows.
The Extension Program: Python Creative Programming for (Logo+Type) Design
Building upon this core introduction, we are launching an Extension Training Program featuring specialized master workshops titled Python Creative Programming for (Logo+Type) Design. Designed to scale in length and complexity according to annual participation and project scopes, these workshops will expand Python from a production utility into a playground for expressive, generative graphic design.
The workshops will span a broad continuum, starting from generative variable glyph variations and procedural logo treatments, and moving toward advanced font engineering pipelines. To ensure our students remain at the forefront of global type technology, this program will actively collaborate with industry pioneers. We will host a series of in-person masterclasses and online guest lectures featuring international type designers, software engineers, and the core developers behind major type design platforms. Through this hybrid network of lectures and hands-on laboratory sessions, participants will learn to build custom UI panels, create interactive drawing tools, and master the technical frameworks shaping the future of type and visual identity systems.
Beyond the course
Some important issues are to be addressed autonomously by students, either during this course, or in future opportunities such as the dissertation/project:
- Digital issues:
- Hinting;
- Expressions & parameters;
- Scripting;
- Implementing color fonts*;
- Animation* (SVG, OTVAr)
- Design issues:
- Size-specific issues (wayfinding/signage, caption,…);
- Legibility and reading issues;
- Additional scripts and languages (different models from Arabic, Indic, Chinese, Japanese, Korean, Coptic,…)
- Calligraphy and gesture influences and models (see Abel Martins’ dissertation report);
- Informal Lettering (and how to represent calligraphic/vernacular shapes in digital type)
- Historical models research, or Contemporary writing and graffiti forms;
- *Designing Color Fonts;
- *Motion and/or Interaction Design enhancement through animated [color] fonts;
- Cultural Issues:
- Specific Type Revivals such as Tia Lira and Fontanela (from Manuel Pereira da Silva)
- Type Design for early learning/learners (eg. the Handrwiting Project from Typetogether where Portugal is missing from the map)
- Media specific issues:
- Emerging media requirements such AR or XR adaptative designs, contextual responsive typography,…;
- Stone carving or epigraphy;
- Volumetric representation;
- Distribution [models]
- Printed and Digital Specimens
- Finishing Fonts/ Preparing Font Production
- Creating a business model / foundry
- Publishing/releasing through third-party foundries/online markets
Online references and resources
- Axis Praxis: https://www.axis-praxis.org/
- Samsa (Variable Font Inspector);
- Adhesion Text (Dumy text generator, based on selected letters);
(Fontlab) Video Tutorials
- From the course / faculty: https://www.youtube.com/watch?v=Q8fimMX3dT0&list=PLEz9y19-UrRZyz3BFcsi9J-DTgX-x6ete
- External: https://www.youtube.com/@YourFontFetish/playlists (Excellent 2025 update for fontlab 8.3 version RU edition / English dubbed/captioned)
Other Syllabus and Type Design Programs/Courses
These are some of the programs and courses we follow closely, and that have their results available online (and sometimes during these last couple of years also host their final presentations online publicly):
- KABK Type and Media Program:
https://typemedia.org/
(https://www.kabk.nl/en/programmes/master/type-and-media) - Reading Type Design Program:
http://2020.typefacedesign.org/ - PXL-MAD Readsearch:
http://readsearch.be
(https://pxl-mad.be/en/graphic-design) - ESAD Type:
http://postdiplome.esad-amiens.fr/ - ECAL Type Design:
https://www.ecal-guide.ch/en/formations/master-type-design
Additional important reference programs we also follow closely, due to the work of our close friends and colleagues are:
- https://pxl-mad.be/en/graphic-design
- https://letterformarchive.org/type-west-online (https://letterformarchive.org/education)
- https://www.ecal-guide.ch/en/formations/master-type-design
- https://typedesign.yaleschoolofart.org/about
- Postgraduate Certificate in Typeface Design (Type@Cooper): http://coopertype.org/
- MT-UBA, Maestría en Tipografía
- Curso de Pós-graduação em Tipografia
- École Estiene, Paris: http://www.ecole-estienne.paris/formation/dsaa-design-typographique/presentation/
- ANRT: https://anrt-nancy.fr/en/presentation-en/
- Tipo-g: https://tipo-g.com/
- SVA Type Lab
For a more comprehensive list of type design programs and courses see Jan Middendorp’s list on Wikipedia: https://en.wikipedia.org/wiki/List_of_institutions_offering_type_design_education#Specialized_type_design_degrees