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
0
1

2026년도 어느새 두 달이 지나갑니다. 벌써 수은주는 봄이 되어가는 것 같네요. 다만 너무 급격하게 변하는 기온을 보고 있으니 한편으로는 올 여름 있을 엘 니뇨가 어떻게 변할지 몰라 걱정이 되기도 합니다. 항상 지켜보고, 소식이 있으면 가족 여러분과 나눌 수 있도록 하겠습니다. 연휴가 끝난지 이틀만에 맞이하는 주말의 입구입니다. 부디 무탈한 금요일 보내시고, 주말 동안 행복한 일 가득하시길 기도하겠습니다. 좋은 하루, 좋은 주말 되세요.

0

일교차가 심한 오늘, 아침 기온은 전국 대부분 지역에서 0℃ 이하를 기록하지만 낮 최고 기온은 10℃ 이상으로 오릅니다. 다만 바람이 많이 불어 체감온도는 더욱 낮으니 주의 당부드립니다. 주요 도시별 아침 최저기온은 서울 0~13℃, 대전 -2~15℃, 대구 -2~16℃, 광주 -1~15℃, 부산 4~15℃, 제주 6~16℃입니다. 주말인 토요일에는 기온이 더욱 크게 올라 남부지방은 낮 최고기온 19~20℃를 기록하기도 하겠습니다. 일요일부터는 기온이 급락, 월요일인 23일부터 24일까지는 확 추워질 수 있으니 주의 당부드립니다.

0

하지만 그 전의 상황이 더 중요한데요. 오늘 내일 양일간 데워진 대기 때문에 일요일엔 눈 대신 비가, 그것도 소량만 내릴 가능성이 큽니다. 하지만 22일 지나간 한랭핵의 여파로 대기가 매우 차가워져 있을거라, 24일에는 전국적으로 눈, 혹은 어는 비가 내릴 가능성이 큽니다. 25일부터는 다시 기온이 풀리겠는데요. 최고기온이 17℃까지 올라갔다가 3~4℃까지 떨어지다 다시 10℃ 이상 오르는 등 크게 변하고 이동성 고기압이 계속 영향을 주며 일교차 역시 큰 변동폭을 보일 것으로 예상되기 때문에 건강관에 큰 주의를 당부드립니다.

0

그리고 강한 남풍이 분다는 말은 기온이 널뛴다는 말과 같습니다. 주간 기온 예상도를 보면 거의 롤러코스터나 다름없는데요. 남풍이 가장 세력을 강하게 투사하는 21일에는 수도권 기준 낮 기온이 거의 17℃까지 올라가다가 큰 저기압의 꼬리가 한반도를 휩쓸고 지나갈 22~23일에는 기온이 뚝 떨어집니다. 다음주는 22일에 한 차례, 그리고 24일에 한 차례 비가 예상되는데요. 22일에 내릴 비는 한랭핵이 지나가며 내리는 비라 매우 추워지지만, 24일 내릴 비는 남쪽에서 올라오는 온난 저기압의 영향을 받기 때문에 날씨가 풀립니다.

0

그나마 다행스러운건 고비사막이 해빙되며 발생한 황사 한 바가지가 상해에서 불어오는 남풍에 밀려나서 한반도 남부, 대한민국을 직격하는 사태는 피할 가능성이 열려있는 것으로 보인다는 것입니다. GFS와 일본기상청(JMA) 예측 결과는 조금 상이한데요. 희망적인게 GFS입니다. JMA는 21-22일 사이에 거대한 황사띠가 점차 남하하며 한반도를 쓸고 갈 것으로, GFS는 황사가 강한 남풍에 틀어막혀 서해에서 멈출 것으로 예상하고 있습니다. 더 심한 황사냐, 좀 덜한 미세먼지냐. 정말 선택하기 싫은 이지선다지만 덜 아픈게 낫겠죠.

0

오늘 한반도는 남해상에 위치한 고기압의 영향을 받고 있습니다. 하지만 고기압의 중심부에 위치하면서 활발한 복사냉각이 발생해 아침 기온은 어제보다는 높지만 그래도 영하권을 기록한 곳이 많습니다. 낮이 되며 기온은 급변합니다. 한반도를 덮고 있던 차가운 바람이 서풍에 의해 싹 밀려나며 기온은 놀라울 정도로 빠르게 오르게 됩니다. 그리고 모두들 예상하시고 있겠지만, 국지성 고기압과 서풍은 온기만을 몰고 오지 않습니다. 오전에는 고기압이 만든 대기 정체로, 오후에는 상해 인근에서 밀려오는 미세먼지가 한반도를 가득 메울 것으로 보입니다.

0

비상계엄을 주도했던 김용현은 즉시 항소했고, 내란수괴 윤석열 역시 항소를 검토하고 있다고 합니다. 특검 역시 "사실 인정과 양형 부분에 상당한 아쉬움이 있다"며 항소를 제출할 의향을 내비쳤습니다. 2심과 3심은 내란 특검법에 의거, 전심 판결 선고일로부터 3개월 이내에 선고해야 한다고 규정하고 있기 때문에 항소심 판단은 5월 전에 나올 것으로 예상됩니다. 초록이 피어나 무성하게 자라나기 시작할 5월, 더 이상 12월 3일에 있었던 내란의 흑암이 우리 마음 속을 덮고 있지 않길 바라며, 아침 햇살과 함께 오늘 날씨 열어보겠습니다.

김용현 ‘징역 30년’ 선고 직후 항소…윤석열도 항소 ...

0

친위 쿠데타가 실패했던 것은 재판부의 말마따나 '계획이 허접해서'가 아니라 시민들이 그 밤중에도 국회로 몰려가서 부당한 명령을 받고 이행하려 했던 군/경력을 막아섰기 때문이었습니다. 그랬기에 세계정치학회(IPSA) 김의영 서울총회 수석조직위원장, 피블로 오나테 전 학회장 등 4명이 "헌법적 위기를 막아 낸 시민들의 노력"을 근거로 대한민국 시민 전체를 노벨평화상 후보로 추천한 것입니다. 물론 노벨평화상이라는게 근래 공신력을 잃어버리고 정치적 도구로 바뀌었다는 비판을 받고 있지만, 이는 재판부가 주목해야 할 일임에 틀림없습니다.

계엄 막은 ‘대한국민’, 노벨평화상 후보로 추천됐다 [...

0

26/2/20 날씨 이것저것 어제 지귀연 재판부는 특검의 손을 들어주지 않았습니다. 오히려 굉장히 건조하게 군을 국회로 보냈다는 행동만 인정했습니다. 물론 그것 자체만으로도 지난 12월 3일은 친위 쿠데타였고, 내란이었으며, 폭동이었음이 법적으로 확정되어 수괴는 처벌을 피할 수 없게 되었습니다. 하지만 "성공한 쿠데타는 처벌할 수 없다"던 12.12의 선례를 깨는데는 실패했습니다. 오히려 실패했기 때문에 "폭력을 자제시켰다"는 궤변을 받아들였죠. 특검의 공소장과 피고의 반론 전략, 재판부 성향 상 예상된 결과지만 씁쓸합니다.

0

Friends!

There is a TON of improvements we could make to Private Mentions (often called DMs on other platforms) e.g.
* getting them out of the public timeline
* Having a stronger notification tied to the Private Mention tab
* (amount other things)

But here is my MAIN question: How critical is it that these message are encrypted? I'm not against encryption! It's just complex and will take time. If we were to make some UX changes as a first pass WITHOUT encryption would you be OK with that (at least for now?)

If you MUST have encryption, that's fine, please do me the favor of replying explaining why you need it.

0
17
0
1
1
1

🧠구글 제미나이 3.1 ‘Pro’ 정식 출시!

ARC-AGI-2 벤치 77.1%를 시작으로
각종 벤치에서 자사 기존 3.0은 물론이고
당연하게도 현시점 기준 시장 모든 AI모델 대비
압도적인 여러분야 벤치 성능ㄷㄷ

구글아… 아직 I/O 3달 남았는데
얼마나 더 가는거야🫢

May be an image of textMay be a graphic of text that says 'Gemini 3.1 Pro ARC-AGI-2 ARC- Abstract reasoning puzzles ARC PRIZE VERIFIED 77.1% 68.8% 58.3% 52.9% 31.1% 31.1% Gemini 3.1 Pro Thinking (High) Gemini 3 Pro Thinking (High) Claude Sonnet 4.6 Thinking (Max) Claude Opus 4.6 Thinking (Max) GPT-5.2 Thinking (xhigh) httg deepmind Methodology:'
0
1
0
0
0
0

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
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