ec changed the topic of #elliottcable to: a 𝕯𝖊𝖓 𝖔𝖋 𝕯𝖊𝖙𝖊𝖗𝖒𝖎𝖓𝖊𝖉 𝕯𝖆𝖒𝖘𝖊𝖑𝖘 slash s͔̞u͕͙p͙͓e̜̺r̼̦i̼̜o̖̬r̙̙ c̝͉ụ̧͘ḷ̡͙ţ͓̀ || #ELLIOTTCABLE is not about ELLIOTTCABLE
MylesBorins has quit [Read error: Connection reset by peer]
MylesBorins has joined #elliottcable
MylesBorins has quit [Remote host closed the connection]
MylesBorins has joined #elliottcable
Rurik has joined #elliottcable
Rurik has quit [Quit: Rurik]
Rurik has joined #elliottcable
Rurik has quit [Quit: Rurik]
Rurik has joined #elliottcable
Rurik has quit [Quit: Rurik]
Rurik has joined #elliottcable
Rurik has quit [Quit: Rurik]
Rurik has joined #elliottcable
Rurik has quit [Quit: Rurik]
Rurik has joined #elliottcable
Rurik has quit [Client Quit]
Rurik has joined #elliottcable
Rurik has quit [Quit: Rurik]
Rurik has joined #elliottcable
Rurik has quit [Read error: Connection reset by peer]
Rurik has joined #elliottcable
Rurik has quit [Quit: Rurik]
Rurik has joined #elliottcable
Rurik has quit [Client Quit]
<ec>
I'm still pissed about Yarn.
<ec>
this is horrible.
<ec>
so it always defaults to installing the _lowest_, oldest, buggiest version of any subdependency?
<ec>
I mean as "a user" you can "just" use their proprietary 'resolutions' feature, whatever
<ec>
but as a library author, that's — that's horrible
<ec>
traditional wisdom, for _good reason_, is to floor your dependency at the oldest version you absolutely know your work will be compatible with
<ec>
but Yarn being broken like this, means I, as a library author, have to decide between "locking people who can't upgrade <subdep> yet for good reason out of my software" and "locking people (yarn users) who need to upgrade <subdep> for good reason out of my software"
<ec>
or at least, dictating that they understand all this, and solve the problem themselves with 'resolutions'
<ec>
which they won't. they'll just open issues asking me to upgrade 'that out-of-date dependency.'
<ec>
brb long rambling blog-post titled "yarn considered harmful'
<ec>
okay, now I'm completely lost.
<ec>
I've got a dependency on foo@20.0.0; and Yarn just installed foo@20.0.0-pre.2
<ec>
that is literally semver-prior, what the actual shit
<jfhbrook>
oh, yeah, I mean
<ec>
oh my fucking godddddddddddd.
<ec>
it prints errors for peers of subdeps, *that are installed as a subdep*, if they're not also in the parent project
<jfhbrook>
I haven't dissected yarn but I was never really satisfied with it, always figured that npm was fine and that the authors of yarn were betraying a huge amount of hubris and doing things different just because
<jfhbrook>
otoh, npm inc kinda sucks now
<ec>
like, does Yarn expect every single dependency, all the fucking way down the dependency tree, to also depend on every peered?
<ec>
hah npm destroyed themselves and tbh it's kinda funny
<ec>
I feel really bad for ceej and laurie, mostly, tbh
<ec>
but the company has absolute-zero goodwill left. burnt it fucking all. great job, fam.
<jfhbrook>
yeahhhhhh
<jfhbrook>
and because of that I'm trying to get into the habit of using yarn more even though I think it's a turd
<jfhbrook>
I feel the worst for kat marchan, they were really invested in the cli
<jfhbrook>
my thing w/ ceej and laurie is this: they were management, meaning that when shit went down and they were still around, they were implicitly cosigning
<ec>
I mean, yarn uses the same registry? I guess if you wanted to make a stand, there’s … GitHub’s new thing?
<jfhbrook>
ceej split pretty early and laurie eventually did the right thing
<jfhbrook>
yeah but github won't cancel their ICE contract
<ec>
or you could early-adopt the fuck out of ceej’s new distributed thing
<ec>
or there’s that ipfs-based, language-agnostic one
<jfhbrook>
wrt the distributed thing, kat was talking about using an insanely viral license for it which would make me uncomfortable using it
<ec>
¯\_(ツ)_/¯ i’m not a gpl fan
<ec>
but idk i kinda trust anything either of those two does implicitly as a good idea?
<jfhbrook>
it wasn't gpl though
<jfhbrook>
it was licensezero parity
<ljharb>
ec: yarn's got tons of bugs, and different ones than npm
<ljharb>
what they *should* have done is first built a test suite that npm passed, and THEN built yarn to pass it
<ljharb>
ec: entropic is doa imo
<ljharb>
and yes, anything that's not osi licensed is also doa
<ljharb>
if that changes, kat will have been a pioneer, but until it does, she's ensuring nobody will use her stuff
<ec>
trying to fix two problems at once
<jfhbrook>
right, right #0 is the right to make local edits without sharing them, something l0 parity explicitly disallows
<ec>
maybe if you're gonna innovate on licensing, make an extremely boring and not-innovative/scary product/tool to do so??
<ec>
instead of also trying to Solve Distributednessiciousness at the same time
<jfhbrook>
I think licensezero could be compelling for applications
<ec>
this is not my actual opinion, just thinking thru the implications of ljharb's opinion :P
<ec>
not sure, at all, how I feel
<ec>
prolly gonna keep using npm and GitHub, frankly
<jfhbrook>
like the gpl and such are designed to govern distribution, licensezero is bigger than that
<ec>
all this "activism-by-choice-of-software-tooling" is extremely foreign to me
<jfhbrook>
yeah I'm not in a rush to switch to a gh competitor
<jfhbrook>
and the npm tech is still decent for now
<ec>
how, in what universe, is the _harm reduction_ you might do by being one-less-npm-user, going to be greater than almost any possible _good_ you could do by just using whatever tool and _getting helpful things made_
<ec>
like if you care about kids at the border I feel like the solution would be to … do something to help the kids at the border … or something …
<ljharb>
jfhbrook: and npm inc fired the ceo so they're probably getting better again
<ec>
idk very puzzling to me. and I say that as someone who chronically Cares About Things, not some edge lord.
<jfhbrook>
ljharb: yeah, I don't think I'll ever have much respect for isaac going forward but if the most toxic person is out they could def have a redemption arc as a company
<jfhbrook>
ec: yeah, I tend to think of that matt bors comic, "and yet you participate in society"
Rurik has joined #elliottcable
<jfhbrook>
ec: a good example of this kinda thing to me is something like, idk, amazon and/or walmart. I think amazon and walmart are Bad, but I still buy things from amazon
<jfhbrook>
you can make a strong effort to buy local etc., and people *should* support local businesses, but the fact of the matter is that amazon and walmart are big pieces of societal infrastructure that would be really difficult to replace, and even if you did, as long as it's a corporation you're not going to be in a meaningfully better spot
<jfhbrook>
in other words: if you "really care", push for nationalization of amazon
<ljharb>
jfhbrook: right
<ec>
I dunno how I feel.
<ec>
I want to be better than that.
<ec>
But frankly, Amazon or Facebook are a lot worse than npm or GitHub?
<ec>
so I'm a lot more uncomfortable with "it's nbd, just keep using Amazon" than I am with "it's nbd, keep using npm."
<ljharb>
right
<jfhbrook>
right! github's ICE contract is super problematic but Amazon is trying to be a fucking defense contractor and Facebook is explicitly undermining democracy with their ad policies
<ljharb>
not that i'm going to stop using amazon or facebook either
<ec>
also uhhhhh the positions are a lot more nuanced
<ec>
at least w.r.t. GitHub
<jfhbrook>
kinda, I guess
<ljharb>
also it's highly likely that github can't drop ice without screwing up microsoft's other govt contracts
<jfhbrook>
right, there are probably things here we're not completely aware of
<ljharb>
meaning potentially, all of microsoft has to drop all govt contracts, or none of it can.
<ec>
I am _absolutely_ unconvinced all this anti-GitHub sentiment is justified, if I'm being dangerously blunt in a publicly logged channel. Like, uh, "we don't want to be the arbiters of _literally all of all-of-our-client's actions_
<ec>
that seems not only reasonable, but literally impossible to argue against
<ec>
don't all programmers know that nested for-loops are bad? :P
<jfhbrook>
ahahaha
<jfhbrook>
so this morning I'm in the weekly book club meeting
<jfhbrook>
we're reading Domain Driven Design by Evans
<jfhbrook>
it's a pretty good book imo
<ec>
for (c in all companies) { for (all actions a of c) { examine(a) } }
<ec>
how the fuck is that, practically, supposed to be achieved.
<ec>
now, that said, uhhhhh, most of this seems to be ego
<jfhbrook>
recent chapters have been about writing good, ergonomic APIs
<jfhbrook>
today's specifically were about using design patterns to clarify APIs and how to apply the things from prior chapters during refactoring
<ec>
the algorithm "for (all actions a of actions-literally-the-entire-internet-is-yelling-about) { drop(a) }" is, like, sane
<ljharb>
ec: i think the difference is, if the company is trying to trade on their ethics, then that opens all their actions to examination
<ec>
so holding up this ICE thing is just dumb and egotistical from the outside, it seems
<ljharb>
ec: airbnb, npm, github are a few examples
<jfhbrook>
right, if a company purports to be the good guys then they have to walk the walk
<ec>
drop ice, easy, I guess; but still, taken to absurd extremes, the public argument seems pretty silly. "never work with anyone evil! ever!!"
<jfhbrook>
right
<ljharb>
i mean, that doesn't seem silly to me
<ljharb>
if we all did that then evilness wouldn't be lucrative
<ljharb>
and capitalism would quickly fade away
<ec>
I just don't see how it's achievable
<jfhbrook>
oh, but the funny thing about today's discussion was that our idiot staff engineer was trying to make a point about looking at old code and he used nested for loops as an example of a Bad Thing
<ljharb>
(i think they're a bad thing)
<ec>
idk companies but look at me, tryna write software. If you said "check every person downloading your software, and make sure they're not using it to make biological weapons", I'd laugh in your face.
<jfhbrook>
and in my head I'm like, sometimes you just gotta iterate over all the elements in a 2d thing
<ec>
like, how the fuuuuuck am I supposed to pull that off.
<ec>
that would be _an entire job_. my entire life. I'd never write another piece of software.
<ljharb>
ec: not prevention
<ljharb>
ec: but if you *learn* they are, and you have a way to prevent them, then you're ethically bound to do so, i'd say
<ec>
I thiiiiink I agree
<ljharb>
you aren't responsible for unintended uses of your things
<jfhbrook>
I would say that the issue here isn't whether it's "silly" to be salty about gh's ICE contract
<ljharb>
but you *are* responsible for known preventable things
<ljharb>
looking at you, gun manufacturers
<jfhbrook>
it's more having to decide what hills you're willing to die on
<ec>
see above: like, I don't agree that what people are asking is reasonable, re: this GitHub thing; but I _do_ think it's equally dumb to be resisting it???
<ljharb>
right
<ec>
just do the dumb-unhelpful thing, so people shut up.
<ljharb>
ec: i think resisting it is great. i think not using github is dumb
<ec>
how hard is this, jesus.
<jfhbrook>
because again, you have to participate in society, but you can also for example decide that you're not using facebook anymore (which I did, pretty happy about that decision)
* ec
high-fives jfhbrook
<jfhbrook>
so like if someone asked me what I thought of gh I'd say that I don't like their ICE contract, but I'm also not going to use bitbucket because of it
<jfhbrook>
bitbucket is unusable
<ec>
:+1: on Facebook being the goddamn hill to die on
<jfhbrook>
well to be fair I actually quit fb because I realized it was making me sad and angry
<ec>
you want peak evil, it ain't ICE, it's fucking Facebook, for goddamn sure
<jfhbrook>
I had a bad day and showed up on facebook drunk and sad and my feed just, like, I ended up picking fights with family members over alaska politics
<ec>
alaska politics 🤣
<jfhbrook>
and then my brother's in-laws left a bunch of awful comments - don't come back, social justice warrior, etc - and I woke up the next morning and saw all of this and was like, yep I'm done
<ec>
I keep forgetting you're Alaskan wtf
<jfhbrook>
ahaha yeah
<jfhbrook>
yeah well dunleavy was in the middle of ruining everything last february
<ec>
are you friends with pyrrhl and redrummy?
<jfhbrook>
yeah I went to college w/ pyrrh
<jfhbrook>
dunno redrummy but yeah
<ec>
oh we've had this discussion haven't we
* ec
sighs
<ec>
I have no memory, I'm sorry v.v
<jfhbrook>
ahaha yeah :D it's all good though
<jfhbrook>
no it's ok!
<jfhbrook>
I forget things all the time!
<ec>
@redrummy he's An Good and has a sheltiefren, you should follow
<ec>
big biking nerd
<ljharb>
jfhbrook: but also, not using facebook often is "not participating in society" at this point.
<ec>
extremist anti-car hater but w/e lmao
<ec>
ljharb: right, I think that really brings home joshua's point 'bout hill-to-die-on
<ljharb>
jfhbrook: iow you're cutting yourself off from the majority of people
<ljharb>
right
<ec>
leaving Facebook is absolutely as big a decision as not using Amazon, but it's also a waaaaaaaaaaay bigger issue than GitHub or npm
<ljharb>
true
<ec>
and that's back to what I said earlier: I really think some of these really-evil things _are_ hills worth dying o
<ec>
on
<ljharb>
and that's a fine choice to make, as long as you're not pretending the tradeoffs are viable for others
<ec>
I _haven't_ excised Amazon from my life yet, but I've seriously considered it — that seems something worth the pain, prolly. supporting it is ... pretty immoral and hurts and sucks and I'd love to extract myself.
<ec>
idkkkkkkkkkkkkk
<ec>
like I wouldn't chew someone out for it until I'd figured it out myself
<ec>
but I will _absolutely_ destroy friendships over support of the Facebook social-monopoly
<ec>
luckily, nobody's taken me to that cliff yet; most of my friends have also left.
<ec>
a couple years ago I was the only person I knew without one, but that's changed. which is pretty great.
<ec>
if I _was_ able to get out of the Amazon ecosystem, I figure I'd be pretty active in campaigning for those changes in my friend-groups, as well ...
<ljharb>
i mean i'd never be mad at someone for quitting facebook
<ljharb>
but, like, my old aunt is the only person who i'm going to put in double effort for to show pictures of my kids. everyone else sees them on facebook, or misses out
<ljharb>
and if i have a facebook event, very few people will rate getting a direct invitation
<ec>
I'd love to see photos of y'all!
<ljharb>
lol you don't need an fb account to see many of them, at least, because most everything's public
<ljharb>
but you do have to visit facebook dot com
<ec>
I'm not gonna join Facebook for that, lol, but if you want to put the effort in, feel free to text me sometime! (=
<ec>
it sucked at first, but I feel a lot better about myself for not participating in inflicting that horrible feeling on _other_ of my friends
<ec>
omg I love the hair
<ec>
are you shark or unicorn?
<ljharb>
me and my youngest are sharks, my wife and my oldest are mermaids
<ec>
ahhahah I love it
<ljharb>
and my sister is thumper, her husband is flower, and their son is bambi
<ec>
someday I'll participate in Halloween instead of being a grouch. maybe. probably not.
<ljharb>
and their dog (not pictures) was a hunter
<ljharb>
halloween is great :-)
<ljharb>
the halloween human lifecycle is: first you get candy, then you're too cool, then you get drunk and costumes are sexy, then you have cute kids
<ljharb>
perhaps some causation there, perhaps not
<ec>
lmfao
<ec>
wait, that means your kid was left-shark
<ec>
your kid is already cooler than you.
<ec>
:D
<jfhbrook>
ljharb: it's true that I lost out on some things and had to use other systems to bridge some gaps. for a while I was starting email threads with my family and group texts and such, and told my friends doing invites that hey they have to hit me up outside fb
<jfhbrook>
ljharb: and I didn't delete my account or anything, I use it for logins and stuff, and I got back on instagram earlier this year
<ec>
don't mind me, just burying a bunch of not-bitter Yarn rants into the body of the commit-message, that absolutely nobody but me reads
<jfhbrook>
I just can't do the news feed, that's all
<ljharb>
jfhbrook: keeping the account for all the connections and just ignoring the news feed has virtually no tradeoffs
<ljharb>
ec: hahaha yes, true
<ec>
for anyone wondering: you can 1. use npm to get sane version resolution, 2. add those temporary resolutions as yarn 'resolutions', 3. yarn-install to get a lockfile with sane state, and then 4. remove that yarn trash from your package.json and never fucking touch it again in your life
<ec>
that was a nightmare but now it works so ehhhhhhhhhhhh :sparkles: