Frontend Dogma

“2022” Archive (7)

  1. Nailing Your Engineering Interviews: Tips From a Technical Recruiter (via) · · ,
  2. Use Unicode Characters for Bullet Points in CSS Using “::marker” (by) · · ,
  3. Dynamic Data-Fetching in an Authenticated Next.js App (by/via) · · , ,
  4. Your Website Is a Pollution Machine (by) · ·
  5. Why Your Design System Needs Content Design (by/via) · · ,
  6. How to Create Animated Anchor Links Using CSS (by/via) · · , , , ,
  7. Principles of Object-Oriented Programming in TypeScript (via) · · ,
  8. Designing Better Breadcrumbs (by/via) · · , ,
  9. JavaScript and Node.js Testing Best Practices (by) · · , , ,
  10. A New Statistical Approach for Predicting Usability Problems (via) · · , , ,
  11. HTML Is All You Need to Make a Website (by) · ·
  12. Alternative Text (Alt Text) (via) · · , , ,
  13. Animated Grid Tracks With “:has()” (by/via) · · , ,
  14. Sharing State in Distributed UIs at Runtime (by) · · , ,
  15. The Business Case for Accessibility (by/via) · · ,
  16. Fonts in Use: Variable Fonts (by/via) · · ,
  17. Core Web Vitals: Finding Common Ground Between SEOs and Developers (by/via) · · , , ,
  18. 12 Years Beyond a HTML Joke (by) · · ,
  19. Thoughts on Exerting Control With Media Queries (by) · · , ,
  20. What If… One Day Everything Got Better? (by) · ·
  21. Accessible Description Exposure (by) · · ,
  22. A Simple Way to Create a Slideshow Using Pure CSS (by/via) · · , ,
  23. How to Respond to Growing Supply Chain Security Risks? (by) · · , , , ,
  24. Tweaking in the Browser (by) · · ,
  25. “aria-labelledby” Usage Notes (by) · · , ,
  26. Are You Using Coding Interviews for Senior Software Developers? (via) · · , ,
  27. Top 3 Informational Interview Questions in UX (via) · · , , ,
  28. Accessible Cards (by) · · , ,
  29. Why We Don’t Use a Staging Environment (via) · · ,
  30. The WebAIM Million: The 2022 Report on the Accessibility of the Top 1,000,000 Home Pages (via) · · , , ,
  31. How to Match HTML Elements With an Indeterminate State (by) · · , , ,
  32. Exciting Times for Browsers (and CSS) (by/via) · · ,
  33. Designing a Better Infinite Scroll (by/via) · · , ,
  34. Introduction to the SSH Protocol (via) · · , ,
  35. Web Accessibility Guidance Project (via) · · ,
  36. Accessibility Policy Implementation: What You Need to Know (by/via) · · , ,
  37. Make Beautifully Resilient Apps With Progressive Enhancement (by) · · ,
  38. HTML-Only Keyboard Shortcuts (by) · · , ,
  39. How to Optimize Your LCP (with Visuals) (by) · · , , ,
  40. Neubrutalism Is Taking Over the Web (by/via) · · ,
  41. If We Can Make a Product Work for Anyone, It Usually Works Better for Everyone · · ,
  42. Optimising Largest Contentful Paint (by) · · ,
  43. How to Document Accessibility Issues (via) · · , ,
  44. Picture Perfect Images With the Modern “<img>” Element (by/via) · · , , ,
  45. Understanding Layout Algorithms (by) · · ,
  46. Secret Mechanisms of CSS (by/via) · · ,
  47. Locale Aware Sorting in JavaScript (by) · · , , ,
  48. CSS “:has” (by) · · ,
  49. Case: Accessibility in Software Development (by/via) · ·
  50. An Opinionated Guide to Unit Testing (by) · · , ,
  51. A Guide to Hover and Pointer Media Queries (by/via) · · , ,
  52. 7 Learning Habits for Developers: Reach Skill Goals in Less Time (by/via) · ·
  53. Why Every Programmer Must Blog (by) · · , , ,
  54. The Art of CSS Art (by) · · ,
  55. Building a Headless Design System (by/via) · · , ,
  56. How to Use Props in React (by) · · , ,
  57. You’re Unselectable (by) · · ,
  58. You ≠ User (via) · · , ,
  59. Remix Routes Demystified (by/via) · · ,
  60. Quick Survey: Help Improve the Simulation Options of Browser Developer Tools (by) · · , , ,
  61. 14 Linting Rules to Help You Write Asynchronous Code in JavaScript (by) · · ,
  62. Speed Needs Design, or: You Can’t Delight Users You’ve Annoyed (by) · · , ,
  63. Variable Fonts in Real Life: How to Use and Love Them (by+/via) · · ,
  64. How Should You Name Your Colors in a Design System? (by/via) · · , ,
  65. Designing “Above the Fold”? Try the Reciprocity Principle (via) · · ,
  66. Those HTML Attributes You Never Use (by/via) · ·
  67. Resetting Inherited CSS With “Revert” (by/via) · · ,
  68. There Are No Bad Questions in Accessibility (by) · ·
  69. The Web Is for Everyone: Our Vision for the Evolution of the Web (by+/via) · · , , , , , ,
  70. The 5 Riders of Accessible Media (via) · · ,
  71. Spotlight: What Happens When a Project Team Shifts Accessibility Left? (via) · ·
  72. How Do Design Systems Improve Developer Efficiency? (by/via) · · ,
  73. Deep Dive Into the CSS “:where()” Function (by/via) · · ,
  74. When to Use a Function Expression vs. Function Declaration (by/via) · · , ,
  75. The Book on Accessibility (by) · · , ,
  76. Optimising Core Web Vitals on SPAs (by) · · , , ,
  77. Dynamically Generated Content and Accessibility: 3 Quick Tips (via) · · ,
  78. ADA Web Site Compliance Still Not a Thing (by) · · , ,
  79. Write HTML, the HTML Way (Not the XHTML Way) (by/via) · · , ,
  80. Windows High Contrast Mode, Forced Colors Mode, and CSS Custom Properties (by/via) · · , , , , ,
  81. Dos and Don’ts of Mobile UX Design (by/via) · · , , ,
  82. Design Mistakes That Hurt Your Web Site’s Conversion Rates (by/via) · · , , , ,
  83. Should “Cancel” Be a Button or a Link? (by/via) · · , , ,
  84. Conquering JavaScript Hydration (by/via) · · ,
  85. “!important” Was Added for One Reason Only (by) · · ,
  86. Usability Testing: Driving the Best User Experience for Business Success (by/via) · · , ,
  87. Improving Your User Experience to Reduce Bounce Rates (via) · · , , ,
  88. HTML Semantics (by) · · ,
  89. Design Systems Aren’t Cheap (by) · · , ,
  90. Design System—Principles of Success (via) · · ,
  91. 4 Xs That Aren’t UX (by/via) · ·
  92. Typography in Design Tokens for Figma and Code (by/via) · · , , ,
  93. How to Use CSS Math Functions: “calc”, “min”, “max”, “clamp” (via) · · , , ,
  94. UX Strategy: Definition and Components (by+/via) · · ,
  95. Authorization in a Microservices World (by) · · ,
  96. Performance Tests on Common JavaScript Array Methods (by/via) · · , , ,
  97. The Web Doesn’t Have Version Numbers (by/via) · · ,
  98. Why Is Dark Mode So Captivating? (by/via) · ·
  99. Introduction to Bulma: A Simple and Intuitive CSS Framework (via) · · ,
  100. Google Calendar Webhooks With Node.js (via) · · , ,
  101. How to Make a Drag-and-Drop File Uploader With Vue.js 3 (by/via) · · , , ,
  102. How Do I Resolve Merge Conflicts? (by/via) · · , ,
  103. Guidance on Web Accessibility and the ADA (via) · · ,
  104. 4 Accessibility Mistakes Plaguing Most Government Websites (by/via) · · ,
  105. The Impact That High Quality Mark-Up Can Have on Accessibility, Performance, and Discoverability (by) · · , , ,
  106. Optimizing SVG Patterns to Their Smallest Size (by/via) · · ,
  107. Migrating Our Monorepo to Yarn 2 (via) · · , ,
  108. Identifying Fonts: The Complete Guide (by) · · , ,
  109. The Future of the Web and Accessibility (by/via) · · , ,
  110. What Is Platform Engineering? (by/via) · · ,
  111. Building a Loading Bar Component (by/via) · · , , ,
  112. How to Prep Your SEO Strategy for a New Website (by/via) · · , ,
  113. How to Empathize With Your Users (via) · · , , ,
  114. What Every Good README Should Contain · ·
  115. A Quick Guide to Closures (by) · · ,
  116. Perceptually Uniform Color Models and Their Implications (by) · · ,
  117. A Designer’s Guide to Documenting Accessibility and User Interactions (by) · · , , ,
  118. What Makes You a Professional Web Developer (by) · ·
  119. Accessibility, Assistive Technology, and JavaScript (by) · · , ,
  120. The Weirdly Obscure Art of Streamed HTML (by) · · , ,
  121. Implementing JavaScript Delay for Cookie Consent Banner (by) · · , , ,
  122. How to Automatically Size a Textarea Based on Its [Text] Using Vanilla JavaScript (by) · · , ,
  123. Prevent Technical Debt With These 3 Strategies (by) · ·
  124. React Best Practices and Patterns to Reduce Code · · , ,
  125. Making the World’s Fastest Website, and Other Mistakes (by) · · ,
  126. What Are Micro-Frontends? (by) · ·
  127. Don’t Believe the Type! (by+/via) · · , , , ,
  128. Explaining Micro Frontends as Simply as Possible (by) · ·
  129. In Defense of Sass (by) · · ,
  130. It Needs to Map Back to a Role (by) · · , , ,
  131. When or If (by) · ·
  132. Update Node Dependencies Automatically, Selectively, or Incrementally (by) · · , , ,
  133. Tao of Node—Design, Architecture, and Best Practices (by) · · , ,
  134. Aligning Content in Different Wrappers (by) · · ,
  135. 20 Productivity Tips From Developers to Developers (by/via) · · ,
  136. Giving New Meanings to the Color Functions in CSS (by) · · , ,
  137. How to Use Spectator to Test Your Angular Components (by/via) · · , , , ,
  138. The Future of Web Accessibility: WCAG 3.0 (via) · · , ,
  139. Where TypeScript Excels (via) · · ,
  140. 42 Tips for Getting Good at DevOps and Life (by/via) · · , , ,
  141. Horizontal Scrolling Nav (by) · · ,
  142. Arrow Functions in JavaScript: How to Use Fat and Concise Syntax (by/via) · · , ,
  143. Digging Into CSS Media Queries (by+) · · , ,
  144. Don’t Alienate Your User: A Primer for Internationalisation and Localisation (by/via) · · , , ,
  145. WebGPU—All of the Cores, None of the Canvas (by) · · , ,
  146. A Look at the Dialog Element’s Super Powers (by) · · , ,
  147. Carousels: No One Likes You (by) · · , , ,
  148. You Don’t Always Need a CMS (by) · ·
  149. An Introduction to User Journey Maps (by/via) · · , , ,
  150. Accumulation of Tech Debt (by/via) · ·
  151. Ten Years of Page Bloat: What Have We Learned? (by/via) · · , ,
  152. 7 Ways to Achieve a Faster Core Web Vitals Score (via) · · ,
  153. Session Timeouts (by/via) · · ,
  154. An Introduction to AWS CloudFront Functions (by/via) · · , , ,
  155. 10 Amazing Games to Learn CSS (by) · · ,
  156. A New Speed Milestone for Chrome (via) · · , , ,
  157. Using HTTPS in Your Development Environment (by/via) · · , ,
  158. Performance Signals for Customizing Website UX (by/via) · · , , ,
  159. Optimizing a Web Site for Google’s New UX Criteria (via) · · , , ,
  160. Moderated Versus Unmoderated Usability Testing (by/via) · · , ,
  161. JavaScript Naming Conflicts: How Existing Code Can Force Proposed Features to Be Renamed (by) · · , ,
  162. Designing the User Experience of a Rating System (by/via) · · ,
  163. Alternatives to Pagination on Product-Listing Pages (by/via) · · , , ,
  164. Why I Avoid “async”/“await” · ·
  165. The Basics—Generics in PHP (by) · · , ,
  166. Creating Native Web Components (via) · · , ,
  167. Dive Into Node.js Streams (by/via) · · ,
  168. It’s Always Been You, Canvas2D (by/via) · · , , ,
  169. Building Web Layouts for Dual-Screen and Foldable Devices (by/via) · · , ,
  170. How to Prevent SQL Injection Attacks in Node.js (by/via) · · , , , ,
  171. How to Design Better APIs (by) · · , ,
  172. The Importance of Screen Reader Software for Web Navigation (by/via) · · , , , ,
  173. Interop 2022: Browsers Working Together to Improve the Web for Developers (by+/via) · · , ,
  174. The Best Design System Is No System (via) · ·
  175. Remix vs. Next.js (via) · · , ,
  176. Accessibility and Limited Fine Motor Skills (via) · ·
  177. How Many Hyperlinks Are Too Many for Accessibility? (via) · · ,
  178. Taming CSS Variables With Web Inspector (by/via) · · , , ,
  179. How to Use Higher-Order Functions in JavaScript (by/via) · · , ,
  180. How to Make a “Raise the Curtains” Effect in CSS (by/via) · · , ,
  181. Progressive Enhancement, the New Hotness (by) · ·
  182. How Do Primitive Values Get Their Properties? (by) · ·
  183. New CSS Features in 2022 (by/via) · ·
  184. What’s Really Going On Inside Your node_modules Folder? (via) · · , ,
  185. Simple Color System for Complex Digital Interfaces (by) · · , , ,
  186. HTML Tips and Tricks · · ,
  187. Essential Cryptography for JavaScript Developers (by/via) · · , ,
  188. How to Build a File Upload Service With Vanilla JavaScript (by/via) · · , ,
  189. Foundations: Headings (by/via) · · , , ,
  190. Web Component Pseudo-Classes and Pseudo-Elements Are Easier Than You Think (by/via) · · , ,
  191. (Not So) Short Note on Being Owned (by) · · , ,
  192. Accessibility Checklist: Five Things Usually Left Out (via) · · ,
  193. A Recipe for a Good Design System (by/via) · ·
  194. 5 Things You Don’t Need JavaScript For (by/via) · ·
  195. Importing ES6 Modules Over HTTP/HTTPS in Node.js (by/via) · · , , ,
  196. Solid.js Feels Like What I Always Wanted React to Be (by) · · , ,
  197. Should Frontend Devs Care About Performance? (by) · ·
  198. Higher-Order Components in React Hooks Era (by) · · , ,
  199. CSS “content” Property (via) · ·
  200. Top 2021 CSS Frameworks Report: The CSS File Sizes (by/via) · · , , , ,
  201. When to Avoid the “text-decoration” Shorthand Property (by/via) · · ,
  202. How I Structure My React Projects · · ,
  203. Screaming Architecture—Evolution of a React Folder Structure (by/via) · · ,
  204. Overlay Position and Recommendations (via) · · ,
  205. 4 Simple Ways to Improve Web Accessibility (via) · · ,
  206. Deploying a React Application to Netlify (by/via) · · , , ,
  207. Understanding Dependencies Inside Your package.json (by+/via) · · , , ,
  208. Accessibility and Inclusivity in Practice (by+/via) · · , ,
  209. Moving From Next to Remix (by) · · , , ,
  210. How to Fix Your Security Vulnerabilities With npm Override (via) · · , , , ,
  211. A Complete Guide to CSV Files in Node.js (by/via) · · , , ,
  212. How to Make MPAs That Are as Fast as SPAs (by) · · , , ,
  213. HTML Comments Work in JavaScript Too (by) · · , ,
  214. Can You Get Pwned With CSS? (by) · · ,
  215. Container Queries, the Next Step Towards a Truly Modular CSS (by/via) · · , ,
  216. 5 Accessibility Quick Wins You Can Implement Today (by/via) · ·
  217. Favi-Gone: 6 Reasons Why Your Favicon Disappeared From the Google Search Results (by) · · , , ,
  218. How to Prioritize Your Components (by/via) · · , , ,
  219. Component Tokens and Themes Example (to Learn Figma Tokens) (by/via) · · , , , ,
  220. 15 Useful Placeholder Tools for Designers and Developers (by) · · , , , , ,
  221. Design Systems in Figma: How to Be More Productive (by/via) · · , , ,
  222. Comparing Gatsby and Next.js for Website Development (by) · · , , ,
  223. SPAs Were a Mistake (by) · · ,
  224. The Case for Adding Validation State to Your Design Tokens (by) · · ,
  225. What Is Responsible JavaScript? (by+/via) · · ,
  226. Turning the Tables on Accessibility (via) · ·
  227. Support for Marking Radio Buttons Required, Invalid (by) · · ,
  228. Reliably Send an HTTP Request as a User Leaves a Page (by/via) · ·
  229. Inclusive Design vs. Accessible Design: Understanding the Differences (via) · · , , ,
  230. CSS Quick Tip: Animating in a Newly Added Element (by) · · , ,
  231. Design System: How to Successfully Collaborate? (via) · · , ,
  232. Writing Logic in CSS (by) · ·
  233. Let’s Get Inclusive: Designing Products for Everyone (via) · · ,
  234. How Websites Die (by) · · ,
  235. A Complete Guide to CSS Cascade Layers (by/via) · · , ,
  236. Minimizing Google Fonts by Only Loading It for Certain Characters (by) · · , , , ,
  237. Invisible Characters (by) · · ,
  238. Column Headers and Browser Support (by) · · , ,
  239. There Is No Character Limit for “Alt Text” (by) · · , ,
  240. You Can “throw()” Anything in JavaScript—and Other “async”/“await” Considerations (by) · ·
  241. React State Management Libraries in 2022 (by) · · , ,
  242. JavaScript Obfuscation: The Definitive Guide (2022) (via) · · , ,
  243. Using “mask” as “clip-path” (by) · · , ,
  244. Structuring Documentation in Multi-Brand Design Systems (by) · · ,
  245. Core Web Vitals: What Next? (by/via) · · , ,
  246. Comparing Node JavaScript to JavaScript in the Browser (by/via) · · , , ,
  247. How to Create a Search Page for a Static Website With Vanilla JS (by) · · , , , ,
  248. Web Developers and Cognitive Biases (by) · · ,
  249. What Makes Writing More Readable? (by+/via) · · ,
  250. Flexbox Dynamic Line Separator (by) · ·