HNHacker News
TopNewBestAskShowJobs

zoogeny

4,173 karma · joined September 20, 2022

I only believe in one thing on HN: if you reply to me, even to disagree, but you are polite - then I will upvote you.
submissionscomments
zoogeny··on .NET (OK, C#) finally gets union types
This is a classic debate in programming, literally:

2001: "Beating the Averages" (Paul Graham) [1]

2006: "Can Your Programming Language Do This?" (Joel Spolsky) [2]

Both of these articles argue for the thesis that programmers that have been deprived of certain language features often argue that they don't need those features since they are already comfortable working around the lack of said features.

It's a fancy way of arguing: you don't know what you're missing because you've never had it. Or, don't knock it until you try it.

Consider, is your argument a) I've never used it and don't see a need for it, or b) I've used it before and didn't get any benefit?

1. https://paulgraham.com/avg.html?viewfullsite=1

2. https://www.joelonsoftware.com/2006/08/01/can-your-programmi...

zoogeny··on -​-dangerously-skip-reading-code
> ... then you can fix it

I recall working on a project that used (MSVC) VC++ and a coworker found a bug in the compiler. We reported the issue to Microsoft and they eventually patched it.

You may find yourself arguing explicitly for open source dev tools if you continue down this line. There are many commercial cases where "you can fix it" does not apply to the dev toolchain and you will find yourself reliant on a provider. At that point, the trustworthiness of "compiler provider" and "local LLM provider" is the pertinent discussion (e.g. provider vs. provider instead of LLM vs compiler).

zoogeny··on Electrobun 2.0 will be decoupled from Bun due to the Rust rewrite
I think it is interesting, using your framing, to consider why people may or may not believe that one million lines of code could be reviewed.

I mean, until very recently, the idea that one million lines of code could be written (rather than mechanically translated) in a month was unbelievable.

It is clearly the case that times have changed since the tools have been updated. So if we challenge one assumption, why not also challenge the other?

Bun presumably will have access to Mythos, which is purportedly reviewing million line code-bases (Mozilla, etc.) and uncovering real value for the devs of those projects.

I find it hard to deny extrapolating these trends to this Bun rewrite.

zoogeny··on Electrobun 2.0 will be decoupled from Bun due to the Rust rewrite
I think a more apt analogy (or cliche) is canary in the coalmine.
zoogeny··on Electrobun 2.0 will be decoupled from Bun due to the Rust rewrite
Who do you mean when you say "none of them"?

At the least, my interpretation of deno lore is that they tried to ditch npm and found this limited their adoption so significantly that they had to patch it back in. That would provide sufficient warning to me that attempting to move away from npm was unwise.

zoogeny··on Oura says it gets government demands for user data
It generally has to do with risk models, especially in single tenant environments.

What I mean is, say I am a b2b service provider and I have a single database for some subset of my clients. That is, multiple clients data are held in the same database. There are many ways to do this but one way I have see is BYOK (Bring Your Own Key). You can have your clients give you secure access to a public/private key pair (e.g. through AWS secrets manager). Then you encrypt anything that gets written into the database using their key.

This means that if there is some security hole in your software that accidentally allows data to be exfiltrated from your servers (e.g. one malicious client sends API requests that allow for a query of data from another target client), the data the API returns will be encrypted using the target clients public/private key.

My own experience with security is that nothing is perfect and good security is like an onion. Encryption at rest isn't perfect and won't handle every possible malicious attack, but it is a layer in the broader strategy. The attacker has to both find a way to exfiltrate the data and trick the server into revealing the shared key. The idea being it is harder to do both than it may be to do either individually.

zoogeny··on -​-dangerously-skip-reading-code
>... my first bet would be specifications ... and tests ... If I had to roll out such a development process today, I’d make a standardized Markdown specification the new unit of knowledge for the software project.

I've found that adopting RFC Keywords (e.g. RFC 2119 [1]; MUST, SHOULD, MAY) at least makes the LLM report satisfaction. I'd love to see a proper study on the usage of RFC keywords and their effect on compliance and effectiveness.

1. https://www.rfc-editor.org/info/rfc2119/

zoogeny··on SpaceX launches Starship v3 rocket
At this point in time, Musk can afford to ignore the stock price since he will retain sufficient shares (with 10x voting rights if I am understanding correctly) to outvote any board.

However, some projections I have seen suggest even the public raise won't be enough for the entire vision (which includes LEO data centers AND trips to the Moon and Mars). That means he will either have to find the revenue or eventually sell even more shares. It will only be at that point he will care about stock price.

zoogeny··on As researchers age, they produce less disruptive work
This feels apt in more than just science/technology. It matches my experience with culture as well, e.g. music and movies.
zoogeny··on UAE to leave OPEC
I think you might be overestimating how liberal the protesters were. Source: I was in Tahrir square during the protests and spoke with many Egyptians.

Almost all of the complaints I heard while I was in Egypt were about corruption and lack of opportunity. It was more frustration with rampant nepotism/cronyism and less a desire for liberalism. From the ground, it appeared to be driven by economic forces and not political ideology.

In fact, many Egyptian men that I spoke to made the argument for the continued oppression of women (e.g. the full burqa and absence from work). In general, the populace was decidedly anti-liberal.

The election of the Muslim Brotherhood happened after I left the country, but it was no surprise to me at all. The fact that they attempted to change the constitution so quickly after their victory was unwise, and the subsequent coup by the West was just as unsurprising.

zoogeny··on Ghostty is leaving GitHub
If I was OpenAI / Anthropic, I would see this as a massive opportunity.

I mean, why wouldn't you want to consolidate git repos, a heroku/fly.io/vercel like container system and direct access to web-based coding tools. They have the coding models and agents, slap a web interface over Claude Code running in a container, allow for commits and deploys. Control the entire stack.

zoogeny··on How to be anti-social – a guide to incoherent and isolating social experiences
As others have noted, this is avoidant behavior, not anti-social.

Worth taking a look at the Wikipedia for Attachment styles [1]. The two types are Dismissive-Avoidant and Fearful-Avoidant. Either can be superficially mistaken for anti-social, although Dismissive-avoidant tends to present a bit closer to anti-social.

1. https://en.wikipedia.org/wiki/Attachment_in_adults

zoogeny··on How to be anti-social – a guide to incoherent and isolating social experiences
I would argue it depends on the context. Of course, gaining enough experience on which contexts are worth persevering for which duration is it's own thing.

The rubric I give to juniors is a bit more simple: if you get stuck, consider alternatives that you haven't tried out. Alternatives are of a few types including: relevant evidence/facts you can gather that you haven't yet gathered, and attempts you haven't tried yet. As long as you have alternatives keep trying them (gather evidence, make attempts). Once you run out of alternatives then seek help (avoid spinning wheels).

This way when a junior comes to me I can ask them to list the alternatives they have already tried. If they haven't tried obvious alternatives (gathered facts and reasonable attempts) I send them back. If they've tried all the alternatives I can think of then I get involved.

I'll note that this tends to work when contact between team members is relatively frequent (e.g. once a day) so I can get a sense of how long the junior has been working on a task to avoid rabbit-holing.

zoogeny··on Sabotaging projects by overthinking, scope creep, and structural diffing
I use it for cleaning all the time. Whenever I have dishes, I always give myself permission to do as little as I want knowing that one clean dish is better than nothing. Most often I end up doing them all.

The other saying I say is "completion not perfection". That helps me in yard work especially. I'm not going for the cover shot of "Better Homes and Gardens", I just need the lawn to be cut.

zoogeny··on Sabotaging projects by overthinking, scope creep, and structural diffing
It's worth noting that this is a kind of different "nit" than something that might be attached to a line of code. Like, someone might "nit" using a bunch of if statements where a switch statement might work, or if someone uses a `for each` where a `thing.map` would do.

What I am describing would be something higher level, more like a comment on approach, or an observation that there is some high-level redundancy or opportunity for refactor. Something like "in an ideal world we would offload some of this to an external cache server instead of an in-memory store but this is better than hitting the DB on every request".

That kind of observation may come up in top-level comment on a code review, but it might also come up in a tech review long before a line of code has been written. It is about extending that attitude to all aspects of dev.

zoogeny··on Sabotaging projects by overthinking, scope creep, and structural diffing
A saying I've come across is: "Don't let perfect be the enemy of good"

I had a coworker who would always be diplomatic about code changes he felt could be improved but when he felt he was nitpicking, where he would say: It's better than it was. It allowed him to provide criticism while also giving permission to go ahead even if there were minor things that weren't perfect. I strongly endorse this kind of attitude.

zoogeny··on Musicians are manufacturing sold-out shows
As an aside, I've noticed an uptick in the amount of YouTube ads for music artists and their live shows. The amount of faux-organic hype being generated feels like it has increased recently, with those same artists who I have never heard of showing up on podcasts. It feels like a new era of payola.
zoogeny··on John Ternus to become Apple CEO
There is some good analysis here, but your argument about the Vision Pro being a content failure doesn't hit for me. It isn't just Apple that has failed in this space, we have Meta, Valve, HTC and a few others who have all had pretty lack-luster results. VR as a product category just doesn't seem to have caught on.
zoogeny··on John Ternus to become Apple CEO
I've been critical of Cook at times because I feel his vision was a business vision more than the kind of futurism I felt from Jobs. Cook was the ultimate bean counter, hyper-optimizing Apple from a financial and operational perspective. I felt like he took less risks and was mostly squeezing every single advantage that Apple had to its limit.

But I cannot argue with the results the man achieved. Especially the transition to A-series and then M-series chips has been an incredible success. Perhaps the biggest flop was the Apple Vision Pro, but it is hard to really call him out on that since it wasn't that Apple lost a battle, it was that the product category just hasn't caught on (yet). Siri is another place where Apple has lagged but they could very easily catch up with the massive interest in local AI on the mac minis.

I think it will be difficult to look back on his legacy without giving him a large share of credit for Apple's continued success.

zoogeny··on AI Resistance: some recent anti-AI stuff that’s worth discussing
I don't agree, in fact I would say if I was surrounded by people glorifying violence that would suggest I was in an extreme minority.

It reminds me of similar late-stage-capitalism like activity, from the assassination of the insurance company CEO, the fire-bombing of Tesla's, etc. It is hard to disentangle hate that is based on economic inequality or power imbalance from hate directed explicitly at AI. That is especially true since one narrative suggests that both types of inequality (economic and power) may be accelerated by an unequal distribution of access to AI.

So we might end up in an argument over whether the hate that drives the violence is towards AI at all, or if that is merely a symptom of existing anti-capitalist sentiment that is on the rise.

zoogeny··on AI Resistance: some recent anti-AI stuff that’s worth discussing
That is why I question my own bias. One possible explanation is that I am AI positive. So when people test out "What do you think about AI?" my own responses are generally positive. That probably filters out people who don't want to argue or contradict.

This kind of effect would work both ways. People who are non-confrontational in general will choose to keep quiet if their opinions differ. In this view, both pro-AI and anti-AI sides might find themselves having their bias confirmed due to opposing views self-silencing to avoid conflict.

zoogeny··on AI Resistance: some recent anti-AI stuff that’s worth discussing
All I can offer is my anecdotal experience. One teacher was describing his usage to generate quizzes on material. He gets course material in the form of pdfs, uploads it to the AI and gets it to generate questions.

On the flip side, one of my other teacher friends has instituted a no phone policy in his classroom.

zoogeny··on AI Resistance: some recent anti-AI stuff that’s worth discussing
I often question my own bias on this because in my interactions with local non-tech people, the adoption of AI has pretty much affected everyone I know and it is by my estimation a majority positive reaction. I live in a fairly rural part of the PNW.

So when I read "People hate what AI is doing to our world." it honestly feels like either I am completely deluded or the author is. It feels like a high school bully saying "No one here likes you" to try to gaslight his victim.

I mean, obviously there are many vocal opponents to AI, I see them on social media including here on HN. And I hear some trepidation in person as well. But almost everyone I know, from trades-people to teachers, are adopting AI in some capacity and report positive uses and interactions.

zoogeny··on Anthropic downgraded cache TTL on March 6th
Interesting idea. I suppose one could also have response settings (e.g. max response tokens) to ensure the model doesn't waffle on and run up costs. In a best-case scenario "ping" would be one or two input tokens and a "pong" response would be one or two output tokens, so the cost of the operation would be the preserved context size times the cache read cost (one could avoid doing a cache write since I believe the cache read would reset the platforms cache timer).

It would be interesting to graph the cost/savings of this approach based on context length, percent cached, etc.

The UI for this is a bit tricky, I could mark conversations as "active" and then do the ping/pong dance on only active conversations and up to some determined max cached (e.g. 1 hour).

zoogeny··on Anthropic downgraded cache TTL on March 6th
As an aside, I built a tool to manage my own chat interface over the provider APIs. I added caching because the savings are quite significant and I have a little countdown timer that shows me how much time remaining until the cache is expired.

However, for the basic turn-based conversation the cache (at 5 minutes) is almost always insufficient. By the time I read the LLM response, consider my next question, write it out, etc. I frequently miss the cache.

I imagine it is much more useful if you have a tool that has a common prefix (like a system instruction, tool specs or common set of context across many users).

If you can get it to work frequently enough the savings are quite worth it.

zoogeny··on HyperAgents: Self-referential self-improving agents
The reason I have been pushing on this is that my own interest in attention shares a lot of features with your description.

I see attention itself as exhibiting wave-like structures. On one end there is the totally holistic, the systemic view in which there is an opening up of possibilities. On the other end is the totally reductionistic, the atomic view in which there is particular discernment between options. Attention seems to shift between these two modes, not as a naive binary but across a spectrum like we have been discussing.

In my view, neither view is privileged. In fact, I make an even more radical hypothesis that it is the motion between these polls that is the interesting feature of attention. At some points we focus on details, at other points we focus on systems - the defining feature is not the scope of attention at any particular time but its change over time.

What I note in your comments is a strong tendency towards either the massive systemic or the miniature atomic (the far extremes of the poles of attention). My push back has been towards the middle ground between them, towards the point at which awareness arises within your system. It is like you are zooming along a wave and slowing down at the top (universal scale) and bottom (atomic scale) but rushing through the mean (human scale).

Another way to say this, I don't believe either a systemic model nor a reductionist description will be adequate to describe how systems (or atoms) become lifelike. I believe the description will involve some oscillation between these perspectives, and that the most fruitful region to explore will be the region roughly at human scale, the place where we see the most advanced life.

However, your points about loss minimization and gravity are well worth further study and I thank you for bringing them to my attention.

zoogeny··on How to get better at guitar
I learned this way myself without being told. I was gifted a nearly ruined classical guitar that my mom took to a music shop and a guy got into working condition for $20. I then listened to every record, cassette and CD in our house looking for any guitar I could hear, especially individual notes, and learned dozens of songs.

It is painstaking and tedious, but it works. I look back on that time, the first few years I played, and I am genuinely surprised at some of the difficult songs I worked through in this way.

But now, over 30 years later and still playing regularly, I almost never do a note-for-note transcription of other peoples playing. I tend to either just get the gist of the harmony and melody by listening and get into the general ballpark. I often use ultimate guitar or other tab sites just for an outline of the chords (or download sheets from real books for jazz).

But my aim is always to fully memorize a piece, from beginning to end, so I can play it without any reference. That, for me, is the goal. Any way I get there (tabs, sheets, ear, demonstration, etc.) works fine in my books.

zoogeny··on HyperAgents: Self-referential self-improving agents
> intrinsic and intricate understandings

This is the hand-waving I am talking about right here. We've stepped up from some kind of self-reproducing wave-like patterns in some combination of mediums/fields and somehow moved passed "understanding" and onto its consequences.

Is your position that subjectivity is emergent or inherent? Either requires some kind of defense, either empirically or rationally.

Implying that we are a bunch of waves appreciating waves caused by gravity is poetic but it breaks down in the "appreciating" part. None of your examples of cyclic recurrence (river floods, moon cycles, etc.) lead to understanding, knowledge, experience or awareness.

This criticism doesn't suggest that rhythmic cycles, stability in wave-like systems, gravity, loss-minimization or any other part of your system are wrong. It suggests that there is something missing in either their combination or some additional missing piece.

There is a point, perhaps some region of a gradient/spectrum, where gravity and it's effect on wave-like fields manifests as subjectivity/understanding/experience/awareness. You are just hand waving past that implying it is "necessary". In that way, you are assuming rather than explaining.

zoogeny··on The Cassandra of 'The Machine'
> "I want a pre-made community" is just another way of saying "I am afraid of being alone."

Do you think people join other communities out of fear? Someone who decides to play magic the gathering, join a dance class, a book reading group, or art class?

If people join these kinds of communities sometimes out of fear of being alone, and sometimes for other reasons, why do you not extend the same generous interpretation to people who join religious communities?

Some people see no value in learning art, music, literature or poetry. Some people do. Some people see no value in exploring spiritual topics, some people do.

Consider everything you said and apply it to improv classes. What changes?

zoogeny··on Further human + AI + proof assistant work on Knuth's "Claude Cycles" problem
For now. The term people use is "centaur", like the half-man-half-horse of mythology.

The AI CEO's are pointing out that when chess was "solved", in that Kasparov was famously beaten by deep blue, there was a window of time after that event where grandmasters + computers were the strongest players. The knowledge/experience of a grandmaster paired with the search/scoring of the engines was an unbeatable pair.

However, that was just a window in time. Eventually engines alone were capable of beating grandmaster + engine pairs. Think about that carefully. It implies something. The human involvement eventually became an impediment.

Whether you believe this will transfer to other domains is up to you to decide.

← PreviousPage 2 of 26Next →