Conversation

i'm thinking about potential zine topics right now so here's a weird poll: which do you feel more confident with, computer networking or the command line?

(I know those are both broad topics, this is a very vibes post)

13% networking
56% the unix command line
24% i feel good about both
5% i feel bad about both
0
0
0

@b0rk write a zine about nothing - would probably be the most popular

1
0
0

as a follow up: which part of networking do you feel the most confident about?

47% HTTP
13% DNS / domain names
34% the part with IP addresses & ports
4% other
0
0
0

@b0rk

I feel that the Unix/Linux shell command line is the most useful thing that the most people would gain from learning more about.

1
0
0

@JeffGrigg what would you like to learn about it?

in general I’m not interested in suggestions of things you think "other people" should know, only things that you personally want to learn

0
0
0

@b0rk "all of the above" feels fitting if unhelpful. That said, I think there's a lot to be learned in the seams between these choices, something along the lines of "seeing the network from the command line" that could be really great.

1
0
0

@mhoye yeah totally! i have this zine about command line networking tools https://wizardzines.com/zines/bite-size-networking/ but I think there's probably more to say on that topic

0
0
0

@b0rk I get scared when the packet hands over to layer 5...

1
0
0

@quixoticgeek what does 'layer 5' mean do you? like the when the application gets it?

0
0
0

@b0rk With `jq` getting bundled into the macOS base, now's as good a time as any for a primer zine on that arcane syntax.

I know I have to re-learn it every time, and end up reverting to PHP to parse things out most of the time instead.

1
0
0

@Two9A sadly even though it seems cool I have never understood how to use jq beyond `jq ‘.’`

1
0
0

@b0rk 'other' because if SSH wasn't at the top of my 'things I feel confident about' list then probably a number of people would wonder why not :-)

1
0
0

@simontatham oh man i just clicked on your website and learned that you wrote PuTTY!!

1
0
0

@b0rk While I feel confident about the "basics" for all 3, I'm not sure how useful it would be in practice to know more.

Anything can get very complex under the hood, maybe the best is to find and reach a level of understanding that gets things done and avoid pitfalls.

Like, learning git is very gradual, and there's always more to know, but I stopped learning when I became able to use it without problems.

Is there a "best compromise" level of understanding for those 3? How deep is it?

1
0
0

@b0rk I guess what I mean is...
Virtually every dev needs to know about git.
But comparing to DNS... If I'm never gonna need to actually configure a DNS server myself, do I even need to know anything about it, besides that it maps names to IPs and it can have weird caching problems?

1
0
0

@phairupegiont I guess it depends on your relationship to DNS! Personally I've been responsible to updating DNS records for my company's website (and my personal websites before) so I wanted to understand exactly how caching worked and not just "it's weird”

(that's why I wrote https://wizardzines.com/zines/dns/)

0
0
0
I see networking as mystic stuff going through magic pipes. I am amazed that it even works.

Given the choice, I would read the Necronomicon rather than trying to setup a bridge on my network.
1
0
0
(I could not find a copy of the Necronomicon, so I ended up with a fully working network bridge instead. Don’t ask me how it works, I could not tell despite being the one behind its setup.)

CC: @b0rk@jvns.ca
1
0
0

@vv221 yeah I feel pretty good about networking in general but bridges are still a mystery to me

0
0
0

(also a couple of people have said "wow if you wrote a zine about DNS that would be so great”, so for those people -- I published a zine about DNS a couple of years ago! It explains what exactly is going on with DNS caching. https://wizardzines.com/zines/dns/)

0
0
0

@b0rk reminds me that I ought to have got round to mentioning that in my Mastodon bio by now – sorry you had to go as far as my website! Now fixed. I had written a one-line "I'll fix it later" placeholder when I joined, and then, err, completely forgot.

1
0
0

@simontatham it's honestly a delight to learn that an interesting person I talk to on Mastodon is responsible for such a great project (previously i only knew about the puzzles)

0
0
0

ok here's a different networking question: which of these causes the most problems for you? (would love replies with more details!)

13% HTTP
52% DNS / domain names
17% IP addresses and ports
16% other
1
0
0
@b0rk i felt like stupidly confident about networking until i bought a managed switch and then real about ten separate “vlan and trunks eli5” reddit posts because i guess i just never dealt with layer 2 at all
0
0
1

cremevax 👩🏻‍💻🏳️‍🌈​🥥🌴

@b0rk I feel pretty confident with ipv4 networking. But my strategy of just ignoring ipv6 networking until it goes away seems to be failing :) and I would love to read a detailed explainer.

1
0
0

@cremevax ooh can you say more about how your strategy of ignoring ipv6 until it goes away is failing? I have not yet experienced any consequences of ignoring ipv6 though I know it will come for me one day!

1
0
0

@b0rk users not understanding how wifi works. especially linux users, where they dual boot and the windows boot works fine. it's all about the client, and it's willingness to play nice on enterprise wireless systems. But to them, it's the network being broken.

1
0
0

@run_atalanta wait do you understand how wifi works??? wifi is genuinely such a black box to me

like recently my friend couldn't get her (brand new Pixel 7!!) Android phone to connect to her home wifi (even though she could connect to other networks!) and I was really struggling to diagnose the problem (among all of our friends only idea was “uh maybe try to borrow a different router from a friend and see if that helps???”)

0
0
0

cremevax 👩🏻‍💻🏳️‍🌈​🥥🌴

@b0rk Sure, my last motivating incident was when AWS started charging for ipv4 addresses for EC2 instances. I run a Wireguard VPN server on EC2, so I was all, hmm, maybe there's a way to tunnel ipv4 traffic inside ipv6 and drop the ipv4 interface and have some fun learning about ipv6 at the same time?

This led me down a soul-crushing rabbit hole: how does ipv6 get provisioned? Maybe I need a different modem from my broadband provider? Does my Wireguard server support this use case? How can i monitor ipv6 traffic from my router? NAT goes away, W. T. F.??????

I resolved to look into this again when the rainy season comes back, hoping that in the meantime someone has written an excellent human-curated book/zine/series of blogposts that goes through all this. My guess is that orgs that run big fleets of AWS instances are throwing a ton of resources at these sorts of ipv6 questions right now.

1
0
0

@b0rk @Two9A happy to help out if you look into doing something related to jq!

1
0
0

@wader thanks so much! I'm not sure what kind of help I might need though -- I love the idea of jq so much (and I use it for formatting json all the time!) but I find the language hard to learn for some reason. not sure why.

1
0
0

@b0rk ah sorry with help i meant if you ever think about doing something zine like that includes jq and want ideas i might have some. i'm guessing what makes it hard and confusing for most ppl is its use of generators and backtracking plus a bit unusual syntax

1
0
0

@wader thanks, that comment about generators and backtracking is actually really helpful. I'd never heard of those in the context of jq.

1
0
0

@b0rk 👍 yeap more or less everything in jq is a generator that outputs zero (backtrack), one or more values, and you can use [<some generator>] to collect to a array

1
0
0

@wader i guess the idea is that you never really want to print out the output of a generator, you always want to surround it with `[ ] ` if you're debugging? was looking at the output of the left screenshot (the `42, "hello", true | type == ("number", "string") ` one) and i was really puzzled until I added the [ ]

0
0
0