Very Secure

The First Batch of TheFleet's Logs

April 1st, 2020

To view TheFleet's first batch of logs, setup postgres,1 create a user named "thefleet", grant thefleet all privileges on schema public, and create a database named "fleetbotdb".2 Then download and load one of the two sql files that contain the collected data.

fleet2 sql tarball
fleet3 sql tarball

Instructions with commands:

Download the tar of the logs. (You can switch fleet2 to fleet3)

wget http://ztkfg.com/wp-content/uploads/2020/03/fleet2_mar_27_2020.sql.tar.gz
tar -zxvf thefleet2_mar_27_2020.sql.tar.gz; 

Create a home for TheFleet logs by creating a user and database.

su postgres
psql

create user thefleet;
create database fleetbotdb;
grant all privileges on schema public to thefleet;
\q
exit

Load the .sql file into the created db and test to make sure you have at least a couple million rows in the irclog table.

psql -U thefleet fleetbotdb < thefleet2_mar_27_2020.sql

psql -U thefleet fleetbotdb
select count(*) from irclog;
  1. For installing Postgres on Centos6 you can look at the relevant section in my guide to setting up logbot. Name your postgres user thefleet and your database fleetbotdb. []
  2. You can make your life easier by opening pg_hba.conf (found at /var/lib/pgsql/9.4/data/pg_hba.conf on my machine) and changing local connections so that they don't require a password by setting the last value in the column to "trust":

    # "local" is for Unix domain socket connections only
    local   all             all                                     trust
    # IPv4 local connections:
    host    all             all             127.0.0.1/32            trust

    []

Notes on Regular Expressions

March 31st, 2020

In my effort to increase my knowledge of the tools that comprise the linux command line, I've taken the time to review how to use regular expressions by reading a short guide written in 1991. Below are my notes.

***

Regular expressions are used to search for lines of text that match a specific pattern. RE's match text on a per line basis - they do not match patterns that start on one line and end on another.

Characters used for regular expressions can be placed into one of three categories: anchors, character sets, and modifiers.

Anchors are used to specify the position of the pattern in relation to a line of text. Character Sets match one or more characters in a single position. Modifiers specify how many times the previous character set is repeated.

I. Anchors

Two anchor characters are "^" and "$". They are used to match to the beginning and end of a line respectively.

The characters "\<" and "\>" are anchors as as well, see the modifier section below for their details.

II. Character Sets

A simple character set is "hello", this will match "hello" anywhere in the text.

The "." wildcard matches any character.

Characters inside square brackets "[]" match to a character if the character equals any 1 of the characters inside the square brackets.

^[012345689]$ will match a single digit that is not the digit 7.

Square brackets can be used with a shorthand range notation. This shorthand notation can include multiple ranges.

^[0-9]$ is equivalent to ^[0123456789]$

[A-Za-z0-9_] will match a single number, letter, or underscore.

Multiple character sets can be combined by placing them adjacent to each other. Placing a "^" before a character set matches to all characters *except* what is in the brackets.

[aeiou][^aeiou] matches a vowel followed by a non-vowel.

To include a "-" in a character set one can place "-" directly after the opening square bracket. To include a "[" or a "]" one can use an escape backslash.

[-0-9] will match a "-" or a digit.
[-\]] will match a "-" or a "]".

III. Modifiers

The asterisk "*" matches zero or more copies of the previous character set. To match one or more of the previous character set, one can repeat the character set before placing the asterisk.

[0-9][0-9][0-9]* will match a number with 2 or more digits.

To match a character set to text that repeats that character set within a specific range of times, one can use "\{" and "\}". Note that this is an example of when a backslash, normally used to escape characters, causes a character to have a function within a regular expression. Backslashes enabling a special function occurs when the backslash is placed before a "<" or ">" or "{" or "}" or "(" or ")" or a digit.1

[A-Z]\{3,5\} will match 3-5 upper case letters.

The possible values for x and y in \{x,y\} are 0-255. If the y value is omitted, the character set can be repeated x or more times. If the comma is also omitted then the character set must repeat exactly x times.

To search for words, character sets are placed between "\<" and "\>".

"\<[tT]he\>" will match the word "the" (but not to a word containing "the" such as "other".)

Backreferences - i.e. matching to a previously found pattern - are made using "\(,\)" and "\1".

"\([a-z]\)\1" will match two adjacent identical lower case letters.

Extended Regular Expressions

egrep and awk use extended regular expressions. ERE's do not have the characters whose special meaning are activated via backslash - "\{" , "\}", "\<", "\>", "\(", "\)" .

ERE's have two modifiers not found in basic regular expressions:

"?" matches to 0 or 1 instances of the character set before.
"+" matches to 1 or more isntances of the character set before.

Extended Regular Expressions have a special meaning for the "(" "|" ")" - these characters allow "or" functionaity - allowing one to match a choice of patterns.

"(From|Subject}" will match either "From" or "Subject".

===

After reviewing the guide I was left wondering: for basic regular expressions, how does one match a string2 that appears between x and y times in a row. For example:

Say I want to match to a line that contains 2-4 adjacent ha's and no more, i.e. either:

haha
hahaha
hahahaha

I discovered that one can combine the special characters "\(,\)" with the special characters "\{,\}"

A regex that matches the above three lines, and only the above three lines, is:

"^\(ha\)\{2,4\}$"

  1. This awful design comes from an effort to maintain backwards compatibility for old regular expressions that were written before these functions were introduced. []
  2. And not just a single character. []

TheFleet Test Run Results

March 29th, 2020

Over the past few weeks I attempted to log about 2,500 channels across 100 IRC networks. TheFleet ran on 2 VMs named Fleet2 and Fleet3.1 Fleet2 was originally logging ~80 networks, but after about 9 days the program crashed from running out of memory. I restarted Fleet2, and to reduce the chance of the OOM problem repeating,2 I set Fleet2 to log only 35 networks.

The summary of the data collected:3

VM 1 - "Fleet2"

Began logging on March 4th, 2020 at 23:42 UTC and ended logging on March 27th, 2020 at 21:42 UTC.

Logged 2,490,376 IRC messages.

Attempted to log 35 networks.4

Managed to produce logs for 17 of the 35 attempted networks.

Joined 547 channels and succesfully logged 463.5

VM 2 - "Fleet3"

Began logging on February 21st, 2020 at 03:41 UTC and ended logging on March 28th, 2020 at 21:46 UTC.

Logged 5,160,930 IRC messages.

Attempted to log 65 networks.6

Managed to produce logs for 35 of the 65 attempted networks.

Joined 1929 channels and successfully logged 578.7

  1. You may be curious as to what happened to Fleet1. I had a problem with digitalocean's service. I lost the ability to SSH into my machine and could not recover access. I never started logging with TheFleet on this VM, so I gave up trying to regain access and instead created a new VM. []
  2. I still do not have an understanding of what causes/caused my program to spike in memory usage. I plan to continue with my band-aid solution of logging fewer networks per VM while I work to increase my understanding of how my program and computers in general manage memory. []
  3. To count a channel as successfully logged I allowed for an unlimited number of disconnections as long as each of them individually did not last more than 30 minutes. []
  4. MaddShark, LunarIRC, LUGS, Langochat.net, KewlFun, Italian-Amici, IRDSI, IrcWorld, IRCstorm, IRCnet.gr, ircHax0r, IRCFreakz, IRC2, IRC-Ban.de, IndoGaul, Immortal-Anime, IdleChat, Hub4Ever.Org, homo.net, Griefplay, GreekIRC, GreekChat, Gotham, Global-Irc.Org, GIMPnet, GigaIRC, German-Elite, Genscripts, GeekShed, GeekNode, FyreChat, Futuragora, FreeUniBG, ForumCerdas, ForeverChat []
  5. Networks where TheFleet joined at least 1 channel but in the end was not able to successfully log any channel: IRDSI, IRCnet.gr, GreekIRC

    Successfully logged channels:

    GeekNode: #bitcoin, #troll-gloo, #vdmbot, #pr0nfactory, #RMLL2014-mpl, #aigris, #ffdn-mastodon, #testtest, #aprilchat, #marsnet, #edmsio, #quadrature-ops, #gresille, #34c3, #cfai-lr, #fleurix, #ffdn-suivi, #ffdn-dn42, #alternatives87, #gixopdop, #louvilug, #iloth-ca, #neocade, #fdn-projets, #style-python-dev, #3wa-staff, #lae, #monodon, #minecraft_chiantos, #rezine, #lau, #TERRORIMSE, #Midways-Network, #planete-ASM, #AuvernIX, #adipolab, #vlsk, #ilerouge, #homomachinus, #esigetel, #Midway, #ph7net, #geekfault, #dadazedazeaz, #ldn, #tilima, #hivane, #partipirate, #Troll, #franciadmin, #alternp, #joron, #sudix, #manip, #fromagiens.net, #Magellan, #ceriz-admin, #pouetpouet, #cuisine, #larevolutionrousse, #thinkcode, #axinite-staff, #globenet, #chadoc, #freebsd, #zebulon.fr, #sporthi, #elament, #SCANI, #fosdem, #style-potins, #nniiiaaaaaa, #funlab, #hadoly, #ffdn-formation, #octogen, #evilirc, #hackerspacerouen, #style-python, #vic, #duchesse, #hmm-la-bd, #ppmp, #fdn2, #illyse-admin, #rmllbe, #42admin, #picnat, #arn, #united, #Aqualitad, #RPG, #Chikoumi, #ewo, #ffdn-bistro, #yolorandom, #pp-ektek, #april, #wireless-fr, #RadioAutiste, #Latex, #axinite, #RMLL_2018, #exe-dev, #miricorps, #LaboLyon, #sameswifi, #CnedSIO, #geeknode, #capitole, #betaseries, #Jeanne_D'Hack, #lockpicking-fr, #cryptoloutre, #rmll-noc, #igwan, #tdn, #annarx, #labriqueinter.net, #pe, #pan, #gitoyen-tech, #virtualisation, #42, #staffwm, #wdntw, #testwm, #pclight, #extrifusstory, #ndh, #geeknodecamp, #grenode, #naivart, #Tealer, #pp_ploire, #franctest, #mycelium, #francinet, #AuverNET

    German-Elite: #secnews, #aspies, #meinchan, #drehtür, #Nasu_gaming, #reallife, #talk, #shizetag, #german-elite, #magick, #quizfueralle, #QQQQQQQQQQQQQQ, #eule, #serienjunkies, #radio-tekula.de, #Mathematik, #schwanz, #leechomatics, #lecters-cafe, #joschi, #kontrolle, #maniacommunity, #platinum, #talk-signal, #informatik, #Dexit.Party, #subcentral, #hive, #ru2, #music, #soso, #german_alliance, #brains-sub-chan, #froschinger, #beastarium, #hoerbuch, #, #bsd, #froschi, #wbc-exil, #FrinkC, #rcbintern, #kde-kirigami, #nerds, #shadowlamb, #mo, #Nachhilfe, #planetopia, #Unique-Board, #windows, #diamonds, #alietsche, #radio4us.de, #debian, #fotografie, #konsoleros, #hackers, #debianforum.de, #coding, #klagemauer, #linux, #helper

    FreeUniBG: #belene, #manutd, #test, #balchik, #Sexy, #Bulchat, #irc.Gorna.net, #juventus, #plovdiv, #Game, #kex, #viva, #cska, #bourgas, #FreeZNC, #Bulgaria, #svalki, #Jambol, #irc.telnet.bg, #starazagora, #OnlineDJRadio, #5on5, #Dimitrovgrad, #youtube, #metal, #extreme, #shell, #breakdance, #debian, #welcome, #lamerzone, #gotham, #teteven, #Linux, #pleven, #real, #sofia, #IRC, #chatpat, #Rakovski, #alcoholic, #30-40, #Sladur, #London, #svishtov, #lovech, #ignore, #NorthSide, #realchat, #tyrnovo, #Sliven, #sex, #Varna, #burgaz, #burgas, #linuxhelp, #IRCHelp, #ruse, #irc.sabo.bg, #refresh, #novazagora, #empire, #radio, #shivachevo, #velingrad, #20-30, #doom, #Sweet, #overwatch, #BestShells, #VIP

    Italian-Amici: #TriviaTime, #IRCHelp, #chatitalia, #Divx-Italia, #InFiniTY, #eggdrop, #amici-radio, #vhost, #services, #amici-radio-staff

    Genscripts: #WRnet, #Mapantz, #Genscripts, #speedy

    Futuragora: #ajuda, #cosmos, #zeitgeist, #tecnoponics, #lobby, #IRCBrasil, #opers, #fadev, #feed, #radio, #futuragora, #tvp

    Langochat.net: #langochat, #SpamFilter, #aide

    FyreChat: #kosekroken, #kosebakken, #help, #vana-commits, #!stats@fyrechat.net, #fyrechat, #sandbox

    ForeverChat: #rto, #attractmode, #emuchina, #tosecdev, #MFM, #redump, #MFM-dev, #tosec2.0, #roms4italy, #tosec, #wii-rush, #castroom, #rawdump, #PRCows, #oldemuisos, #foreverchat, #aumame, #RomShepherd, #emulab, #gipsforfun, #collectors, #romvault, #retrofe, #retrogamers, #ut99redirect, #retrodatorer, #therealconacrew, #rivalroms, #mame, #RocketLauncher, #gaming.tombstones, #NGC-PAL, #CAX_hackathon, #vgm, #ssotk, #discord, #darkwater, #uconn

    IRC2: #bit-tech, #insane, #gettoduma, #muhely, #zirc, #V1X, #linux, #autocad, #depresszo, #civil3d, #pc-muhely, #tarskereso, #carp-kviz, #asd, #blender, #30_feletti

    Griefplay: #empireoftanks, #wh40k, #worstheap, #thedancefloor, #irchelp, #ff14, #hearthstone, #starbound, #eve-online, #failheap, #RasberryPi, #griefplay

    IRCFreakz: #ninja, #idlerpg, #australia, #eggdrops, #SaD, #sydney, #Trains, #jedstars.net, #Melbourne, #cncirc, #pc-talk, #ircfreakz, #quiltchat, #axon

    ircHax0r: #servers, #irpg, #sec

    KewlFun: #War, #kewlfun, #Yahtzee, #Profiles, #seen, #truelies

    ForumCerdas: #black_sky, #makassar, #satu, #jakartashells, #Yogyakarta, #ForumCerdas, #dsnnet, #abocy, #games, #makmur, #dago25, #depok, #alowaini, #malang, #bitcoin, #medan, #ukhuwah, #game, #batu, #smart, #rusuh, #mp3, #irene, #waroeng, #bot, #our, #jogjakarta, #kediri, #radio

    Global-Irc.Org: #egghelp, #formula1, #GlobaL-CreW, #syslog, #eggies, #idlerpg, #mp3passion-chat, #services, #worldofwarcraft, #hhchat, #friends, #twitter, #opers, #vhost, #speelhal, #walhalla, #movieplanet, #digitalcity, #cservice, #monitoring

    Hub4Ever.Org: #Rock_in_Roll, #brasil, #Linux, #DreaMule-German, #ahummm, #denis, #, #minasgerais, #DreaMule-English, #hub4ever, #Offtopic-Spanish, #Rodrigo, #DreaMule-French, #Games, #Ajuda, #idle, #Bots []

  6. UniBG, ShadowWorld.Net, QuickFox, DarkerNet, DALnet, Cognet, freenode, IRCsource, Chatters, Blafasel, Black-Cell.net, ZwergenIRC, Zoite, zeolia, Xerologic, WNet, UplinkIRC, UKChatBox, TwistedNet, Tweakers, TripSit, TransAdvice, tm-irc, Teepi, tchattons.com, synIRC, swissIRC.net, SwiftIRC, SurrealChat.net, Subluminal, Striked, SoundsNWaves.net, Snyde, SlashNET, SKYROCK, SiberChat.Org, ShadowFire, SceneP2P, SA-IRC, RootWorlD, RisposteInformatiche, RelicNet, RelaxedIRC, Recycled-IRC, PurpleSurge, PSIGenix, Powers.cl, PowaNet, PIRC.pl, Pilgerer, paranode.net, P2PChat, P2P-NET, oz.org, out-dated.net, Otaku-IRC, Omninet, NFNet, Netrusk, mircphantom.net []
  7. Networks where TheFleet joined at least 1 channel but in the end was not able to successfully log any channel:
    NFNet, TwistedNet, WNet, MagicStar, DALnet, ZwergenIRC, zeolia, UniBG, Mibbit, mircphantom.net, PurpleSurge, Pilgerer, P2P-NET, SA-IRC, Tweakers, Subluminal, SwiftIRC, tchattons.com, Zoite, Snyde, PowaNet, out-dated.net, PIRC.pl, synIRC, IRCsource, oz.org, Otaku-IRC

    Successfully logged channels:

    ShadowFire: #slow, #deathrow, #greytower, #ham.ee, #otc, #triumvirate, #chat, #chase, #hack, #selfharm, #shadowfire, #chucknorris, #americas_army, #warble, #finsprite, #avatarshq, #eve, #bandofbrothers, #monkeybong, #programming, #GTClassroom, #ut, #warez, #tatsi, #insolence, #diablo2, #pimpsanonymous, #non-bus, #wow, #afrikaans, #myadsl.co.za, #jeffftest, #guildwars, #weezel, #tempus-test, #elsewhere, #compsci, #tempus, #avatars, #obliq2, #Dent-O-Soft, #zagamers, #tce, #home, #jefff

    DarkerNet: #net.goth

    tm-irc: #de.wikipedia.huggle, #en.wikipedia.huggle, #irc, #simple.wikipedia.huggle, #serviceslog, #es.wikipedia.huggle, #no.wikipedia.huggle, #GrumpyChat, #konnectirc, #support, #meta.wikimedia.huggle, #area51, #opers, #petan, #staff, #pt.wikipedia.huggle

    Recycled-IRC: #KAISHII-FANSUB, #ANIMES-XDCC, #kigen, #linux, #Mangas-Arigatou, #Help-Fansub, #R0bust, #azk-vip, #honeypot04, #TEAM_OHZORA, #GENSOTEAM, #slam_dunk_fansub, #waazaa, #ZEROFANSUB, #Chuushin-Equipe, #help, #g-corp, #ASGARD-PROJECT, #zero-absolu, #frenchzfourtout_chat, #gabou, #ARCADIAN-PROJECT, #honeypot06, #APPLEFIELD_PROJECT, #MOONLIGHT_PROJECT, #shareyuken, #frenchzfourtout, #loups-garous, #roswell, #SFTD.requests, #SFTD.invite, #disku, #news, #oxygene, #Nyawko, #SOT, #ebooks, #pornparadise, #share-movies, #nt3, #foret, #ah-work, #YYH_Fansubs, #enjoy-hosting, #issekigan-animes, #AONOSCANTRAD, #staff-mirage, #p-claymore, #mibu-fansubs, #tenebreuse, #mangaart, #PREDISTRO-TF, #S&T, #honeypot20, #honeypot23, #ouifm, #JOHNNY-SUBS, #sokaoa, #YU-GI-OH!_FANSUBS, #MIRAGE-STAFF-BAKUMAN, #AH-SECRET, #honeypot21, #honeypot22, #honeypot25, #honeypot24, #honeypot27, #honeypot26, #honeypot29, #honeypot28, #TG, #Soumission-Dressage-Esclave, #numero_du_slot, #inulogic, #TOUCH_PRODUCTIONS, #soai-no-naka, #epoke, #honeypot14, #honeypot15, #honeypot16, #honeypot10, #honeypot11, #honeypot12, #honeypot13, #honeypot18, #honeypot19, #irf, #Eden, #Team_25, #ogs-team, #SASALAND, #INFECTIOUS, #RNK-FANSUBS, #honeypot09, #honeypot08, #honeypot03, #honeypot02, #honeypot01, #honeypot07, #honeypot05, #moches, #extAsia, #SUB-NO-NAKAMA, #honeypot17, #NEMESIS, #Briggs, #silex, #scripts, #neoryu-team, #tglobe, #mft, #oldies-fansub, #potos&co, #korben, #azk-check, #pcm, #shinsekai_STAFF, #SPACE, #Asgard-private, #Nemesix, #mofo, #azk-team, #pangya-fr, #EIEN-NO-KIMOCHI, #honeypot30, #The_Eden, #ANIME-HEART, #iNFEXiOUS-ViP, #nt3-staff, #sexe, #wtf, #workforce, #geekeries, #irf-test, #azk-recrute, #issekigan-staff, #SHINSEKAI, #hayakutrad, #darkside

    Chatters: #gatherstyle, #ppm, #jokes-gr, #rock-cafe, #linux, #cs.gather, #test123, #chatters, #enforcers, #uno, #Zougla-ops, #sex

    RootWorlD: #RocK-HeLP, #ATOLLO-FRIENDS, #irchelp

    TransAdvice: #tss, #ops, #stuff, #politics, #opers, #social, #lobby, #geeks, #bopm, #wiki, #support, #420, #mtf, #lobby-nsfw

    P2PChat: #German, #shareaza-french, #Shareaza-Portuguese, #Shareaza-Dutch, #shareaza-Italian, #Trivia, #shareaza-dev, #thebighack, #shareaza-chat, #diapergals, #shareaza-Arabic, #sharelin, #xdcc, #botpark, #Shareaza-Russian, #Shareaza-Polish, #help, #stux-notes, #p2pchat, #shareaza, #crawler, #Morpheus, #Shareaza-Spanish, #alternative, #razaops, #operhelp

    Netrusk: #agelidProd, #linux62, #wafonly, #cul, #heroeschronicles, #terrasse, ##linux, #services, #dehors, #blabla, #Saloon, #jdr, #clan_drows, #poissonrouge, #backroom, #templars, #aide, #sp4nk-test, #secret, #agelidTest, #PUC, #fsmsb, #marchéspublics, #yevon, #privanst, #maps, #linux, #blatest, #yop, #secrets, #anst, #celibataire-fr

    RisposteInformatiche: #Risposte_Informatiche, #raccontieros, #capre, #CAH, #caiusmaximus, #IRCHelp, #ADeltaX, #libera_chat, #olga, #vHost, #Enrico, #Minecraft, #largodellosvago, #mangaring, #Dragone2, #risoluto, #PA, #PokeMMO

    RelaxedIRC: #doghouse, #movies4earth-chat, #Freedom-zone-chat, #tv-caps, #Freedom-zone, #LimitLessChat, #movies4earth, #siosios

    Black-Cell.net: #zavislaci-admins, #zavislaci, #bcserv4, #bcserv5, #the-lounge

    QuickFox: #4paws, #ash-fox, #Reakt0r, #SIN, #psystra, #gimpgirl, #insilico, #insilico.bots, #Quickfox, #void, #cumboys, #insilico.north, #IceRealm, #yiffle, #subnova, #help, #looney, #IS.East.1, #IS.East.2, #exodus

    Powers.cl: #Metal, #linux

    TripSit: #tripsit.me, #tripsit1, #tripsitters, #welcome

    SoundsNWaves.net: #dj-ops, #justicequest, #frozzbozz, #awesomeradio, #One_Day_At_A_Time

    UKChatBox: #help, #UKChatBox

    Striked: #starburst, #d&d, #xenophase, #boobies, #rawr, #ashtear, #unreal, #idle

    SlashNET: #newtotse, #skulserve, #perlmonks, #lp301, #CriticalFailures, #lp201, #xkcd-music, #pugglewump, #mineraft, #xkcd-sciencefiction, #offtopic, #m-ei, #newrepublic, #innercircle, #newswire, ################################, #kotkamafia, #SETI@home, #zotsluts, #tagmods, #sex, #死, #☭, #paforums_tf2, #boringman, #bucketlog, #pax_gw2, #nricciar, #geohashing, #xkcd, #REDinfo, #idiots-club, #shakespeare, #jupiter, #retrocomputing, #gmg.minecraft, #thegentlemanloser, #codelove, #help, #xkcd-gaming, #xkcd-coding, #eccentric, #LTI_OTR, #℻, #omgcheckplease, #xkcd-signal, #secret-channel, #compsci, #pax_ffl, #twowords, #death, #urination_fans

    ShadowWorld.Net: #ZZZzzzz, #sanctuary, #AAaasstt, #_zzZZZzzz, #cybex.bots

    Teepi: #tribu, #musique, #pcinpact-linux, #asw, #aide, #cab, #wic, #teepi

    UplinkIRC: #minecraft, #UplinkCorp, #jgkamat_, #defcon, #multiwinia, #darwinia, #usurper, #xplice, #wow

    swissIRC.net: #just4fun, #newnigma2, #newnigma2-np, #oscam, #linux, #!/bin/sh, #schaildisoft, #2k5, #newnigma2-team, #Hilfe, #ump, #Treffpunkt

    Xerologic: #ux-chat, #COSMIC, #apps, #MP3JAROCHOS, #ultra-xero, #MASTERWAREZ, #TH3D3N, #zuul-central-xdcc, #pwnd, #scorpio, #xboxland, #1warez, #warez, #moviegods, #toonland, #tdz, #beast-xdcc, #UX-BOTS, #console-world, #search, #psp-moviez, ##COSMIC-BOTS, #MP3GROSEROS, #xboxland-mp3, #MP3GHOSTZ, #xboxland~boobies~bits, #hidd3n-zauberbude, #attrition, #the-club, #cracks, #xvids, #psp-world, #all-new-movies, #movies-r-us, #sb-movies, #mp3, #warez.net

    MauriceRadioLibre: #hopm

    RelicNet: #lobby

    Blafasel: #pybottest, #support, #, #w, #flipdot, #perl, #EstrBny, #test123, #apollo, #cccamp, #go, #freifunk, #fubbi, #unix, #iridium-messages, #33c3, #Badewanne, #ffmuc, #WakeUpFpletz, #game-on

    Omninet: #caleb, #omnomirc, #sorunome, #nspire-lua, #knexflux, #private, #SWLing, #games, #radio, #thebot, #programming, #prizm, #~#withgznc, #br330t, #digital, #lgbt

    MeFalcon: #Das_gebluemelte_Sofa, #Northsman, #Smugglers-BaR, #mefalcon, #radio-hilfe, #quizz, #blubb, #susi, #help, #News, #miroos-privaty, #radio, #DeichMupfel, #neurobeat, #party

    MindForge: #entre_nubes_

    Cognet: #acknak, #dc, #void, #food, #cats, #ccdc, #nomail, #uiuc.notlosers, #SHADOWRUN, #matrixtest, #matrix, #dorks, #tamulug-officers, #minecraft

    SKYROCK: #irc

    PSIGenix: #maplestory, #fitegaem, #aethera, #nwifi, #sushi, #pfalzerwald, #frotzbotdev, #test, #oscuro-destiny, #support, #bottestlab, #coperia3, #deep13, #, #spellbound, #ddb, #rtfo, #gamemusic, #s3pmemag, #werwerwer, #j-poop

    paranode.net: #thelounge, #test, #medusa, #geek, #jungletrain

    SurrealChat.net: #Diagnostics

    []

The Costa Rican Government Has Closed All Beaches and Banned The Sale of Alcohol

March 24th, 2020

The Costa Rican government has announced "Ley Seca" - i.e. temporary prohibition - in response to the coronavirus hysteria.

drylaw-10

But when there's a Will there's a way. The booze black market is alive and well.

drylaw-11

In addition to banning alcohol, the CR government has also mandated that all beaches be closed to the public. Playa Junquillal is always deserted, so I'm not sure how the law applied in this location is supposed to help stop the spreading of a contagious virus.

Anyways, I heard reports that police were calling surfers out of the water so I decided to investigate how the sand ban is being enforced. I took the rav4 for a spin to see if they had closed off any entrances to the beach.

This beach access is open, the sign is a warning for rip currents.
drylaw-5

There's no one on the beach, but again, this is normal for Junquillal.
drylaw-2
drylaw-3

Another beach access point, also open. I checked all of the entrances off the main road so to save time I stayed in my car to take the rest of the pictures.
drylaw-6

Another open access point.
drylaw-7

Alas, we arrive at evidence of the beach ban. Hey dog! Where are you going? Didn't you get the memo?

drylaw-8
drylaw-9

Surfing Localism

March 22nd, 2020

Today I was nearly assaulted while surfing the break five minutes walking distance from where I reside. The fight began shortly after I unwittingly found myself next to a surfer gang. I paddled for the same wave as someone else. I conceded the wave, but apparently even considering going for the wave was a crime and the surfer's buddy started cursing me out. The pack of 3-4 surfers told me to leave the area.

I held my ground water. While I respect the lineup hierarchy, I'm not about to leave a break because some punks tell me to. One of the brazen shitwads paddled up to me and started splashing at me while saying something like, "Get the hell out of here, I already told you to leave." I told him to go fuck himself and in response he got off his board and began to swim at me.

He grabbed my surf board and told me he was going to rip out my fins and then attempted to do so. I was wondering whether I was going to have to go to blows with him. But I wasn't going to be the one to start an aquatic fist fight. I just stared and cursed at him as he tried to pull the fins out of my board. I'm not sure why he thought he was going to be successful - most fins are screwed on tightly and mine are no exception.

After the cunt gave up trying to pull my fins out, I slightly distanced myself from the gang. They were chatting and didn't notice when the current pulled them out of the spot they were previously attempting to defend. So I enjoyed quite a few great waves right where I had originally wanted to surf.

After the session I discussed the events with taxi-driver-turned-amigo over lunch. He said I should have gone and gotten a machete + raised a gang myself and waited for the punks on the beach. While this sounds fun, unfortunately I do not have time to get myself involved in surfer territory wars.

A Short Trip Through Paradise with Friends of Over Ten Years

March 18th, 2020

Before I begin the tale of a wonderful journey with two of my closest friends, I will first introduce the gallo pinto. El gallo pinto, or "the spotted rooster", is the typical breakfast in Costa Rica. The base is rice and beans. In a home environment these are leftovers from the previous day's casado. This base is often mixed with natilla, a sour cream that's not so sour. The other ingredients are a combination of bread, eggs, sausage, cheese, and plantains. It seems like quite a heavy dish to start the day, and it is. Those new to Costa Rica often shy away from this breakfast, but once one has eaten it a few times the meal gets added to the list of reasons to get up in the morning.

arieljamie-66

Anyways, two week ago two of my friends from Stuyvesant High School1 travelled to Costa Rica from the US and Paris. One is about to begin residency for head and neck surgery, the other is 1-2 years away from completing a dual Ph.D. in Physics. The former went to Princeton for undergrad and is finishing med school at NYU this year. The latter escaped the hell of Chicago University to complete his degree in an exchange program in Paris at Sorbonne Universite.

The amigos stayed for the first few nights in Playa Negra Hotel. The hotel is a tad expensive owing to its location right on the beach. It contains a gated area with a bunch of isolated cabinas. The hotel also has a restauraunt (to my right in the picture) which serves a great gallo pinto albeit at about triple the usual price.

The transition from the hotel to the beach is seamless.

jamiespics-2

On the first day of my friends' visit we fixed the 1st of 2 flat tires the rav4 received during the trip. I had read and took notes on all the steps in my car's manual and watched an instructional video to prepare for this moment. But alas I had not done a practice run. As expected, I encountered an unexpected problem. The lug wrench did not fit easily around the nuts of the wheel, it was so difficult to use the tool that I figured I had the wrong wrench and called a tico surfpal for help.

He rolled up with a car full of surf groupies that were perhaps impressed as he saved the day. After examining the situation surfpal assured us we had the right sized lug wrench and used a makeshift hammer to bang it onto the nuts. After putting on the spare tire we patched the flat tire at the mechanic, ordered a new tire for the next day, and then headed to Tamarindo where I gave my friends a surf lesson.

The forecast had predicted large waves for the day, but the water in Tamarindo was flattissimo. This made the lesson difficult and, unlike Adam, my friends struggled to catch their first wave. But in the end they both got to stand up for at least one ride.

Tamarindo has a pop up night market on Thursdays. It was Thursday, so we went. The market has all sorts of goodies: essential oils, shiny rocks, mixed drinks, and tasty food - some of which is infused with thc.

A tasty delight that I must mention is the acai fruit. Acai is not grown locally,2 but it is sold commonly here. The night market has a food truck that specializes in "Acai, smoothies, y mas"

jamiespics-1

As I am writing this up while admiring the picture of the most delicious acai bowl I've ever tasted, I realize the woman lying on my bed is the same one in the tank top in the background. We met the night this picture was taken. My friends had chatted with her and her Argentinian friend while I was somewhere else catching up with old Tamarindo acquaintances. My friends later introduced me to her and friend. My friends are good friends.

After the night market we went to go jam with the surfpal who had helped us fix the flat. He has a kitten named THUNDER who roams around his house. THUNDER likes to accompany people on walks and demonstrate his ability to climb various trees.

arieljamie-35

I dropped off my friends at Playa Negra Hotel and then returned the next morning to eat breakfast with them at the hotel's restaurant. When I arrived I looked at the ocean and oh-my-god the best waves I've seen since I returned to CR in October were going off one after another. My buddies told me that they were exhausted from travel and invited me to skip breakfast and go catch some of the 1-2m waves that were breaking over the coral reef. I didn't have a leash3 with me, but I went to the surf shop and bought one just so I could surf this morning. Luck was with me as someone was on the beach to catch on camera the waves I caught on water.

srufpicsquality-2
srufpicsquality-4
srufpicsquality-5
srufpicsquality-6
srufpicsquality-7
srufpicsquality-8
srufpicsquality-9
srufpicsquality-10
srufpicsquality-11
srufpicsquality-12
srufpicsquality-13

After my surf session we went and prepared the car for the road trip by checking its vitals, replacing the patched tire, and filling it up with gas.

We left the next morning for the Selina in Nosara. I've been to a few Selina's throughout Latin America - all of which are nice - but this one was by far the best in terms of the aesthetics of its design. The hostel wonderfully integrates the buildings with the surrounding nature to give its guests the feeling they're in the best tree house complex ever made.

jamiespics-3

Before partying at Selina we went to the beach, Playa Guiones, where my friends practiced surfing in the white water as I selfishly paddled out alone to score a second epic session. In Guiones the waves break over sand instead of reef, so there are rarely barrels or steep sections. The plus side of this is there are many peaks so you don't have to compete with as many surfers for a wave. I surfed, got lunch with the amigos, and the surfed again until sundown. When I paddled to shore I was so tired that it felt as though I was pushing through wet cement instead of water.

Had I planned the trip for myself I would have stayed in Guiones. Selina's was fantastic and the rule of the surfing lifestyle is once you find good waves you don't move. But in retrospect I am happy that my friends wanted to travel to see the scenic inland of Costa Rica. After our one day in Nosara we hit the road towards Monteverde.

As has become common occurence in my life, I was punished for not listening to Diana Coman's advice. I did not study the map from Nosara to Monteverde, and Google Maps tried to save us 1-2 minutes by taking us off the high way and sending us through a "shortcut" that required (1) driving on a road in bad condition by CR standards (2) driving through a river. Only once I came face to face with the river did I give up on the "shortcut." We had to retrace our steps to get back on the highway. This fun pot hole filled detour added about 30-40 minutes to the drive.

We arrived in Monteverde. If you have a desire to breathe some of the freshest air the universe has to offer, come here. The climate is perfect and boy does the breeze feel nice. The mountainous area is a lush green during the heart of the dry season. We spent the evening and the following day hiking through the cloud forest and viewing a butterfly garden.

Please note little birdy.

arieljamie-100

Anteater looking dude who tico surfpal informed me is not actually an anteater

arieljamie-106

This was some weird foam that was on the side of the tree. Plox for comments explaining what/why this is.

arieljamie-132

arieljamie-133
arieljamie-150

I am not quite sure what these bags are for, "Concentrados Nutricion Animal" ... so someone is providing food for animals in the rain forest?

arieljamie-158
arieljamie-159
arieljamie-160
arieljamie-167

We ate breakfast at a restaurant that has a garden where the waiting staff places fruit out to attract exotic birds for the pleasure of the patrons as they eat their gallo pinto. We met a squirrel who has recently gone into modeling. We tried to warn him that if he keeps eating all the food meant for the birds he is going to get fat and lose his job.

jamiespics-10

jamiespics-6
jamiespics-8
jamiespics-10

arieljamie-200

Sigh, he didn't listen.

arieljamie-211

arieljamie-212

jamiespics-7

arieljamie-225

This massive bird occasionally let the other birds eat some fruit as well.

arieljamie-232
arieljamie-234

arieljamie-258

jamiespics-9

arieljamie-254

The butterfly garden had an introductory presentation on various bugs in Costa Rica. Our lecturer kept laughing nervously after discussing various aspects of bug sex life. But he was comfortable picking up all sorts of critters, from scorpions to beetles with pincers.

arieljamie-264
arieljamie-289
arieljamie-315
arieljamie-292
arieljamie-305
arieljamie-319
arieljamie-320

Both sunrises at our Airbnb in Monteverde were blessed with a moon set and a multi-hued sky.

arieljamie-187

arieljamie-342
jamiespics-5

For the last day of our adventure we drove around Arenal Lake to see the Arenal Volcano and La Fortuna Waterfall. The drive was beautiful - more windy4 roads that offered a great view of the lake. We stopped for gallo pinto at a little restauraunt that had closed before we arrived but happily reopened to serve us breakfast.

arieljamie-353

When we arrived to a national park near Arenal, I stupid'd and locked us out of the rav4. The problem was resolved in 45 minutes with the help of 40,000 colones. On the bright side I learned what are the tools required for breaking into a car.

arieljamie-362
arieljamie-363
arieljamie-365

We did a 2-3 hour hike through a forest next to the volcano. This time we saw some interesting animals including an ostrich type bird with a yellow beak that bobbed its head back and forth as it walked.

arieljamie-386

Colorful lizard dude.

arieljamie-395

A tree with some interesting roots.

arieljamie-429

The path to a 400-year-old tree.

arieljamie-400
arieljamie-427

The 400-year-old tree tree.

arieljamie-404
arieljamie-406
arieljamie-405
arieljamie-416

The volcano.

arieljamie-432

arieljamie-434

whaack

jamiespics-11

At one point during the trip one of my friends said something along the lines of, "why don't you put away the camera and enjoy the moment?" I share the same sentiment, it bothers me quite a bit when people are cam whoring.5 But ztkfg has greatly increased the amount I value photos, and I find myself taking way more photos than I did before. I am doing my best to get the balance of photo / no photo right. Since bringing my camera to La Fortuna meant hindering the experience of swimming by the waterfall, I decided to leave it in the car.

But before I put away the camera, I took a shot of important La Fortuna rules.

arieljamie-442

The morning we had to drive back to Junqui we had to fix our 2nd flat tire. I realized hammering the lug onto the nuts was not necessary. I just needed to clean the area around the nuts before attempting to attach the lug. Derp.

arieljamie-445

We got back to Junqui, had a relaxing evening at my beach, and the next morning I dropped my buddies off at the airport. The day before they left Trump announced the travel ban to Europe. My friend from Paris was able to get back home just before the grace period ended.

I am grateful and proud to be friends with my two visitors. As a teenager I certainly didn't have the capacity to wisely choose who to surround myself with, but the dice roll of high school social life landed in my favor.6 Today there are a few political issues where we don't see eye to eye, as polite conversation during our last dinner revealed. Regardless, I expect our bond to remain forever strong.

  1. Their names can be discovered by examening the pictures in this article. []
  2. I believe it is imported from Brazil. []
  3. Which I don't like to use in general, but since there was a crowd and the waves were big and surrounded by rocks a leash was ~mandatory. []
  4. I mean windy as pronounced with both a long and short "i" vowel. []
  5. Especially when the "camera" being used is a dumb phone. []
  6. I can't say the same for MIT. While I have a few friends there the connection that I have with my high school friends is substantially stronger. []

The Better Surfer Has The Right of Way

March 4th, 2020

The right of way on a wave belongs to whoever is higher in the lineup's pecking order. This remains true despite the rules kooks hallucinate exist. Their imagined rules come from general guidelines at best and dangerous misconceptions at worst. Let's go through a few of them and point out their problems.

The most ridiculous imagined rule is you got the last wave, so I get the next one. This is socialist surfing mentality. It's not the job of every surfer to be tallying the number of waves every other surfer in the water has ridden. If a beginner finds himself in a spot where a crowd of surfers catch all the waves in a set and return before the next set arrives, the beginner should move to a different break.

The most common and most dangerous imagined rule is the surfer who catches the wave closer to the peak gets the right of way. There is some merit to the principle behind this. The surfer who begins the wave on the peak gets a faster and longer ride than one who catches the wave on its shoulder. However, very often the best position to catch the wave is past the peak with the intent to ride towards the peak and cross it. With the right wave and proper form, crossing the peak will result in getting barreled. Kooks are scared to approach the peak and consistently catch waves too wide on the shoulder; they can't fathom that the wave can be caught from the other side of the peak. So when catching their own wave they assume surfers on the other side of the peak will ride in the direction away from them. The kook finds himself in the situation where he thinks he has the right of way, because no one is betweeen him and the peak, but then is surprised as the more experienced surfer comes flying out of a barrel full speed in his direction.

The last imagined rule for examination is, snaking is not allowed. Snaking is when a surfer paddles behind and around another surfer while that surfer is paddling for a wave.1 Kooks whine about being snaked when what usually happened is through their own lack of awareness they missed the surfer as he paddled into a position better than theirs.

The right of way belongs to the better surfer. Take waves from those who fall, give waves to those who surf with grace.

  1. The term snaking has different a different meaning depending on who you ask. Some use it to mean the general act of snagging another's wave. []

Learning The Linux Command Line

March 1st, 2020

Knowledge of the linux command line lets one write powerful, concise programs. Every time one learns a command, they acquire a new tool for solving certain types of problems. Individual commands can then be used as well understood components in larger programs. Creating these programs is done via piping, a syntax that feeds the output of one command into the input of another. With piping, the benefit of using the command line increases combinatorically in relation to the number of commands one masters.

Following the footsteps of others, I have set a goal to improve my ability to wield the weapons the command line offers. I aim to learn one command per week starting with curl, awk, sed, and grep. Learning individual commands will be supplemented with reading a text that provides a holistic understanding of the command line. I will publish annotations of the programs I write1 for review on ztkfg.

  1. Along with annotations of others' programs []

Building a Local Bitcoin OTC Network in Guanacaste

February 25th, 2020

I would like to build a well connected btc otc network in Guanacaste.

The main reason for building this network is to meet intelligent, self-reliant individuals who live near me. It's dubious whether searching for people interested in trading btc is the best way to accomplish this, but hopefully it's a step in the right direction. Should I meet a few like minded people, I will try to bring them together once a month for coffee or an event similar to jfw and dorion's Junto.

I want to form an otc network also for a straightforward reason - to have more options for trading bitcoins for fiat and vice versa. I have some virtual fiat in the US, and I'm expected to get some more in the next couple of months. I would like the fake money there to turn into fake money here. The steps to do this are: find someone selling btc in the US, venmo/square/paypal/bankxfer fiat to them for the btc, and then buy colones here with a portion of the acquired btc. Voila, en esta manera el dinero llega aqui sin el gobierno de los EEUS tomando ni una gota.

Finding people who trade btc around here is tricky. Guanacaste is a province of small rural towns/villages; it does not have a highly populated city.1 However, should I manage to find some btc traders lurking in the jungle, my value as an otc hub will likely be greater than if I lived in a major city.

I've asked lord hanbot for advice on how to build the network.

hanbot_abroad: http://logs.ossasepia.com/log/trilema-hanbot/2020-02-18#1001398 << this is probably kinda challenging where you are, but the expat presence may help. regularly search for bitcoin-related events (i'd bet there's a liberia group that meets to derp around, for instance), attend them, talk to everyone there, ask who's trading, etc. ask all the people you're paying bills to if they accept coin. look for any small business
ossabot: Logged on 2020-02-18 15:38:50 whaack: My goal is to build contacts rather than to satisfy an immediate need for a trade.
hanbot_abroad: es that do accept btc, coffee shops etc, and ask to talk to the manager, see if they want to buy or know someone who does.

The only person I pay bills to is my landlord and given her older age I have not bothered to ask if she accepts coin. I checked for meetups in Liberia but so far have found none. I messaged the 8 businesses listed within 3 hours driving distance on coinmap.org.2

I looked for real estate being sold for btc. I found exactly one listing and I contacted the broker. He is the only person so far who seems promising. Although he is not currently looking to trade now it seems he may be interested in the future.

My next step is to contact potential btc traders in San Jose and ask them if they know anyone who trades btc in Guanacaste.

  1. According to population.city, Guanacaste has a population of ~327,000 and Liberia is its largest city with a population of ~52,000 []
  2. I've received 2 responses that stated they accept btc for their services but are not interested in trading btc. []

Search Engines Cannot Be Used To Answer Questions About Commonly Misunderstood Concepts

February 19th, 2020

See if you can answer the below question for yourself:

With both feet firm on a standard bathroom scale (no jumping) and without touching any other object (no pushing your hands against a low ceiling) is it possible to contort or move your body in a way that increases the force read on the scale to a value at least 5kg higher than your standing weight?

...

This question came to my mind as I was trying to understand how surfers generate speed via pumping. In the context of sports, pumping is the act of generating speed by contracting and extending one's body in accordance with gravity. Skateboarders pump to gain speed on a half pipe. Trapeze artists pump to swing like a pendulum. Children do the same on swings. The beauty of pumping is it's a way to generate momentum without having to push off of another object.

I correctly inferred the answer to my stated question is yes. But my intuition of how to apply the additional force to the scale was wrong. I thought the method was to stand up from a squat. My reasoning was the muscles in one's extending legs push off the ground, applying an extra force on the scale. In actuality standing up decreases one's apparent weight. And if you fully commit to the extension, i.e. by jumping, the force as read on the scale decreases to 0kg.

Since this misunderstanding is common, it is ~impossible to use search engines to find a proper explanation for the stated question. I found my broken logic marked as the correct answer to a related question on physics.stackexchange.com (archived.)

The question:

Why is the apparent weight smaller when you crouch down on a scale?

The question is asking for an explanation for something that is not true.

And the green check mark'd "correct" answer:

To shamelessly steal what James says above: the scale doesn't measure your mass, which remains the same no matter where you are, or what movements you make. The scale measures your weight, which is your mass multiplied by the acceleration due to the Earth's gravity, acting between your feet and the base of the scale.

You will measure your correct weight only if you stand on the scales without moving. As soon as you bend down, the muscles in your body that do the bending also act to pull up the lower half of your body. So this reduces the pressure your body places on the scales, and make you appear to weigh less.

Then, when you straighten up, your muscles act to force both the upper and lower halves of your body away from each other, now the scales will show a heavier weight since the lower half of your body puts a greater pressure on the scales.

Absolutely wrong.

There was a comment that appeared to come to the rescue.

That's patently false.

Yes it is! But the comment continues...

Your muscles don't have to pull any part of your body down. All you have to do is to put part of your body in free fall, in which case there is no necessity to hold it in place in an accelerated observer system like that of the floor. Try this by holding a 20lbs weight in both hands while standing on the scale, then let it go. Are your muscles performing any work? Is the scale showing 20lbs less while the weight is falling? Disclaimer: if you crush your feet while doing this experiment, I am not responsible, you are simply not suitable to be an experimentalist.

He fails to explain why the answer is wrong and appears to share the same misunderstanding of the author of the original answer.

Crouching down does not decrease your apparent weight. It's exactly opposite. Crouching temporarily increases the force applied to the scale. Straightening out temporarily decreases the force.1 To pump you squat while descending and stand up while ascending.

Answers to questions that require thinking are difficult/impossible to find through search engines. Google confirms what you already believe. This isn't restricted to politics. Google gives results that contain the wrong answer to basic questions regarding classical mechanics.

  1. The best explanation I can come up with is based on conservation of momentum. When one squats down they gain momentum downwards, so there must be something gaining equal momentum in the opposite direction. That something in this case is "the earth". When your body and the earth approach each other, your legs must exert an extra force on the earth to retard your momentum back to 0kgm/s as you come to a halt in the squat position. Then, when straightening out from a squat, your muscles extend to give you momentum in the upward direction. "The earth" simultaneously moves away from you, decreasing the force applied at the contact between you and the scale.

    I don't have a scale with me in my apartment but I imagine if you put a scale sideways on the wall and lied down while crouched next to the scale and then pushed off the scale you would see a different result. Straightening out in this case would apply a force on the scale. I enjoyed working through this question so I'll leave the puzzle of figuring out why this scenario is different from the original vertical one as an exercise for the reader. []