In my past experience, too many extensions tend to break every time GNOME Shell is upgraded and it can take a long time to get them fixed.
The GNOME developers have signaled over and over again that they're unwilling to provide stable APIs for UI customization. Being a developer myself, I can see why it's a burden, but the current situation is that it's being done anyway through unofficial extensions and users are left to deal with the random breakage.
As long as the environmental consequences fall entirely within the state borders, states should be allowed to decide independently.
However, when it comes to polluting rivers, sea and air, consequences of pollution are of often planet-wide. Thus, a global approach is required.
That said, the sooner Starship achieves full reusability, the sooner we'll stop burning rocket stages into the atmosphere and letting the incombustible parts fall into the ocean.
"We live in a semi-barbaric age where science is probing the finest details of matter, space and time—but many of the discoveries, paid for by taxes levied on the hard-working poor, are snatched, hidden, and sold by profiteers."
I love how Andrej Karpathy explains things. His code implementing the feed-forward block of the transformer looks like this:
def forward(self, x):
x = x + self.attn(self.ln_1(x))
x = x + self.mlp(self.ln_2(x))
return x
This is how it's described (starting at 19:00 into the video):
"This is the pre-normalization version, where you see that x first goes through the layer normalization [ln_1] and then the attention (attn), and then goes back out to go to the layer normalization number two and the multilayer perceptron [MLP], sometimes also referred to as feed-forward network, FFN, and then that goes into the residual stream again."
"And the one more thing that's kind of interesting to note is: recall that attention is a communication operation, it is where all the tokens - and there's 1024 tokens lined up in a sequence - this is where the tokens communicate, where they exchange information... so, attention is an aggregation function, it's a pooling function, it's a weighted sum function, it is a reduce operation, whereas this MLP [multilayer perceptron] happens every single token individually - there's no information being collected or exchanged between the tokens. So the attention is the reduce, and the MLP is the map."
"And the transformer ends up just being repeated application of map-reduce, if you wanna think about it that way."
I love the way Andrej Karpathy explains things. The code for the feed-forward block of a transformer looks like this:
def forward(self, x):
x = x + self.attn(self.ln_1(x))
x = x + self.mlp(self.ln_2(x))
return x
This how Andrej describes it (starting at 19:00 into the video):
"This is the pre-normalization version, where you see that x first goes through the layer normalization [ln_1] and then the attention (attn), and then goes back out to go to the layer normalization number two and the multilayer perceptron [MLP], sometimes also referred to as feed-forward network, FFN, and then that goes into the residual stream again."
"And the one more thing that's kind of interesting to note is: recall that attention is a communication operation, it is where all the tokens - and there's 1024 tokens lined up in a sequence - this is where the tokens communicate, where they exchange information... so, attention is an aggregation function, it's a pooling function, it's a weighted sum function, it is a reduce operation, whereas this MLP [multilayer perceptron] happens every single token individually - there's no information being collected or exchanged between the tokens. So the attention is the reduce, and the MLP is the map."
"And the transformer ends up just being repeated application of map-reduce, if you wanna think about it that way."
Hidden fees remove any consumer-side pressure on credit cards to lower their costs.
It also creates perverse incentives for cards to pass part of the merchant fees back to the consumer as rewards or even cash. Here in the US, 2-3% cash back is typical, driving consumers to prefer credit over other payment methods.
Meanwhile, merchants are forced to bake the fees into the retail price, causing the paradox that those who pay upfront end up spending more for the same goods.