56,966 blogs · [ { "id": "01a0879d-38cb-73f7-b56b-2b94ca7c9300", "title": "A 10x engineer isn't what you think", "url": "https://luhr.co/blog/2025/09/05/a-10x-engineer-isnt-what-you-think/", "published_at": "2025-09-05T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94cb48efb4", "title": "10 things I've learned from 10 years of studying lean manufacturing", "url": "https://luhr.co/blog/2025/07/21/10-things-ive-learned-from-10-years-of-studying-lean-manufacturing/", "published_at": "2025-07-22T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94cc30cec7", "title": "A deep dive on the UX of number inputs", "url": "https://luhr.co/blog/2025/07/01/a-deep-dive-on-the-ux-of-number-inputs/", "published_at": "2025-07-01T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94cc7b3190", "title": "Tradeoffs with quality, scope, and deadlines", "url": "https://luhr.co/blog/2025/04/02/tradeoffs-with-quality-scope-and-deadlines/", "published_at": "2025-04-02T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94cc81ddc5", "title": "Analog productivity", "url": "https://luhr.co/blog/2024/11/18/analog-productivity/", "published_at": "2024-11-18T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94ccc43fce", "title": "Is the best digital workplace just a bunch of Markdown files?", "url": "https://luhr.co/blog/2024/09/02/markdown-files-as-the-digital-workplace/", "published_at": "2024-09-02T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94cd6ee8f4", "title": "The next step in my career: joining Buffer as Senior Design Engineer", "url": "https://luhr.co/blog/2024/04/09/the-next-step-in-my-career-joining-buffer-as-senior-design-engineer/", "published_at": "2024-04-09T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94cdd1a1c0", "title": "The origins of design engineering", "url": "https://luhr.co/blog/2024/02/26/the-origins-of-design-engineering/", "published_at": "2024-02-26T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94ce44a164", "title": "Test-driven development as prompt engineering", "url": "https://luhr.co/blog/2024/02/07/test-driven-development-as-prompt-engineering/", "published_at": "2024-02-07T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94cf26d50a", "title": "Build-free type annotations with JSDoc and TypeScript", "url": "https://luhr.co/blog/2024/01/25/build-free-type-annotations-with-jsdoc-and-typescript/", "published_at": "2024-01-25T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94cf29b19b", "title": "Vision Pro, rabbit r1, LAMs, and accessibility", "url": "https://luhr.co/blog/2024/01/19/vision-pro-rabbit-r1-lams-and-accessibility/", "published_at": "2024-01-19T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94cf5a3757", "title": "2023 year in review", "url": "https://luhr.co/blog/2023/12/28/2023-year-in-review/", "published_at": "2023-12-28T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94cff3afec", "title": "New article: Test-driven HTML and accessibility", "url": "https://luhr.co/blog/2023/12/21/new-post-test-driven-html-and-accessibility/", "published_at": "2023-12-21T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94d0b29709", "title": "Build UX is 5 years old", "url": "https://luhr.co/blog/2023/11/29/build-ux-is-5-years-old/", "published_at": "2023-11-29T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94d138fd5d", "title": "All about accessible headings", "url": "https://luhr.co/blog/2023/09/12/all-about-accessible-headings/", "published_at": "2023-09-12T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94d1ae732e", "title": "All the ways to render a WebC component with 11ty", "url": "https://luhr.co/blog/2023/07/11/all-the-ways-to-render-a-webc-component-with-11ty/", "published_at": "2023-07-11T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94d20f1798", "title": "Prompt engineering is shaping", "url": "https://luhr.co/blog/2023/05/16/prompt-engineering-is-shaping/", "published_at": "2023-05-16T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94d28f8a3e", "title": "My Custom Second Brain Setup Part 4: Limitations as Strengths", "url": "https://luhr.co/blog/2023/04/26/my-custom-second-brain-setup-part-4-limitations-as-strengths/", "published_at": "2023-04-26T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94d35c8cdf", "title": "My Custom Second Brain Setup Part 3: Minimalist Productivity", "url": "https://luhr.co/blog/2023/04/24/my-custom-second-brain-setup-part-3-minimalist-productivity/", "published_at": "2023-04-24T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94d36c367b", "title": "My custom second brain setup, part 2: How it works", "url": "https://luhr.co/blog/2023/04/21/my-custom-second-brain-setup-part-2-how-it-works/", "published_at": "2023-04-21T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94d45cfdd4", "title": "My custom second brain setup, part 1: Why go custom?", "url": "https://luhr.co/blog/2023/04/19/my-custom-second-brain-setup-part-1-why-go-custom/", "published_at": "2023-04-19T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94d51c17d8", "title": "My new course: Accessibility-First Design", "url": "https://luhr.co/blog/2023/04/17/my-new-course-accessibility-first-design/", "published_at": "2023-04-17T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94d557bf30", "title": "Betting on WebC", "url": "https://luhr.co/blog/2023/02/27/betting-on-webc/", "published_at": "2023-02-27T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94d5f21cae", "title": "2022 year in review", "url": "https://luhr.co/blog/2023/02/25/2022-year-in-review/", "published_at": "2023-02-25T00:00:00+00:00" }, { "id": "01a0879d-38cb-73f7-b56b-2b94d63b21c3", "title": "Freelancing, consulting, and coaching", "url": "https://luhr.co/blog/2022/06/03/freelanching-consulting-and-coaching/", "published_at": "2022-06-03T00:00:00+00:00" } ] posts Claim your blog
Back to luhr.co
Blog · corpus.blog/blogs/luhr.co/posts

luhr.co

luhr.co

2025

2024

2023

2022