Frontend Dogma

“2022” Archive (4)

  1. Prestige Is the Designer’s Achilles’ Heel (via) · ·
  2. Infinite Scrolling: When to Use It, When to Avoid It (by/via) · · , ,
  3. Dear Oracle, Please Release the JavaScript Trademark (by) · · ,
  4. Disabled JavaScript Turns Off Native Lazy Loading (by) · · , , ,
  5. Git Cheatsheet · · , ,
  6. What Is a Webmention and How Do I Use It in WordPress? (by/via) · · ,
  7. Big O Notation Basics Made Dead Simple (by) · · ,
  8. The Accessibility and Usability Journey of Drupal’s Primary Navigation (by/via) · · , ,
  9. Focus Appearance Explained (by) · · , , ,
  10. Is It “:modal”? (by/via) · · , ,
  11. DevTools Tips: How to Inspect and Debug CSS Flexbox (via) · · , , , , , ,
  12. How I Maintain OSS Projects (by) · · ,
  13. Comparing JAWS, NVDA, and VoiceOver (via) · · , , , , , , , ,
  14. Don’t Overwrite Visual Labels With “aria-label” (by) · · , ,
  15. Useful JavaScript Data Grid Libraries (by/via) · · , , ,
  16. Is Design Thinking Overhyped? (via) · ·
  17. Default Exports in JavaScript Modules Are Terrible (by) · ·
  18. Accessible Lists and Tables (via) · · , ,
  19. 4 Ways to Minimize Your Dependencies in Node.js (by/via) · · , ,
  20. Neutrality Isn’t an Option When It Comes to Accessibility (by) · ·
  21. Small Steps: Celebrating Four Accessibility Wins (by/via) · · ,
  22. An Argument Against CSS Opacity (via) · · , , ,
  23. JavaScript Bugs Aplenty in Node.js Ecosystem—Found Automatically (by/via) · · , , , , , ,
  24. Interpolating Numeric CSS Variables (by/via) · · ,
  25. Understanding “useMemo” and “useCallback” (by) · · ,
  26. Things Not Available When Someone Blocks All Cookies (by) · ·
  27. Cypress Testing: A Guide to Running Web Application Tests (via) · · , ,
  28. CSS Container Queries Are Finally Here (by) · · ,
  29. Monitor Events and Function Calls via Console (by) · · , ,
  30. Should I Use a Button or a Link? (by) · · , , ,
  31. What Makes A Great Toggle Button? II (via) · · ,
  32. Parents Counting Children in CSS (by) · · ,
  33. Communication Around Digital Accessibility Must Improve: How Users and Businesses Alike Are Failing to Advance Digital Accessibility (via) · · ,
  34. An Ideal REST API—Best Practices (by) · · ,
  35. The Three Laws of Utility Classes (by) · · ,
  36. Modern Alternatives to BEM (by) · · , , , ,
  37. Making a Twitter Bot in the Year 2022 With Node.js (by) · · ,
  38. What Is Closed Captioning? (by/via) · · , ,
  39. Using Grid Named Areas to Visualize (and Reference) Your Layout (by/via) · · ,
  40. On Design System Support (by) · ·
  41. Be Good-Argument-Driven, Not Data-Driven (by) · · ,
  42. 20 Principles I Learned From 10 Years of Developing Software (by) · ·
  43. Complex Conditional Width Using “flex-basis” With “clamp” (by/via) · ·
  44. Designing Better Error Messages UX (by/via) · · , , ,
  45. Why Your Website Should Be Under 14 kB in Size · · ,
  46. Short Note on “figure” and “figcaption” (by) · · ,
  47. Installing and Running Node.js Bin Scripts (by) · · ,
  48. Implementing Promisable “setTimeout” (by) · ·
  49. CSS Classes Considered Harmful (by) · · ,
  50. What Customer-First Web Design Looks Like (via) · · ,
  51. Measure What You Impact, Not What You Influence (by) · · , ,
  52. Accessibility and Supporting Internet Explorer (by/via) · · , , , ,
  53. TIL: You Can Access a User’s Camera With Just HTML (by) · · ,
  54. Creative List Styling (by/via) · · ,
  55. Why Every University Needs an Accessible Standard Website Template (via) · · , ,
  56. What Is a REST API? (by/via) · · ,
  57. The Design Principle Paradox (by/via) · · ,
  58. 8 Tricks for SVG Optimization (by/via) · · , , ,
  59. How to Use localStorage in JavaScript: An Easy Guide (by/via) · · , , ,
  60. Does Accessibility Stifle the Creative Process? (via) · · , ,
  61. Scaling SCM Front-End Design With a Design System (by+/via) · · ,
  62. What’s the Value of a Design System? (by+/via) · · ,
  63. A Handy Use for Cascade Layers (by/via) · · ,
  64. Exploring the Underrated “output” Element (by) · ·
  65. Learn 5 Optimization Tips for Webpack Step by Step (via) · · , ,
  66. Mac VoiceOver Testing the Simple Way (by/via) · · , , , , , ,
  67. CSS Grid and Custom Shapes II (by/via) · · ,
  68. Bring Focus to the First Form Field With an Error (by) · · , ,
  69. Meet the Top Layer: A Solution to “z-index:10000” (by/via) · ·
  70. Why User Personas Matter in UX Design (by/via) · · , , ,
  71. What Makes a Great Toggle Button? (via) · · ,
  72. Prepare for WCAG 2.2 and Beyond (by/via) · · , , ,
  73. Design Systems: Prototyping on Steroids (by/via) · · ,
  74. Conducting an Effective Web-Site UX Audit (via) · · ,
  75. Class-Less CSS Frameworks (by) · · , , ,
  76. Advanced TypeScript Patterns: API Contracts · · ,
  77. A Simple “clamp()” Function in PHP (by) · · ,
  78. You’re Not Using HTTP Status Codes Right (by) · · ,
  79. A Guide to Using User-Experience Research Methods (by/via) · · , ,
  80. Scaling a System (by) · · ,
  81. React Query vs. SWR (by) · · , , ,
  82. Use the Right Container Query Syntax (by/via) · · ,
  83. Using “:has()” as a CSS Parent Selector and Much More (by/via) · · ,
  84. Inclusion Beats Optimization (by) · · , ,
  85. When Do You Use CSS Columns? (by/via) · · ,
  86. Optimize Data Fetching (by) · · ,
  87. An Introduction to Context Propagation in JavaScript (by/via) · · ,
  88. React Re-Renders Guide: Preventing Unnecessary Re-Renders (by) · · , ,
  89. Better Conditionals in CSS Media Queries With Range Syntax (by) · · ,
  90. Can Browsers Optimize the Loading of Third-Party Resources? (by/via) · · , ,
  91. Outline Is Your Friend (by) · · ,
  92. How the CSS “:is”, “:where”, and “:has” Pseudo-Class Selectors Work (by/via) · · ,
  93. Dependency Injection in JS/TS (via) · · ,
  94. Designing a Better Back Button UX (by/via) · · , ,
  95. Introduction to Screen Readers (Desktop Edition) (by+/via) · · , , , , , ,
  96. Why React Re-Renders (by) · · ,
  97. Color and Contrast (by) · · , , ,
  98. Accessible User Experience and A/B Testing · · , , ,
  99. Top 9 Ways to Become a Successful Self-Taught Developer (by) · · ,
  100. Check Heading Accessibility Using the WAVE Tool (via) · · , , , , ,
  101. CSS Grid and Custom Shapes (by/via) · · ,
  102. Table Column Alignment With Variable Transforms (by) · · , ,
  103. Building Accessible Select Components in React (by/via) · · , , ,
  104. What Was That Media Query Code Again? (by) · · , ,
  105. Tip: Use “fetchpriority=high” to Load Your LCP Hero Image Sooner (by) · · , ,
  106. 5 Modern CLI Tools That Help Boost Your Productivity (by) · · ,
  107. Custom Event Naming Conventions (by) · · , ,
  108. Websites: Past and Present (by/via) · · , ,
  109. The Console API (by) · · , ,
  110. An Introduction to Constraint Based Design Systems (by) · · ,
  111. (Re-)Introducing Gatsby, a Reactive Site Generator (by/via) · · , , , , ,
  112. Creative CSS Layout (by/via) · · , , ,
  113. On Ratings and Meters (by) · · , ,
  114. If You’re Not Checking, You’re Guessing (by/via) · · ,
  115. Automation and Accessibility—What You Need to Know (by) · · , ,
  116. How and Why We Removed jQuery From GOV.UK (via) · · , ,
  117. Results of Quick Testing of Documentation Tools’ Accessibility (by) · · , ,
  118. TypeScript: It’s Not Actually Validating Your Types · · ,
  119. Do You Know About “overflow: clip”? (by) · ·
  120. TypeScript vs. JavaScript: Which One You Should Use, and Why (by/via) · · , ,
  121. Modern CSS Selectors (by/via) · · ,
  122. Here, Here, and Here (by) · ·
  123. Designing for Long-Form Articles (by/via) · · ,
  124. The Death of Mozilla Is the Death of the Open Web (by) · · ,
  125. SEO Links Obfuscation and Accessibility Problems (by) · · , , ,
  126. Code Golfing Tips and Tricks: How to Minify Your JavaScript Code (by/via) · · , , ,
  127. How to Research Components and Patterns: Common Challenges and How to Overcome Them (by/via) · · , ,
  128. Brief Note on Calendar Tables (by) · · , ,
  129. Defining “Integration” Tests (by) · ·
  130. Core Web Vitals Tools to Boost Your Web Performance Scores (by/via) · · , ,
  131. Accessibility Is Writing (by) · · ,
  132. Dark Mode With Design Tokens (by/via) · · ,
  133. The JavaScript Paradox (by/via) · ·
  134. Zooming Images in a Grid Layout (by/via) · · ,
  135. Capturing Images and Videos From the Camera of Mobile Devices Using HTML (by) · · , ,
  136. Bringing Perspective to CSS (by) · ·
  137. 5 Good Practices to Scale Your React Projects Easily (by) · · , ,
  138. No Demo [Website] Reno (by) · · ,
  139. The Infinite Marquee (by) · · , ,
  140. How to Use Multithreading in Node.js (by/via) · · , ,
  141. How I Added Scroll Snapping to My Twitter Timeline (by/via) · · , ,
  142. Polyhierarchy in Information Architecture (by/via) · · ,
  143. AI-Generated Images From AI-Generated Alt Text (by) · · , , ,
  144. Not All Zeros Are Equal (by/via) · ·
  145. 5 Heading Accessibility Issues and How to Fix Them (via) · · , ,
  146. What Are Best Practices for Creating Alt Text? (via) · · , , ,
  147. One-Dimensional Website Optimization Considered Harmful (by) · · ,
  148. Light/Dark Mode (by) · · , , ,
  149. One Year of Coding—Recommendations for Beginners From a Beginner (by/via) · · , ,
  150. Migration From jQuery to Next.js: A Guide (by/via) · · , , ,
  151. “:has()”: The Family Selector (by/via) · · ,
  152. Introducing the New npm Dependency Selector Syntax (via) · · ,
  153. Finer Grained Control Over CSS Transforms With Individual Transform Properties (by+/via) · ·
  154. Introduction to SolidJS (by/via) · · ,
  155. Making a Website Under 1 kB (by) · · , ,
  156. A Delightful Guide to Culture at Mamo (Inspired by Khalil Gibran) (by) · · , ,
  157. Popular Node.js Patterns and Tools to Re-Consider (by/via) · · ,
  158. Ruby Styling (by/via) · · ,
  159. IE: RIP or BRB? (by/via) · · , , , ,
  160. CSS Border Animations (by/via) · · , ,
  161. Exploring CSS Grid’s Implicit Grid and Auto-Placement Powers (by/via) · · ,
  162. Fluid Sizing Instead of Multiple Media Queries? (via) · · ,
  163. An Introduction to Webmention · · ,
  164. The Importance of Clean Code in Your Startup’s Success (by) · ·
  165. Fitts’s Law and Its Applications in UX (by/via) · · ,
  166. Checking If a JavaScript Native Function Is Monkey Patched (by) · · ,
  167. How to Add a Subtle Gradient on Top of an Image Using CSS (by) · · , ,
  168. Firefox (and Other Browsers), Forgotten? (by) · · , , ,
  169. 10+ Things I Always Set Up in Git When I Prepare a New Environment (by) · · , ,
  170. Which Generator Builds Markdown the Fastest? (by) · · , , ,
  171. Use the Active Voice to Transform Your Design System Documentation (by) · · , ,
  172. The Horizontal Overflow Problem (by) · ·
  173. Adding Observability to Your Jest Tests (via) · · , ,
  174. Quick Tip: Negative Animation Delay (by/via) · · , ,
  175. When Will Scrum Die? (by/via) · · , , ,
  176. 500 ms to 1.7 ms in React: A Journey and a Checklist (by) · · ,
  177. Recreating MDN’s Truncated Text Effect (by/via) · · ,
  178. Detecting CSS Selector Support With JavaScript (by) · · , , ,
  179. Testable Frontend: The Good, the Bad, and the Flaky (by/via) · ·
  180. Underengineer Your Websites (by/via) · · , ,
  181. The Advanced Guide to the CSS “:has()” Selector (via) · · , ,
  182. 8 Simple Steps to Complete a Technical SEO Audit (via) · · ,
  183. Abbreviations Suck (by) · · ,
  184. Why I’m Learning TypeScript · ·
  185. 3 Simple Ways to Center an Element Using CSS (by/via) · · , ,
  186. Adventures in Text Rendering: Kerning and Glyph Atlases (via) · · ,
  187. CSS Minimal Dark Mode Toggle Button (by) · · , ,
  188. You Don’t Need Microservices (by/via) · ·
  189. Design Systems for Humans (by) · · ,
  190. Django Tips and Tricks (via) · · ,
  191. UX Principles That Include Cognitive Accessibility (by) · · , ,
  192. The 10 Affirmations of Good Digital Accessibility (via) · ·
  193. Speaking Up and Speaking Out: Tactical Communication in Accessibility (by/via) · · ,
  194. Neubrutalism Style in UX: A Twist on the Dominant Modern Minimalist (by/via) · · , ,
  195. Maintenance Matters (via) · · , , , , ,
  196. Introducing Even More Security Enhancements to npm (by+/via) · · ,
  197. #ADA32: The ADA Has Applied to Digital for Decades (by) · · ,
  198. A Good Reset (by) · · ,
  199. Solving the “Dangler” Conundrum With Container Queries and “:has()” (by) · · ,
  200. Priority Hints—What Your Browser Doesn’t Know (Yet) (by/via) · · ,
  201. Your Code Doesn’t Have to Be a Mess · ·
  202. Typography in Web Design (via) · · ,
  203. Everything You Need to Know About JavaScript Import Maps (by/via) · ·
  204. “<article>” vs. “<section>”: How to Choose the Right One (by/via) · · , ,
  205. 5 Best UX Careers to Pursue in 2022 (via) · · ,
  206. Clean Architecture: Applying With React · · ,
  207. Mobile UX: Study Guide (by/via) · · , , , ,
  208. Ancient Web Browsers · · , ,
  209. The History of JavaScript (by) · · ,
  210. What Is HCI (Human-Computer Interaction)? Meaning, Importance, Examples, and Goals (via) · · , ,
  211. Intro to Serverless Functions (by/via) · · , , ,
  212. Understanding CSS “:has()” (by/via) · · , ,
  213. Say No to Tailwind, Embrace Plain CSS (by) · · , ,
  214. Type Annotations in JavaScript (by/via) · · ,
  215. Definitive Guide to CAPTCHA Accessibility (via) · · , ,
  216. Vector Animations With Figma and SVG Animate (by/via) · · , , ,
  217. With “:focus-visible”, You Can Have Focus Styles When It Makes Sense (by) · · , , , ,
  218. 20 Git Commands Every Developer Should Know (by) · · ,
  219. Roundup of Recent Document Outline Chatter (by/via) · · , ,
  220. Top Layer Support in Chrome DevTools (by/via) · · , , , ,
  221. Where’s the Fun in Accessibility? (by/via) · · ,
  222. Research Insight: Accessibility of Images (by/via) · · , , ,
  223. RedwoodJS vs. BlitzJS: The Future of Fullstack JavaScript Meta-Frameworks (by/via) · · , ,
  224. Introduction to SvelteKit (by/via) · · , ,
  225. Front-End Internationalisation Tips (by/via) · · , , ,
  226. Escaping the sRGB Prison (by/via) · · ,
  227. An Introduction to Multithreading in Node.js (by/via) · · , ,
  228. Creating an App Using Drag and Drop With React Without Libraries (by) · ·
  229. Powerful Image Optimization Tools (by/via) · · , , , ,
  230. Create Complex Transitions With Individual CSS Transform Properties (by/via) · · , ,
  231. Rethinking Device Emulation in Browsers (by) · · , ,
  232. Logical Properties for Useful Shorthands (by/via) · · , ,
  233. Expert Tips for Color Accessibility on the Web (via) · · , ,
  234. Subheadings, Subtitles, Alternative Titles, and Taglines in HTML (by/via) · · , , ,
  235. The 10 Most Common JavaScript Issues Developers Face (via) · · ,
  236. 15 Common Beginner JavaScript Mistakes (by) · · ,
  237. JavaScript SDK “Package Size Is Massive”—So We Reduced It by 29% (via) · · , ,
  238. JSON Creator Douglas Crockford Interview (by/via) · · ,
  239. Hacking JavaScript Objects (by) · · ,
  240. Useful Tips and Tricks in JavaScript (by) · · ,
  241. How Scrum With Kanban Works (by/via) · · , , ,
  242. How Did REST Come to Mean the Opposite of REST? (via) · ·
  243. Abbreviations Can Be Problematic (by) · · ,
  244. Why I No Longer Care What People “Like” or “Don’t Like” (by/via) · ·
  245. What Is WAI? The Web Accessibility Initiative (via) · ·
  246. What Is Passwordless Authentication and How to Implement It (by/via) · · , ,
  247. 7 Tips for Clean React TypeScript Code You Must Know (by) · · , ,
  248. An Approach to Continuous Learning (by) · · ,
  249. Use Firefox for Accessibility Testing (by/via) · · , , , ,
  250. Using Grids in Interface Designs (via) · · ,