56,966 blogs · [ { "id": "01a08790-4a7b-71a8-9da4-bf686694b343", "title": "Chatting with an old friend", "url": "https://jonkuperman.com/chatting-with-an-old-friend/", "published_at": "2025-06-10T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6866c500d1", "title": "C++ Pointers for JavaScript/TypeScript Developers", "url": "https://jonkuperman.com/cpp-pointers-js-devs/", "published_at": "2025-03-14T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf68674fe828", "title": "My first year living in London", "url": "https://jonkuperman.com/first-year-in-london/", "published_at": "2023-09-18T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686793bfc3", "title": "JavaScript format number", "url": "https://jonkuperman.com/javascript-format-number/", "published_at": "2022-01-04T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686841bc77", "title": "Musings on Developer Relations", "url": "https://jonkuperman.com/musings-on-developer-relations/", "published_at": "2021-12-09T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686877711d", "title": "GitHub find which PR deleted a file", "url": "https://jonkuperman.com/github-find-deleted-file/", "published_at": "2021-12-07T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6869181624", "title": "Chasing accurate analytics: Server-side vs client-side analytics", "url": "https://jonkuperman.com/chasing-accurate-analytics-server-side-analytics-vs-client-side/", "published_at": "2021-12-06T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6869c8dcaf", "title": "Human Partner: How AI and Assistive Technology is Making Humans More Productive", "url": "https://jonkuperman.com/technology-makes-humans-more-productive/", "published_at": "2021-11-29T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6869fb7352", "title": "A Content Security Policy for Google Analytics", "url": "https://jonkuperman.com/google-analytics-csp/", "published_at": "2021-11-27T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686a3fe595", "title": "How to add custom headers to Eleventy with Cloudflare Pages", "url": "https://jonkuperman.com/custom-headers-eleventy-cloudflare-pages/", "published_at": "2021-10-27T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686ae46508", "title": "I minted (and sold) my first NFT", "url": "https://jonkuperman.com/my-first-nft/", "published_at": "2021-10-03T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686b5890fd", "title": "Chrome DevTools Console Drawer", "url": "https://jonkuperman.com/chrome-console-drawer/", "published_at": "2021-09-26T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686c30a697", "title": "JavaScript math methods I never knew existed", "url": "https://jonkuperman.com/weird-javascript-math-methods/", "published_at": "2021-09-07T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686c800d2b", "title": "Introduction to cryptocurrencies", "url": "https://jonkuperman.com/introduction-to-cryptocurrencies/", "published_at": "2021-09-04T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686cb8f4e5", "title": "How to join Developer DAO", "url": "https://jonkuperman.com/how-to-join-developer-dao/", "published_at": "2021-09-04T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686d49e312", "title": "Switching to DevRel from Engineering", "url": "https://jonkuperman.com/switching-devrel-from-engineering/", "published_at": "2021-08-31T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686e440889", "title": "On Interviewing...", "url": "https://jonkuperman.com/on-interviewing/", "published_at": "2021-07-15T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686f276ecc", "title": "The age of the devtool startup", "url": "https://jonkuperman.com/age-of-the-devtool-startup/", "published_at": "2021-06-12T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf686f5fa164", "title": "React Aria - A better approach to design systems", "url": "https://jonkuperman.com/better-approach-design-systems/", "published_at": "2021-05-06T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6870232d61", "title": "Exciting movement in JavaScript tooling", "url": "https://jonkuperman.com/exciting-movement-js-tooling/", "published_at": "2021-05-04T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf68703c7fcc", "title": "Wasted real estate: Blog homepage design", "url": "https://jonkuperman.com/wasted-real-estate-blog-homepage-design/", "published_at": "2021-03-11T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687121a29b", "title": "On leaving a great job", "url": "https://jonkuperman.com/on-leaving-a-great-job/", "published_at": "2021-02-26T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6871d017c3", "title": "Best online node js editor", "url": "https://jonkuperman.com/best-online-node-js-editor/", "published_at": "2021-02-24T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6871f591ba", "title": "jquery vs node.js", "url": "https://jonkuperman.com/jquery-vs-node-js/", "published_at": "2021-02-23T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6872a342b0", "title": "Stable Node Versions", "url": "https://jonkuperman.com/stable-node/", "published_at": "2021-02-22T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6872b00081", "title": "Get React Version", "url": "https://jonkuperman.com/get-react-version/", "published_at": "2021-02-22T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6872b4f36b", "title": "How to update node js", "url": "https://jonkuperman.com/how-to-update-node-js/", "published_at": "2021-02-21T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6873a797e9", "title": "JavaScript if else syntax", "url": "https://jonkuperman.com/javascript-if-else/", "published_at": "2021-02-20T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6873ffacc4", "title": "Increase Gatsby performance with Webpack Bundle Analyzer", "url": "https://jonkuperman.com/increase-gatsby-performance-webpack-bundle-analyzer/", "published_at": "2021-02-16T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf68747ceb37", "title": "Setting up Gatsby Webmentions on your site", "url": "https://jonkuperman.com/gatsby-webmentions/", "published_at": "2021-02-14T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687546263e", "title": "Webmention playground", "url": "https://jonkuperman.com/webmention-playground/", "published_at": "2021-02-13T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf68764009e8", "title": "Introduction to async JavaScript", "url": "https://jonkuperman.com/introduction-to-async-javascript/", "published_at": "2021-02-10T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf68770f0a08", "title": "All I wanted was pretty links", "url": "https://jonkuperman.com/pretty-links/", "published_at": "2021-01-26T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687779f336", "title": "Improving my content diet", "url": "https://jonkuperman.com/content-diet/", "published_at": "2021-01-23T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6877863e64", "title": "I made a political twitter account for a week", "url": "https://jonkuperman.com/political-twitter-account-for-a-week/", "published_at": "2020-11-24T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6877c91923", "title": "Compiler Resources", "url": "https://jonkuperman.com/compiler-resources/", "published_at": "2020-10-26T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6877e35094", "title": "Best blog designs I want to steal everything from", "url": "https://jonkuperman.com/best-blog-designs-2020/", "published_at": "2020-05-01T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687875acda", "title": "Choosing a blogging platform: Gatsby vs. Wordpress vs. 11ty", "url": "https://jonkuperman.com/gatsby-vs-wordpress-vs-11ty/", "published_at": "2020-04-23T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6878a5d6ff", "title": "Patreon layoffs seem cruel", "url": "https://jonkuperman.com/patreon-layoffs-seem-cruel/", "published_at": "2020-04-22T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6878aed230", "title": "Avoid Rendering Empty Content with font-display: swap", "url": "https://jonkuperman.com/avoid-empty-content-with-font-swap/", "published_at": "2020-04-21T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6878b8c7c9", "title": "Working with people who are smarter than you", "url": "https://jonkuperman.com/working-with-people-who-are-smarter-than-you/", "published_at": "2020-02-27T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6879b834f0", "title": "10 years is a long time", "url": "https://jonkuperman.com/10-years-is-a-long-time/", "published_at": "2020-02-14T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687a6b4374", "title": "Suspend a React Component from the DevTools", "url": "https://jonkuperman.com/suspend-a-react-component-from-the-devtools/", "published_at": "2020-02-11T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687aa8e1f1", "title": "A weird login flow", "url": "https://jonkuperman.com/ufc-reset-your-password/", "published_at": "2020-02-03T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687b8a3dd1", "title": "My first month as a remote worker", "url": "https://jonkuperman.com/my-first-month-as-a-remote-worker/", "published_at": "2020-02-01T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687ba66ad8", "title": "Outages and blame culture", "url": "https://jonkuperman.com/outages-and-blame-culture/", "published_at": "2019-12-09T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687bc66e8c", "title": "Managing Immutable State with Object Spread", "url": "https://jonkuperman.com/immutable-state-with-object-spread/", "published_at": "2019-12-01T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687cbdfa75", "title": "Compiled vs. Interpreted Languages", "url": "https://jonkuperman.com/compiled-vs-interpreted/", "published_at": "2019-11-08T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687d688b4d", "title": "Numbering a list with CSS!", "url": "https://jonkuperman.com/numbering-a-list-with-css/", "published_at": "2019-10-13T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687e02cc0c", "title": "Eleventy has me feeling more connected with my website", "url": "https://jonkuperman.com/feeling-connected-with-my-website/", "published_at": "2019-10-12T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687ed60f2c", "title": "Easier Type Safety in JavaScript Classes", "url": "https://jonkuperman.com/easier-type-safety-in-javascript-classes/", "published_at": "2019-07-09T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf687f8a1647", "title": "Writing a Babel plugin to convert arrow functions to function expressions", "url": "https://jonkuperman.com/converting-arrow-functions-to-function-expressions-babel/", "published_at": "2018-11-20T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf688084acf1", "title": "Getting Started with ASTs", "url": "https://jonkuperman.com/getting-started-with-asts/", "published_at": "2018-11-18T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6880abcb35", "title": "Lighthouse Error: Content is not sized correctly for the viewport", "url": "https://jonkuperman.com/content-is-not-sized-correctly-for-the-viewport/", "published_at": "2018-11-18T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf6881361505", "title": "Add a Service Worker to Jekyll blog on GitHub Pages", "url": "https://jonkuperman.com/adding-service-worker-jekyll-github-page/", "published_at": "2018-11-18T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf688173ffb9", "title": "Staying Mostly Safe Online", "url": "https://jonkuperman.com/staying-mostly-safe-online/", "published_at": "2016-11-14T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf68822c370b", "title": "Sharing Styles with React and Aphrodite", "url": "https://jonkuperman.com/sharing-styles-react-aphrodite/", "published_at": "2016-11-01T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf68828dad80", "title": "The Life of a PHP Developer", "url": "https://jonkuperman.com/life-of-a-php-developer/", "published_at": "2016-02-14T00:00:00+00:00" }, { "id": "01a08790-4a7b-71a8-9da4-bf68835239a2", "title": "ssh_exchange_identification: read: connection reset by peer", "url": "https://jonkuperman.com/connection-reset-by-peer/", "published_at": "2015-10-07T00:00:00+00:00" } ] posts Claim your blog
Back to jonkuperman.com
Blog · corpus.blog/blogs/jonkuperman.com/posts

jonkuperman.com

jonkuperman.com

2025

2023

2022

2021

2020

2019

2018

2016

2015