Profile img

bgl gwyng

@bgl@hackers.pub ยท 99 following ยท 124 followers

GitHub
@bglgwyng
0

bgl gwyng shared the below article:

hoonie-blog v1.1.1 ๋“ฑ์žฅ!

์นด๋ฏธ์œ  @renegade_v00@hackers.pub

๊ฐœ์„ ๋œ ๊ธฐ์ˆ  ๋ธ”๋กœ๊ทธ 1.1.1 ๋ฒ„์ „์ด ๊ณต๊ฐœ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ์—…๋ฐ์ดํŠธ์—์„œ๋Š” ์‚ฌ์šฉ์ž ๊ฒฝํ—˜์„ ํ–ฅ์ƒ์‹œํ‚ค๊ธฐ ์œ„ํ•œ ๋‹ค์–‘ํ•œ ๊ฐœ์„  ์‚ฌํ•ญ๋“ค์ด ์ ์šฉ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ํŠนํžˆ, ์‚ฌ์ดํŠธ ์„ฑ๋Šฅ ์ตœ์ ํ™”๋ฅผ ํ†ตํ•ด ๋กœ๋”ฉ ์†๋„๋ฅผ ๊ฐœ์„ ํ•˜๊ณ , ๋ฐ˜์‘ํ˜• ๋””์ž์ธ์„ ๊ฐ•ํ™”ํ•˜์—ฌ ๋‹ค์–‘ํ•œ ๊ธฐ๊ธฐ์—์„œ ์ผ๊ด€๋œ ์‚ฌ์šฉ์ž ์ธํ„ฐํŽ˜์ด์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ๋“ค์„ ์ถ”๊ฐ€ํ•˜์—ฌ ๋ธ”๋กœ๊ทธ ํƒ์ƒ‰ ๋ฐ ์ฝ˜ํ…์ธ  ์ ‘๊ทผ์„ฑ์„ ๋†’์˜€์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ ์—…๋ฐ์ดํŠธ๋Š” ๋งˆ์น˜ ๊ฒŒ์ž„ ํŒจ์น˜๋…ธํŠธ์ฒ˜๋Ÿผ ์ž‘์„ฑ๋˜์–ด, ๊ฐœ๋ฐœ ๊ณผ์ •๊ณผ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋”์šฑ ์žฌ๋ฏธ์žˆ๊ฒŒ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ธ”๋กœ๊ทธ๋ฅผ ๋ฐฉ๋ฌธํ•˜์—ฌ ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ๋“ค์„ ์ง์ ‘ ๊ฒฝํ—˜ํ•˜๊ณ , ๊ฐœ์„ ๋œ ์‚ฌ์šฉ์„ฑ์„ ๋А๊ปด๋ณด์„ธ์š”.

Read more โ†’
0

Vim/Neovim์˜ ์‹œ๋Œ€๊ฐ€ ๊ฐ€๊ณ , Vibe Coding ๋‚ด์ง€๋Š” LLM ์—์ด์ „ํŠธ์˜ ๋„์›€์„ ์–ป๋Š” ์‹œ๋Œ€๊ฐ€ ์™”๋‹ค์ง€๋งŒ, ๋‚œ ์•„์ง๊นŒ์ง€๋Š” ์ „์ ์œผ๋กœ ๋™์˜ํ•˜์ง€๋Š” ์•Š์Œ(๋ถ€๋ถ„์ ์œผ๋กœ๋Š” ๋™์˜ํ•œ๋‹ค๋Š” ์˜๋ฏธ) ์•„์ง๊นŒ์ง€๋Š” ์ˆ˜์ œ๋กœ ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ์งœ๋Š” ๊ฒƒ๋„ ์˜๋ฏธ๊ฐ€ ์žˆ๊ณ , CLI ๊ธฐ๋ฐ˜์˜ ์—๋””ํ„ฐ๋„ ์ €๋งˆ๋‹ค์˜ ๋ฐœ์ „์„ ํ•˜๊ณ  ์žˆ๋‹ค๊ณ  ์ž์‹ ์žˆ๊ฒŒ ๋งํ•  ์ˆ˜ ์žˆ์Œ.

๋‚ด๊ฐ€ ์ƒ๊ฐํ•˜๋Š” ์š”์˜ค์ฆ˜ ์‹œ๋Œ€ ๊ฐœ๋ฐœ์˜ ์žฅ์ ๋„ ์–ธ๊ธ‰ํ•˜๋ฉด์„œ CLI ๊ธฐ๋ฐ˜์˜ ์—๋””ํ„ฐ๋Š” ์–ด๋–ค ์œ„์น˜์— ์žˆ๋Š”์ง€๋„ ์–˜๊ธฐํ•ด๋ณด๊ณ ์ž ํ•œ๋‹ค.

  1. ์‹ ๋ขฐ๊ตฌ๊ฐ„์ด ๋„“์ง€ ์•Š์•„๋„ ๋˜๋Š” ์ž‘์—…์„ ํ• ๋•Œ๋Š” AI๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์ฝ”๋“œ๊ฐ€ ๋ถ„๋ช… ์‹œ๊ฐ„์„ ํ™• ์ค„์—ฌ์ฃผ๊ณ  ๊ฒฐ๊ณผ์ ์œผ๋กœ ์ƒ์‚ฐ์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ค๋Š” ๊ฒฝํ–ฅ์€ ์žˆ์ง€๋งŒ, "์ •ํ™•ํ•จ"์„ ์œ„ํ•ด์„œ ํ”„๋กฌํ”„ํŠธ๋ฅผ ๋„ฃ์–ด์•ผ ํ•˜๋Š”๋ฐ ๊ทธ ํ”„๋กฌํ”„ํŠธ๋ฅผ ๋„ฃ๋Š” ์ž‘์—…์ด ํ’ˆ์ด ๋งŽ์ด ๋“ค๋•Œ(๋„ฃ์–ด์•ผ ํ•˜๋Š” ๋งฅ๋ฝ์ด ๋„ˆ๋ฌด ๋งŽ์„๋•Œ) ๊ทธ๋ ‡๊ฒŒ ์ •ํ™•ํ•˜์ง€๋Š” ์•Š์„๋ฟ๋”๋Ÿฌ ๋งฅ๋ฝ์„ ๋„ฃ๋Š” ์‹œ๊ฐ„ ๋•Œ๋ฌธ์— ์ฐจ๋ผ๋ฆฌ ๋‚ด๊ฐ€ ์ง์ ‘ ์งœ๋Š”๊ฒŒ ๋‚˜์„๋•Œ๊ฐ€ ๋งŽ์Œ. ์ˆ˜์ œ๋กœ ์ง์ ‘ ์งœ๊ธฐ vs AIํ•œํ…Œ ์ „์ ์œผ๋กœ ๋งก๊ฒจ๋ฒ„๋ฆฌ๊ธฐ ๋‘ ์„ธ๊ณ„๋ฅผ ์ ์ ˆํ•˜๊ฒŒ ์˜ค๊ฐ€๋ฉด์„œ ์ž‘์—…ํ•˜๋Š”๊ฒŒ ๋ฒ ์ŠคํŠธ์ด์ง€ ์•Š๋‚˜ ์‹ถ์Œ.

  2. GUI ์—๋””ํ„ฐ ํŠน์œ ์˜ ์žฅ์ ๋„ ๋ถ„๋ช… ์žˆ๊ธด ์žˆ๋‹ค. GUI ์—๋””ํ„ฐ๊ฐ€ ์˜ฌ์ธ์› ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ”๊ณ  ์žˆ๋Š” ๊ฒฝ์šฐ๋„ ๋งŽ๊ณ  ํŽธ์˜์„ฑ ๋ฉด์—์„œ ๋ฏธ๋‹ˆ๋ฉ€๋ฆฌ์ฆ˜์„ ์ถ”๊ตฌํ•˜๋Š” CLI ๊ธฐ๋ฐ˜์˜ ์—๋””ํ„ฐ๋ณด๋‹ค ๊ฐ€์ง„ ๊ธฐ๋Šฅ์ด ๋งŽ๋‹ค. ๋‚จ์ด ์ฐจ๋ ค์ค€ ๋ฐฅ์ƒ์ด ๊ทธ๋ ‡๊ฒŒ ๋‹ฌ๋‹ฌํ•˜์ง€ ์•Š์„ ์ˆ˜ ์—†๋‹ค. ํ•˜์ง€๋งŒ, ๊ทธ๋Ÿฐ ๊ธฐ๋Šฅ๋“ค์„ ์ œ๊ณตํ•˜๋Š” ํ”Œ๋Ÿฌ๊ทธ์ธ์ด๋‚˜ ์ž์ฒด ๊ธฐ๋Šฅ๋“ค์˜ ๋‚ด๋ถ€ ๊ตฌํ˜„์„ ๋ง‰์ƒ ๊นŒ๋ณด๋ฉด CLI ๋„๊ตฌ์— ์˜์กดํ•˜๋Š” ๊ธฐ๋Šฅ๋“ค์ด ๋งŽ๋‹ค. ํŠนํžˆ, LSP/๋ฆฐํ„ฐ/ํฌ๋งคํ„ฐ๊ฐ€ ๊ทธ๋ ‡๋‹ค. ๋‹ค๋งŒ ์ถ”์ƒํ™”๋ ˆ์ด์–ด๋ฅผ ์–ด๋–ป๊ฒŒ ๊ฐ์ŒŒ๋А๋ƒ ์ •๋„์˜ ์ฐจ์ด๊ฐ€ ์žˆ๋Š”๋ฐ, ๊ทธ ์ถ”์ƒํ™”๋ ˆ์ด์–ด๋ฅผ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•ํ•˜๋Š”๋ฐ ์žˆ์–ด์„œ์˜ ์ง„์ž…์žฅ๋ฒฝ์€ CLI ๊ธฐ๋ฐ˜์˜ ์—๋””ํ„ฐ๊ฐ€ ์ƒ๋Œ€์ ์œผ๋กœ ๋‚ฎ์€ ํŽธ์ด๋‹ค. ์™œ๋ƒ๋ฉด, ์ธ๊ณ ์˜ ์‹œ๊ฐ„์„ ๊ฑฐ์ณ์„œ ํ•ด์˜จ๊ฒŒ ๋”ฑ ๊ทธ๊ฑฐ๋ผ์„œ(.....)

  3. ๋ฐ”์ด๋ธŒ ์ฝ”๋”ฉ์€ ๋ถ„๋ช… ์••๋„์ ์ธ ์†๋„๋กœ ์ฝ”๋“œ๊ฐ€ ์งœ์—ฌ์งˆ ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๊ณ , ๋‹จ์œ„์‹œ๊ฐ„๋‹น ์ฝ”๋“œ๊ฐ€ ์งœ์—ฌ์ง€๋Š” ์–‘ ์ž์ฒด๋„ ์–ด๋งˆ์–ด๋งˆํ•˜๋‹ค. ํŠนํžˆ, scaffolding์„ ํ• ๋•Œ ๋”๋”์šฑ ๋น›์„ ๋ฐœํœ˜ํ•œ๋‹ค. ๊ทธ๋ ‡๊ธฐ ๋•Œ๋ฌธ์—, ์ฝ”๋“œ๋ฅผ ์งœ๋Š”๊ฑด ๊ธฐ๊ณ„/์ธ๊ณต์ง€๋Šฅ์— ์œ„์ž„ํ•˜๊ณ , ์ž์„ธํ•œ ๋””ํ…Œ์ผ์„ ์ฑ„์šฐ๋Š”๊ฑด ์œ ์ €๋ฆฌ์„œ์น˜๋ฅผ ํ•˜๊ฑฐ๋‚˜ ์™€์ด์–ดํ”„๋ ˆ์ž„์„ ๊ทธ๋ ค์„œ ๊ธฐํš์„ ๋” ๋ณด๊ฐ•ํ•˜๋Š” ๋“ฑ ์ค‘์š”ํ•œ ์˜์—ญ์— ์ง‘์ค‘ํ•  ์ˆ˜ ์žˆ๊ฒŒ ๋œ๋‹ค. ์ฝ”๋“œ๋ฅผ ์งœ๋Š”๋ฐ ๋“œ๋Š” ์‹œ๊ฐ„์€ ์ตœ์†Œํ•œ์œผ๋กœ, ์ค‘์š”ํ•œ ์˜์—ญ์— ์ง‘์ค‘ํ•˜๊ธฐ ์œ„ํ•ด ์ƒ๊ฐํ•˜๋Š” ์‹œ๊ฐ„์„ ๋” ๋งŽ์ด ๊ฐ€์ง€๋Š” ๊ฒƒ์€ ๋ถ„๋ช… ์ข‹์€ ์ผ์ด๋‹ค. ๊ด€๋ จํ•ด์„œ๋Š” ์ด ๊ธ€๋„ ์ฝ์–ด๋ณด๋ฉด ์ข‹์„ ๊ฒƒ ๊ฐ™๋‹ค. https://two-wrongs.com/typing-fast-is-about-latency-not-throughput

๋ฌผ๋ก , ์ฝ”๋“œ๋ฅผ ์งœ๋Š”๋ฐ ์žˆ์–ด์„œ ์ค‘์š”ํ•œ ๊ฒƒ์€ ๋ฆฌํ„ฐ๋Ÿฌ์‹œ์ด๋‹ค. LLM์ด ์ฝ”๋“œ๋ฒ ์ด์Šค์˜ ์ดํ•ด๋ฅผ ๋น ๋ฅด๊ฒŒ ํ•  ์ˆ˜ ์žˆ๋„๋ก ๋„์™€์ฃผ๊ธด ํ•˜์ง€๋งŒ, ์œ„์—์„œ ์–ธ๊ธ‰ํ–ˆ๋“ฏ ์–ด๋А ์ •๋„ ์‹œ์ ์ด ๋˜๋ฉด ๊ฒฐ๊ตญ์—” ์ง์ ‘ ์งœ๊ณ  ์ง์ ‘ ์ˆ˜์ •ํ•˜๋Š” ์ผ๋„ ์žˆ์–ด์•ผ ํ•œ๋‹ค. ๋กœ์ปฌ LLM์ด ๋ฐœ์ „ํ•œ๋‹ค ํ•˜๋”๋ผ๋„, LLM์„ ์‚ฌ์šฉํ•  ์—ฌ๋ ฅ์ด ๋˜์ง€ ์•Š๋Š” ํ™˜๊ฒฝ์—์„œ๋„ ๋™์ผํ•œ ์ƒ์‚ฐ์„ฑ์„ ์œ ์ง€ํ•  ์ˆ˜ ์žˆ์„๊นŒ? ์ƒ์‚ฐ์„ฑ์ด ์ผ๊ด€์ ์ด์ง€ ์•Š๋‹ค๋ฉด, ๊ทธ๋ ‡์ง€ ์•Š์€ ํ™˜๊ฒฝ์— ๋…ธ์ถœ์ด ๋˜์—ˆ์„๋•Œ ์–ด๋–ป๊ฒŒ ๋Œ€์‘ํ•  ์ˆ˜ ์žˆ์„์ง€๊ฐ€ ์ค‘์š”ํ•œ ํฌ์ธํŠธ์ผ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค. ์ธ์ž๊ฐ•, ์ฆ‰, ์‚ฌ๋žŒ ์ž์ฒด๊ฐ€ ๊ฐ•ํ•ด์งˆ ํ•„์š”๊ฐ€ ์žˆ๋‹ค๊ณ  ์ƒ๊ฐํ•œ๋‹ค.


์ธ๊ณต์ง€๋Šฅ์— ์ „์ ์œผ๋กœ ์˜์กดํ•˜์ง€ ์•Š๊ณ  ์ˆ˜์ œ๋กœ ์ง์ ‘ ์ฝ”๋“œ๋ฅผ ์งœ๋Š” ์‚ฌ๋žŒ๋“ค์ด ๊ธฐ๊ณ„/์ธ๊ณต์ง€๋Šฅ์— ์ €ํ•ญํ•ด์„œ ์–ด๋–ป๊ฒŒ ์‚ด์•„๋‚จ์„๊นŒ๋ฅผ ์ƒ๊ฐํ•ด๋ณด๋ฉด ์ธ๊ฐ„๊ณตํ•™์— ๊ธฐ๋ฐ˜ํ•ด์„œ ํŽธ์ง‘ํ•˜๋Š” ํ…Œํฌ๋‹‰์ด ๋” ์—ฐ๊ตฌ๋  ํ•„์š”๊ฐ€ ์žˆ๋‹ค.

GUI ๊ธฐ๋ฐ˜์˜ ์—๋””ํ„ฐ๊ฐ€ ๋‚ ์ด ๊ฐˆ์ˆ˜๋ก ์ข‹์•„์ง€๊ณ  ์žˆ๋Š” ์ƒํ™ฉ ์†์—์„œ CLI ๊ธฐ๋ฐ˜์˜ ์—๋””ํ„ฐ๊ฐ€ ์‚ด์•„๋‚จ์œผ๋ ค๋ฉด ๋”๋”์šฑ CLI ๊ธฐ๋ฐ˜์˜ ๋„๊ตฌ์™€ ๊ถํ•ฉ์ด ์ข‹์€ ๊ฒƒ์„ ๋‚ด์„ธ์›Œ์„œ ์ฐจ๋ณ„์ ์„ ๋‚ด์„ธ์šธ ํ•„์š”๊ฐ€ ์žˆ๋‹ค. Neovim์€ ๊ทธ๋Ÿฐ ๊ด€์ ์—์„œ IDE์™€ ์œ ์‚ฌํ•œ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๋Š” ์ชฝ์œผ๋กœ ์ž˜ ๋ฐœ์ „๋˜์–ด ์™”๋‹ค๊ณ  ๋ณด๊ณ  ์žˆ๋‹ค.

Vim/Neovim ์ƒํƒœ๊ณ„๋Š” ์•„์ง๊นŒ์ง€๋Š” ๋ฏธ๋ž˜๊ฐ€ ๋‚™๊ด€์ ์ด๋ผ๊ณ  ๋ณธ๋‹ค.

@kodingwarriorJaeyeol Lee ์ €๋Š” VS Code๋ฅผ ์˜ค๋ž˜ ์จ์„œ, Cursor๋“  Windsurf๋“  VS Code ํฌํฌ๋“ค์€ ์•„๋ฌด ๋น„์šฉ์—†์ด ๊ฐˆ์•„ํƒˆ์ˆ˜ ์žˆ์—ˆ๋Š”๋ฐ์š”. ์‚ฌ์‹ค ์ €๋Ÿฐ ํˆด๋“ค์˜ ์ง„์งœ ๊ฐ•์ ์€ API ์š”๊ธˆ์ œ์ธ๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค. Claude Code ๋ถ™์—ฌ์„œ ์ข…๋Ÿ‰์ œ๋กœ ์“ฐ๋ฉด ๊ทธ๊ฒŒ ์ œ์ผ ํผํฌ๋จผ์Šค ์ข‹๊ฒ ์ง€๋งŒ ๋ˆ์ด ๊ณ„์† ๋‚˜๊ฐ„๋‹ค๋Š”๊ฒŒ ์ƒ๋‹นํ•œ ์••๋ฐ•์ธ๋ฐ, Windsurf ํ•œ๋‹ฌ์— 15๋‹ฌ๋Ÿฌ ๋‚ด๋ฉด ๊ทธ๋ƒฅ ์ฑ„ํŒ…์šฉ์œผ๋กœ๋„ ์“ธ์ˆ˜์žˆ๊ณ , ๊ฐœ๋ฐœ์ž ์ž…์žฅ์—์„œ ๋‹จ ํ•œ๊ฐœ์˜ AI ๊ตฌ๋…์ด ๋˜๋Š”๊ฒŒ ๊ฐ€๋Šฅํ•ด์š”. ๊ทธ๋Ÿฌ๋‹ˆ๊นŒ ์—๋””ํ„ฐ ์ž์ฒด๋Š” ๋ณ„๋กœ ์•ˆ์ค‘์š”ํ•˜๊ณ  ๊ทธ ๋’ค์— ๋ฌถ์—ฌ์žˆ๋Š” AI ์ƒํ’ˆ์ด ๋งค๋ ฅ์ ์ธ ๊ฑฐ์ฃ .

Aider๊ฐ™์€ ๊ฑธ๋กœ ๋น„์Šทํ•œ ์š”๊ธˆ์ œ๋ฅผ ๊ตฌํ˜„ํ•˜๋Š”๊ฒŒ ๊ฐ€๋Šฅํ• ์ง€ ๋ชจ๋ฅด๊ฒ ๋„ค์š”. ๋˜๋Š” ๋กœ์ปฌ LLM ์„ฑ๋Šฅ์ด ๊ถค๋„์— ์˜ค๋ฅด๋ฉด ๊ทธ๋•Œ ๋˜ ๋งŽ์ด ๋‹ฌ๋ผ์งˆ๊ฑฐ๋ผ ๋ด…๋‹ˆ๋‹ค.

0
0

@hongminheeๆดช ๆฐ‘ๆ†™ (Hong Minhee) 1๋…„์ „์ฏค์— hello world 10Mb์ธ๊ฐ€ ๋‚˜์™€์„œ ํฌ๊ธฐํ–ˆ๋Š”๋ฐ ์ตœ๊ทผ์— ๋ช‡์‹ญํ‚ค๋กœ๋ฐ”์ดํŠธ ์ˆ˜์ค€๊นŒ์ง€ ์ค„์˜€์„๊ฑฐ์—์š”. 10Mb ๋‚˜์˜ค๋˜ ์‹œ์ ˆ์€ ๋ฒ„๊ทธ์— ๊ฐ€๊นŒ์› ๊ณ  ๊ฐœ์„ ์˜ ์—ฌ์ง€๊ฐ€ ๋งŽ์€๊ฑฐ ๊ฐ™์•„์š”.

0

ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด ํ•˜์Šค์ผˆ์€ 1990๋…„ 4์›” 1์ผ์— ์ฒ˜์Œ ๋‚˜์™€ ์˜ฌํ•ด 35์ฃผ๋…„์ด ๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์˜ค๋Š˜์ด ํ•˜์Šค์ผˆ ์ƒ์ผ์ด์—์š”. ์ด๊ฑฐ ๋งŒ์šฐ์ ˆ ๋†๋‹ด ์•„๋‹ˆ๊ณ  ์ง„์งœ์˜ˆ์š”.

0
0
0
0
0

์š”์ฆ˜ ์ฃผ์˜ ๊นŠ๊ฒŒ ๋ณด๊ณ  ์žˆ๋Š” ๋‘ ์–ธ์–ด:

  • Gleam: Erlang์˜ OTP ๋Ÿฐํƒ€์ž„์—์„œ ๋Œ์•„๊ฐ„๋‹ค๋Š” ์ ์—์„œ Elixir์™€ ๋น„์Šทํ•œ๋ฐ, ์ฒ˜์Œ๋ถ€ํ„ฐ ์ •์  ํƒ€์ž… ์–ธ์–ด๋กœ ์„ค๊ณ„๋˜์—ˆ๋‹ค. ์•„, JavaScript ํƒ€๊นƒ๋„ ์ง€์›ํ•œ๋‹ค. Haskell์˜ ํƒ€์ž…ํด๋ž˜์Šค(typeclass)๋‚˜ Rust์˜ ํŠธ๋ ˆ์ดํŠธ(trait)์— ํ•ด๋‹นํ•˜๋Š” ๊ธฐ๋Šฅ์ด ์—†๋‹ค๋Š” ๊ฒŒ ๊ฐœ์ธ์ ์œผ๋กœ๋Š” ์กฐ๊ธˆ ์•„์‰ฌ์šด ์ .

  • MoonBit: ์ค‘๊ตญ ์ชฝ์—์„œ ์ฃผ๋„ํ•ด์„œ ๋งŒ๋“ค๊ณ  ์žˆ๋Š” WebAssembly ํƒ€๊นƒ ์–ธ์–ด๋กœ, ์ด์ง€ ๋ชจ๋“œ Rust์— ๊ฐ€๊นŒ์›Œ ๋ณด์ธ๋‹ค. ๋‹ค๋งŒ ๊ฐœ๋ฐœ ๊ณผ์ •์ด ์™„์ „ํžˆ ์˜คํ”ˆ ์†Œ์Šค๋Š” ์•„๋‹ˆ๊ณ , (์˜คํ”ˆ ์†Œ์Šค ๋ผ์ด์„ ์Šค์ด๊ธด ํ•˜์ง€๋งŒ) ์†Œ์Šค๋งŒ ๊ณต๊ฐœํ•˜๋Š” ํ˜•ํƒœ๋ผ ๊ฑฐ๋ฒ„๋„Œ์Šค ์ธก๋ฉด์—์„œ ์•„์‰ฌ์›€์ด ์žˆ๋‹ค.

0

๋งŽ์€ ๋ถ„๋“ค์ด ์ธ์šฉ ๋ฐฉ๋ฒ•์„ ํ˜ผ๋ž€์Šค๋Ÿฌ์›Œ ํ•˜์…”์„œ, ์ธ์šฉ ๋ฒ„ํŠผ์„ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฒŒ์‹œ๊ธ€์ด๋‚˜ ๋‹จ๋ฌธ ์•„๋ž˜์˜ ์•„์ด์ฝ˜๋“ค ์ค‘์— ์™ผ์ชฝ์—์„œ ์„ธ ๋ฒˆ์งธ ์•„์ด์ฝ˜์„ ๋ˆ„๋ฅด์‹œ๋ฉด ํ•ด๋‹น ์ฝ˜ํ…์ธ ๋ฅผ ์ธ์šฉํ•œ ๊ธ€๋“ค์ด ๋‚˜์—ด๋˜๊ณ , ๊ทธ ์œ„์— ์ธ์šฉ ๊ธ€ ์ž…๋ ฅ๋ž€์ด ๋œจ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ๊ฑฐ๊ธฐ์„œ ์ธ์šฉ ๊ธ€์„ ์“ธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์•„, ์ข…๋ž˜์˜ ์ธ์šฉ UI๋„ ๊ทธ๋Œ€๋กœ ์‚ฌ์šฉํ•˜์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ฐธ๊ณ ๋กœ ์ธ์šฉ ์•„์ด์ฝ˜์€ @xtjuxtapose ๋‹˜๊ป˜์„œ ์ˆ˜๊ณ ํ•ด ์ฃผ์…จ์Šต๋‹ˆ๋‹ค. ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.



RE: https://hackers.pub/@xt/0195eb06-9f50-763d-85c8-5600ec78c539

Hackers' Pub์˜ ๊ฒŒ์‹œ๊ธ€์ด๋‚˜ ๋‹จ๋ฌธ ์•„๋ž˜์— ํ‘œ์‹œ๋˜๋Š” ์•„์ด์ฝ˜๋“ค. ์ธ์šฉ ๋ฒ„ํŠผ์ด ๊ฐ•์กฐ๋˜์–ด ์žˆ๋‹ค.
0

vim.kr ๋””์Šค์ฝ”๋“œ์—๋„ ๋ฌผ์–ด๋ณด๊ธด ํ–ˆ๋Š”๋ฐ, ํ•ด์ปค์ŠคํŽ์—๋„ ๊ณต๊ฐœ์ ์œผ๋กœ ๋ฌผ์–ด๋ด…๋‹ˆ๋‹ค.

Git ๊ด€๋ จ ์œ ํ‹ธ๋ฆฌํ‹ฐ ์ค‘์— ์ด๋Ÿฐ๊ฑฐ ์—†์„๊นŒ์š”?

๊ฐœ๋ฐœ๋œ ๊ธฐ๋Šฅ๋“ค์€ ์–ด์ง€๊ฐ„ํ•˜๋ฉด ์‹น ๋‹ค Staging ๋ธŒ๋žœ์น˜์— ํ•ฉ์ณ์„œ ๊ฐœ๋ฐœ๋ง์— ๋ฐฐํฌ์ค‘์ธ๋ฐ, ๊ฐœ๋ฐœ๋ง์— ๋ฐฐํฌ๋œ ๊ธฐ๋Šฅ/๋ฒ„๊ทธํ”ฝ์Šค ์ค‘์— ๋ช‡๊ฐœ ์ปจํŽŒ๋œ ๊ฒƒ๋งŒ ํ”„๋กœ๋•์…˜์— ๋ฐฐํฌํ•˜๊ณ  ์‹ถ์–ด์š”. ์ปค๋ฐ‹์„ ๊ฐ€๋Šฅํ•˜๋ฉด ์ž˜๊ฒŒ ์ชผ๊ฐœ์„œ ํ•˜๋Š” ํŽธ์ด๊ธด ํ•œ๋ฐ, ์ปจํŽŒ๋œ ๊ฒƒ๋งŒ ํ•œ๋•€ํ•œ๋•€ ๊ณจ๋ผ์„œ ์ฒด๋ฆฌํ”ฝํ•˜๋‹ค๋ณด๋‹ˆ๊นŒ ๊ด€๋ฆฌํ•˜๋Š”๊ฒŒ ์—ฌ๊ฐ„ ๊ท€์ฐฎ์€๊ฒŒ ์•„๋‹ˆ๋„ค์š”. ์˜ค์ฃฝํ•˜๋ฉด ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ๋กœ ๊ด€๋ฆฌํ•  ์ •๋„์ž…๋‹ˆ๋‹ค -_-;;;

์ปค๋ฐ‹ ์ค‘ ๋ช‡๊ฐœ๋Š” ์„œ๋กœ ๋…๋ฆฝ์ ์ด๊ธด ํ•œ๋ฐ, ๋ช‡๊ฐœ๋Š” ๋น„์—”๋‚˜์†Œ์„ธ์ง€๋งˆ๋ƒฅ ์ค„์ค„์ด ์˜์กด์„ฑ์ด ์—ฎ์—ฌ์žˆ์–ด์š”. ์ค„์ค„์ด ์˜์กด์„ฑ์ด ์—ฎ์—ฌ์žˆ๊ธดํ•ด๋„, ๊ฐ€๋งŒํžˆ ๋ณด๋ฉด A๊ธฐ๋Šฅ / B๊ธฐ๋Šฅ ์ž˜๊ฐœ ์ชผ๊ฐœ์ ธ์žˆ๊ธด ํ•ด์„œ, ๊ทธ๊ฑธ ์ข€ ๋” ๋ณด๊ธฐ์ข‹๊ฒŒ ์‹œ๊ฐํ™”ํ•˜๊ณ  ์‹ถ์–ด์š”. staging ๋ธŒ๋žœ์น˜์— PR ๋จธ์ง€ํ• ๋•Œ๋„ ์ผ๋ถ€๋Ÿฌ Squash and merge๋กœ ๋จธ์ง€ํ•ฉ๋‹ˆ๋‹ค.

ํ•œ์ค„ ์š”์•ฝ

  • ์˜๋„์ ์œผ๋กœ ์ปค๋ฐ‹ ๊ฐ„์˜ ์—ฐ๊ฒฐ๊ด€๊ณ„๋ฅผ ๋””ํŽœ๋˜์‹œ ๊ทธ๋ž˜ํ”„ ํ˜•ํƒœ๋กœ ๊ฐ€์‹œํ™”ํ•  ์ˆ˜ ์žˆ๋Š” Git ์œ ํ‹ธ๋ฆฌํ‹ฐ ์ถ”์ฒœ๋ฐ›์Šต๋‹ˆ๋‹ค.

@kodingwarriorJaeyeol Lee ์„œ๋กœ ๋…๋ฆฝ์ ์ด์ง€ ์•Š์€ ์ปค๋ฐ‹๋“ค์„ ์ฒด๋ฆฌํ”ผํ‚นํ•ด์•ผ ํ•˜๋Š” ์ƒํ™ฉ์ž์ฒด๊ฐ€ ์–ด๋ ค์šด๊ฑฐ ๊ฐ™๋„ค์š”. ๊ทธ๋Ÿฐ ์ƒํ™ฉ์— ์ฒ˜ํ•˜๋Š”๊ฑธ ํ”ผํ•ด์•ผํ•œ๋‹ค๋Š” ์†ํŽธํ•œ ์ด์•ผ๊ธฐ๋Š” ์•„๋‹™๋‹ˆ๋‹ค. ๋‹จ์ง€ ์ข‹์€ ํ•ด๊ฒฐ์ฑ…์ด ๋งˆ๋ จ๋˜์–ด ์žˆ์„์ง€์— ๋Œ€ํ•ด ์ข€ ์˜๋ฌธ์ด์—์š”.

0

vim.kr ๋””์Šค์ฝ”๋“œ์—๋„ ๋ฌผ์–ด๋ณด๊ธด ํ–ˆ๋Š”๋ฐ, ํ•ด์ปค์ŠคํŽ์—๋„ ๊ณต๊ฐœ์ ์œผ๋กœ ๋ฌผ์–ด๋ด…๋‹ˆ๋‹ค.

Git ๊ด€๋ จ ์œ ํ‹ธ๋ฆฌํ‹ฐ ์ค‘์— ์ด๋Ÿฐ๊ฑฐ ์—†์„๊นŒ์š”?

๊ฐœ๋ฐœ๋œ ๊ธฐ๋Šฅ๋“ค์€ ์–ด์ง€๊ฐ„ํ•˜๋ฉด ์‹น ๋‹ค Staging ๋ธŒ๋žœ์น˜์— ํ•ฉ์ณ์„œ ๊ฐœ๋ฐœ๋ง์— ๋ฐฐํฌ์ค‘์ธ๋ฐ, ๊ฐœ๋ฐœ๋ง์— ๋ฐฐํฌ๋œ ๊ธฐ๋Šฅ/๋ฒ„๊ทธํ”ฝ์Šค ์ค‘์— ๋ช‡๊ฐœ ์ปจํŽŒ๋œ ๊ฒƒ๋งŒ ํ”„๋กœ๋•์…˜์— ๋ฐฐํฌํ•˜๊ณ  ์‹ถ์–ด์š”. ์ปค๋ฐ‹์„ ๊ฐ€๋Šฅํ•˜๋ฉด ์ž˜๊ฒŒ ์ชผ๊ฐœ์„œ ํ•˜๋Š” ํŽธ์ด๊ธด ํ•œ๋ฐ, ์ปจํŽŒ๋œ ๊ฒƒ๋งŒ ํ•œ๋•€ํ•œ๋•€ ๊ณจ๋ผ์„œ ์ฒด๋ฆฌํ”ฝํ•˜๋‹ค๋ณด๋‹ˆ๊นŒ ๊ด€๋ฆฌํ•˜๋Š”๊ฒŒ ์—ฌ๊ฐ„ ๊ท€์ฐฎ์€๊ฒŒ ์•„๋‹ˆ๋„ค์š”. ์˜ค์ฃฝํ•˜๋ฉด ์Šคํ”„๋ ˆ๋“œ์‹œํŠธ๋กœ ๊ด€๋ฆฌํ•  ์ •๋„์ž…๋‹ˆ๋‹ค -_-;;;

์ปค๋ฐ‹ ์ค‘ ๋ช‡๊ฐœ๋Š” ์„œ๋กœ ๋…๋ฆฝ์ ์ด๊ธด ํ•œ๋ฐ, ๋ช‡๊ฐœ๋Š” ๋น„์—”๋‚˜์†Œ์„ธ์ง€๋งˆ๋ƒฅ ์ค„์ค„์ด ์˜์กด์„ฑ์ด ์—ฎ์—ฌ์žˆ์–ด์š”. ์ค„์ค„์ด ์˜์กด์„ฑ์ด ์—ฎ์—ฌ์žˆ๊ธดํ•ด๋„, ๊ฐ€๋งŒํžˆ ๋ณด๋ฉด A๊ธฐ๋Šฅ / B๊ธฐ๋Šฅ ์ž˜๊ฐœ ์ชผ๊ฐœ์ ธ์žˆ๊ธด ํ•ด์„œ, ๊ทธ๊ฑธ ์ข€ ๋” ๋ณด๊ธฐ์ข‹๊ฒŒ ์‹œ๊ฐํ™”ํ•˜๊ณ  ์‹ถ์–ด์š”. staging ๋ธŒ๋žœ์น˜์— PR ๋จธ์ง€ํ• ๋•Œ๋„ ์ผ๋ถ€๋Ÿฌ Squash and merge๋กœ ๋จธ์ง€ํ•ฉ๋‹ˆ๋‹ค.

ํ•œ์ค„ ์š”์•ฝ

  • ์˜๋„์ ์œผ๋กœ ์ปค๋ฐ‹ ๊ฐ„์˜ ์—ฐ๊ฒฐ๊ด€๊ณ„๋ฅผ ๋””ํŽœ๋˜์‹œ ๊ทธ๋ž˜ํ”„ ํ˜•ํƒœ๋กœ ๊ฐ€์‹œํ™”ํ•  ์ˆ˜ ์žˆ๋Š” Git ์œ ํ‹ธ๋ฆฌํ‹ฐ ์ถ”์ฒœ๋ฐ›์Šต๋‹ˆ๋‹ค.

@kodingwarriorJaeyeol Lee ์‹œ๊ฐํ™” ๋„๊ตฌ๋Š” ์•„๋‹ˆ์ง€๋งŒ, ๊ทธ๋ฆฌ๊ณ  ์ œ๊ฐ€ ์จ ๋ณธ ๊ฑด ์•„๋‹ˆ์ง€๋งŒ GitButler๊ฐ€ ๊ทธ๋Ÿฐ ์ข…๋ฅ˜์˜ ์ž‘์—…์„ ํŽธํ•˜๊ฒŒ ํ•ด์ฃผ๋Š” ๋„๊ตฌ๋ผ๊ณ  ๋“ฃ๊ธด ํ–ˆ๋˜ ๊ฒƒ ๊ฐ™์•„์š”.

0

Hello @MastodonEngineering,

I wanted to share some feedback on the documentation provided in the Highlighting Journalism on Mastodon blog post.

Specifically, in The technical section, the example code for the fediverse:creator meta tag is given as:

<meta name="fediverse:creator" content="@Gargron@mastodon.social" />

Based on my testing (and that of others), Mastodon doesn't seem to recognize the creator link correctly when the leading @ is present in the content attribute. It only works when the @ is removed, like this:

<meta name="fediverse:creator" content="Gargron@mastodon.social" />

Following the blog's example directly led to some wasted time figuring out why it wasn't working. It would be great if either the example in the blog post could be corrected to reflect the current requirement, or if Mastodon's parser could be made more flexible to accept the handle with or without the leading @.

Appreciate all you do for !

0

์˜ฌํ•ด๋„ ๋ฒŒ์จ 25%๋‚˜ ์ง€๋‚˜๊ฐ”๋‹ค๋Š” ์‚ฌ์‹ค์ด ๋ฏฟ๊ธฐ์ง€ ์•Š๋„ค์š”. ๊ทธ๋ž˜๋„ ํ•œ ๊ฑด ๋งŽ๊ฒ ์ง€ ์‹ถ์–ด์„œ 1๋ถ„๊ธฐ์— ํ–ˆ๋˜ ์ผ๋“ค์„ ํšŒ๊ณ ๋กœ ์ •๋ฆฌํ•ด ๋ดค์Šต๋‹ˆ๋‹ค.

https://hoonieblog.xyz/blog/retro-2025-q1

0

Polymarket ๋“ฑ์˜ ์˜ˆ์ธก ์‹œ์žฅ์—๋Š” ์˜ค๋ผํด ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค. ๋ธ”๋ก์ฒด์ธ์œผ๋กœ ๋งŒ๋“ค์–ด๋ดค์ž, ์–ด์ฐจํ”ผ ๋ฒ ํŒ…์˜ ์ŠนํŒจ๋ฅผ ๊ฒฐ์ •ํ•˜๋ ค๋ฉด ์™ธ๋ถ€์—์„œ ๋”ธ๊น ํ•ด์ค˜์•ผํ•œ๋‹ค. ๊ฐ€๋ น 4์›” ๋‚ด์— ํƒ„ํ•ต์ด ์ด๋ค„์งˆ๊ฑฐ๋ƒ ๋งˆ๋ƒ ๊ฐ™์€ ๊ฒŒ์ž„์„ ์ƒ์ƒํ•˜๋ฉด ๋œ๋‹ค. ๊ทธ ๋”ธ๊ฐํ•˜๋Š” ์‚ฌ๋žŒ์„ ์–ด๋–ป๊ฒŒ ๋ฏฟ์„์ˆ˜ ์žˆ๋ƒ๋Š” ๋ฌธ์ œ๊ฐ€ ์˜ค๋ผํด ๋ฌธ์ œ๋‹ค.

์˜ค๋ผํด ๋ฌธ์ œ๊ฐ€ ์—†๋Š” ์˜ˆ์ธก ์‹œ์žฅ์ด ํ•˜๋‚˜ ์ƒ๊ฐ๋‚ฌ๋Š”๋ฐ, ๋ฐ”๋กœ ์ˆ˜ํ•™ ๋ฌธ์ œ๊ฐ€ ์–ธ์ œ ํ’€๋ฆด ๊ฒƒ์ด๋ƒ์— ๋Œ€ํ•œ ๊ฒƒ์ด๋‹ค. ๊ฐ€๋ น ๋ฆฌ๋งŒ ๊ฐ€์„ค์ด ์•ž์œผ๋กœ 1,000,000 ๋ธ”๋ก ๋‚ด์— ํ’€๋ฆด์ง€, ๋˜๋Š” P=NP๋ž‘ ๋‘˜ ์ค‘์— ๋ญ๊ฐ€ ๋จผ์ € ํ’€๋ฆด์ง€ ๋“ฑ์— ๋Œ€ํ•œ ๊ฒƒ์ด๋‹ค. ์—ฌ๊ธฐ์„œ ํ’€๋ฆฌ๋Š”๊ฑด Lean ๋“ฑ์œผ๋กœ ์ž‘์„ฑ๋œ Formal Proof์„ ํ†ตํ•ด์„œ ์˜จ์ฒด์ธ์œผ๋กœ ํŒ๋‹จํ•œ๋‹ค.

์ˆ˜ํ•™์ž๋“ค์€ ์ž์‹ ์ด ๋ฒ ํŒ…์„ ๊ฑธ์–ด๋†“๊ณ  ์—ฐ๊ตฌ๋ฅผ ์—ด์‹ฌํžˆํ•ด์„œ ๋ˆ์„ ๋ฒŒ ์ˆ˜๋„ ์žˆ๋‹ค. ๋˜ ์ง์ ‘ ์—ฐ๊ตฌ๋ฅผ ํ•˜์ง€ ์•Š๋”๋ผ๋„ GPU๋ฅผ ์‚ฌ์„œ ์ž์‹ ์˜ ๋ฒ ํŒ…์— ์œ ๋ฆฌํ•˜๋„๋ก ์—ฐ๊ตฌ์— ๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ๋‹ค. ์•ž์„œ ๊ทธ๋ƒฅ ์œ ๋ช…ํ•˜๋‹จ ์ด์œ ๋กœ ๋„ˆ๋ฌด ๊ฑฐ์ฐฝํ•œ ๋ฌธ์ œ๋ฅผ ์˜ˆ์‹œ๋กœ ๋“ค์—ˆ๋Š”๋ฐ, ๊ทธ๋ณด๋‹ค๋Š” ๋” ์ž‘๊ณ  ์‰ฌ์šด ๋งŽ์€ ๋ฌธ์ œ๋“ค์— ๋Œ€ํ•ด ์ด๋Ÿฐ ์‹์˜ ๊ฒฝ์ œ๊ฐ€ ๋Œ์•„๊ฐ€๋Š”๊ฑธ ์ƒ์ƒํ•ด๋ณด์ž. ์—ฐ๊ตฌ์— ๋“ค์–ด๊ฐ€๋Š” ์ž์› ๋ฐฐ๋ถ„์ด ์ตœ์ ํ™”๋˜์ง€ ์•Š์„๊นŒ?

@bglbgl gwyng ๊ฐœ์ธ์ ์œผ๋กœ๋Š” ์˜ค๋ผํด์ด ํ•„์ˆ˜์ ์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋ธ”๋ก์ฒด์ธ์œผ๋กœ ๋งŒ๋“ค๋ฉด ์•ˆ ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ˜‚ ๊ด€๋ จ๋œ ์ฃผ์ œ๋กœ ใ€ˆํƒˆ์ค‘์•™ ๊ฒŒ์ž„, ๊ทธ๋ฆฌ๊ณ  ๋ธ”๋ก์ฒด์ธ๊ณผ NFTใ€‰๋ผ๋Š” ๊ธ€์„ ์˜ˆ์ „์— ์“ด ๋ฐ” ์žˆ์Šต๋‹ˆ๋‹ค.

0

@bglbgl gwyng ๊ฐœ์ธ์ ์œผ๋กœ๋Š” ์˜ค๋ผํด์ด ํ•„์ˆ˜์ ์ธ ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์€ ์ฒ˜์Œ๋ถ€ํ„ฐ ๋ธ”๋ก์ฒด์ธ์œผ๋กœ ๋งŒ๋“ค๋ฉด ์•ˆ ๋œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. ๐Ÿ˜‚ ๊ด€๋ จ๋œ ์ฃผ์ œ๋กœ ใ€ˆํƒˆ์ค‘์•™ ๊ฒŒ์ž„, ๊ทธ๋ฆฌ๊ณ  ๋ธ”๋ก์ฒด์ธ๊ณผ NFTใ€‰๋ผ๋Š” ๊ธ€์„ ์˜ˆ์ „์— ์“ด ๋ฐ” ์žˆ์Šต๋‹ˆ๋‹ค.

0

์–ด๋–ค. ์ผ์„ '์‹ค์ œ๋กœ ํ•˜๋Š” ๊ฒƒ'๊ณผ 'ํ•˜๋Š” ๊ฒƒ ๊ฐ™์€ ๋А๋‚Œ์„ ๋ฐ›๋Š” ๊ฒƒ'์„ ํ—›๊ฐˆ๋ฆฌ๋ฉด ํฐ์ผ๋‚œ๋‹ค.

0
0

Polymarket ๋“ฑ์˜ ์˜ˆ์ธก ์‹œ์žฅ์—๋Š” ์˜ค๋ผํด ๋ฌธ์ œ๊ฐ€ ์žˆ๋‹ค. ๋ธ”๋ก์ฒด์ธ์œผ๋กœ ๋งŒ๋“ค์–ด๋ดค์ž, ์–ด์ฐจํ”ผ ๋ฒ ํŒ…์˜ ์ŠนํŒจ๋ฅผ ๊ฒฐ์ •ํ•˜๋ ค๋ฉด ์™ธ๋ถ€์—์„œ ๋”ธ๊น ํ•ด์ค˜์•ผํ•œ๋‹ค. ๊ฐ€๋ น 4์›” ๋‚ด์— ํƒ„ํ•ต์ด ์ด๋ค„์งˆ๊ฑฐ๋ƒ ๋งˆ๋ƒ ๊ฐ™์€ ๊ฒŒ์ž„์„ ์ƒ์ƒํ•˜๋ฉด ๋œ๋‹ค. ๊ทธ ๋”ธ๊ฐํ•˜๋Š” ์‚ฌ๋žŒ์„ ์–ด๋–ป๊ฒŒ ๋ฏฟ์„์ˆ˜ ์žˆ๋ƒ๋Š” ๋ฌธ์ œ๊ฐ€ ์˜ค๋ผํด ๋ฌธ์ œ๋‹ค.

์˜ค๋ผํด ๋ฌธ์ œ๊ฐ€ ์—†๋Š” ์˜ˆ์ธก ์‹œ์žฅ์ด ํ•˜๋‚˜ ์ƒ๊ฐ๋‚ฌ๋Š”๋ฐ, ๋ฐ”๋กœ ์ˆ˜ํ•™ ๋ฌธ์ œ๊ฐ€ ์–ธ์ œ ํ’€๋ฆด ๊ฒƒ์ด๋ƒ์— ๋Œ€ํ•œ ๊ฒƒ์ด๋‹ค. ๊ฐ€๋ น ๋ฆฌ๋งŒ ๊ฐ€์„ค์ด ์•ž์œผ๋กœ 1,000,000 ๋ธ”๋ก ๋‚ด์— ํ’€๋ฆด์ง€, ๋˜๋Š” P=NP๋ž‘ ๋‘˜ ์ค‘์— ๋ญ๊ฐ€ ๋จผ์ € ํ’€๋ฆด์ง€ ๋“ฑ์— ๋Œ€ํ•œ ๊ฒƒ์ด๋‹ค. ์—ฌ๊ธฐ์„œ ํ’€๋ฆฌ๋Š”๊ฑด Lean ๋“ฑ์œผ๋กœ ์ž‘์„ฑ๋œ Formal Proof์„ ํ†ตํ•ด์„œ ์˜จ์ฒด์ธ์œผ๋กœ ํŒ๋‹จํ•œ๋‹ค.

์ˆ˜ํ•™์ž๋“ค์€ ์ž์‹ ์ด ๋ฒ ํŒ…์„ ๊ฑธ์–ด๋†“๊ณ  ์—ฐ๊ตฌ๋ฅผ ์—ด์‹ฌํžˆํ•ด์„œ ๋ˆ์„ ๋ฒŒ ์ˆ˜๋„ ์žˆ๋‹ค. ๋˜ ์ง์ ‘ ์—ฐ๊ตฌ๋ฅผ ํ•˜์ง€ ์•Š๋”๋ผ๋„ GPU๋ฅผ ์‚ฌ์„œ ์ž์‹ ์˜ ๋ฒ ํŒ…์— ์œ ๋ฆฌํ•˜๋„๋ก ์—ฐ๊ตฌ์— ๋„์›€์„ ์ค„ ์ˆ˜ ์žˆ๋‹ค. ์•ž์„œ ๊ทธ๋ƒฅ ์œ ๋ช…ํ•˜๋‹จ ์ด์œ ๋กœ ๋„ˆ๋ฌด ๊ฑฐ์ฐฝํ•œ ๋ฌธ์ œ๋ฅผ ์˜ˆ์‹œ๋กœ ๋“ค์—ˆ๋Š”๋ฐ, ๊ทธ๋ณด๋‹ค๋Š” ๋” ์ž‘๊ณ  ์‰ฌ์šด ๋งŽ์€ ๋ฌธ์ œ๋“ค์— ๋Œ€ํ•ด ์ด๋Ÿฐ ์‹์˜ ๊ฒฝ์ œ๊ฐ€ ๋Œ์•„๊ฐ€๋Š”๊ฑธ ์ƒ์ƒํ•ด๋ณด์ž. ์—ฐ๊ตฌ์— ๋“ค์–ด๊ฐ€๋Š” ์ž์› ๋ฐฐ๋ถ„์ด ์ตœ์ ํ™”๋˜์ง€ ์•Š์„๊นŒ?

0

@bglbgl gwyng ํ•ด์ปค์ŠคํŽ์—์„œ ์ธ์šฉํ•˜๊ณ  ์‹ถ์€ ๊ธ€์˜ ๋งํฌ๋ฅผ ๊ธ€ ์ž‘์„ฑ๋ž€์— ๋ถ™์—ฌ ๋„ฃ๊ธฐ ํ•˜๋ฉด ์ธ์šฉ์„ ์ธ์‹ํ•ด์„œ ์ธ์šฉ ์—ฌ๋ถ€๋ฅผ ๋ฌผ์–ด๋ด…๋‹ˆ๋‹ค.

0

์ธ์šฉRT ์–ด๋–ป๊ฒŒ ํ•˜๋Š”๊ฑธ๊นŒ์š”? ์ €๋งŒ ๋ชจ๋ฅด๊ฑฐ๋‚˜, ๊ทธ๊ฒŒ ์•„๋‹ˆ๋ผ๋ฉด ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ข€๋” ์•Œ๊ธฐ์‰ฝ๊ฒŒ ํ•˜๋ฉด ์ข‹์„๊ฑฐ ๊ฐ™์Šต๋‹ˆ๋‹ค

0

๋ณ„ ๊ฒƒ ์•„๋‹ˆ์ง€๋งŒ, Markdown ๋ฌธ๋ฒ• ๊ฐ€์ด๋“œ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. Markdown์„ ๋ชจ๋ฅด๋Š” ๋ถ„๋“ค์€ ๊ฑฐ์˜ ์—†๊ฒ ์ง€๋งŒ, Hackers' Pub์€ Markdown ํ™•์žฅ ๋ฌธ๋ฒ•์„ ๊ฝค ๋งŽ์ด ์ง€์›ํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ์ด๋ฅผ ๋ฌธ์„œํ™”ํ•  ํ•„์š”๊ฐ€ ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.

๋‹จ๋ฌธ ์ž‘์„ฑ ํ™”๋ฉด์—์„œ โ€œ์ด๋ฏธ์ง€ ์—…๋กœ๋“œโ€ ๋ฒ„ํŠผ ์™ผ์ชฝ์˜ โ€œMarkdown ์‚ฌ์šฉ ๊ฐ€๋Šฅโ€ ๋งํฌ๋ฅผ ๋ˆ„๋ฅด์‹œ๋ฉด ์–ธ์ œ๋“ ์ง€ Markdown ๋ฌธ๋ฒ• ๊ฐ€์ด๋“œ๋ฅผ ๋ณด์‹ค ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

0

@bglbgl gwyng @disjukrใ„น CSS์—์„œ ๊ทธ๋ ‡๊ฒŒ ๋ญ”๊ฐ€ ์—ฐ์‚ฐ์„ ํ•ด์„œ ์Šคํƒ€์ผ์„ ์ ์šฉํ•˜๋Š” ๋กœ์ง์€ ์—†์„ ๊ฑธ์š”? ์—ฌ๊ธฐ์„œ๋Š” .box2๊ฐ€ .box1๋ณด๋‹ค ๋‚˜์ค‘์— ์„ ์–ธ๋๊ธฐ ๋•Œ๋ฌธ์— d1๊ณผ d2 ๋ชจ๋‘ .box2๊ฐ€ ์ ์šฉ๋ฉ๋‹ˆ๋‹ค.

@curry๋ฐ•์ค€๊ทœ @disjukrใ„น ์–ด๋ผ??? ์™œ ๋ฐฉ๊ธˆ ์‹คํ—˜ํ–ˆ๋”๋‹ˆ ๊ฒฐ๊ณผ๊ฐ€ ๋‹ค๋ฅด๊ฒŒ ๋‚˜์˜ค์ฃ . ๋ง์”€ํ•˜์‹ ๋ฐ๋กœ์š”. ์ œ๊ฐ€ ์–ธ๊ธ‰ํ•œ ๊ทœ์น™๋Œ€๋กœ๋ฉด ์นญ์ฐฌํ•˜๋ ค๊ณ ํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋ญ์ง€?!

0

React Native์—์„  ์„ค๊ณ„๋ฅผ ๋ณด๊ณ  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ๊ณ ๋ฅผ ์ˆ˜๊ฐ€ ์—†๋‹ค. ๋ญ”๊ฐ€ ๋Œ์•„๊ฐ€๊ธดํ•˜๋Š”๊ฒŒ ์žˆ๋‹ค๋ฉด ๊ทธ๊ฑธ ์จ์•ผํ•œ๋‹ค. react-navigation์˜ ๋””์ž์ธ์„ ๋„์ €ํžˆ ์ดํ•ด๋ชปํ•˜๊ฒ ๋Š”๋ฐ ๋‹ค๋ฅธ ์„ ํƒ์ง€๊ฐ€ ์—†๋Š”๊ฒŒ ์˜ˆ์‹œ๋‹ค.

0

์—˜๋ฆฌ๋จผํŠธ์˜ ํด๋ž˜์Šค ๋ชฉ๋ก์—์„œ ์ˆœ์„œ๋Š” ์˜๋ฏธ๊ฐ€ ์—†๊ณ  ์ง‘ํ•ฉ์ฒ˜๋Ÿผ๋งŒ ์ž‘๋™ํ•˜๊ธฐ ๋•Œ๋ฌธ์— (์„ ์–ธ ์ˆœ์„œ๊ฐ€ ์˜ํ–ฅ์„ ์ฃผ๋Š”๊ฑด css rule๋งŒ ํ•ด๋‹น) d1๊ณผ ๋˜‘๊ฐ™์ด ์ ์šฉ๋  ๊ฒƒ ๊ฐ™์•„์š”.

0

@kodingwarrior ๋งŽ์ด๋“ค ์“ฐ๋Š” firebase ๋“ฑ๊ณผ ๋น„๊ตํ•ด์„œ ์–ด๋–ค ํŠน์žฅ์ ์ด ์žˆ๋‚˜์š”? ์‚ฌ์‹ค ์šด์˜์„ ๋ณธ๊ฒฉ์ ์œผ๋กœ ์•ˆํ•ด๋ด์„œ ์ž˜ ๋ชจ๋ฆ…๋‹ˆ๋‹ค.

@bglbgl gwyng ํŒŒ์ด์–ด๋ฒ ์ด์Šค๋ž‘์€ ๊ฒฐ์ด ์ข€ ๋‹ค๋ฅธ ๊ฒƒ ๊ฐ™๊ตฌ์š”. ๊ทธ๋‚˜๋งˆ ๋น„๊ต๋ฅผ ํ• ๋งŒํ•˜๋‹ค๋ฉด, ๊ตฌ๊ธ€ ์• ๋„๋ฆฌํ‹ฑ์Šค๋ž‘ ๊ทธ๋‚˜๋งˆ ๋น„๊ต๊ฐ€ ๊ฐ€๋Šฅํ•  ๊ฒƒ ๊ฐ™์€๋ฐ, posthog๋Š” ํผ๋„ ๋ถ„์„์€ ๊น”๊ณ  ๊ฐ€๋Š”๊ฑฐ๊ณ  ๋ฉ”ํŠธ๋ฆญ๋ณ„๋กœ ์ฟผ๋ฆฌ๋ฅผ ๋‚ ๋ ค๋ณด๊ณ  ๊ทธ๊ฑธ๋กœ ์ฐจํŠธ๋„ ๋ฝ‘์•„๋ณผ ์ˆ˜ ์žˆ์–ด์šฅ.

0

๊ฐœ์ธํ”„๋กœ์ ํŠธ ์–ด๋”˜๊ฐ€์— posthog.com/ ๋ถ™์ด๊ณ  ์‹ถ์€๋ฐ ๋ญ”๊ฐ€ ์„œ๋น™ํ•˜๊ณ  ์žˆ๋Š”๊ฒŒ ํ•˜๋‚˜๋„ ์—†์Œ....... ํ”Œ๋Ÿฌํ„ฐ์•ฑ ์ถœ์‹œํ•˜๋ฉด ์ข€ ๋„ฃ์–ด๋ณผ๊นŒ

@kodingwarrior ๋งŽ์ด๋“ค ์“ฐ๋Š” firebase ๋“ฑ๊ณผ ๋น„๊ตํ•ด์„œ ์–ด๋–ค ํŠน์žฅ์ ์ด ์žˆ๋‚˜์š”? ์‚ฌ์‹ค ์šด์˜์„ ๋ณธ๊ฒฉ์ ์œผ๋กœ ์•ˆํ•ด๋ด์„œ ์ž˜ ๋ชจ๋ฆ…๋‹ˆ๋‹ค.

0

๋“œ๋””์–ด ๋‹จ๋ฌธ ์ž…๋ ฅ๋ž€์— โ€œ์ด๋ฏธ์ง€ ์—…๋กœ๋“œโ€ ๋ฒ„ํŠผ์ด ์ƒ๊ฒผ์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด์—๋„ ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ๋Š” ๊ฐ€๋Šฅํ–ˆ์ง€๋งŒ ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ์„ ํ•˜๊ฑฐ๋‚˜ ํด๋ฆฝ๋ณด๋“œ์—์„œ ๋ถ™์—ฌ๋„ฃ๊ธฐ๋ฅผ ํ•ด์•ผ ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์—, ํŠนํžˆ ๋ชจ๋ฐ”์ผ ๊ฐ™์€ ํ™˜๊ฒฝ์—์„œ๋Š” ๋ถˆํŽธํ•จ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ๋Š” ๋ฒ„ํŠผ์„ ๋ˆ„๋ฅด๋ฉด ์ด๋ฏธ์ง€ ํŒŒ์ผ์„ ์„ ํƒํ•˜๋Š” ์ฐฝ์ด ๋œจ๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ ๋กœ ์ด ๊ธฐ๋Šฅ์€ 100% Claude Code๋กœ ๊ตฌํ˜„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ปค๋ฐ‹๊นŒ์ง€๋„์š”. ์ œ๊ฐ€ ํ•œ ์ผ์€ ๋‹ค์Œ ํ”„๋กฌํ”„ํŠธ๋ฅผ ์ ์€ ๊ฒƒ ๋ฟ์ž…๋‹ˆ๋‹ค:

ํ˜„์žฌ๋Š” Composer ์ปดํฌ๋„ŒํŠธ์— ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ ๊ธฐ๋Šฅ์ด ์žˆ๊ธด ํ•˜์ง€๋งŒ 1) ๋“œ๋ž˜๊ทธ ์•ค ๋“œ๋กญ์„ ํ•˜๊ฑฐ๋‚˜ 2) ํด๋ฆฝ๋ณด๋“œ์—์„œ ๋ถ™์—ฌ๋„ฃ๊ธฐ๋ฅผ ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ ๊ธฐ๋Šฅ์ด ์žˆ๋‹ค๋Š” ๊ฑธ ์ธ์ง€์กฐ์ฐจ ๋ชปํ•˜๋Š” ๊ฒฝ์šฐ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฅผ ๊ฐœ์„ ํ•˜๊ธฐ ์œ„ํ•ด, ๋ช…์‹œ์ ์ธ ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ ๋ฒ„ํŠผ์„ ์ถ”๊ฐ€ํ•˜๋ ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๊ธฐ์กด์˜ ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ ๊ธฐ๋Šฅ์„ ๋ง๊ฐ€๋œจ๋ฆฌ์ง€ ์•Š์œผ๋ฉด์„œ ๋™์ž‘ํ•˜๋Š” ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ ๋ฒ„ํŠผ์„ ๊ตฌํ˜„ํ•ด ์ฃผ์‹ค ์ˆ˜ ์žˆ์„๊นŒ์š”? ์ฐธ๊ณ ๋กœ UI ํ”„๋ ˆ์ž„์›Œํฌ๋Š” Preact๋ฅผ ์“ฐ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ฝ”๋“œ ๋‚ด ์ฃผ์„์€ ์˜์–ด๋กœ ์ž‘์„ฑํ•ด ์ฃผ์„ธ์š”.

๊ตฌ์ฒด์ ์ธ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์ด ๊ถ๊ธˆํ•˜์‹  ๋ถ„์€ dfa9091ed32536fe8e8c22d57b56b3dd191290ec ์ปค๋ฐ‹์„ ํ™•์ธํ•ด ๋ณด์„ธ์š”.

Hackers' Pub์˜ ์ƒˆ๋กœ์šด ๋‹จ๋ฌธ ์ž‘์„ฑ๋ž€. โ€œ๋ฏธ๋ฆฌ๋ณด๊ธฐโ€ ๋ฒ„ํŠผ ์™ผ์ชฝ์— โ€œ์ด๋ฏธ์ง€ ์—…๋กœ๋“œโ€ ๋ฒ„ํŠผ์ด ๋ณด์ธ๋‹ค.
0

ramen.tools/wiki/korean-fedive

ํ•œ๊ตญ ์—ฐํ•ฉ์šฐ์ฃผ ์ธ์Šคํ„ด์Šค ๋ชฉ๋ก์„ ๋งŒ๋“ค๊ณ  ์žˆ์–ด์š”!

์—ฌ๋Ÿฌ๋ถ„์ด ์™€์„œ ์ถ”๊ฐ€ํ•  ์ˆ˜๋„ ์žˆ๊ณ 
๋‹ค์–‘ํ•œ ์˜๊ฒฌ ํ™˜์˜ํ•ด์š”!

0
0
2

bgl gwyng shared the below article:

์—ฐํ•ฉ์šฐ์ฃผ(fediverse)์™€ ActivityPub ํ”„๋กœํ† ์ฝœ ์ดํ•ดํ•˜๊ธฐ: ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ๊ฐ€์ด๋“œ

ๆดช ๆฐ‘ๆ†™ (Hong Minhee) @hongminhee@hackers.pub

์—ฐํ•ฉ์šฐ์ฃผ๋ž€ ๋ฌด์—‡์ผ๊นŒ?

X(๊ตฌ Twitter)๋‚˜ Instagram ๊ฐ™์€ ์ค‘์•™ํ™”๋œ ์†Œ์…œ ๋ฏธ๋””์–ด์— ์ง€์น˜์…จ๋‚˜์š”? ๋ฐ์ดํ„ฐ ํ”„๋ผ์ด๋ฒ„์‹œ, ์•Œ๊ณ ๋ฆฌ์ฆ˜ ์ถ”์ฒœ, ๊ทธ๋ฆฌ๊ณ  ๋Š์ž„์—†๋Š” ๊ด‘๊ณ ๊ฐ€ ๊ฑฑ์ •๋˜์‹œ๋‚˜์š”? ์—ฌ๊ธฐ ๋Œ€์•ˆ์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ”๋กœ ์—ฐํ•ฉ์šฐ์ฃผ(fediverse)์ž…๋‹ˆ๋‹ค.

ํŽ˜๋””๋ฒ„์Šค(fediverse)๋Š” โ€œfederatedโ€(์—ฐํ•ฉ๋œ)์™€ โ€œuniverseโ€(์šฐ์ฃผ)๋ฅผ ํ•ฉ์นœ ๋ง๋กœ, ํ•œ๊ตญ์–ด๊ถŒ์—์„œ๋Š” ์ฃผ๋กœ โ€œ์—ฐํ•ฉ์šฐ์ฃผโ€๋ผ๊ณ  ๋ถˆ๋ฆฝ๋‹ˆ๋‹ค. ์—ฐํ•ฉ์šฐ์ฃผ๋Š” ํ•˜๋‚˜์˜ ๊ฑฐ๋Œ€ํ•œ ํ”Œ๋žซํผ์ด ์•„๋‹Œ, ์„œ๋กœ ๋Œ€ํ™”ํ•  ์ˆ˜ ์žˆ๋Š” ๋…๋ฆฝ์ ์ธ ์„œ๋ฒ„(์ธ์Šคํ„ด์Šค)๋“ค์˜ ๋„คํŠธ์›Œํฌ์ž…๋‹ˆ๋‹ค.

์ด๊ฒŒ ์–ด๋–ป๊ฒŒ ๊ฐ€๋Šฅํ• ๊นŒ์š”? ๋ฐ”๋กœ ActivityPub์ด๋ผ๋Š” ํ”„๋กœํ† ์ฝœ ๋•๋ถ„์ž…๋‹ˆ๋‹ค. ์ด ํ”„๋กœํ† ์ฝœ์€ ์„œ๋กœ ๋‹ค๋ฅธ ์†Œ์…œ ๋ฏธ๋””์–ด ํ”Œ๋žซํผ์ด ์ •๋ณด๋ฅผ ๊ตํ™˜ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•ด์ฃผ๋Š” ๊ณตํ†ต ์–ธ์–ด ๊ฐ™์€ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

์—ฐํ•ฉ์šฐ์ฃผ๋Š” ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋‚˜์š”?

์—ฐํ•ฉ์šฐ์ฃผ๋ฅผ ์ดํ•ดํ•˜๋Š” ๊ฐ€์žฅ ์‰ฌ์šด ๋ฐฉ๋ฒ•์€ ์ด๋ฉ”์ผ ์‹œ์Šคํ…œ๊ณผ ๋น„๊ตํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Gmail ์‚ฌ์šฉ์ž๊ฐ€ ๋„ค์ด๋ฒ„ ๋ฉ”์ผ ์‚ฌ์šฉ์ž์—๊ฒŒ ์ด๋ฉ”์ผ์„ ๋ณด๋‚ผ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ์ฒ˜๋Ÿผ, Mastodon ์‚ฌ์šฉ์ž๋Š” Misskey๋‚˜ PeerTube ์‚ฌ์šฉ์ž์™€ ์†Œํ†ตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. (Mastodon, Misskey, PeerTube๊ฐ€ ๋ฌด์—‡์ธ์ง€๋Š” ์•„๋ž˜์—์„œ ์„ค๋ช…ํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. Gmail๊ณผ ๋„ค์ด๋ฒ„์ฒ˜๋Ÿผ ์„œ๋กœ ๋‹ค๋ฅธ ์„œ๋น„์Šค๋ผ๊ณ  ๋ณด์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.) ์ด๊ฒƒ์ด ๊ฐ€๋Šฅํ•œ ์ด์œ ๋Š” ์ด ์„œ๋น„์Šค๋“ค์ด ๋ชจ๋‘ ๊ฐ™์€ ์–ธ์–ด์ธ ActivityPub ํ”„๋กœํ† ์ฝœ๋กœ ๋Œ€ํ™”ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

์—ฐํ•ฉ์šฐ์ฃผ์—์„œ ์‚ฌ์šฉ์ž ID๋Š” @์‚ฌ์šฉ์ž๋ช…@์ธ์Šคํ„ด์Šค.๋„๋ฉ”์ธ ํ˜•์‹์œผ๋กœ ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฉ”์ผ ์ฃผ์†Œ์™€ ๋งค์šฐ ๋น„์Šทํ•˜์ฃ ? ์˜ˆ๋ฅผ ๋“ค๋ฉด:

  • @honggildong@mastodon.social: mastodon.social ์ธ์Šคํ„ด์Šค ์‚ฌ์šฉ์ž
  • @kimcheolsu@pixelfed.social: pixelfed.social ์ธ์Šคํ„ด์Šค ์‚ฌ์šฉ์ž
  • @leeyeonghui@misskey.io: misskey.io ์ธ์Šคํ„ด์Šค ์‚ฌ์šฉ์ž

์—ฐํ•ฉ์šฐ์ฃผ์˜ ๋‹ค์–‘ํ•œ ํ”Œ๋žซํผ ๋‘˜๋Ÿฌ๋ณด๊ธฐ

์—ฐํ•ฉ์šฐ์ฃผ๋Š” ๋งˆ์น˜ ์—ฌ๋Ÿฌ ํ–‰์„ฑ์œผ๋กœ ์ด๋ฃจ์–ด์ง„ ํƒœ์–‘๊ณ„ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๊ฐ ํ–‰์„ฑ(ํ”Œ๋žซํผ)์€ ๊ณ ์œ ํ•œ ํŠน์„ฑ์„ ๊ฐ€์ง€๊ณ  ์žˆ์ง€๋งŒ, ๋ชจ๋‘ ๊ฐ™์€ ์šฐ์ฃผ(์—ฐํ•ฉ์šฐ์ฃผ)์— ์†ํ•ด ์žˆ์ฃ . ์•„๋ž˜ ํ‘œ์—์„œ ์ฃผ์š” ํ”Œ๋žซํผ๋“ค์„ ์‚ดํŽด๋ด…์‹œ๋‹ค:

ํ”Œ๋žซํผ ์„ค๋ช… ์ฃผ์š” ์ธ์Šคํ„ด์Šค ํŠน์ง•
Mastodon X(๊ตฌ Twitter)์™€ ์œ ์‚ฌํ•œ ๋งˆ์ดํฌ๋กœ๋ธ”๋กœ๊น… ํ”Œ๋žซํผ โ€ข mastodon.social (๊ณต์‹ ์ธ์Šคํ„ด์Šค)
โ€ข ์šฐ๋ฆฌ.์ธ์ƒ (ํ•œ๊ตญ ์ค‘์‹ฌ)
500์ž ์ œํ•œ์˜ ์งง์€ ๊ฒŒ์‹œ๋ฌผ, ํ•ด์‹œํƒœ๊ทธ, ์ปจํ…์ธ  ๊ฒฝ๊ณ  ๊ธฐ๋Šฅ
Misskey ์ผ๋ณธ์—์„œ ๊ฐœ๋ฐœ๋œ ๊ณ ๋„๋กœ ์ปค์Šคํ„ฐ๋งˆ์ด์ง• ๊ฐ€๋Šฅํ•œ ๋งˆ์ดํฌ๋กœ๋ธ”๋กœ๊น… ํ”Œ๋žซํผ โ€ข misskey.io (๊ฐ€์žฅ ์ธ๊ธฐ ์žˆ๋Š” ์ผ๋ณธ ์ธ์Šคํ„ด์Šค)
โ€ข ์Šคํ…”๋ผ (ํ•œ๊ตญ ์ค‘์‹ฌ)
๋ฆฌ์•ก์…˜, ๊ฒŒ์ž„, ์ฑ„ํŒ… ๋“ฑ ๋‹ค์–‘ํ•œ ๊ธฐ๋Šฅ, ๋†’์€ ์ปค์Šคํ„ฐ๋งˆ์ด์ง• ๊ฐ€๋Šฅ์„ฑ
Pixelfed Instagram๊ณผ ์œ ์‚ฌํ•œ ์ด๋ฏธ์ง€ ๊ณต์œ  ํ”Œ๋žซํผ โ€ข pixelfed.social (๊ณต์‹ ์ธ์Šคํ„ด์Šค)
โ€ข ์ถ”์–ต:์‚ฌ์ง„ (ํ•œ๊ตญ ์ค‘์‹ฌ)
์Šคํ† ๋ฆฌ, ํ•„ํ„ฐ, ๋ฐœ๊ฒฌ ๊ธฐ๋Šฅ
PeerTube YouTube์™€ ์œ ์‚ฌํ•œ ๋น„๋””์˜ค ํ˜ธ์ŠคํŒ… ํ”Œ๋žซํผ โ€ข PeerTube.TV P2P ๊ธฐ์ˆ ๋กœ ๋น„๋””์˜ค ์ŠคํŠธ๋ฆฌ๋ฐ, ์ฑ„๋„, ์žฌ์ƒ๋ชฉ๋ก
WriteFreely ๋ฏธ๋‹ˆ๋ฉ€ํ•œ ๋ธ”๋กœ๊ทธ ํ”Œ๋žซํผ โ€ข write.as Markdown ์ง€์›, ์‹ฌํ”Œํ•œ ๋””์ž์ธ
Lemmy Reddit๊ณผ ์œ ์‚ฌํ•œ ๋งํฌ ์• ๊ทธ๋ฆฌ๊ฒŒ์ดํ„ฐ ๋ฐ ํ† ๋ก  ํ”Œ๋žซํผ โ€ข lemmy.ml
โ€ข YuruLemmy (ํ•œ๊ตญ ์ค‘์‹ฌ)
์ปค๋ฎค๋‹ˆํ‹ฐ(์„œ๋ธŒ๋ ˆ๋”ง๊ณผ ์œ ์‚ฌ), ํˆฌํ‘œ, ํ† ๋ก 

ํ”Œ๋žซํผ vs ์ธ์Šคํ„ด์Šค: ๋ฌด์Šจ ์ฐจ์ด๊ฐ€ ์žˆ์„๊นŒ?

์—ฐํ•ฉ์šฐ์ฃผ๋ฅผ ์ดํ•ดํ•  ๋•Œ ํ”ํžˆ ํ˜ผ๋™๋˜๋Š” ๊ฐœ๋…์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๋ฐ”๋กœ ํ”Œ๋žซํผ(์†Œํ”„ํŠธ์›จ์–ด)๊ณผ ์ธ์Šคํ„ด์Šค(์„œ๋ฒ„)์˜ ์ฐจ์ด์ธ๋ฐ์š”.

ํ”Œ๋žซํผ์€ Mastodon, Misskey, Pixelfed์™€ ๊ฐ™์€ ์†Œํ”„ํŠธ์›จ์–ด ์ž์ฒด๋ฅผ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ์ด๋“ค์€ ์˜คํ”ˆ ์†Œ์Šค ์†Œํ”„ํŠธ์›จ์–ด๋กœ, ๋ˆ„๊ตฌ๋‚˜ ๋‹ค์šด๋กœ๋“œ๋ฐ›์•„ ์„ค์น˜ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ธ์Šคํ„ด์Šค๋Š” ๊ทธ ์†Œํ”„ํŠธ์›จ์–ด๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๊ฐœ๋ณ„ ์„œ๋ฒ„๋ฅผ ๋งํ•ฉ๋‹ˆ๋‹ค. mastodon.social๊ณผ ์šฐ๋ฆฌ.์ธ์ƒ์€ ๋ชจ๋‘ Mastodon ํ”Œ๋žซํผ์„ ์‹คํ–‰ํ•˜๋Š” ๋ณ„๋„์˜ ์ธ์Šคํ„ด์Šค์ž…๋‹ˆ๋‹ค.

Meta์˜ Threads ๊ฐ™์€ ์ผ๋ถ€ ์„œ๋น„์Šค๋Š” ํ”Œ๋žซํผ๊ณผ ์ธ์Šคํ„ด์Šค๊ฐ€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค. ํ•˜์ง€๋งŒ ๋Œ€๋ถ€๋ถ„์˜ ์—ฐํ•ฉ์šฐ์ฃผ ์„œ๋น„์Šค๋Š” ์—ฌ๋Ÿฌ ์ธ์Šคํ„ด์Šค๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

์—ฐํ•ฉ์šฐ์ฃผ์˜ ๋งค๋ ฅ ํฌ์ธํŠธ

์—ฐํ•ฉ์šฐ์ฃผ๊ฐ€ ๊ฐ–๋Š” ๋ช‡ ๊ฐ€์ง€ ๋งค๋ ฅ์ ์ธ ํŠน์ง•์ด ์žˆ์Šต๋‹ˆ๋‹ค:

  1. ํƒˆ์ค‘์•™ํ™”: ํŠน์ • ๊ธฐ์—…์ด ๋ชจ๋“  ๋ฐ์ดํ„ฐ์™€ ๊ทœ์น™์„ ํ†ต์ œํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๊ฐ ์ธ์Šคํ„ด์Šค๋Š” ์ž์ฒด ๊ทœ์น™์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  2. ๋ฐ์ดํ„ฐ ์ฃผ๊ถŒ: ์ž์‹ ์˜ ๋ฐ์ดํ„ฐ์— ๋Œ€ํ•œ ๋” ๋งŽ์€ ํ†ต์ œ๊ถŒ์„ ๊ฐ€์งˆ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  3. ๊ฒ€์—ด ์ €ํ•ญ์„ฑ: ํ•œ ์ธ์Šคํ„ด์Šค๊ฐ€ ์ฐจ๋‹จ๋˜๋”๋ผ๋„ ๋‹ค๋ฅธ ์ธ์Šคํ„ด์Šค๋กœ ์‰ฝ๊ฒŒ ์ด๋™ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  4. ์ปค๋ฎค๋‹ˆํ‹ฐ ์ค‘์‹ฌ: ๊ฐ ์ธ์Šคํ„ด์Šค๋Š” ํŠน์ • ๊ด€์‹ฌ์‚ฌ๋‚˜ ์ง€์—ญ ์ปค๋ฎค๋‹ˆํ‹ฐ๋ฅผ ์ค‘์‹ฌ์œผ๋กœ ํ˜•์„ฑ๋ฉ๋‹ˆ๋‹ค.
  5. ๋‹ค์–‘์„ฑ: ๋‹ค์–‘ํ•œ ํ”Œ๋žซํผ๊ณผ ์ธ์Šคํ„ด์Šค๊ฐ€ ์กด์žฌํ•˜์—ฌ ์„ ํƒ์˜ ํญ์ด ๋„“์Šต๋‹ˆ๋‹ค.

์—ฐํ•ฉ์šฐ์ฃผ ์‹œ์ž‘ํ•˜๊ธฐ

์—ฐํ•ฉ์šฐ์ฃผ์— ์ฐธ์—ฌํ•˜๋Š” ๊ฒƒ์€ ์ƒ๊ฐ๋ณด๋‹ค ์‰ฝ์Šต๋‹ˆ๋‹ค:

  1. ์ž์‹ ์˜ ๊ด€์‹ฌ์‚ฌ๋‚˜ ์ง€์—ญ๊ณผ ๊ด€๋ จ๋œ ์ธ์Šคํ„ด์Šค๋ฅผ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.
  2. ํ•ด๋‹น ์ธ์Šคํ„ด์Šค์— ๊ณ„์ •์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค.
  3. ๋‹ค๋ฅธ ์ธ์Šคํ„ด์Šค์˜ ์‚ฌ์šฉ์ž๋“ค์„ ํŒ”๋กœ์šฐํ•˜๊ณ  ์†Œํ†ต์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค!

ํ•œ๊ตญ ์‚ฌ์šฉ์ž๋ผ๋ฉด Mastodon ์ธ์Šคํ„ด์Šค์ธ ์šฐ๋ฆฌ.์ธ์ƒ, Misskey ์ธ์Šคํ„ด์Šค์ธ ์Šคํ…”๋ผ ๊ฐ™์€ ํ•œ๊ตญ์–ด ์ค‘์‹ฌ ์ธ์Šคํ„ด์Šค๋ฅผ ์ถ”์ฒœํ•ฉ๋‹ˆ๋‹ค. ํ•œ๊ตญ์–ด ํ™˜๊ฒฝ์„ ์ง€์›ํ•˜๊ณ  ํ•œ๊ตญ ์‚ฌ์šฉ์ž๋“ค์ด ํ™œ๋ฐœํ•˜๊ฒŒ ํ™œ๋™ํ•˜๊ณ  ์žˆ์–ด ์‹œ์ž‘ํ•˜๊ธฐ ์ข‹์Šต๋‹ˆ๋‹ค.

์•„๋‹ˆ๋ฉด ์ด ๊ธ€์ด ์˜ฌ๋ผ์˜จ Hackers' Pub๋„ ๊ดœ์ฐฎ์Šต๋‹ˆ๋‹ค. ์†Œํ”„ํŠธ์›จ์–ด ์—”์ง€๋‹ˆ์–ด๋“ค์„ ์œ„ํ•œ ์†Œ์…œ ๋ฏธ๋””์–ด๋ž๋‹ˆ๋‹ค. ์•„์ง ๊ฐœ๋ฐœ์ค‘์ด๋ผ ๊ณต๊ฐœ์ ์œผ๋กœ ๊ฐ€์ž…์„ ๋ฐ›๊ณ  ์žˆ์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค๋งŒ, ํ™๋ฏผํฌ์—๊ฒŒ ์—ฐ๋ฝ ์ฃผ์‹œ๋ฉด ๊ณ„์ •์„ ์ƒ์„ฑํ•ด ๋“œ๋ฆด ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ActivityPub: ์—ฐํ•ฉ์šฐ์ฃผ์˜ ์‹ฌ์žฅ

์ด์ œ ๊ฐœ๋ฐœ์ž ๊ด€์ ์—์„œ ActivityPub์ด ์–ด๋–ป๊ฒŒ ์ž‘๋™ํ•˜๋Š”์ง€ ์ž์„ธํžˆ ์‚ดํŽด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

ActivityPub์€ W3C์—์„œ ๊ถŒ์žฅํ•˜๋Š” ํ‘œ์ค€ ํ”„๋กœํ† ์ฝœ๋กœ, ๋ถ„์‚ฐ ์†Œ์…œ ๋„คํŠธ์›Œํ‚น์˜ ๊ธฐ๋ฐ˜์ด ๋ฉ๋‹ˆ๋‹ค. ActivityStreams 2.0 ๋ฐ์ดํ„ฐ ํ˜•์‹์„ ๊ธฐ๋ฐ˜์œผ๋กœ ํ•˜๋ฉฐ, ์„œ๋กœ ๋‹ค๋ฅธ ์„œ๋ฒ„ ๊ฐ„์— ์ •๋ณด๋ฅผ ๊ตํ™˜ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

ActivityPub์˜ ํ•ต์‹ฌ ๊ฐœ๋…

ActivityPub์€ ๋ช‡ ๊ฐ€์ง€ ํ•ต์‹ฌ ๊ฐœ๋…์œผ๋กœ ๊ตฌ์„ฑ๋ฉ๋‹ˆ๋‹ค:

  1. ์•กํ„ฐ(actor): ์‚ฌ์šฉ์ž, ๊ทธ๋ฃน ๋“ฑ ํ–‰๋™์„ ์ˆ˜ํ–‰ํ•  ์ˆ˜ ์žˆ๋Š” ์ฃผ์ฒด์ž…๋‹ˆ๋‹ค. ๊ฐ ์•กํ„ฐ๋Š” ๊ณ ์œ ํ•œ URL์„ ๊ฐ€์ง€๋ฉฐ, ์ˆ˜์‹ ํ•จ(inbox)๊ณผ ๋ฐœ์‹ ํ•จ(outbox)์„ ๊ฐ€์ง‘๋‹ˆ๋‹ค.
  2. ์•กํ‹ฐ๋น„ํ‹ฐ(activity): ์•กํ„ฐ๊ฐ€ ์ˆ˜ํ–‰ํ•˜๋Š” ํ–‰๋™์œผ๋กœ, ๊ฒŒ์‹œ๋ฌผ ์ž‘์„ฑ, ๋Œ“๊ธ€ ์ข‹์•„์š”, ๋‹ค๋ฅธ ์‚ฌ์šฉ์ž ํŒ”๋กœ์šฐ ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค.
  3. ๊ฐ์ฒด(object): ํ…์ŠคํŠธ ๊ฒŒ์‹œ๋ฌผ, ์ด๋ฏธ์ง€, ๋น„๋””์˜ค์™€ ๊ฐ™์ด ์ƒ์„ฑ๋˜๊ณ  ๊ณต์œ ๋˜๋Š” ์ฝ˜ํ…์ธ ์ž…๋‹ˆ๋‹ค.

์‹ค์ œ ์ž‘๋™ ๋ฐฉ์‹

ํ™๊ธธ๋™(@honggildong@mastodon.social)์ด ๊ฒŒ์‹œ๋ฌผ์„ ์ž‘์„ฑํ•˜๊ณ , ์ด์˜ํฌ(@leeyeonghui@misskey.io)๊ฐ€ ์ด์— ๋ฐ˜์‘ํ•˜๋Š” ๊ณผ์ •์„ ์‚ดํŽด๋ด…์‹œ๋‹ค:

  1. ๊ฒŒ์‹œ๋ฌผ ์ž‘์„ฑ: ํ™๊ธธ๋™์ด Mastodon์—์„œ ๊ฒŒ์‹œ๋ฌผ์„ ์ž‘์„ฑํ•ฉ๋‹ˆ๋‹ค. Mastodon ์„œ๋ฒ„๋Š” ์ด ๊ฒŒ์‹œ๋ฌผ์„ ActivityStreams 2.0 ํ˜•์‹์˜ Create(Note) ์•กํ‹ฐ๋น„ํ‹ฐ๋กœ ๋ณ€ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์ด ์•กํ‹ฐ๋น„ํ‹ฐ๋Š” ํ™๊ธธ๋™์˜ ํŒ”๋กœ์›Œ(์ด์˜ํฌ ํฌํ•จ)์—๊ฒŒ ์ „๋‹ฌ๋ฉ๋‹ˆ๋‹ค.

  2. ๊ฒŒ์‹œ๋ฌผ ์ˆ˜์‹ : ์ด์˜ํฌ์˜ Misskey ์„œ๋ฒ„๋Š” ์ด ์•กํ‹ฐ๋น„ํ‹ฐ๋ฅผ ๋ฐ›๊ณ  ์ฒ˜๋ฆฌํ•˜์—ฌ ์ด์˜ํฌ์˜ ํƒ€์ž„๋ผ์ธ์— ํ™๊ธธ๋™์˜ ๊ฒŒ์‹œ๋ฌผ์„ ํ‘œ์‹œํ•ฉ๋‹ˆ๋‹ค.

  3. ์ƒํ˜ธ์ž‘์šฉ: ์ด์˜ํฌ๊ฐ€ ๊ฒŒ์‹œ๋ฌผ์— ์ข‹์•„์š”๋ฅผ ๋ˆ„๋ฅด๋ฉด, Misskey ์„œ๋ฒ„๋Š” Like(Note) ์•กํ‹ฐ๋น„ํ‹ฐ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ํ™๊ธธ๋™์˜ Mastodon ์„œ๋ฒ„๋กœ ๋ณด๋ƒ…๋‹ˆ๋‹ค. ํ™๊ธธ๋™์€ ์ด์˜ํฌ๊ฐ€ ์ž์‹ ์˜ ๊ฒŒ์‹œ๋ฌผ์„ ์ข‹์•„ํ–ˆ๋‹ค๋Š” ์•Œ๋ฆผ์„ ๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

๋งˆ์น˜ ๋‹ค๋ฅธ ์–ธ์–ด๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ๋žŒ๋“ค์ด ํ†ต์—ญ์‚ฌ๋ฅผ ํ†ตํ•ด ๋Œ€ํ™”ํ•˜๋Š” ๊ฒƒ๊ณผ ๋น„์Šทํ•˜์ฃ ? ActivityPub์ด ๋ฐ”๋กœ ๊ทธ ํ†ต์—ญ์‚ฌ ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค.

ActivityPub์˜ ์‹ค์ œ ๋ฉ”์‹œ์ง€ ๋“ค์—ฌ๋‹ค๋ณด๊ธฐ

๊ฐœ๋ฐœ์ž๋กœ์„œ ์‹ค์ œ ActivityPub ๋ฉ”์‹œ์ง€๊ฐ€ ์–ด๋–ป๊ฒŒ ์ƒ๊ฒผ๋Š”์ง€ ๊ถ๊ธˆํ•˜์‹ค ํ…๋ฐ์š”. ๋ช‡ ๊ฐ€์ง€ ์˜ˆ์‹œ๋ฅผ ์‚ดํŽด๋ด…์‹œ๋‹ค:

1. ์‚ฌ์šฉ์ž ํ”„๋กœํ•„(์•กํ„ฐ) ์ •๋ณด

{
  "@context": [
    "https://www.w3.org/ns/activitystreams",
    "https://w3id.org/security/v1"
  ],
  "id": "https://mastodon.social/users/honggildong",
  "type": "Person",
  "preferredUsername": "honggildong",
  "name": "ํ™๊ธธ๋™",
  "summary": "์—ฐํ•ฉ์šฐ์ฃผ์˜ ๊ฐœ์ฒ™์ž",
  "inbox": "https://mastodon.social/users/honggildong/inbox",
  "outbox": "https://mastodon.social/users/honggildong/outbox",
  "followers": "https://mastodon.social/users/honggildong/followers",
  "following": "https://mastodon.social/users/honggildong/following",
  "publicKey": {
    "id": "https://mastodon.social/users/honggildong#main-key",
    "owner": "https://mastodon.social/users/honggildong",
    "publicKeyPem": "-----BEGIN PUBLIC KEY-----\n...\n-----END PUBLIC KEY-----"
  },
  "icon": {
    "type": "Image",
    "mediaType": "image/jpeg",
    "url": "https://mastodon.social/system/accounts/avatars/000/000/001/original/avatar.jpg"
  }
}

์ด JSON ๋ฐ์ดํ„ฐ๋Š” ํ™๊ธธ๋™์˜ ํ”„๋กœํ•„ ์ •๋ณด๋ฅผ ๋‹ด๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž ์ด๋ฆ„, ์†Œ๊ฐœ, ํ”„๋กœํ•„ ์‚ฌ์ง„ URL, ๊ทธ๋ฆฌ๊ณ  ์ค‘์š”ํ•œ inbox์™€ outbox URL์ด ํฌํ•จ๋˜์–ด ์žˆ์ฃ .

2. ๊ฒŒ์‹œ๋ฌผ ์ž‘์„ฑ ์•กํ‹ฐ๋น„ํ‹ฐ

{
  "@context": "https://www.w3.org/ns/activitystreams",
  "id": "https://mastodon.social/users/honggildong/statuses/123456/activity",
  "type": "Create",
  "actor": "https://mastodon.social/users/honggildong",
  "published": "2025-02-21T14:30:00Z",
  "to": [
    "https://www.w3.org/ns/activitystreams#Public"
  ],
  "cc": [
    "https://mastodon.social/users/honggildong/followers"
  ],
  "object": {
    "id": "https://mastodon.social/users/honggildong/statuses/123456",
    "type": "Note",
    "content": "<p>์—ฐํ•ฉ์šฐ์ฃผ์— ์˜ค์‹  ๊ฒƒ์„ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค! #fediverse #์—ฐํ•ฉ์šฐ์ฃผ</p>",
    "published": "2025-02-21T14:30:00Z",
    "attributedTo": "https://mastodon.social/users/honggildong",
    "to": [
      "https://www.w3.org/ns/activitystreams#Public"
    ],
    "cc": [
      "https://mastodon.social/users/honggildong/followers"
    ],
    "tag": [
      {
        "type": "Hashtag",
        "href": "https://mastodon.social/tags/fediverse",
        "name": "#fediverse"
      },
      {
        "type": "Hashtag",
        "href": "https://mastodon.social/tags/์—ฐํ•ฉ์šฐ์ฃผ",
        "name": "#์—ฐํ•ฉ์šฐ์ฃผ"
      }
    ]
  }
}

์ด๊ฒƒ์€ ํ™๊ธธ๋™์ด ๊ฒŒ์‹œ๋ฌผ์„ ์ž‘์„ฑํ–ˆ์„ ๋•Œ ์ƒ์„ฑ๋˜๋Š” Create(Note) ์•กํ‹ฐ๋น„ํ‹ฐ์ž…๋‹ˆ๋‹ค. ๊ฒŒ์‹œ๋ฌผ ๋‚ด์šฉ, ํ•ด์‹œํƒœ๊ทธ, ๊ณต๊ฐœ ๋ฒ”์œ„ ๋“ฑ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

3. ํŒ”๋กœ์šฐ ์•กํ‹ฐ๋น„ํ‹ฐ

{
  "@context": "https://www.w3.org/ns/activitystreams",
  "id": "https://misskey.io/users/leeyeonghui/follow/1234",
  "type": "Follow",
  "actor": "https://misskey.io/users/leeyeonghui",
  "object": "https://mastodon.social/users/honggildong"
}

์ด์˜ํฌ๊ฐ€ ํ™๊ธธ๋™์„ ํŒ”๋กœ์šฐํ•  ๋•Œ ์ƒ์„ฑ๋˜๋Š” Follow ์•กํ‹ฐ๋น„ํ‹ฐ์ž…๋‹ˆ๋‹ค. ๋‹จ์ˆœํ•˜์ฃ ?

ActivityPub ์„œ๋ฒ„ ๊ตฌํ˜„ํ•˜๊ธฐ: ๊ฐœ๋ฐœ์ž๋ฅผ ์œ„ํ•œ ํŒ

์ง์ ‘ ActivityPub ์„œ๋ฒ„๋ฅผ ๊ตฌํ˜„ํ•˜๊ณ  ์‹ถ๋‹ค๋ฉด ๋‹ค์Œ ๋‹จ๊ณ„๋ฅผ ๋”ฐ๋ผ์•ผ ํ•ฉ๋‹ˆ๋‹ค:

  1. ์•กํ„ฐ ๊ตฌํ˜„: ์‚ฌ์šฉ์ž ํ”„๋กœํ•„ ์ •๋ณด๋ฅผ ActivityStreams ํ˜•์‹์œผ๋กœ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.
  2. ์ˆ˜์‹ ํ•จ๊ณผ ๋ฐœ์‹ ํ•จ ์„ค์ •: HTTP ์—”๋“œํฌ์ธํŠธ๋ฅผ ๋งŒ๋“ค์–ด ์•กํ‹ฐ๋น„ํ‹ฐ๋ฅผ ๋ฐ›๊ณ  ์ „์†กํ•ฉ๋‹ˆ๋‹ค.
  3. ์„œ๋ช… ๋ฐ ์ธ์ฆ: HTTP Signatures๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์š”์ฒญ์„ ์„œ๋ช…ํ•˜๊ณ  ๊ฒ€์ฆํ•ฉ๋‹ˆ๋‹ค.
  4. ์•กํ‹ฐ๋น„ํ‹ฐ ์ฒ˜๋ฆฌ: ๋‹ค์–‘ํ•œ ์•กํ‹ฐ๋น„ํ‹ฐ ์œ ํ˜•(Create, Follow, Like ๋“ฑ)์„ ์ฒ˜๋ฆฌํ•˜๋Š” ๋กœ์ง์„ ๊ตฌํ˜„ํ•ฉ๋‹ˆ๋‹ค.
  5. ๋ฐ์ดํ„ฐ ์ €์žฅ: ์‚ฌ์šฉ์ž, ๊ฒŒ์‹œ๋ฌผ, ์•กํ‹ฐ๋น„ํ‹ฐ ๋“ฑ์˜ ์ •๋ณด๋ฅผ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์— ์ €์žฅํ•ฉ๋‹ˆ๋‹ค.
  6. ์—ฐํ•ฉ ์ •์ฑ… ๊ตฌํ˜„: ์–ด๋–ค ์ธ์Šคํ„ด์Šค์™€ ์—ฐํ•ฉํ• ์ง€, ์–ด๋–ค ์ปจํ…์ธ ๋ฅผ ํ—ˆ์šฉํ• ์ง€ ๋“ฑ์„ ์„ค์ •ํ•ฉ๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ์„ ์‹œ์ž‘ํ•˜๊ธฐ ์ „์— Mastodon, Misskey ๊ฐ™์€ ๊ธฐ์กด ๊ตฌํ˜„์ฒด์˜ ์ฝ”๋“œ๋ฅผ ์‚ดํŽด๋ณด๋Š” ๊ฒƒ์ด ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค. ์ฒ˜์Œ๋ถ€ํ„ฐ ๋ชจ๋“  ๊ฒƒ์„ ๊ตฌํ˜„ํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค Fedify ๊ฐ™์€ ํ”„๋ ˆ์ž„์›Œํฌ๋ฅผ ํ™œ์šฉํ•˜๋Š” ๊ฒƒ๋„ ์ข‹์€ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

WebFinger: ์‚ฌ์šฉ์ž๋ฅผ ์ฐพ๋Š” ๋ฐฉ๋ฒ•

์—ฐํ•ฉ์šฐ์ฃผ์—์„œ @leeyeonghui@misskey.io ๊ฐ™์€ ์‚ฌ์šฉ์ž ID๋ฅผ ์–ด๋–ป๊ฒŒ ์‹ค์ œ ActivityPub ์•กํ„ฐ URL๋กœ ๋ณ€ํ™˜ํ• ๊นŒ์š”? ๊ทธ ๋น„๋ฐ€์€ WebFinger ํ”„๋กœํ† ์ฝœ์— ์žˆ์Šต๋‹ˆ๋‹ค:

GET https://misskey.io/.well-known/webfinger?resource=acct:leeyeonghui@misskey.io

์ด ์š”์ฒญ์„ ๋ณด๋‚ด๋ฉด ์„œ๋ฒ„๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์‘๋‹ต์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค:

{
  "subject": "acct:leeyeonghui@misskey.io",
  "links": [
    {
      "rel": "self",
      "type": "application/activity+json",
      "href": "https://misskey.io/users/leeyeonghui"
    }
  ]
}

์ด์ œ https://misskey.io/users/leeyeonghui URL์„ ํ†ตํ•ด ์‚ฌ์šฉ์ž์˜ ์ „์ฒด ํ”„๋กœํ•„ ์ •๋ณด๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋งˆ์น˜ ์ „ํ™”๋ฒˆํ˜ธ๋ถ€์—์„œ ์ด๋ฆ„์œผ๋กœ ์ „ํ™”๋ฒˆํ˜ธ๋ฅผ ์ฐพ๋Š” ๊ฒƒ๊ณผ ๋น„์Šทํ•˜์ฃ !

์—ฐํ•ฉ์šฐ์ฃผ์˜ ๋„์ „ ๊ณผ์ œ์™€ ๋ฏธ๋ž˜

์—ฐํ•ฉ์šฐ์ฃผ๋Š” ๊ณ„์† ์„ฑ์žฅํ•˜๊ณ  ์žˆ์ง€๋งŒ, ๋ช‡ ๊ฐ€์ง€ ๋„์ „ ๊ณผ์ œ๋„ ์žˆ์Šต๋‹ˆ๋‹ค:

  1. ํ™•์žฅ์„ฑ: ์ˆ˜๋งŽ์€ ์„œ๋ฒ„ ๊ฐ„์˜ ํ†ต์‹ ์„ ํšจ์œจ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๊ฒƒ์€ ์‰ฝ์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  2. ๋ชจ๋”๋ ˆ์ด์…˜: ๊ฐ ์ธ์Šคํ„ด์Šค๊ฐ€ ์ž์ฒด ๊ทœ์น™์„ ๊ฐ€์ง€๋ฏ€๋กœ ์ฝ˜ํ…์ธ  ์กฐ์ •์— ์ผ๊ด€์„ฑ์ด ๋ถ€์กฑํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  3. ๋ฐœ๊ฒฌ์„ฑ: ์ค‘์•™ํ™”๋œ ํ”Œ๋žซํผ์— ๋น„ํ•ด ์ƒˆ๋กœ์šด ์‚ฌ์šฉ์ž๋‚˜ ์ฝ˜ํ…์ธ ๋ฅผ ์ฐพ๊ธฐ ์–ด๋ ค์šธ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
  4. ์‚ฌ์šฉ์ž ๊ฒฝํ—˜: ์ผ๋ถ€ ํ”Œ๋žซํผ์€ ์•„์ง UI/UX ์ธก๋ฉด์—์„œ ๊ฐœ์„ ์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ Threads์™€ ๊ฐ™์€ ์ฃผ์š” ์„œ๋น„์Šค๋“ค์ด ActivityPub์„ ์ฑ„ํƒํ•˜๊ธฐ ์‹œ์ž‘ํ•˜๋ฉด์„œ, ์—ฐํ•ฉ์šฐ์ฃผ์˜ ๋ฏธ๋ž˜๋Š” ๋ฐ์•„ ๋ณด์ž…๋‹ˆ๋‹ค. ๊ฐœ๋ฐœ์ž๋กœ์„œ, ์ด๋Ÿฐ ์„ฑ์žฅํ•˜๋Š” ์ƒํƒœ๊ณ„์— ์ฐธ์—ฌํ•  ์ˆ˜ ์žˆ๋Š” ๊ธฐํšŒ๊ฐ€ ๋งŽ์ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋งˆ๋ฌด๋ฆฌ

์—ฐํ•ฉ์šฐ์ฃผ์™€ ActivityPub์€ ์ค‘์•™ํ™”๋œ ์†Œ์…œ ๋ฏธ๋””์–ด์˜ ๋Œ€์•ˆ์œผ๋กœ์„œ ์ ์  ๋” ์ฃผ๋ชฉ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‚ฌ์šฉ์ž์—๊ฒŒ ๋” ๋งŽ์€ ํ†ต์ œ๊ถŒ์„ ๋ถ€์—ฌํ•˜๊ณ , ๋‹ค์–‘ํ•˜๊ณ  ํ’๋ถ€ํ•œ ์˜จ๋ผ์ธ ๊ฒฝํ—˜์„ ์ œ๊ณตํ•˜๋Š” ์—ฐํ•ฉ์šฐ์ฃผ์˜ ์„ธ๊ณ„๋Š” ๊ณ„์†ํ•ด์„œ ํ™•์žฅ๋˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฐœ๋ฐœ์ž๋กœ์„œ, ์—ฌ๋Ÿฌ๋ถ„์€ ์ด ์ƒˆ๋กœ์šด ํƒˆ์ค‘์•™ํ™”๋œ ์›น์˜ ์ƒํƒœ๊ณ„์— ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ธฐ์กด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์— ActivityPub ์ง€์›์„ ์ถ”๊ฐ€ํ•˜๊ฑฐ๋‚˜, ์™„์ „ํžˆ ์ƒˆ๋กœ์šด ์„œ๋น„์Šค๋ฅผ ๋งŒ๋“ค๊ฑฐ๋‚˜, ํ˜„์žฌ์˜ ๋„์ „ ๊ณผ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ์†”๋ฃจ์…˜์„ ๊ฐœ๋ฐœํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ํ•œ๊ตญ ๊ฐœ๋ฐœ์ž๋“ค์˜ ์ฐธ์—ฌ๊ฐ€ ๋Š˜์–ด๋‚˜๋ฉด ํ•œ๊ตญ ์‚ฌ์šฉ์ž๋“ค์„ ์œ„ํ•œ ๋” ๋‹ค์–‘ํ•˜๊ณ  ํ’๋ถ€ํ•œ ์„œ๋น„์Šค๊ฐ€ ์ƒ๊ธธ ๊ฒƒ์ด๊ณ , ์ด๋Š” ๋” ๊ฑด๊ฐ•ํ•˜๊ณ  ๋‹ค์–‘ํ•œ ์ธํ„ฐ๋„ท ๋ฌธํ™”๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ๊ธฐ์—ฌํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๊ทธ๋Ÿผ, ์—ฐํ•ฉ์šฐ์ฃผ๋กœ์˜ ์—ฌํ–‰์„ ์‹œ์ž‘ํ•ด ๋ณด์‹œ๋Š” ๊ฑด ์–ด๋–จ๊นŒ์š”?

Read more โ†’
6
3
3

@hongminheeๆดช ๆฐ‘ๆ†™ (Hong Minhee) ๊ผญ ์™ธ๋ž˜์–ด๋งŒ ๊ทธ๋Ÿฐ ๊ฑด ์•„๋‹ˆ์ง€๋งŒ ใ…์™€ ใ…”์˜ ํ˜ผ์„ ์ด ์ œ๋ฒ• ์žˆ๋Š”๋ฐ, ์ด๋ฅผํ…Œ๋ฉด lag ๋ž™("๋ ‰"์œผ๋กœ ํ‹€๋ฆผ) ๊ฐ™์€ ์‚ฌ๋ก€๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ๋ฐ–์—๋Š” daemon ๋‹ค์ด๋จผ(๋™๊ณ„์–ด์ธ demon์— ์ด๋Œ๋ ค "๋ฐ๋ชฌ"์ด ๋„๋ฆฌ ์“ฐ์ด์ง€๋งŒ, ์• ์ดˆ์— demon์˜ ์˜ฌ๋ฐ”๋ฅธ ํ‘œ๊ธฐ๋Š” "๋””๋จผ"์ž„) ๊ฐ™์€ ๊ฒŒ ์ƒ๊ฐ๋‚˜๋„ค์š”. ๋ญ ์•Œ์•„๋„ ๊ทธ๋ ‡๊ฒŒ ์•ˆ ์“ฐ๋Š” ์‚ฌ๋žŒ์ด ๋„ˆ๋ฌด ๋งŽ์•„์„œ ๋Œ€๋ถ€๋ถ„ ํ‹€๋ฆฐ ํ‘œ๊ธฐ๋กœ ์“ฐ๊ฒŒ ๋˜์ง€๋งŒ...

@yurume์œ ๋ฃจ๋ฉ” Yurume @hongminheeๆดช ๆฐ‘ๆ†™ (Hong Minhee) "lag"์˜ ์™ธ๋ž˜์–ด ํ‘œ๊ธฐ๋ฒ•์— ๋”ฐ๋ฅธ ํ‘œ๊ธฐ๋Š” "๋ž™"์ด ์•„๋‹ˆ๋ผ "๋ž˜๊ทธ"์ž…๋‹ˆ๋‹ค. ์œ ์„ฑ์Œ์œผ๋กœ ๋๋‚˜๊ธฐ ๋•Œ๋ฌธ์— "ใ…ก"๋ฅผ ๋ถ™์ž…๋‹ˆ๋‹ค. "log"๊ฐ€ "๋ก"์ด ์•„๋‹ˆ๋ผ "๋กœ๊ทธ"์ธ ๊ฒƒ๋„ ์ด๊ฒƒ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

0

bgl gwyng shared the below article:

ํŽ˜๋””๋ฒ„์Šค์—์„œ ์–ด๋–ค ์‚ฌ๋žŒ๋“ค์„ ํŒ”๋กœํ•˜๋ฉด ์ข‹์„๊นŒ?

Jaeyeol Lee @kodingwarrior@hackers.pub

ํŽ˜๋””๋ฒ„์Šค ์ž…๋ฌธ์ด ๋ง‰๋ง‰ํ•œ ๊ฐœ๋ฐœ์ž๋“ค์„ ์œ„ํ•ด, Hackers' Pub์„ ํฌํ•จํ•œ ActivityPub ๊ธฐ๋ฐ˜ ์„œ๋น„์Šค ํ™œ์šฉ๋ฒ•์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. ํŠธ์œ„ํ„ฐ์™€ ๋‹ฌ๋ฆฌ ์ถ”์ฒœ ๊ธฐ๋Šฅ์ด ๋ถ€์กฑํ•œ ํŽ˜๋””๋ฒ„์Šค์—์„œ, ์–ด๋–ค ์ธ์Šคํ„ด์Šค๋ฅผ ์„ ํƒํ•˜๊ณ  ๋ˆ„๊ตฌ๋ฅผ ํŒ”๋กœ์šฐํ•ด์•ผ ํ• ์ง€ ์–ด๋ ค์›€์„ ๊ฒช๋Š” ๋ถ„๋“ค์„ ์œ„ํ•ด ์œ ์šฉํ•œ ์ •๋ณด๋“ค์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. ๋จผ์ €, ๊ฐœ๋ฐœ์ž๋“ค์ด ๋งŽ์ด ๋ชจ์—ฌ์žˆ๋Š” ๊ตญ๋‚ด์™ธ ๋งˆ์Šคํ† ๋ˆ ์ธ์Šคํ„ด์Šค๋“ค์„ ์†Œ๊ฐœํ•ฉ๋‹ˆ๋‹ค. silicon.moe, hachyderm.io, emacs.ch ๋“ฑ ๋‹ค์–‘ํ•œ ๊ด€์‹ฌ์‚ฌ์— ๋งž๋Š” ์ธ์Šคํ„ด์Šค๋ฅผ ์„ ํƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๋˜ํ•œ, Geeknews Bot, Hacker News, Lobsters ๋“ฑ ๊ฐœ๋ฐœ ๊ด€๋ จ ๋‰ด์Šค๋ฅผ ์ œ๊ณตํ•˜๋Š” ๊ณ„์ •๋“ค๊ณผ, Mastodon, Golang, Asahi Linux ๋“ฑ ์˜คํ”ˆ์†Œ์Šค ํ”„๋กœ์ ํŠธ์— ๊ธฐ์—ฌํ•˜๋Š” ๊ฐœ๋ฐœ์ž๋“ค์„ ํŒ”๋กœ์šฐํ•˜์—ฌ ์œ ์šฉํ•œ ์ •๋ณด๋ฅผ ์–ป์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์€ ํŽ˜๋””๋ฒ„์Šค ์ƒํƒœ๊ณ„์—์„œ ๊ฐœ๋ฐœ์ž๋“ค์ด ์–‘์งˆ์˜ ์ •๋ณด๋ฅผ ์–ป๊ณ  ์†Œํ†ตํ•  ์ˆ˜ ์žˆ๋„๋ก ๋•๋Š” ๊ฒƒ์„ ๋ชฉํ‘œ๋กœ ํ•ฉ๋‹ˆ๋‹ค. ํŽ˜๋””๋ฒ„์Šค ์ž…๋ฌธ์ž๋“ค์ด ์ž์‹ ์—๊ฒŒ ๋งž๋Š” ์ธ์Šคํ„ด์Šค์™€ ๊ณ„์ •์„ ์ฐพ์•„ ํŒ”๋กœ์šฐํ•จ์œผ๋กœ์จ, ๋”์šฑ ํ’๋ถ€ํ•˜๊ณ  ์œ ์ตํ•œ ๊ฒฝํ—˜์„ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค.

Read more โ†’
8
6
4

Hackers' Pub ํƒ€์ž„๋ผ์ธ์— ๋‚ด๋ถ€์ ์ธ ๊ฐœ์„ ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ๊นŒ์ง€๋Š” ํƒ€์ž„๋ผ์ธ์„ ๋ Œ๋”๋งํ•˜๊ธฐ ์œ„ํ•ด ์‹ค์‹œ๊ฐ„์œผ๋กœ ๋ณต์žกํ•œ ์กฐ๊ฑด์˜ SQL์„ ์‹คํ–‰ํ•˜๋Š” ๋ฐฉ์‹์ด์—ˆ์ง€๋งŒ, ์ด์ œ๋Š” ๊ธ€์ด ์ž‘์„ฑ๋  ๋•Œ ๊ตฌ๋…์ž์˜ ์ˆ˜์‹ ํ•จ(inbox)์— ๊ธ€์ด ๋“ค์–ด๊ฐ€๋Š” ๋ฐฉ์‹์œผ๋กœ ๋ฐ”๋€Œ์—ˆ์Šต๋‹ˆ๋‹ค. ํƒ€์ž„๋ผ์ธ์„ ๋ Œ๋”๋งํ•  ๋•Œ๋Š” ๊ฐ์ž์˜ ์ˆ˜์‹ ํ•จ๋งŒ ํ™•์ธํ•˜๋ฉด ๋˜๊ธฐ ๋•Œ๋ฌธ์— ํ›จ์”ฌ ์กฐ๊ฑด์ด ๊ฐ„๋‹จํ•ด์ง„ ๊ฒƒ์ž…๋‹ˆ๋‹ค.

๋”๋ถˆ์–ด, ๊ฐ™์€ ๊ธ€์„ ์—ฌ๋Ÿฌ ์‚ฌ๋žŒ์ด ๊ณต์œ ํ–ˆ์„ ๋•Œ ํƒ€์ž„๋ผ์ธ์ด ๊ฐ™์€ ๊ธ€๋กœ ๋„๋ฐฐ๋˜๋˜ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด์ œ๋Š” ๋งˆ์ง€๋ง‰์— ๊ณต์œ ํ•œ ์‚ฌ๋žŒ์˜ ๊ธ€๋งŒ ๋”ฑ ํ•˜๋‚˜ ๋ณด์ด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค.

์ด๋ฒˆ ๋ณ€๊ฒฝ์— ๊ด€ํ•ด ๊ถ๊ธˆํ•˜์‹  ๋ถ„์€ f692909cdd5149c68ca5a91fb4e964042115ab83 ์ปค๋ฐ‹์„ ํ™•์ธํ•˜์‹œ๋ฉด ๋˜๊ฒ ์Šต๋‹ˆ๋‹ค.

์ด ๋ณ€๊ฒฝ์„ ๋ฐฐํฌํ•˜๋‹ค๊ฐ€ ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ์Šคํ‚ค๋งˆ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜์ด PostgreSQL์„ ๋ฉˆ์ถ”๊ฒŒ ํ•˜์—ฌ Hackers' Pub์ด ๋ช‡ ๋ถ„ ๋™์•ˆ ๋‚ด๋ ค๊ฐ€๋Š” ์ผ์ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ SQL์ด ๋„ˆ๋ฌด ๋น„ํšจ์œจ์ ์ด๋ผ ๊ทธ๋žฌ๋˜ ๊ฒƒ์ธ๋ฐ์š”, Claude Code์˜ ๋„์›€์„ ๋ฐ›์•„ ํ•˜๋‚˜์˜ ๋น„ํšจ์œจ์ ์ธ SQL์„ ๋ช‡ ๊ฐœ์˜ SQL๋กœ ๋‚˜๋ˆ ์„œ ์‹คํ–‰ํ•˜๊ฒŒ๋” ๊ณ ์ณ์„œ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ์ด ์—ญ์‹œ ๊ถ๊ธˆํ•˜์‹  ๋ถ„์€ 33f2209f206bee84ddf5d1a7124527dade948610 ์ปค๋ฐ‹์„ ํ™•์ธํ•˜์‹œ๋ฉด ๋ฉ๋‹ˆ๋‹ค.

์•ž์œผ๋กœ๋Š” ๋” ์•ˆ์ •์ ์ธ ์„œ๋น„์Šค ์šด์˜์„ ์œ„ํ•ด ๋…ธ๋ ฅํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค. ์ฃ„์†กํ•˜๊ณ  ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

0

bgl gwyng shared the below article:

Vim์ด๋ž‘ Neovim์€ ์–ด๋–ป๊ฒŒ ๋‹ค๋ฅผ๊นŒ?

Jaeyeol Lee @kodingwarrior@hackers.pub

์ด ๊ธ€์€ Vim๊ณผ Neovim์˜ ๊ฒฐ์ •์ ์ธ ์ฐจ์ด์ ์„ ๋ช…ํ™•ํžˆ ์„ค๋ช…ํ•˜๋ฉฐ, ๋…์ž๋“ค์˜ ๊ถ๊ธˆ์ฆ์„ ํ•ด์†Œํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. Vim์€ VimScript๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๋ฐ˜๋ฉด, Neovim์€ Lua๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ปค์Šคํ„ฐ๋งˆ์ด์ง•ํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์„ ๊ฐ•์กฐํ•ฉ๋‹ˆ๋‹ค. Lua๋Š” VimScript์— ๋น„ํ•ด ๊ฐ€๋…์„ฑ์ด ์ข‹๊ณ , macOS ์ž๋™ํ™” ํˆด์ธ Hammerspoon์ด๋‚˜ ํ„ฐ๋ฏธ๋„ ์—๋ฎฌ๋ ˆ์ดํ„ฐ Wezterm๊ณผ ๊ฐ™์€ Unix CLI ํ”„๋กœ๊ทธ๋žจ ์„ค์ •์— ๋„๋ฆฌ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ, Neovim์€ LuaRocks ํŒจํ‚ค์ง€ ๋งค๋‹ˆ์ €๋ฅผ ํ†ตํ•ด ๋‹ค์–‘ํ•œ ํŒจํ‚ค์ง€๋ฅผ ํ™œ์šฉํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, Telescope, nvim-cmp, Treesitter์™€ ๊ฐ™์€ ๊ฐ•๋ ฅํ•œ ํ”Œ๋Ÿฌ๊ทธ์ธ ์ƒํƒœ๊ณ„๋ฅผ ์ž๋ž‘ํ•ฉ๋‹ˆ๋‹ค. ํŠนํžˆ, Treesitter๋Š” ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ํŠธ๋ฆฌ ๊ตฌ์กฐ๋กœ ๋ถ„์„ํ•˜์—ฌ ์ฝ”๋“œ ํƒ์ƒ‰ ๋ฐ ์กฐ์ž‘์„ ์šฉ์ดํ•˜๊ฒŒ ํ•ด์ค๋‹ˆ๋‹ค. Language Server ์ง€์›๋„ ์ค€์ˆ˜ํ•˜๋ฉฐ, coc-nvim์„ ํ†ตํ•ด ํŽธ๋ฆฌํ•˜๊ฒŒ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด ๊ธ€์€ Vim๊ณผ Neovim ์ค‘ ์–ด๋–ค ์—๋””ํ„ฐ๋ฅผ ์„ ํƒํ• ์ง€ ๊ณ ๋ฏผํ•˜๋Š” ๊ฐœ๋ฐœ์ž์—๊ฒŒ ์œ ์šฉํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•˜๋ฉฐ, Neovim์˜ ๊ฐ•๋ ฅํ•œ ๊ธฐ๋Šฅ๊ณผ ํ™•์žฅ์„ฑ์„ ํ†ตํ•ด ์ƒ์‚ฐ์„ฑ์„ ํ–ฅ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Œ์„ ์‹œ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

Read more โ†’
0
0
1

I received a heartwarming about today!

@bglbgl gwyng shared in the FediDev KR Discord server:

I had trouble finding good resources explaining ActivityPub, but after reading through the Fedify docs from start to finish, I feel like I've actually digested it.

They also posted on their Hackers' Pub:

If you want to learn ActivityPub efficiently, just read the Fedify docs from beginning to end.

This makes all the documentation work worthwhile. Glad our docs are helping people understand not just Fedify, but itself.

0
0
0

ActivityPub ํšจ์œจ์ ์œผ๋กœ ์ตํžˆ๋ ค๋ฉด ๊ทธ๋ƒฅ fedify ๋ฌธ์„œ ์ฒจ๋ถ€ํ„ฐ ๋๊นŒ์ง€ ์ฝ์œผ๋ฉด ๋˜๋Š”๋“ฏ์š”

0
0
0

@curry๋ฐ•์ค€๊ทœ @bglbgl gwyng ์•Œ๋ฆผ์ด ๋‹ฌ๋ฆฌ ์—†์–ด์„œ ์ง€๋‚˜์ณ๋ฒ„๋ ธ๋„ค์š”, ์˜๊ฒฌ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ํ˜น์‹œ ์ด์•ผ๊ธฐ ํ•ด์ฃผ์‹  UTop์ด ์•„๋ž˜ ๋งํฌ์˜ UTop์ด ๋งž๋‹ค๋ฉด, ์ € UTop์„ ์ง์ ‘ ๊ตฌํ˜„ํ•ด๋ณด๋Š” ๊ฑธ ์ถ”์ฒœํ•ด์ฃผ์‹ ๊ฑธ๊นŒ์š”? https://opam.ocaml.org/blog/about-utop/

@morealLee Dogeon @curry๋ฐ•์ค€๊ทœ ์ €๋Š” OCaml์„ ๋งŽ์ด ์•ˆ ์จ๋ดค์ง€๋งŒ ๊ทธ๊ฑธ๋กœ ๋งŒ๋“ค๊ธฐ ์œ ๋ฆฌํ•œ ์ข…๋ฅ˜์˜ ํ”„๋กœ๊ทธ๋žจ์ด ํŠน๋ณ„ํžˆ ์žˆ๋Š”์ง€ ์ž˜๋ชจ๋ฅด๊ฒ ๋„ค์š”. ์•„๋งˆ ์ด๋ฏธ ์•„์‹œ๊ฒ ์ง€๋งŒ, ReScript๊ฐ™์€๊ฑด ๋ฐ”๋กœ ์จ๋จน๊ณ  ์ƒ์‚ฐ์„ฑ๋„ ์ž˜๋‚˜์™€์„œ ์žฅ์ ์„ ์‰ฝ๊ฒŒ ๋А๋‚„์ˆ˜ ์žˆ์„๊ฑฐ ๊ฐ™๋„ค์š”.

0

@bglbgl gwyng @curry๋ฐ•์ค€๊ทœ ํŽ‘ํ„ฐ(Functor)์˜ ์ˆ˜ํ•™๊ท€์‹ ์  ๋ฒˆ์—ญ์–ด๋กœ โ€˜๊ตฌ์กฐ๋ฅผ ๋ณด์กดํ•˜๋Š”โ€™์€ ์–ด๋–ค๊ฐ€์š”?

โ€˜๊ทธ๋ฌผ๋ง ๋˜์ง€๊ธฐโ€™๋Š” ์–ด๋–ค ์˜๋ฏธ์ธ๊ฐ€์š”? ํŽ‘ํ„ฐ์™€ ์–ด๋–ป๊ฒŒ ์—ฐ๊ฒฐํ•ด์•ผ ํ• ์ง€ ๋ชจ๋ฅด๊ฒ ์–ด์š”.

0

์˜ค์—์นดํ‚ค ์ปค๋ฎค๋‹ˆํ‹ฐ ์˜ค์ด์นดํŽ˜๋ฅผ ์˜คํ”ˆ ์†Œ์Šค๋กœ ๊ณต๊ฐœํ–ˆ์Šต๋‹ˆ๋‹ค.

Rust, Axum, MiniJinja, HTMX ๋“ฑ์œผ๋กœ ๋งŒ๋“ค์—ˆ๊ณ , ๊ทธ๋ฆผํŒ์€ PaintBBS NEO์™€ tegaki.js๋ฅผ ์ง€์›ํ•ฉ๋‹ˆ๋‹ค.

๋งŽ์€ ๊ด€์‹ฌ ๋ถ€ํƒ๋“œ๋ฆฝ๋‹ˆ๋‹ค!

1
0
1
0
0

ํŽ‘ํ„ฐ์— ๋Œ€ํ•œ ์ˆ˜ํ•™๊ท€์‹ ์  ๋ฒˆ์—ญ์–ด๋กœ '๊ทธ๋ฌผ๋ง ๋˜์ง€๊ธฐ'๊ฐ€ ๋– ์˜ฌ๋ž๋‹ค.

0

๋„ค์ด๋ฒ„์—์„œ ์ด๋Ÿฐ ๊ฑธ ์™œ ๋งŒ๋“ค์—ˆ์„๊นŒ?

Tamgu๋Š” Prolog์—์„œ ์˜๊ฐ์„ ๋ฐ›์€ ์ˆ ์–ด ์—”์ง„๊ณผ Haskell ์–ธ์–ด์—์„œ ์˜๊ฐ์„ ๋ฐ›์€ ๊ธฐ๋Šฅ์  ๊ธฐ๋Šฅ์„ ๊ฐ–์ถ˜ ๋ช…๋ นํ˜• ์–ธ์–ด์ž…๋‹ˆ๋‹ค. ์ด ์„ธ ๊ฐ€์ง€ ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์Šคํƒ€์ผ์„ ์ž์œ ๋กญ๊ฒŒ ํ˜ผํ•ฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

https://github.com/naver/tamgu/tree/master

0

We're excited to announce the release of Fedify 1.5.0! This version brings several significant improvements to performance, configurability, and developer experience. Let's dive into what's new:

Two-Stage Fan-out Architecture for Efficient Activity Delivery

now implements a smart fan-out mechanism for delivering activities to large audiences. This change is particularly valuable for accounts with many followers. When sending activities to many recipients, Fedify now creates a single consolidated message containing the activity payload and recipient list, which a background worker then processes to re-enqueue individual delivery tasks.

This architectural improvement delivers several benefits: Context.sendActivity() returns almost instantly even with thousands of recipients, memory consumption is dramatically reduced by avoiding payload duplication, UI responsiveness improves since web requests complete quickly, and the system maintains reliability with independent retry logic for each delivery.

For specific requirements, we've added a new fanout option with three settings:

// Configuring fan-out behavior
await ctx.sendActivity(
  { identifier: "alice" },
  recipients,
  activity,
  { fanout: "auto" }  // Default: automatic based on recipient count
  // Other options: "skip" (never use fan-out) or "force" (always use fan-out)
);

Canonical Origin Support for Multi-Domain Setups

You can now explicitly configure a canonical origin for your server, which is especially useful for multi-domain setups. This feature allows you to set different domains for WebFinger handles and URIs, configured through the new origin option in createFederation(). This enhancement prevents unexpected URL construction when requests bypass proxies and improves security by ensuring consistent domain usage.

const federation = createFederation({
  // Use example.com for handles but ap.example.com for ActivityPub URIs
  origin: {
    handleHost: "example.com",
    webOrigin: "https://ap.example.com",
  },
  // Other options...
});

Optional Followers Collection Synchronization

Followers collection synchronization (FEP-8fcf) is now opt-in rather than automatic. This feature must now be explicitly enabled through the syncCollection option, giving developers more control over when to include followers collection digests. This change improves network efficiency by reducing unnecessary synchronization traffic.

await ctx.sendActivity(
  { identifier: sender },
  "followers",
  activity,
  { 
    preferSharedInbox: true,
    syncCollection: true,  // Explicitly enable collection synchronization
  }
);

Enhanced Key Format Compatibility

Key format support has been expanded for better interoperability. Fedify now accepts PEM-PKCS format in addition to PEM-SPKI for RSA public keys. We've added importPkcs1() and importPem() functions for additional flexibility, which improves compatibility with a wider range of ActivityPub implementations.

Improved Key Selection Logic

The key selection process is now more intelligent. The fetchKey() function can now select the public key of an actor if keyId has no fragment and the actor has only one public key. This enhancement simplifies key handling in common scenarios and provides better compatibility with implementations that don't specify fragment identifiers.

New Authorization Options

Authorization handling has been enhanced with new options for the RequestContext.getSignedKey() and getSignedKeyOwner() methods. This provides more flexible control over authentication and authorization flows. We've deprecated older parameter-based approaches in favor of the more flexible method-based approach.

Efficient Bulk Message Queueing

Message queue performance is improved with bulk operations. We've added an optional enqueueMany() method to the MessageQueue interface, enabling efficient queueing of multiple messages in a single operation. This reduces overhead when processing batches of activities. All our message queue implementations have been updated to support this new operation:

If you're using any of these packages, make sure to update them alongside Fedify to take advantage of the more efficient bulk message queueing.

CLI Improvements

The Fedify command-line tools have been enhanced with an improved web interface for the fedify inbox command. We've added the Fedify logo with the cute dinosaur at the top of the page and made it easier to copy the fediverse handle of the ephemeral actor. We've also fixed issues with the web interface when installed via deno install from JSR.

Additional Improvements and Bug Fixes

  • Updated dependencies, including @js-temporal/polyfill to 0.5.0 for Node.js and Bun
  • Fixed bundler errors with uri-template-router on Rollup
  • Improved error handling and logging for document loader when KV store operations fail
  • Added more log messages using the LogTape library
  • Internalized the multibase package for better maintenance and compatibility

For the complete list of changes, please refer to the changelog.

To update to Fedify 1.5.0, run:

# For Deno
deno add jsr:@fedify/fedify@1.5.0

# For npm
npm  add     @fedify/fedify@1.5.0

# For Bun
bun  add     @fedify/fedify@1.5.0

Thank you to all contributors who helped make this release possible!

0
0
0

๋“œ๋””์–ด Bartosz Milewski์˜ Category Theory ๊ฐ•์˜๋ฅผ ์ฑ•ํ„ฐ 2๊นŒ์ง€ ๋๋ƒˆ๋‹ค. ๋ช‡๋…„ ๊ฑธ๋ ธ์ง€... ์ค‘๊ฐ„์— ์ •์ฒด๋œ ๊ธฐ๊ฐ„์ด ๊ฝค ๊ธธ์—ˆ๋Š”๋ฐ, ์•ผ์‹ ๋จน์„๋•Œ ์ฃ„์ฑ…๊ฐ์„ ๋‹ฌ๋ž˜๋Š” ์šฉ๋„๋กœ ํ‹€์–ด๋†“์•˜๋”๋‹ˆ ์ง„๋„๋ฅผ ๋นจ๋ฆฌ ๋บ„์ˆ˜ ์žˆ์—ˆ๋‹ค.

0

๋…ธ์…˜(Notion)์—์„œ ์บ˜๋ฆฐ๋”์— ์ด์–ด ์ด๋ฒˆ์—” ์ด๋ฉ”์ผ ํด๋ผ์ด์–ธํŠธ๋ฅผ ๋งŒ๋“ค๊ณ  ์žˆ๋‚˜๋ณด๋„ค... (์•„์ง ์ถœ์‹œX)
notion.com/product/mail

0

It's no coincidence that alt-right people have taken up AI generated artwork so intensely. It allows bypassing all the ethics and care of typically left-leaning artists. To show the ability to wield aesthetics without the social values tied to those aesthetics is a power move.

This is well covered in "AI: The New Aesthetics of Fascism" newsocialist.org.uk/transmissi

0
26
0

Q. ์ƒˆ๋กœ์šด ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์–ธ์–ด๋ฅผ ๊ณต๋ถ€ํ•  ๋•Œ, ์—ฐ์Šต์šฉ์œผ๋กœ ์‚ฌ์šฉํ•˜์‹œ๋Š” ํ”„๋กœ์ ํŠธ(์นดํƒ€?)๊ฐ€ ์žˆ์œผ์‹ ๊ฐ€์š”?

0