<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: qlkzy</title><link>https://news.ycombinator.com/user?id=qlkzy</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Thu, 06 Aug 2026 04:23:32 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=qlkzy" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by qlkzy in "The Valley of Webhooks"]]></title><description><![CDATA[
<p>Re-reading, I think the article is in a grey area, and I believe that there is a decent amount of human experience underpinning it. It certainly isn't 100% LLM, but it's a long way from 100% human.<p>But I wrote my commment after reading the article then the spec (<a href="https://welidev.github.io/scroll/" rel="nofollow">https://welidev.github.io/scroll/</a>), and so the spec was "top of mind".<p>The spec is just <i>awash</i> in LLM-isms. The cadence and rhetorical style are very Claudish. The visual style is basically "Claude's artifact plugin" (it may not be exactly that but it is an incredibly distinct signature). So the experience of reading the spec is very much an "AI slop" experience.<p>The reason I object to this is that the way these LLMs write is really well-tuned to gloss over small but critical details. And "small but critical details" are sort of the whole field of distributed systems.<p>This seems to be most true for Anthropic models (I am assuming there is some cultural defect in the way they give feedback), but it seems to be pretty universal, unless you give them some really strong stylistic anchor to a different style.<p>(As an aside, I sometimes wonder if this is part of the reason that LLMs seem from the outside to be succeeding disproportionately at mathematics: mathematics papers and mathematical notation may be a strong enough cultural force to override Anthropic's lack of taste and unlock the true power of the model).<p>I'm not saying there might not have been plenty of human guidance, but either way I don't think there's quite enough substance to this (based on everything I wrote in my comment) for this to feel like "a solution" either way.</p>
]]></description><pubDate>Wed, 05 Aug 2026 19:58:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=49188153</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=49188153</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49188153</guid></item><item><title><![CDATA[New comment by qlkzy in "The Valley of Webhooks"]]></title><description><![CDATA[
<p>This topic always surprises me. I do not understand the sequence of logic that leads people to build synchronisation mechanisms based <i>only</i> on webhooks.<p>Webhooks aren't at-least-once, nor at-most-once, nor are they guaranteed in-order. Some people build systems to make them more reliable, but if you really care about the data you need to think of a webhook delivery as best-effort, a bit like UDP.<p>That's before you get into all the extra complexities around these systems being owned by different people. For example, either or both system might have to roll back their database. Or either side might have a long-term bug in how they process webhooks, and now you have months of broken data.<p>My view is that the only reasonable thing is to start with the process that gets things back into sync if everything is broken. That almost certainly involves a poll or query of at least the upstream side, and maybe both sides.<p>I find that if you put a decent bit of engineering effort into that "disaster recovery" synchronisation, it can often act as the main or only synchronisation process for quite a lot of systems.<p>Stepping up from that, it's often useful to introduce webhooks as notifications only; that is, to provide a signal that some or all of the data is stale. You have to do a bit of consolidation, but this approach is usually enough to get completely reasonable latency for the kind of applications the author is describing.<p>Only if that wasn't enough for speed/scale reasons would I reach for a truly "push-driven" fast path. But you always have to be able to disaster recovery assuming the stream is wildly out of sync.<p>Some bits of the author's idea seem reasonable: certainly, I would love for there to be a standard protocol to request new data since some cursor or since some timestamp, ideally with some webhook notifications to give hints on when to poll.<p>The problem I have with the author's idea is that it is very strongly event-based, but the desired outcome <i>isn't</i> event-based. The desired outcome is almost always "the <i>state</i> over here looks like the <i>state</i> over there". Relying too strongly events ends up at the same kind of problem another level down: the "disaster recovery" script ends up wanting to compare the states anyway to figure out whether the events are broken.<p>Going fully event-sourced can work (although, I think, less often than advertised), but it really relies on everyone collectively agreeing on the same event stream being the source of truth. Once you start doing work across multiple organisations then that coordination is relatively rare.<p>What really surprises me is the variation in maturity on this topic. There seem to be people at all experience levels who are both doing this well and doing it badly. I have worked with people with decades of experience whose whole design just collapses if you ask "but what if X?" for some really banal values of X like "we have an outage for more than five minutes" or "we have to restore the DB to yesterday" or "someone, one time, accidentally merges a bug into master".<p>As an aside, I do find the obvious LLM-ness of the blog post and the proposal a bit disheartening. These are problems that require diligence and precision of thought. LLMs may be able to achieve those things, but that level of quality just isn't expressible in "Claudish".</p>
]]></description><pubDate>Wed, 05 Aug 2026 17:02:13 +0000</pubDate><link>https://news.ycombinator.com/item?id=49185629</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=49185629</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49185629</guid></item><item><title><![CDATA[New comment by qlkzy in "White House Response to “Make Unlocking Cell Phones Legal”"]]></title><description><![CDATA[
<p>ChuckMcM is agreeing with you AFAICT --- it's "not supporting X in favour of AT&T" i.e. preferring AT&T over the people.</p>
]]></description><pubDate>Mon, 04 Mar 2013 20:12:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=5320546</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=5320546</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=5320546</guid></item><item><title><![CDATA[New comment by qlkzy in "Wi-Fi “as free as air” – totally false story"]]></title><description><![CDATA[
<p>Note that sensing-based whitespace radio has a number of issues. The biggest one is the hidden node problem - you can interfere with receivers without being able to hear the transmitter. There is also the issue that the licensed users of the band need to be very interference-resilient for the first few ms of their transmissions, until all of the sensing-radio users realise that they aren't allowed to be there anymore (and then the sensing radios need to have a consistent way to keep the link up).<p>The first problem can be mitigated by making the sensing receiver significantly more powerful than the transmitter, although you still have issues with specific terrain layouts (e.g. something big and RF-attenuating between you and the transmitter). The second problem makes it very difficult to interoperate with <i>existing</i> licensees (who assume exclusive use of the spectrum); it may be possible to make it work better with new licensees.<p>There is another interesting approach to cognitive radio, which is to use a centralised database of spectrum allocation, and then use RF propagation models & surveys to find gaps in space & frequency where you can let people transmit - for example, there are big gaps between terrestrial TV transmitter zones, to avoid the multi-kW transmitters interfering with each other, where you can easily fit "big WiFi"-style transmitters transmitting at a few watts.<p>Obviously, there are a number of issues here (need GPS or an accurate location on installation, need internet access for the DB, need to restrict movement, inefficient without really good RF models, weather affecting RF propagation) which make this less of a panacea than sensing-based cognitive radio, but it is relatively simple and robust to implement. In particular, a lot of the issues disappear if you use it for "big WiFi" applications - access points already have a fixed location, internet access, and mains power.<p>It also opens the possibility of a much more dynamic marketplace for spectrum - if all spectrum users are checking with a centralised DB (at least in a particular band), then it becomes much easier to handle short-term/local licenses - for example, providing massive short-term additional cell/wifi service to big events and festivals.<p>tl;dr Cognitive radio is a very interesting and promising development, but it's <i>much</i> harder than initial intuition suggests.</p>
]]></description><pubDate>Fri, 08 Feb 2013 13:33:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=5187736</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=5187736</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=5187736</guid></item><item><title><![CDATA[New comment by qlkzy in "The Racket Blog: Dynamic Programming versus Memoization"]]></title><description><![CDATA[
<p>Trees are, in general, undirected (although it is often convenient to treat edges in rooted trees as being all directed towards or away from the root, to determine whether or not a graph is a tree it is necessary to consider the edges as undirected).<p>A tree is a connected undirected acyclic graph (or, equivalently, an undirected graph in which there is exactly one path between any pair of vertices).<p>A DAG may represent a tree (usually rooted) or it may not. Not all connected DAGs are trees e.g.:<p>a->b, a->c, b->d, c->d is a DAG, but not a tree.</p>
]]></description><pubDate>Sun, 26 Aug 2012 14:27:31 +0000</pubDate><link>https://news.ycombinator.com/item?id=4435154</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=4435154</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=4435154</guid></item><item><title><![CDATA[Best Practices: Response To 'Notes from the Mystery Machine Bus']]></title><description><![CDATA[
<p>Article URL: <a href="http://www.tbray.org/ongoing/When/201x/2012/08/11/Software-Axes">http://www.tbray.org/ongoing/When/201x/2012/08/11/Software-Axes</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=4392217">https://news.ycombinator.com/item?id=4392217</a></p>
<p>Points: 4</p>
<p># Comments: 0</p>
]]></description><pubDate>Thu, 16 Aug 2012 16:45:53 +0000</pubDate><link>http://www.tbray.org/ongoing/When/201x/2012/08/11/Software-Axes</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=4392217</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=4392217</guid></item><item><title><![CDATA[New comment by qlkzy in "The 5-minute Guide to C Pointers"]]></title><description><![CDATA[
<p>Don't you mean<p><pre><code>  (*ptr)
</code></pre>
is of type <i>int</i>?</p>
]]></description><pubDate>Thu, 16 Aug 2012 09:26:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=4390573</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=4390573</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=4390573</guid></item><item><title><![CDATA[New comment by qlkzy in "Is it a must for every programmer to learn regular expressions?"]]></title><description><![CDATA[
<p>I think that regular expressions have a good syntax for most typical (<i>small</i>) uses of regular expressions. Maybe the choice of special characters isn't ideal, and it might be nice to have 'English' versions of more special characters (similar to e.g. [[:digit:]] in POSIX), but for small regexes the (mostly) one-to-one mapping between characters in the pattern and characters in the string is a very nice and intuitive syntax.<p>I think the real problem is that we lack (or don't learn) good tools to bridge the gap between regular expressions and 'custom parser'. We're reluctant to refactor from '1 line of just-starting-to-be-horrible regex' to tens or hundreds of lines (depending on language and libraries) to do it 'properly', and so we end up stretching regular expressions beyond the point where they make life easier.<p>Perl has Parse::RecDescent (and probably several others), which is pretty close to the right thing, and clearly it's very doable in a lot of languages - anyone got any suggestions in other languages?</p>
]]></description><pubDate>Thu, 16 Aug 2012 09:22:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=4390564</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=4390564</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=4390564</guid></item><item><title><![CDATA[New comment by qlkzy in "The Trouble with Bright Kids"]]></title><description><![CDATA[
<p>While I accept that IQ has some statistically significant correlations with interesting things, and is stable within individuals, I don't think there is consensus as to what that actually means. But I might just need to read more. Actually, I always need to read more.<p>That aside, I think the core disagreement here is that (I think) we have both taken the same data (a lot of stuff surrounding 'hard work' and education is clearly utter rubbish) and taken it in two different directions: you've gone in a more innate-ability, behavioural-genetics direction (I think), while I'm more interested in things like the effect of practice. The nature-vs-nurture debate will probably outlive both of us, and there is evidence for both arguments.<p>Ultimately, I don't find innate stuff that interesting, because there is nothing I can do about it. I would rather focus on a minor factor that I can change than a major factor that I can't, and the research suggests that practice et al are far more than minor factors. So I focus on those. And until the debate is resolved, I will continue to espouse education policies which reflect that attitude.<p>Thanks for the references; a couple there that I hadn't seen before, and it's always worth reading stuff that disagrees with you.</p>
]]></description><pubDate>Mon, 28 Nov 2011 20:02:07 +0000</pubDate><link>https://news.ycombinator.com/item?id=3287364</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=3287364</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=3287364</guid></item><item><title><![CDATA[New comment by qlkzy in "The Trouble with Bright Kids"]]></title><description><![CDATA[
<p>(See my other reply for more on my understanding of innate ability)<p>> As far as I'm aware, ability is generally considered to be something along the lines of practice x innate talent.<p>Right, but it's not a simple multiplication (AFAIK/IMO). The research suggests that ultimately practice dominates. I can't think right now as to how to cast that as an equation, but it has more non-linear terms. As to the IQ chart, I'm not convinced that that trend is statistically significant; even if it is, IQ is a pretty funny metric for 'innate talent' in most contexts.<p>There's also the issue of the nature and quality of the practice. I can work arbitrarily hard at something, but unless I'm targeting that effort effectively and using appropriate feedback mechanisms, it's entirely possible for me to accomplish literally nothing. How one acquires the ability to practice effectively is the meta-problem, and one which I'm still working on.<p>In the particular case of math proofs (which I think you're referring to) you have the additional issue that (I think - I'm not a mathematician) proofs often require intuitive leaps. This raises additional problems, because (if you're thinking in terms of acquired ability rather than talent) intuition is typically associated with high levels of expertise - e.g. in the Dreyfus model, you expect intuitive solutions from the highest two levels ('proficient' and 'expert') which you'd expect only a fairly small proportion of individuals to reach (incidentally, the Dreyfus model also suggests that you don't really want 'proficient' or especially 'expert' individuals teaching the lower levels ('novice', 'advanced beginner' and 'competent') precisely because of this qualitative difference in problem-solving style, which validates the construct inasmuch as it reflects your experience). In this scheme, intuition is (horribly simplified) superb pattern-matching, which is almost certainly not what your hard-working students will have been practicing (in my experience, stereotyped 'hard workers' focus on the mechanical aspects of a subject). Teaching intuition/pattern-matching is of course <i>really</i> <i>hard</i>.<p>> What benefit do you feel will be gained by improving education for everyone, as opposed to helping those at the top? I.e., why do you believe better educated plumbers will provide more benefit than better educated scientists, engineers, artists and business leaders?<p>Currently, where I live (UK), it's well accepted that there are massive differences between private and public education, as well as within the public education system. From what I've written, you can probably guess that I don't really hold with the idea of innate talent, and I don't believe that you can necessarily differentiate between 'future plumbers' and 'future [scientists|artists|etc]' until late adolescence or possibly even later. Combining that with the fact that I think that equality of opportunity is really important, I'm not really comfortable with significant investment in optimising for 'gifted' individuals until we've run out of ways to add resources to bringing up weaker parts of the education system.<p>It's really hard to predict how altering the balance of ability will affect both the average and the top end - will improving the high achievers pull everyone else up with them? Will raising the median motivate the high achievers to do even better? - so I'd rather support the strategy which has obvious direct social benefits (improve equality of opportunity) rather than one with the potential to maybe advance the leading edge a little faster.</p>
]]></description><pubDate>Mon, 28 Nov 2011 16:34:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=3286501</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=3286501</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=3286501</guid></item><item><title><![CDATA[New comment by qlkzy in "The Trouble with Bright Kids"]]></title><description><![CDATA[
<p>Again, I'm not a psychologist, so this is only my (limited) interpretation of what I've read.<p>I'm not saying that there is <i>no</i> nature-component. <i>But</i>, (AFAIK) there is no real evidence for something that would correspond to some idea of 'Raw Smarts' that (a) has a meaningfully large effect compared to practice and experience, and (b) generalises.<p>What I've read suggests that, yes, there are a whole bunch of nature-components and nurture-components which initially serve to differentiate ability in young children. But the direct effects of these get quite rapidly dominated by the feedback loop of ability->motivation->practice->ability. So there's an initial differentiation - because of a subtle difference in brain chemistry, or earlier maturation, or better access to books, or competition with high-achieving siblings :); but in the longer term, there's a pretty consistent picture that excellence and ability at a high level is dominated by deliberate practice and sustained effort over time.<p>Of course, psychology research is hard to separate from its social context and underlying cultural assumptions, and it may just be that our egalitarian culture is uncomfortable with the idea of innate ability dominating, and steers research accordingly. Or I may just be missing the point entirely.<p>The essence of my point is that, as things currently stand, the research suggests that innate ability is not a significant component of ultimate achievement, and that we should therefore not predicate our approach to education upon the idea that it is dominant (which is what the comment I was replying to seemed to suggest).</p>
]]></description><pubDate>Mon, 28 Nov 2011 14:53:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=3286062</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=3286062</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=3286062</guid></item><item><title><![CDATA[New comment by qlkzy in "The Trouble with Bright Kids"]]></title><description><![CDATA[
<p>'Raw Smarts' is a slightly odd concept. I'm no psychologist, but I think that the majority of current research points towards the idea that ability in almost anything is essentially a consequence of practice and experience.<p>I think the real issue is telling kids that they have an innate gift for <i>anything</i>. If you tell them they're smart, there's a natural assumption not to bother working. If you tell them they're disciplined, they won't look for ways to keep themselves motivated.<p>I'd be more inclined towards saying something more along the lines of "you're doing really well at X" - providing useful, motivational feedback, without implying that no work is necessary.<p>Personally, as someone who coasted through a lot of school but ran into trouble later (effectively because I'd forgotten how to 'pedal') the two things I would have been most grateful for:<p>1. Balance. If someone has a facile grasp of e.g. science and maths, don't (from a young age) overly steer them towards specialising in it. Instead, say "for the rest of this academic year, you only need to do a 'maintenance' level of work on science, so we're going to take that time and spend it on areas you're less good at". Of course, this level of personal attention is expensive, because it implies stuff like small classes and high-quality teachers who care - but OTOH I was lucky enough to have those things, but not with this strategy.<p>2. Challenge. Science and maths were always easy for me, so I never had to work. This is damaging. So there would also have been value in doing the the converse of point (1) - saying "for the rest of this academic year, you only need to do a 'maintenance' level of work on the standard science curriculum, so we're going to use that as an opportunity for you to do harder, more independent work in those areas" and develop a better work ethic and an ability do do things independently. Again, needs lots of personal attention and even better teachers.<p>We sometimes do OK-ish at (2) - in a fairly haphazard kind of way, and partly because kids tend to do it for themselves - but I can't think of any examples of anyone really pursuing (1) (may be different in different cultures). This is an opportunity, because (1) requires a lot less deep subject knowledge, so is much more feasible for parents to pursue.<p>Ultimately though, optimising for the top end becomes expensive quite fast, and while it's important to keep pushing the boundaries, I'd much rather the investment was put into improving the state of education for everyone, rather than fine-tuning the path for those who will be at least OK regardless.</p>
]]></description><pubDate>Mon, 28 Nov 2011 08:35:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=3285111</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=3285111</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=3285111</guid></item><item><title><![CDATA[New comment by qlkzy in "Learn Emacs: Keyboard Macros"]]></title><description><![CDATA[
<p>Emacs has this feature [for all values of 'this feature' :)]<p>The documentation for the most convenient way to do it (there are others) is at:<p><a href="http://www.gnu.org/software/emacs/manual/html_node/emacs/Keyboard-Macro-Counter.html" rel="nofollow">http://www.gnu.org/software/emacs/manual/html_node/emacs/Key...</a></p>
]]></description><pubDate>Fri, 11 Nov 2011 12:41:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=3224389</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=3224389</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=3224389</guid></item><item><title><![CDATA[New comment by qlkzy in "Firefox 7 will use up to 50% less memory "]]></title><description><![CDATA[
<p>I use Pentadactyl (formerly Vimperator), and hide the tab bar entirely. 'Number of tabs' then becomes pretty meaningless, as all tab-switching is based on a history stack and regular expressions (a la Emacs buffers), so one just lets the buffer list grow. I only notice when there's a noticeable slowdown (which on this Core i7 with 3GiB RAM starts around 180 tabs).</p>
]]></description><pubDate>Thu, 11 Aug 2011 16:57:48 +0000</pubDate><link>https://news.ycombinator.com/item?id=2873716</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=2873716</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=2873716</guid></item><item><title><![CDATA[The LMAX Architecture]]></title><description><![CDATA[
<p>Article URL: <a href="http://martinfowler.com/articles/lmax.html">http://martinfowler.com/articles/lmax.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=2754931">https://news.ycombinator.com/item?id=2754931</a></p>
<p>Points: 22</p>
<p># Comments: 0</p>
]]></description><pubDate>Tue, 12 Jul 2011 14:59:00 +0000</pubDate><link>http://martinfowler.com/articles/lmax.html</link><dc:creator>qlkzy</dc:creator><comments>https://news.ycombinator.com/item?id=2754931</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=2754931</guid></item></channel></rss>