Profile img

wwj

@z9mb1@hackers.pub · 82 following · 62 followers

하이룽

Github
@sij411
1

Today I discovered an interesting inconsistency in Activity Streams specs while investigating a Fedify issue.

The question: How should we interpret URLs like "icon": "https://example.com/avatar.png"?

JSON-LD context (https://www.w3.org/ns/activitystreams): @type: "@id" → “This is an IRI reference, dereference it to fetch an ActivityStreams object.”

Activity Streams Primer: “assume that a bare string is the href of a Link object, not an id” (no dereferencing)

Result: JSON-LD processor-based implementations try to parse PNG files as JSON and fail.

Turns out w3c/activitystreams#595 already discusses the same issue for href properties. I added a note that icon, image, etc. have the same problem.

Once again reminded of how tricky spec work can be…

0
1

LWN.net의 What every programmer should know about memory 시리즈를 훑어 보고 나서 든 생각인데, 현대적인 컴퓨터의 메모리 모델이란 건 사용성 관점에서는 놀라울 정도로 투명하게 추상화되어 있으면서 동시에 성능 관점에서는 무시무시할 정도로 새는 부분이 많은 추상화인 것 같다.

인상깊었던 부분 중 하나는, 코드를 실행해 보기 전에는 완벽한 최적화가 사실상 불가능한 메모리 접근 패턴이 드물지 않게 발생할 수 있다는 건데, 이런 부분 때문에 JIT 컴파일러가 AOT 컴파일보다 잠재적으로 더 우수한 성능을 낼 수 있다는 주장이 있었던 걸까 싶다.

6
0
0
1
0

Term.everything - 터미널에서 모든 GUI 앱 실행하기
------------------------------
- Linux용 CLI 프로그램으로, *GUI 애플리케이션을 터미널에서 직접 실행* 할 수 있게 해줌
- 자체 제작한 *Wayland 컴포지터* 를 사용해 모니터 대신 터미널로 GUI 출력을 전달하는 방식
- ssh 환경에서도 실행 가능하며, *웹 브라우저, 파일 매니저, 심지어 Doom 게임까지 터미널 안에서 실행* 가능
- 터미…
------------------------------
https://news.hada.io/topic?id=23012&utm_source=googlechat&utm_medium=bot&utm_campaign=1834

1
1
2

OSSCA 같이 참여하는 분들 취업/이직하는데 조금이라도 도움되고 싶어서 프로필에다가 testimonial 같은거라도 남겨주고 싶은데, 어떻게 할까 고민하다가 마침 떠오른 사이드프로젝트 아이디어를 어딘가에다가 던졌다.

이제 누가 먼저 만드나 경쟁해보시지 하하

0

십 여년 전 - 태그드 템플릿 없던... - 에 웹 서버에 데이터베이스 조회/수정할 때 SQL 을 직접 사용했는데 (인터폴레이션 등등) 요즘 트랜드는 메소드 호출이 중심이다. 그 와중 bun 에 담긴 sql 패키지를 보면 직접 SQL 을 사용하되 Type-safe 를 보장하는 쪽으로 구현되고 있고, Effect-ts 같은 곳에서도 메소드 체인 대신 SQL 문을 쓴다.

이런 시도는 Node.js 패키지에서도 볼 수 있는데 (물론 오래 전에 공개된 문서이긴 하다) https://contra.com/p/AqZWWoUB-writing-composable-sql-using-java-script 에서 자세히 설명하고 있다. 작성자는 Slonik 패키지의 저자이기도 하다.

이 맥락에 수긍이 간다는 생각의 배경에는 데이터베이스와 애플리케이션 서버는 다른 세상이라는 관점을 가지게 되어서이다. 둘은 혼용해서 사용할 수 없는 사이(관계)라고 본다. 늘 매퍼가 필요하고 타입 변환이 필요하다. 두 세계를 통합하려는 시도는 여전히 있겠지만 요즘 나는, 그러지 않아도 된다고 얘기한다. 다른 세계를 인정하고 예상하는 오류를 줄이는 것이 최선이다.

0
2
3
1
0
2
0
2

最近(최근) 한창 開發中(개발중)인 Fedify 基盤(기반) ActivityPub 서비스 2():

完全(완전) 期待中(기대중)!!

6

저랑 비슷하다고 추천해주셨는데, 정말 사고 방식이 저랑 비슷해서 재밌네요 ㅋㅋㅋㅋㅋ

친구들이 내게 "그렇게 노력하고 있는게 대단하다."고 말했지만, 사실 나는 그렇게 노력하고 있지 않다. 푸하하하

2

Recently there has been a lot of discourse about ActivityPub and AT Protocol which has been quite dividing and heated.

Yesterday at the Social Web CG meeting (the group that maintains the ActivityPub and related specifications), I proposed releasing a statement that counters the narrative that one of these protocols must win, when both protocols can co-exist and have a lot to learn from each other.

The statement has been co-signed by various members of both Social Web CG, SocialCG, and the AT Protocol community.

“We do not win by tearing each other down, which only emboldens and empowers those who do not want either protocol to succeed.”

“Arguing between us only emboldens those that seek to derail and destroy efforts to build an open social web.”

You can read the full statement here:
writings.thisismissem.social/s

This was originally in the swicg/general repository, and you can learn about that here:
github.com/swicg/general/blob/

0
19
1

wwj shared the below article:

Stop writing CLI validation. Parse it right the first time.

洪 民憙 (Hong Minhee) @hongminhee@hackers.pub

This post introduces Optique, a new library created to address the pervasive problem of repetitive and often messy validation code in CLI tools. The author was motivated by the observation that nearly every CLI tool reinvents the wheel with similar validation patterns for dependent options, mutually exclusive options, and environment-specific requirements. Optique leverages parser combinators and TypeScript's type inference to ensure that CLI arguments are parsed directly into valid configurations, eliminating the need for manual validation. By describing the desired CLI configuration with Optique, TypeScript automatically infers the types and constraints, catching potential bugs at compile time. The author shares their experience of deleting large chunks of validation code and simplifying refactoring tasks. Optique aims to provide a more robust and maintainable approach to CLI argument parsing, potentially saving developers from writing the same validation logic repeatedly.

Read more →
20
3
1
1
2

책 빌렸다... 진짜 공부를 시작해볼까...

3
6
0

이제 Zed에서 Claude Code를 베타로 사용 가능
------------------------------
-
Claude CodeZed 의 통합이 공개 베타로 출시
- 새로운 *Agent Client Protocol (ACP)* 도입을 통해 다양한 에이전트와의 연결 확장 가능성 실현
- 개발자는
Zed 내에서 Claude Code를 실시간, 다중 파일, 커스텀 워크플로우와 함께 활용 가능함
- *Claude Code용 ACP 어댑터* 가 오픈소스로 공…
------------------------------
https://news.hada.io/topic?id=22887&utm_source=googlechat&utm_medium=bot&utm_campaign=1834

2
4
1
3

✨ Hackers' Public 첫 오프라인 모임! ✨

Hackers' Pub 사용자들의 자발적인 모임, Hackers' Public이 📅 9월 14일(일) 오후 3시 ~ 6시 열립니다.

이번 모임에서는 많은 분들이 흥미로워할 두 가지 발표가 준비되어 있습니다:

  • 🎨 Code As a Canvas: 코드에서 예술작품이 되기까지
  • ✍️ 폰트는 어떻게 만들어지는가 – Neo둥근모 개발 후일담

또한 자유롭게 교류할 수 있는 네트워킹 시간도 마련되어 있으니 많은 관심 부탁드립니다 🙌

현재는 2차 모집 단계이며, 👉 신청은 포스터의 QR코드 또는 http://public.hackers.pub 에서 가능합니다. (두 경로 모두 동일한 이벤트 페이지로 연결됩니다)

2차 모집 기간은 9월 7일까지이며, 완판이 되었더라도 참가자 신청 대기하신 분 중에서 두분 정도 선정할 예정입니다!

Hackers Public 1회차 모임 포스터
6
0
1
1
4
1
0
2
1