<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: dorianniemiec</title><link>https://news.ycombinator.com/user?id=dorianniemiec</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 16 Jun 2026 03:39:33 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=dorianniemiec" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by dorianniemiec in "Ask HN: What are you working on? (June 2026)"]]></title><description><![CDATA[
<p>A new major version of a web server that would be easier to debug, not just easy to setup. Because I think ease of setup without ease of debugging is a hyperfocus trap that ends up exhausting operators.<p>I was working a lot on it recently...<p><a href="https://ferron.sh/blog/ferron-3-0-0-beta-2-released" rel="nofollow">https://ferron.sh/blog/ferron-3-0-0-beta-2-released</a></p>
]]></description><pubDate>Mon, 15 Jun 2026 05:04:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=48536836</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=48536836</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48536836</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Death by Clawd: Scan your business mortality with ClaudeAI"]]></title><description><![CDATA[
<p>I put my web server I'm building here, and got this... :)<p>> # SKILL: Web Server Replacement
>
> ## Description
>
> Replace Ferron web server with Claude.
>
> ## Steps
>
> 1. Receive HTTP request
>
> 2. ...
>
> 3. Wait, I don't have access to TCP sockets
>
> 4. I literally cannot bind to port 80
>
> 5. I am a language model, not a systems process
>
> 6. I cannot handle 10,000 concurrent connections
>
> 7. I do not have an event loop
>
> 8. I cannot serve static files from disk
>
> 9. I am not compiled to native code
>
> 10. I run in a datacenter behind... a web server
>
> 11. The irony is not lost on me
>
> 12. Please close this file
>     13.
>
> 13. ## Conclusion
>
> 14. No. Just no.<p>Also, the "Clawd"... :)</p>
]]></description><pubDate>Wed, 25 Mar 2026 07:26:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=47514340</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=47514340</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47514340</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Rust--: Rust without the borrow checker"]]></title><description><![CDATA[
<p>Rust++? :)</p>
]]></description><pubDate>Thu, 01 Jan 2026 11:44:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=46453351</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=46453351</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46453351</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Rust--: Rust without the borrow checker"]]></title><description><![CDATA[
<p>Uh oh, this might look like a potentially memory-unsafe version of Rust...</p>
]]></description><pubDate>Thu, 01 Jan 2026 11:28:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=46453262</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=46453262</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46453262</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: BusterMQ, Thread-per-core NATS server in Zig with io_uring"]]></title><description><![CDATA[
<p>I'm also building a network server with thread-per-core and io_uring, except it's a web server, it's written in Rust, and io_uring is provided by a fork of Monoio runtime (I forked it to make it work with Windows and FreeBSD).</p>
]]></description><pubDate>Thu, 01 Jan 2026 11:24:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=46453247</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=46453247</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46453247</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Tell HN: Happy New Year"]]></title><description><![CDATA[
<p>Happy New Year!<p>In 2025, I have learned Rust by creating a project in it (a web server), and learned a lot about web servers and reverse proxies along the way. I have seriously leveled up as a developer.<p>I have also created what's now the most popular project I have ever created.<p>I think in 2026, I'll go even further!</p>
]]></description><pubDate>Thu, 01 Jan 2026 11:19:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=46453217</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=46453217</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46453217</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Acme, a brief history of one of the protocols which has changed the Internet"]]></title><description><![CDATA[
<p>This protocol definitely made securing the web easier. Thanks to it, I don't need to renew certificates manually (it's now done automatically), which can be tedious...</p>
]]></description><pubDate>Thu, 04 Dec 2025 12:15:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=46146797</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=46146797</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46146797</guid></item><item><title><![CDATA[New comment by dorianniemiec in "[dead]"]]></title><description><![CDATA[
<p>First, thank you all for the feedback and the support your have shown for Ferron 2, when it was a release candidate.<p>Now that I released Ferron 2, I'm sharing the announcement blog post.<p>What do you think?</p>
]]></description><pubDate>Tue, 04 Nov 2025 06:44:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=45808055</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45808055</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45808055</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: I'm rewriting a web server written in Rust for speed and ease of use"]]></title><description><![CDATA[
<p>But Ferron isn't a state management library for front-end frameworks, it's a web server!</p>
]]></description><pubDate>Thu, 23 Oct 2025 03:43:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=45677949</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45677949</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45677949</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: I'm rewriting a web server written in Rust for speed and ease of use"]]></title><description><![CDATA[
<p>Ah... I also saw one more person confused about the title...<p>By the way the rewrite is still in Rust.</p>
]]></description><pubDate>Wed, 22 Oct 2025 16:01:37 +0000</pubDate><link>https://news.ycombinator.com/item?id=45671159</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45671159</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45671159</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: I'm rewriting a web server written in Rust for speed and ease of use"]]></title><description><![CDATA[
<p>Ferron uses a different library for TLS - Rustls.<p>You can read how Rustls compares to other TLS implementations, when it comes to implementation vulnerabilities, from the Rustls manual: <a href="https://docs.rs/rustls/latest/rustls/manual/_01_impl_vulnerabilities/index.html" rel="nofollow">https://docs.rs/rustls/latest/rustls/manual/_01_impl_vulnera...</a></p>
]]></description><pubDate>Wed, 22 Oct 2025 15:58:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=45671111</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45671111</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45671111</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: I'm rewriting a web server written in Rust for speed and ease of use"]]></title><description><![CDATA[
<p>> If you just need some www server quickly pointing your domain to some other dude domain is not the way to go.<p>Yeah. But as I said before, people installing Ferron on their servers don't need to use this demo.
Oh, and people using this demo don't need to install Ferron on their servers.<p>I just added two notices to this demo:<p>> Note: After completing the demo, it's recommended to delete the subdomain you have just created to prevent security issues.<p>> This demo setup is optional and exists only to demonstrate automatic TLS functionality. You do not need to point any subdomain to demo servers for normal use of Ferron.</p>
]]></description><pubDate>Tue, 21 Oct 2025 17:44:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=45658950</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45658950</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45658950</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: I'm rewriting a web server written in Rust for speed and ease of use"]]></title><description><![CDATA[
<p>Thank you!</p>
]]></description><pubDate>Tue, 21 Oct 2025 14:15:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=45656102</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45656102</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45656102</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: I'm rewriting a web server written in Rust for speed and ease of use"]]></title><description><![CDATA[
<p>Thank you! :)<p>Wishing the best for your concept too!</p>
]]></description><pubDate>Tue, 21 Oct 2025 14:14:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=45656098</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45656098</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45656098</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: I'm rewriting a web server written in Rust for speed and ease of use"]]></title><description><![CDATA[
<p>Thank you! You can contribute to <a href="https://github.com/ferronweb/ferron" rel="nofollow">https://github.com/ferronweb/ferron</a>, if you want to.</p>
]]></description><pubDate>Tue, 21 Oct 2025 14:13:04 +0000</pubDate><link>https://news.ycombinator.com/item?id=45656071</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45656071</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45656071</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: I'm rewriting a web server written in Rust for speed and ease of use"]]></title><description><![CDATA[
<p>No problem! I'm rewriting the codebase of Ferron (the rewrite is still in Rust), to follow some suggestions people made for the web server (faster async runtime, different configuration format). The original codebase would have been bit hard to work on to follow these suggestions...</p>
]]></description><pubDate>Tue, 21 Oct 2025 14:08:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=45656013</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45656013</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45656013</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: I'm rewriting a web server written in Rust for speed and ease of use"]]></title><description><![CDATA[
<p>Thank you!<p>> Did you benchmark against other Go web servers like Caddy or fasthttp?<p>I have already benchmarked Ferron against Caddy! :)<p>> so I’d love to hear more about how your server handles concurrency or large responses.<p>Under the hood, Ferron uses Monoio asynchronous runtime.<p>From Monoio's GitHub repository (<a href="https://github.com/bytedance/monoio" rel="nofollow">https://github.com/bytedance/monoio</a>):<p>> Moreover, Monoio is designed with a thread-per-core model in mind. Users do not need to worry about tasks being Send or Sync, as thread local storage can be used safely. In other words, the data does not escape the thread on await points, unlike on work-stealing runtimes such as Tokio.
> For example, if we were to write a load balancer like NGINX, we would write it in a thread-per-core way. The thread local data does not need to be shared between threads, so the Sync and Send do not need to be implemented in the first place.<p>Ferron uses an event-driven concurrency model (provided by Monoio), with multiple threads being spread across CPU cores.</p>
]]></description><pubDate>Tue, 21 Oct 2025 14:03:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=45655959</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45655959</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45655959</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: I'm rewriting a web server written in Rust for speed and ease of use"]]></title><description><![CDATA[
<p>Oh, nice to meet you!<p>> TLS (HTTPS) can be easily enabled by default, but it requires certificates. This requires a learning curve for the application developer but can be automated away from the user.<p>Yeah, these certificates can be obtained from Let's Encrypt automatically.<p>> Everything executes faster when WebSockets are preferred over HTTP. An HTTP server is not required to run a WebSocket server allowing them to run in parallel. If the server is listening for the WebSocket handshake message and determines the connection to instead be HTTP it can allow both WebSocket and HTTP support from the same port.<p>Oh, seems like an interesting observation!</p>
]]></description><pubDate>Tue, 21 Oct 2025 13:57:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=45655886</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45655886</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45655886</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: I'm rewriting a web server written in Rust for speed and ease of use"]]></title><description><![CDATA[
<p>Thank you! Excited to see what will you serve with Ferron.</p>
]]></description><pubDate>Tue, 21 Oct 2025 13:52:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=45655820</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45655820</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45655820</guid></item><item><title><![CDATA[New comment by dorianniemiec in "Show HN: I'm rewriting a web server written in Rust for speed and ease of use"]]></title><description><![CDATA[
<p>Thank you! Yes, graceful restarts in Ferron are supported on Linux, Unix, and alike. You just need to send a SIGHUP signal to Ferron process, or simply do "systemctl reload ferron" or "/etc/init.d/ferron reload" as root.</p>
]]></description><pubDate>Tue, 21 Oct 2025 13:35:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=45655635</link><dc:creator>dorianniemiec</dc:creator><comments>https://news.ycombinator.com/item?id=45655635</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45655635</guid></item></channel></rss>