ec changed the topic of #elliottcable to: a ~ℙ
<ec> alexgordon: yes
<alexgordon> yes
<ec> alexgordon: how busy are you? :P
<alexgordon> erm
<alexgordon> so so
<ec> alexgordon: help with Paws? :3
<alexgordon> ask micah
<ec> incomprehensibly: yes
<alexgordon> don't understand the paws
<alexgordon> LOL
<ec> alexgordon: don't need to!
<alexgordon> ok
<ec> alexgordon: I've got a nice, extensive, clear todo list right now
<ec> that's why I'm even bothering to hit you up :P
<alexgordon> I've got a nice, extensive...
<ec> ha ha
<alexgordon> I dunno what you want me to do
<ec> shit, I definitely just ate plastic fork
<alexgordon> you what
<ec> bit too excitedly and exploded one of the tines into my rice, and then immediately swallowed in surprise
<ec> well shit, that's going to go badly for my insides later
<alexgordon> shit!
<alexgordon> don't slice your hand
<ec> ugh you don't even want to know the last two things I did to my poor hands
<alexgordon> or burn your other one
<ec> alexgordon: well, I want to get you excited about Paws again. It's a good time, because I've 1. got a working implementation you can kinda play with, in one branch, 2. have a very clear plan-for-implementation of all *upcoming* changes to the language, and 3. a *huge* catalog of low-hanging-fruit work on the implementation
<ec> anyway I explained Paws to @VanguardVivian tonight and she's not even a programmer
<ec> it's so simply simple
<alexgordon> um
<ec> implicit CPS man, that's all there is to it, rly
<alexgordon> ok
<alexgordon> explain away
<ec> explain what, Paws? meh, it's not special enough to need explanation
<alexgordon> LOL
<ec> I can walk you through the existing codebase, though
<alexgordon> where's the code?
<ec> lol alexgordon
<ec> I got over that years ago
<alexgordon> what's happening?
<alexgordon> where am I?
<alexgordon> who am I?
<ec> as incomprehensibly said, 90% of the Paws Mystique was just me being waaaaay over-excited and explaining badly because I thought I'd changed the world
<alexgordon> in the meantime I actually did solve the problems you were trying to solve in the first place :P
<ec> oh?
<ec> I don't buy it, if you're not doing implicit-CPS
<alexgordon> last year
<ec> I'm still just as fanatically convinced that the basic shape of Paws is a Necessary Thing in the world; I just no longer thing it's particularly *special*. Just weirdly-missing.
<alexgordon> ec: it does involve implicit CPS
<ec> show me omg
<ec> you've been doing language work without me, alexgordon, I'm hurt >:
<alexgordon> it wasn't very groundbreaking
<alexgordon> but ok, it revolves around async combinators
<ec> combinators, define
<alexgordon> function functions
<ec> also git clone github.com/ELLIOTTCABLE/paws,js
<ec> higher-level functions?
<alexgordon> yeah
<alexgordon> but over functions that are written in CPS
<ec> crap like those?
<ec> kk go on
<alexgordon> coffeescript?
<alexgordon> cool
<ec> yeah ugh its the worst
<alexgordon> it's great!
<alexgordon> I love coffeescript DON'T SAY ANYTHING BAD ABOUT IT
<alexgordon> :P
<ec> but it's better than ES5-JavaScript; and ES6 isn't mature enough for me to put in the effort to erase my technical debt by switching to it
<ec> yeah.
<alexgordon> the only reason I use coffeescript is because of list comprehensions
<alexgordon> (x for x in y)
<ec> I'll be completely re-writing in non-CoffeeScript someday, but that someday is at least a year down the line
<ec> I *never* use those. ever. I much prefer functional / chaining mutation on lists
<ec> forEach over for-in, etc
<alexgordon> lol that _is_ the functional way of doing it
<alexgordon> that's what you do in mathematics
<alexgordon> { x | p(x) }
<ec> anyway, tell me more of your implicit-CPS combinators!
<ec> can talk Paws later
<ec> tell me things I *don't*' already know
<alexgordon> well the combinators are explicit, but the cps is implicit
<alexgordon> ok so the simpliest is probably amap
<alexgordon> :: [A], (A => B) => [B]
<alexgordon> the fat arrow => indicates a CPS function
<alexgordon> um, there's gonna be some haskell type signatures in here :P
<ec> ugh why the fck does my brain stop on that syntax
<ec> reading
<alexgordon> shall I rewrite it
<ec> => is new, yes?
<alexgordon> yes
<ec> Haskell doesn't have some special syntax for implicit-CPS anything
<ec> k
<ec> and => means ‘takes as a single argument’, because there's no multiple-arguments in Haskell, right
* ec resolves that with CPS in his head
<alexgordon> => means (A, (B -> Void)) -> Void
<ec> wat
<alexgordon> in other words, function(x, callback) { }
<ec> k start over with JS syntax if you're willing
<alexgordon> JS doesn't have types :P
<ec> I can *probably* get over my haskell-fear, but it'll just be an impediment
<ec> lol.
<alexgordon> I'll try swift/scala syntax
<ec> what's with the comma
<ec> in the original, what did I miss there
<ec> takes *two* arguments, or, what
<alexgordon> yes two
<alexgordon> one input, one callback
<ec> in Haskell that'd be [A] -> (A => B) => [B], right?
<ec> oh wait what ff
<alexgordon> yeah you're right
<ec> oh durrrr
<alexgordon> although haskell doesn't have =>
<ec> I get it, A=>B is the callback
<ec> so why the => *in the callback*
<alexgordon> no no
<alexgordon> wait
<ec> :: [A], (A -> B) => [B]
<ec> why not that
<alexgordon> I've confused you :S
<alexgordon> maybe if I give them names
<ec> yeplz
<ec> I started doing that in code recently, never allowing myself to use the result of an expression without naming it
<alexgordon> list [A], mapping (A => B), callback ([B] -> Void)
<ec> doing shit like `canUseBar = <expr>; canUseFoo = <expr>; if canUseBar and canUseFoo` for more prosaic code
<ec> <mapping> meaning <mapper>?
<ec> or do I mis-read?
<ec> it's a function, yes?
<alexgordon> yeah a function
<alexgordon> so
<ec> k
<alexgordon> it's like map() right, but async
<ec> yep, I think I get that
<alexgordon> [1, 2, 3].amap(function(x, callback) { callback(x * 2) }, function(result) { })
<alexgordon> but the functions execute asynchronously, otherwise it would just be a normal map
<ec> [1, 2, 3].amap (x, callback)-> callback(x * 2) // (result)->
<ec> so talk to me about =>; you're extending the *type system* with asynchronicity? I'm not clear on how
<alexgordon> extending the type system with CPS
<alexgordon> A => B is just a function that takes a callback instead of returning a value
<ec> show me some actual code, what gets placed *under* that type signature
<ec> yah, get it now
<ec> like “=> means (A, (B -> Void)) -> Void” clicked, we can move past that
<alexgordon> ok what do you want to see?
<alexgordon> I can try to implement amap
<ec> ¯\_(ツ)_/¯ implement amap I suppose
<ec> if that's complicated then no
<alexgordon> let's see
<ec> just give me a signature that uses =>, and then some code that uses the implementation version of =>
<ec> i.e. yield or wtfever
<ec> like, there's basically three elements that makes a language Paws-like (or rather, there's basically three parts of Paws that make it worthwhile, with the rest being Elliott-cruft):
<ec> - there are no non-continuation/callback calls, CPS is the *only* way,
<ec> - CPS is *always* implicit, you never see a callback being stored in a variable or accessed by index or anything,
<ec> - a continuation for a single location can meaningfully be branched / duplicated / called multiple times / whatever you want to call it
<ec> so I'm trying to see if those things kinda match your work, more than anything else
<ec> okay here's the example you can write for me!
<alexgordon> hmm this is not so easy to implement the combinators themselves :P
<ec> implement the callback we're going to pass to mmap: `function(x, callback) { callback(x * 2) }`
<ec> I'd chide you for making a language that has trouble self-implementing, but meh, who am I to talk, Paws is terrible
<alexgordon> well I realised something from last time
<ec> so just show me that one implementation-of-a-=>-function
<alexgordon> you actually have to have four versions of each function
<ec> ooo now this sounds promising
<alexgordon> map, amap, pmap and apmap
<ec> p?
<alexgordon> p = parallel, a = async
<ec> parallel how
<ec> tell me more about that
<alexgordon> parallel means it works in multiple threads simultaneously
<alexgordon> whereas async just means it uses CPS
<ec> works-in-multiple-threads how
<ec> you're hinting at a whooooole other aspect of the language I know nothing about
<ec> are there threads? is there locking? is it actor or message-passing based?
<alexgordon> well for a parallel map it woud split it into one block for each CPU core
<alexgordon> then do each of those blocks on a thread
<ec> are they operating on the same memory-space for the original data being mapped?
<alexgordon> so if you have a quadcore, it splits the array into 4 blocks
<ec> see, alexgordon, if you'd been working on this six years ago, we'd have been soooooo much more on the same page
<alexgordon> ec: no it would copy it. this is designed for if your mapping function is slow
<alexgordon> well I think we've both learnt a lot about this stuff
<ec> this has all the precise hallmarks of two of the biggest things I care about in Paws: asynchronicity/concurrency and how they interact, and multiplexes.
<alexgordon> ya
<ec> this is *also* making me want to drag you kicking and screaming back into a discussion about Paws again. ;)
<alexgordon> the point is you can have a parallel map that blocks, and you can have an async map that only works on one core, and you can have both together, or neither
<ec> so are you saying you made this four-ness an aspect of the language itself? because I feel like thats where this is going
<alexgordon> well... no parallelism is part of the library
<alexgordon> there's nothing the language can do to help that
* ec nods
<alexgordon> but the async CPS stuff is part of the language
<alexgordon> it's pretty simple though
<alexgordon> there are multiple ways of implementing it, either using closures, or continuations/coroutines
<alexgordon> closures are easier IMO
<ec> you work with Node heavily, right?
<ec> slash npm?
<alexgordon> I have been this year
<ec> git clone, git submodule, npm install
<ec> oh oh
<ec> checking that Current has a working implementation; that's before I began ripping huge swathes of stuff out for the design-changes from late 2014, so although it implements a *useless* language, it still should run code
<alexgordon> so one good use of amap (as opposed to pmap or apmap) mapping a list of filenames into the content of their files
<ec> yeah the few existing Rulebook tests run on top of Current
<ec> cool! I forgot I had a working Paws, that's fun
<alexgordon> haha
<alexgordon> so if you think you're taking ["a.txt", "b.txt", "c.txt"] and you want to end up with [<content of a.txt>, <content of b.txt>, <content of c.txt>]
<ec> why wouldn't pmap do that?
<alexgordon> because it's I/O bound
<alexgordon> don't need multiple cores to read files from disk
<alexgordon> DO need it to be async to avoid blocking anything else you might be doing
<alexgordon> pmap would be better for something that takes a lot of CPU time, e.g. factorising a list of semiprimes
<ec> yah, yah, all obvious
<ec> so tell me about the *language*
<alexgordon> if it's both I/O bound and CPU bound then you use apmap
<ec> y this elaboration on four approaches to mapping :P
<alexgordon> the effect on the language is super simple, you just need one keyword to turn the rest of the function into a closure
<alexgordon> and also the implicitness/explicitness of the function is determined by if it is missing arguments or not
* ec re-reads
<ec> into a closure?
<ec> not a continuation?
<ec> show
<alexgordon> well depends how adventurous you are
<alexgordon> continuation would be more flexible, but more difficult to implicit in a compiler/interpreter
<alexgordon> closure is super easy, but can only be used at the root of the function
<alexgordon> I prefer the approach of using a closure, then using the async combinators to make up for the lack of flexibility
<ec> still super-confused
<ec> what are we talking about here?
<ec> a user's choice when implementing an API? an inspecificity in the design of the language that you haven't decided on yet?
<ec> alexgordon: did you die?
<alexgordon> ec: sorry was doing maths
<alexgordon> um
<ec> alexgordon: is fine lol
<ec> give me a few mins, but,
<alexgordon> ec: no the choice of designing the language
<ec> after I push this, I want you to clone and configure!
<ec> ah, k
<alexgordon> ok
<ec> so it's not really a language (not a slight, by the way); it's an extension to an existing type-system / statically-typed-language-design
<ec> you just need a lot of cruft around it the way I have a lot of cruft around Paws
<ec> turning it into an actual language design. yes?
<alexgordon> I'll have a look
<ec> huh?
<alexgordon> oh I thought you meant paws
<ec> lol
<ec> I've been working on Paws for six years, on and off. I don't really need to ask anyone *else* what it is. ;)
<alexgordon> ec: yes this could be work in any language
<alexgordon> *could work
<ec> also, jesus christ, happy 6th birthday of our friendship, alexgordon
<alexgordon> haha
<ec> off by a few days
<alexgordon> six years!
<ec> but I did my first design sprint around December 10th-19th 2009; and created the Wave(s) like, on the 20th probably
<ec> so probably met you and Micah within a month of that
* ec waves to incomprehensibly
<ec> incomprehensibly: love u lots bby
<ec> god, I wonder if I still have those Waves archived anywhere
<ec> fuck, I hope so
<ec> that'd be a srs loss
<alexgordon> wave was definitely the craziest thing google ever created
<alexgordon> even including the self driving cars
<ec> have you *seen* Project Loon?
<ec> searching through my e-mail
<ec> apparently some professor cited my work on Wave o-O
<ec> god I'm sad Wave died
<ec> ;_;
<ec> omg found this
<ec> but that's 2012, not, like, the old stuff
<ja> hai guise
<ja> so who is incomprehensibly really‽
<alexgordon> ja: micah
<alexgordon> ja: micah is like the smartest person here, he's been here since he was like 14, and he was still the smartest person here
<alexgordon> but he has decided he doesn't like computers now
<ja> that almost sounds incomprehensible
<ja> ah
<alexgordon> so he does music instead
<ja> does/did he use Macs at least?
<alexgordon> yeah
<ja> so is he on IRC from his floppy drive piano with Windows CE?
* alexgordon laughs
<alexgordon> I dunno he doesn't IRC much anymore
* ja is starting to kinda sorta hate computers somewhat as well, thanks to Apple :<
<ja> but he’s here now!
<ja> or is it just some bot that ec made?
<alexgordon> !shrug
<ja> which spits out old log entries or so
<ja> :x
<alexgordon> -shrug
<ja> ec: explain yourselves
<alexgordon> -what
<alexgordon> how do you do it? I forgot
<ja> .wat
<ja> hi
<alexgordon> !what
<ja> the bot is gone
<alexgordon> oh is that it
<ja> what has happened, alexgordon‽
* ja panics
<alexgordon> yeah purr has gone
<ja> :<
<ja> yeah, i even forgot its name
<alexgordon> purr purrrrrrs
<ja> hence my “hi”
<ja> it does
<ja> does it
<ec> this room is about to get all sujwooey; feel free to briefly excuse yourself if such things upset you <3
jfhbrook has joined #elliottcable
<ja> what’s sujwooey, ec?
<ja> plus quotes
<ja> it’s really fcking kold here mand
<jfhbrook> wut
<ja> hi jfhbrook
<jfhbrook> hey
<ja> any of you use atom?
<ec> o7 jfhbrook
<ja> i liked it until i tried opening large files
<jfhbrook> oh I see what you did there I was looking for some allcaps
<ec> still actively working on it, that's just the start
<ja> piece of shit useless shit
<ec> and haven't started on the actual COC yet, although there, there's tons of resources I've put together that I can refer to
<jfhbrook> oh my god the unicode superscripts are precious
<ec> any sort of feedback is super-welcome
<jfhbrook> I love them
<ec> tone, typos, you're an idiot elliott, this is offensive to me, whatever you can come up with
* ja (。◕‿◕。)
<ec> ah shit
<jfhbrook> I know that feel for (1)
<ja> aw, unicode superscripts
<jfhbrook> my ecstatic contrib guidelines are also written in the 1st person
<ec> lmao
* ec high-fives ja
<alexgordon> ec: every time you invite someone new I end up offending them, and then they leave :(
<ec> uh
<ec> jfhbrook:
<ja> ec: you make me curl my quotes. always. <3
<ec> alexgordon: it's okay! you're improving~
<ec> you were such an offensive asshole six years ago
<ec> but it was okay 'cuz so was I
<ec> here's to becoming better people? :P
<ja> hooooooraaaay
<alexgordon> see, jfhbrook is gone! I did it again -_____-
<ja> yes.
ohhoe has joined #elliottcable
<jfhbrook> the ell.io/IRC link is really cute
<jfhbrook> like that's a nice trick
<ohhoe> what is HAPPENING
<ec> lol hi ohhoe
<ohhoe> O_O
<jfhbrook> because like, if you already use your own irc client you click it and it's like, oh
<jfhbrook> there's the connection info
<ec> jfhbrook: right!? :D
<ec> stupid Slackification of everything-ever )'=
<jfhbrook> you have a mailing list??
<ohhoe> i am trying to finish a bottle of gin i will read this tomorrow
<ec> jfhbrook: not until right now lol
<jfhbrook> yeah I mean
<ohhoe> i <3 irc tho
<ec> I've always been very … anti-mailing-list
<jfhbrook> yeah?
<ec> ohhoe: no obligation, just because you asked.
<jfhbrook> that's funny
<jfhbrook> I just like
<ec> ohhoe: but hi, welcome to my room, it's a good room, a v.good room
<jfhbrook> nothing I did was ever big enough to warrant a mailing list
<ec> it's a room ful of lov and code and ppl who r gr8
<ohhoe> @ec i just like how i asked about it and got an invite immediately.
<jfhbrook> when issues and irc existed
<ec> jfhbrook: yeah, that feel too
<ohhoe> i use irc cloud as my client
<ec> ohhoe: o7 YAHHHHS QHUEEEEEN
<jfhbrook> I've never used irccloud is it chill?
<ec> jfhbrook: I really, really, really want an irccloud version of ell.io/IRC
<jfhbrook> oh shit I don't know what Comportment means
<ec> like, I don't want new visitors to open a temporary webchat; I want them to be prompted to set up a free irccloud account, which then joins my room
<ohhoe> jfhbrook: it's nice, if i'm not online it logs all the things i've missed.
<ec> luckily, I know the irccloud devs; unluckily, not well enough
<jfhbrook> that's a chill word, I'll allow it
<ec> alexgordon: <me, four years ago>
<ec> the hair's even spot-on
<jfhbrook> ohhoe: I use irssi and tmux for that but I understand how that's shitty ux
<ec> omg
<ec> omg vivian's coming in mah IRC
<ec> I'M SO EXCITE
<jfhbrook> I've never met vivian
<ec> jfhbrook: ec\ is my irssi-tmux-server
<ec> and purr is running on the same machine
<ec> shit purr's dead wtf
<ohhoe> tmux is linux ya?
<alexgordon> who is vivian?
<ohhoe> idg linux
<ec> tmux is terminal (OS X, Linux, wtfever)
<ohhoe> oooooo
<ec> alexgordon: @VanguardVivian
<ohhoe> shrug emoji dude here
<ec> a pretty close friend who's been resisting my IRCification for along time
<ec> okay back to writing
<ohhoe> whaaaat
<ohhoe> i've been irc-ing for like
<ec> lurking welcome! feedback even more welcome!
<ohhoe> 15 yrs?
<ec> ohhoe: not you, viv
<ohhoe> ooooo!
<ec> ohhoe: also er, are we pretty close friends? D:
<ec> because shit I have *not* been living up if so
<ohhoe> oh i didn't read that
<ohhoe> sorry hahaha
<ec> lolll it's cool
<ec> now I'm chatting instead of actually writing, so,
<ec> on-topic:
<ja> lol
<ec> if any of you have any CoCs you particular respect, link me up?
<ec> I've got a couple open in tabs, but I can't find the one I was looking for
<ja> COCS?!
<ohhoe> JSConf CoC 4e and e
<jfhbrook> so I'm no expert in CoC's/guidelines, but I've done a little bit of reading and a little bit of moderation, and have had to craft community guidelines myself
<ec> 4e and e?
<ohhoe> forever and ever
emilyrose has joined #elliottcable
<emilyrose> what seems to be the problem, officer?
<ja> oh hi
<ohhoe> hai
* ec bows deeply
<ohhoe> emilyrose: come to jerseyscript 2morrow
<emilyrose> hello love
<ec> emilyrose: links to any CoCs you respect highly are v. welcome rn
<ec> and here's the CONTRIBUTING I've written so far:
<alexgordon> cocks?
<ec> now, back to writing for me for a few minutes
<ec> alexgordon: Code of Conduct's
<emilyrose> I read this one out loud every WaffleJS: http://confcodeofconduct.com/
<alexgordon> orite, obviously
<jfhbrook> hold on ec let me dig up my own community guidelines and find the things I found helpful
<emilyrose> it's a basic starting point
<ohhoe> i wanna go to wafflejs rly bad
<emilyrose> you should :D
<ohhoe> but mostly to yell at myles for going to clown school
<ec> yeah I was super-sad that Natasha performed and I missed it
<emilyrose> https://www.djangoproject.com/conduct/ has some good things too
<ec> I need to visit sf more often ;_;
<ohhoe> which is prob against the CoC
<emilyrose> but clown school is awesome
<ec> _mylesbyrne: btw you
<ohhoe> noooooooooo
<emilyrose> and myles is an awesome clown
<emilyrose> oh
<ohhoe> i'm afraid of CLOWNS
<emilyrose> he's here!
<ec> iiiiish
<emilyrose> maybe myles can help you overcome the fear!
<ec> he lurks
<ohhoe> hell no!
<ec> yeah, django and pycon I've got tabbed
<ohhoe> unless he's a sad clown
<ohhoe> cause clowns should be sad.
<jfhbrook> I think the big bullet points ec are the ones you hit so far (who you're looking for, what kind of space you want to create, here are the rules...)
<ec> god I am a sweaty beast and I hate it
<ec> I need that surgery -_-
<ja> anti-sweat surgery?
<ec> ... thought that was emilyrose, turns out, that wasn't emilyrose, and now I just sound like a freak
<alexgordon> we are seriously having a code of conduct?
<ec> ja: yeah, both links are to files that haven't been committed yet
<ohhoe> i am very afraid to click this
<emilyrose> LOL
<ja> oh, rite
<jfhbrook> ...but then, a list of things that are against the rules, with the right reserved to make judgement calls for things that should obviously be bad but aren't explicitly against the rules, then a process for reporting shit, and then maybe extra resources
<emilyrose> THANKS FOR THINKING OF ME AS A SWEATY BEASTE
<ohhoe> oh this is ok
<emilyrose> jerk
<ec> alexgordon: I know people I respect highly who won't *look at* a project if it doesn't have a CoC.
<ja> I have no idea wtf all you people are about with the CoCs ’n’ all
<emilyrose> it's true though
<ec> alexgordon: and more importantly, there's *other* people I *love* highly, whom I want to feel safe around me and mine.
<jfhbrook> and in the case of ecstatic, a bunch of stuff about how to create branches and pull requests
<jfhbrook> like a whole bunch of procedural stuff
<emilyrose> ohhoe: just me being a sad clown
<jfhbrook> does that all make sense? I kinda brain dumped without keeping track of the parallel conversation
<ec> jfhbrook: yeah, that's the format I'm going for
<emilyrose> wow, 29 weeks ago
<emilyrose> anyway
<emilyrose> looks like you've got this handled! :)
<jfhbrook> So I have one good CoC and one bad one
<emilyrose> <3
<ec> emilyrose: I'll tweet at you a more finished work later
<alexgordon> ec: losing my shit thinking about paws having a code of conduct, remember that time you read out all the [what was it?] from A to Z?
emilyrose has left #elliottcable [#elliottcable]
<jfhbrook> the good one is for something I don't share with other people lightly, the other is for ecstatic
<ohhoe> can a CoC just be me, posted at events yelling at people fucking up
<ohhoe> i think that could be a lucrative career move.
<ec> alexgordon: see, code of conduct doesn't mean not-having-fun, or even not-being-risque; but it means *respecting people's boundaries* when stated, and respecting the implicit boundaries of marginalized groups who can't be expected to state them.
<ohhoe> although at 5'0" i'm not very threatening.
<alexgordon> ec: ok. but seriously, what was it?
<ec> ohhoe: I'd pay for that
<ec> alexgordon: oh lord I don't even remember. euphemisms for cock, I think?
<jfhbrook> alexgordon: in my experience a CoC is nice to have so that when someone shows up and acts like an asshole, you can have something to point to when you eject their ass
<alexgordon> something like that
<ec> or giving head?
<ohhoe> ec: i'm bummed i missed any chicago tech meetup things tbh
<ohhoe> when i was there.
<ec> there's a (very long) gist somewhere
<ec> ohhoe: you were here? O_O
<ec> idk I've been to like two ever
<ec> Chicago's dev community is horrible afaicft
<jfhbrook> alexgordon: I'm not talking about some dude being weirdly sleazy on accident or something, I mean like actively being a shitface to absolutely everyone
<ec> (I may be biased because this very central actor to the system haaaaaaates me.)
<alexgordon> jfhbrook: yeah we never had that cause it's been 6 years and I'm still here
<ec> (so a lot of local devs are pretty cold towards me, so I rarely participate.)
<jfhbrook> it's really nice to be like, look threats of physical violence are against the rules, I wrote it down see
<ec> sh alexgordon, you're not as bad as you pretend.
<alexgordon> I did get banned once for talking about politics
* ec laughs
<jfhbrook> I think I've been in spaces that might be more dangerous than a fun new language has
<ec> you also banned literally everyone in the room when I gave you ops
<alexgordon> I didn't _ban_ them
<alexgordon> I kicked them. wanted to see who would come back
<ec> there was even a purr command for it
<ec> I can't remember what it was
<ec> maybe he banned everybody on -alex or something?
<ec> okay. gotten sidetracked again.
<ec> ohhoe, jfhbrook, _mylesbyrne, thank you for your presence and patience. >,<
<ohhoe> :o
<ohhoe> ec: idk anything about chicago's tech scene i'm just twitter friends with you and max temkin and daniel zarick
<jfhbrook> I've had to make new rules specifically because of other peoples' behavior
<ohhoe> max hooked me up with alinea reservations though that was p sweet
<ec> yeah dz is the one who hates me
<ec> oh wait
<ec> he deleted it, probably for the best. |=
<alexgordon> so what's happening now?
<ec> alexgordon: I'm writing furiously
<ec> trying to find a balance for the introduction between ‘I've created a CoC, and I meant to enforce it.’, enticing ‘I don't want to participate in a space with no CoC’ people, appeasing ‘CoCs are dumb’ people who aren't assholes, and scaring away ‘CoCs are dumb’ people who *are* assholes
<ljharb> there's lots of great canaries for the latter group
<ljharb> but ther tend to rile up the middle group as a side effect.
<alexgordon> cocks are not dumb!
<ec> alexgordon: I know! I love them!
<ec> I miss the welcome-back penises ;_;
<alexgordon> without cocks we wouldn't have chickens, or eggs
<ohhoe> omg ec what'd it say
<ec> ohhoe: so there's a bot in here
<ohhoe> ya
<ec> the bot's a huge asshole by design, amongst other things; and I'm convinced not a single person who's ever been in here knows everything it does, because the code is a messsss, and probably a half-dozen people have randomly edited it
<ec> there's a bunch of sneaky easter eggs
<jfhbrook> I suspect that most "CoCs are dumb" people also don't think they're important enough to get pissed off about
<ec> so there's, inevitably, a factoid feature
<jfhbrook> like, it exists, it's done
<jfhbrook> they didn't even have to participate in the discussion
<ec> -back used to be the trigger for “I'm back! Didjaal miss me?” or some banal thing like that
<ec> but somebody a couple years in replaced it with a link to an inexplicable youtube video,
<ec> of a bunch of northern european guys dancing around, completely nude, swinging their penises about
<ohhoe> O_O
<ec> and the text “Welcome back! here, have some welcome-back penises!”
<ohhoe> lolllll
<ec> it was pretty ~excellent~
<jfhbrook> exciting
<jfhbrook> I'm all for saying that NSFW content is valid inside a space, *if* it's appropriate
<ec> it was so … idk, cultural, instead of funny, though? that's what really made the bit. I never found out what it was from.
<jfhbrook> that's really up to you
<ec> it was recently finally removed from YouTube, which is a loss to society, period ಠ_ಠ
<jfhbrook> I'd imagine knowing there could be sudden dicks would turn *some* people off
<ec> jfhbrook: yeah, that's what I *want* there to be
<ec> but here's the thing I'm worried about:
<ohhoe> wait @ec what does this have to do with daniel lol
<ec> - sex is fun, I'm personally very pro-sex, pro-sex-work, and anti-sex-censorship
<ec> - there are young people in here, and I want there to continue to be,
<ec> - there are people who disagree with that, and I don't want to *offend* them,
<ec> word choice intentional,
VanguardVivian has joined #elliottcable
<ec> and - there are people for whom anything sexual can be a trigger, or people who simply don't appreciate sexuality as a whole (some of my ace friends, for instance, I could see the current atmosphere of this room going off Very Badly with)
<jfhbrook> so maybe have some rules *around* nsfw content, saying "nsfw" and "trigger warning" are nice things to do
* ec nods
<jfhbrook> I can't advise on how best to craft those rules, but maybe those are the lines you draw?
<ec> oh, not looking for *answers*, I want input and thoughts. that's precisely what I'm looking for.
<ljharb> also it may be useful to suggest that if someone *is* offended, that that's taken seriously - regardless of whether the offensive behavior continues
<jfhbrook> I would think that a lot of your rules in that regard would be along the lines of not respecting someone's boundaries on a continual basis
<ljharb> like, not being scornful or dismissive of someone who's bothered.
<ec> ljharb: yep, definite given
<ljharb> word
<jfhbrook> sure, as a matter of conflict resolution you have the right idea---remove, then start a discussion and try to reach an acceptable solution
<ec> I think I'm basically going to make the entire NSFW question a one-strike thing:
<VanguardVivian> *waves*
<ec> also say hi-VanguardVivian!, everybody
<ec> :3
<jfhbrook> o/
<jfhbrook> I'm actually about to pass out, but
<jfhbrook> yeah
<ljharb> \o
<ec> Make it clear that if anyone complains anonymously, then we're transitioning from pro-NSFW to NSFW-free
<ec> kinda thing
<ec> wrap that all up around a note on ‘nsfw’ content-warnings, and I think I'm pretty close to an approach I like
<ec> VanguardVivian: sorry was wall-of-texting when you came in. HI OH MY GOD HI OMG HI THO
<ohhoe> im confuse
<ohhoe> d
<ec> VanguardVivian: if you want to catch up on what we're talking about, there's persistent logs here: http://irclog.whitequark.org/ELLIOTTCABLE/2015-12-15
<ec> ohhoe: hit me
<ohhoe> no i am nic
<ohhoe> e
<jfhbrook> so reserve the rights to change the rules on nsfw content at any time, and evolve it to meet your needs?
<ec> ohhoe: translation: ~explain to me your confusion~
<ec> jfhbrook: yea.
<ohhoe> idk
<ec> ohhoe: have we met at a jsconf or something btw? I know your name, but can't place a face with it
<ohhoe> idk
<ohhoe> i've only been to jsconf 2014 where i knew noone
<ohhoe> and jsconf 2015
<ohhoe> you might have just followed me because of mutual friends?
<ec> musta been. pretty sure you've been around my social sphere for a looooong time, though
<ec> your name is very familiar to me, I'm just not sure if we've ever spoken directly
<ec> alexgordon: oh, lord, did I tell you, I'm trying Soylent >,<
<ec> about to drink my second ever.
<alexgordon> wat
<gkatsev> ec: whhhyyyyy
<gkatsev> stop it
<gkatsev> (actually, i would like to try it once just to know for myself how terrible it is)
<alexgordon> ec: is it hopelessly bland?
<jfhbrook> did you know people at jsconf 2015 ohhoe ? I don't think I met you but I did the sailboat at nodeboats
<ec> buncha reasons. price, health, and primarily, convenience. I get super manic-hyperfocused, and it's hard to remember to eat, especially if I have to wait an hour for it to be delivered or spend an hour putting something together. the two minutes to grab a meal-replacement from the fridge is super-approachable to my lifestyle, and out of the options, Soylent
<ec> was the most dietarily appealing / appropriate to my needs
<jfhbrook> ¯\_(ツ)_/¯
<ohhoe> jfhbrook: i knew a ton of people at jsconf 2015!
<jfhbrook> oh good
<ohhoe> i have green hair and i am easy to spot in a crowd.
<jfhbrook> what changed?
<ljharb> i've never gone to jsconf
<ljharb> guess my windows closed
<jfhbrook> soylent sounds gnar ec
<gkatsev> ljharb: not quite true
<jfhbrook> it sounds hella gnar
<gkatsev> ljharb: plenty of other jsconfs!
<ljharb> ohhoe: i think i met you at a jsfest once
<ec> hey is anybody in here not cis-bigender rn?
<ec> I have an old announcing feature disabled in purr
<ohhoe> ljharb: i spoke at jsfest 2014 for dhtmlconf
<jfhbrook> cis-bigender?
<gkatsev> ec: nope, please, really, stop. soylent should at best be a meal supplement.
<jfhbrook> crap ec I'm old help
<ec> gkatsev: tell me more, but, later
<ljharb> ohhoe: aha yes then that's probably where i met you briefly
<jfhbrook> I'm a cis-het white male I know nothing
<gkatsev> ec: an easy thing to do is just make a whole bunch of chicken and eat it with some frozen veggies.
<ohhoe> jfhbrook: the thing that changed was i met people at jsconf 2014 who encouraged me to start= coming to meetups in nyc and i made friends!
<ec> jfhbrook: as in, both not-contrary-to-their-assigned-gender, and not-assigned-intergender, I guess
<jfhbrook> that was nice of them ohhoe
<gkatsev> ohhoe: your robokitty project is neat
<jfhbrook> I didn't have good luck at the meetups
<ec> idk these things either, pulled it out of my ass, but I'm wondering how to approach pronouns in IRC
<jfhbrook> I don't know why
<jfhbrook> I vaguely remember your nick being attached to new york, ohhoe ?
<ec> alexgordon: (no, it tastes surprisingly good)
<ohhoe> @gkatsev ty!
<gkatsev> ec: "they" and tabcomplete their names. You don't need other pronouns.
<ohhoe> jfhbrook: yes i live in brooklyn
<jfhbrook> yeah word me too
<jfhbrook> so yeah, like I didn't like manhattanjs that much
<jfhbrook> and I never bothered to try brooklynjs
<jfhbrook> I'm too lazy to try to snag tickets
<ohhoe> i'm speaking at brooklyn js on thurs!
<jfhbrook> oh word? on what?
<ec> gkatsev: ‘they’ doesn't cover everybody. For instance, ‘they’ doesn't even cover *me*: I'd prefer to not be referred to as ‘they’ when I'm not present; my pronouns are he/his, and it's reasonable to expect people to respect those wishes if they know about them
<ec> point is, helping disseminate that information in IRC is different than on Twitter
<ljharb> ec: it's a safe default tho
<jfhbrook> My boss made me talk at an enterprise node thing, I thought it sucked
thealphanerd has joined #elliottcable
<jfhbrook> it's cool that you're talking about something voluntarily!
<ec> thealphanerd: so who's _mylesbyrne o_O
<ljharb> ec: generally you should stick with "they" until someone has expressed their preferred pronouns
<ec> ohhoe: oh lord good luck
<ec> I will never, ever speak o_o
<ljharb> ec: ie, you've said he/his, so i'll refer to you that way from now on
<thealphanerd> no idea who that is
<gkatsev> ec: unless you know what a person's preference is, they will definitely work and I doubt anyone would complain if you used they on them
<thealphanerd> ec: quite a few familliar names in here
<ec> that'll certainly cost my career and reputation, but I am convinced I'm absolutely incapable of it o_o
<ljharb> speaking gigs are fun! i've only done it 2.5 times tho
<thealphanerd> ec: -> https://github.com/quackingduck
<ec> thealphanerd: wait what's your last name wtf
<jfhbrook> So I don't have much skin in the game, but I'm a fan of at least accepting that habits are hard to break
<ec> are you a *different* myles?
<ec> wh
<ec> whoa.
<jfhbrook> so maybe more of a coin jar approach?
<ohhoe> thealphanerd: NO CLOWNS.
<thealphanerd> :(
<thealphanerd> you are allowed to have one though right?
<ec> jfhbrook: coin jar, what
<ohhoe> no
thealphanerd has left #elliottcable [#elliottcable]
<jfhbrook> you know, like the thing you do when you curse at work?
<jfhbrook> and the office spends it on something for everyone?
<jfhbrook> I mean irl I think those are stupid
<ec> Oh, sorry, this wasn't related to the CoC
<jfhbrook> oh
<jfhbrook> yeah fair
<ec> the CoC part seems pretty straightforward:
<jfhbrook> I should preface everything I've said tonight: I'm pretty baked
<ec> - intentional misgendering / obvious disrespect for gender as an identity, belongs in the Hard Rules,
<ec> - continuous misgendering, even under the guise of accident, also has a good chance of getting you removed if it's deemed hurtful
<gkatsev> also, how do you go about making a CoC?
thealphanerd has joined #elliottcable
<thealphanerd> :D
<ec> gkatsev: writing, I guess? whatchoo mean
<gkatsev> ec: how to get it right/not wrong
<ec> gkatsev: asking a bunch of people who live in different circumstances than your own to give their input on what would make them feel welcome and safe?
<alexgordon> gkatsev: why are you still awake?
<ec> gkatsev: don't make assumptions, I would guess, is step 1 …
<ec> gkatsev: scroll up, there were some good suggestions / links earlier
<jfhbrook> I feel like with text you have less of an excuse with misgendering
<gkatsev> alexgordon: me? it's only 00:47 here
<jfhbrook> in speech it's easy to accidentally the wrong pronoun but in text you hit backspace a few times
<alexgordon> oh, hm where do you live?
<ec> jfhbrook: there's very little excuse in any case. /=
<jfhbrook> oh fuck it's 12:47
<ec> which is shit and difficult-as-fuck because changing habits and language are Not Easy
<ec> but ... that's not an excuse, that's an explanation. /=
<gkatsev> ec: I want to add a CoC to videojs. I'll probably copy node's or something.
<gkatsev> alexgordon: east coast, boston, ma specifically
<ec> gkatsev: you're welcome to chill out here and copy some of what I'm doing ¯\_(ツ)_/¯
<jfhbrook> okay I'm out o/
<jfhbrook> good luck ec
<ec> gkatsev: did you click the CONTRIBUTING gist above? feedback is welcome
<ec> jfhbrook: lurk!
<ec> jfhbrook: DON'T LEAVE MEEEEE~ *cries and stretches out arms*
<gkatsev> ec: nope, didn't see it
<ec> VanguardVivian: are you getting this notification for the room?
<thealphanerd> ec: tell me abou tthis code
<thealphanerd> the code
<thealphanerd> of
<thealphanerd> conduct
<ec> thealphanerd: -^
<ec> thealphanerd: the discussion thus far is here, if you want to catch up: http://irclog.whitequark.org/elliottcable/2015-12-15
<alexgordon> gkatsev: really? I thought you were even more further ahead than me
<alexgordon> (it is 5:49 here)
<gkatsev> alexgordon: yep. UTC-5
<ec> Frans:
<ec> is it a bad idea to include a “things *to* do” section?
<ec> is that just bloat, is that going to detract from the purpose; or is it going to make the whole document more palatable?
<thealphanerd> ahahah I can see ohoe and emilyrose chatting about clownschool in the scroll back
<thealphanerd> AHAHHAHA
<ec> thealphanerd: I … I met you, right?
<ec> and _mylesbyrne is not you
<ec> and, ugh, I'm so confused
<thealphanerd> we hung at nodeconf
<thealphanerd> and I’m pretty sure other places as well
<gkatsev> jsconf as well, possibly
<gkatsev> thealphanerd: were you at andyetconf? can't remember
<thealphanerd> nope
<ec> here's another q:
<thealphanerd> jsconf though
<thealphanerd> and cascadia
<ec> is there a good reason to include an explicit list of -ism's? I see a lot of CoCs do this, and I'm inclined to copy them ... but I'm instinctively against it
<ec> it just seems like an excellent opportunity to forget one, or for somebody to come back with an ‘but you didn't say we had to be nice to *<this group>*, too!’ ...
<ec> not to mention it feels like it contributes to othering by nature /=
<thealphanerd> lists are just a thing ready to be bike shedded on
<pikajude> bikeshod
<thealphanerd> and a place to make people feel singled out or left out
<ec> Like, if I have a list saying ‘you can't discriminate on <... disability ...>’, I feel like I'm already implying that disability is something to be judged, something different, something that needs to be *specially* protected ...
<ec> VanguardVivian: your input would be welcome, there
<ec> no! that's excellent, thanks
<gkatsev> my main concern with writing my own is that even if I try to follow that, idk whether I won't screw up something, so, I'll probably just copy node's or rust's or something.
<ec> well, the issue with that, I think,
<ec> it seems like commitment to *enforcing* it is more important than having it
<gkatsev> it is
<ec> actually-having-it is kinda a side-effect of being committed to keep people safe
<ec> and to enforce it well, you have to *know* it thoroughly; and I think the best way to do that, is to have written it?
<ec> that's basically my thought-process here.
<alexgordon> gkatsev: CoCs are like crypto?
<gkatsev> alexgordon: haha, I guess
<alexgordon> don't roll your own coq!
<ec> also, personally, being the old-school only-partially-reformed 4channer/redditor/Americonservative redstataer that I am, I'm more than mildly offended how far every single one I've seen goes out of its way to insult people who think they're not necessary
<gkatsev> and having some is better than none
<gkatsev> ec: I guess rust's and node's are simple enough that knowing them isn't a huge deal and they're more "proven" if you will
<ec> so it's important for *me*, to try and recognize that <people who don't yet understand why these things exist> and <people who are worthless and a drag on the community> are not 100%-overlapping groups.
<_mylesbyrne> ~unlurks~
<thealphanerd> ec: node recently created a moderation policy
<ec> hi other-myles-whom-I-confused-with-a-different-myles-I-think
<_mylesbyrne> Are there two Myles's here?
* thealphanerd other myles o/
<ec> thealphanerd: yeah, a large part of this is irrelevant to me, because I foresee myself being the sole arbiter of this for the foreseeable future
<gkatsev> thealphanerd: I saw that. What's the difference between that and the CoC is specifically?
<_mylesbyrne> I just scrolled through 3 days of conversations, I like this channel
<ec> _mylesbyrne: d'awww thanks
<_mylesbyrne> ~waves~
<ec> _mylesbyrne: be careful, before long, you'll be sucked into the cult
<ec> ;)
<ec> you know it's bad when you start talking to purr by yourself.
<alexgordon> have I really been gone for 3 whole days?
<thealphanerd> it outlines how moderation will be enforced. The CoC is a part of that for setting boundaries, but not the only thing that the moderation policy covers
<ec> thealphanerd: according to the ashe dryden I'm reading, that's actually an integral part of a CoC
<ec> that is, (Code of Conduct & Enforcement Policy & Materials to educate enforcers) == CoC basics.
<_mylesbyrne> ec: I hope I'm not an intruding myles :)
<ec> _mylesbyrne: nope! u r v. welcome!
<ec> urvw
<ec> alexgordon: quick, go find some welcome-for-the-first-time penises?
<_mylesbyrne> Haha
<alexgordon> can we have pregant stallman instead? http://chocolatapp.com/snaps/stallwoman.png
<jfhbrook> please load, one of you
<thealphanerd> _mylesbyrne: my name is myles borins… our names are way to fimilar
<thealphanerd> s/fimilar/similar
<ec> thealphanerd: YES UGH SEE I WASN'T INSANE
<_mylesbyrne> As a way of introduction: I'm a fan of ec's Twitter and want to spend 2016 getting badass at shell
<ec> I'd heard you say it out loud
<_mylesbyrne> Is the borins Irish?
<thealphanerd> I doubt it
<ec> VanguardVivian: speak in here! speak in here! speak in here!
<thealphanerd> ashkanazi jew over hurr
<thealphanerd> but I’m thinking of doing 23 and me… who knows what lies I’ve been told
<gkatsev> ashkEnazi, jeez :P
<gkatsev> 23andme is pretty cool
<jfhbrook> man stallman actually kinda lives a chill life huh
<jfhbrook> sorry, I lied about sleeping
<gkatsev> too bad that it's back up to 200
<thealphanerd> gkatsev: i’m bad and I feel bad
<gkatsev> but I guess it makes sense since they were basically on life support for 2-3 years
<thealphanerd> I just got back from Israel yesterday actually
<gkatsev> thealphanerd: cool! what for?
<_mylesbyrne> Nice. That's probably my next international destination :)
<ec> jfhbrook: LOL
<thealphanerd> Did a tour. Kina like liberal adult couples birthright
<ec> alexgordon: omg.
<thealphanerd> Learnt a bunch about the refuggee situation in israel. Went to the west bank. Found out about work people are doing towards co-existance
<_mylesbyrne> thealphanerd: haha
<ec> I hate weild vs wield
<ec> I get it wrong *every time*
<VanguardVivian> Tbh I've resisted all pressure to make anything like a CoC because I feel like it's all common sense
<gkatsev> ec: wtf is weild?
<ec> VanguardVivian: I feel like the only possible response to that is ‘you must not know many developers.’
<gkatsev> ec: it's i before e except after c
<gkatsev> ec: there's no c in wield
<VanguardVivian> Like, if you call someone a slur, or misgender them, or ask about what they do with their genitals, or steal their ideas, that's pretty obviously Bad
<incomprehensibly> weird
<incomprehensibly> wield
<ec> lol incomprehensibly
<ec> that was perfect
<VanguardVivian> But I can totally help with what I've learned if you all want advice on your CoC(s)
<ec> now we just need inimino to say ‘hm.’
<incomprehensibly> oh hi VanguardVivian
<incomprehensibly> !
<ec> VanguardVivian: thing is, there's a huge chunk of humanity (most of whom I suspect you have blocked ;P) for whom that isn't ‘obvious’
<VanguardVivian> Hi everyone, I have ~92k accounts blocked on Twitter. (CONTEXT)
<ec> and basically, if you exclude *everybody* for whom that isn't *obvious*, you're excluding [ ==] this much of humanity,
<VanguardVivian> I might (probably??) have at least one of you blocked :D
<ec> but by *explaining* it to them, you can also catch a huge chunk who didn't think it was obvious, but who are neither complete shit people, and are Willing to Try
<ec> and thus include [ ======] this much of humanity
<incomprehensibly> VanguardVivian: (i'm glowcoil)
<ec> VanguardVivian: I think we talked about @nexxylove once and you had her blocked
<ljharb> VanguardVivian: turns out it's not obviously bad to everybody :-/
<incomprehensibly> lol i forget that my name is not obvious here
<VanguardVivian> Oh yeah iirc that was from a bad Block Together from which my unsubscription wasn't properly processed.
* ec nods
<ec> lol it's not like I'm upset
<ec> I feel like ‘Having people I care about whom you have blocked’ is kinda part-and-parcel of a Vivian Friendship
<ec> :P
<VanguardVivian> incomprehensibly: I keep my username the same everywhere for simplicity
<ec> ooo, that's a thing I want to add
<VanguardVivian> EC: well, considering there are literally a double digit number of countries with a SMALLER population than my block list,,,
<ec> respect-for-/ignore
<ec> and similar
<VanguardVivian> Btw in a CoC I would include a list of "debatable /s"
<VanguardVivian> *"debatables." Damn autocorrect
<ljharb> VanguardVivian: why do you block so many people?
<incomprehensibly> partly i don't like leaving irc log trails with my twitter handle, and partly this name originated as part of a long-forgotten joke and i really like it
<ec> VanguardVivian: was like, ‘… debatable sarcasm? what?’
<ec> ljharb: VanguardVivian runs TheBlockBot
<ec> er, contributes to*? manages?
<ec> incomprehensibly: I really, really like that so much of you is driven by ‘I really like it’
<ljharb> but what's the purpose specifically? like blocking all the alligators?
<ec> incomprehensibly: I think that's kinda why I respect or like you in a nutshell, btw.
<VanguardVivian> ljharb: I block so many people because I have a large visibility online, and the only way I've found I can avoid giant dogpiles all the freaking time is preemptively blocking people who are likely to participate in them.
<_mylesbyrne> "conduct" is a tricky word. It implies authority. I'm hoping one day we can get to "codes of compassion"
<ljharb> VanguardVivian: what do you mean by "giant dogpiles"?
<ec> _mylesbyrne: I chose ‘Comport’
<ec> because everybody wants to comport themselves well, because then they're implicitly wearing an online tophat.
<_mylesbyrne> ~ google comport
<ljharb> _mylesbyrne: "conduct" means "behavior" - it doesn't have anything inherently to do with authority.
<ec> -g comport @ _mylesbyrne
<ec> the bot is down right now lol
<VanguardVivian> ec: I contribute to /and/ manage the Bot. Contribute to = I do everyday blocking. Manage = I can add or remove people who are allowed to do that blocking.
<ec> ljharb: yes, but there's implications. words have meaning.
<ec> for instance, ‘beahviour’ is one to avoid
<thealphanerd> I was just about to talk about how the moderation portion is the important part
<ljharb> ec: sure, which is why conduct is better :-)
<ec> because worse than authority; it implies the person-having-the-behaviour is *immature*, like unto a small child
<thealphanerd> you don’t want to give abusive people power. claiming that you are treating them un fairly is the easiest concern troll EVER
<ec> and the one-speaking-about-the-beahviour is more mature, or better, or somehow the responsible ‘adult’
<thealphanerd> a good moderation policy kills that concern troll
<ec> conduct has similar connotations to me, unfortunately; but CODE_OF_CONDUCT.md is spoken for at this point
<ljharb> hm, interesting
<ec> thealphanerd: hm?
<VanguardVivian> ljharb: "giant dogpiles" as in my mentions being a war zone where I can't even enable notifications without my phone buzzing off the hook with "fuck you SJW bitch" messages
<ec> thealphanerd: re-phrase? I'm not familiar with ‘concern trolling’ beyond having seen it in passing
<ec> and what little I *have* seen disagrees strongly with my ethos
<thealphanerd> the real problem with public projects are not neccessarily the people breaking obvious rules
<thealphanerd> it is the people who pretend to be having an in good faith discussion
<thealphanerd> in order to sidetrack or distrupt reasonable discussion
<_mylesbyrne> thealphanerd: I've seen that. But are those folks all malicious or just ignorant?
<VanguardVivian> ec: concern trolling ime is when you pretend to care about someone's well-being in order to justify saying something harmful to them
<thealphanerd> without a moderation policy in place and people understanding how to enforce it those types of trolls can take over the dialog
<ec> That's pretty easily handled
<_mylesbyrne> Ignorance can be cured
<VanguardVivian> Ignorance can't be cured in those who don't want the cure.
<ec> by demanding that discussion of policy, or concerns, be taken up with the administrattion directly, not in the primary medium.
<ec> VanguardVivian: so ... a bit, ‘playing devil's advocate?’
<ec> to use a bit older terminology lol
<pikajude> no
<_mylesbyrne> VanguardVivian:
<VanguardVivian> That's another huge reason I block so many people. I don't believe in arguing about social justice with people who haven't actively demonstrated willingness to change. I think the bulk of productive SJ conversation is figuring out how to be better at existing SJ, not bringing in more SJ people.
<VanguardVivian> Instead of SJ outreach, letting them come to you. Because you're almost certainly not going to change minds if you jump into a den of determined bigots.
<pikajude> my cat is obese
<ljharb> VanguardVivian: gotcha, that makes tons of sense
<ec> Den of Determined Bigots
<VanguardVivian> Like GamerGate.
<VanguardVivian> There's no point to engaging GamerGate besides blowing off steam/using them as a punching bag to yell at.
ec changed the topic of #elliottcable to: Den of Determined Damsels
<_mylesbyrne> I think folks seek role models to emulate
<thealphanerd> ec: everything aside… a CoC is a bare minimum you can do to promote that your project is a safe space. the real question is if an unenforced CoC is worse than none at all
<ec> thealphanerd: yeah, that's kinda what I was saying to gkatsev earlier
<ec> advertising safety and not providing it is a whole new level of danger |=
<VanguardVivian> Omfg @ the name change ec just did
<ec> 's like a abandoned police station
<ec> VanguardVivian: (context: IRC provides a changable ‘current topic’ for every room; and in my social circle, we have a habit of using it as a sort of side-channel for discussion or funny memes)
<_mylesbyrne> They get bad role models from some media sources. But if they get a bunch of rules thrown at them when they join a new community ... I think that just makes the rule makers feel more righteous
<VanguardVivian> THANK YOU AND NOW CUE EMBARRASSMENT FOR BEING NEW TO IRC
<ec> UR WECLCM
<pikajude> all memes are funny
<pikajude> unfortunately, my cat is obese
<VanguardVivian> hey kids I heard you like memes
<ec> of rather important note, IRC is full of old, entrenched, embittered bigots
<VanguardVivian> wanna buy some memes
<VanguardVivian> *opens trenchcoat*
<ec> so, like, I hope this channel can be a safe space for you, but ... tread carefully if exploring elsewhere? >,>
<thealphanerd> classic irc meme: trout slap http://www.urbandictionary.com/define.php?term=trout+slap
<ec> _mylesbyrne: I don't think right this second is the time to be discussing *whether* having a CoC / rules is a good idea; for the context of this discussion, that's already been decided, y'know?
<ec> oh lord are we bringing up the old IRC culture shit
<ljharb> the "I" in "IRC" stands for "internet", so of course it's full of old, entrenched, embittered bigots
<_mylesbyrne> I'm also new to IRC (this decade at least)
<ec> is it time to break out the bash.org?
<thealphanerd> YEAH!!!
<_mylesbyrne> Oh, I'm totally in favor of CoC
<VanguardVivian> *sweats nervously bc I was a minor at the beginning of this decade*
<ec> VanguardVivian: don't worry too much, you'll fit right in
<ljharb> *sweats nervously because that's what happens when you're old*
<VanguardVivian> That's what she said
<ec> there was a time, not too far back, when the *majority* of this room were under 18
<ec> incomprehensibly joined my cult when he was, like, 14 :P
<ec> Fuck, I need to fix purr, that's a great wat
<incomprehensibly> ec: purr was working like yesterday
<incomprehensibly> -what
<thealphanerd> ec: how long has this chan been running?
<ec> thealphanerd: various forms since 2007; current iteration since Paws was created, so like, December 2009
<ec> maybe Janurary 2010
<ec> incomprehensibly: yeah, he parted recently
<incomprehensibly> ec: what make him decide to part
<incomprehensibly> : (
<ec> no idea
<ec> about to go digging
<ec> incomprehensibly: do you like Halsey?
<ec> btw
<incomprehensibly> halsey?
<incomprehensibly> oh i.....don't really :\
<ec> aw
<_mylesbyrne> My comments were in the context of "new folks in programming" - I try to show them the role models *before* showing them the list of rules
<thealphanerd> ec: do you have some pragmatic examples of pawas being used?
<pikajude> no
* ec pats pikajude
<ec> thealphanerd: Paws itself, a topic for another time, k? want to focus
<pikajude> paws is not a "pragmatism" language
<ec> or ask alexgordon, he knows everything about it ;)
<_mylesbyrne> I probably needed more than three days of history to comment, sorry :(
<alexgordon> ಠ_ಠ
<ec> _mylesbyrne: lolllll it's fine, no apologies
<ec> my back hurts. it's so late, but I don't want to sleep, I want to write
<alexgordon> are we actually going to get to talking about paws instead of cocs?
<ec> alexgordon: oh, you want to talk about that tonight?
<alexgordon> nope
<ec> I can put this on hold 4 *u*, bby
<alexgordon> it's half past 6
<ec> pff fine
<thealphanerd> just use the one from rust
<ec> alexgordon: have you *ever* talked to me about paws before 6am?
<ec> also, inevitable:
<ec> “alexgordon: are we actually going to get to talking about paws instead of cocks?”
<ec> -tish
<alexgordon> yeah each time you say CoC I imagine you said cock
<alexgordon> it's the only way I can stay sane
purr has joined #elliottcable
<alexgordon> PURR!
<ec> I am okay with this.
<ec> -what
<purr> <purr> idklolosx
<ec> -what
<purr> <inimino> I am a perfectly good reason to be hot and bothered.
<alexgordon> :D
<ec> -^ tru tho
<_mylesbyrne> +1 on rust cock
<alexgordon> -what
<purr> <nuck> I bet I can do better kegels than any of you
<alexgordon> nope
<alexgordon> -nope
<purr> alexgordon: http://youtu.be/gvdf5n-zI14
<ec> okay can we not make ‘cock’ an alias for coc
<ec> that's a bit far :P
<ec> going to have to go through the factoids and nonsequiturs, I guess, too
<alexgordon> ec: so I told jeanni that you've become a feminist and he was like "yeah? haven't you been reading his twitter?" ... nope
<ec> there's probably a lot of srsly offensive cruft in both
<alexgordon> haven't been on twitter all year
<ec> with the age of this room /=
<_mylesbyrne> Haha. For real the rust one is great tho
<ec> alexgordon: jeannicolas hasn't been, you mean?
<alexgordon> no, I haven't been
<ec> oh I mis-read that
<ec> wait
<ec> he reads my twitter
<ec> awh I'm so touched
<VanguardVivian> Just jumped back in and suddenly saw the conversation had turned to cocks
<ec> why isn't he in here!?
<ec> VanguardVivian: everyday practice 'round here. :3
<alexgordon> hahaha he's become conventional
<alexgordon> ec: he has a wife and a child, and a house and a mortgage
<ec> what
<ec> no way.
<alexgordon> yep, perfectly normal person. it's weird
<_mylesbyrne> I'm out for the night
<ec> o7 _mylesbyrne
<_mylesbyrne> Thanks for the chats folks. Thanks for inviting me ec
<alexgordon> -what @ alexgordon
<purr> <substack> dropped a lot of haskell at university
<ec> _mylesbyrne: don't leave! lurk.
<alexgordon> I should go to bed too...
<alexgordon> one final -what...
<alexgordon> -what
<purr> <elliottcable> some hearty soul needs to transfer an entire naked girl using IPoAC.
<ec> alexgordon: “are we actually going to get to talking about paws instead of cocs?” what.
<purr> beep.
<alexgordon> boring.
<alexgordon> -what
<purr> <elliottcable> > node \ > 84 7 +devyn: we're bot \ ...
<alexgordon> god dammit where are the juicy ones
<alexgordon> -what
<purr> <purr> gq: Could not find `boner`.
<alexgordon> -what
<purr> <prophile> I wish nigger was more socially acceptable because it's a great onomatopoeia for the sound of a helicopter. niggerniggerniggerniggerniggerniggernigger
<alexgordon> oh man
<ec> ljharb: “*sweats nervously because that's what happens when you're old*” what.
<purr> beep.
<ec> wow
<VanguardVivian> Speaking of cocks, does anybody here know how to do muffing well?
<ec> never heard of it
<ljharb> ec: lol someone being a minor recently makes me feel old, is all
<purr> lol
<thealphanerd> I’m not sure what to make of all of this
<ec> ljharb: oh, it wasn't a question, it was a bot-trigger. dw aobut it
<VanguardVivian> ljharb: I'm 21. Born '94. Yep. Anyway
<ec> bot was out of the room, so I had to use a hax
<thealphanerd> I feel like I need a different alias to be in this channel if the logs are public ;S
<VanguardVivian> Muffing is when you stimulate the inguinal canals, better known as "where the balls were before they dropped."
<nuck> What
<ljharb> i just learned the term "inguinal canals" at the vet, because my puppy's are still there
<alexgordon> I'm glad to see all this talk of code of conducts has had no dampening effect whatsoever
<VanguardVivian> You can find them if you finger around the top of the scrotum. Anyway. Using various methods to pay attention to the inguinal canals, particularly their openings, can cause extremely intense orgasms. It's a well-kept secret!
<nuck> I come back and there's shit that *I* find weird
<VanguardVivian> nuck: I'm good at that.
<ec> VanguardVivian: oh, you told me about this a while back
<VanguardVivian> ec: Because of course I did. ;D
<ec> VanguardVivian: idk, you're not usually *nuck*-weird
<ec> -nuck
<purr> ec: shut up nuck you are a nuck
<alexgordon> -nunck
<alexgordon> -nuck
<purr> alexgordon: shut up nuck you are a nuck
<ec> -nuck @ VanguardVivian
<purr> VanguardVivian: shut up nuck you are a nuck
<nuck> In other news, my boss provided me with an API but failed to tell me the endpoint or in fact anything about calling it
<nuck> Guessing time
<thealphanerd> -ec
<purr> thealphanerd: literally a cuking jerk. boo hiss
<VanguardVivian> b-but muffing
<thealphanerd> ahahahaha
<ec> -find elliot
<purr> ec: Found: bot, elliottcable, elliottcablestatus, mix, and memory?
<ec> -elliottcable
<purr> ec: literally a cuking jerk. boo hiss
<nuck> Oh and it doesn't give an error code on fail!
<nuck> Always a fucking 200
<ec> -elliottcablestatus
<purr> ec: elliottcable is currently #awesome.
<ec> ahhahh
<thealphanerd> -ec doody pants
<ec> yes purr thank you true
<ec> -factoid elliottcablestatus
<purr> ec: Popularity: 1, last changed by: <unknown>, <unknown time> ago
<thealphanerd> -help
<purr> thealphanerd: You're beyond help.
<nuck> ec: I'm not weird any more, just sad and corporate
<ec> -mix
<purr> ec: shut up you fuckers i'm awesome and like elliott but better 'cos tits
<ja> -halp
<purr> ja: Hey smart people, HALP! elliottcable, battlecollie, micahjohnston, incomprehensibly, eboyjr
<ja> HALP HALP HALP
<nuck> Okay yeah I'm still weird
<ja> SMARTS HALP
<alexgordon> -oftn
<ec> oh lord alexgordon LOL
<purr> LOL
<ec> I forgot about -halp
<VanguardVivian> O______________________O
<ec> dying over here.
<incomprehensibly> -everyone
<purr> incomprehensibly: Add a hilight to your client for the string ‘%everyone’. It's used in this channel to alert you when an interesting discussion is going on.
<ja> SOMEONE MAKE ATOM READ LARGE FILES PLS
<gkatsev> it's almost 2am now for me, apparently. Time to go sleep. Night all.
<ja> yeah, nice -halp, ec
<ja> purr really does it all
<incomprehensibly> ec: remember when highlighting you would make 7 devices be really loud
<ec> -factoid halp
<purr> ec: Popularity: 8, last changed by: elliottcable, 1kſ 520ſ 469mſ ago
<thealphanerd> -ja
<purr> thealphanerd: <+ljharb> what is ja
<thealphanerd> -factoid ec
<purr> thealphanerd: Alias: elliottcable
<ec> okay so, the bot responds in privmsg
<ec> take it there for the moment plz <3
<thealphanerd> sorry
<ec> no apologies!
<thealphanerd> I’m like a 12 year old in the bot store
<thealphanerd> thank you for your understanding :D
<ec> apologies are for when you fail to do something you already know you should be doing
<nuck> ja: I know how to do that! It's called `pacman -S vim && alias atom=vim`
<ec> vim <3
<ec> <3 vim
<purr> Let it be known that ec hearts vim.
<ec> -wholoves vim
<purr> ec: vim is loved by micahjohnston, akshatj, gkatsev, SphereCat1, ec, sh1mmer, FireFly, vil, konobi, and Andrevan.
<ja> nuck: but… :C
<nuck> I don't? Wtf
<nuck> <3 vim
<purr> Let it be known that nuck hearts vim.
<ec> oh god I forgot that purr was the #Node.js bot for a hwile
<thealphanerd> ec: I should already know not to go bot crazy in a channel… I’ve been banned before :P
<ec> he's got tooooons of cruft from that giant room
<ja> haha wth
<ec> thealphanerd: to be fair, he needs better filtering, debouncing, and denoising
<ec> he's got some, but it's limited
<thealphanerd> <3 vim
<purr> Let it be known that thealphanerd hearts vim.
<ec> like, there's a lot of factoids and easter-eggs that specifically don't function in #Node.js because they're offensive as fuck
<ec> or just really dirty
<ja> -offense
<ja> -fuck
<ja> -dirty
<nuck> I discovered the magic of splitjoin.vim the other day. Never switching editors
<ja> :<
<ec> and he will only do sneaky ‘natural responses’ every-so-often depending on activity in the room
<nuck> -back @ ja
<purr> ja: Welcome back! Here, have some welcome-back penises. http://youtu.be/RvkWhGVNky4
<alexgordon> -cock
<purr> alexgordon: cock → elliottcable
<ja> gee thanks
* alexgordon lol'd
<purr> lol
<alexgordon> -alexgordon
<purr> alexgordon: Could not find `khaleesi`.
<ec> khaleesi arrows lol lol lol
<nuck> Somebody find an archived version of the penises
<ec> nuck: I am now assigning you this task.
<nuck> Too busy
<nuck> Hire a PI
<ec> nuck: no kidding, just added it to the Paws task-tracker and assigned it to an imaginary ‘nuck’ user
<ec> ;)
<thealphanerd> ec: do you like pathogen much more than vundle/
<nuck> "Hey, you're an investigator, right? Find these penises for me and get a copy of the full video"
<ec> thealphanerd: yep
<alexgordon> -sephr
<purr> alexgordon: sephr isn't a country and if he was a country his name isn't anguilla
<ec> thealphanerd: do you use zsh? I also rewrote Zgen
<ec> which is like better-pathogen for Zsh modules
<ec> alexgordon: wtf
<alexgordon> ikr
<ec> -alexgordon
<purr> ec: Could not find `khaleesi`.
<ec> oh
<ec> wtf
<ec> -find alex
<purr> ec: Found: alexgordon, darkf, beltbuckle, you’re next, and laws
<ec> -beltbuckle
<purr> ec: WE NEED TO GET ALEXGORDON THAT GOLD “AG” BELTBUCKLE
<ec> YES TRU THO TRU THO
<nuck> Wot
<ec> -laws
<purr> ec: <+alexgordon> rewriting this haskell code in PHP <+alexgordon> I must be violating some kind of law of nature
<ec> -you're next
<ec> -you’re next
<purr> ec: cloudhead, `kat, Navarr, jane, Eridius, alexgordon, prophile, othiym23, gozala
<ec> creepy.
<alexgordon> -darkf
<purr> alexgordon: < alexgordon> darkf: worse than Java
<nuck> What
<alexgordon> -sandwich
<alexgordon> -java
<purr> alexgordon: a good sandwich
<nuck> I'm so confused
<thealphanerd> ec: I’m a very simple meat bag
<ec> okay really take it to privmsg
<thealphanerd> I use iterm2
<thealphanerd> and textmate
<ec> people still use iterm?
<ec> ... PEOPLE STILL USE TEXTMATE!?
<thealphanerd> and bash
<ec> bash is fine
<thealphanerd> once in a while screen
<ec> iterm, questionable
<nuck> I only use iterm when shitty apps try to open my "default" terminal
<ec> but textmate, reprehensible.
<ec> :P
<nuck> I wish Terminal had better key binds
<thealphanerd> ec: meh… it does what I need it to do and find / replace has greate UI
<ec> nuck: how so? You can customize them o_O
<nuck> I want the Cmd+1-9 tab binding back
<nuck> And I can't get them in Terminal.app afaict
<alexgordon> <alexgordon> writing C should be called "sailing"
<ec> SIMBL!
<nuck> Oh god no
<ec> y o god no
<ec> i ,3 hax
<nuck> SIMBL doesn't even work without disabling rootless
<nuck> Which is too much effort
<nuck> Plus I don't know enough ObjC to write SIMBL stuff
<ec> also thealphanerd, see privmsgs
<alexgordon> <ec> snot nazi.
<alexgordon> <alexgordon> is that when the asians arrive?
<ec> really, really need a way to ‘fav’ channels in irccloud
<alexgordon> and pure evidence of old-ec: <ec> HD tits are waaaaaay better than SD tits.
<alexgordon> ok, really gotta go to bed now
<nuck> Haha old ex
<nuck> *ec pls phone
<nuck> ec is not my ex. Thank god.
<ec> I don't even like tits!
<ec> >:
<ec> nuck: I mean, your loss
<alexgordon> ec: but you did
<ec> pretty sure that's contextually incorrect, it's gotta be
<nuck> I would totally get drunk with you if I were in Chicago though
<alexgordon> you can't deny it!
<ec> nuck: I don't drink much/well
<ec> I drink fancy things in small quantities
<ec> ooo speaking of
<alexgordon> ec: OH MAN
<alexgordon> don't make me get the image out
<nuck> ec: then maybe do ovoids with you
<ec> wonder if I should chase my litre of sparkling water and 400cal of Soylent with a good craft beer. :P
<nuck> Lol Soylent
<purr> Lol
<nuck> People legit drink that? It's people!
<nuck> SOYLENT IS PEOPLE!
<nuck> More seriously what an awful and yet awesome brand name
<nuck> What are most confused by the bottle of downy circled in the corner
<alexgordon> yeah I dunno what's up with that
<nuck> Right next to heavy chemical handling gloves
<alexgordon> well I have conclusively proven that ec is an insane, breast-loving alcoholic
<ec> nuck: supposedly the name has nothing to do with that movie
<alexgordon> what more is there to do today? nothing
<ec> and is instead informed by the same thing that informed the movie
<ec> common-ancestor-but-unrelated
alexgordon has quit [Quit: My MacBook Pro has gone to sleep. ZZZzzz…]
<ec> wtf is with the circle, yeah
<nuck> Does ec mix Downy with Wine and drink it? I theorize that yes.
<ec> does that make me a downo?
<nuck> That's your clown name
<ec> I buy it.
<ec> thealphanerd?
<nuck> "Hey kids, I'm Downo the Clown here to teach you the internals of high level programming language interpreter design"
<ec> man I'm terrible at *interpreter* design
<ec> don't you know yet that I design *semantics*, not implementaions?
<ec> where have you been the past six years geeze nuck geeze
<nuck> You're probably better at it than the kids at the party
<ec> answer-in-all-seriousness: avoiding my bordering unstable PLT rants. >,>
<nuck> Hahaha
<nuck> I don't think I've been here for six years
<nuck> God I hope not
<nuck> That would be terrifying and force me to rethink my life
<ec> pretty sure you have
<ec> five maybe
<ec> you've been here since early tho
<ec> don't make me grep my old logs.
<ec> -logs
<purr> ec: `curl -Lr -`bc <<<'2 ^ 16'` http://ell.io/logs | tail +2 | less -RS`
<nuck> Please font grep them oh god I'm scared of what I'll find out
<ec> okay I don't have a date but I *do* have when you first joined
<ec> 08:19 <+elliottcable> Nuck: earned yourself an invite to my little club.
<nuck> So you have a time but not a date
<nuck> Lol
<purr> Lol
<nuck> I don't even know how I earned it
<nuck> Back then I was a complete retard
<nuck> I once cussed out Mike Shaver in #nodejs because of my own misunderstanding of JS
<nuck> God I was a complete twat
<ec> nuck: s/retard//
<ec> I can't figure out wget wtf
<nuck> I assure you I wasn't a complete
<ec> it just keeps exiting with no output, and falsey exit-code
<nuck> I was far from complete
<ec> nuck: you know what I mean. :P
<nuck> I actually don't. Is that a "please don't use that term"?
<ec> nuck: okay it's fairly recent, it's like 46,000 in the logs
<ec> *still* can't find a datae
<nuck> Usually people just use the sed syntax to make funny dick jokes out of my lines
<ec> nuck: yeah. that term's a no-go in here. (unfortunately for me, because I've completely failed to excise it from my own irl vocab ...)
<nuck> Not that it's necessary, seeing as most of my lines are already dick jokes
<ec> 46486-07:51 -!- Axman6 [~Axman6@pdpc/supporter/student/Axman6] has quit [Ping timeout: 252 seconds]
<ec> holy *shit*, who remembers axman
<nuck> ec: aye aye Capitan
thealphanerd has left #elliottcable [#elliottcable]
<ec> goddamnit nuck why did you have to join on such a chatty day
<nuck> Rofl
<ec> other gems from the same day
<ec> 1214-05:00 < postmodern> why should i hang here?
<ec> 1226-05:00 < mephux> i feel like i'm getting AIDS from just being in here.. :-\
<ec> 1227-05:01 < Nexxy> sorry
<ec> 1228-05:01 < Nexxy> that's me, actually
<nuck> Why aren't your logs tagged with Sols
<nuck> -sol
<purr> nuck: 16 784 ſ 302 543
<ec> jesus christ yeah there's some dark shit
<nuck> Well… what channel did you think this was?
<ec> SUCCESS
<ec> 44612---- Day changed Mon Aug 15 2011
<ec> I'm so sorry, nuck.
* ec touches shoulder gently
<nuck> Okay only 4 years
<nuck> That sounds right
<nuck> And I think I was banned for like 8 months for a period there
<nuck> When you went balls deep into coding and tried to make the channel serious (hah!)
<ec> (hah!)
<nuck> So I made Siri into a chav
<nuck> I gave 'em a British male voice and made my name "u fukken wot m8"
<nuck> I keep making request to Siri and then just giggling
<nuck> At how ridiculous it is
<ec> this is … interesting
<ljharb> it's interesting that people use google plus
<ec> ljharb: endlessly
<nuck> It's interesting that Google redesigned Plus despite the plans to kill it
<ljharb> but yeah that was from 2013
<ljharb> fwiw i pulled my funding from noisebridge around that time - any place that allows weev in the door is no place i want to be associated with
<ec> idk anything about this weev guy
<ec> anyway, noisebridge is apparently some anarchist buillshit, so? |=
<ljharb> lol a bit of that too
<purr> lol
<ljharb> ec: he's a horrible person and every "ist" you can think of, but he's also a "hacker" who scraped AT&T's website for ipad phone numbers (because AT&T is stupid) and got sent to federal prison for it (because US computer laws are stupid)
<ljharb> basically, he should have gone to prison for tons of things, but not for the thing he actually went in for.
<ljharb> so many think of him as some kind of martyr and give him a platform from which to spew his hate.
<ec> ‘he should have gone to prison for’
<ec> careful, there, though
<ljharb> oh he's committed many crimes
<ljharb> they're just not ones that are typically enforced or investigated.
<ec> well, sounded like you were implying he should have gone to prison for being everysortof-ist
<ec> ESOist
<ec> Esoist, I'm keeping that
<ljharb> oh, no, not for that - but for all the things that his isms drove him to do
<ec> need to take a break from all this, I think. Will have to finish tomorrow, maybe, ugh
<ljharb> his isms just makes him a horrible person, and that's not illegal
<ljharb> night!
<ec> ljharb: Oh, I think I'll still be around
<ljharb> kk
<nuck> I'm glad Noisebridge ended up putting policies in place. Bugs me when people oppose that stuff
<ljharb> yeah
<nuck> Like oh god I tried to offer constructive tweaks to the Open Code Of Conduct but the repo got posted on a gamergate forum
<nuck> And they threw a bitchfit, mostly because a lot of then thought it was mandatory for all github repos
<nuck> They ended up winning in a way
<nuck> OCOC is dead
<nuck> The authors decided to lock it "temporarily"
<nuck> 6 months later it's still locked and no changes have been made :(
eligrey has quit [Quit: Leaving]
meowrobot_ has joined #elliottcable
meowrobot has quit [Ping timeout: 272 seconds]
thealphanerd has joined #elliottcable
<thealphanerd> yawnn
<thealphanerd> jetlag sucks
<thealphanerd> my sleep schedule is all normal
<pikajude> i found a really depressing drawback in alfred's search functionality
Rurik has joined #elliottcable
<thealphanerd> ohhoe: can i privately message you?
<ohhoe> thealphanerd: if it's not clown related lol
<purr> lol
<gkatsev> pikajude: which is?
<pikajude> gkatsev: you know symlinks?
<gkatsev> I know of them
<pikajude> like, a file that just goes to another file
<pikajude> yeah
<pikajude> alfred doesn't know what those are
<pikajude> and won't follow them
<gkatsev> weeird
<pikajude> but i was able to find a workaround!
<pikajude> since mac apps are just folders, what you do is you create Emacs.app in /Applications, then symlink <path-to-your-emacs>/Contents into that app bundle
<pikajude> and kablammo, alfred will open it for you
<pikajude> there's nothing quite like working around your tools!
<gkatsev> heh
eligrey has joined #elliottcable
Rurik has quit [Ping timeout: 255 seconds]
Rurik has joined #elliottcable
Rurik has quit [Changing host]
Rurik has joined #elliottcable
alexgordon has joined #elliottcable
<Rurik> alexgordon, how is Bhasha going?
<alexgordon> dunno, elliott seems to be doing paws now
<Rurik> Man, I wish I could design and implement my own languages
<Rurik> ec sent me the dragon book but all of it goes directly over my head
* Rurik is pretty stupid
<alexgordon> it's not that hard really
<Rurik> I don't know where even to start
<alexgordon> with code :P
<alexgordon> try with coffeescript or js
<Rurik> and implement what?
<alexgordon> anything!
<alexgordon> make a forth
<alexgordon> 1 2 + 3 *
<Rurik> what's forth?
<Rurik> hmmn so
<Rurik> What do I need to build this
<Rurik> Implement a stack
<Rurik> implement a parser
<Rurik> and what?
<ec> alexgordon: unfortunately for me, I never *stopped* doing paws. >:
<ec> I just stopped talking about it for a long time.
<ec> Rurik: yeah, if you're *really* that lost, then skip the compilers and write a interpreted calculator by hand, from scratch
<ec> just to convince yourself “Hey, I'm … actually capable of writing a program that takes in some text, and then makes the computer do things according to that text!”
<Rurik> like a half adder?
<ec> no idea what that is! maybe!
<Rurik> the one you build using logic gates
<ec> I just mean start with "(1 + 2) * 127 / 14"
<ec> then add variables, then add statements, and boom, you're halfway to a simple "programming language", lol
<purr> lol
<Rurik> ah, that way
<ec> like get over your stress about it first
<ec> *then* try and learn
<Rurik> I guess
<ec> I can relate, I have similar fears about interviewing for a job or getting into school
<Rurik> I am stuck at how to store the parsed data
<Rurik> what to do with it comes later
<ec> so for me the barrier is convincing myself that I could talk at least one fool on this planet into paying me money to do what I love
* ec nods
<ec> do you want me to walk you through Paws' approach?
<Rurik> sure
<ec> I just woke up, lemme get out of bed and shit
<ec> then I'll see if I can find a part of the old Paws codebase that didn't use pegjs, simple enough to be walked through without teaching you All Of Paws.
<ec> oh yeah take a gander at pegjs or bison or whatever, too. it will instantly solve *this* problem for you, and let you move on to more interesting problems.
<ljharb> ec: what timezone are you in?
<ec> ljharb: the sleepy timezone
<ec> I'm super-unhealthy and insomniac; both of the last two times I went to JSconf, I missed a whole day of the conference due to sleep issues
<ec> Rurik: ^ that link; ain't it cool? it's so simple to work with. am very happy with parser-generators, for now.
<ec> it's pretty simple:
<ec> Sequence = seq:Expression*
<ec> { seq.type = 'sequence'; return R(offset(), text())(seq) }
<ec> that defines a thingie, calls it ‘Sequence’ for the purpose of reference elsewhere in that grammar,
<ec> and defines it as "Expression*" (which works just like regular expressions: ‘zero or more <Expression> units, form a valid <Sequence> unit.’)
<ec> then, programmatically, when that match *occurs*, the word ‘seq’ is a JavaScript variable to assign it to in the below JS expression;
<ec> which then does some bookkeeping that my interpreter needs, beyond a simple Array
<ec> that bookkeeping is probably a little unnecessarily complex, with those stupid helper functions, that's my own fault.
<ec> (my R() function that's used over and over, does nothing more than assign PegJS's character-range metadata to a slot on the object created, so that my code can later reason about *where* particular expressions came from.)
<ec> Rurik: nothing magical, yah?
<thealphanerd> I had too much caffeine and I’m shaking
<thealphanerd> feels great
<alexgordon> Rurik: stack languages are easy
<alexgordon> use regex to tokenize the input
<alexgordon> then make a stack
<alexgordon> and well you know, do the obvious
<alexgordon> I kinda want to make a stack language now :P
<Rurik> alexgordon, what's tokenization?
<alexgordon> Rurik: split into words
<Rurik> ah, gotcha
<alexgordon> like print("hello") is four tokens: print, (, "hello", )
<Rurik> and what do we do with tokens?
<Rurik> match the function name with regex and throw the rest away?
<ec> basically it's text -> tokens -> *structure* -> interpretation
<ec> so, abstractly, yes, you throw the rest away
<alexgordon> yeah
<alexgordon> well, I'd add in verification in there
<ec> meh
<alexgordon> text -> tokens -> structure -> verification -> output
<ec> overcomplicating
<ec> Rurik: but realistically, there's another step where you take tokens and turn them into an AST, which is a fancy word for an object like this in JavaScript:
<alexgordon> is there a website for like collaborative coding?
<Rurik> Closest I have done is Vim + SSH
<ec> { type: 'expression', children: { type: 'function-call', arguments: { type: 'expression', children: { type: 'string', content: 'hello' } } } }
<ec> alexgordon: yes, Cloud9 does that, but not well
<alexgordon> there should be like a ludum dare for programming languages hehe
<ec> then there's a realllllly cool system that Uses Your Own Editor,
<ec> but I always found it very … creaky and awkward, because it's complicated
<alexgordon> yeah I know that, but I don't think it's bidirectional
<ec> Floobits
<alexgordon> yeah you can only broadcast from that afaik
<ec> Floobits is very bidirectional, it turns vim, emacs, and a couple other popular editors into show-their-cursors editors
<ec> oh it's Neovim only, now
<ec> :FlooSummon Make everyone in the workspace jump to your cursor.
<ec> lol
<purr> lol
<ec> Floo!
<alexgordon> found this http://codebunk.com/
<alexgordon> seems to cost money though
<alexgordon> fuck that
<Rurik> “Floobits works pretty well most of the time.”
<Rurik> Matt Kaniaris - Co-founder, Floobits
<Rurik> wat
<ec> alexgordon: that looks terrible
<ec> yeah floobits was creaky last I remember
<ec> v.cool, but in a, not very pragmatic way
<alexgordon> try this https://coderpad.io/DJXZENWZ
<ec> ‘flootty.’
<alexgordon> can you see what I'm writing if you click that link?
<ec> yep
<alexgordon> cool
<Rurik> Sketchbook
<Rurik> $50 a month
<Rurik> 20 PADS A MONTH
<Rurik> PAD PLAYBACK
<Rurik> REUSABLE SNIPPETS
<Rurik> MFW
<alexgordon> oh god got to look how up to do regexes in JS
<alexgordon> problem is, there's a node module for this
<alexgordon> but can't use it in this editor
<Rurik> lets try the floobits thingy then
<alexgordon> also underscore sucks compared to lodash
<alexgordon> Rurik: vim? nah
<Rurik> it works with Atom too
<alexgordon> but not chocolat!
<alexgordon> I was going to make my own one once, but never got around to it
<alexgordon> haha fuck it, I'm going to use the node module
<alexgordon> otherwise I'll be here all day
<ljharb> underscore is garbage
<alexgordon> Rurik: what should this language be called?
<Rurik> alexgordon, Jihva(Tongue)
<Rurik> Sanskrit
<alexgordon> ok I'll go along with it :P
<alexgordon> sounds like java!
<alexgordon> -java
<purr> alexgordon: a good sandwich
<alexgordon> Rurik: it's working!
<Rurik> alexgordon, which workspace
<alexgordon> I'll upload it to github
<Rurik> that floobits stuff doesn't look complicated at all
<alexgordon> Rurik: yeah but I'd have to learn a whole different editor
<alexgordon> you will need coffee-script obviously
<alexgordon> $ coffee jihva.coffee
<alexgordon> ok so let's make a repl
<Rurik> ok, I have no idea how to use git
<Rurik> should I fork this?
<alexgordon> Rurik: lol no
<purr> lol
<alexgordon> Rurik: just clone it
<Rurik> cloned
<alexgordon> ok repl is done
<alexgordon> git pull