dwetterau's comments

dwetterau | 7 years ago | on: Things I Regret About Node.js [video]

Does the xi editor use a JSON transport layer for all syscalls though?

Low-friction interfaces for developers are great but I'm not sure I agree with the comparison here.

dwetterau | 9 years ago | on: Zuckerberg removed a line about monitoring private messages from his manifesto

If Gmail reads private emails to target ads [1], why would people think that Facebook isn't doing the same thing? Also many companies (including Facebook) have agreed to share hashes and cooperate to "remove extremist content from their websites" [2]. It would be naive to think that they are excluding private messages from their searches.

[1] https://www.theguardian.com/technology/2014/apr/15/gmail-sca... [2] http://www.reuters.com/article/us-internet-extremism-databas...

dwetterau | 10 years ago | on: $ cat ~/myfile | curl -X PUT --upload-file “-” https://transfer.sh/myfile.txt

It doesn't appear so, no. The raw bytes seem to be dumped to temp files, local storage, or S3 [1][2] without mention of any sort of encryption step (or reading of a secret somewhere). As mentioned below, you could encrypt before uploading of course. Someone please correct me if I misread though.

[1] https://github.com/dutchcoders/transfer.sh/blob/master/trans...

[2] https://github.com/dutchcoders/transfer.sh/blob/master/trans...

dwetterau | 10 years ago | on: 'RuneScape' Can't Escape 2007

I initially fell in love with programming by botting Runescape. If you want to look at some old (and very very poor quality) code to see what the botting scripts looked like, this was my most popular one: http://pastebin.com/WENWkWEW

There were some really interesting "innovations" in those scripts compared to the other free ones that were available at the time. For example, this script would allow the character to harvest and store wood from trees that would regrow / respawn. This script would time each hardcoded tree to count how long it had been de-spawned (dead) in order to move the bot user to wait by the tree that had been de-spawned the longest when all of the others were de-spawned. This was a good way to avoid being reported because most bots would just wait by the last tree to de-spawn and then instantly start moving to the first one that respawned.

Some other interesting tricks could be found in the "antiBan" method in a lot of scripts. Given a random input this script would move the mouse in some random ways, check some random stats, move the camera around, etc. One additional "antiBan" approach that I implemented for this script was to "take breaks". The idea was that a real player would probably not be watching their account and harvest the wood with perfect efficiency all of the time. Telling the bot to "take breaks" meant that it would turn itself off entirely for a short time (maybe a minute?) and just not react to any input, as if you were using the restroom or doing something else.

I could talk about this stuff for ages, it was great fun. :)

P.S. I have a tiny blurb about it on my website too: https://www.dwett.com/projects/#runescape-bot

dwetterau | 10 years ago | on: WOOT: an Algorithm for Concurrrent and Collaborative Authoring (2013) [video]

I read a paper on this (https://hal.inria.fr/file/index/docid/71240/filename/RR-5580...) and implemented it some time ago just for fun (https://github.com/dwetterau/group-edit). You can play with it on Firebase still here https://grouped.firebaseapp.com/

The biggest problem that I ran into with this approach however was checkpointing. I could never correctly reason about a way to prune the log of updates that you apply that still allows (100% correct, intent-preserving) merges from someone that might have been offline since the dawn of time. Does anyone know if this issue with this approach was ever solved?

page 1