Hacker Newsnew | past | comments | ask | show | jobs | submit | xpe's commentslogin

I downvoted because I'm interested in charitable, non-disparaging conversation. I post this so the above commenter doesn't confuse a downvote (1 bit of information) as validation of their claim. I'm personally uninterested in spending much time looking at Zig right now, but I'm keeping an eye on it and generally interested in the progression of languages over time.

Self-aware people are mindful about what "future them" might do in various scenarios, and they plan ahead to tamp down their worse tendencies. I don't keep a raspberry cheesecake in my fridge, even though that would maximize a certain kind of freedom (the ability to eat cheesecake whenever I want). I much prefer the freedom that comes with not being tempted, as it leads to better outcomes on things I really care about.

In a sense, it is a powerful kind of freedom to choose a language that protects us from the statistically likely blunders. I prefer a higher-level kind of freedom -- one that provides peace of mind from various safety properties.

This comment is philosophical -- interpret and apply it as you see fit -- it is not intended be interpreted as saying my personal failure modes are the same as yours. (e.g. Maybe you don't mind null pointer exceptions in the grand scheme of things.)

Random anecdote: I still have a fond memory of a glorious realization in Haskell after a colleague told me "if you design your data types right, the program just falls into place".


> Random anecdote: I still have a fond memory of a glorious realization in Haskell after a colleague told me "if you design your data types right, the program just falls into place".

There's a similar quote from The Mythical Man Month [0, page 102]:

> Show me your flowchart and conceal your tables, and I shall continue to be mystified. Show me your tables, and I won't usually need your flowcharts; they’ll be obvious.

And a somewhat related one from Linus [1]:

> I will, in fact, claim that the difference between a bad programmer and a good one is whether he considers his code or his data structures more important. Bad programmers worry about the code. Good programmers worry about data structures and their relationships.

[0]: https://www.cs.cmu.edu/afs/cs/academic/class/15712-s19/www/p...

[1]: https://lwn.net/Articles/193245/


I would rather live in a world where I can put a raspberry cheesecake in my fridge occasionally. Because I know how to enjoy cheesecake without having to buy it every week. Not a world where when I pick the cheesecake off the shelf in the store someone says "Raspberry cheesecake! You may be one of these people who is lacking in self awareness so let me guide you. Did you know that it might be unsafe! Are you sure it's going to lead to a better outcome?"

A programming language forces a culture on everybody in the project - it's not just a personal decision like your example.


I think I see it slightly differently. Culture is complex: I would not generally use the word “force” to describe it; I would say culture influences and shapes. When I think of force I think of coercion such as law and punishment.

When looking at various programming languages, we see a combination of constraints, tradeoffs, surrounding cultures, and nudges.

For example in Rust, the unsafe capabilities are culturally discouraged unless needed. Syntax-wise it requires extra ceremony.


> Most of these students are claiming mental health conditions and learning disabilities, like anxiety, depression, and ADHD. ... Obviously, something is off here. The idea that some of the most elite, selective universities in America—schools that require 99th percentile SATs and sterling essays—would be educating large numbers of genuinely learning disabled students is clearly bogus.

"Obviously"? "is clearly bogus?"

Not to me. I see too much rhetoric and assumptions. In an article in Reason magazine, I expect more -- to demonstrate careful thinking that cuts through lazy common-sense thinking.

To make sense of a situation, one of my favorite tools is simple: a causal diagram(s). See [1]. This requires effort, and it should. Making a useful, communicable model that forms the foundation for your argument takes practice. Here's a disability-related example: [2]

I want to live in a world where causal models are demanded by readers.

[1]: https://thesystemsthinker.com/wp-content/uploads/images/volu...

[2]: https://ibb.co/5XcGyLK0


Agreed. I don't find the 38 percent figure to be surprising. I have no basis on which to find it surprising so the author's incredulity is baffling.

> Anyway, denial or not, his vision of the likely future is one in which individual humans become irrelevant slaves to either AI or massive corporations. Why would any self-respecting human accept that outcome?

There is a difference between “accept” as in ‘this is what I would want’ and what actually happens.

There are lots of reasons why things don’t go the way individuals want them to. Predicting the future is hard. Practically speaking, people have constrained agency. Getting organized to make significant change can be hard (i.e. collective action problems) even when everybody knows things are messed up.


> I believe infrastructure of this kind should be stewarded by a mission-driven, non-commercial entity that prioritizes public benefit over private profit.

One of my pet peeves is people trotting out “I believe” statements. (Usually) I care much more about the evidence that backs the belief than the belief.

Putting aside my cantankerousness, I am glad Michael believes in setting up good incentives for the organization that will manage Ghostty. (But being glad right now doesn’t count for much.)

At a deeper level, my more precise complaint is people broadcasting “I believe” statements as if doing so should persuade us. It should not. “I believe” statements may often be personal and genuine, but they are so easily abused that perhaps they should be enumerated among the dark patterns of rhetoric.

(There are some ridiculous quote from the first episode of Silicon Valley by Mike Judge that pokes fun at the zealotry behind belief, but I can’t quote it off the top of my head.)

In the case of software projects with broad benefits that want continuity over a long period of time, I want to agree that the not-for-profit structure is a good choice and often than the alternatives. But I don’t know that this has been carefully studied.

My hunch would be there are stronger causal predictors such as governance mechanisms. Choosing an organization form is just step one. Smart governance, and long-term execution can only be shown with time.

Individuals with unaligned incentives will challenge any organization’s set of rules. In the same way that our immune system has to evolve over time to win, organizational rules at all levels have to evolve.

Also, I do think there’s a lot of opportunity for smarter legal structures after the machinations pulled by OpenAI.


It seems likely that some people have perceived what I wrote above as some kind of criticism of Ghostty or that it is now funded by a non-profit. That would be a misunderstanding [1].

Personally -- for context, not to be confused with an argument-from-authority -- I've worked in the not-for-profit sector (3+ orgs) as well as studying how to make it work better. There are people with immensely more knowledge than I, and I have learned from them, and I respect the lessons they try to convey.

In case it puts people at ease, yes, I want Ghostty to succeed. I tend to agree that a not-for-profit home is likely be a good choice, especially relative to an alternative where it might be mostly reliant on one person and/or beholden to corporate interests.

So what I am saying, at core? More or less: this is probably a good start but only a start. I am suggesting more awareness of:

1. There is a psychological tendency for people to _believe_ others who express more confidence. Being aware of this helps us notice it and prefer evidence over statements of belief.

2. What does evidence show about making OSS project succeed? Giving it a not-for-profit home seems like a good start, but how important is this relative to other choices? What does the evidence show?

To mention one place to start, here is a open-access article from the ACM that I skimmed: "Open Source Software Sustainability: Combining Institutional Analysis and Socio-Technical Networks" [2] However, I didn't find it particularly useful in answering my #2 question above. Also the paper seemed mostly to promote a method of analysis but didn't drive towards actionable nor causal recommendations.

[1]: Maybe the misunderstanding comes from one or more of the following?

(a) halo effect (e.g. "Michael is a good guy, your words imply an indirect criticism of him");

(b) tribalism (e.g. "you are either with us or against us");

(c) timing-oriented (e.g. "this is not the time to be critical; this is a time to be jolly.");

(d) past success implies future results (e.g. "Hack Club has done well so far, trust them");

(e) tone-policing (e.g. "You seem grumpy, dude");

(f) feeling lectured-at (e.g. "You seem to act like you know things we don't.")

All of these possibilities would involve a some degree of presumption about what is appropriate and some level of disengagement with the substance of what I'm writing. Remember, we have a big tent here with room for many different points of view.

[2] https://dl.acm.org/doi/pdf/10.1145/3555129


[flagged]


I would ask that you more carefully and neutrally reread my comment. Your questions do not match up with what I actually wrote. You seem to have injected your own uncharitable interpretations rather than commenting on what I wrote? This wastes everyone’s time and is against HN guidelines.

I don’t appreciate your sarcastic and snarky final penultimate sentence. If you reread my comment, you probably can see that I would agree there is no one perfect legal entity.

> Why do you assume Mitchell is just doing this without any research or reasoning?

I said nothing of the kind.

> Your laundry list of everything that might possibly go wrong with an open software project is not exactly useful.

I didn’t make any such laundry list (or even a list).

Saying “… that only you can see. Enjoy!” at the end of this is more than unkind; it is a jerk move.

Taken as a whole, the comment above isn’t just uncharitable; it mischaracterizes my comment completely and consistently.


A nicely done article by Robby, given that arguing definitions is too often a thankless waste of time. Some selections from [1] ...

> Arguing about definitions is a garden path; people wouldn’t go down the path if they saw at the outset where it led.

See [1] for some tips on moving past the fruitless arguments:

> Personally I’d say that if the issue arises, both sides should switch to describing the event in unambiguous lower-level constituents ...

> ... Or each side could designate a new word, like ‘alberzle’ and ‘bargulum,’

> ... and then both sides could use the new words consistently. That way neither side has to back down or lose face, but they can still communicate.

> And of course you should try to keep track, at all times, of some testable proposition that the argument is actually about.

> Does that sound right to you?

[1]: https://www.readthesequences.com/Disputing-Definitions


> Humans are the real audience for documentation.

Seeing "real" is a warning flag here that either-or thinking is in play.

Putting aside hopes and norms, we live in a world now where multiple kinds of agents (human and non-human) are contributing to codebases. They do not contribute equally; they work according to different mechanisms, with different strengths and weaknesses, with different economic and cultural costs.

Recall a lesson from Ralph Waldo Emerson: "a foolish consistency is the hobgoblin of little minds" [1]. Don't cling to the past; pay attention to the now, and do what works. Another way of seeing it: don't force a false equivalence between things that warrant different treatment.

If you find yourself thinking thoughts that do more harm than good (e.g. muddle rather than clarify), attempt to reframe them to better make sense of reality (which has texture and complexity).

Here's my reframing: "Documentation serves different purposes to different agents across different contexts. So plan and execute accordingly."

[1]: https://en.wikipedia.org/wiki/Wikipedia:Emerson_and_Wilde_on...


> I have found that more context comments and info damage quality on hard problems.

I'm skeptical this a valid generalization over what was directly observed. [1] We would learn more if they wrote a more detailed account of their observations. [2]

I'd like to draw a parallel to another area of study possibly unfamiliar to many of us. Anthropology faced similar issues until Geertz's 1970s reform emphasized "thick description" [3] meaning detailed contextual observations instead of thin generalization.

[1]: I would not draw this generalization. I've found that adding guidelines (on the order of 10k tokens) to my CLAUDE.md has been beneficial across all my conversations. At the same time, I have not constructed anything close to study of variations of my approach. And the underlying models are a moving target. I will admit that some of my guidelines were added to address issues I saw over a year ago and may be nothing more than vestigial appendages nowadays. This is why I'm reluctant to generalize.

[2]: What kind of "hard problems"? What is meant by "more" exactly? (Going from 250 to 500 tokens? 1000 to 2000? 2500 to 5000? &c) How much overlap exists between the CLAUDE.md content items? How much ambiguity? How much contradiction?

[3]: https://en.wikipedia.org/wiki/Thick_description


It helps when questions intended to resolve ambiguity are not themselves hopelessly ambiguous.

See also: "Help me help you" - https://en.wikipedia.org/wiki/Jerry_Maguire


Anyone want to commission an AI to make a sequel called Boing or Krill where you have to choose between boinging the spring or playing a game of snake (drawn as a line of krill)?

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: