HN user

ravi-delia

2,321 karma
Posts0
Comments916
View on HN
No posts found.

Propellant is still used for rotation control. Reaction wheels can "saturate" if they compensate for rotation more in one direction than the other on net, so propellant is needed to get them back down. Ion engines, generally speaking, do not use background dust. They still carry propellant, they just eject it electromagnetically. An photon engine, basically just a laser pointed backwards, uses pure electricity to produce thrust. But of course the numbers all work out, since photons have momentum. They're extremely weak though, even lasers of staggering power produce very little force. There's no way you could put one on a satellite

I mean I guess you could say they have different semantics. They're just different types, int and Int64 aren't any more different from each other than Int64 and Int32. You can treat all of them exactly the same, just like how you have ints and longs and shorts in C and they all have the same interface.

Regardless, I don't think C's "probably 32 bit" non-guarantee is the make or break feature that makes it a systems language. If I care about the exact size of an integer in C I'm not going to use an int- I'm going to use explicit types from stdint. Rust makes that mandatory, and it's probably the right call. OCaml isn't really what I'd use for a systems language, but that's because it has no control over memory layout and is garbage collected. The fact that it offers a 63-bit integer doesn't really come into it.

Ok, running this by you one more time. There is a type called "int" in the language. This is a 63-bit signed integer on 64-bit machines, and a 31-bit integer on 32-bit machines. It is stored in 64 bits (or 32), but it's a 63-bit signed integer, because one of the bits is used in the runtime. There is also a 64 bit integer, called "Int64". It has 64 bits, which is why I call it a 64-bit integer rather than a 63-bit integer. An "int" is a 63-bit integer, which is why I call it a 63-bit integer rather than a 64-bit integer.

So the "one bit" you refer to is what makes the standard int 63 bits rather than 64. If you could do things with it it would indeed break the runtime- that's what tells it that you're working with an int rather than a pointer. But full, real, 64-bit integers are available, in the base language, same goes for 32.

Not so much for takeoff! Most rocket designs better than chemical rockets trade off thrust for specific impulse. That's an improvement in orbit, since delta-v is delta-v. But imagine a 10kg rocket- it's receiving ~100N of gravity. If your engine doesn't put out 100N of thrust you'll just sit there on the launch pad. As you pick up speed you no longer have to deal with that (after all, LEO has basically the same gravity and doesn't have to burn against gravity at all) but when you're launching off something other than a point mass, some of your thrust has to go towards ensuring you don't hit the planet, or you will not into space today.

The practical designs we have for NTRs are solid core, which after long effort got up to a thrust to weight ratio of 7:1, meaning they could in principle carry up to 6 times their weight and accelerate up in Earth's gravity rather than down. Chemical rockets can get 70:1. No one ever had plans to use NTRs in lift platforms- instead they could serve as more efficient upper stage engines, for orbit-orbit transfer burns and the like. In principle there are engines which are technically NTR and offer much better performance, but no one's ever gotten a working prototype. Also you probably wouldn't want to launch with an open cycle rocket, since the open part describes how the radioactive fuel is ejected out the rear. Unfortunately, with the technology we have, we have to make tradeoffs between efficiency and thrust. For the lift stages chemical rockets are, for now, unrivaled.

(Unless of course your nuclear propulsion is of the more, shall we say, entertaining variety. Project Orion has its proponents...)

Pandoc 2 years ago

You know what, that's a sufficiently cursed workflow that it wraps back around to adding nerd cred

Coastline paradox 3 years ago

It actually bottoms out pretty low though. The apparent fractal dimension changes over scales, but is sufficient that ruler length really does make a huge distance in coastline length

Coastline paradox 3 years ago

I think what you're referring to is the false proof suggesting that pi=4. That is not what squaring the circle is, and does not in fact become smoother and smoother but rougher and rougher

Large carnivores are kind of the pricey boondoggles of evolution. They work, they are successful, but they're balanced on a knifes edge. Every step a large carnivore takes consumes vastly more energy than it would cost a smaller animal. It is all too possible for such a creature to expend more energy pursuing small prey than it would get back. That is why lions don't hunt small game- they'll scavenge small game by driving off smaller carnivores from their kills, and they certainly won't turn down eggs if they find any, but they will not pursue prey beneath a certain size. Imagine trying to catch a rat with your hands- exhausting work, and the rat isn't much food

In analytic number theory we usually only care about growth rates in a very coarse sense- up to scaling by some constant, and asymptotically. Because the log of any base is precisely the same up to constants, it doesn't actually matter. If you look at the expression, to the right of the equals sign is a big O- that's the same big O as the one you might be familiar with in complexity.

That being said, in math more generally when we need a concrete log the natural log is pretty much always the way to go- I haven't seen ln in a little while.

Population counting isn't an exact science, there were estimates suggesting we hit 8 billion about a year ago. But the 90s are right out- last big milestone was 7 billion in 2011.

So you can of course multiply some vectors- the real numbers are a vectorspace, and they have a perfectly nice product. Even R^2 can have a nice multiplication- (a,b)(c,d) = (ac - bd, bc + ad), the product of the complex numbers. However, it's much trickier to define a multiplication on an arbitrary vectorspace V such that

1) For any vectors u,v in V, the product u*v is in V. (this rules out the dot product as a general product)

2) For u,v in V, u*v = v*u

3) For u,v,w in V, v*(u+w) = (v*u) + (v*w)

4) For u,v in V and s in F (the field V is a vectorspace over), s(u*v) = (su)*v = s*(uv)

Under these restrictions you can still cook up products, but fewer and sadder ones. In general you will not have a multiplicative inverse, for instance.

"Definition" - "Theorem" - "Corollary" structure looks like a silver bullet, it fits very well in a linear format of a book. Unfortunately, this format is totally inadequate when it comes to passing knowledge.

I really can't emphasize enough that this is exactly how I learn things. I don't claim to be a majority! But saying that no one can learn from that sort of in-order definition-first method is like saying no one can do productive work before 6am. It sucks that morning people control the world, but its hardly a human universal to sleep in.

Some other form of presentation must be found to make it easier to encode the knowledge. Not sure what this form might be. Maybe some annotated book format will do, not sure. It should be a result of a collective effort IMO.

I 100% agree. Have you seen the napkin project? I don't love the exposition on everything, but it builds up ideas pretty nicely, showing uses and motivation mixed in with the definitions. I've been trying to write some resources of my own intended for interested laymen, so more focus on motivation and examples and less on proofs and such. I like the challenge of trying to cut to the core of why we define things a certain way- though I'm biased towards "because it makes the formal logic nice" as an explanation.

Hmm, I do see where you're coming from. To me, saying math is the study of formal systems is a statement of acceptance and neutrality- we can welcome ultrafinitists and non-standard analysts under one big tent. But you correctly point out that it's still a boundary I've drawn, and it happens to be drawn around stuff I enjoy. I'm by no means saying that there isn't room for practical, grounded math pedagogy with less emphasis on rigor.

However, there's plenty of value in the formal systems stuff. Algebraic formalization is just one way of looking at the simplest forms on linear algebra, but there really isn't any other way of looking at abstract algebra. Or model theory, or the weirder spectral stuff. Or algebraic topology. And when linear algebra comes up in those contexts (which it does often, it's the most well developed field of mathematics), it's best understood from an abstract, formal perspective.

And, just as a personal note, I personally would never have pursued mathematics if it were presented any other way. I'm not trying to use that as an argument- as we've discussed, the problem with math pedagogy certainly isn't a lack of abstract definitions and rigor. But there are people who think like me, and the reason the textbooks are written like that is because that's what was helpful to the authors when they were learning. It wasn't inflicted on our species from the outside.

I think in 50 years we will look back on the way pure math was written today as a great tragedy of this age that is thankfully lost to time.

That could very well be true. I mean just a 100 years ago mathematics (and most education) consisted almost exclusively of the most insane drudgery imaginable. I do sometimes wonder what the world could have been like if we didn't gate contributions in math or physics behind learning classical greek.

I do think that some of the issues come down to different learning styles. I personally like getting the definition up front- it keeps me less confused, and I can properly appreciate the examples down the line. The way Axler introduces the dual space was really charming for me, and it clicked in a way that "vectors as columns, covectors as rows" never did. But that's not everyone! It's by no means everyone in pure math, and its definitely not everyone who needs to use math. I've met people far better than me who struggled just because the resources weren't tuned towards them- there's a huge gap.

I think that "when you proceed to applications" is the issue there. Applications where? For applications in field theory, the spatial metaphor is exactly incorrect! For applications in various spectral theories, it's worse than useless.

What you say regarding the seeming coincidental nature of "real world" applications is basically correct (with correlation specifically there's some other stuff going on, it isn't that surprising, but in general), but unavoidable for any aspect of pure mathematics. Math is the study of formal systems, and the real world wasn't cooked up on a black board. If we can demonstrate that some component of reality obeys laws which map onto axioms, we can apply math to the world. But re-framing an entire field to work with one specific real world use (not even imo the most important real world use!) is just silly.

I love the idea of encouraging students early on to look at different areas of math and see the connections. But linear algebra is connected in more ways to more things than just using an inner product to pull out a nice basis. Noticing that polynomials, measurable functions, etc are vectors is possible without reframing the entire field, and there are lots of uses of linear algebra that don't require a norm! Hell representation theory only does in some situations.

I absolutely see what you're saying with that. I think I'm definitely the target audience of the abstracted definition, but I've long held that every new object should be introduced with 3 examples and 3 counter-examples. But you said it yourself- that's the style pure math texts are written in! Saying that "we" as a species don't have a good understanding of linear algebra is unbelievable nonsense. I can't conceive of the thought process it would take to say that with a straight face. The fact is, 10 separate YouTube lectures disconnected from anything else is just the wrong way to try and learn a math topic. That's going to have as much or more to do with why dual spaces seem unmotivated as the style of pedagogy does.

To me, each column represents a different dimension of the basis vector space, so the notion that X, Y, and Z might form independent "column spaces" of their own is unintuitive at best.

I can't help but feel a treatment of linear algebra that assumes all matrices are invertible by default isn't a very good treatment at all. Column spaces are exactly how you harness your (very useful!) intuition that the columns of a matrix are where the basis goes. I agree that it should be defined before use, but it is- in the textbook proper. The preface is for the author to express themselves!

Now row spaces are an abomination, but that's because I'm not really a computation guy. I'm sure they're great if you get to know them.

Axler serves as an adequate first introduction to linear algebra (though it is intended to be a second, more formal, pass through. Think analysis vs calculus), but it isn't intended to be a first introduction to all of formal mathematics! A necessary prereq is understanding some formal language used in mathematics- what unique means is included in that.

Falling entirely back on physical intuition is fine for students who will use linear algebra only in physical contexts, but linear algebra is often a stepping stone towards more general abstract algebra. That's what Axler aims to help with, and with arbitrary (for instance) rings there isn't a nice spacial metaphor to help you. There you need to have developed the skill of looking at a definition and parsing out what an object is from that.

What? Linear Algebra is easily one of the best understood fields of mathematics. Maybe elementary number theory has it beat, but the concepts that drive useful higher level number theory aren't nearly so clear or direct as those driving linear algebra. It's used as a lingua franca between all sorts of different subjects because mathematicians of all stripes share an understanding of what it's about.

From what you said there, it seems like you tried to approach linear algebra from nearly random directions- and often from the end rather than the beginning. If you're in it for the computation, Axler definitely isn't for you. There are texts specifically on numeric programming- they'll jump straight to the real world use. If you want to understand it from a pure math perspective, I'd recommend taking a step back and tackle a textbook of your choosing in order. The definition of a dual space makes a lot more sense once you have a vector space down.

Email and Git = <3 3 years ago

VSCode actually also supports using git send-email. All you need to do is work on your code in exactly the same way, then use git send-email.

Email and Git = <3 3 years ago

Multistep is fair, though for the record "multi" in this case means 2. One of those steps (the only thing that differs by OS) is installing git- I think you'd agree that gatekeeping by ability to install git is pretty reasonable for a project that uses git. Using git send-email doesn't require much more configuration than configuring ssh keys to push to GitHub. The fact is, most open source development workflows outside the safe confines of java on intellij will rely on the ability to use a few commands. We're better off making more great documentation like this to help new people adjust than deliberately clipping their wings.