56,966 blogs · [ { "id": "01a08c59-12d1-7367-9ecd-9561c7e3a32d", "title": "Techniques for sampling colour in creative coding", "url": "https://tsev.dev/posts/2026-03-27-techniques-for-sampling-colour-in-creative-coding/", "published_at": "2026-03-27T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561c85b5422", "title": "Looping over indexOf() matches", "url": "https://tsev.dev/posts/2026-02-10-looping-over-indexof-matches/", "published_at": "2026-02-10T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561c929d485", "title": "Thoughts on artificial intelligence", "url": "https://tsev.dev/posts/2026-01-13-artificial-intelligence/", "published_at": "2026-01-13T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561c9c83e49", "title": "Safe environment variables in JavaScript", "url": "https://tsev.dev/posts/2025-12-03-safe-environment-variables-in-javascript/", "published_at": "2025-12-03T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561caa1f22a", "title": "My cats are family", "url": "https://tsev.dev/posts/2025-09-29-my-cats-are-family/", "published_at": "2025-09-29T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561cb774e15", "title": "Glassmorph responsibly: test the worst case scenarios", "url": "https://tsev.dev/posts/2025-07-14-glassmorphism-test-worst-case-scenario/", "published_at": "2025-07-14T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561cb953c0a", "title": "The Bear Blog question challenge, mapped", "url": "https://tsev.dev/posts/2025-05-06-bear-blog-challenge-map/", "published_at": "2025-05-06T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561cc071fa3", "title": "The state of the front-end and full-stack job market", "url": "https://tsev.dev/posts/2025-03-26-the-state-of-the-frontend-and-fullstack-job-market/", "published_at": "2025-03-26T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561cc5fb26a", "title": "2024 in review", "url": "https://tsev.dev/posts/2025-01-01-2024-in-review/", "published_at": "2025-01-01T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561cc91a1a7", "title": "Mighty robust software with the MACH pattern", "url": "https://fresk.digital/en/articles/mighty-robust-software-with-the-mach-pattern", "published_at": "2024-10-03T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561ccd7393d", "title": "JavaScript didn’t cause The Great Divide", "url": "https://tsev.dev/posts/2024-08-03-javascript-didnt-cause-the-great-divide/", "published_at": "2024-08-03T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561cd376244", "title": "Procrastination to progress: keeping up the job search", "url": "https://tsev.dev/posts/2023-12-24-keeping-up-the-job-search/", "published_at": "2023-12-24T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561cd53ac2e", "title": "Should AVIF be the dominant image format on the web?", "url": "https://tsev.dev/posts/2023-11-10-should-avif-be-the-dominant-image-format/", "published_at": "2023-11-10T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561cd80bf1c", "title": "Please add categories to blog feeds", "url": "https://tsev.dev/posts/2023-09-20-add-categories-to-blog-feeds/", "published_at": "2023-09-17T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561cdbdf3b8", "title": "Books books books", "url": "https://tsev.dev/posts/2023-09-08-books/", "published_at": "2023-09-08T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561ce0f6a73", "title": "Guiding developers through a codebase with inline guides", "url": "https://tsev.dev/posts/2023-08-29-guiding-engineers-with-inline-guides/", "published_at": "2023-08-29T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561ce866eee", "title": "Setting up a modern JavaScript monorepo", "url": "https://tsev.dev/posts/2023-08-27-setting-up-a-modern-monorepo/", "published_at": "2023-08-27T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561ce99b011", "title": "The 2023 rebuild", "url": "https://tsev.dev/posts/2023-08-18-the-2023-rebuild/", "published_at": "2023-08-18T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561cf664460", "title": "Getting better at newsletters, maybe", "url": "https://tsev.dev/posts/2023-02-21-getting-better-at-newsletters/", "published_at": "2023-02-21T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d045a351", "title": "That one framework use-case", "url": "https://tsev.dev/posts/2023-02-01-that-one-framework-use-case/", "published_at": "2023-02-01T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d123fe59", "title": "Is TypeScript worth it?", "url": "https://tsev.dev/posts/2023-01-25-is-typescript-worth-it/", "published_at": "2023-01-25T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d171af6f", "title": "2022 in review", "url": "https://tsev.dev/posts/2022-12-25-2022-in-review/", "published_at": "2022-12-30T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d1927fd5", "title": "Bye bye, Twitter", "url": "https://tsev.dev/posts/2022-12-16-bye-twitter/", "published_at": "2022-12-16T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d19c8c99", "title": "When principles degrade performance — the memory problem of immutability", "url": "https://ijsjes.dev/posts/2022-10-25-when-principles-degrade-performance-the-memory-problem-of-immutability/", "published_at": "2022-10-25T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d1e2a3e0", "title": "Design patterns: Singleton", "url": "https://ijsjes.dev/posts/2022-08-26-singleton/", "published_at": "2022-08-26T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d2c03a22", "title": "What makes JavaScript so popular", "url": "https://ijsjes.dev/posts/2022-08-06-what-makes-javascript-popular/", "published_at": "2022-08-06T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d2ff5f29", "title": "3 methods to run code conditionally without if-statements", "url": "https://ijsjes.dev/posts/2022-08-03-3-methods-to-run-code-conditionally/", "published_at": "2022-08-03T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d3776ead", "title": "Lessons learned from burnout", "url": "https://tsev.dev/posts/2022-07-21-lessons-learned-from-burnout/", "published_at": "2022-07-21T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d4040fb9", "title": "The perfect project management framework doesn’t exist", "url": "https://tsev.dev/posts/2022-01-28-the-perfect-software-project-methodology-doesnt-exist/", "published_at": "2022-01-25T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d49bcf3b", "title": "Face Detection on the Web with Face-api.js", "url": "https://web.archive.org/web/20230325234405/https://www.sitepoint.com/face-api-js-face-detection/", "published_at": "2021-06-21T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d5286894", "title": "Improving online tech discussions", "url": "https://tsev.dev/posts/2021-05-10-improving-online-tech-discussions/", "published_at": "2021-05-10T00:00:00+00:00" }, { "id": "01a08c59-12d1-7367-9ecd-9561d608bc9b", "title": "What is Vitejs? An Overview of the New Front-end Build Tool", "url": "https://web.archive.org/web/20250201013717/https://www.sitepoint.com/vitejs-front-end-build-tool-introduction/", "published_at": "2021-05-10T00:00:00+00:00" } ] posts Claim your blog
Back to Tim Severien - Blog of another senior web engineer
Blog · corpus.blog/blogs/tsev.dev/posts

Tim Severien - Blog of another senior web engineer

tsev.dev

2026

2025

2024

2023

2022

2021