56,966 blogs · [ { "id": "01a08c62-b103-7145-bbf3-8dca8f66a03d", "title": "How to use Confidential Computing to prove what code is on your server", "url": "https://www.willem.dev/articles/prove-what-code-your-system-is-running/", "published_at": "2026-06-18T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca8fd409ce", "title": "Compliance as a runtime problem", "url": "https://www.willem.dev/articles/compliance-as-a-runtime-problem/", "published_at": "2026-06-03T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca902fea1d", "title": "Dear HTTP service, how can I trust you not to break my heart?", "url": "https://www.willem.dev/articles/openpcc-short-intro/", "published_at": "2026-03-12T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca90c3cce0", "title": "Writing Benchmarks: Performance testing in Go/Golang", "url": "https://www.willem.dev/articles/benchmarks-performance-testing/", "published_at": "2024-10-24T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca91261ba6", "title": "Avoid inaccurate tests: Use httptest when testing HTTP handlers in Go/Golang", "url": "https://www.willem.dev/articles/testing-http-handlers-using-httptest/", "published_at": "2024-10-03T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca92030a0b", "title": "Sets in Go/Golang – Using Maps and Recommended Packages", "url": "https://www.willem.dev/articles/sets-in-golang/", "published_at": "2024-09-19T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca8cde4041", "title": "No string interpolation in Go/Golang. Use these alternatives", "url": "https://www.willem.dev/articles/string-interpolation/", "published_at": "2024-07-03T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca9238ede1", "title": "Devlog I: The foundations of a Go/Golang web application", "url": "https://www.willem.dev/articles/may-househunt-update/", "published_at": "2024-05-02T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca92a583e4", "title": "Prevent sensitive data from leaking in Go/Golang", "url": "https://www.willem.dev/articles/prevent-sensitive-data-from-leaking/", "published_at": "2024-03-28T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca92f0237e", "title": "Maps of functions in Go (Golang)", "url": "https://www.willem.dev/articles/maps-of-functions/", "published_at": "2024-03-21T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca930c0d84", "title": "Documented Example Project: Go/Golang Web Application", "url": "https://www.willem.dev/articles/example-web-application-project/", "published_at": "2024-03-13T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca939da1bf", "title": "Composable HTTP Handlers using generics in Go/Golang", "url": "https://www.willem.dev/articles/generic-http-handlers/", "published_at": "2024-02-27T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca9498c888", "title": "URL path parameters and variables in Go (Golang) 1.22 and later", "url": "https://www.willem.dev/articles/url-path-parameters-in-routes/", "published_at": "2024-02-15T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca955fd588", "title": "Change JSON Time and Date format in Go/Golang", "url": "https://www.willem.dev/articles/change-time-format-json/", "published_at": "2024-01-25T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca96536509", "title": "How to Compare Time or Date in Go/Golang with example code", "url": "https://www.willem.dev/articles/how-to-compare-time-date/", "published_at": "2024-01-18T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca96f7bb0c", "title": "Get the Current Time: The Monotonic Clock in Go/Golang", "url": "https://www.willem.dev/articles/time-now-monotonic-clock/", "published_at": "2024-01-11T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca97398cac", "title": "Time and Location Explained in Go/Golang", "url": "https://www.willem.dev/articles/time-location-explained/", "published_at": "2023-12-21T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca8e902d2e", "title": "How to Parse a Time or Date using time.Parse in Go/Golang", "url": "https://www.willem.dev/articles/how-to-parse-time-date/", "published_at": "2023-11-23T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca97ff5d13", "title": "Anonymous structs in Go (Golang): What, How and When", "url": "https://www.willem.dev/articles/anonymous-structs/", "published_at": "2023-11-16T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca9816d907", "title": "Type safe way to add a value to a Go/Golang context", "url": "https://www.willem.dev/articles/how-to-add-values-to-context/", "published_at": "2023-11-12T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca98e1c7b6", "title": "Should you store *that value* in a Go/Golang context?", "url": "https://www.willem.dev/articles/what-values-store-in-context/", "published_at": "2023-11-12T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca8bc44a53", "title": "Dealing with large structs in (table) tests in Go/Golang", "url": "https://www.willem.dev/articles/large-structs-in-table-tests/", "published_at": "2023-09-07T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca98f08f5b", "title": "Make, Literals and Re-slicing - Go/Golang slice fundamentals", "url": "https://www.willem.dev/articles/build-your-own-slice-make-literal-reslice/", "published_at": "2023-08-30T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca8dd894a2", "title": "Should you use a slice of pointers to structs in Go/Golang?", "url": "https://www.willem.dev/articles/slice-of-pointers-structs/", "published_at": "2023-08-20T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca8c0b6c82", "title": "Should you use pointers to slices in Go/Golang?", "url": "https://www.willem.dev/articles/should-you-use-pointers-to-slices/", "published_at": "2023-08-03T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca99c351f2", "title": "Append and Copy - Go/Golang slice fundamentals", "url": "https://www.willem.dev/articles/build-your-own-slice-append-copy/", "published_at": "2023-07-18T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca99f726d9", "title": "Arrays and slices - Go/Golang slice fundamentals", "url": "https://www.willem.dev/articles/build-your-own-slice-start-here/", "published_at": "2023-06-26T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca9a2e28a6", "title": "Choosing between context.Background() and context.TODO() in Go/Golang", "url": "https://www.willem.dev/articles/context-todo-or-background/", "published_at": "2023-04-14T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca9abba930", "title": "Context cancellation: Don't waste resources on aborted requests in Go/Golang", "url": "https://www.willem.dev/articles/context-cancellation-explained/", "published_at": "2023-03-23T00:00:00+00:00" }, { "id": "01a08c62-b103-7145-bbf3-8dca8b5be8bf", "title": "Confused by http.HandlerFunc? This post makes it click - Learn Go/Golang", "url": "https://www.willem.dev/articles/http-handler-func/", "published_at": "2023-03-02T00:00:00+00:00" } ] posts Claim your blog
Back to willem.dev
Blog · corpus.blog/blogs/willem.dev/posts

willem.dev

willem.dev

2026

2024

2023