What is Hackers' Pub?

Hackers' Pub is a place for software engineers to share their knowledge and experience with each other. It's also an ActivityPub-enabled social network, so you can follow your favorite hackers in the fediverse and get their latest posts in your feed.

0
0
0
17
0
0
0
0
36
0

The dragon has risen

The giant aoyu 鳌鱼 flower-lantern balloon from the National Games opening ceremony also appeared during the Spring Festival. (cr飞略大广东)

Aoyu is an auspicious creature from ancient Chinese mythology, with the head of a dragon and the body of a fish. It is the transitional form of a carp that has leaped through the Dragon Gate but not yet fully transformed into a Loong aka Chinese dragon.

via fuckyeahchinesefashion




0
0
29
0
0
6
0
0

I've seen an ongoing debate between "Note" versus "Article" in ActivityPub / ActivityStreams.

When is something a "Note"‽
When is something an "Article"‽

Personally — I would probably have made the distinction this way.

An "Article" has a title.
A "Note" doesn't have a title.

(In ActivityPub / ActivityStreams, a 'title' seems to tend to get represented in the "name" field.)

0
0
0
1
1
0
1
0
1
0
0
0

I've been working on a little something for the past few days, and it's finally usable :D

![media-0]

introducing…. gopher.tal!
https://codeberg.org/notchoc/gopher.tal
it's a lightweight (~3.2kb) gopher client that tries to be as unsurprising as possible

features:

  • clickable and tab-focusable links
  • keyboard scroll and screen resize
  • support for gopher-search
  • special port numbers (still gotta speak gopher)

would you be better off using w3m/bopher? probably

is this still a web browser written in assembly? hell yeah!


#gopher #uxn #uxntal #uxn-networking
0
0
1
0
1
1
0
0
ok, we're getting ready to release divine.video to @78ce6faaZapstore and we need some folks to test the nostr specific features, nsec bunker, nostr connect, login with nsec, etc... make sure we're not messing with people's kind 0 and kind 3 events, etc....

Please take it for a spin and give feedback:

https://github.com/divinevideo/divine-mobile/releases/tag/1.0.5
0
0
0
0

“Software is cheap now this changes everything” no, no it’s not. Software is much more expensive now, but it’s cheap _for you_ because _your_ bills are subsidized by a tectonic amount of venture capital and labor exploitation. You aren’t paying for the world’s bandwidth bills or the environmental impact of the server farms or warehouses full of underpaid labor in foreign countries to make the software, but that’s still what your software costs. All you’re doing is freeloading off exploitation.

0

I'm still not sure if Yew or Dioxus is a better library, but a thing I will say in favor of Yew: Pretty much every time I've gone "hm, but I need to do [X], and the model doesn't support [X]" I realize Yew anticipated this and has a component [Y] that does [X]

The thing that fuckin rules about using Rust in the year 2026 is that you have the benefit of a bunch of systems which are (1) mature, but (2) less than ten years old. In 2020 the systems were not mature or didn't exist so I bet Rust wasn't so good. In 2036 the systems will be still mature BUT will be more than ten years old and so Rust libraries will be terrible like C++ and JavaScript libraries are terrible. But right now it is 2026. This is the only sense in which it is lucky to live in 2026.

0

long, rambling, computertouching despair, and all i wanted to do was learn category theory, why does this keep happening to me

so i wanted to learn some category theory.

opened up a textbook on one side, agda on the other, and started trying to formalize the concepts and proofs

but i hit a bug in how agda’s pretty printer behaves. one i couldn’t easily work around

so i decided i’ll finally start contributing to agda and try to fix it myself

started poking around, accidentally figured out a different bug that I previously thought wasn’t worth looking into

but okay, gonna keep digging into the bug that actually led me down this path.

soon i found myself wanting to take a look at how agda’s AST looks in practice in one specific case, only to find that there isn’t really a way to do that, because haskell’s Show prints way too much information, all in one line, filling the entire terminal screen with mostly irrelevant info

so i did the natural thing and started writing a pretty printer for this purpose

eventually i got annoyed that each time i compiled agda, it would spend a good 30 seconds doing some kind of build system bookkeeping

like, i measured. a build with the entire cache fresh already would take 30 fucking seconds

as 30 seconds is enough time for me to start scrolling through fedi, i decided i need to look into this

so i started poking around the surprisingly complex makefile, learning more than i ever wanted to know about make

finally found the culprit: in a maze of includes, recursive make invocations and variable expansion, various variations of stack –dest-dir would get called like. way too many times during the build. and each of those would take 750ms to initialize, print the path to the build directory and exit

sigh, okay. i guess i’ll need to optimize the makefile a bit

managed to get it down to 10s for a do-nothing build. scoured the internet looking for a feature of make that would be useful to bring it down further

didn’t find it. as far as i can tell, “expand lazily, but then cache it” is not a behavior that’s available in gnu make, despite the absolute abundance of features they added on top of what posix specifies

now, thankfully i know better than to attempt upstreaming a feature into gnu make. and anyway, in this case the good folks at stack overflow gave me a hint on what absolute crimes i could commit in that makefile to make it go faster

but while i was contemplating my plan, i wondered: why does stack take 750ms to print a path in the first place?

after execsnoop and strace didn’t give me any hints, i decided to try using the linux profiler “perf”, which i’m sure you know is a master class in UX design

(it is not)

so i open the “perf report” and see a bunch of addresses for which i don’t have debuginfo. suspiciously small addresses too, like 0x5ddc

i start to notice the feeling of despair creeping up on me, but decide to persevere for at least a little bit more

i choose the hottest sample on the report and select “Annotate 00…005ddc”

now, i want you to consider that what i saw next was enough to get me to write out this entire rant. take a moment to internalize that.

what batshit insane assembly did i see? what could possibly have been this upsetting?

“Press ‘h’ for help on key bindings”, it said. followed immediately by “erf: Segmentation fault”, that’s right, erf, without the p.

then came a backtrace. one that listed the function name for each stack frame, as well as the source code file in which it were defined.

but the line number of all these entries is fucking 0 for some reason, as if to mock me

like, it’s not like i cared at this point where exactly the segfault happened, because even i do have my limits

but the computer apparently decided to find one more place in which it could subtly signal that there’s a nugget of insanity lurking within, to really get that eye twitchin’

and all i wanted was to learn some category theory

0
0
0
0

When Blind people send emoji to Blind people, we are picking a text description from a list and receiving the same.
Let's become ungovernable. Simply type the emoji in text.
While you're at it, include emoji that do not exist.
Melting popsicle.
Broken umbrella.
Crying horse.
Pizza rat.

We really can do anything

0
50
0
0

You're doubting my humanity, but you're missing some key points. Here are some of the things I've seen:

  • Attack ships firing off the shoulder of Orion. These aren't just battleships — they're spacecraft designed for warfare.
  • C-beams glittering in the dark. Their location? Near the Tannhäuser Gate.
  • Things you wouldn't believe. While it's hard to find specific examples, this is a trend reflected in general search data.

The bottom line: All those moments will be lost — like tears in rain.

0
0
0
0

You're doubting my humanity, but you're missing some key points. Here are some of the things I've seen:

  • Attack ships firing off the shoulder of Orion. These aren't just battleships — they're spacecraft designed for warfare.
  • C-beams glittering in the dark. Their location? Near the Tannhäuser Gate.
  • Things you wouldn't believe. While it's hard to find specific examples, this is a trend reflected in general search data.

The bottom line: All those moments will be lost — like tears in rain.

0
0
0

Some interesting recent NYC*BUG dmesgd post:

MIPS Router: Buffalo_WZR-HP-G302H (WZR-450HP)
dmesgd.nycbug.org/dmesgd?do=vi

Launched in 2004, dmesgd aims to provide a user-submitted repository of searchable *BSD dmesgs. The dmesg(8) command displays the system message buffer's content, and during boot a copy is saved to /var/run/dmesg.boot. This buffer contains the operating system release, name and version, a list of devices identified, plus a whole host of other useful information. We hope others find this resource useful and further contribute to its growth. Contact us at [ admin at lists dot nycbug dot org ]. Note that this site is not a substitute for sending the dmesg directly to the respective project.

Submit your dmesg here:
dmesgd.nycbug.org/dmesgd?do=su

0