Zach’s ugly mug (his face)

Zach Leatherman

Writing

177 posts since 2007. Show all archives.

  1. 2019 ×8
  2. Reactions to: An Honest Conversation About Burnout on JSParty 📢 23 #10 Jul 2019
  3. Bridgy for Webmentions with Brotli 📢 4 Jun 2019
  4. Developing a Robust Font Loading Strategy for CSS-Tricks 📢 120Web Fonts #1 Jun 2019
  5. The Crushing Weight of the Facepile 📢 24 #17 Jun 2019
  6. Render Snarky Comments in Comic Sans 📢 211Eleventy #4 Jun 2019
  7. The Co-opetition of Team Web 📢 34 May 2019
  8. font-display is Incompatible with Icon Fonts 📢 82Web Fonts #7 May 2019
  9. Google Fonts is Adding font-display 🎉 📢 119Web Fonts #2 May 2019
  10. 2018 ×20
  11. Don’t Stop Learning Frameworks Dec 2018
  12. Happy Birthday Eleventy! 🎉 Eleventy Nov 2018
  13. A Group of Web Font Repaints is called a Michael Serif Web Fonts Aug 2018
  14. The Problem with font-display and Reflow Web Fonts Aug 2018
  15. The Font Loading Checklist 📢 1Web Fonts #5 Aug 2018
  16. The Life Expectancy of Digital Content Jun 2018
  17. The Simplest Web Site That Could Possibly Work Well EleventyNEJS CONF May 2018
  18. Obnoxiously Readable Responsive Text with Viewport Units Web Fonts May 2018
  19. preload with font-display: optional is an Anti-pattern Web Fonts Apr 2018
  20. Import your Disqus Comments to Eleventy 📢 4Eleventy Apr 2018
  21. “The Compromise”—a Modern but Compatible Font Loading Strategy 📢 7Web Fonts Apr 2018
  22. Passing the Lead NebraskaJS Organizer Baton Mar 2018
  23. Google Open Source Award for Eleventy Eleventy Mar 2018
  24. It’s Dangerous to Go Stallone. Take Glyphhanger Web FontsProjectHighlight Mar 2018
  25. “A letter about Google AMP” Feb 2018
  26. Introducing Eleventy, a new Static Site Generator EleventyProjectHighlight Feb 2018
  27. Making a Simple Web Site with the Simplest Static Site Generator, Level 2—Adding Filters Eleventy Jan 2018
  28. Making a Simple Web Site with the Simplest Static Site Generator, Level 1 Eleventy Jan 2018
  29. spider-pig Searches for Nodes that match a CSS Selector Project Jan 2018
  30. Airing Out 2017’s Dirty Laundry Jan 2018
  31. 2017 ×15
  32. 23 Minutes of Work for Better Font Loading 📢 16Web Fonts #8 Nov 2017
  33. Managing Font Loading CSS Was Painful—Not Anymore Web FontsProject Nov 2017
  34. A Collection of Web Font Loading Recipes 📢 1Web FontsProjectResearch Oct 2017
  35. FOIT vs. FOUT, a Side by Side Comparison 📢 2Web FontsProject Oct 2017
  36. A Historical Look at FOUT and FOIT Web Fonts Sep 2017
  37. The Web Font Loading Glossary Web Fonts #16 Aug 2017
  38. I made a style guide for my personal web site and you should too. 📢 3 Aug 2017
  39. Font Aliasing, or How to Rename a Font in CSS 📢 7Research #14Highlight Jun 2017
  40. Laissez-faire Font Smoothing and Anti-aliasing 📢 7Research #18Highlight May 2017
  41. Quick Demo: Animating on an Oval Path 📢 2 May 2017
  42. Wait, WebP is actually worth it. 📢 10Research Apr 2017
  43. Selecthor: A Better way to Learn and Demo CSS Selectors 📢 4Project Apr 2017
  44. Randsom: A Random Web Fonts Ransom Note Project Apr 2017
  45. Bernie Tweets Project Mar 2017
  46. In Case You Missed It: 2016 Jan 2017
  47. 2016 ×10
  48. No @font-face Syntax will ever be Bulletproof, Nor Should It Be. Web FontsHighlight Dec 2016
  49. Lazy Loading Web Fonts Is Probably Not What You Want 📢 3Web FontsHighlight Nov 2016
  50. A Comprehensive Guide to Font Loading Strategies 📢 59Web Fonts #3Highlight Jul 2016
  51. Web Fonts for President 2016 📢 10Web Fonts #9 Apr 2016
  52. The Web Fonts: Preloaded 📢 3Web FontsResearch #11Highlight Apr 2016
  53. Trying out a new Font Stack 📢 1 Apr 2016
  54. Web Font Anti-pattern: Data URIs 📢 17Web FontsResearchHighlight Mar 2016
  55. A Story About Proxy Filters Feb 2016
  56. Critical Web Fonts 📢 1Web FontsResearch #12Highlight Jan 2016
  57. In Case You Missed It: 2015 Jan 2016
  58. 2015 ×8
  59. The Infinity Hamburger Menu Project Dec 2015
  60. Using Custom Fonts Responsibly, an Akamai Animated Short Web FontsSpeaking5 min Video Dec 2015
  61. Frameworks, not Blameworks Nov 2015
  62. Smashing Book #5 Web Fonts Jul 2015
  63. The Mitt Romney Web Font Problem 📢 3Web FontsResearchHighlight May 2015
  64. Compatibility Tables Compendium 📢 9 Mar 2015
  65. Flash of Faux Text—still more on Font Loading 📢 1Web FontsResearch #19Highlight Jan 2015
  66. In Case You Missed It: 2014 Jan 2015
  67. 2014 ×3
  68. A Font Family Reunion 📢 11Web FontsProjectHighlight Sep 2014
  69. W3C Status Banners 📢 2Project Aug 2014
  70. A Frugal and Simple Guide to Putting Lights on your Bike 📢 1 Jul 2014
  71. 2013 ×7
  72. In Case You Missed It: 2013 📢 3 Dec 2013
  73. Domain Swap: A Google Chrome Extension Project Dec 2013
  74. The Elusive :target Feature Test 📢 2ResearchHighlight Nov 2013
  75. A Sliver of What I Learned at JSConf 2013 Jun 2013
  76. You Should Follow Fewer People on Twitter 📢 3Project Jun 2013
  77. zachleat.com is Dead, Long Live zachleat.com 📢 2 May 2013
  78. A Web Developer Fumbling with Social Media 📢 12 Jan 2013
  79. 2012 ×4
  80. SocialCount, Faster & Lighter Social Networking Widgets ProjectHighlight Nov 2012
  81. CSS3 Job Transition 📢 3 May 2012
  82. Let’s get parseIntimate. Project Feb 2012
  83. Placeholder Title for Article about HTML5 Placeholders 📢 10ResearchHighlight Feb 2012
  84. 2011 ×8
  85. Deferreds and a Better Geolocation API 📢 3 Nov 2011
  86. A Mobile Web Divided 📢 2 Aug 2011
  87. FitText + BigText: A Tale of Two Plugins 📢 6Web Fonts #20Highlight May 2011
  88. Pragmatic Progressive Enhancement 📢 1Highlight May 2011
  89. Raging Netflix Queue, a Google Chrome Extension 📢 8Project Feb 2011
  90. The JavaScript Testing Challenge Winner 📢 3 Feb 2011
  91. Et tu, X-UA-Compatible? 📢 3ResearchHighlight Feb 2011
  92. BigText Makes Text Big 📢 70Web FontsProject #6Highlight Jan 2011
  93. An Update to The JavaScript Testing Challenge Jan 2011
  94. 2010 ×12
  95. The JavaScript Testing Challenge 📢 8Speaking5 min Video Nov 2010
  96. Faking Onload for Link Elements 📢 3ResearchHighlight Jul 2010
  97. ALARMd is now on Github 📢 4 Jul 2010
  98. Maiden Voyage of the DOM Sailbloat 📢 1Project Jul 2010
  99. A Race Against Time Pickers 📢 1 Jun 2010
  100. Point, Charset, Match: Character Encoding in JavaScript 📢 1Web FontsResearch Mar 2010
  101. Internet Explorer Array.sort Unreliable 📢 13ResearchHighlight Feb 2010
  102. If the Menu Fitts, We Must Acquit 📢 8 Feb 2010
  103. CSS 3 Text: A Tale of writing-mode Woe 📢 3Web FontsResearch Feb 2010
  104. Trash that “Back to Top” Link 📢 8 Feb 2010
  105. The 24 Clock on ALARMd 📢 3 Jan 2010
  106. DIY Webdings—CSS Sprites using @font-face 📢 13Web FontsResearchHighlight Jan 2010
  107. 2009 ×9
  108. Don’t Give Up on Internet Explorer Yet 📢 3 Dec 2009
  109. Device Independence on the Open Web 📢 3Highlight Aug 2009
  110. Quick Performance Tip: jQuery and addClass 📢 2 Jun 2009
  111. Adobe Reverts Flex Store to Open Web May 2009
  112. Performance Caveat with jQuery Selectors and Live Events 📢 14Research May 2009
  113. Jonathan Sharp at The Ajax Experience Feb 2009
  114. ALARMd Unix Time Format for 1234567890 Day Feb 2009
  115. Registration Forms Suck, Let’s Mitigate Suckiness 📢 4 Jan 2009
  116. Scare Your Visitors with this JavaScript Gravatar Plugin 📢 6Project Jan 2009
  117. 2008 ×20
  118. DOMContentLoaded Inconsistencies (in Browsers and JavaScript Libraries) 📢 1ResearchHighlight Dec 2008
  119. jQuery Bug: IE reports incorrect $.browser.version 📢 3 Oct 2008
  120. Dear IE6: Please Cache my Images. 📢 3Research Oct 2008
  121. Relative URLs including the Domain 📢 2 Oct 2008
  122. ALARMd is a Google Code Project Oct 2008
  123. Fight Registrastination. Register to vote! Project Sep 2008
  124. Writing a Front End Engineer’s Resume (or CV) 📢 6 Sep 2008
  125. Emulating onhashchange without setInterval 📢 5ResearchHighlight Aug 2008
  126. Double Whammy: OpenID and Microformats May 2008
  127. Selecting XML Nodes with JavaScript, or the Peril of getElementsByTagName 📢 8ResearchHighlight May 2008
  128. Javascript Objects are NOT JSON 📢 3 May 2008
  129. Surnamespacing 📢 3 May 2008
  130. Don’t Let the Door Hit You Onunload and Onbeforeunload 📢 10Research #13Highlight Apr 2008
  131. Forgive My Feed Apr 2008
  132. Rethinking JavaScript Grids and DataTables 📢 1 Apr 2008
  133. ALARMd 2 Beta, with Google Calendar Integration 📢 12ProjectHighlight Apr 2008
  134. 20000 Leagues Under the API: YouTube JavaScript Apr 2008
  135. Code Like the Big Boys: Flickr 📢 3 Mar 2008
  136. Architecture Choices: Callbacks and Events in JavaScript Mar 2008
  137. Tips for Programming JavaScript Functions 📢 1 Mar 2008
  138. Minor Annoyances with Firefox Development Mar 2008
  139. Yet Another Pretty Date JavaScript 📢 25ProjectHighlight Mar 2008
  140. Specific Inheritance with TIBCO’s General Interface 📢 2 Mar 2008
  141. PHP Pretty Date 📢 6Project Feb 2008
  142. Online Movie Rental Review – Amazon Unbox 📢 4 Jan 2008
  143. 2007 ×35
  144. Quine using XHTML and JavaScript Dec 2007
  145. Faster YUI DataTable with 5 Lines of Code 📢 1 Dec 2007
  146. enterval, an automatic setInterval chainer. Project Dec 2007
  147. Problems with Looping through window.setInterval 📢 2 Dec 2007
  148. Obscurity, Security, and Captcha 📢 1 Nov 2007
  149. Forward Compatibility and JavaScript Nov 2007
  150. Speed up Including Google Analytics Nov 2007
  151. Nursery Rhyme Code Poem [CSS] 📢 1 Oct 2007
  152. Nursery Rhyme Code Poem [PHP] Oct 2007
  153. Nursery Rhyme Code Poem [JavaScript] 📢 1 Oct 2007
  154. Write More Efficient Javascript in YUI with CSS Selectors Project Sep 2007
  155. Cross Domain XHR with Firefox 2 📢 18 Aug 2007
  156. Namespacing outside of the YAHOO Namespace 📢 8 Aug 2007
  157. Enlarging your YUI DataTable in 29 Seconds or Less! 📢 3 Aug 2007
  158. ALARMd now supports URLs Aug 2007
  159. maLArquee, Bringing Back the Marquee 📢 4Project Aug 2007
  160. Using Phing to automate JavaScript and CSS Minimization 📢 3 Aug 2007
  161. YUI Code Review: YAHOO.namespace 📢 3 Aug 2007
  162. Using DOM Query Libraries in YUI 📢 3 Jul 2007
  163. 8 Things the YUI Library Needs to Win Me Back 📢 7 Jul 2007
  164. What Sound Does a Cow Make? MooTools. 📢 1 Jul 2007
  165. 20/20 Hindsight, a Look Back at ALARMd 📢 2 Jul 2007
  166. JavaScript Frameworks and JSF 📢 6 Jul 2007
  167. DOMDom, easy DOM Element Creation 📢 9Project Jul 2007
  168. Wake up to YouTube on my Internet Alarm Clock 📢 23ProjectHighlight Jun 2007
  169. Enlarging your YUI DataTable in 30 Seconds or Less! 📢 7 Jun 2007
  170. Screen Readers and Listening at the Speed of Sound May 2007
  171. Wash your mouth out with SOAP and the YUI Connection Manager 📢 3 May 2007
  172. YUI DataTable and You: Making the Marriage Work 📢 7 Apr 2007
  173. I-Frame Shims or How I Learned to Stop Worrying and Love the Bomb 📢 8 Apr 2007
  174. JavaScript Code Coverage Tool for Firebug 📢 18Project Apr 2007
  175. Google Using YUI Grids CSS 📢 9Highlight Apr 2007
  176. Problems with YUI DataTable 📢 28 Apr 2007
  177. Logical XOR in JavaScript 📢 2Project Mar 2007
  178. Conservative Design Example: Hierarchical Options Mar 2007
  179. YUI Button Lite Mar 2007
  180. Fundamental Problem with YUI Button 📢 1 Mar 2007
  181. OMG SOA Mar 2007
  182. Conservative Design Example: Multiple Option List Mar 2007
  183. Conservative Design: Command Line Interface Mar 2007
  184. Namespaces in Ext DomQuery Mar 2007
  185. Beaten to the Spiked Punch Mar 2007
  186. Conservative Design: Option List Feb 2007
  187. Conservative Design Patterns for Form Elements 📢 3 Feb 2007
  188. Conservative Design: Hierarchical Select 📢 1 Feb 2007
  189. Checklist for Web Applications Feb 2007
  190. Screen Printing, Fake Interfaces Part 1 Feb 2007