Avatar
Julia Evans
26cad6f140bf86de9c26b7c15419cab1aebdd7086358d26aa2d750e21cf3bf2e
programming and exclamation marks I have DMs muted from people I don’t follow.

just noticed that almost 11,000 people are subscribed to get comics from me every saturday! who wants to help us get over 11,000?

you can sign up here: https://wizardzines.com/saturday-comics

Replying to Avatar llewelly

nostr:npub1upkp7fd7rc3lrjg23r8gy0wc723vze7mxlx5984ut6zurjzpf5xss4tcwy

I can think of many examples of #3, but none of them combine that with both #1 and #2, so I'm wondering how similar do you want examples to be?

nostr:npub1jxc4qpzg7mtwmlclxuhlwn8mq2a5knaulexfl68lxq2taftze9tq94qug0 mostly interested in the shell script thing right now

Replying to 9684128f...

nostr:npub1upkp7fd7rc3lrjg23r8gy0wc723vze7mxlx5984ut6zurjzpf5xss4tcwy would it make sense to hire a plasterer or three and reskim Git? keep the same functionality, but with a new, consistent, not at all backwards-compatible console UI? or is the juice not worth the squeeze

nostr:npub132lhw8yg9p3lg8zh8f3wk7zh56x3wv3el5n6x4qzjnarl54jsscqszrnmv the closest project I know to that is jj, still seems early but they're doing interesting work https://github.com/martinvonz/jj

Replying to Avatar Chris Hessert

nostr:npub1upkp7fd7rc3lrjg23r8gy0wc723vze7mxlx5984ut6zurjzpf5xss4tcwy

You should interview Linus Torvalds about this. I’m certain he knows a thing or two about the origins of Git. 😉

nostr:npub1wq6kzst3l7j67fyfk7j2jl6nyzgyg7qdffcgsll43euwccdw79es88ju6u nothing I have read by him has made me think he would be an enjoyable person to talk to tbh

i uh spend a lot of time thinking about whether various surprising software design choices are

a) intrinsic to the problem domain ("it turns out it DOES make sense!”)

b) made sense historically ("this made sense in 1992, but it didn't age well”)

c) just a typo/mistake (the "Referer" header)

d) related to budget/time constraints (“well, prototyping with shell scripts is fast!”)

e) cultural/organizational (“well, Google is the main funder for this project, and…”)

f) something else

Replying to Avatar joachim

nostr:npub1upkp7fd7rc3lrjg23r8gy0wc723vze7mxlx5984ut6zurjzpf5xss4tcwy There's a lot of inconsistency. E.g. a lot of commands are 'git COMMAND VERB SUBJECT', like 'git remote add'. But git tag mysteriously uses flags for its verbs.

nostr:npub1jdmpcwfd2pf4akk4wrudv48fnfuw5tc3dslsnvxhygd4q85mgcpq4xjwnq that's definitely true, how do you think it's related to those things being shell scripts originally? feels like you could have shell scripts with consistent flags

Replying to a5d46e23...

nostr:npub1upkp7fd7rc3lrjg23r8gy0wc723vze7mxlx5984ut6zurjzpf5xss4tcwy part of it can be traced back to the time when collaboration was sending patches via email

nostr:npub1erpua23c63um0lg2vt9j2kr0r9y02fz4j7nm3rylj70qhk83fqzsr46rah how do you think that affects git's user experience? i hear this a lot but it's hard for me to see how it affects the user experience today

this morning I'm thinking about how git's history of being built as a series of shell scripts has affected its user experience

my sense is

1) a lot of git was originally built as shell scripts

2) the user experience you can provide in a shell script is extremely limited

3) a lot of that now can't change for backwards compatibility reasons

does anyone have examples of this? will talk about how I think this affects merge conflicts in the next post

(1/?)

i just understood today that the reason I feel stressed out about merge commits is that you can't figure out the contents of a merge commit by looking at it with `git show`

for example in this screenshot I have two merge commits (`merge1` and `merge2`). They both have the same parents. They display the exact same way with `git show`. But they have different contents.

Replying to ad159d25...

nostr:npub1upkp7fd7rc3lrjg23r8gy0wc723vze7mxlx5984ut6zurjzpf5xss4tcwy i made dura to deal with corner cases with trying to undo work in git. like, if you forget to commit/stash in a long time, or never add a file and then delete it. it has a background process that commits whenever files change https://github.com/tkellogg/dura

has anyone tried using the 'git undo' from the git-branchless project? https://github.com/arxanas/git-branchless

a general "undo" feature for git seems like such a cool idea and I'm curious about whether it works well in practice

Replying to 4faae20c...

nostr:npub1upkp7fd7rc3lrjg23r8gy0wc723vze7mxlx5984ut6zurjzpf5xss4tcwy great post! And it answered a couple of open questions I had since I joined Mastodon, so thanks for writing it!

> I started out on mastodon.social, but some servers choose to block or limit mastodon.social for various reasons.

Out of curiosity, do you know what some of those reasons are?

nostr:npub1768m8vs5p7mctweq34t49sfyvxcaht5qfv9d8367rzz4q70h49uqlj48zp i think spam and disagreement with moderation choices, haven’t kept up

nostr:npub1qnwatsqn6dmynulnw7jfy7znfy07yl3vtm2hk30299h3kz53gnlszm96t2 interesting thanks! do you have any idea what makes vim hard to get into? (ok if not)

nostr:npub18zgs65acfwj5e8ave8m70n0jxamctlw6wa0cx27yr54r9lu60eqqrspu6e nostr:npub15ye4pfl69rqspv7j7qcpt5pd3frldlktp8p7r49j3lcynzkefcksaug69l nostr:npub1pfe56vzppw077dd04ycr8mx72dqdk0m95ccdfu2j9ak3n7m89nrsf9e2dm hmm -- I wrote a couple of pages about kubernetes a few years back https://wizardzines.com/comics/scenes-from-kubernetes/ https://wizardzines.com/comics/kubernetes-components/ but got pretty frustrated with all the kubernetes hype (and had a bad experience using it tbh) and didn't feel like writing more about it. Who knows though, maybe I'm over it by now

nostr:npub17pwgpqkn63hneqs8q7dc9tv6v6ylj6yuq7py7m3kza69s5qpcydqpuvyuh thanks for the question, got a bunch of interesting replies at https://social.jvns.ca/@b0rk/110860338830620671#. (and tried to put together a list)

Replying to cf80dd4f...

nostr:npub1upkp7fd7rc3lrjg23r8gy0wc723vze7mxlx5984ut6zurjzpf5xss4tcwy nostr:npub1nlc3muuyxmn52nrsqe9rqlna8ep3te6a4jkngw427mezj7m33juqgsrv60 Someone else can die on that hill. “All the other solutions sucked but mine won’t, plus I’ll be able to convince people to use it,” is a job for the truly driven and/or insane.

nostr:npub1dekzkrhyqgxm7zc5cx3fgwf5c94nhsd9ftv48r60ktvgqt97ls3qk8xrqc nostr:npub1nlc3muuyxmn52nrsqe9rqlna8ep3te6a4jkngw427mezj7m33juqgsrv60 haha yeah I'm not gonna fix git either! But if someone is interested in talking about how we need to make git better I'm not gonna tell them they're wrong and that git is fine :)

Replying to 678c160e...

nostr:npub1upkp7fd7rc3lrjg23r8gy0wc723vze7mxlx5984ut6zurjzpf5xss4tcwy Setting the bash history to unlimited and aliasing a shortcut for "history | grep" were fantastic for me

nostr:npub1jjxpks56t0d3vvlhvja3f7yr4a8uw657wgqhajt833ggw9al99ys7s8f7k setting bash history to unlimited is such a great tip, thank you!