HN user

trylist

65 karma
Posts0
Comments32
View on HN
No posts found.

This is childish thinking. Whatever we do, we cannot go back to "before". Which "before"? How do we go back?

You can't regress back to a being a kid just because the problems you face as an adult are too much to handle.

However this is resolved, it will not be anything like "before". Accept that fact up front.

I remember solving this problem before. These are both global components, so you create a single global instance and control them with a global context or function.

You basically have a global part of the component and a local part. The global part is what actually gets rendered when necessary and manages current state, the local part defines what content will be rendered inside the global part for a particular trigger and interacts with the global part when a trigger condition happens (eg hover timeout for a tooltip).

Since the original point of this chain was a comparison between the energy efficiency of biological vs machine learning, then we need to be trying to understand if the machine is more efficient than the human. You don't need to make some moral or philosophical argument about existential justification to accept that taking a more efficient approach is better, in that it generally enables more life for the same energy.

If the true, total cost of a machine to perform some task is less than a person to do the same task, then the machine should do it and the person should move to do what the machine cannot. This means more energy is available for everything else, living included.

I hate writing by hand the same way I hate walking through deep sand. It's extra effort for the same distance and I'm mentally way ahead of where I am physically.

Public API refers to the user of the class, not the implementer. You never call __init__ directly. __new__ allows modifying object creation itself for the implementer, but the user of the class will never call it.

I find it strange to see this sentiment... how far down the stack do you go before it stops being "configuration" to you?

Let's imagine building a video chat:

Are you going to build an OS from scratch? Network protocols? Encryption? The rendering engine for it? Compression algos?

Just how much of this do you consider "not configuration"? I think this all sounds very much like "old man yells at cloud" pining for a past that never actually existed.

Am I missing something about graphql being in the same metric as redux? They're not remotely in the same domain, are they?

Hierarchies are possible with an RDBMS, but I'd suggest it's the wrong tool to model them with, unless they're static of course. Really any graph that can't be encoded in the table relationships themselves.

I've been using rust for a few weeks and I'm finding it fairly pleasant overall, but I agree on the syntax issues. I've hit some snags (in particular, graphs, but this is a common snag on constrained languages, Haskell has trouble with them too) but overall nothing serious and I'm not afraid to go down to unsafe.

I think they made a mistake using C++ style generic notation. D lang has a much, much nicer syntax for generics, and the language's readability would much improved with that syntax imo. As is, I find parsing the error messages that come back from type mismatches quite challenging. Reading documentation on traits on docs.rs, I find the actual trait name very hard to pick out in the noise. Maybe I'll get better with that over time.

Clifford algebra is exactly how I figured it out as well.

Here's the clearest explanation I can make:

Things have a "sided-ness" to them. In most mathematics, the definition of a plane ignores this sided-ness. Three points and you have a plane, right? But you can't describe the orientation of a plane with the points, because you can't tell which side is "up". A piece of paper has two sides, why doesn't a plane? This is important when describing rotation!

Anyone who has used a look_at function can understand this. You give it a point for the eye position, and a point for the eye to "look at". What is not described is how that eye is oriented. Is it upside down? Sideways? Right side up? Even vectors have a "side"! This is the "twist" that is often mentioned.

If you imagine yourself as the eye, you can imagine your eyes being in the same position, looking at the exact same point, but in many different perspectives. Lying on your side, doing a headstand, standing upright.

I'm not an expert and I'm probably wrong, but intuitively this is what I think that fourth dimension on the quaternion corresponds to.

I'm starting to look at it from a different perspective. I don't necessarily think bad is actually bad, or a better way to put it, there's no such thing as "good" code. What I usually find people calling bad code is just not easily understandable. We as programmers started programming with really comfortable abstractions for easy problems and we expected things to continue like that.

When we go into the world of unsolved problems that someone solved and we have to maintain them, and we can't understand them immediately, we call them bad. It's my gut reaction almost every time I'm confronted with something that doesn't immediately enlighten me, even thought I know it's the wrong reaction.

We are always comparing everything to the simplest and most solved problems that were easy for us to understand. When it isn't so easy we call them "bad".

Pure functional programming has this property by its nature. Anything immutable cannot be changed during another threads execution.

I agree for your personal computer. I've been using it on my PC for several months, and it was definitely a mistake. Most things work fine, but there are enough problems that it is extremely noticeable. Whether it's the mess that is steam-run and that whole hack, or having to build your own derivations for literally anything that's not widely used or that you need the latest versions of, it's just an endless time sink. And the documentation is non-existent, as you say. You need to go into the git repo to see what actual options are available, despite how comprehensive the options search on the NixOS page looks, it's not.

For a server, where you're typically doing that kind of work anyway (and want to have the specificity and control), I'd say it's pretty good (Guix works too).

I'm actually going back to Mint today.

That's backwards. College is expensive because demand is extremely high. Subsidies increase that demand by making college affordable for most, but the suggestion that the subsidies themselves are the problem is plain wrong. We wanted an educated workforce, we've got one. We can say we don't want one, but to blame our efforts to educate people as the problem with education is not productive. We either educate people or we don't. We increased demand on purpose (and we should have!). Of course prices are going to go up! Normally supply would expand to keep up, but something is rotten in education. Teachers get paid a pittance, there were several high profile accreditation frauds, and the natural inclination towards prestige as worth more than the actual diploma combine to seriously limit our ability to expand and mitigate prices.