28 Feb 2025 #
A couple of weeks ago, I read the Zig Guide by Karl Seguin and followed all the exercises. I felt comfortable enough with it, so I decided to build a small RAG application using Ollama API and Redis as storage for embeddings.
Here are my first impressions of Zig from the perspective of someone who has spent 90%+ of their coding career with C# and JavaScript/TypeScript:
- The dependency ecosystem is very young.
- Breaking changes between the language versions make the point above even worse.
- C interop is great.
- Explicit memory management feels conceptually simpler than Rust's ownership system.
- When you do run into a memory leak, the testing allocator is really helpful for debugging.
- The testing system itself is quite clear.
- Still a bit lost with the arena allocator (never encountered it before).
- The meta programming approach is interesting, the basic usage seems very clear.
- Error handling is quite unusual: functions return error unions instead of throwing exceptions.
23 Feb 2025 #
I spent some time this weekend experimenting with Huginn. It's running on my laptop in Docker, with a MySQL DB stored in a mounted folder.
As I add this blog entry, the RSS feed updates, triggering a Huginn RSS Agent to generate an event. That event is then picked up by an HTTP Post Agent, which sends a status update to Mastodon.
22 Feb 2025 #
TIL: The Continue VSCode extension allows you to use Ollama/LM Studio for full offline copilot experience: Setting up Continue Ollama model provider.
21 Feb 2025 #
LLMs are affecting the tech interview process. Thoughts on how we can address this: AI Killed The Tech Interview. Now What? TL;DR: allow AI assistants, extend the interview to 2 hours mixing architecture and coding, and have the candidate build an application with a large enough scope.
16 Feb 2025 #
Finished OS in 1000 Lines by Seiya Nuta—a step-by-step guide to building a simple operating system from scratch. It was very educational. Highly recommend going through it if you're not doing systems programming regularly.
07 Jan 2025 #
Browsers are shifting towards “double-keyed caching”, where cached data is separated based on both the resource URL and the top-level site. This aims to enhance privacy, but this post also explores its potential impact on performance and provides practical strategies to mitigate those effects.
Double-keyed Caching: How Browser Cache Partitioning Changed the Web20 Dec 2024 #
New post: Migrating to Visual Regression Testing with Playwright and S3.
03 Nov 2024 #
Microsoft's study on automating "nudges" to reduce code review times.
How to Accelerate Code Reviews with Nudges: Insights from Microsoft’s Study04 Jul 2024 #
Cloudflare introduces a feature to block AI bots, scrapers, and crawlers, helping website owners safeguard their content from unauthorized data extraction.
Declaring Your Aindependence: Block AI Bots, Scrapers, and Crawlers14 May 2024 #
MDN’s guide breaks down the Popover API, showing how to create and control popover elements using HTML attributes and JavaScript. No more manual focus management! I missed its introduction a year ago, though Firefox only supported it last month anyway.
Popover API - Web APIs | MDN17 Apr 2024 #
Folks are talking about Effect—the "missing standard library for TypeScript".
Effect 30 ReleaseUPD 2025-02-22: It's still around!
26 Feb 2024 #
A review of Meta’s LLM-based test generator. Bottom line: the achieved better test coverage does not necessarily mean better code, but it comes closer to exhausting the edge cases.
Meta's New LLM-Based Test Generator: A Sneak Peek to the Future of Development28 Aug 2023 #
How to debug Content Security Policy (CSP) issues using Chrome DevTools, including techniques for handling Trusted Types: Implementing CSP and Trusted Types debugging in Chrome DevTools.
How Datadog RUM browser SDK catches CSP violation reports: [RUMF-1175] collect reports and csp violation.
23 Aug 2023 #
New post: Mocking downstream dependencies with Mockttp in Cypress tests for NextJS apps.
28 Jul 2023 #
Malicious npm packages infiltrate tech companies!
Social Engineering Campaign Targeting Tech Employees26 Jul 2023 #
New CSS viewport units (svh, lvh, dvh) to (hopefully) fix mobile UI issues caused by dynamic address bars: New Viewport Units.
UPD 22 Feb 2025: Still not supported in Firefox.
22 Jun 2023 #
A good overview of the version skew issues in distributed systems, and how to manage them.
21 Jun 2023 #
Cloudflare details how HTTP/3 extensible priorities improve resource delivery, optimizing page load performance and boosting key metrics like LCP.
Better HTTP/3 Prioritization for a Faster Web14 Feb 2023 #
Colleagues from several teams asked me last week about logging best practices. Here're some links I shared:
- Logging Practices I Follow by Eliran Turgeman
- Tips for Analyzing Logs by Julia Evans
- Log Parsing Best Practice from Datadog
01 Feb 2023 #
Two interesting finds:
- Git Sim - a visual simulation of git commands in your repo
- Packaging Rust Applications for the NPM Registry
18 Jan 2023 #
Git project addresses several security vulnerabilities - upgrade now to 2.39.1!
Git Security Vulnerabilities Announced - The GitHub Blog01 Oct 2022 #
New post: Software engineer’s workflow.
18 Oct 2022 #
A very to-the-point break down of software development through an SRE lens.
How to Build Software like an SRE — willett dot io29 Sep 2022 #
Cloudflare introduces Turnstile, a CAPTCHA alternative that reduces friction and protects user privacy.
Announcing Turnstile, a User-Friendly, Privacy-Preserving Alternative to CAPTCHA30 Aug 2022 #
New post: A note on accessibility.
21 Jun 2022 #
sonnyt/just: Zero Config TypeScript Build and Development Toolkit streamlines TypeScript workflows with a minimal setup.
09 Jun 2022 — CSS Rendering Performance Boost & Deepkit TypeScript Framework #
- Two Lines of CSS that Boosts 7x Rendering Performance - proceed with care, consider browser support and accessibility.
- Deepkit - a high-performance TypeScript framework designed for scalable applications.
25 May 2022 #
Attackers hijacked popular Python and PHP libraries to steal AWS keys.
Popular Python and PHP Libraries Hijacked to Steal AWS Keys01 Dec 2021 #
New post: What is a JavaScript linter: inside out view.
24 Nov 2021 #
A look at how continuous integration fits into Large Scale Scrum (LeSS), with techniques to maintain code quality in large-scale agile environments.
Continuous Integration - Large Scale Scrum (LeSS)16 Aug 2021 #
New post: Quality checks in CI/CD Pipelines.
28 Jun 2021 #
The origins of blue hyperlinks, their usability and accessibility. The article has screenshots of ancient UIs.
Why Are Hyperlinks Blue?09 Jun 2021 #
An introduction to TSDX, a zero-config TypeScript toolkit.
20 Apr 2021 #
TIL:
after_script
in GitLab pipelines runs in a new shell, separate frombefore_script
andscript
sections. See the "Additional details" under "after_script" in GitLab CI yaml docs.08 Apr 2021 #
TIL:
peerDependenciesMeta | npm DocspeerDependenciesMeta
inpackage.json
can be used to mark peer dependencies as optional and avoid unnecessary warnings duringnpm install
.