Blog of WJWHhttps://wjwh.eu/atom.xmlWander Hillenwjw.hillen@gmail.com2022-11-30T00:00:00ZSome tips and tricks for doing Advent of Code with Haskellhttps://wjwh.eu/posts/2022-11-30-haskell-aoc-tricks.html2022-11-30T00:00:00Z2022-11-30T00:00:00ZMaking type-safe internet bots with Haskellhttps://wjwh.eu/posts/2022-05-06-haskell-conduit-bots.html2022-05-06T00:00:00Z2022-05-06T00:00:00ZStupid tricks with io_uring: a server that does zero syscalls per requesthttps://wjwh.eu/posts/2021-10-01-no-syscall-server-iouring.html2021-10-01T00:00:00Z2021-10-01T00:00:00ZSubmitting many ActionMail jobs at once with Sidekiqhttps://wjwh.eu/posts/2021-08-24-sidekiq-rails-bulk-push.html2021-08-24T00:00:00Z2021-08-24T00:00:00ZPre-emptive fiber-based concurrency in MRI Rubyhttps://wjwh.eu/posts/2021-02-07-ruby-preemptive-fiber.html2021-02-07T00:00:00Z2021-02-07T00:00:00ZRuby 3.0 and the new FiberScheduler interfacehttps://wjwh.eu/posts/2020-12-28-ruby-fiber-scheduler-c-extension.html2020-12-28T00:00:00Z2020-12-28T00:00:00ZAdvent of Haskell 2020 Day 11: The `retry` package.https://wjwh.eu/posts/2020-12-11-haskell-retries.html2020-12-11T00:00:00Z2020-12-11T00:00:00ZStreaming HTTP responses with Ruby and Rackhttps://wjwh.eu/posts/2020-11-01-ruby-streaming-http.html2020-11-01T00:00:00Z2020-11-01T00:00:00ZHow software is like a wooden boat, musings on maintainabilityhttps://wjwh.eu/posts/2020-10-14-software-maintenance.html2020-10-14T00:00:00Z2020-10-14T00:00:00ZPreliminary benchmarking results for a Haskell I/O manager backend based on io_uringhttps://wjwh.eu/posts/2020-07-26-haskell-iouring-manager.html2020-07-26T00:00:00Z2020-07-26T00:00:00Z