<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: rockmeamedee</title><link>https://news.ycombinator.com/user?id=rockmeamedee</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Wed, 05 Aug 2026 08:16:53 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=rockmeamedee" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by rockmeamedee in "200 Milliseconds"]]></title><description><![CDATA[
<p>I hate this. The style of LLM-written prose is unbearable, and I found several mistakes. This is "dazzle them with bullshit details" with no understanding behind it.<p>I assume the book this post is marketing is also AI slop too and I lost respect for its author.</p>
]]></description><pubDate>Tue, 04 Aug 2026 11:15:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=49166969</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=49166969</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49166969</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Rewriting Bun in Rust"]]></title><description><![CDATA[
<p>For Bun to not have torched its reputation among its users, it would have had to publish this blog post _before_ pressing merge on that PR.<p>That's what underlies most of the vitriolic reaction to the events, it was done really in a really rash way.<p>All they had to do was a)not gaslight people about your intentions when they found the branch b)publicly post the intent to do this, and then c)publish a doc like this one right before merging, ideally leaving the branch open for like a week in case anyone in the "community" finds things to fix.<p>Then those UB/Miri issues others found would have been "yay collaboration" boosts instead of negative issues that prove that the approach was risky/unthoughtful.<p>If you're going to cross a rubicon, maybe tell people a)that you actually want to do it, b)why you want to do it and c)what it looks like after you've done the rewrite.</p>
]]></description><pubDate>Thu, 09 Jul 2026 11:40:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=48844272</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=48844272</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48844272</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Has_not_been_viewed_much"]]></title><description><![CDATA[
<p>Reminds me of the "mathematical proof that there is no least interesting number". 
Because if there was a "least interesting number", that would make it interesting: it would have this unique property of being "the least interesting".<p>Here each candidate for "least interesting art" loses that property in much the same way, becoming interesting by being not_viewed_much.</p>
]]></description><pubDate>Mon, 06 Jul 2026 08:47:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=48802206</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=48802206</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48802206</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Grit: Rewriting Git in Rust with agents"]]></title><description><![CDATA[
<p>I don’t understand. Gitoxide exists and is great.<p>It might have missing pieces, but it’s easier to vibecode any needed networking additions to Gitoxide (which is maintained) than to just go and burn tokens trying to clone all of git again.<p>Git wants to add Rust. Gitoxide is a multi year project that’s going to be more maintained than an ad-hoc “it says it passes the test” vibeclone.<p>I’m not even against vibecloning things when it’s useful, but this shows no benefits. Git is a beloved tool that few people dislike, it’s not like vinext (people disliking the vendor lock-in they have with nextjs).<p>Also execs should keep in mind that “we burned thousands of dollars on tokens to re-create this beloved software so we can have our own copy”, even without the copyright/licensing argument, just isn’t something positive that the community will react positively to.<p>It doesn’t feel nice to see your favourite works cloned for no benefit. We’re past the “it was an experiment to see how far AI can go” stage now.</p>
]]></description><pubDate>Wed, 10 Jun 2026 05:47:47 +0000</pubDate><link>https://news.ycombinator.com/item?id=48471944</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=48471944</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48471944</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Ask HN: What are tools you have made for yourself since the advent of AI?"]]></title><description><![CDATA[
<p><a href="https://github.com/amedeedaboville/mish" rel="nofollow">https://github.com/amedeedaboville/mish</a> 
A mosh clone that uses QUIC as the transport layer so it can do both “unreliable datagrams” like UDP and also a TCP-like reliable stream, so it has scrollback buffer.<p>Also QUIC means the crypto is handled for me, no need to trust the LLM to hand roll its own crypto.<p>Cool Rust libraries enable this like alacritty for the terminal, and being able to have russh (rust implementation of ssh) means it works even if ssh isn’t installed (eg on windows which og mosh never supported).<p>Claude tested this thing forwards and backwards: e2e tests, simulated (foundationDB like) tests for the network and for tokio async thread ordering, 12 different fuzzing targets, even some light model checking on the protocol itself. Each fuzzing round found bugs.<p>Except for a few “it may have bugs, I have only proven it correct” scenarios I’d say it’s looking like it’ll be as trustworthy as (maybe more than?) the original. I’m really happy with it.</p>
]]></description><pubDate>Tue, 09 Jun 2026 16:12:36 +0000</pubDate><link>https://news.ycombinator.com/item?id=48463013</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=48463013</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48463013</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Cursor Composer 2 is just Kimi K2.5 with RL"]]></title><description><![CDATA[
<p>What does this mean, that you can take Kimi and RL finetune it a little more and blow the big AI shops out of the water?<p>Would this have been extensively fine tuned, beyond what Anthropic/OAI would do themselves?<p>I guess this is Cursor's own benchmark, so you can finetune on your own dataset and get better results on your own specific tasks I guess.</p>
]]></description><pubDate>Fri, 20 Mar 2026 14:53:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=47455434</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=47455434</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47455434</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Faster asin() was hiding in plain sight"]]></title><description><![CDATA[
<p>I had no idea, but this "wiggle" is required for an optimal approximation, it's called the "equioscillation property" [<a href="https://en.wikipedia.org/wiki/Equioscillation_theorem" rel="nofollow">https://en.wikipedia.org/wiki/Equioscillation_theorem</a>].<p>For a polynomial P (of degree n) to approximate a function F on the real numbers with minimal absolute error, the max error value of |P - F| needs to be hit multiple times, (n+2 times to be precise). You need to have the polynomial "wiggle" back and forth between the top of the error bound and the bottom.<p>And even more surprisingly, this is a necessary _and sufficient_! condition for optimality. If you find a polynomial whose error alternates and it hits its max error bound n+2 times, you know that no other polynomial of degree n can do better, that is the best error bound you can get for degree n.<p>Very cool!</p>
]]></description><pubDate>Thu, 12 Mar 2026 14:01:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=47350647</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=47350647</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47350647</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Maintenance: Of Everything, Part One"]]></title><description><![CDATA[
<p>I'm interested in the topic, and the book cover looks great, so I'll probably read it.<p>But it seems a bit "Maintenance: For Boys". The items mentioned on this page are "the maintenance of sailboats, vehicles, and weapons", and "Soviet tanks, or tricked-out Model Ts".<p>No mention that for millenia we were mending our clothes, cleaning our houses, maintaining our food systems.<p>The reason this book sounds interesting is that maintenance is systematically undervalued, and basically in our human history pushed onto women and the lowest social classes. But the marketing material seems to highlight only the "sexy" stuff like weapons and vehicles. Where's the maintenance of washing our hands, washing our clothes, cleaning our streets?<p>There's this artist, Mierle Laderman Ukeles, who was the "Artist in Residence" at NYC's department of sanitation in the 70s, and tried to use conceptual art as a way to highlight the work of the department and make "maintenance art" a thing. I'm interested in that kind of re-valuing of maintenance.<p>I bet this book will be interesting, I just don't like the framing as "Maintenance: Of Everything" since it's clearly not the whole story. Hopefully part 2 has a broader scope and mindset.</p>
]]></description><pubDate>Wed, 21 Jan 2026 10:53:05 +0000</pubDate><link>https://news.ycombinator.com/item?id=46703786</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=46703786</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=46703786</guid></item><item><title><![CDATA[New comment by rockmeamedee in "PYX: The next step in Python packaging"]]></title><description><![CDATA[
<p>Yeah, uv is cool and a step above conda, but that business model doesn’t look very profitable…<p>They did say they want their thing to have understanding of the code, so maybe they’ll sell semgrep-like features and SBOM/compliance on top.
Semgrep is ok popular, but if it maybe bundled into something else (like the package registry itself) that might get enough people over the line to buy it.<p>Private registries and “supply chain security” tools individually aren’t the hottest market, but maybe together the bundle could provide enough value. Let’s see how it goes.</p>
]]></description><pubDate>Thu, 14 Aug 2025 13:06:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=44899925</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=44899925</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44899925</guid></item><item><title><![CDATA[New comment by rockmeamedee in "The US dollar is on track for its worst year in modern history"]]></title><description><![CDATA[
<p>yeah but they're still >50% off SFBA salaries. SFBA comp for a sr dev can easily be $200k+ (and can go higher, lots of anecdotes on here about $350k+ salaries at BigtechCos), for an EU dev scratching 90k euro is considered "good". Devaluing the dollar by 10% and increasing the price of EU salaries by 10% doesn't really change the picture.</p>
]]></description><pubDate>Fri, 04 Jul 2025 08:35:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=44462456</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=44462456</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44462456</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Gemini Live with camera and screen sharing capabilities"]]></title><description><![CDATA[
<p>Oh this is great! I always have this problem. I find that's one of my biggest barriers when reading queueing theory content. I'm only doing it intermittently so I don't have memorized the meanings of ρ,σ,μ,λ...<p>Visually I also often confuse rho and sigma, and math texts will use psi ψ and phi φ in weird fonts and I can never tell them apart.</p>
]]></description><pubDate>Fri, 11 Apr 2025 10:02:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=43652236</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=43652236</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43652236</guid></item><item><title><![CDATA[New comment by rockmeamedee in ".localhost Domains"]]></title><description><![CDATA[
<p>I too made a version of this (just a small Go DNS resolver + port forwarding proxy) that lets you do a similar thing: <a href="https://gitlab.com/amedeedabo/zoxy" rel="nofollow">https://gitlab.com/amedeedabo/zoxy</a><p>I used the .z domain bc it's quick to type and it looks "unusual" on purpose. The dream was to set up a web UI so you wouldn't need to configure it in the terminal and could see which apps are up and running.<p>Then I stopped working the job where I had to remember 4 different port numbers for local dev and stopped needing it lol.<p>Ironically, for once it's easier to set this kind of thing up on MacOS than on Linux, bc configuring a local DNS resolver on linux (cf this taiscale blog post "The Sisyphean Task Of DNS Client Config on Linux"  <a href="https://tailscale.com/blog/sisyphean-dns-client-linux" rel="nofollow">https://tailscale.com/blog/sisyphean-dns-client-linux</a>). Whereas on Mac it's a couple commands.<p>I think Tailscale should just add this to their product, they already do all the complicated DNS setup with their Magic DNS, they could sprinkle in port forwarding and be done. It'd be a real treat.</p>
]]></description><pubDate>Fri, 11 Apr 2025 09:16:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=43651947</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=43651947</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43651947</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Google to buy Wiz for $32B"]]></title><description><![CDATA[
<p>Fastest growing but because they participated in a pay-for-play kickback scheme [1][2]?<p>So that number isn't really signal. Now that they're not paying CISOs to adopt the product they're not going to be growing as fast.<p>[1] <a href="https://www.bankinfosecurity.com/blogs/cyberstarts-program-sparks-debate-over-ethical-boundaries-p-3763" rel="nofollow">https://www.bankinfosecurity.com/blogs/cyberstarts-program-s...</a>
[2] <a href="https://www.calcalistech.com/ctechnews/article/b1a1jn00hc" rel="nofollow">https://www.calcalistech.com/ctechnews/article/b1a1jn00hc</a></p>
]]></description><pubDate>Sun, 23 Mar 2025 13:42:17 +0000</pubDate><link>https://news.ycombinator.com/item?id=43452880</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=43452880</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43452880</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Sync Engines Are the Future"]]></title><description><![CDATA[
<p>Idk man. It's a nice idea, but it has to be 10x better than what we currently have to overcome the ecosystem advantages of the existing tech. In practice, people in the frontend world already use Apollo/Relay/Tanstack Query to do data caching and querying, and don't worry too much about the occasional overfetching/unoptimized-ness of the setup. If they need to do a complex join they write a custom API endpoint for it. It works fine.  Everyone here is very wary of a "magic data access layer" that will fix all of our problems. Serverless turned out to be a nightmare because it only partially solves the problem.<p>At the same time, I had a great time developing on Meteorjs a decade ago, which used Mongo on the backend and then synced the DB to the frontend for you. It was really fluid. So I look forward to things like this being tried. In the end though, Meteor is essentially dead today, and there's nothing to replace it. I'd be wary of depending so fully on something so important. Recently Faunadb (a "serverless database") went bankrupt and is closing down after only a few years.<p>I see the product being sold is pitched as a "relational version of firebase", which I think good idea. It's a good idea for starter projects/demos all the way up to medium-sized apps, (and might even scale further than firebase by being relational), but it's not "The Future" of all app development.<p>Also, I hate to be that guy but the SQL in example could be simpler, when aggregating into JSON it's nice to use a LATERAL join which essentially turns the join into a for loop and synthesises rows "on demand":<p><pre><code>  SELECT g.*, 
         COALESCE(t.todos, '[]'::json) as todos
  FROM goals g
  LEFT JOIN LATERAL (
    SELECT json_agg(t.*) as todos
    FROM todos t
    WHERE t.goal_id = g.id
  ) t ON true
</code></pre>
That still proves the author's point that SQL is a very complicated tool, but I will say the query itself looks simpler (only 1 join vs 2 joins and a group by) if you know what you're doing.</p>
]]></description><pubDate>Fri, 21 Mar 2025 10:29:40 +0000</pubDate><link>https://news.ycombinator.com/item?id=43433958</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=43433958</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43433958</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Apple Vision Pro: Apple’s first spatial computer"]]></title><description><![CDATA[
<p>Like a non-toy version of this: <a href="https://artsandculture.google.com/story/ar-synth/7AUBadCIL5Tnow?hl=en" rel="nofollow">https://artsandculture.google.com/story/ar-synth/7AUBadCIL5T...</a></p>
]]></description><pubDate>Mon, 05 Jun 2023 21:46:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=36204325</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=36204325</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=36204325</guid></item><item><title><![CDATA[The Missing Middle in Tech Education]]></title><description><![CDATA[
<p>Article URL: <a href="https://amedee.me/missing-middle/">https://amedee.me/missing-middle/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=33695476">https://news.ycombinator.com/item?id=33695476</a></p>
<p>Points: 3</p>
<p># Comments: 0</p>
]]></description><pubDate>Mon, 21 Nov 2022 17:45:15 +0000</pubDate><link>https://amedee.me/missing-middle/</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=33695476</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33695476</guid></item><item><title><![CDATA[Debugging Is Science]]></title><description><![CDATA[
<p>Article URL: <a href="https://amedee.me/2022/11/09/debugging/">https://amedee.me/2022/11/09/debugging/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=33549337">https://news.ycombinator.com/item?id=33549337</a></p>
<p>Points: 1</p>
<p># Comments: 1</p>
]]></description><pubDate>Thu, 10 Nov 2022 16:51:50 +0000</pubDate><link>https://amedee.me/2022/11/09/debugging/</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=33549337</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33549337</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Queueing Theory"]]></title><description><![CDATA[
<p>As a regular programmer, I got really into queuing  theory thinking I was going to learn secrets of performance tuning, then was slightly disappointed.<p>But it turns out the simple parts of it go a long way! Eg at work we have a single deployment queue for a monorepo. At first approx this is an MD1 queue (deploy job takes roughly the same amount of time every time, though arrivals are actually way spikier than poisson), and realized that wait time was inversely proportional to total utilization.<p>While the infra team was saying “we do X deploys per day out of 4X and are only at 25% capacity”, I realized even hitting 2X would more than double the already bad wait time.<p>What happened is that a few initiatives were under way to increase capacity, but then out of nowhere the queue got log jammed (bc of high arrival rate variability) and we had to switch to Gitlab merge trains, which run CI concurrently on the optimistic result of merging. I wrote about it here: <a href="https://engineering.outschool.com/posts/doubling-deploys-gitlab-merge-trains/" rel="nofollow">https://engineering.outschool.com/posts/doubling-deploys-git...</a><p>I’m planning on writing a blog post about the math of CI/CD deploy queues as G/D/1 queues.<p>For a programmer’s view of queuing theory and great performance testing foundations, I highly recommend “Analysing Computer system performance with Perl:PDQ” (don’t worry about the Perl, the book is very relevant) <a href="http://www.perfdynamics.com/iBook/ppa_new.html" rel="nofollow">http://www.perfdynamics.com/iBook/ppa_new.html</a>, which shows examples of queues inside computer systems and how to model them.
The author has a nice little library to model different computer systems you come across.<p>I liked realizing that the dreaded “coordinated omission” problem in load testing (when you can only generate X rps and the server can handle more than that, your numbers are bunk) is actually when you think you are modeling an open system but you don’t have enough resources and end up seeing the closed system behaviour.</p>
]]></description><pubDate>Sat, 15 Oct 2022 18:01:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=33217066</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=33217066</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33217066</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Programmers’ emotions"]]></title><description><![CDATA[
<p>The number one thing that got me to senior engineer, and will get me to staff as I improve (though staff has more of a relationship management component) is emotional management.<p>Staying in a long debugging session without ragequitting and getting to the fix.<p>Pushing through when I feel really dumb for not knowing how a  react hook works or how to test a particular feature.<p>Not getting bored (or recognising it and pushing through) when fixing a bug that is "trivial" but complicated.<p>Not getting angry when the codebase is not architected well or is hard to understand.<p>In every one of these situations, better emotional management has made me more productive, calmer, and I had a better outlook of the situation in the end, so my suggestions to external stakeholders about what to do next were more accurate.<p>And I'm still learning! I get bored and take 3x too long all the time.<p>This is maybe an exaggeration, but after you learn about for loops and functions, the rest of the job is emotional management.<p>Ok, maybe EQ becomes important a little bit after for loops, but way earlier than you think. Maybe after 1 year of experience.</p>
]]></description><pubDate>Sat, 30 Oct 2021 16:40:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=29050112</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=29050112</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29050112</guid></item><item><title><![CDATA[New comment by rockmeamedee in "Ask HN: Literature on crisis response?"]]></title><description><![CDATA[
<p>The term "crisis response" will get you info on PR crises and brings to mind the TV show Scandal.<p>The term you want for our field is "Incident Response", and the practice of 1)preventing them and 2)handling them 3)learning from them is Resilience Engineering. It's about investigating air plane crashes, nuclear meltdowns, errors during surgery, etc, and learning how humans keep complex systems running.<p>I recommend "Behind Human Error" by David Woods as a great starter there. A key insight of this field is that incidents aren't just "some idiot didn't follow the safety checklist", but often the safety checklist itself will cause the issue; at some level the errors happen because of complicated interactions between the system and even the safety mechanisms.<p>An interesting tech industry related document is the STELLA report [1] from a few tech companies comparing notes on incidents.<p>[1] <a href="https://snafucatchers.github.io/" rel="nofollow">https://snafucatchers.github.io/</a></p>
]]></description><pubDate>Fri, 26 Mar 2021 15:14:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=26593115</link><dc:creator>rockmeamedee</dc:creator><comments>https://news.ycombinator.com/item?id=26593115</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26593115</guid></item></channel></rss>