412 karma · joined May 31, 2016
My claim is that the "real news" committed the journalistic equivalent of manslaughter. Whether or not they intended to mislead the public doesn't negate the fact that the public was misled. Blaming "fake news" doesn't justify their own role in misleading the public. There is no court of journalism, but the consequences regardless will be that people will trust the traditional news sources less.
Maybe this is too much speculation but it seems like deflecting. Fake news sites weren't responsible for "real news'" complete failure to predict a Trump victory. I've seen little reporting on the attitudes of real Trump supporters. It's mostly reporting of noisy flawed polls and simplistic opinion pieces on why Trump is bad/hitler/stupid and dismissals of his supporters as racists.
IMO I don't think fake news is the problem either (though it is a problem, just not a proportionately large one). It has shades of demonizing independent news sources. Personally I can't stand any cable news source, I prefer to watch "Democracy Now!" I prefer The Intercept, Truthdig, and Jacobin to the NYT or WaPo. They don't peddle fake news whatsoever.
Edit: fake news was not responsible for this: https://pbs.twimg.com/media/CxZVgktWQAAXu8g?format=jpg&name=...
I'd prefer it if the decision to trap or not were an option to the compiler.
It would be nice if there were a GUARANTEE() macro so that the programmer could specify conditions that would never happen even in a production build like: GUARANTEE(n >= 0). Also if trapping was enabled, it would trap at runtime. This is a nice post about that idea http://blog.regehr.org/archives/1096
I'd call compiler specific alignment attributes more arcane, convoluted, and susceptible to future bugs.
Vectorization isn't a panacea. You need to benchmark to be sure, lacking that I expect GCC to be better at optimizing code than you. If you disagree, please manually write a vectorized one that handles non-aligned addition and post your results :)
Vectorization is in general not applicable here since it usually requires aligned memory... not all implementations do, but most. In any case, benchmarking is more appropriate than armchair optimizing.
#include <stdlib.h>
#include <stdint.h>
uint64_t sum (char *p, size_t nwords)
{
uint64_t res = 0;
size_t i;
for (i = 0; i < nwords; i += 8) {
uint64_t tmp;
memcpy(&tmp, &p[i], sizeof(tmp));
res += tmp;
}
return res;
}It's a fact of life that not all syntactic forms will have meaning. What's sqrt(-1)? Trick question, There's no meaningful answer (in terms of real numbers alone)! Why should anyone specify if it crashes the program, returns 0, throws an exception, etc.? Who cares? garbage in, garbage out.
Another example, "the floor had a pretty day with his melted spaceship" that is a grammatically well formed sentence but what does it mean? Don't answer that!
Take my word for it when I say there are upper echelons of black hats that are stockpiling unknown 0-day exploits like this and presently using them in the wild.
Or dismiss me as irrational and continue with the belief that all bugs are unknown until white hats share them with Apple.
This was tweaking Nagle, using edge triggered epoll, using sendfile(). Not just Python-optimizations.
I did extensive benchmarking until there were no more hot spots, didn't help. Dropping into C or Cython was a non-goal. For dev an embedded Python web server is convenient but it doesn't have to be fast. When it comes to performance, it always makes more sense to use a native-code web server in production.
In the end, my implementation was nowhere near nginx. I even ran it under PyPy and it fared no better. Then I realized the oxymoronic nature of writing an optimized web server in Python.
Decentralized: xmpp, email, gnu social
Distributed: bittorrent