Email or username:

Password:

Forgot your password?
42 posts total
Julia Evans

it's happening!!!

from now until the end of the day on Friday, all my PDF zines are 50% off with the discount code WIZARDPDF

print zines are 30% off with the discount code WIZARDPRINT

wizardzines.com/

Show previous comments
KF7CCC

@b0rk I noticed the print discount didn't work on Linux Toolbox. Is that an oversight or am I kvetching?

քʏʀǟȶɛɮɛǟʀɖ

@b0rk these are excellent, i had to get them all! :flan_dalf:

Show previous comments
slackline

@b0rk Another great article, thanks for writing and sharing.

With checkout the '--' can be used between a branch and a file on that branch and it will copy that file from that branch to the current one. Kind of like cherry-picking files rather than whole commits.

git checkout -b new_feature # Create and checkout a new branch
git checkout old_feature_branch -- path/to/file/in/old_feature_branch

#git

Larry O'Brien

@b0rk This is very helpful for git newcomers. The one that always terrifies me is getting "yours/theirs" wrong.

Julia Evans

working on sketching a few different git workflows I've seen people use. what am I missing?

(I'm less interested in minor variations on these like how you manage tags or the exact details of how the feature branches work and more interested in completely different workflows)

Miru
@b0rk Maybe add a ... in the middle of the big team, to show it can have more people than just 4?
Sia Karamalegos

@b0rk I'd only say that for me, I only push to main for something like my personal site and minor changes. Otherwise I use branches even on tiny teams or if working on a feature that is more than a minor change.

Greg Swift

@b0rk slight variation on your big team... which would be similar to most open source on gitlab\hub = fork with feature branch

Show previous comments
John de Largentaye

For a different angle, the Git Book also talks about some of these internals in its chapter on Git Objects.

I recently leveraged that to manually update permissions in a Gerrit setup, which stores its user database in a unusual Git repository.

git-scm.com/book/en/v2/Git-Int

Clayton Errington 🖥️

@b0rk This is a thorough explanation of how git works! It's nice to learn a few things too.

Julia Evans

some people who make programming easier

(who am I missing?)

a comic by Julia Evans (@b0rk) titled "some people who make programming easier"

it's a 3x3 grid with a tiny example under each header

the loud newbie
- asks "wait how does X work??"
- someone thinks "I'm so glad they asked, I was wondering that too..."

the grumpy old timer
- someone says "X is so cool!"
- g.o.t. says "it is! let me tell you about some ways it can break though..."

the bug chronicler
- thinks "that bug was so gnarly, I'm going to write an extremely clear description of what happened so we can all learn from it"

the documentarian
- someone says "here's how you do x"
- doc thinks "I'll put those instructions in our wiki!"

the "today I learned"
- says "I just learned this cool new tool
-says "check out this weird bug!"

the "I've read the entire Internet"
- someone says "how does X work?"
- "I've read" says "ah, I read about that recently... here's a link from my 200 browser tabs"

the tool builder
- says "everyone keeps getting confused by x! I'm going to fix it with code!"

the question answerer
- someone says "hey can you explain how x works?"
- q.a. says "I would love to"

the final panel just says “?”

(description by @inherentlee@strangeobject.space)
Show previous comments
shine

@b0rk Janitor. I always enjoyed having someone who likes to do boring repository / code maintenance to relax. Makes everything neater, and makes it easier for us ADHD devs who would burn out on it.

Brett Edmond Carlock

@b0rk I'm a blend of Loud Noob, Documentarian, and Read The Entire Internet.

Don't let me near code, tho 🤣

DeManiak 🇿🇦 🐧

@b0rk how about the Test Writer?

The one that writer clear tests that illustrate how things are supposed to work (as opposed to how they are working)

Julia Evans

has anyone seen a really good analysis of the problems with git's command line UI? Would love to read it. for example:

* `git checkout` is dangerous and has too many different jobs
* for a tool that's supposed to make changes easy to undo, you actually need to learn a LOT of different ways go back to the previous state

(not looking for git tutorials, explanations of git’s underlying model, or explanations of why you think git's UI is actually good, just an analysis of the problems)

has anyone seen a really good analysis of the problems with git's command line UI? Would love to read it. for example:

* `git checkout` is dangerous and has too many different jobs
* for a tool that's supposed to make changes easy to undo, you actually need to learn a LOT of different ways go back to the previous state

Show previous comments
groxx

@b0rk tbh I think a significant amount of it is their incredibly unique-term-infested manpages. Learning git via normal means is a ridiculously large investment before you get any benefit.

git-man-page-generator.lokalto

penguin42

@b0rk I dont find it too bad, but I do find it inconsistent; e.g. git tag and git branch both have -d for delete, but for git remote you have to do 'git remote remove' Similarly git branch -m to rename vs git remote rename. git push onto non-default branches also confuses the hell out of me.

Julia Evans

what helps people get comfortable on the command line? jvns.ca/blog/2023/08/08/what-h

Would love more stories of things that helped you in the last ~5 years!

(as usual, no need to reply if you don’t remember, or if you’ve been using the command line comfortably for 15 years — this question isn’t for you :) )

Show previous comments
Philipp Bayer

@b0rk i had a unit on unix system administration where each week we got a slightly broken VM, one per student, we had to fix. every week was slightly harder culminating with a totally broken PAM so you couldn't easily log in

we couldn't break anything, it was already broken! and if we broke it too much prof would just re-image the VM. so no fear!

CCC Freiburg

@b0rk most starters like things like #tmux - #bash-insulter (its fun) and #cmatrix and the obvious
telnet towel.blinkenlights.nl
and for people which go the extra mile, either #adb with #scrcpy for android fun or the limitless options of #yt-dlp
(spice up your music collection with some yt-dlp -x <LINK>
or choose smaller / bigger quality with yt-dlp -F <LINK> ... so much more fun tha any limited and fastly outdatet gui/addon)

Julia Evans

finally got around to putting my twitter archive on the internet at tweets.jvns.ca/

only has tweets up to october 2022 because that's when I exported an archive

here's the source: github.com/jvns/tweets-archive.

it’s a mash up of @darius's tinysubversions.com/twitter-ar tool to get the data and nitter.net for the CSS

Darius Kazemi

@b0rk is there a way to permalink an archived tweet?

Julia Evans

also, if you *used* to use Linux on your personal computer but don't anymore, what made you switch away from it?

for me: I'm on a break from Linux right now because I was having some extremely annoying power management issues I couldn't figure out (it kept running out of battery while asleep), and there was some Mac/Windows-only software I wanted to use

Julia Evans

I cannot be the only person who finds linux on the desktop annoying and hard to use sometimes, I love linux but it can really be the worst

Julia Evans

i'm working on open sourcing a small project I wrote a couple of years ago and the README is mostly just an extended apology for the development experience

Julia Evans

playing with some merch ideas and had an idea for a "linux witch" tote bag

stick figure witch with a bunch of tools around her (/proc, bash, tcpdump, strace, grep, perf, xargs)
Julia Evans

used magic wormhole for the first time to transfer files between 2 computers in my house and it's great

computer 1:
$ wormhole send myfile.pdf
Wormhole code is: 7-crossover-clockwork

computer 2:

$ wormhole receive 7-crossover-clockwork
Receiving file (7924 bytes) into: myfile.pdf

github.com/magic-wormhole/magi

Show previous comments
grin

@b0rk (mailbox server is a single point of failure; unfortunately all of the similar systems have this problem; you basically use an external server as a meeting point)

Christoph Petrausch

@b0rk yeah very handy tool. We enroll it to everyone during our onboarding in our company.

Julia Evans

"How Integers and Floats Work" is coming out later this week! Here's the about page:

title: computers do math weird

Weird things happen when your computer does math.

computer (thinking): 0.1 + 0.2 = 0.30000000000000004
computer (thinking): 4294967295 + 1 = 0
person (unhappy): uh, that&#39;s not what they taught me in math class...

The reason it gets so weird is that your computer has to cram each number into a limited number of bits (8, 16, 32, or 64 bits).

When your computer does math, it&#39;s running CPU instructions. And there are only 2 kinds of CPU math instructions: those that work on integers, and those that work on floating point numbers.

person (talking): let&#39;s go learn how your computer handles integers and floating point numbers!
Julia Evans

at the cafe doing some zine editing

(not the final cover obviously :))

a zine on a table with the title page “how integers and floats work: the weird truth about how your computer does math”
Joe Uchill

@b0rk It doesn't have to not be the cover.

Julia Evans

We built a new playground called Memory Spy where you can spy on a program's memory! It's at memory-spy.wizardzines.com.

I made this with @omarieclaire, and there's a blog post about how and why we built it here jvns.ca/blog/2023/05/25/new-pl. Here's a gif:

Julia Evans

as usual let me know if you run into any bugs!

Julia Evans

this whole website is an extremely thin wrapper around lldb, you can think of it as an advertisement for how cool gdb/lldb are :)

Julia Evans

getting closer to finalizing the table of contents for this zine on how integers and floating point numbers work

a table of contents with 2 columns, 1 for integers, 1 for floats
Julia Evans

this is awesome: See this page fetch itself, byte by byte, over TLS subtls.pages.dev/

Julia Evans

I've been (very very slowly) working on a guide to writing your own TLS implementation from scratch and this is motivating me to make some progress on it

Julia Evans

float.exposed/ is really indispensable for explaining floating point -- it's SO fun to open it up and change the bits to show people how floating point works

Show previous comments
simonf

@b0rk Nice.
There is also this h-schmidt.net/FloatConverter/I but it’s not got so many 🛎️ 🔔 and whistles

erin 。:゚૮ ˶ˆ ﻌ ˆ˶ ა ゚:。

@b0rk bartoz ciechanowski has such a talent for building extremely useful little interactive pedagogical things like this . its AWESOME

Julia Evans

the print version of "The Pocket Guide to Debugging" has arrived!!

1500 copies arrived at the warehouse yesterday and are ready to ship 🚢

get yours today! wizardzines.com/zines/debuggin

(preorders have already started shipping! :))

a photo of a small book.

description of the book&#39;s cover: a very cool person wearing bug jewellery and a backpack is inspecting a bug with their magnifying glass. They have curly brown hair and light brown skin.

their laptop (with bug stickers) and a bug catching net are nearby
Julia Evans

here's the table of contents for "The Pocket Guide to Debugging" again, since a few people have asked what it's about.

it's a list of dozens of specific debugging strategies that you can use in any programming language to investigate your hardest bugs :)

the table of contents for a zine, with 8 sections:

- first steps
- get organized
- investigate
- research
- simplify
- get unstuck
- improve your toolkit
- after it&#39;s fixed
Go Up