<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: wdroz</title><link>https://news.ycombinator.com/user?id=wdroz</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 22 Apr 2026 17:09:39 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=wdroz" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by wdroz in "Changes to GitHub Copilot individual plans"]]></title><description><![CDATA[
<p>You can get a refund, from the article:<p>> If you hit unexpected limits or these changes just don’t work for you, you can cancel your Pro or Pro+ subscription and you will not be charged for April usage. Please reach out to GitHub support between April 20 and May 20 for a refund.</p>
]]></description><pubDate>Tue, 21 Apr 2026 11:47:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=47847463</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=47847463</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47847463</guid></item><item><title><![CDATA[New comment by wdroz in "I use excalidraw to manage my diagrams for my blog"]]></title><description><![CDATA[
<p>You can also bootstrap your initial schema with LLMs with the excalidraw MCP "app" [0]. But MCP "apps"[1] are quite new and not very well supported yet.<p>[0] -- <a href="https://github.com/excalidraw/excalidraw-mcp" rel="nofollow">https://github.com/excalidraw/excalidraw-mcp</a><p>[1] -- <a href="https://modelcontextprotocol.io/extensions/apps/overview" rel="nofollow">https://modelcontextprotocol.io/extensions/apps/overview</a></p>
]]></description><pubDate>Mon, 30 Mar 2026 08:05:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=47571678</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=47571678</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47571678</guid></item><item><title><![CDATA[New comment by wdroz in "Show HN: enveil – hide your .env secrets from prAIng eyes"]]></title><description><![CDATA[
<p>We could simply make the "view file" tool not able to see .env. Same for other "grep-like" tools.</p>
]]></description><pubDate>Tue, 24 Feb 2026 10:23:00 +0000</pubDate><link>https://news.ycombinator.com/item?id=47135273</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=47135273</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47135273</guid></item><item><title><![CDATA[New comment by wdroz in "What's New in Python 3.15"]]></title><description><![CDATA[
<p>In the improved error message [0] how are they able to tell nested attributes without having a big impact in performance? Or maybe this has a big impact on performance, then using exceptions for control flow is deprecated?<p><pre><code>    ...
    print(container.area)
</code></pre>
> AttributeError: 'Container' object has no attribute 'area'. Did you mean: 'inner.area'?<p>[0] -- <a href="https://docs.python.org/3.15/whatsnew/3.15.html#improved-error-messages" rel="nofollow">https://docs.python.org/3.15/whatsnew/3.15.html#improved-err...</a></p>
]]></description><pubDate>Sun, 21 Dec 2025 08:38:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=46343227</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=46343227</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46343227</guid></item><item><title><![CDATA[New comment by wdroz in "Developers can now submit apps to ChatGPT"]]></title><description><![CDATA[
<p>> All submissions must come from verified individuals or organizations. Inside the OpenAI Platform Dashboard general settings, we provide a way to confirm your identity and affiliation with any business you wish to publish on behalf of. Misrepresentation, hidden behavior, or attempts to game the system may result in removal from the program.<p>They really want your ID</p>
]]></description><pubDate>Thu, 18 Dec 2025 07:01:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=46309681</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=46309681</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46309681</guid></item><item><title><![CDATA[New comment by wdroz in "GPT-5.2"]]></title><description><![CDATA[
<p>Unlike openai, you can use the latest grok models without verifying your organization and giving your ID.</p>
]]></description><pubDate>Fri, 12 Dec 2025 09:57:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=46242564</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=46242564</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46242564</guid></item><item><title><![CDATA[New comment by wdroz in "Rules for creating good-looking user interfaces"]]></title><description><![CDATA[
<p>> The logo is further on the left than the other icons.<p>But why the logo of the website/app should be aligned with the icon of the actions?<p>> The icons are thin, compared to the text, which is bold.<p>Why this is an issue?<p>I can somewhat agree with the other points, but I wouldn't call this "bad design." Just because the information can sometimes be presented better doesn't mean the previous way was bad.</p>
]]></description><pubDate>Fri, 19 Sep 2025 08:57:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=45299477</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=45299477</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45299477</guid></item><item><title><![CDATA[New comment by wdroz in "Ask HN: The government of my country blocked VPN access. What should I use?"]]></title><description><![CDATA[
<p>DNS tunnels with iodine works well, it's easy to setup and work in a lot of place.<p>You can also connect to some random corporate wifi and it's very likely that this will work (not necessary in "direct" mode).</p>
]]></description><pubDate>Fri, 29 Aug 2025 06:21:22 +0000</pubDate><link>https://news.ycombinator.com/item?id=45060820</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=45060820</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45060820</guid></item><item><title><![CDATA[New comment by wdroz in "Toad – a universal UI for agentic coding in the terminal"]]></title><description><![CDATA[
<p>I hope you will get further sponsorships so you can continue your cool work in the FOSS space.<p>I also totally agree that uv makes shipping python software smoother. Prior to uv I hesitated to use Textual to build cool TUIs for internal tools. But now, it’s a totally different story. I wish I had an internal tool to write with Textual right now.<p>Maybe by the time Toad is officially out, I will have a project ready to dive into.</p>
]]></description><pubDate>Thu, 24 Jul 2025 14:12:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=44670934</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=44670934</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44670934</guid></item><item><title><![CDATA[New comment by wdroz in "I Switched from Flutter and Rust to Rust and Egui"]]></title><description><![CDATA[
<p>I also prefer the mental model of immediate mode, but when I played with Dioxus[0] for a rust fullstack hobby project[1], I was able to adapt.<p>I liked the DX with the tools and the `rsx!` macro. The use of `#[cfg(feature = "server")]` to define server-side code is interesting, it lets you keep a shared codebase for frontend and backend, while still controlling what gets compiled to WASM for the client.<p>[0] -- <a href="https://dioxuslabs.com/">https://dioxuslabs.com/</a><p>[1] -- <a href="https://blazingboard.ch/" rel="nofollow">https://blazingboard.ch/</a> (not mobile friendly, sorry)</p>
]]></description><pubDate>Fri, 27 Jun 2025 09:14:20 +0000</pubDate><link>https://news.ycombinator.com/item?id=44395191</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=44395191</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44395191</guid></item><item><title><![CDATA[New comment by wdroz in "My AI skeptic friends are all nuts"]]></title><description><![CDATA[
<p>I agree, the latest models are not bad at Rust. Most issues I have when writing LLM-assisted Rust code are related to dependencies.<p>There are a lot of v0.x.x crates in Rust with frequent updates and breaking changes. As LLMs "learn" from code in the wild, they are exposed to different way to use the same crate and thus fail to produce working code "from memory".<p>But as soon as you explain how to use it with the latest syntax, they are able to fix the code.</p>
]]></description><pubDate>Tue, 03 Jun 2025 05:27:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=44166620</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=44166620</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44166620</guid></item><item><title><![CDATA[New comment by wdroz in "Ty: A fast Python type checker and language server"]]></title><description><![CDATA[
<p>You can also install it "globally" for your user with:<p><pre><code>  uv tool install ty
</code></pre>
Then you can use it anywhere<p><pre><code>  ty check</code></pre></p>
]]></description><pubDate>Wed, 07 May 2025 18:34:55 +0000</pubDate><link>https://news.ycombinator.com/item?id=43919157</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=43919157</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43919157</guid></item><item><title><![CDATA[New comment by wdroz in "Show HN: Bagels – TUI expense tracker"]]></title><description><![CDATA[
<p>They are using the "normal" dependencies section in the pyproject.toml, so you should be able to install with pip or other tools if you want.<p>It's only for dev-specifics dependencies that they are using the uv-specifics section.<p>You can try uv in 2 min and see if you like it or not.</p>
]]></description><pubDate>Mon, 27 Jan 2025 10:16:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=42839411</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=42839411</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42839411</guid></item><item><title><![CDATA[New comment by wdroz in "We outsmarted CSGO cheaters with IdentityLogger"]]></title><description><![CDATA[
<p>Some "micro cheating" are really easy to develop. When I was younger and a bit bored, I wrote my own "micro-cheat" in AutoIt[0] with less than 10 lines of code.<p>This was for the game counter-strike (I don't remember which version, either Source or early CSGO). The logic of the cheat was:<p><pre><code>  - I manually aim, with the sniper, close to the wall of an intersection
  - I press a special key, then when the pixel at the center of the screen change, simulate input mouse click to "fire"
</code></pre>
This was fun for maybe 1-2h, but the fun was more about the success of the project (from an idea to a working cheat) than getting some free kills while playing.<p>[0] -- <a href="https://www.autoitscript.com/site/" rel="nofollow">https://www.autoitscript.com/site/</a></p>
]]></description><pubDate>Thu, 17 Oct 2024 08:48:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=41867642</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=41867642</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41867642</guid></item><item><title><![CDATA[New comment by wdroz in "Python 3.13.0 Is Released"]]></title><description><![CDATA[
<p>I prefer mypy but sometimes pyright supports new PEPs before mypy, so if you like experimenting with cutting-edge python, you may have to switch time to time.</p>
]]></description><pubDate>Fri, 11 Oct 2024 14:24:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=41809739</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=41809739</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41809739</guid></item><item><title><![CDATA[New comment by wdroz in "Python 3.13.0 Is Released"]]></title><description><![CDATA[
<p>disclaimer: I don't work on big codebases.<p>Pylance with pyright[0] while developing (with strict mode) and mypy[1] with pre-commit and CI.<p>Previously, I had to rely on pyright in pre-commit and CI for a while because mypy didn’t support PEP 695 until its 1.11 release in July.<p>[0] -- <a href="https://github.com/microsoft/pyright">https://github.com/microsoft/pyright</a><p>[1] -- <a href="https://github.com/python/mypy">https://github.com/python/mypy</a></p>
]]></description><pubDate>Mon, 07 Oct 2024 20:46:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=41770860</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=41770860</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41770860</guid></item><item><title><![CDATA[New comment by wdroz in "Python 3.13.0 Is Released"]]></title><description><![CDATA[
<p>After this month, Python 3.8 will be end-of-life, so maybe you can push internally to upgrade python.</p>
]]></description><pubDate>Mon, 07 Oct 2024 16:28:58 +0000</pubDate><link>https://news.ycombinator.com/item?id=41767699</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=41767699</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41767699</guid></item><item><title><![CDATA[New comment by wdroz in "Python 3.13.0 Is Released"]]></title><description><![CDATA[
<p>With the 3.13 TypeIs[0] and the 3.10 TypeGuard[1], we can achieve some of Rust's power (such as the 'if let' pattern) without runtime guarantees.<p>This is a win for the DX, but this is not yet widely used. For example, "TypeGuard[" appears in only 8k Python files on GitHub.[2]<p>[0] -- <a href="https://docs.python.org/3.13/library/typing.html#typing.TypeIs" rel="nofollow">https://docs.python.org/3.13/library/typing.html#typing.Type...</a><p>[1] -- <a href="https://docs.python.org/3.13/library/typing.html#typing.TypeGuard" rel="nofollow">https://docs.python.org/3.13/library/typing.html#typing.Type...</a><p>[2] -- <a href="https://github.com/search?q=%22TypeGuard%5B%22+path%3A*.py&type=Code&ref=advsearch&l=&l=">https://github.com/search?q=%22TypeGuard%5B%22+path%3A*.py&t...</a></p>
]]></description><pubDate>Mon, 07 Oct 2024 15:21:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=41766912</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=41766912</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41766912</guid></item><item><title><![CDATA[New comment by wdroz in "Achieving high Python performance with code generation (2022)"]]></title><description><![CDATA[
<p>I agree, you can also use Rust with PyO3[0] and Maturin[1]. It's far easier than  what the author is doing is the article.<p>[0] -- <a href="https://github.com/PyO3/pyo3">https://github.com/PyO3/pyo3</a><p>[1] -- <a href="https://github.com/PyO3/maturin">https://github.com/PyO3/maturin</a></p>
]]></description><pubDate>Fri, 06 Sep 2024 14:13:16 +0000</pubDate><link>https://news.ycombinator.com/item?id=41466425</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=41466425</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=41466425</guid></item><item><title><![CDATA[New comment by wdroz in "Apache Software Foundation Is Retiring Its Feather Logo"]]></title><description><![CDATA[
<p>Most people in tech will roll their eyes when they hear this, but they'll keep their mouths shut.</p>
]]></description><pubDate>Thu, 18 Jul 2024 16:16:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=40997134</link><dc:creator>wdroz</dc:creator><comments>https://news.ycombinator.com/item?id=40997134</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=40997134</guid></item></channel></rss>