open source

2022년 오픈소스 커밋 통계

2022년 마지막 날을 맞아, 저의 간단하고 버그가 많은 스크립트와[1] github 을 통해 저의 오픈소스 커밋 통계를 내봤습니다. 리눅스 커널 통계 리눅스 커널의 메모리 관리 서브시스템과 커널 전체의 2022년 통계를 위해 제 버그 많은 스크립트를[1] 아래와 같이 돌려 봤습니다. 메모리 관리 서브시스템 2022년 한해, 305명의 사람들이 리눅스 커널 메모리 관리 서브시스템 개발에 참여해 81,631 라인의 변경을 2,135 개 커밋으로 만들었습니다. 변경한 라인 수와 커밋 갯수 기준으로 저는 그 305명 가운데 두번째와 (10,537 라인) 세번째로 (106 커밋) 큰 변경을 만들었군요.

나의 리눅스 커널 컨트리뷰션 10주년

오늘은 제가 리눅스 커널에 처음 기여를 한지 10년이 되는 날입니다. 그 작고 사소했던 패치를 포함해, 지난 10년간 총 381개의 패치를 메인라인에 기여했네요. $ git log --author SeongJae --reverse commit cf174b0ef52ad8184779e1da4132e2d9d17247e5 Author: SeongJae Park <sj38.park@gmail.com> Date: Tue Oct 16 16:47:50 2012 +0900 staging: csr: csr_framework_ext_types.h: fix coding style Fix coding style of csr_framework_ext_types.h Signed-off-by: SeongJae Park <sj38.park@gmail.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> [...] $ git log --author SeongJae --oneline | wc -l 381 다음 10년을 기대합니다.

Git Origin Story in Korean

최근 흥미롭게 보았던 Git Origin Story 라는 제목의 LinuxJournal.com 기사를 번역해 봅니다. 원본 기사는 https://www.linuxjournal.com/content/git-origin-story 에서 보실 수 있습니다. 수년간 리눅스 커널 개발자들이 사용해온 다양한 리비전 컨트롤 방법, Linus Torvalds가 Bit keeper 를 사용하기로 한 결정과 그에 뒤따른 논쟁, 그리고 어떻게 Git 이 만들어졌는가에 대한 글입니다. 처음에, Linus Torvalds는 리비전 컨트롤을 아예 사용하지 않았습니다. 커널에 코드를 기여하고자 하는 사람은 Usenet 그룹에, 나중에는 메일링 리스트에 패치를 올렸고, Linus는 자신의 소스 트리에 그걸 적용했습니다.

Fetching linux kernel source code

리눅스 커널은 오픈 소스 소프트웨어이므로 그 소스코드가 공개되어 있어 누구나 인터넷을 통해 쉽게 얻을 수 있습니다. 이 글에서는 리눅스 커널 소스코드를 받아올 수 있는 몇가지 방법을 설명합니다. kernel.org 리눅스 커널 소스 코드를 받아오기 위한 기본적 공식 사이트는 [kernel.org] (https://www.kernel.org) 라 할 수 있겠는데, 이 사이트에는 소스 코드를 포함해 리눅스 커널을 위한 다양한 리소스가 정리되어 있습니다. 이 사이트에 웹브라우저를 통해 들어가보면 첫페이지에서부터 가장 최근에 릴리즈된 버전의 소스코드, 가장 최근의 안정화된 버전의 소스코드 등을 tar.

Golang kakaotalk chat bot making

Kakaotalk [1] chat bot [2] 은 어떻게 만드는지 궁금해져서 Go 언어로 간단한 Kakaotalk chat bot 을 만들어 봤습니다. Go 언어의 강력함과 Kakaotalk auto-reply API 의 단순성, 그리고 echo 서버 역할 정도만 하자는 심플하다 못해 썰렁한 기능 목표 덕에 최초 목표한 데까지는 두시간 만에 만들어졌습니다. 매우 단순히 echo 서버 정도의 역할만 하고 있지만, 매우 단순하게 짜여져 있기 때문에 Kakaotalk chat bot 을 만들고자 할 때, 또는 Restful API 를 사용하는 서버를 Go 언어로 짜고자 할 때 시작용으로 참고할 만 하지 않을까 싶어 소개합니다.

beautifulhugo 테마 tags 기능 구현

꽤 맘에 드는 hugo 테마[1]를 찾았다. 하지만 tag 기능이 빠져있어 너무 아쉬워하다가 이대로 포기하기엔 너무 맘에 들어 이래저래 찾아보니 과거에 tag 기능 관련 이슈가 올라왔지만 close 처리된 상태. 이대로는 암만 기다려도 tag 기능을 구현해주진 않겠구나 싶어서 이것저것 보고 낑낑대며 서툴고 간단하게나마 tag 기능을 구현[2]. Pull request[3] 도 보냈는데 과연 받아들여줄런지. 업데이트: 별다른 discussion 없이 머지됐다 ;) [1] http://themes.gohugo.io/beautifulhugo/ [2] https://github.com/sjp38/beautifulhugo-sj [3] https://github.com/halogenica/beautifulhugo/pull/15