tunwg --port=3000
and tunwg --port=3001
give two domain names
Init each DB: initdb -D .db0
and initdb -D .db1
Procfile.init:
postgresql: postgres -D .db$PORT_OFFSET -p 500$PORT_OFFSET
/** | |
* @param {string} url | |
*/ | |
function fetchJSONP(url) { | |
return new Promise((accept, reject) => { | |
const req = `jsonp${String(Math.random()).replace(".", "_")}`; | |
const scr = document.createElement("script"); | |
scr.src = url + `&callback=${req}`; | |
scr.onerror = cleanup; | |
document.head.append(scr); |
It just crystallized for me what I think has been mistaken about thinking of unwanted interaction on social networks as a "privacy" problem. It's not.
A privacy problem is things becoming known more widely than they should, subject to surveillance and contextless scrutiny.
The onslaught of sexual harassment on platforms like early Twitter (and later twitter for people of notability), @KeybaseIO, every naive social network is an attack on the right to exist in public. It is the inverse of a privacy problem.
But the conceiving of this as a privacy problem brings the wrong solutions. It means we are offered tools to remove ourselves from public view, to restrict our public personas, to retreat from public life. It means women are again confined to private sphere, denied civic life.
It's so endemic, so entrenched, and so normal that women should have to retreat to protect ourselves that we think of this as part of femininity. A strong civic life is seen as unfeminine, forward. It poisons us politically, socia
It sure would be a shame if say, if you clicked a link, the page that loaded could just talk to the whole internet from your computer, right? Imagine the malice.
So browsers stop that shit cold. Nobody would use 'em if every time you got on the web it stole your TV.
Now, javascript can do some limited stuff, since CORS hasn't existed since the dawn of time and it would break large chunks of the web if this suddenly stopped working. It can:
You don’t have to get married if you don’t want to. You don't have to have kids if you don’t want to.
It's nobody’s job to flirt with you or be flirted with. If you’re into someone, do the work and tell them.
Your clothing and hair and other style choices are to make YOU feel good first and foremost.
Signaling to your people is the secondary job of hair and clothes. But don’t dress for them. Be you, they’ll see it.
listen on :: | |
table aliases file:/etc/aliases | |
table anyone { "@" = archive } | |
accept for local alias <aliases> deliver to mbox | |
accept from any for any virtual <anyone> deliver to maildir "/var/lib/archive/%{rcpt:lowercase|strip}" |
Know how the network clusters. Then when someone's reported, see how the clusters relate. Finding the source isn't too many hops. That'll help find the inciteful players -- the Milos, for example. It won't find people who organize in another medium, but are unrelated on Twitter. But second order analysis of who piles on connects them. Another mode of clustering.
In either case, be more suspicious based on (network) distance.
Then on the product design side: Make a way to separate users, and their first order follows. You report someone & computation checks it out as from a far cluster, and especially if it can find an inciting event? Just block those mentions. Like don't even let the tweet be posted. Gonna mention someone's username? Then you gotta not be a jackass.
It's reactive, mostly automated, but it takes reports seriously. It can eliminate the pile-on effect, especially if you run the algorithm proactively when someone's rate of mentions goes way up.
Also rate-limit non-conversational mentions b
[email protected] /Users/aredridel/Projects/npm/npm-website | |
├─┬ @npmcorp/[email protected] | |
│ └─┬ [email protected] | |
│ ├─┬ [email protected] | |
│ │ └─┬ [email protected] | |
│ │ └─┬ [email protected] | |
│ │ └─┬ [email protected] | |
│ │ └── [email protected] | |
│ └── [email protected] | |
├─┬ [email protected] |
<script src=t1.js></script> | |
<script src=t2.js></script> |
0 info it worked if it ends with ok | |
1 verbose cli [ '/home/users/aredridel/Library/node/lib/node_modules/node-bin/bin/node', | |
1 verbose cli '/home/users/aredridel/Library/node/bin/npm', | |
1 verbose cli 'rm', | |
1 verbose cli 'node-bin' ] | |
2 info using [email protected] | |
3 info using [email protected] | |
4 silly loadCurrentTree Starting | |
5 silly install loadCurrentTree | |
6 silly install readLocalPackageData |