Profile img

Jaeyeol Lee

@kodingwarrior@hackers.pub · 666 following · 483 followers

Neovim Super villain. 풀스택 엔지니어 내지는 프로덕트 엔지니어라고 스스로를 소개하지만 사실상 잡부를 담당하는 사람. CLI 도구를 만드는 것에 관심이 많습니다.

Hackers' Pub에서는 자발적으로 바이럴을 담당하고 있는 사람. Hackers' Pub의 무궁무진한 발전 가능성을 믿습니다.

그 외에도 개발자 커뮤니티 생태계에 다양한 시도들을 합니다. 지금은 https://vim.kr / https://fedidev.kr 디스코드 운영 중

Blog
kodingwarrior.github.io
mastodon
@kodingwarrior@silicon.moe
Github
@malkoG
0
4

존 카맥, 리누스 토르발스 등등 90년대 시절 프로그래머들이 살아있는 전설급 프로그래머로 여겨지는 이유를 썰 풀듯 드립치며 얘기하는 영상. 이유는 간단하게 말하면 오늘과는 다르게 그 시절엔 하드웨어 메모리를 어떻게든 쥐어짜서 로직을 짜야했고, pip install이나 클로드나 제미나이같은 것도 없었고 튜토리얼 지옥에 빠질 일도 없었고 대신 컴파일러 지옥에서 살았기에 가능했다는 얘기. 물론 그들이 선구자였기에 그 버프를 받아서 전설급이 되었을 거란 얘기도 있다. 보면서 그 때는 정보가 적었기에 폐관수련이 필수였는데 오늘날엔 오히려 정보가 넘쳐나고 풍부해서 그게 좀 덜 하는 걸까 싶기도 했다.

1

Jaeyeol Lee shared the below article:

Migrate to Misskey from Iceshrimp

AmaseCocoa @cocoa@hackers.pub

This post outlines the process of migrating from Iceshrimp, a fork of Firefish (itself a fork of Misskey v12), to Misskey, starting from v13. The author details their reasons for migrating, including ongoing reimplementation efforts in .NET, issues with media rendering, and a general preference for Misskey. A comparison table highlights key differences between Iceshrimp and Misskey, such as translation API, note editing capabilities, MOTD, note length limits, search engine options, FTT, and social login. The guide provides a step-by-step walkthrough, including backing up and rolling back the database, running specific SQL commands to align the database schema with Misskey, and installing Misskey without initializing it to prevent data corruption. Troubleshooting tips are included for common issues like login failures and client loading problems. This migration guide offers valuable insights for those looking to transition from Iceshrimp to Misskey, ensuring a smoother process.

Read more →
2
2
5
0

Neovim 같은 에디터에서 Language Server를 일일이 세팅하다보면, typescript-language-server는 deno lsp와 충돌하게 되고, biome는 eslint 같은거랑 충돌이 되어서 스크립트로 일일이 예외처리를 해줘야 하는데, 이런 충돌나는 요소를 코드 레벨에서 우아하게 제어할 수 있는 방법이 어디 있을까? 사용가능한 랭귀지 서버를 배열의 형태로 나열하고, 사용가능한 포매터 역시 배열의 형태로 나열하기만 해도, 이걸 우아하게 처리할 수 있는 인터페이스가 필요하다...

0

Neovim 같은 에디터에서 Language Server를 일일이 세팅하다보면, typescript-language-server는 deno lsp와 충돌하게 되고, biome는 eslint 같은거랑 충돌이 되어서 스크립트로 일일이 예외처리를 해줘야 하는데, 이런 충돌나는 요소를 코드 레벨에서 우아하게 제어할 수 있는 방법이 어디 있을까? 사용가능한 랭귀지 서버를 배열의 형태로 나열하고, 사용가능한 포매터 역시 배열의 형태로 나열하기만 해도, 이걸 우아하게 처리할 수 있는 인터페이스가 필요하다...

0
0
1
0
2
0

mermaid로 다이어그램 그릴 일이 요즘 많은데 일단 메모..

특히 복잡한 그래프를 평면으로 그릴 수 있으면 적극적으로 도입해야겠다

1
5

X(트위터)에서 저는 대부분 개발자 분들과 팔로우 맺어져 있고, 특별히 정치색을 내는 분들이 안계셔서 정치 글들은 눌러서 본적도 없습니다만, 최근 몇 달간, 흔히 말하는 극우적인 성향의 글들이 추천으로 계속 뜨네요. 내 알고리즘이 오염된건가... 완전 개발자 얘기들만 찾아다니는데 왜 그럴까요.

0
1
1
1
1
0
1

browser.engineering 스터디 중인데, 일주일에 최소 한 챕터 진도나가고 한챕터 연습문제 싹쓸이 할 때마다 풀이 글을 올려보려고 한다. browser.engineering 책 검색하면 해커스펍이 상단에 뜨게 하는 큰 그림....!!

4

데이터 애플리케이션 중심 설계를 읽고 있는데, 이걸 읽다보니 간혹 유튜브 스트리밍에서 채팅 순서가 내가 채팅방에서 보는 거랑 실제 방송 화면에 표기되는 게 다르게 나왔던 부분이나 새로고침 했을 때 댓글이 사라졌다 생겼다 하는 이유를 어느정도 추측해볼 수 있게 된 것 같다. 물론 완전히 그 이유 때문인지는 모르겠지만, 그런 이유가 아닐까? 하고 지레 짐작 해볼 수 있는 감이 생긴 것 같다.

1
0
1

브라우저 스터디 기록 (1)

Jaeyeol Lee @kodingwarrior@hackers.pub

이 글은 Web Browser Engineering 교재를 독학하며 연습문제를 풀이하는 과정을 담고 있습니다. 저자는 추상화 수준에 대한 고민을 드러내며, URL 클래스의 request 메서드 대신 Connection 클래스를 도입하여 소켓 관리를 더 자연스럽게 처리했습니다. 또한, 타입 힌트 적용과 pytest를 이용한 유닛 테스트 환경 구축 등 실습 환경을 풍성하게 구성하는 데 LLM의 도움을 받아 효율성을 높였습니다. 연습문제 풀이에서는 keep-alive 지원의 중요성을 강조하며, TCP handshake 비용 절감 여부를 직접 실험해볼 것을 권장합니다. 리다이렉션 문제에서는 Location 헤더의 다양한 케이스 처리와 최대 리다이렉션 횟수 제한을 고려해야 함을 지적합니다. 캐싱 문제에서는 Cache-Control 헤더의 다양한 옵션에 대한 처리 방법을 제시하고, 압축 문제에서는 Transfer-Encoding: chunked 헤더 처리의 중요성을 강조합니다. 전반적으로 이 글은 단순한 문제 풀이를 넘어, 브라우저 엔진의 동작 원리를 깊이 이해하고 실제 코드에 적용하는 과정을 보여줍니다. 독자들은 이 글을 통해 연습문제 풀이에 대한 힌트를 얻을 뿐만 아니라, 브라우저 개발에 대한 실질적인 인사이트를 얻을 수 있을 것입니다.

Read more →
7
0

브라우저 스터디할 때 keep-alive 기능 구현하는 거와 관련해서, 성능 측정하는 코드는 필요하겠다 싶어서 TCP handshake 비용 측정하는 코드 짜달라고 Claude Code한테 시켜줬는데 잘 짜줌. 다른건 손으로 직접 실습을 하더라도, 실험 환경 만드는 귀찮은 작업은 LLM한테 시키면 만사가 편안하다...

TCP handshake 비용을 측정하는 코드가 실행된 모습
2
2

이런 생각이 받아들여지는 데에는 시간이 많이 걸릴 거라고 생각했는데… AWS 먹통 사태에 대한 사람들의 반응이 생각보다 뜨겁네요. 생각보다 될 것 같기도 하네요.

그러므로 다 같이 외쳐

  • 클라우드는 없다! 남의 컴퓨터 거부하자!
  • 분산을 집중으로 되돌리는 역사의 퇴행 AWS 물러가라!
  • 서버는 기본권이다! 집집마다 서버를! 모든 어린이에게 서버를!
  • 내 컴퓨터 없이 내 보안 없다!
  • 내 컴퓨터 없이 내 프라이버시 없다!
  • 내 컴퓨터 없이 내 자유 없다!
  • 1인 1서버는 인권이다!
  • 1인 1서버가 민주주의 주춧돌이다!
  • POWER TO THE PEOPLE!!! REAL FREEDOM FOR ALL!!!
5
4
0
  • 발표자료 대본 다이어트
  • 코스모슬라이드 다듬는 작업
  • 브라우저 스터디 준비
4

오늘의 삽질

분명히 로컬 개발환경에서는 의도한대로 Federation 잘 동작하고 있는데, 왜 프로덕션에서는 팔로우도 제대로 동작안하고, Create(Note) 액티비티는 왜 제대로 안 들어오고 /users/inbox 라는 이상한 엉뚱한 경로로 들어오나하고 한참을 까봤다. sharedInbox 경로만 엉뚱한 URL 패턴을 가지고 있었다.... 프론트엔드/백엔드 분리하긴 했다만, 리다이렉션도 제대로 안 걸어둬서 생긴 오류였다. 아이고두야....

해당 에러를 고친 commit인데 내가 봐도 어이가 없다.
2
0
2

Jaeyeol Lee shared the below article:

《하스켈로 배우는 프로그래밍》(2009, 대림) 옮긴이의 말

박준규 @curry@hackers.pub

이 글은 2009년 출간된 《하스켈로 배우는 프로그래밍》의 옮긴이 머리말을 공유한 것으로, 하스켈이 단순한 학술적 언어를 넘어 실무적인 범용 언어로 발전한 배경과 그 우수성을 설명합니다. 다양한 업계에서 상용 소프트웨어의 핵심 기술로 활용되는 하스켈은 효율적인 컴파일 언어이면서도 스크립트 언어처럼 빠른 개발이 가능하며, 안전한 정적 타입 언어이면서도 동적 타입 언어처럼 유연한 특징을 지닙니다. 특히 타입 클래스라는 독특한 기능을 통해 코드의 확장성을 높이고, 오브젝트 중심 언어의 인터페이스보다 더 유연하게 대처할 수 있음을 강조합니다. 하스켈은 프로그래밍 언어 연구 성과를 충실히 반영하여 개발 효율성과 코드 안정성을 동시에 추구하는 IT 전문가들에게 매력적인 선택이 될 수 있으며, 이 글은 하스켈의 장점을 다양한 예시와 함께 소개하여 독자들이 하스켈에 대한 이해를 높이고 더 깊이 있는 학습으로 나아가도록 안내합니다.

Read more →
7

The “default” working model for open source projects (and some small/medium businesses) is working in public: you don’t need permission to contribute, you can just show up.

This works surprisingly well much of the time … but sometimes it doesn’t. When it doesn’t, people often retreat into working in private, with no mechanism for broader involvement.

This is a mistake! There is a middle ground, in between public and private, with the benefits of both: jacobian.org/2025/oct/18/worki

0
0
0

Jaeyeol Lee shared the below article:

[IoT] Guide for IoT Beginners

Juan @juanjin@hackers.pub

This technical blog post provides a comprehensive overview of the Internet of Things (IoT), demystifying its core concepts and architecture. It explains how IoT bridges the physical and digital worlds through interconnected devices, gateways, service applications, and servers. The post emphasizes the importance of IoT for individuals, businesses, and society, highlighting its potential to enhance convenience, efficiency, and sustainability. The author explores essential IoT components, including end-devices, gateways, servers, and service applications, detailing their roles in sensing, transmitting, processing, and acting on data. It also addresses common misconceptions about IoT, clarifying that it extends beyond smart homes and involves multidisciplinary systems. The post further discusses network topologies like direct connections, hierarchical connections, and mesh networks, explaining their trade-offs in terms of power, scalability, and resilience. Additionally, the author delves into non-IP connection technologies, such as UART, CAN, IEEE 802.11, Bluetooth/BLE, LoRa, and GNSS, and application protocols like LoRaWAN, MAVLink, UAVCAN, NMEA/UBX, Thread, CoAP, MQTT, and LwM2M. The post also covers Firmware Update Over-The-Air (FUOTA) and IoT security, emphasizing the need for cryptographic foundations, secure communication, secure boot, and access control. The author concludes by calling for greater investment, education, and ecosystem building in IoT, particularly in South Korea, to catch up with global advancements. This post is valuable for anyone seeking a deeper understanding of IoT and its potential impact on various aspects of life and industry.

Read more →
1
2
0

ChatGPT Atlas 쓰고 있는데, 트위터에 와다다 쓴 내용을 정리하자면.... 실용적인 관점에서 보면 굉장히 좋은건 맞는 것 같다. 퍼플렉시티에서 만들었다는 AI 기반의 브라우저 Comet과 비교하면 어떤지는 모르겠다만, 내가 Atlas 쓰고 있는 입장에서의 주관적인 경험을 남기자면 이렇다.

  1. 웹 페이지로 제공되는 모 교과서 페이지로 테스트 해봤는데, 확실히 학습용으로는 괜찮은 듯. PDF 문서 내용가지고 질답 주고받기도 괜찮다.
  • 첨부된 이미지를 보면 알겠지만, 웹 페이지로 제공되는 교과서 뿐만이 아니라 웹 상에 업로드된 PDF 교재도 질답을 주고 받을 수 있고 퀄리티도 적당히 괜찮은 편이다. (로컬에 있는 파일도 접근이 된다!!)
  1. 각 페이지마다 ChatGPT와 대화를 할 수 있는 버튼이 있는데, 여기서 "ChatGPT에게 묻기" 버튼에서 열리는 대화창은 브라우저의 각 탭마다 (페이지 단위가 아니다) 붙어있다.
  • 즉, A 페이지에 대해 뭔가를 물어보면 A 페이지에 대한 맥락을 가지고 답변을 해주고, 다시 B 페이지에 대해서 뭔가를 물어보면 B페이지에 대한 맥락도 같이 입력되어서 종합적인 답변을 내주는 식으로 동작한다.
  1. 다만..... 브라우저에서 질답을 주고받은 내용이 왼쪽 사이드바에 와다다다 하고 히스토리가 누적되어서 어느 정도는 관리가 필요할 수 있다.
ChatGPT Atlas에서 질답 주고받은 내용이 ChatGPT 웹 페이지의 사이드바에 누적이 되어 있다.PDF 교재에 대해 질답을 주고 받았다.웹 페이지 교과서 내용에 대해 질답을 주고 받았다.
8
1