Debugging JavaScript Like a Pro: Tools and Techniques for Finding and Fixing Bugs Feb 25, 2023 1380 debugging , tooling , techniques , bugs All About Promises in JavaScript Feb 23, 2023 1379 promises Experiments With the JavaScript Garbage Collector Feb 23, 2023 1378 garbage-collection , experiments When JavaScript Fails (jas )Feb 22, 2023 1377 How to Handle Date and Time With JavaScript (sta )Feb 22, 2023 1376 how-tos , time The Great Gaslighting of the JavaScript Era (jar )Feb 22, 2023 1375 frameworks , web-platform The State of JS Frameworks (rya +)Feb 21, 2023 1374 podcasts , frameworks Encapsulating CSS With Shadow DOM Feb 17, 2023 1373 shadow-dom , dom , css Writing JavaScript Without a Build System (b0r )Feb 16, 2023 1372 building The User Activation API (mar /web )Feb 15, 2023 1371 apis Is It Worth Learning JavaScript? Popularity, Salaries, and Future (sta )Feb 15, 2023 1370 career Well-Known Symbols Feb 14, 2023 1369 So, What’s Next [for core-js]? Feb 13, 2023 1368 foss , community , economics This Is Why Performance Matters (bel )Feb 13, 2023 1367 performance , user-experience Change Tab Bar Color Dynamically Using JavaScript (ami )Feb 13, 2023 1366 colors , theming , browsers Rethinking the Modern Web Feb 12, 2023 1365 web-platform , tooling Sandboxing JavaScript Code (hea )Feb 12, 2023 1364 security The Case for Frameworks (sel )Feb 10, 2023 1363 frameworks , web-platform Discovering Primitive Objects in JavaScript (sma )Feb 10, 2023 1362 objects Use Maps More and Objects Less (ste /bui )Feb 8, 2023 1361 objects Table of Contents Progress Animation (kev )Feb 7, 2023 1360 html , css , animations , progress-indicators Speeding Up the JavaScript Ecosystem—ESLint (mar )Feb 5, 2023 1359 performance , eslint , linting The Market for Lemons (sli )Feb 4, 2023 1358 web-platform , frameworks Rotating Gallery With CSS Scroll-Driven Animations (jhe )Feb 4, 2023 1357 html , css , animations , scrolling Multi-Threaded React App Using useWorker Feb 3, 2023 1356 multithreading , react , web-workers The YAML Document From Hell—JavaScript Edition (phi )Feb 2, 2023 1355 yaml How to Get the Last Matching Item in an Array With Vanilla JavaScript (cfe )Feb 2, 2023 1354 how-tos , arrays Cancel Duplicate Fetch Requests in JavaScript Enhanced Forms (aus )Feb 1, 2023 1353 data-fetching The Ultimate Guide to JavaScript Error Handling (cra )Jan 31, 2023 1352 guides , errors Using Local Storage in JavaScript and React Jan 30, 2023 1351 react , browser-storage You’ve Got Options for Removing Event Listeners (mac )Jan 28, 2023 1350 events Accessible Hamburger Buttons Without JavaScript Jan 27, 2023 1349 accessibility , navigation 10 GitHub Repositories You Should Know as a JavaScript Developer Jan 27, 2023 1348 cheat-sheets , best-practices , link-lists , github Flow Control in JavaScript: Callbacks, Promises, “async”/“await” (cra )Jan 26, 2023 1347 callbacks , promises , asynchrony “scrollend”, a New JavaScript Event (arg )Jan 25, 2023 1346 events 10 Web Development Trends in 2023 (rwi )Jan 25, 2023 1345 trends , frameworks , tooling , monorepos , presentational-html , ai , code-completion Is CSS-in-JS Actually Bad? (may )Jan 22, 2023 1344 css , css-in-js So You Want to Make a New JS Framework (dav )Jan 20, 2023 1343 frameworks Deep Cloning Objects in JavaScript, the Modern Way (ste /bui )Jan 18, 2023 1342 objects Promises, Thenables, and Lazy-Evaluation: What, Why, How (aus )Jan 17, 2023 1341 promises A Better Way to Work With Number and Date Inputs in JavaScript (ste /bui )Jan 16, 2023 1340 Speeding Up the JavaScript Ecosystem—Module Resolution (mar )Jan 15, 2023 1339 performance , modules , esm , commonjs Advanced Usage Patterns for Taking Page Element Screenshots With Playwright Jan 15, 2023 1338 screenshots , images , playwright Four Ways to Chop Up Arrays (with Vanilla JavaScript) (cfe )Jan 13, 2023 1337 arrays JavaScript, Community (zac )Jan 11, 2023 1336 community The State of JavaScript 2022 [Results] (sac /dev )Jan 11, 2023 1335 surveys , metrics The Gotcha of Unhandled Promise Rejections (jaf )Jan 11, 2023 1334 promises Why Not “document.write()”? (css )Jan 10, 2023 1333 performance 2022 JavaScript Rising Stars Jan 6, 2023 1332 frameworks , react , vuejs , building , testing , tooling , mobile , desktop , state-management , css-in-js , graphql , retrospectives Use nvm and .nvmrc for a Better JavaScript Development Jan 4, 2023 1331 nvm , nodejs Top 13 Templating Engines for JavaScript to Improve and Simplify Your Workflow 2023 (sta )Jan 4, 2023 1330 template-engines , mustache , handlebars , nunjucks , pug , marko , comparisons , link-lists Cloning Arrays and Objects in Vanilla JavaScript (cfe )Jan 3, 2023 1329 arrays , objects Conditional API Responses for JavaScript vs. HTML Forms (aus )Jan 3, 2023 1328 html , forms , security , comparisons Intro to JavaScript Closures Jan 2, 2023 1327 introductions , closures Compress an Image Before Upload With JavaScript (rik )Jan 1, 2023 1326 file-handling , compression , images React JS Best Practices From the New Docs Dec 30, 2022 1325 react , best-practices , jsx , aria JavaScript Frameworks—Heading Into 2023 (rya /thi )Dec 29, 2022 1324 frameworks Signals: The Nitty-Gritty (web /per )Dec 21, 2022 1323 performance , signals Building an Accessible Theme Picker With HTML, CSS, and JavaScript (fos )Dec 21, 2022 1322 accessibility , html , css , theming , functionality Pointer Events (5t3 )Dec 20, 2022 1321 css , pointer-events , apis The Performance Inequality Gap, 2023 (sli )Dec 19, 2022 1320 performance , metrics Using Inline JavaScript Modules to Prevent CSS Blockage (sto /per )Dec 17, 2022 1319 performance , css ECMAScript Proposal: Iterator Helpers (rau )Dec 15, 2022 1318 ecmascript , standards The Most Popular CSS-in-JS Libraries in 2022 (sta )Dec 14, 2022 1317 libraries , css , css-in-js Get Off the Main Thread With an Inline Web Worker: An Example (sto /per )Dec 14, 2022 1316 performance , web-workers , examples An Interactive Guide to JavaScript Events (ale )Dec 10, 2022 1315 guides , events , examples How to Merge Objects in JavaScript (sta )Dec 9, 2022 1314 how-tos , objects JavaScript Polyfills for Interviews Dec 7, 2022 1313 polyfills , interviewing Using SRI to Protect From Malicious JavaScript (mat )Dec 3, 2022 1312 security Developing Faster JavaScript Apps: The Ultimate Guide to Web Workers (cra )Dec 1, 2022 1311 guides , web-apps , performance , web-workers Tips for Typing Import Statements in JavaScript (rau )Nov 30, 2022 1310 Convert Any Value to a Boolean in JavaScript (ami )Nov 29, 2022 1309 5 Ways to Make Your JavaScript More Functional Nov 29, 2022 1308 programming Speeding Up the JavaScript Ecosystem—One Library at a Time (mar )Nov 29, 2022 1307 performance , libraries Minification and Cache Directives for the Most Popular Websites of the Internet (dvk )Nov 29, 2022 1306 minification , css , html , lightning-css , html-minifier , metrics , caching , performance Document Object Model (DOM) Geometry: A Beginner’s Introduction and Guide (sma )Nov 24, 2022 1305 introductions , guides , dom Our Future CSS Strategy Nov 23, 2022 1304 css , css-in-js , strategies , case-studies State of JavaScript 2022 (sac /dev )Nov 21, 2022 1303 surveys A Guide to Keyboard Accessibility: JavaScript (its /sma )Nov 21, 2022 1302 guides , accessibility , keyboard-navigation Days Since Last JS Framework Nov 18, 2022 1301 websites , frameworks Back to Basics: What are Callbacks in JavaScript? Nov 17, 2022 1300 fundamentals , callbacks Spy On “window.postMessage” Calls (bah )Nov 16, 2022 1299 cypress , testing Generating Slugs Using One Line of Code in JavaScript (ami )Nov 8, 2022 1298 Saved From Callback Hell Nov 7, 2022 1297 callbacks Client-Side Routing Without the JavaScript (rya /thi )Nov 7, 2022 1296 performance , frameworks Why Would Anyone Need JavaScript Generator Functions? (jrs )Nov 7, 2022 1295 functions An Overview of JavaScript Promises Nov 1, 2022 1294 overviews , promises 7 Shorthand Optimization Tricks Every JavaScript Developer Should Know Oct 30, 2022 1293 optimization What Is a Realm in JavaScript? Oct 28, 2022 1292 Motion Controls in the Browser (sma )Oct 28, 2022 1291 browsers , permissions Guide to the Best JavaScript Books for Beginners Oct 26, 2022 1290 guides , books , link-lists Detect System Theme Preference Change Using JavaScript (dav )Oct 24, 2022 1289 dark-mode JavaScript Shallow Copy—What Is a Shallow Copy? Oct 22, 2022 1288 Why I Never Understood CSS-in-JS (cit )Oct 20, 2022 1287 css , css-in-js Secure JavaScript URL Validation Oct 17, 2022 1286 validation , urls , security Why We’re Breaking Up With CSS-in-JS Oct 16, 2022 1285 css , css-in-js Two JavaScripts (rem )Oct 13, 2022 1284 Speeding Up Async Snippets (css )Oct 12, 2022 1283 performance , asynchrony Quick Tip: How to Use the Ternary Operator in JavaScript Oct 11, 2022 1282 how-tos , operators , tips-and-tricks Bun? Deno? Node.js? Creating Your Own JavaScript Runtime Using V8, Libuv, and More Oct 11, 2022 1281 videos , runtimes , v8 Delightful UI Animations With Shared Element Transitions API II (cod /sma )Oct 10, 2022 1280 animations , transitions , apis Understanding “async” and “await” Oct 7, 2022 1279 asynchrony How to Safely Pass Data to JavaScript in a Django Template (ada )Oct 6, 2022 1278 how-tos , django Quick Tip: How to Use the Spread Operator in JavaScript Oct 5, 2022 1277 how-tos , operators , tips-and-tricks The Missing Math Methods in JavaScript Oct 4, 2022 1276 math , methods I Turned JS Into a Compiled Language (for Fun and Wasm) (sur )Oct 3, 2022 1275 compiling , webassembly I Changed My Mind About Writing New JavaScript Frameworks (whi )Oct 3, 2022 1274 frameworks Delightful UI Animations With Shared Element Transitions API (cod /sma )Oct 3, 2022 1273 animations , transitions , apis The Difference Between “undefined” and “not defined” in JavaScript Oct 3, 2022 1272 Templating in HTML (kit )Sep 30, 2022 1271 html Optimize Long Tasks (mal )Sep 30, 2022 1270 performance , optimization Let Me Understand How JavaScript Works Under the Hood Sep 28, 2022 1269 How to Return Multiple Values From a Function in JavaScript (ami )Sep 28, 2022 1268 how-tos , functions Dear Console… (cod )Sep 27, 2022 1267 console Useful JavaScript Math Functions and How to Use Them Sep 27, 2022 1266 math , functions Named Element IDs Can Be Referenced as JavaScript Globals (css )Sep 27, 2022 1265 html JavaScript (mal /htt )Sep 26, 2022 1264 web-almanac , studies , research , metrics The New Wave of JavaScript Web Frameworks Sep 26, 2022 1263 frameworks , react , vuejs , svelte , solidjs How to Get All Sibling Elements of a Link or Button With Vanilla JavaScript (cfe )Sep 26, 2022 1262 how-tos , links , buttons K-Means Clustering Visualization Using D3.js Sep 25, 2022 1261 visualization Writing Composable SQL Using JavaScript Sep 23, 2022 1260 databases , sql Rest vs. Spread Syntax in JavaScript (ami )Sep 21, 2022 1259 comparisons How to Generate Random Numbers in JavaScript With “Math.random()” Sep 20, 2022 1258 how-tos , math , randomness How to Get the Current Timestamp in JavaScript Sep 19, 2022 1257 how-tos Building a Retro Draggable Web Component With Lit (and /sma )Sep 19, 2022 1256 web-components 7 Must Know JavaScript Tips and Tricks Sep 15, 2022 1255 tips-and-tricks Total Blocking Time: A Short and Sweet Guide for Happier Users (ben /cal )Sep 15, 2022 1254 performance JavaScript APIs You Don’t Know About (mon /sma )Sep 14, 2022 1253 apis A Guide to Rounding Numbers in JavaScript Sep 14, 2022 1252 guides Conditionally Spreading Objects in JavaScript (ami )Sep 13, 2022 1251 objects The Seventh Way to Call a JavaScript Function Without Parentheses Sep 12, 2022 1250 functions Mastering DOM Manipulation With Vanilla JavaScript Sep 11, 2022 1249 dom Make It Short—Make It Better Sep 10, 2022 1248 minimalism What’s New With Forms in 2022? (oll /css )Sep 8, 2022 1247 forms , html A Quick Primer on Testing JavaScript (cfe )Sep 8, 2022 1246 introductions , testing Detect When Users Switch Tabs Using JavaScript Sep 7, 2022 1245 The Art of Writing Secrets: Encryption for JavaScript Developers (wom )Sep 5, 2022 1244 cryptography , encryption Disabled JavaScript Turns Off Native Lazy Loading (ste )Sep 3, 2022 1243 html , performance , lazy-loading Dear Oracle, Please Release the JavaScript Trademark (tin )Sep 3, 2022 1242 licensing , legal , oracle Useful JavaScript Data Grid Libraries (sma )Sep 1, 2022 1241 libraries , grids , information-design , comparisons Default Exports in JavaScript Modules Are Terrible Sep 1, 2022 1240 JavaScript Bugs Aplenty in Node.js Ecosystem—Found Automatically Aug 30, 2022 1239 studies , research , nodejs , dependencies , security , quality , bugs Monitor Events and Function Calls via Console (dav )Aug 29, 2022 1238 events , monitoring Implementing Promisable “setTimeout” (skw )Aug 25, 2022 1237 time What Is a REST API? (cra )Aug 24, 2022 1236 apis , rest Tracking the World in About 80 Lines of JavaScript (kzi )Aug 24, 2022 1235 privacy How to Use localStorage in JavaScript: An Easy Guide Aug 23, 2022 1234 how-tos , browser-storage , guides Re-Implementing JavaScript’s “==” in JavaScript (eva )Aug 19, 2022 1233 operators An Introduction to Context Propagation in JavaScript (sma )Aug 18, 2022 1232 introductions Dependency Injection in JS/TS (cod )Aug 17, 2022 1231 typescript Optimizing for JavaScript Is Hard (jfm )Aug 15, 2022 1230 optimization The Console API Aug 12, 2022 1229 console , apis Custom Event Naming Conventions (cfe )Aug 12, 2022 1228 events , naming TypeScript vs. JavaScript: Which One You Should Use, and Why Aug 11, 2022 1227 typescript , comparisons Code Golfing Tips and Tricks: How to Minify Your JavaScript Code Aug 9, 2022 1226 how-tos , minification , tips-and-tricks The JavaScript Paradox (rya /thi )Aug 8, 2022 1225 Light/Dark Mode Aug 4, 2022 1224 css , dark-mode Why I Still Love PHP and JavaScript After 20+ Years (mnl )Aug 1, 2022 1223 php , retrospectives Checking if a JavaScript Native Function Is Monkey Patched Jul 30, 2022 1222 functions Adding Observability to Your Jest Tests Jul 28, 2022 1221 jest , testing , observability Everything You Need to Know About JavaScript Import Maps (hon )Jul 25, 2022 1220 dependencies , import-maps The History of JavaScript Jul 23, 2022 1219 history Type Annotations in JavaScript Jul 22, 2022 1218 typescript , annotations Front-End Internationalisation Tips (stu )Jul 21, 2022 1217 internationalization , fonts , css RedwoodJS vs. BlitzJS: The Future of Fullstack JavaScript Meta-Frameworks Jul 21, 2022 1216 frameworks , redwoodjs , comparisons 15 Common Beginner JavaScript Mistakes Jul 19, 2022 1215 mistakes The 10 Most Common JavaScript Issues Developers Face Jul 19, 2022 1214 mistakes JavaScript SDK “Package Size Is Massive”—So We Reduced It by 29% (get )Jul 19, 2022 1213 optimization , tree-shaking Hacking JavaScript Objects Jul 18, 2022 1212 objects Useful Tips and Tricks in JavaScript Jul 18, 2022 1211 tips-and-tricks JSON Creator Douglas Crockford Interview (dou )Jul 18, 2022 1210 interviews The “Array.prototype.at()” Method in Vanilla JavaScript (cfe )Jul 13, 2022 1209 prototypes Statements vs. Expressions (jos )Jul 11, 2022 1208 comparisons Integer Math in JavaScript Jul 11, 2022 1207 math JavaScript Obfuscation Techniques by Example Jul 10, 2022 1206 obfuscation , techniques , examples Frontend Web Performance: The Essentials Jul 3, 2022 1205 fundamentals , performance Using JavaScript to Fill localStorage to Its Maximum Capacity Jun 26, 2022 1204 browser-storage Stop the Screen Going to Sleep With JavaScript Jun 23, 2022 1203 In Defense of Blocks for Local Scopes Jun 22, 2022 1202 scope In Defense of Blocks for Local Scopes II Jun 22, 2022 1201 scope Svelte Origins: A JavaScript Documentary Jun 21, 2022 1200 videos , svelte Future Features of JS (jsn )Jun 20, 2022 1199 videos You Don’t Need a JavaScript Library for Your Components Jun 15, 2022 1198 libraries , components How to Remove 99% of JavaScript From Main Thread (wea )Jun 15, 2022 1197 videos , how-tos , performance Understanding the JavaScript Window Object Jun 14, 2022 1196 objects AbortController Is Your Friend Jun 12, 2022 1195 Modern JavaScript, 10 Things You Should Be Using, Starting Today Jun 12, 2022 1194 Patterns for Building JavaScript Websites in 2022 (rya /thi )Jun 8, 2022 1193 frameworks , comparisons JavaScript Hydration Is a Workaround, Not a Solution Jun 8, 2022 1192 hydration Optimize the Use of “if–else” Jun 7, 2022 1191 Mathematical Notation for JavaScript Developers Explained Jun 7, 2022 1190 math Shallow Copy and Deep Copy Jun 6, 2022 1189 Monorepos in JavaScript and TypeScript (rwi )May 31, 2022 1188 typescript , monorepos JavaScript of Halftone Printing May 28, 2022 1187 halftone , print Processing Arrays Non-Destructively: “for-of” vs. “.reduce()” vs. “.flatMap()” (rau )May 26, 2022 1186 arrays , comparisons JavaScript Closures, Explained May 25, 2022 1185 closures Understanding Weak Reference in JavaScript (sma )May 25, 2022 1184 Snyk Finds 200+ Malicious npm Packages, Including Cobalt Strike Dependency Confusion Attacks May 24, 2022 1183 npm , dependencies , security Building a Button Component (arg )May 18, 2022 1182 components , html , css , buttons RFC 9239: Updates to ECMAScript Media Types (rau )May 18, 2022 1181 mime-types Reduce Array of Objects to an Object in JavaScript (ami )May 17, 2022 1180 arrays , objects Does JavaScript Make My Site Less Accessible? May 13, 2022 1179 accessibility , wcag How to Use Google CrUX to Analyze and Compare the Performance of JS Frameworks (sma )May 12, 2022 1178 how-tos , performance , google , crux , metrics , frameworks How to Learn JavaScript Fast: Six Simple Mind Tricks May 11, 2022 1177 how-tos , tips-and-tricks , learning You Don’t Need “void 0” May 10, 2022 1176 The Road to Universal JavaScript May 9, 2022 1175 Fetch API Is [the] New Old Version of AJAX May 5, 2022 1174 data-fetching , apis , ajax Master Higher-Order Functions in JavaScript May 5, 2022 1173 functions JavaScript Containers (tin )May 4, 2022 1172 outlooks 8 JavaScript Quiz [Questions] That May Confuse You May 2, 2022 1171 quizzes , interviewing CTA Modal: How to Build a Web Component (sma )Apr 28, 2022 1170 how-tos , web-components , modals Common Frontend Interview Questions I’ve Been Asked Apr 28, 2022 1169 interviewing , html Web Scraping via JavaScript Runtime Heap Snapshots Apr 27, 2022 1168 scraping , memory Learn to Code With JavaScript: The Most Popular Programming Language on Earth Apr 27, 2022 1167 learning What Is Memoization? How and When to Memoize in JavaScript and React (fre )Apr 26, 2022 1166 memoization , react Four Eras of JavaScript Frameworks Apr 25, 2022 1165 frameworks , history Build a Lightweight Web Component With Lit.js Apr 25, 2022 1164 web-components Faster Initialization of Instances With New Class Features (joy )Apr 20, 2022 1163 browsers , javascript-engines , v8 , performance Building a Dialog Component (arg )Apr 13, 2022 1162 components , modals , html , css The Ultimate Guide to Optimizing JavaScript for Quick Page Loads (ste /bui )Apr 13, 2022 1161 guides , performance , optimization JavaScript Function Composition: What’s the Big Deal? (jrs )Apr 10, 2022 1160 functions 33 JavaScript Concepts Every Developer Should Know Apr 9, 2022 1159 concepts JavaScript and Node.js Testing Best Practices Apr 6, 2022 1158 nodejs , testing , best-practices Locale Aware Sorting in JavaScript Mar 28, 2022 1157 sorting , localization , internationalization 14 Linting Rules to Help You Write Asynchronous Code in JavaScript Mar 25, 2022 1156 asynchrony , linting When to Use a Function Expression vs. Function Declaration Mar 22, 2022 1155 functions , comparisons Conquering JavaScript Hydration (rya /thi )Mar 21, 2022 1154 hydration Performance Tests on Common JavaScript Array Methods (hac )Mar 19, 2022 1153 performance , testing , arrays How to Make a Drag-and-Drop File Uploader With Vue.js 3 (sma )Mar 18, 2022 1152 how-tos , drag-and-drop , file-handling , vuejs A Quick Guide to Closures Mar 16, 2022 1151 guides , closures Building a Loading Bar Component (arg )Mar 16, 2022 1150 components , html , css Accessibility, Assistive Technology, and JavaScript (cfe )Mar 16, 2022 1149 accessibility , assistive-tech Implementing JavaScript Delay for Cookie Consent Banner Mar 15, 2022 1148 cookies , consent-management , legal How to Automatically Size a Textarea Based on Its [Text] Using Vanilla JavaScript (cfe )Mar 15, 2022 1147 how-tos , html Horizontal Scrolling Nav (mdo )Mar 10, 2022 1146 scrolling CommonJS (CJS) and Modules (ESM): Import Compatibility Mar 9, 2022 1145 typescript , commonjs , esm Can I Use Hover on Touch Devices? Here’s [a] CSS and JS Hack Mar 9, 2022 1144 css , mobile , hover , touch Arrow Functions in JavaScript: How to Use Fat and Concise Syntax Mar 9, 2022 1143 how-tos , functions A Look at the Dialog Element’s Super Powers (ste )Mar 8, 2022 1142 modals , html JavaScript Naming Conflicts: How Existing Code Can Force Proposed Features to Be Renamed (rau )Mar 7, 2022 1141 naming , refactoring Why I Avoid “async”/“await” Mar 5, 2022 1140 asynchrony Creating Native Web Components (cod )Mar 4, 2022 1139 web-components , html It’s Always Been You, Canvas2D Mar 3, 2022 1138 html , css , canvas How Do Primitive Values Get Their Properties? (rau )Mar 2, 2022 1137 How to Use Higher-Order Functions in JavaScript Mar 2, 2022 1136 how-tos , functions 5 Things You Don’t Need JavaScript For Feb 28, 2022 1135 Essential Cryptography for JavaScript Developers Feb 28, 2022 1134 books , cryptography How to Build a File Upload Service With Vanilla JavaScript (log )Feb 28, 2022 1133 how-tos , file-handling HTML Comments Work in JavaScript Too Feb 23, 2022 1132 html , comments What Is Responsible JavaScript? (mal +/sma )Feb 22, 2022 1131 podcasts You Can “throw()” Anything in JavaScript—and Other “async”/“await” Considerations Feb 19, 2022 1130 asynchrony JavaScript Obfuscation: The Definitive Guide (2022) Feb 18, 2022 1129 guides , obfuscation Comparing Node JavaScript to JavaScript in the Browser (css )Feb 18, 2022 1128 nodejs , browsers , comparisons How to Create a Search Page for a Static Website With Vanilla JS (cfe )Feb 17, 2022 1127 how-tos , functionality , search , html The State of JavaScript 2021 [Results] (sac /dev )Feb 16, 2022 1126 surveys , metrics The Harsh Reality for JavaScript Developers: If You Don’t Study the Fundamentals You Will Be Just Another “Coder” Feb 16, 2022 1125 fundamentals , career Track Down the JavaScript Code Responsible for Polluting the Global Scope Feb 16, 2022 1124 scope 7 Killer One-Liners in JavaScript Feb 13, 2022 1123 Moving From JavaScript to TypeScript Feb 10, 2022 1122 typescript Debugging JavaScript (fla )Feb 8, 2022 1121 debugging Move Over JavaScript: Back-End Languages Are Coming to the Front-End (kli )Feb 8, 2022 1120 New in JavaScript: “reportError”—a Method to Report to Global Event Handlers (ste )Feb 8, 2022 1119 events Creating Generative SVG Grids (tro )Feb 7, 2022 1118 svg , grids What Web Frameworks Solve: The Vanilla Alternative (nom /sma )Feb 4, 2022 1117 frameworks , react The Impact of Motion Animation on Cognitive Disability (tpg )Feb 3, 2022 1116 accessibility , css Why Efficient Hydration in JavaScript Frameworks Is So Challenging (rya /thi )Feb 3, 2022 1115 frameworks , hydration Improving JavaScript Bundle Performance With Code-Splitting (cod /sma )Feb 2, 2022 1114 performance , bundling , code-splitting , optimization Preventing Smooth Scrolling With JavaScript (kil )Jan 31, 2022 1113 scrolling A More Easy Way to Write “if … or” Checks With Vanilla JavaScript (cfe )Jan 31, 2022 1112 A Pipe Operator for JavaScript: Introduction and Use Cases (rau )Jan 27, 2022 1111 introductions , operators The Double-Assignment Pattern in jQuery’s Source Code Jan 26, 2022 1110 jquery Context-Aware Web Components Are Easier Than You Think (css )Jan 21, 2022 1109 web-components , html The Many Ways to Modify Leading and Trailing Characters From Strings With JavaScript (cfe )Jan 21, 2022 1108 strings Frontend Challenges: Front-End Engineer Assignment Jan 17, 2022 1107 react , typescript , training “structuredClone()”: Deeply Copying Objects in JavaScript (rau )Jan 16, 2022 1106 objects Two Ways to Clear an Array With Vanilla JavaScript (cfe )Jan 7, 2022 1105 arrays 8 Techniques to Write Cleaner JavaScript Code Jan 3, 2022 1104 Improving WordPress Performance: An Open Letter (erw )Jan 3, 2022 1103 open-letters , wordpress , performance , css Add a Service Worker to Your Site (cfe /css )Dec 28, 2021 1102 web-workers Be Prepared for Failure and Handle It Gracefully (css )Dec 20, 2021 1101 graceful-degradation How to Add and Remove a CSS Class From Multiple Elements With Vanilla JavaScript (cfe )Dec 20, 2021 1100 how-tos , css CSS Houdini Paint API (5t3 )Dec 17, 2021 1099 css , houdini , apis Deep-Copying in JavaScript Using “structuredClone” (sur )Dec 16, 2021 1098 Performance Implications of JavaScript Errors (per )Dec 14, 2021 1097 performance , errors Embrace the Platform (bra /css )Dec 13, 2021 1096 html , css , web-platform Intersection Observer (5t3 )Dec 13, 2021 1095 apis JSON Modules in JavaScript Dec 3, 2021 1094 json , modules Best Practices for Node.js Development Dec 2, 2021 1093 nodejs , best-practices JavaScript (htt )Dec 1, 2021 1092 web-almanac , studies , research , metrics How to Trim Strings in JavaScript Nov 25, 2021 1091 how-tos , strings How JavaScript Engines Achieve Great Performance Nov 22, 2021 1090 javascript-engines , performance How to Make Blob Menu Using HTML, CSS, and JavaScript Nov 19, 2021 1089 how-tos , html , css Why IndexedDB Is Slow and What to Use Instead Nov 15, 2021 1088 databases , indexeddb , performance How to Debounce and Throttle Callbacks in Vue Nov 12, 2021 1087 how-tos , vuejs , callbacks , debouncing , throttling Using Web Workers to Boost Third-Party Script Performance (log )Nov 12, 2021 1086 web-workers , performance Chrome DevTools: Copy CSS Styles as JavaScript-Compatible Properties Nov 12, 2021 1085 dev-tools , css , browsers , chrome Rust Is Eating JavaScript (lee )Nov 11, 2021 1084 rust , swc , deno , esbuild , webassembly , tooling Localizing Your Next.js App (ati /sma )Nov 9, 2021 1083 nextjs , localization Designing Error Messages and a Logging Strategy in Node.js (app )Nov 3, 2021 1082 software-design , nodejs , logging , strategies Accessible Toggles (mic )Nov 1, 2021 1081 accessibility , toggles , html A Comprehensive Guide to Error Handling in Node.js (hon )Nov 1, 2021 1080 guides , nodejs , errors HTMLoween—HTML, JS, and CSS to Make Your Blood Boil Oct 31, 2021 1079 html , css Chrome DevTools: Visualise Your JavaScript Bundles Oct 29, 2021 1078 dev-tools , bundling , browsers , chrome , lighthouse , visualization In-Page Filtered Search With Vanilla JavaScript (css )Oct 26, 2021 1077 functionality , search 11 Methods to Add CSS/JS Frontend Assets Into TYPO3 (t3p )Oct 26, 2021 1076 typo3 , css , examples Building an Effective Image Component Oct 25, 2021 1075 components , performance Why Outdated jQuery Is Still the Dominant JavaScript Library Oct 25, 2021 1074 libraries , jquery Finding Common Patterns Across Frameworks Oct 24, 2021 1073 frameworks Decoupling HTML, CSS, and JavaScript in Design Systems (cfe )Oct 21, 2021 1072 html , css , design-systems Back to Basics: Understanding the “for…in” Loop in JavaScript Oct 20, 2021 1071 fundamentals , loops Dealing With Timezones in Web Development Oct 16, 2021 1070 Stop Writing JavaScript Like This Oct 14, 2021 1069 Building a Multi-Select Component (arg )Oct 13, 2021 1068 components , html , css Introduction to Styled Components Oct 9, 2021 1067 introductions , css , components The Ultimate Guide to Getting Started With the Rollup.js JavaScript Bundler (cra )Oct 7, 2021 1066 guides , introductions , rollup , bundling Writing Clean JavaScript Tests With the BASIC Principles Oct 4, 2021 1065 testing , principles Animation Techniques for Adding and Removing Items From a Stack (css )Oct 4, 2021 1064 css , animations jsPerf—Online JavaScript Performance Benchmark Oct 2, 2021 1063 websites , performance Using JavaScript to Detect High Contrast and Dark Modes (sco )Oct 1, 2021 1062 accessibility , colors , contrast , dark-mode Sorting JavaScript Arrays by Nested Properties Sep 30, 2021 1061 sorting , arrays How I Built a Modern Website in 2021 (ken )Sep 29, 2021 1060 html , css Web Streams Everywhere (and Fetch for Node.js) (oll /css )Sep 29, 2021 1059 nodejs , streaming , data-fetching A JavaScript Developer’s Guide to Browser Cookies (psu )Sep 26, 2021 1058 guides , cookies Optimising a JavaScript Library With WebAssembly, a Failed Attempt Sep 21, 2021 1057 libraries , webassembly 20 Killer JavaScript One-Liners Sep 19, 2021 1056 Small Bundles, Fast Pages: What to Do With Too Much JavaScript (cal )Sep 16, 2021 1055 performance , bundling 29 Projects to Help You Practice HTML CSS JavaScript 2021 Sep 12, 2021 1054 html , css The Ultimate Guide to Web Console Sep 11, 2021 1053 guides , console , debugging Vanilla JS Is a Web Performance Decision (cfe )Sep 9, 2021 1052 performance Defining Basic JavaScript Terms: “map”, “filter”, and “reduce” (jim )Sep 7, 2021 1051 Threats of Using Regular Expressions in JavaScript Sep 2, 2021 1050 regex Building a Split-Button Component (arg )Sep 1, 2021 1049 components , html , css Web Scraping With JavaScript and Node.js Sep 1, 2021 1048 nodejs , scraping Writing High-Performance JavaScript (cfe )Aug 31, 2021 1047 performance 7 Practices to Create Good JavaScript Variables Aug 30, 2021 1046 variables Essential Concepts in JS Aug 28, 2021 1045 concepts How to Use “Promise.any()” Aug 26, 2021 1044 how-tos , promises jsc: My New Best Friend (cho )Aug 25, 2021 1043 tooling 4 Important Differences Between Regular and Arrow Functions Aug 23, 2021 1042 functions , comparisons Truthy and Falsy: When All Is Not Equal in JavaScript (cra )Aug 19, 2021 1041 Using CSS Module Scripts to Import Stylesheets Aug 17, 2021 1040 css , modules What Is a Promise? JavaScript Promises for Beginners (fre )Aug 16, 2021 1039 promises , asynchrony “return await promise” vs. “return promise” in JavaScript Aug 10, 2021 1038 promises , comparisons JavaScript Development: Making a Web Worker Optional Aug 9, 2021 1037 web-workers Uploading Multiple Files With Fetch (ray )Aug 8, 2021 1036 file-handling , data-fetching Refresher on JavaScript Callbacks and Promises (ato )Aug 4, 2021 1035 callbacks , promises How to Use “Promise.allSettled()” Aug 3, 2021 1034 how-tos , promises How to Build Resilient JavaScript UIs (sma )Aug 3, 2021 1033 how-tos , user-experience , resilience The (Most Comprehensive) JavaScript Design Principles Guide Aug 2, 2021 1032 guides , software-design , principles An Introduction to Frameworkless Web Components (cra )Jul 19, 2021 1031 introductions , web-components , dom The Ultimate Cheat Sheet List for Web Developers Jul 19, 2021 1030 html , css , cheat-sheets 6 Useful Frontend Techniques That You May Not Know About Jul 19, 2021 1029 html , css , techniques What Is Tree Shaking? (cfe )Jul 15, 2021 1028 performance , concepts , tree-shaking The Ultimate Guide to Browser-Side Storage (cra )Jul 14, 2021 1027 guides , browsers , browser-storage Detecting Media Query Support in CSS and JavaScript (kil )Jul 13, 2021 1026 css , media-queries , support How to Convert Arrays to Human-Readable Lists in JavaScript (ami )Jul 11, 2021 1025 how-tos , conversion , arrays How to Use “Promise.all()” Jul 6, 2021 1024 how-tos , promises How Does Node.js Load Its Built-In/Native Modules? (joy )Jul 6, 2021 1023 nodejs , modules Basics of JavaScript Test Driven Development (TDD) With Jest Jul 4, 2021 1022 fundamentals , testing , jest “export default thing” Is Different to “export { thing as default }” (jaf )Jul 3, 2021 1021 Encoding Data for POST Requests (jaf )Jun 30, 2021 1020 security , encoding The State of Web Workers in 2021 (sur /sma )Jun 30, 2021 1019 web-workers When a Click Is Not Just a Click (css )Jun 30, 2021 1018 Resource Inlining in JavaScript Frameworks (mge )Jun 28, 2021 1017 frameworks , performance , web-vitals Debugging JavaScript and Front-End Jun 24, 2021 1016 videos , debugging JavaScript Frameworks and the Lost Art of HTML (ste /deq )Jun 24, 2021 1015 html , frameworks What’s New in ES2021 Jun 22, 2021 1014 ecmascript , standards Sorting Colors in JavaScript Jun 22, 2021 1013 sorting , colors Demystifying Styled Components (jos )Jun 22, 2021 1012 css , components How to Use Dynamic Imports in JavaScript Jun 21, 2021 1011 how-tos When CSS Isn’t Enough: JavaScript Requirements for Accessible Components (5t3 /sma )Jun 14, 2021 1010 css , accessibility 10 Utility Functions for Working With Objects in JavaScript Jun 7, 2021 1009 functions , objects JavaScript: Debouncing and Throttling Jun 5, 2021 1008 debouncing , throttling A Thorough Analysis of CSS-in-JS (css )May 26, 2021 1007 css , css-in-js Approaches to Undo and Redo (mca )May 19, 2021 1006 undo-redo , functionality Don’t Overabstract Your Components May 19, 2021 1005 html , components Tree-Shaking: A Reference Guide (ati /sma )May 14, 2021 1004 guides , performance , optimization , tree-shaking Create Scripts in JavaScript With zx May 14, 2021 1003 zx , automation Introduction to HTTP Cookies May 9, 2021 1002 introductions , cookies Checking “Under the Hood” of Code (jay )May 4, 2021 1001 dev-tools , browsers , debugging , console , html , css , history The Lazy-Loading Property Pattern in JavaScript (nza )Apr 20, 2021 1000 software-design-patterns , lazy-loading , performance Content-Aware Image Resizing in JavaScript Apr 16, 2021 999 images , resizing Variable Scope, Lexical Scope, and Code Blocks in JavaScript Apr 12, 2021 998 scope Primitive Values, Objects, and References in JavaScript Made Simple Mar 29, 2021 997 objects Human-Readable JavaScript: A Tale of Two Experts (ali )Mar 25, 2021 996 maintainability What Are Source Maps in JavaScript? Mar 20, 2021 995 videos , source-maps Now That’s What I Call Service Worker (mal /ali )Mar 18, 2021 994 apis , web-workers Why Your Website Should Work Without JavaScript Mar 17, 2021 993 accessibility , support , graceful-degradation What Is the JavaScript Internationalization API (I18N)? (cra )Mar 15, 2021 992 internationalization , apis 5 Different Ways to Declare Functions in jQuery (cra )Mar 10, 2021 991 jquery , functions A Comprehensive Guide to JavaScript Design Patterns Mar 9, 2021 990 guides , software-design-patterns Beyond “console.log()”—Level Up Your Debugging Skills (cod )Mar 8, 2021 989 console , debugging JavaScript: What Is the Meaning of “this”? (jaf )Mar 8, 2021 988 Garbage Collection in JavaScript Feb 16, 2021 987 garbage-collection CSS-in-JS in 200 Bytes (zse )Feb 8, 2021 986 css-in-js , css , tooling Revisiting Dark Patterns With the HTML “dialog” Tag (tan )Feb 8, 2021 985 modals , html JavaScript Obfuscation: What, Why, and How? Jan 26, 2021 984 obfuscation An Introduction to the Rollup.js JavaScript Bundler (cra )Jan 26, 2021 983 introductions , bundling , tooling , rollup 2020 JavaScript Rising Stars Jan 13, 2021 982 frameworks , nodejs , react , vuejs , angular , building , testing , tooling , css-in-js , mobile , state-management , graphql , retrospectives A Practical Introduction to Dependency Injection (sma )Dec 30, 2020 981 introductions , maintainability HTML and CSS Techniques to Reduce Your JavaScript (per )Dec 27, 2020 980 html , css , performance Flushing Promises in JavaScript—What It Is and Why You Need It in UI Tests Dec 22, 2020 979 promises , asynchrony , flushing JavaScript (tka /htt )Dec 10, 2020 978 web-almanac , studies , research , metrics “npm ruin dev” (css )Dec 9, 2020 977 html , css , nodejs , npm How to Create a Favicon That Changes Automatically (css )Dec 9, 2020 976 how-tos , favicons , data-urls Minimal Takes on Faking Container Queries (chr /css )Dec 2, 2020 975 container-queries , web-components , css Why It’s Good for Users That HTML, CSS, and JS Are Separate Languages (hdv )Nov 25, 2020 974 html , css “console.log({ myVariable });” (chr /css )Nov 19, 2020 973 console Warp: Improved JS Performance in Firefox 83 (jan /moz )Nov 13, 2020 972 firefox , browsers , performance , spidermonkey , javascript-engines [JavaScript] Operator Lookup (jos )Nov 9, 2020 971 operators Compile Svelte in Your Head Oct 5, 2020 970 svelte , compiling The Good Web and the Bad Web (kzi )Sep 18, 2020 969 web , mastodon , wikipedia , internet-archive Advanced GraphQL Usage in Gatsby Websites (sma )Sep 16, 2020 968 gatsby , graphql Basic Math in JavaScript—Numbers and Operators (mdn )Sep 15, 2020 967 math , operators Animating React Components With GreenSock (sma )Sep 14, 2020 966 react , gsap , components , animations Modifying Specific Letters With CSS and JavaScript (css )Sep 10, 2020 965 css Working With JavaScript Media Queries (css )Sep 7, 2020 964 media-queries Run JavaScript When Variable Exists (sea )Aug 21, 2020 963 variables Loading Third-Party JavaScript (add )Aug 20, 2020 962 performance “this” in JavaScript and TypeScript (dea )Aug 19, 2020 961 typescript JS Minification Benchmarks Aug 14, 2020 960 minification , metrics [JavaScript] Minification Benchmarks (hir )Aug 14, 2020 959 minification , tooling , metrics , comparisons , oxc , swc , bun , esbuild Better Error Handling in Node.js With Error Classes (sma )Aug 10, 2020 958 nodejs , errors Accessibility on the Canvas With JavaScript Jul 28, 2020 957 accessibility , canvas Introduction to Memoization in JavaScript (hic )Jul 25, 2020 956 introductions , memoization How to Use Styled Components in React (ade /sma )Jul 23, 2020 955 how-tos , react , css-in-js , css JavaScript to Know for React (ken )Jul 15, 2020 954 react Most Popular JavaScript Frameworks in 2020 Jul 14, 2020 953 frameworks , react , angular , vuejs , nodejs , svelte , comparisons JavaScript Event Delegation: A Beginner’s Guide Jul 14, 2020 952 guides , events A Brief Introduction to WebGL Jul 6, 2020 951 introductions , webgl Learn Deno: A Secure JavaScript and TypeScript Runtime Jul 5, 2020 950 deno , runtimes , typescript Namespaces in JavaScript (fla )Jul 1, 2020 949 namespaces What Is Type Coercion in JavaScript ? Jul 1, 2020 948 operators , concepts 90’s Cursor Effects Jun 28, 2020 947 cursors , effects App Shell UX With Service Workers and Streams (jef )Jun 23, 2020 946 web-apps , single-page-apps , architecture , web-workers , streaming An Overview of Scroll Technologies (zac /css )Jun 22, 2020 945 overviews , scrolling , animations , css , tooling Easing Animations in Canvas (css )Jun 19, 2020 944 canvas , animations A Little Bit of Plain JavaScript Can Do a Lot (b0r )Jun 19, 2020 943 css JavasSript RORO Pattern Jun 13, 2020 942 software-design-patterns How to Get All Custom Properties on a Page in JavaScript (tyl /css )Jun 8, 2020 941 how-tos , css , custom-properties 30 Seconds of Code May 28, 2020 940 websites , css , techniques Today’s JavaScript, From an Outsider’s Perspective (lea )May 25, 2020 939 Static Hoisting May 20, 2020 938 The Third Age of JavaScript (swy )May 20, 2020 937 retrospectives , outlooks What Every JavaScript Developer Should Know About Unicode May 19, 2020 936 unicode Still Using Node.js? Deno 1.0 Is Here! (ant )May 17, 2020 935 nodejs , deno , runtimes , typescript In Defense of the Modern Web (ric )May 15, 2020 934 react , svelte Styling Components in React (sma )May 14, 2020 933 react , components , css , sass , css-in-js Maybe You Don’t Need That SPA May 12, 2020 932 single-page-apps , react , marko , performance Manipulating Arrays and Objects in JavaScript May 9, 2020 931 videos , arrays , objects Alpine.js: The JavaScript Framework That’s Used Like jQuery, Written Like Vue, and Inspired by Tailwind CSS (cod /css )Apr 29, 2020 930 alpinejs , frameworks , jquery , vuejs , tailwind , comparisons Implementing Dark Mode in React Apps Using styled-components (sma )Apr 28, 2020 929 dark-mode , react , components The Cost of JavaScript Frameworks (tka )Apr 21, 2020 928 frameworks , performance , metrics , jquery , vuejs , angular , react Can JavaScript Detect the Browser’s Zoom Level? (chr /css )Apr 20, 2020 927 zooming , apis Learn Programming (jad )Apr 14, 2020 926 websites , courses , programming Rename a File With JavaScript in the Browser (rik )Apr 14, 2020 925 file-handling How to Create a Particle Trail Animation in JavaScript (sma )Apr 14, 2020 924 how-tos , animations How to Create a Native Web Component Without a Framework Apr 3, 2020 923 how-tos , web-components On the Responsibility That Comes With Good JavaScript Support (j9t )Mar 26, 2020 922 support Performance Tips: Minifying HTML, CSS, and JS Mar 25, 2020 921 videos , performance , html , css , minification , tips-and-tricks The Economics of JavaScript Web Apps Feb 23, 2020 920 web-apps , economics Console Commands Guide (css )Feb 21, 2020 919 guides , debugging , console , dev-tools , browsers How We Learned to Draw Text on HTML5 Canvas Feb 19, 2020 918 html , canvas , apis , svg What Is Node and When Should I Use It? Feb 16, 2020 917 nodejs , npm What Is Memoization? Feb 13, 2020 916 memoization , concepts Why JavaScript Is Eating HTML (css )Feb 13, 2020 915 html , css , maintainability Understanding Map and Set in JavaScript Feb 12, 2020 914 Understanding Immutability in JavaScript (css )Jan 30, 2020 913 How to Automatically Update Your JavaScript Dependencies (spa /clo )Jan 30, 2020 912 how-tos , dependencies , automation , processes , security The History of JavaScript: A Journey From Netscape to Frameworks and Libraries Jan 22, 2020 911 history , frameworks , libraries , netscape Padding Strings and Numbers With JavaScript Jan 13, 2020 910 strings 2019 JavaScript Rising Stars (sac )Jan 10, 2020 909 frameworks , nodejs , react , vuejs , angular , testing , compiling , building , tooling , mobile , css-in-js , graphql , retrospectives Understanding Async Await (sar /css )Jan 9, 2020 908 asynchrony , promises Interactivity and Animation With Variable Fonts (man /24w )Dec 5, 2019 907 variable-fonts , fonts , animations , css JavaScript Loops Made Easy (cod )Nov 20, 2019 906 videos , loops How to Remove an Array Element by Index in JavaScript Nov 18, 2019 905 how-tos , arrays How TypeScript Makes You a Better JavaScript Developer Nov 12, 2019 904 typescript JavaScript Isn’t Always Available and It’s Not the User’s Fault (ada )Nov 4, 2019 903 support , feature-detection , progressive-enhancement Writing Asynchronous Tasks in Modern JavaScript (jer /sma )Oct 25, 2019 902 Creating Custom JavaScript Syntax With Babel Sep 25, 2019 901 babel A Re-Introduction to Destructuring Assignment (sma )Sep 12, 2019 900 introductions , arrays It’s Not Wrong that “'🤦🏼♂️'.length == 7” (hsi )Sep 8, 2019 899 unicode Migrating From JavaScript to TypeScript in a Real World React Project (hcr )Sep 7, 2019 898 migrating , typescript “Must Work Without JavaScript” (j9t )Sep 5, 2019 897 support Should a Website Work Without JavaScript? (chr /css )Sep 2, 2019 896 support Working With Attributes on DOM Elements (css )Aug 30, 2019 895 dom , attributes , custom-data , html Faster Image Loading With Embedded Image Previews (sma )Aug 23, 2019 894 images , performance , lazy-loading , techniques The Differing Perspectives on CSS-in-JS (chr /css )Aug 13, 2019 893 css-in-js , css , comparisons What the Heck Are CJS, AMD, UMD, and ESM in JavaScript? Jul 22, 2019 892 modules , commonjs , esm Browsers Are Pretty Good at Loading Pages, It Turns Out Jul 21, 2019 891 rendering , performance , browsers Frontend Design, React, and a Bridge Over the Great Divide (bra )Jul 17, 2019 890 html , css , react , career Finally… a Post on Finally in Promises (sar /css )Jul 16, 2019 889 promises , asynchrony Improve Your JavaScript Knowledge by Reading Source Code (sma )Jul 12, 2019 888 learning Types or Tests: Why Not Both? (swy /css )Jul 10, 2019 887 types , testing , type-safety Responsible JavaScript (mal /ali )Jun 13, 2019 886 tree-shaking , code-splitting , embed-code , transpiling , performance , tooling The Thinking Behind Simplifying Event Handlers (not /css )May 9, 2019 885 events , examples Getting to Know the MutationObserver API (lou /sma )Apr 26, 2019 884 apis , dom In Defense of the Ternary Statement (bur /css )Apr 10, 2019 883 operators , conditionals What’s Next for Web Development? (jch )Apr 8, 2019 882 wordpress , php Clever JavaScript Does Not Mean Simple or Readable (cfe )Apr 2, 2019 881 simplicity