Hacker News new | past | comments | ask | show | jobs | submit | more charonn0's comments login

> 18% of the U.S. population is functionally illiterate

N.B. This stat appears to pertain to English language literacy, not literacy per se. Some of those 18%ers might be reading Dante in the original Italian or Shakespeare in the original Klingon.


Yes perhaps .001%, or even .002% of that 18% have probably done that.


> Shakespeare in the original Klingon

citation needed



Hab SoSlI Quch.


I don't see the problem you do.

SO is a Q&A based knowledge base. Questions are supposed to be somewhat open-ended prompts that inspire experts to write detailed and informative responses. The OP seems to be an excellent example this.


> Questions are supposed to be somewhat open-ended prompts that inspire experts to write detailed and informative responses.

> open ended

I recently tried asking a question like that. Easy but effective optimization techniques for programming languages. Hell I included an answer myself and was going to add more. The result wasn't pretty. While I was typing up a second answer, the question was downvoted, closed, someone welcomed me to the site and then deleted the comment, the answer I included with the post was downvoted not for being wrong but for "enabling" a bad question, I got told to get out and go blog about it instead and then a few days later the entire thing was deleted like worthless spam.


I had the same experience myself, Stackoverflow isn't going down because of AI which they use as a scapegoat but because the community became more and more toxic to the point of no return and there's no blaming others for that.


> techniques

Plural? Obviously that wouldn't be accepted. It should be something that can have a single best answer.

Open-ended that allows an expert to expand and explain doesn't mean free-for-all.


Yes, plural. It was a question similar to this one:

https://stackoverflow.com/q/500607

Some of the greatest questions on StackOverflow are open ended like that.

I've gotten people to reverse closures before. They closed a Q&A pair I made on the finance site where I explained how I did something specific with the ledger software. Closed, then reopened with a positive score.

Not this time, I guess. I linked that question as an example but it didn't really convince anyone. I was frustrated but eventually I just accepted it, left it alone and went away for a few days.

Came back later to find they had just deleted the question along with the one answer I managed to write. That made me feel like shit. Certainly didn't expect that, especially not from a stack exchange site that's still in beta and thus in need of content.


That's actually a good example of why it happened, and may well be referenced in the meta threads when they talked about it - not only is there no correct answer, these usually acted like clickbait, farming for reputation to gain access to moderation tools.


> not only is there no correct answer

There is no single correct answer. The answers posted can all be correct and they'll certainly help the people who ask these perennial questions since the question will show up on search results.

> these usually acted like clickbait, farming for reputation to gain access to moderation tools.

The reputation problem is solved by turning it into a community wiki so that votes won't be counted towards reputation. At least it used to be solved that way. Do those still exist? I wrote the posts on mobile and didn't see the usual "turn this into a community wiki" checkbox. I assumed they got rid of it. They've gotten rid of a lot of things over the years, I didn't really keep track.

Nothing you said explains why the post was deleted. They could've closed and locked it to prevent additional answers and voting if it's so problematic. They went the extra mile and completely trashed the answer I wrote. They trashed the efforts of other people who wrote helpful comments with references to additional papers on optimizations. Those comments taught me new stuff. They just deleted all of it. I discovered they had deleted the question because I tried to find those references and couldn't.

I can handle closures, downvotes, rude comments, even insults. Wikipedia style deletionism though? Yeah, that makes me think twice before posting anything there.


Yikes.


I've been contacted by collection agencies over an ER bill that I paid up front and in full. The system isn't even designed for that possibility.


> number = -number

They actually point this out when introducing the code snippet in the report.

And then after the snippet:

>> Whoever wrote this code clearly has no understanding of elementary mathematics of the most basic rules of computer programming.


I'd like to say this code is bad, but it's nothing compared with what I put up with on a daily basis.


> it said "= 0" rather than "== 0"

Why do so many programming languages have different equals/assigns operators?

There are languages that combine them and apparently don't have any problems. Is it something to do with being strongly vs. weakly typed?


The C designers wanted to be able to write stuff like `while ((ch = getchar()) != EOF) { ... }`, so assignment needed to be an expression. Secondly, C had no boolean type, and instead integers were used for boolean values (zero is false, nonzero is true). The combination of these two facts entails that an integer assignment is also a valid boolean expression.

To prevent accidental or malicious use of the assignment operator in place of the equals operator in a language, you either have to have a real boolean type, and no implicit conversion of other types to boolean, or make assignments not be an expression, or disallow assignment expressions in boolean contexts.

Making both operators the same symbol is not a good solution IMO, because it makes it harder to distinguish which is which in arbitrary contexts. E.g. in `a = b = c`, presumably the first is an assignment and the second a comparison? Or maybe not? It would just be confusing. Not sure which languages you are referring to that do this.


A common idiom to defang this was the "Yoda assignment":

  if (0 == do_something(foo)) { ... }
If one accidentally omits one equals-sign, it makes the compiler barf instead of becoming a silent-but-deadly kind of bug (whether intentional or not).

In Go, an assignment is not an expression, so the whole thing becomes illegal. I found this approach a bit offensive at first, but I got used to it rather quickly.


> or make assignments not be an expression,

Or just reverse the expression:

    0 == curent->uid
So that the bug case is an error:

    0 = current->uid


Yes, that is well known, but it doesn’t prevent the issue in TFA.


How does it not? Applied literally to the article, it would have turned this backdoor into a compile time error.


Because you can’t trust the person backdooring your code to help you out by writing in this style.


Yes, they could literally violate the coding style, but presumably, that would draw more attention to what they've done, not less.


I don’t think strong/weak typing is the culprit here.

I think partly that being explicit is nice. Assignment and equality are two very different things, so it makes sense for there to be different syntax. You can easily prevent the code in the article from working—just disallow assignment inside of expressions. This is probably a good idea, and a lot of newer languages make that choice.

Even when you read papers about programming, you often see different notation for assignment and equality. Assignment may be <- or := or something, and equality will just be =, to match the mathematical notation. I see a lot of <- in manuals for processors & architectures. I would hate to see something like this in my code base:

    a = x = y;
If that meant “set ‘a’ to true if ‘x’ is equal to ‘y’, and false otherwise.” I would, honestly, be a little pissed off.

I would only accept something like that if it meant (a==x)&&(x==y).


> I would hate to see something like this in my code base:

> a = x = y;

> If that meant “set ‘a’ to true if ‘x’ is equal to ‘y’, and false otherwise.” I would, honestly, be a little pissed off.

Would you find it more acceptable as `a = (x = y)`? To me, that is reasonably clear.


> Would you find it more acceptable as `a = (x = y)`? To me, that is reasonably clear.

No, I don’t consider that acceptable. It is not enough that it is clear to some people who know what they are looking at. The language should be more clear to more people.


It's just syntax. Pascal had := and =


Some to make them more distinct. Some because they treat assignment as an expression, and so either can occur in the same context.

In the former you could combine them. In the latter you can't (you need to be able to tell if "if (a = b) ..." contains a comparison or assignment).

(EDIT: I agree with the sibling reply from klodolph there - there are many cases where reusing the same operator would get really confusing, and so I'd prefer the operators to be distinct even if the language do not allow them in the same context)


It's been my impression over the years that = vs. == is one of the most common mistakes made in languages that use them. In which case, can it really be said to be less confusing?


There are two orthogonal issues here:

1) Do you allow assignment as an expression?

2) Do you use the same operator?

If you answer "yes" to #1, you must answer no to #2, but if you answer no to #1 you can choose whether or not you use the same operator. Consider these examples (assuming that if they're different, we use =/==, but of course any other set of operators could be substituted):

    # A) if 'yes' to 1 this would be a "double assignment", setting both a and b to c.
    a = b = c

    # B) if 'no' to 1, and 'yes' to 2, this would be an assignment of the comparison of b and c to a:
    a = b = c

    # C) if 'no' to 1 and 'no' to 2, this would be an assignment of the comparison of b and c to a:
    a = b == c

    # D) if 'no' to 1 and 'no' to 2, this would most likely be a syntax error:
    a = b = c
With respect to confusion, I'd argue that B) creates a lot of potential for confusion. You'd want "a = b = c" to either be "double assignment" (A) or a syntax error (D). If your language does not allow assignments as expressions, I'd go for C/D exactly for the reason you give, as the main reason not to allow assignments as expressions tends to be exactly to avoid the mistake you mention (it's trivial to support in a compiler/interpreter, so it's a question of whether you believe it's more helpful or more damaging)


Modern languages using that syntax tend to prevent that mistake by either outright disallowing assignments in boolean contexts, or by not having implicit conversion of other types to boolean, meaning that the mistake would be limited to the case of comparing a boolean variable to another value, which is quite rare. Some languages further limit the risk by making variables unmodifiable by default, meaning that it would have to be an explicitly modifiable boolean variable.

Assignment is one of the most frequent operations in typical programming languages, so it makes sense for it to be a single-character symbol, and ‘=’ is about the only fitting ASCII symbol for that. (With non-ASCII, there would be ‘≔’ or ‘←’ (the latter being used by APL), but those are non-obvious to type.)


After reading your link I'm not sure I see the problem you're pointing to.


If the NYT goes under, why would its replacement fare any better?


They'd probably have a different business model, like selling clickbait articles written by AI with sex and controversy galore.

I'm not saying AI is better for journalism than NYT reporters, just that it's more important.

Journalism has been in trouble for decades, sadly -- and I say that as a journalism minor in college. Trump gave the papers a brief respite, but the industry continues to die off, consolidate, etc. We probably need a different business model altogether. My vote is just for public funding with independent watchdogs, i.e. states give counties money to operate newspapers with citizen watchdog groups/boards. Maaaaybe there's room for "premium" niche news like 404 Media/The Information/Foreign Affairs/National Review/etc., but that remains to be seen. If the NYT paywall doesn't keep them alive, I doubt this lawsuit will.


News media like NYT, Fox etc are tools for high scale brainwashing public by the elite. This is why you see all the News papers have some political ideology. If they were reporting on truth and not opinions they won't have the need for leaning. Also you never see the journalists reporting against their own publication.

Humanity is better off without these mass brainwashing systems.

Millions of independent journalists will be better outcome for humanity.


Honestly, this sounds like a conspiracy theory and/or an attempt to deflect criticism from the AI companies.


Ohh. You think being owner of a company whose newspaper is read by hundreds of millions of people every day, doesn't put you in a position of power to control the society?


I think I have better things to do than parse vague innuendo like that.


There is no conspiracy, that's the neat part, it's just how the system itself works.

Media survives through advertising. Those who advertise dictate what gets shown and what doesn't, since if something inconvenient for them gets shown, they might not want to advertise there anymore, which means less money. It's the exact same thing that happens online, it's just more evident online than in traditional media.

How come that even before Oct 7 Europe in general sided more with Palestine than with Israel, whereas it's the opposite for the US? Simple, Israel does a whole lot of lobbying in the US, which skews information in their favor. Calling this "brainwashing" is hyperbolic, but there is some truth to it.


> He also ordered Polychron to destroy all electronic and physical copies of the published work, “The Fellowship of the King,” by Sunday.

It sounds to me like the order applies to published copies rather than to his original manuscript.


I'm assuming that this is just more of Ken Paxton abusing the courts to boost his political profile.

Like that time he sued to overturn other states' elections.


This isn't even the first time[1] Microsoft has done something like this with the curl name. And, then as now, people bother Daniel with support requests.

[1]: https://daniel.haxx.se/blog/2016/08/19/removing-the-powershe...


Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: