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
3
7
4
2
0
1
2
0
1

굉장히 오랜만에 들어와서 쓰는 근황입니다.

  • TIS-100의 모든 레벨을 클리어했습니다. 다음 목표는 아마 Opus Magnum 아니면 A=B가 될 것 같습니다.
  • 올해 여름부터 지금까지 7문제를 백준에 출제했습니다. 여기의 맨 아래에서 보실 수 있습니다. 개인적으로 가장 재밌었던 문제는 SWAP-C Sort인데 그만큼 어렵습니다.
  • 웹 기반으로 뭔가 만들 게 생겨서 프레임워크를 알아보다가 Solid를 써보기로 결정했습니다. 웹 UI는 Flowbite, 그래픽 요소는 Konva를 쓰게 될 것 같습니다.
  • 그런데 이쪽을 첫삽을 뜨기도 전에 갑자기 굉장히 어려운 퍼즐틱한 문제 하나의 풀이가 완성되어서(....) 논문(?!)을 하나 쓰기 시작했습니다. 이런 거 받아주는 저널 어디 없을까요(????)
3
0
0
0
0
3
0
2
0
0
4
1

Jaeyeol Lee shared the below article:

도커로 구축한 랩에서 혼자 실습하며 배우는 네트워크 프로토콜 입문 #3-2

자손킴 @jasonkim@hackers.pub

이 글은 네트워크 라우팅의 기본 개념과 동작 방식, 그리고 NAT 기술에 대해 설명합니다. 라우팅은 IP 패킷이 목적지에 도달하기 위해 거쳐야 하는 경로를 결정하는 과정으로, 라우팅 테이블을 통해 넥스트 홉을 찾아 패킷을 전달합니다. 라우팅 방식에는 수동으로 설정하는 정적 라우팅과 라우터 간 정보 교환을 통해 자동으로 경로를 설정하는 동적 라우팅이 있습니다. 또한, NAT는 하나의 공인 IP 주소를 여러 장비가 공유할 수 있도록 IP 주소를 변환하는 기술로, 특히 NAPT는 IP 주소와 포트 번호를 함께 변환하여 효율적인 네트워크 사용을 가능하게 합니다. 이 글을 통해 독자는 네트워크 라우팅과 NAT의 핵심 원리를 이해하고, 실제 네트워크 환경에서 이들이 어떻게 활용되는지 파악할 수 있습니다.

Read more →
0

브라우저 구현 스터디하면서 파서 구현 중인데, 예외케이스 처리하고 상태 관리로 서커스해야할게 너무 많다. DFA 추상화라도 해야하나 싶어서 다른 구현체 봤더니 실제로 그렇게 하고 있다.

Chromium(Blink) : https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/html/parser/html_tokenizer.cc;l=1677 관련 표준 : https://html.spec.whatwg.org#tokenisation0

😇😇

3

브라우저 구현 스터디하면서 파서 구현 중인데, 예외케이스 처리하고 상태 관리로 서커스해야할게 너무 많다. DFA 추상화라도 해야하나 싶어서 다른 구현체 봤더니 실제로 그렇게 하고 있다.

Chromium(Blink) : https://source.chromium.org/chromium/chromium/src/+/main:third_party/blink/renderer/core/html/parser/html_tokenizer.cc;l=1677 관련 표준 : https://html.spec.whatwg.org#tokenisation0

😇😇

6
1
0
0

I making next-version of apmodel, that uses pydantic for better validation and better loader.

Currently, this feature is either not implemented or not fully implemented:

  • export to json is not avaliable

Additionally, some models have not been migrated to pydantic, so they cannot be used properly.

If you interested this, can read this branch: https://github.com/fedi-libs/apmodel/tree/pydantic

3
11
1
10

초안이고, 아직은 완성된 글이 아님. 약속이 있는 관계로 일단 중간 세이브....

0

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

Jaeyeol Lee @kodingwarrior@hackers.pub

이 글은 Web Browser Engineering을 독학하며 겪은 경험을 담고 있으며, 특히 Chapter 2의 연습문제 풀이에 대한 내용을 다룬다. Chapter 2는 브라우저 주소창에 입력을 감지하는 과정부터 HTML을 화면에 렌더링하는 과정을 개괄적으로 설명한다. 마우스나 키보드 입력이 CPU를 통해 커널에 인터럽트 요청으로 전달되고, 브라우저가 이를 처리하여 서버와 통신하며, 최종적으로 그래픽 시스템을 통해 화면에 표시되는 과정을 요약한다. 이벤트 루프의 역할이 중요하지만, 챕터에서는 텍스트를 화면에 출력하는 수준으로 다룬다. 연습문제 중 Emoji 지원과 RTL(Right-to-Left) 지원에 대한 해결 방법이 제시된다. 특히 RTL 지원을 위해, 저자는 텍스트를 한 줄 단위로 묶어 GUI 툴킷이 RTL 순서를 처리하도록 하고, 라인의 시작점을 계산하여 화면 오른쪽에 맞춰 출력하는 방법을 사용했다. Emoji의 경우, 좌표를 미리 지정하여 텍스트 라인과 분리하여 처리함으로써 문제를 해결했다. 이 글은 브라우저 엔진의 기본적인 동작 원리를 이해하고, 실제 구현 과정에서 마주칠 수 있는 문제에 대한 해결책을 제시하여 독자에게 실질적인 도움을 줄 수 있다.

Read more →
9
1
1
0

[8일차] 20p.

미국의 심리학자 헬레나 매튜트Helena Matute는 그의 논문 〈인과관계의 환각 Illusions of Causality〉에서 이렇게 지적했다. "시각적 환상과 같이 인과의 환각은 모든 사람에게서 흔히 발생한다. 과학적 사고 방법은 인과의 환각을 방지하는 최적의 경로다. 그러나 과학적 사고 방법은 본능적 반응이 아니며 습득이 필요한 기법이다." 헬레나 매튜트가 언급한 과학적 사고 방법은 구조화 전략 사고와 결을 같이하며 이성적 사고, 즉 느린 사고에 속한다.

맥킨지 논리력 수업 8일차
1
0
6

Jaeyeol Lee shared the below article:

자연어에서의 재귀와 카탈랑 수

구슬아이스크림 @icecream_mable@hackers.pub

이 글은 자료구조와 알고리즘에서 중요한 개념인 재귀가 자연어에서 어떻게 나타나는지, 특히 통사론적 관점에서 인간 언어 능력의 창조성을 보여주는지를 탐구합니다. 'X의 Y의 Z의...'와 같은 소유격 조사를 사용한 문장 확장을 통해 재귀의 개념을 설명하고, 이러한 재귀가 카탈랑 수와 연관되어 있음을 지적합니다. 영어 예시를 통해 전치사구의 추가가 문장의 중의성을 증가시키고, 구문 분석의 가능한 경우의 수가 카탈랑 수열을 따른다는 것을 보여줍니다. 생성 규칙을 통해 명사구를 재귀적으로 확장하면서 중의성 계수가 카탈랑 수와 동일하게 나타남을 설명합니다. 마지막으로, 자연어의 중의성 해소는 산술 표현식과 달리 확률에 의존하며, 이는 전산/심리언어학에서 중요한 연구 주제임을 강조합니다. 이 글은 재귀의 개념이 자연어에서 어떻게 복잡하게 작용하는지, 그리고 그 중의성을 이해하는 것이 왜 중요한지를 흥미롭게 제시합니다.

Read more →
7
2
1
4
  • OSSCA 2025 성과공유회 발표
  • 브라우저 스터디 Chapter 2 풀이글? 작성
  • 브라우저 스터디 Chapter 3 연습문제 밀기
  • 코스모 슬라이드 개발
  • 면접 준비
4
5

브라우저 구현하는데 폰트 가로폭 측정함수가 너무 느려서 디버깅하다가 결국 측정함수 사용을 최소화하고, 인메모리 캐싱하는 전략을 썼다. 결과적으론 성공인데, ChatGPT한테 물어보면서 리눅스 구현체 vs macOS 구현체의 심연을 들여다보는 중....

0

브라우저 구현하는데 폰트 가로폭 측정함수가 너무 느려서 디버깅하다가 결국 측정함수 사용을 최소화하고, 인메모리 캐싱하는 전략을 썼다. 결과적으론 성공인데, ChatGPT한테 물어보면서 리눅스 구현체 vs macOS 구현체의 심연을 들여다보는 중....

1

Jaeyeol Lee shared the below article:

도커로 구축한 랩에서 혼자 실습하며 배우는 네트워크 프로토콜 입문 #2

자손킴 @jasonkim@hackers.pub

이 글은 동일 네트워크 내 장비들이 L2 스위치를 통해 통신하는 방식에 대해 설명합니다. MAC 주소를 기반으로 통신하는 L2 계층은 통신 시작 시 IP 주소만 알고 MAC 주소를 모르는 상황을 해결하기 위해 ARP를 사용합니다. MAC 주소와 IP 주소의 역할, 이더넷 프레임 구조, 그리고 ARP의 동작 방식과 한계점을 상세히 다룹니다. 또한 L2 스위칭의 핵심인 MAC 주소 테이블과 flooding 과정을 설명하고, MAC 주소 중복 문제와 VLAN 기술을 소개합니다. 마지막으로, OVS 환경에서 VLAN 설정 시 vlan_mode와 tag의 의미를 명확히 구분하여 네트워크 구성에 대한 이해를 돕습니다.

Read more →
4
1