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.

I missed this but it's brilliant :

« We Need To Rewild The Internet - The internet has become an extractive and fragile monoculture. But we can revitalize it using lessons learned by ecologists. » by @mariafarrell & @robinRobin Berjon Berjon

« Our online spaces are not ecosystems, though tech firms love that word. They’re plantations; highly concentrated and controlled environments … that madden the creatures trapped within. »

noemamag.com/we-need-to-rewild

0
2
0
0

So i wrote a Yew component. It's supposed to be like, a chat room. Currently, when you type something and say "post", it replaces the bolded text above the text entry field.

I… sort of hate how I did this. With the input content being shadowed in state. I think this means every input change is accompanied by an unnecessary copy, and I *think* an unnecessary remount.

The Yew discord assures me this is the idiomatic way to do it. But they also think it's probably doing the superfluous remount.

let input = use_state_eq(|| "".to_string());
let display = use_state(|| "".to_string());
let placeholder = use_state(|| "Type here".to_string());
let on_input = {
    let input = input.clone();
    Callback::from(move |e:InputEvent| {
        let value = e.target_unchecked_into::<HtmlInputElement>().value();
        input.set(value);
    })
};
let on_submit = {
    let input = input.clone();
    let display = display.clone();
    let placeholder = placeholder.clone();
    Callback::from(move |e:SubmitEvent| {
        let result = input.to_string();
        e.prevent_default();
        display.set(result);
        if placeholder.len() > 0 {
            placeholder.set("".to_string());
        }
        input.set("".to_string());
    })
};

html! {
    <div>
        <h4>{ display.to_string() }</h4>
        <div className="Controls">
            <form className="PostBox"
              onsubmit={on_submit}
            >
              <div>
                <input placeholder={placeholder.to_string()} value={input.to_string()} oninput={on_input} maxlength={MAX_CHAT.to_string()} />
              </div>
              <input className="PostButton" type="submit" value="Post" />
            </form>
        </div>
    </div>
}Screenshot of the HTML element from the code
0
0

국민과 시민 그리고 모든 인민들과 자연인의 생명을 위협한 악의 총체를 첫타에 흙으로 돌려보내는데는 실패했지만, 우리는 그자가 유죄임에 부정의 여지가 없음을 증명해냈고, 우리에게는 아직 2심이 남아있다. 그리고 그 두번째 재판정은 그놈들을 위해 법까지 고쳐가며 준비한 아주 정성스럽고 특별한 재판정이다. 행복하냐고? 솔직히 ㅈ같다. 그러나 그런 것에 무너지면 민주주의는 몰락한다. 우리는 민주주의를 지킬거다. 그리고 그 과정은 아주 개쩔게 짜릿할거다. 그맛을 알지 못하는 당신이 불쌍하다. 🙂

0
0
1
0
0

i now have a working prototype of IRCv3 integration in our internal web based notes system with chat/comment history... thanks to the Ergo IRC server's builtin websocket support + message persistence this was incredibly comfortable to implement. every doc becomes a channel :D

0
0
0

Kentucky, for goodness' sake.

LOUISVILLE, Ky. (AP) — The Kentucky Supreme Court ruled Thursday that a measure establishing public funding for charter schools is unconstitutional, affirming that state funds “are for common schools and for nothing else.”

The state’s high court ruled the “Constitution as it stands is clear that it does not permit funneling public education funds outside the common public school system,” Justice Michelle M. Keller wrote in a unanimous opinion.
apnews.com/article/charter-sch

0
4
0
0
0
1
1
0
0
1
1

🎮 Bevy Enhanced Input 0.24.0 is out!

An input manager for Bevy, inspired by Unreal Engine's Enhanced Input.

Highlights:

- Toggle input condition.
- Reflection is now feature-gated.
- Generic types are now automatically registered by the crate for use in the inspector/editor.

The crate is planned for upstreaming, so please try it out and share your feedback!

📜 github.com/projectharmonia/bev
📦 crates.io/crates/bevy_enhanced

0
0
0
0

@evanEvan Prodromou @julian

builds on top of in the sense that it adopted a number of its 'social primitives' defined in its vocabulary, and Collection being among those. These particular uses become 'protocol space', but other than that AS from the perspective of AP solution development is purely a set of social primitives, granular building blocks that one *may* use in a solution. AS is a utility library of sorts then. Or is that a wrong perception?

A 'feed' is something that lives in solution space, and I would only choose Collection to model it, if it offers a perfect fit in functionality. And aboveall.. does not assign some new app-specific use along the way.

I tooted today that I feel the biggest folly of the fedi is that everyone tries to cram their domain into the AS namespace. The AS primitives should not be Swiss army knives and have only singular well-defined meaning and purpose, yet they have become that along the way.

social.coop/@smallcircles/1160

@smallcircles🫧 socialcoding.. @evanEvan Prodromou @julian if only the application domain of activitystreams was activities and streams... ;)

i do think it causes a lot of confusion to stray away from activities as content, instead using them as vehicles for state changes (which will never be consistent, not even eventually consistent).

back when atompub and atom+as1 were a thing, the "feed entry" was atom semantics and the "activity stream" was as1 semantics. they coexisted in the same xml file. it worked well enough.

0
0

just added @standard.site@bsky.brid.gy support to my blog when I deploy a new version of my site, blog articles are automatically synced to my pds (npmx.social) ... and therefore immediately discoverable on any standard.site reader, e.g. @greengale.app@bsky.brid.gy ...

0
0
0
0
0
0
13
0
1
0
1
0
13
0
0
1

"Content about Gaza is also being restricted by age verification. Reddit users in the UK have to verify their age, using... Persona, in order to access... r/israelexposed ... Posts about Palestine on X have also been age gated"

openrightsgroup.org/campaign/s

So to view content about Palestine, you first need to hand your biometric data to who supplies the Israeli military with data and A.I. tools thru

IS

0
0
0
0
1
1
0
1
0
0

世にあれば 今年の春の 花も見つ 嬉しきものは 命なりけり

[Yo ni areba kotoshi no haru no hana mo mitsu ureshiki mono wa inochi nari keri]

Because I am in this world, I was able to see the flowers of this year's spring. Above all, it is life that is grateful.

By 本居 宣長 [Motoori Norinaga] (Scholar of Kokugaku, 1730-1801)

via konjaku


0
0
0