HN user

slx26

1,097 karma
Posts2
Comments424
View on HN

Receiving the flowers is one thing. Then having a video shared about it is another thing. And even beyond that, the second can also affect the perception on the first: maybe you thought it was something random at first, but then you realize it wasn't.

It's not like something changed magically for no reason because humans are weird.

In a local context, many kinds of "social networks" or spaces to share things with other people from the same area, specially related to art and culture. Also many local associations organizing events could use unique identities to make it easier to make reserves for events with food, races, slots in talks, concerts, etc. Many other kinds of specific applications are also possible. You could even organize games and augmented reality activities much more easily if people didn't have to create accounts for everything, we had an easy way to verify that a human is trying to use the service... and even more if we could verify some info like "this person is from this area" (though there are some workarounds for that). Mostly, use tech to reivindicate public space, which public administrations have a tendency to mismanage as if it was their own private space (lack of vision is typically also an issue). There are many other ways to do similar things, but that's what I had in mind when I talked about democratization.

But does it allow you to anonymously prove that you are a human? You don't want to go telling random websites who you are.

No one says this can't be done. In fact, it's explicitly mentioned in the essay, that the problem this approach has is that it's centralized and you typically can't use it as an anonymous proof of humanity, or disclosing information selectively.

So, why is this important? Well, while you can still make a website and trust you won't be popular enough to become a target, the truth is that without proof of uniqueness / humanity, many services and systems can't be put to the service of the people without potentially falling into an insane battle against spam, in protection of user data, in protection of privacy, etc. And while you can absolutely build lots of things without giving a shit about all this and actually be successful, it's simply immoral (and progressively becoming more and more legally restricted). If this was a solved problem, digital services could finally become truly democratized. Nowadays, this is the main issue preventing many programmers from setting up useful services, very often intended to serve the local community, requiring us instead to start a whole company, getting in touch with some lawyers and storing user data like their actual state IDs. Which we can't do if we don't intend to monetize the service! Without this barrier, we could really do a lot more for our local communities in the digital space.

Hey, I've seen the project in the past and it's very interesting, and definitely an improvement over existing alternatives. That said, I have one complaint quite unrelated to tech itself: I think the liberal use of the term "identity" is very inappropriate. Of course "identity" is an extremely hard term to even define, but as far as I can see ory kratos is only assisting with email and phone verification. To talk about "identity" on that context seems very out of place to me. Maybe there's more that I've missed, and if that's the case I'm sorry. I understand words have more than one meaning, but there are big challenges to solve with regards to identity in the digital world that as far as I can see ory doesn't try to solve at all, and we end up spending time reading through the docs and trying to see if someone is making a meaningful contribution to the field for nothing. I know competitors use the term irresponsibly too, but... nevermind.

Sorry for the rant and what may sound like a very negative comment, I wrote this quickly. I think it would be great to right away stop using the term "identity" so freely and use something else, or at least clearly explain what do you understand for identity. I think it would be great for programmers to start disambiguating the concept, and I think projects like ory have a good opportunity (that you yourselves created and built, of course!) to make it a bit better.

Funny thought: then we may characterize a complex system as a system that's (most of the time) too big to fail all at once, and whose resilience to failure simply arises from continued previous failure. Which sounds like another way of saying "I don't know what I'm doing, but it kinda works"... until it doesn't. Maybe when it has inevitably grown too big to be successfully maintained anymore.

And yet, at the same time, growth can't continue forever (unless you get into space colonization on artificial habitats and are able to develop that faster than population grows and other stuff we are not going to discuss now).

What happens, as the article indeed points out, is that many things keep breaking, and we keep fixing and repairing and improving and more things fail and stop working and then again we fix and replace them. And so on and so on. The main problem is that people suffers in that process. The system self-regulates, sure. Nature self-regulates all the time through natural selection, evolutionary pressure and competition. That doesn't make it right. We develop medicine because being human is the opposite of accepting the randomness, competition and cruelty of nature. We want to have control, we want people to be happy, we don't want to be exposed to arbitrary tragedy, unfairness, pain.

As I always say, don't confuse the comfort of your boat with the state of the sea. That you are comfortable riding the current wave of pressure doesn't mean no one is suffering. This doesn't mean we should never grow, but it means we should do it responsibly. Saying growth is already responsible because the world keeps self-regulating is just being blind to many of the dynamics of the system.

And ok, one may argue that finding an equilibrium is impossible. That when there are resources available, we will always start taking more and more, growing above our possibilities, taking water until we hit the bottom, dumping shit until it spills. Then pressure and competition kicks in, people fall, people suffer, self-regulation is the way and all is good again. I don't understand.

(sorry for the rant, I understand you may also have concerns about the rate of growth and welfare of people in the process, but I wanted to share this take anyway)

This reminds me of people who always forget their keys. I always thought: "nah that doesn't happen to anyone", and then I discovered it happens to a lot of people. Different brains work very differently, and there are some common bugs that affect some people but not others. See also those who can't stand watching a video to learn about a subject, versus those that can't stand reading. And that's even without getting started on personality disorders.

It's really hard to internalize it if you are not "weird" in any of those ways, but we should all be more aware of it.

Golang is my favorite language, and I really like the approach that the team takes. A few days ago I shared here some interesting comments from Griesemer on Golang enums.

But sure, let's not give any ideas or question anything ever again, someone might get offended.

Programming languages are lacking because they are too stuck in the "implementation plane" while trying to deal with lots of "system design" problems. Generics, traits, interfaces, union types and others are fundamentally targeted at giving developers more expressive power to describe the systems we are designing. We know there are many parts we could swap around, using different implementations, connecting some pieces here and there... and the system should make sense and work. We can see that it must work! But these features are trying to resolve problems from a very closely-connected but still different domain, and that's why we see so much friction when trying to use them. We try to encode system-level patterns in the implementation, and there's gonna be friction. We can see that these features give us power, and that's why we like them, but we also see the problems they cause, and that's when we get cold feet and say "yeah... maybe it's not such a great idea".

I'm actually really happy to get generics in golang, and I'm happy with the team giving it as much thought as they need, but we are only gonna get so far within the current paradigm of trying to model the universe from a few text files. Generics are nice, but we shall do better in the future!

Even when recognizing that there are a lot of bad actors in marketing, that's still an extremely over-optimistic perspective: at some point, tricking people becomes easier than improving the products, value propositions become muddier, and snake-oil starts to be used as the lubricant for business relationships. Only the most obvious offenders get run out of town, while most evolve and get to raise the new normal boiling point; as long as refining the snake-oil is cheaper than refining the actual products, the situation keeps getting worse.

Either the dynamics work in favor of the people, or they don't. That we continually mistake the comfort of our ships with the state of the sea is just the blessing and tragedy of our ignorance.

> Who does ultra-ephemerality benefit?

It helps create a sense of community very quickly, and it helps keep it alive.

Honestly, trying to judge Discord for its ability to structure information is simply missing its point. I dislike many things about Discord, but projecting my needs or preferences onto it and saying it's bad based on that alone is quite shortsighted.

My general complaint as a distinguished member of the leaky abstraction crowd is not that abstractions can be leaky, but rather that they are sold as if they weren't... with creators being so willing to ignore from how many places their abstractions leak.

This is not the case here. It clearly says: "we can deal with the simple cases nicely! but no promises beyond that!". It's fair.

My core argument is that tools do not solve problems, they transform them, and you can't trust a tool that doesn't acknowledge that. This one is saying it transforms the common cases into simple ones.

I don't have any strong opinion about it, but I have the same question: is it possible that in the long term the backend will be replaced by a custom one? And if not, what is the postgres backend bringing to the table that's difficult to replace? Sure there will be some friction between edge's model and the way it has to be internally expressed in postgres?

Edit: oh, a relevant reply https://news.ycombinator.com/item?id=30293064

Just adding to the discussion:

I find this comment from Griesemer [0] on one of the github issues for enums in Golang quite insightful:

> [...] all the proposals on enums I've seen so far, including this one, mix way too many things together in my mind. [...] Instead, I suggest that we try to address these (the enum) properties individually. If we had a mechanism in the language for immutable values (a big "if"), and a mechanism to concisely define new values (more on that below), than an "enum" is simply a mechanism to lump together a list of values of a given type such that the compiler can do compile-time validation.

Like with generics, I like the team's approach of taking features seriously, not adding them just because other languages have them, but actually trying to figure out a way for them to work in Go, as cleanly as possible. I think computer science, as a field, benefits from this approach.

And I also dislike many things from Go, and I want "enums" badly too, but that's for another comment.

[0] https://github.com/golang/go/issues/28987#issuecomment-49679...

There are many different criteria to decide where to put your code or how to group it. And each case benefits more from one idea or another (and each codebase contains many different cases). Humans don't organize knowledge in folders in their brains. The information network is much more complex. We can't find a good solution only with folders.

In fact, the idea of trying to model complex systems in a text format divided in files (most programming languages) doesn't quite hold... gracefully at least. For example, the frequent discussions about inheritance and generics are pretty revealing of the fact that we mix modelling and implementations in the same working space, when in fact in many cases it would be better to work on those at different layers.

So, in my opinion, to really make "code colocation" better you would kinda need to start modelling complex systems with richer toolsets that don't try to express them only with code files. You can't properly work with complex systems with a single view, no matter which one you pick.

The Block Protocol 4 years ago

> Why would I want to build blocks with the Block Protocol?

> Blocks built with the Block Protocol can easily pass data between applications because the data within each block is structured.

Yeah, what you said. What's their problem? What better world do they imagine? What's the approach taken on their solution? Very poorly explained.

EDIT: Joel's article is much, much, much more convincing.

The problem is always the same: to do things right, you need people who know what they are doing. Redundantly. Yet, most of us don't know what we are doing, so in practice we end up creating proxies for "the people who know what they are doing according to their certificates certify that I know what I'm doing". Because otherwise you wouldn't be accepted in a cool position, and we all want to be in a cool position. And that's how we end up with so much shit overflowing in the world, but people still pretend they have their own under control. Feeling greedy? Play pretend. A few hours later... Want to be accepted? Play pretend. A few hours later... Want to not be left out? Play pretend.

The right balance is "as much human customer service as people asks for". If your tech is good enough, lots of people will prefer it in most cases. And yet, there's people who will always prefer talking to a human, and people that would rather not talk to a human, but really have to because the other alternatives have already failed. And you have to care about those cases.

In a way, I understand that being in the customer service side you will often feel people are just being lazy and asking for help without even trying by themselves. And yeah, this is a poor use of resources. And yeah, it annoys me too. But trying to solve this by making it extremely hard to get help from another human is not ok. I don't know what's ok, but this is not. It's the general debate of "if you leave your door wide open, someone is gonna thrash the inside, if you don't, that will become less likely, but you will also add friction for those that really have to come inside". And there's no such thing as safe mass surveillance, so...

The set of natural numbers contains the prime numbers. The set of prime numbers doesn't contain the natural numbers, but every natural number > 1 can be generated/described as a product of prime numbers (fundamental theorem of arithmetic).

Maybe my terminology was incorrect, I'm not good at maths, but that's what I meant.

I think it's about the fact that they are a mystery at the heart of maths. You can start describing maths from the unit, the addition and the negative sign. If you start combining those, you get the natural numbers, the integers, ... but even before the natural numbers come the prime numbers. Primes are the most fundamental set of numbers in mathematics, from which you can generate the natural numbers.

But as you say, even after so many years they are still relevant, useful and mysterious. They are on a wildly different category from other sets and numerical series. They are the most central element of maths that we still don't understand. And central means that so many other parts of maths derive from it, and therefore we end up coming across prime numbers everywhere. We use them to analyze so many other parts of maths, but yet they remain elusive to analysis themselves. It's a fundamental, recurrent mystery that's also an extremely useful tool... one of the most beautiful things we know.

In my experience, many musicians and artists in general are weird people. Art is often a way to try to express how we don't fit in the world, or an attempt to express that which we can't express in other ways. And when I say "we can't express in other ways", that can mean that it's impossible, but also that the specific individual has trouble expressing it in the usual ways that other people turn to. So, they are kinda related. It's kinda tragic if you are that type of artist yourself and then realize that great part of what drives your art is... disconnection from the rest of the world. How your art might be a cry in some form, the result of your helplessness.

"Meaning" is a human concept, and only humans can fill its definition. It's also an individual concept, so everyone has the right to write its own definition. So indeed, as long as you have any desire(s), you can walk a path towards them. Any desire is fine if it's fine to you.

There's one commonality though: we kinda have to align with other humans. Maybe you would be able to be happy meditating alone... but if there are others around you who find what you do weird and criticize you, meditating alone itself becomes harder as you will have to additionally be able to remain unaffected by the criticism you receive. In the other side of the spectrum, if what you do is enjoyed by many other people, you will more easily feel reassured that it's a good investment and that it makes sense to do it. Plus you will be more likely to connect with other people, which is like, the main desire for most people: no better way to feel that your life is meaningful than having others tell you that you mean a lot to them. And we kinda keep rolling in that loop.

So those guys have found each other and Spyro will have enough depth in some aspect that they can keep walking around it meaningfully (to them). It's all cool.

As you also hint, putting some effort to make others suffer less is also an interesting idea: suffering is kinda at the opposite side of happiness and meaningfulness in life, so reducing that is also another way to increase positively the meaningfulness score.

It's rather bizarre that we are so dependent on others to make a positive evaluation of our own meaningfulness. Like, it doesn't even compile in most languages.

But maybe god is ok with circular dependencies. Let's ask in the next code review.

A couple years ago I was following random links on the internet and accidentally ended up on some blog where one guy made a comment like this:

> I really want to make the world a better place, but in the current world I don't even know how or where would I start.

And it resonated a lot, as I've always asked myself how to make a better world too, but you can feel so helpless thinking about it! Like, doing an honest job, being nice to others and recycling is not really making the world a better place: it doesn't change the direction we are going towards, and there's always been people doing an honest job and being nice to others through history. You are just maintaining the trend of what humans do, not finding an inflection point.

I really admire Aaron Swartz, and the ideas shared in this essay are good. But I believe it's too focused on institutional politics, and through the years I've kinda developed a different view myself, so I'll share some additional, complementary ideas:

- Focus first on what you create, not what you consume. We keep trying to raise awareness on small actions for people to do X less wrong, as if putting your grain of sand on the problem currently on the highlight is going to make the world a better place, but... there are too many problems for that to be really transformational (even if it's true that the increased awareness might eventually lead to some bigger movements). We should be most morally pristine with the work we do, and stop trying to "pay our moral quote" through small feel-good actions afterwards. That's not a scalable approach to solve problems. I'm not a "be strict in what you send, be liberal in what you accept" kind of guy, but what's definitely not a good approach is "be lax in what you send and strict in what you receive".

- Psychology and complex systems have taught us that even if individuals can behave very differently, there are often bigger conditionants that shift the whole terrain and make every individual tilt along with it. Aaron Swartz seems to focus a lot in changing individuals; I think it's even more important to change the terrain, and for that we first need to identify the dynamics of the systems we live in. Meditations On Moloch [0] is a good essay to illustrate this idea and reflect about practical examples.

- Individual capacity alone is not a big deal in society. When it comes to power, money comes first, public prominence might come next, then networking and connections, and only quite below we might find individual capacity and a few others. Basically, being able to leverage the capacities of others is much more powerful than trying to polish and leverage only your own. This doesn't mean you shouldn't try to become a capable person yourself, and many are quite connected, but you need to understand the relevance of network effects if you are trying to achieve anything beyond your house. If what you create does not connect with others, if there's no bridge, then there's no hope. And here I'd usually argue for trying to create consensus, but with time I've seen that consensus through reasoning simply doesn't work well; so nowadays I'm much more focused on finding ideas and dynamics that can create "consensus through practical use": if an idea is good, well executed, connects with others and it has some reasonable way to scale from a few people to many more (so, it works well for both small and big groups of people), then you have a high chance to successfully infect the world with your ideas starting from your own town. Going Critical [1] inspired this last analogy.

[0] https://slatestarcodex.com/2014/07/30/meditations-on-moloch/

[1] https://meltingasphalt.com/interactive/going-critical/

Agree with the first part of the comment, but at the end, when you say:

> "what might help society is if [...] we paid people to learn valuable skills"

We actually have plenty of very qualified people, both with academic titles and without them, but many of them are still doing jobs that don't "make society better". The problem is that we used tech to cut the time and labor required to do most things, but we haven't freed that time for people, we only keep distributing the benefits of those "improvements" unevenly.

And the real problem is that even if you were to redistribute them evenly, when there's low pressure, abundance of resources and an environment that provides more than what you are consuming, any species will start having more offspring, until the pressure increases and you are in trouble again (kinda like a malthusian trap). We could only escape that limit if we were able to create unlimited space habitats or our population growth rates were slower than the time it took us to find and travel to new planets. Some might argue that the systems will self-regulate, but self-regulation only happens in high pressure states, and that means that a lot of people is suffering under them.

The fact is that we don't need much, and we already have it. The problem to solve is not to become better or faster or more efficient at producing and creating more. The problem to solve is to collectively find a compromise on how much we want to have and design mechanisms to keep us in that sustainable lane. Not sure that's possible, but it's the only approach to "help society" that I really believe in.

Unless you think hope is always logical or rational, then there are some situations in which suicide can be logical or rational. Or maybe simply humane, if you want. While reducing impulse suicides (and all suicides) is a noble goal, saying suicide isn't logical or rational to me is downplaying and disconnecting from the suffering of those that need the support (and not the judgement) the most.