HN user

randrews

1,531 karma

http://playwithlua.com

Posts16
Comments327
View on HN

Looking back at what I've said in this thread, it's "free speech is a societal value like honestly and politeness, not just a constitutional right," "I would be in favor of lifting bans on cigarette ads," "people don't like watching ads but we shouldn't ban them anyway," "I don't think we should be banning any speech," and "the point of a free country is to have a good standard of living for its citizens more than to make money."

There's only one thing in there that I think any reasonable person could think is extreme, and that's having no bans on speech. I'm overall happy making the concessions to this that America already makes.

As for the rest of it: if that sounds extreme to you then I really don't think I'm the one with biases, and I really don't think there's going to be much common ground between us. It's cliche at this point but do you talk about this stuff to a lot of people who aren't on the internet? Because outside the bubble of social media and this website, nothing I've said here would be controversial at all.

I also notice that you think I'm misinterpreting what you said, but still won't say how... Which makes me think that I'm not misinterpreting it at all, you just don't like having a corollary of your beliefs pointed out to you.

Anyway this has been fun but I'm finished now, the anti-flame-war filter is making it take forever to post replies.

We do not live in a pure democracy, we live in a constitutional republic. Our lawmakers aren't able to create certain laws because of limits on their power in the constitution; one of those limits is that no law can be passed abridging the freedom of speech. No matter how many people vote for it, without amending the constitution to remove that protection first, it will not happen. And the process for passing that amendment is intentionally cumbersome, for that reason.

4Chan, Parlor, Truth, or any other "free speech" platform. It ends up being toxic and noisy to the point that the vast majority of people will not use it.

4Chan and Parler seem to exist just fine. 8Chan doesn't, or was killed and then revived, or something, I'm not sure, but it wasn't due to lack of users; their host canceled them. Never heard of Truth before now, it seems to be Trump's Twitter clone that contains just Trump?

Anyway, my point is not that these free-speech-platforms are more successful than curated ones. My point is that that's the wrong metric to judge whether free speech is a good value to have in a society. I don't care if there are costs to it any more than I care whether the post office is profitable: I don't want to live in a society without freedom of speech, no matter how efficient it is, any more than I'd want to live in one without a post office or a fire department. I am willing to pay for the externalities because the alternative is much, much worse.

From your other reply: if I'm letting my bias in, then how am I misinterpreting what you say? I genuinely want to understand your position.

Hmm. So the way I interpret this is: true free speech lets people say things that are wrong, and leads to people believing things that are wrong. A company that allows it will perform worse in a market because of people believing those wrong things. An analogous thing would happen to a society allowing it, so, to have our society be stronger economically, we should have limits on speech. Is that close to right?

If so, my argument is this: a company and a country have different goals. Many things that a country might provide (welfare programs, democracy, public services) are expenses that don't make us economically stronger. But, we do anyway because that's not the point of a country: the point is to provide the best quality of life for citizens. I'm happy to accept the drawbacks of free speech (people believing in Q, or that the Apollo landings were faked) in exchange for being able to say whatever I want. If you aren't, then there are other countries that make the other tradeoff.

I think this is the core of what's going to be a big debate over the next decade or two, though: is it better to be less productive and free (America), or more efficient but authoritarian (China)?

Ads in general are probably something society doesn't want, because you have to pay people (in the form of ad-supported content) to look at them. You might say that most people in society think cigarette or gun ads (or DNC political spots) are particularly objectionable. But, I don't believe that that's a reason to ban them.

I'm completely in agreement that the law doesn't compel speech, or publication, especially of ads. Hulu is completely legally in the right to not carry DNC ads, Google and Facebook are completely legally in the right not to carry Colt or Remington ads. They'd also be in the right not to carry Altria ads. But the question is what speech do we want to ban by law... and I think the only answer to that for a healthy, free society is "none."

I even go further and say that respecting free speech exists outside the first amendment as a societal value that we should all hold, like "politeness" and "honesty," and that it should be kept even when not legally required... So Hulu _should_ run the ads, even though they are not _required_ to.

I actually think we should allow cigarette ads again, I don't think anyone is harmed by being able to see a sign telling them something.

But also, think about it this way: isn't this the other side of the slippery slope argument? I'm sure when cigarette ads were first banned, people made the argument that it would be used to justify banning other ads later, and were told that was a slippery slope fallacy... Now, you're essentially saying "we've already banned cigarette ads, if we're not going to ban gun ads too then we might as well re-allow cigarette ads!"

I really don't think you're arguing in good faith here. This is a very common tactic for people of your political alignment, at least on HN: to nitpickily demand sources for completely obvious facts, and then if provided, shift the argument to discrediting those sources instead of engaging with the actual philosophical points being made.

I could probably write everything else you're going to say in this thread myself, so, I'm not going to bother continuing to argue with you. If you'd like to respond to the core point, which is why are Democrats justified in complaining about their own ads being refused while they celebrate Republican content being deplatformed, then we can continue.

It just doesn't allow ads that say "Glock is the best pistol".

Until, well, yesterday (edit: not yesterday, that says "June." My mistake), it was illegal in Germany to advertise where you can get an abortion. Abortion was and is legal there, but the doctors providing them weren't allowed to tell anyone that that's where they could go to get one.

https://www.politico.eu/article/germany-parliament-bundestag...

This is a pretty analogous situation to what Newsom / his party want in California: guns legal (after a fashion) but for anyone part of the gun industry to be excluded from the public square.

Do you think that Germany changing their law is a step backwards, since you support an equivalent law in California? Or do you have a double standard between free speech applied to one kind of ad versus the other?

Yep. The answer here is that Hulu should probably run the ads. Free speech is more than an amendment, it's a social value that should be respected by everyone, not just the government. I'm sure I'd disagree with every one of these ads but I would still like to see them run, because allowing people I don't like to speak is what protects MY right to speak.

I always wonder about these sorts of comments. Do you think sources for these easily-googleable facts don't exist, or that the pretty uncontroversial events I'm talking about didn't happen? Am I supposed to somehow be argued down by having to post a couple links? Or is this just a way to shift the conversation to discrediting the particular links I reply with, instead of engaging with the actual issues I'm bringing up?

Anyway. Here's the WH Disinformation Governance Board: https://en.wikipedia.org/wiki/Disinformation_Governance_Boar... This is the CA gun-ad law: https://www.reuters.com/world/us/gun-groups-challenge-califo...

As for it being just the unrelated actions of large corporations and not Democrats per se... Well, the White House part kind of disproves that, as does the California law. Yes, large corporations do act independently of the Democratic party, but the question here is does the Democratic party want this sort of censorship against other people, and they self-evidently do. And the WH Disinformation board shows that they're happy to use the large corporations as their tools to get it.

Pretty predictable responses.

Are you somehow implying Google and Facebook are run by Democrats

Again, there was a White House office made specifically to coordinate these platforms banning "disinformation" content. It was later shut down, but its creation in the first place shows that the Democratic party wants to censor discussion it doesn't like. Or are you somehow implying the White House is not run by Democrats?

That sounds like a law to regulate advertisements, not a deplatforming

Which is exactly what we're talking about here: these are advertisements, Hulu doesn't want them on their platform. You're fine with Gavin Newsom, a Democrat, banning advertisements from gun manufacturers and retailers, presumably pro-gun, but you have a problem with Hulu not wanting advertisements that are anti-gun.

Absolutely. Gavin Newsom has signed into law a bill to ban ads for firearms. Google and Facebook already ban that as well. If you have no problem with that then why should you have a problem banning ads against guns?

More right-wing personalities than I can even remember have been banned from various media, not least being a sitting President of the United States. The same platforms also have policies against certain "disinformation" that target anyone discussing some issues or events like the Hunter Biden laptop which were later determined not to be disinformation at all. As for it being Democratic policy, there was (briefly) a White House office under a Democratic president to coordinate these policies.

doesn't it also take resources to create baseball cards, art, books etc.

Baseball cards are generally valued more than an equivalent-size rectangle of cardstock. Books are priced higher than a ream of paper; saying the value of a piece of art comes from its frame is usually an insult.

I would argue that those things are also not in any way a store of value: the only thing you can do with them is sell them to someone else. If no one else wants them, they're worthless. By your logic a big pile of beanie babies is a store of value, since someone spent a lot of money in the 90s to get them, and they took cloth and plastic pellets to make.

The way I've usually heard it explained is that doing some sort of productive work (growing wheat, clearing land, mining things, whatever) can store the value of that work because you create something useful with it. The resources it took to grow the wheat are stored in the wheat, and can be retrieved by not having to grow wheat next year.

My point, whether we agree on the terminology or not, is that Bitcoins are not anything useful: they take massive amounts of resources to create, just like farming or mining, but all you get out is a proof-of-work receipt that says "yes, he lit that pile of money on fire to create this."

A store of value allows you to get the value back out: if I spend a bunch of money and effort mining iron ore, or growing wheat, or building a house, I have the ore or wheat or house which has intrinsic value. Maybe now I don't need to grow as much wheat next year.

Bitcoins take value to create, and creating it consumes that energy / compute, but all you get out of it is a receipt that proves you spent the resources. You can't use the bitcoin for anything; you can only sell it to someone else who thinks it's a store of value.

I have a hard time believing that anyone actually falls in that category. No living grandparents who remember the great depression? No memories of 2008? And even if they were in a total vacuum, why wouldn't it occur to them, as it did me, to ask "what makes the line go up?"

If people put X USD into buying Bitcoin, and then can sell that Bitcoin for Y USD, and Y is greater than X, then the extra money has to come from somewhere. Where? Without knowing that answer, even before I knew the first thing about blockchain or crypto, I was unwilling to buy any.

I don't care who in your life was lying to you or pressuring you to invest, anyone who got suckered in without asking that basic question should have done more due diligence.

I'm not shrugging. I think you shouldn't be allowed to do fraudulent ads for investments, and that the loophole of "it's not USD so it's not a real, regulated investment" is wrong. I would like to see most of that industry thrown in prison.

But I have zero sympathy for the people who dumped their life savings into something that sounded too good to be true, and were jerks toward anyone telling them about the risks / misunderstandings. I know someone in his 60s who put his life savings into it, and (until I explained it) didn't know that bitcoins were mined. Did not know where they came from, just understood that the line was going up. (I do have some sympathy for him because he wasn't a jerk about the whole thing, but, the others... nah).

This is hard to write.

In 2015 I joined a local club for electronics hobbyists. It was great, we met every other week, had show-and-tell presentations of the things we were learning and building, I made a lot of friends and learned a whole lot. But, in 2020, it started getting taken over by crypto bros: where before we'd have presentations about a new IoT platform or how to generate some signal, now we'd have presentations about yet another bitcoin-trading thing, usually not even run by people who were regulars in the group.

At each one of these, I and a couple others did try to explain, politely, that crypto wasn't what was being claimed (overnight guaranteed millions!) and that these people didn't seem to understand basic things about economics (bitcoin is not a "store of value"). And we got laughed out of the room for it.

After a few times of that I just stopped going to the club, and I wasn't the only one because the whole thing disbanded a couple weeks after that.

So, when you say that the crypto people lied about this and people got suckered in, well, no sympathy. Because you're ignoring all of us who tried to point out the lies and caught shit for it.

Maybe you all shouldn't have invested more than you could afford to lose.

So you're saying, in the scenario where someone asks directly "will this company lay anyone off," you'd rather the company deflect the question and not answer it than just say "no?"

I really can't imagine why anyone would think that's a better look. If someone dodges a question, it's safe to assume that the truthful answer would look bad for them. That's WHY people dodge questions.

I'm not well-connected, and if you have a bunch of experience on your resume, you're probably established enough. Send your resume out to a bunch of companies. Expect that most of them will reject you, some subset of those will waste some of your time first. From the outside, you can't easily tell which are the good companies to work for. But eventually, if you have good technical skills, you'll find a place that cares about that more than resume buzzwords and FAANG employment history. I have, over and over, and have made a career out of working for those places.

I think you might be putting a bit too much stock in what a recruiter thinks. Recruiters generally do not know the first thing about the industry they're recruiting for, and in my experience, having a history of solving problems across a breadth of domains is received well by hiring managers.

You just need to find the right hiring managers. But the trick is, the ones who don't value that? Aren't the ones you want to work for anyway.

As much as I want to agree with you, and as much as I usually go by that rule myself... The place I work at now said, in March 2020, that they weren't going to do any layoffs. And, they haven't. And are now making more money than they were in 2019, and actively looking for more people, so, I doubt any are coming.

There have been times in my life when that advice was 100% true, but, not every time.

It's hard to express some of this in layman's terms, but it's good practice for me because I plan to write a book about exactly this:

Generally what a CPU does is, fetch an instruction (represented by a number) from memory, run it, then repeat with the next instruction (a little hand-waving here because modern CPUs also have the ability to rewrite the instructions they're given into equivalent-but-faster instructions, in pursuit of speed, but generally that's the idea). So, if you wanted, you could write the exact numbers representing the instructions you want to run into memory, and let the CPU run it. But this would be very hard to do, so, there are tools:

- Instead of writing stuff into memory, you write it into a file, and the computer has an operating system that knows how to read files and put them into memory.

- Instead of writing the numbers, you can write little text descriptions of the instructions, like "add" instead of the number "4," and the assembler handles the translation (as well as some other bookkeeping) for you.

So, why not write in assembly all the time? Because it's a lot of work: the instructions available on a CPU are very low level: mostly moving numbers around in memory and doing basic arithmetic. It's much easier to be able to work at a higher level of abstraction, like "take this list of people and sort it by last name" than "add 3 to this number and store the result at memory location 47." That higher level of abstraction is what a compiler does: you write in a higher-level language and it generates code in another language (like assembly) that does the same thing. In practice only things that need to run very fast, or things where no other tools are available, are written in assembly.

Why not make assembly higher level then? Complicated question: one, some chips do, to a degree: there are chips designed to make it easier to hand-code for them. But most don't because it ends up being both faster and easier not to: you can use less hardware if you support fewer and simpler instructions, and if you tailor those instructions to make it easier to write a compiler targeting them, it ends up being faster and simpler for that too. As for it being faster because the computer is doing less: it's actually doing more!

Remember that the compiler step usually happens before you run the program: someone writes source code, feeds it to a compiler or assembler, and gets out the numbers the computer can run. The source is no longer needed; you can hand that output to someone else instead and they can run it directly. That means we care a lot more about the time it takes to run something than the time to compile something. A chip with higher-level instructions makes the opposite tradeoff: a more complex instruction would take longer for the hardware to run, and you'd pay that cost more often.

But wait, you ask, you'd also need fewer instructions, your program would be shorter! Well, maybe you'd win that tradeoff, maybe not. It depends on what you're doing. This is part of why there are lots of different chips; different applications want different instructions in hardware. There are lots of benchmarks for chips for how quickly they can solve a particular math problem, and sometimes chip A is better at benchmark X than chip B, but B beats A at benchmark Y: differences in instruction set mean that the assembly for one is faster than for another one, at some things.

Non-electric computers: in general, every machine has a specific assembly language for that machine. The AMD Ryzen I'm typing this on runs different instructions than my Apple M1 laptop which also runs different instructions than the Espressif ESP32-based game system on my desk. This follows for non-electric computers too: any stored-program computer, the format of how you store the program is arbitrary and up to the designer of that computer, and presumably a quantum computer or a mechanical one would have different instructions. I can't really speak for quantum computers (are there any yet?) but I've been designing a toy CPU for fun, and here's how I did it:

- Figure out which instructions I wanted, and how I wanted to represent them as numbers - Write a program that runs on my normal computer that will translate mnemonics ("add", "store") to those numbers (the assembler) - Write another program that runs on my computer that will pretend to be the new one, and run the new one's instructions (a virtual machine) - Write some programs in the new machine's assembly

If you add a step after that for "make a piece of hardware that will be the new CPU," then that's pretty much how a new computer is built. I wouldn't need to physically use switches, but that's just because instead I'd write things to a ROM chip using my normal computer. If I really had to, I could do that using switches though, and that was common for homebuilt hobbyist computers of the 70s-80s.

Edit, probably worth noting: "in general, every machine has a specific assembly language for that machine," in practice this is becoming less and less true. It's now common for several different chips to have either entirely identical instructions or commonalities in instruction set. ARM computers (which is everything from an Apple M1 / M2 to smartphones to Raspberry Pis to small microcontrollers) share an instruction set; there are tiers of ARM chips, like an M1 will do things an STM32 microcontroller won't, but it's mostly the same assembly language, and that's part of the value of that architecture. Same with x86 chips: the 80386 supported all the 80286 instructions and some extra; the 80486 supported 80386 plus some extra, and so on, right up to the current generation i7 / i9 / whatever. And AMD ones, Ryzen / Threadripper / etc, support the same instructions as the Intel ones. The reason why is obvious: Intel wants to sell you a new chip and it's easier to do so if you can still run all the programs you ran on your old chip; AMD wants to sell you their chips and it's easier to do so if they can run all the programs you currently use on your Intel chip.

I'm tempted to email the author answering that question, because it's actually a really good and profound question.

Edit: except I can't, there's no way to contact him from the blog. Oh well, in case OP is the author:

In addition to programs that read code and do what it says (interpreters, like Python), there's another class of programs called "compilers" that translate code from one language to another. One kind of compiler (an assembler) translates assembly language into the specific numbers (representing instructions) that the computer hardware can understand and run. Some of these are able to do this for a computer other than the one they're running on.

So, the bottom of the stack is generally... another computer. When you make a new computer, you write a compiler (or assembler) on your old computer that will generate programs the new computer will run... And those programs include compilers and assemblers for the new computer so it can host its own development after that.

The obvious next question is, how did the first computer get programmed? And the answer is, by hand: what an assembler does can be done by hand, by a patient person, so someone did that and then keyed in the numbers manually (old computers had front panels with switches to manually read / write memory, for just this purpose).

My experience exactly. I wrote an emulator in Rust for a thing implemented on an FPGA that generates a video signal. For the first pass, I just ported the Verilog code to Rust, essentially: big loop over all the pixels every frame, figure out which color it should be, return that. There are a ton of ways to factor things out of that so you're not doing repeated reads of stuff, and I was going to gradually put them in until it was fast enough...

And then the naive solution ran at 100 fps.

So uh. Okay then. I see the value in Rust now.

Thank you! When I read the headline I wasn't even thinking of propulsion: gliders have no moving parts for propulsion, neither do solid rocket engines, so what? What I wanted to know was how on earth they made something to do the job of an aileron without moving to affect the airflow... And I was disappointed to find out that they didn't.

"No moving parts" is a dumb way to advertise this. It's a cool thing, an self-propelled ionic propulsion system, but the fact it has no moving parts isn't an especially interesting feature of it.

It's what I do because I don't want the money, I want to hang out with friends who share my interests. A couple people have actually taken me up on it; come over with a pizza and we spend an evening cutting things out and it's fun. I'd rather have that than the $20 or whatever the other ones would pay.