@isntitvacant@hachyderm.io
@isntitvacant@hachyderm.io avatar

isntitvacant

@isntitvacant@hachyderm.io

current principal eng at dylibso; former Node.js TSC & NPM registry eng / systems eng (❤️ rust, bash, js, tf) / sometimes illustrator / pets cats; pronouns he/him

This profile is from a federated server and may be incomplete. Browse more on the original instance.

sunfish, to random
@sunfish@hachyderm.io avatar

tired: what if we put wasm in the kernel?
wired: what's a kernel?

isntitvacant,
@isntitvacant@hachyderm.io avatar

@sunfish 👀anyone working on a wasi-virtio or wasi-mmu?

b0rk, (edited ) to random
@b0rk@jvns.ca avatar

poll: when you have a merge conflict, how do you prefer to handle it?

isntitvacant,
@isntitvacant@hachyderm.io avatar

@b0rk other: I find most merge tool UIs difficult to comprehend; it ended up being easier in the long run to edit in vim directly (“search for ====, examine context of change, merge”) and — like so many things involving git — it kind of became muscle memory?

isntitvacant, to random
@isntitvacant@hachyderm.io avatar

I may be repeating myself here, but — somewhere along the lines when researching the history of virtualization I came across the etymology of the term (which comes to us from optics)

but the “vir-“ part is shared with “virtue”; it’s the same “vir” as in “triumvirate”— meaning “man”. This comes from the PIE “wi-ro”, which was gave us the elided compliment prefix to “wo” in “woman”: “were”, as in “wereman” (& “werewolf”.)

so yes you are running were-tual machines on your computer

tekknolagi, to random
@tekknolagi@mastodon.social avatar

Check me here... I can't use require() if I'm in a JS module (ReferenceError) but I can't use import if I'm not in a module (SyntaxError)

How am I supposed to reliably load something if this file needs to be used in both contexts??? Losing my marbles

isntitvacant,
@isntitvacant@hachyderm.io avatar

@tekknolagi in vanilla node at least, you should be able to use dynamic import() syntax in a commonjs module IIRC. just not the static “import xyz from ‘foo’” syntax.

b0rk, (edited ) to random
@b0rk@jvns.ca avatar

people have been asking for this one a lot, so: what are your favourite git aliases to set?

isntitvacant,
@isntitvacant@hachyderm.io avatar

@b0rk to my intermittent regret, I aliased “ci” to “commit”, “co” to “checkout”, and “st” to “status” back in 2008 or so — I believe that I was mimicking subversion command shortcuts.

I mostly keep them around because of muscle memory at this point, which means I trip on my shoelaces whenever I try to use git inside a VM.

(It was a useful, formative lesson on the potential long-term downsides of adopting an idiolect, though!)

b0rk, (edited ) to random
@b0rk@jvns.ca avatar

does anyone know where the name HEAD for the current revision came from / what the rationale was? I think that git copied it from Subversion/CVS, but it seems like such a weird name and I imagine at some point in history it must have made sense. Would especially love references if you have them.

(please do not try to explain to me why you think HEAD is a good name today, I'm only interested in learning the history)

(1/?)

isntitvacant,
@isntitvacant@hachyderm.io avatar

@b0rk I am tempted to make the link between HEAD and the functional definition of a linked list (“head | tail…” or “head | rest…”); I’ll look to see if there’s any evidence for this association in git’s git history today.

isntitvacant,
@isntitvacant@hachyderm.io avatar

@b0rk Ah, yeah – I suspect that those were written later, by a different author, so there may be some delta from "what was the intent behind the name when chosen"?

The earliest commits I can find – 853916ff7f, 6ad6d3d36c, 16d4d1ba6c, and 8ba0bbb237 seem to treat "HEAD" as an ALLCAPS-style bash variable.

Looking through the bitkeeper source, which git was written to replace 1, there are at least a few references to "HEAD" around as early as 1999.

isntitvacant, to random
@isntitvacant@hachyderm.io avatar

I’ve started to connect the dots that Smalltalk – and its object-oriented “language virtual machine” paradigm – emerged from the same primordial goop as the UNIX process model at around the same time, to solve the same problems: to create a standardized “extended machine” target for programs.

isntitvacant, to random
@isntitvacant@hachyderm.io avatar

I'm excited to announce that I'll be kicking off this March in BCN with "Understanding Wasm"!

https://2024.wasmio.tech/sessions/understanding-wasm-how-we-got-here/

Very nearly all of Dylibso will be there, so if you've ever thought "I'd love to pick their brain" or "what is this thing" – come say hi!

isntitvacant, to random
@isntitvacant@hachyderm.io avatar

Yesterday, I learned that "pharoah" is an example of metonymy (from Egyptian "pr-'o", "great house".)

isntitvacant,
@isntitvacant@hachyderm.io avatar

@reconbot that's a great question! The book I'm reading ("Empires of the Word" by Nicholas Ostler) seems to leave it open:

"[The] common word for the king of Egypt was established by its use in the Hebrew Bible." (p.124, footnote)

isntitvacant,
@isntitvacant@hachyderm.io avatar

@reconbot that said, in Coptic (which is egyptian's last descendant, IIUC) the name for king is "ⲟⲩⲣⲟ" ("ouro"), derived from "pr-'o" 1, so it's possible the metonymy replaced the original term (or that there was no original term to replace!)

mcc, to random
@mcc@mastodon.social avatar

This seems like one of the better places on the Internet to ask for help with retrocomputing algorithms.

Imagine I have a series of "damage" rectangles representing parts of a screen canvas that need redrawing. I want to take a "union" of these rectangles, such I get a minimal rectangle set where any rectangle "inside" of other rectangles disappear (or even better, so if I clear all rectangles no pixel clears twice).

I am told Bill Atkinson had a really brilliant "region" algorithm… (1/2)

isntitvacant,
@isntitvacant@hachyderm.io avatar

@mcc you might have seen this, but the QuickDraw source is available 1
(though only for noncommercial purposes)

isntitvacant, to random
@isntitvacant@hachyderm.io avatar

I've just used the term "synecdoche" in a semi-public setting, as part of an effort to explain why translating yasujiro ozu's film "sanma no aji", or "the taste of mackerel", to english as "an autumn afternoon" makes sense, actually.

(And, if I'm honest, also in order to get my yearly quota of using the word "synecdoche" early in 2024.)

isntitvacant,
@isntitvacant@hachyderm.io avatar

@indutny I haven't seen it since it came out, so it's been a while – I've been meaning to check it out again!

isntitvacant, to random
@isntitvacant@hachyderm.io avatar

One of my goals in February is to dip my toe into streaming. I'll mostly stream programming and systems design stuff with a focus on Wasm.

If folks have tips on how to get started with streaming (or things they'd like to hear me talk about), lmk!

isntitvacant,
@isntitvacant@hachyderm.io avatar

@jobelenus I'm currently thinking about streaming on YouTube, based on a combination of 1 and an extremely scientific "throwing a dart at a board" process. (I'm open to recommendations, though!)

yosh, to random
@yosh@toot.yosh.is avatar

@Fishrock o/ found another use case where _::Variant enums would come in handy: all uses of patterns and pattern types!

https://github.com/rust-lang/keyword-generics-initiative/blob/backwards-compatible-pattern-types/evaluation/pattern-types.md#resolving-the-backwards-compatibility-issues

I’d love to be able to put your draft RFC up for this at some point. To me it's almost a no-brainer that we should be doing this for enum variants.

isntitvacant,
@isntitvacant@hachyderm.io avatar

@Fishrock @yosh @wffl for unit variants that may collide with binding names:

match foo {
Bar => todo!()
} // is Bar a name or a variant?

isntitvacant,
@isntitvacant@hachyderm.io avatar

@Fishrock @yosh @wffl Ah, yeah, but those typenames are already "known" in scope, yeah?

Using the variant directly would desugar to the compiler automatically adding use VariantName::* above the match – but the compiler might not have enough information about author intent to do that?

isntitvacant,
@isntitvacant@hachyderm.io avatar

@Fishrock (Ah I think that link is broken – it didn't include the code)

isntitvacant,
@isntitvacant@hachyderm.io avatar

@Fishrock @yosh @wffl yeah, I actually whiffed this on a live coding interview semi-recently so it's fresh in mind, haha 😅

but it is a tricky decision for the compiler to make in a non-breaking, backwards-compatible way (assuming that's a goal!)

isntitvacant,
@isntitvacant@hachyderm.io avatar

@Fishrock @yosh @wffl as I understand it, this creates a new variable named Duration that aliases the variable a, then uses the Debug output that the Duration enum implements to print – it's not destructuring Duration, IOW.

isntitvacant, to random
@isntitvacant@hachyderm.io avatar

So wait. Notion doesn't support "Find and Replace"?

katiefenn, to random
@katiefenn@front-end.social avatar

Spent today looking into a bug that caused large files to be served directly from an S3 bucket, and not from a CDN, which turned out to be a straightforward but costly bug.

Was chastised by a principal dev in a public channel that this “design decision” is an “architecture anti-pattern”, and when advised that I maintain the codebase part-time, he responded “well unfortunately that codebase is now owned by your team”.

Sorry I broke your stuff dude, I was thinking about my dying Mum at the time.

isntitvacant,
@isntitvacant@hachyderm.io avatar

@katiefenn Ugh, that's terrible, I'm sorry.

enantiomer, to random
@enantiomer@stoat.zone avatar

our standup meeting has an hour blocked out on my calendar

isntitvacant,
@isntitvacant@hachyderm.io avatar

@enantiomer a less gallows humor / more empathetic response: it sounds like it might be a reaction to necessary communication not happening elsewhere?

  • All
  • Subscribed
  • Moderated
  • Favorites
  • relationshipadvice
  • rosin
  • InstantRegret
  • Youngstown
  • ethstaker
  • tacticalgear
  • slotface
  • khanakhh
  • mdbf
  • kavyap
  • DreamBathrooms
  • cisconetworking
  • rhentai
  • magazineikmin
  • bokunoheroacademia
  • thenastyranch
  • everett
  • cubers
  • tester
  • osvaldo12
  • GTA5RPClips
  • normalnudes
  • modclub
  • Durango
  • HellsKitchen
  • lostlight
  • Leos
  • sketchdaily
  • All magazines