diff --git a/src/_data/available_wiki_documents.json b/src/_data/available_wiki_documents.json index 0b34f154..ea3ec86b 100644 --- a/src/_data/available_wiki_documents.json +++ b/src/_data/available_wiki_documents.json @@ -1 +1 @@ -["workbench/cheatsheet","mastodon/recommendations","archive","quarterly/2023-Q2","appendix/excelcon-2nd","appendix","rfc","rfc/2616","quarterly/2023-Q1","mastodon","vim-plugin/flutter-tools.nvim","digital-garden","prompt-engineering","vim-plugin/mind.nvim","improving-productivity","cli/diff","cli","dogfooding-driven-development","workbench","wezterm","vim-plugin/telekasten.nvim","vim-plugin","tmuxinator","symbol","neovim","projects/neural-bridge","daily/2023-01-19"] \ No newline at end of file +["quarterly/2023-Q3","workbench/cheatsheet","mastodon/recommendations","archive","quarterly/2023-Q2","appendix/excelcon-2nd","appendix","rfc","rfc/2616","quarterly/2023-Q1","mastodon","vim-plugin/flutter-tools.nvim","digital-garden","prompt-engineering","vim-plugin/mind.nvim","improving-productivity","cli/diff","cli","dogfooding-driven-development","workbench","wezterm","vim-plugin/telekasten.nvim","vim-plugin","tmuxinator","symbol","neovim","projects/neural-bridge","daily/2023-01-19"] \ No newline at end of file diff --git a/src/_data/wiki_datasets.json b/src/_data/wiki_datasets.json index 54aa17a6..2a490aa8 100644 --- a/src/_data/wiki_datasets.json +++ b/src/_data/wiki_datasets.json @@ -1,5 +1,9 @@ { "nodes": [ + { + "id": "quarterly/2023-Q3", + "group": 1 + }, { "id": "workbench/cheatsheet", "group": 1 @@ -156,6 +160,11 @@ "target": "quarterly/2023-Q2", "value": 1 }, + { + "source": "archive", + "target": "quarterly/2023-Q3", + "value": 1 + }, { "source": "quarterly/2023-Q2", "target": "appendix/excelcon-2nd", diff --git a/src/_wiki/archive.md b/src/_wiki/archive.md index c3fada6d..504c9e38 100644 --- a/src/_wiki/archive.md +++ b/src/_wiki/archive.md @@ -8,3 +8,4 @@ layout: wiki * [[quarterly/2023-Q1]]{2023 Q1 Review} * [[quarterly/2023-Q2]]{2023 Q2 Review} +* [[quarterly/2023-Q3]]{2023 Q3 Review} diff --git a/src/_wiki/quarterly/2023-Q3.md b/src/_wiki/quarterly/2023-Q3.md new file mode 100644 index 00000000..4df4603f --- /dev/null +++ b/src/_wiki/quarterly/2023-Q3.md @@ -0,0 +1,72 @@ +--- +title: 2023 Q3 Review +date: 2023-10-02 +layout: wiki +--- + +# Timeline + +* 2023-07-23 - [vim 스티커를 주문 제작해서 뿌리기 시작했다.](https://x.com/kodingwarrior/status/1683092921694953472?s=20) +* 2023-07-26 - [aka](https://social.silicon.moe/@akastwit?__type=mastodon) 님을 독촉해서 [zenn.dev](https://social.silicon.moe/@zenn_dev_trend_bot?__type=mastodon)[^1] 에 트렌드로 올라간 글들을 자동으로 포스팅하는 봇을 만들었다. +* 2023-08-12 ~ 2023-08-13 -- 파이콘 2023 참가 + * 스폰서 부스를 돌아다니면서, 열린 공간을 돌아다니면서 Vim 스티커를 뿌리고 다녔다. 스폰서 부스에서 굿즈를 받아가는게 일반적인건데, 일반 참가자가 스폰서 부스에 굿즈를 뿌리는건 어떨까라는 역발상에서 해본건데 나름 재밌었다. + * [Balpan CLI](https://github.com/balpan-rs/balpan) 0.1 버전을 릴리즈하면서 파이콘 1일차 라이트닝토크에서 소개했다.[(발표자료)](https://docs.google.com/presentation/d/1Vp18jPyOoez9J7ooLWHxyvl6mSEcahqCeqNsEK6BTTY/edit) + * 하필이면 라이트닝토크하는 시기에 발표하고자 했던 것도 나름대로의 이유는 있었다. Docker가 소개되기 시작했던 시기가 언제였는지 기억하는 사람이 얼마나 있을까? + * 이미 알고 있는 사람도 많이 있겠지만, Docker는 PyCon US 2013에 소개가 되었다. Balpan CLI도 내가 의도한 만큼의 퀄리티로 만들어진 상태는 아니지만, `시작은 미약하나 끝은 창대하리라` 라는 자기암시를 하고 싶었다. 어떻게 보면 상징적인 퍼포먼스를 하고 싶었다고 볼 수도 있겠다. +* 2023-09-19 -- 생일을 좀 조용하게 보내고 싶었어서 프로필에 적어놓은 생일 일부러 다 바꿔놓고, 소중한 사람들 한명 한명 찾아가서 시간을 보냈다. 잊혀지면서 지내는 삶에 좀 더 익숙해질 필요가 있다는 자각이 있었다. +* 2023-09-30 -- mastodon.nvim v0.2 출시 + * 2022년 12월 25일, 그러니까 딱 크리스마스를 기점으로 reddit에 홍보를 돌리고 트위터에도 홍보를 돌리고 hackernews에도 홍보를 돌리고 홍보를 위해서 수단과 방법을 다 동원했었지만 그렇게 큰 주목을 받지는 못했었다. + * 추석 연휴이기도 하니, 중간중간에 영감이 떠올랐던 것들을 정리해서 겸사겸사 묵은 이슈들을 쳐냈고, 더 이상 쳐낼 수 있는건 없겠다는 판단이 들어 v0.2 릴리즈를 출시했다. + * 홍보를 하기에는 telescope.nvim을 연결한다던가 nvim-cmp를 연결한다던가 좀 더 작업이 필요하다. UX를 좀 더 대폭적으로 손을 봐야 한다. + +# Highlights + +## Prompt engineering 삼매경 + +프롬프트 엔지니어링에 재미가 들리기 시작했다. 사실 인공지능 스터디를 옛날에도 몇번 해본적은 있었는데, 당장 쓸 일이 없는 블랙박스인 것 같다는 생각에 공부를 하다 말았던 적이 수십번은 있었던 것 같다. 그런데, 왜 프롬프트 엔지니어링에 재미가 들렸냐면, **Neovim에서 OpenAI API를 응용할 수 있기 때문이다.** + +OpenAI API를 응용할 수 있는 가능성은 [여기](https://github.com/Nutlope/aicommits)에서도 약간이나마 희망을 맛볼 수 있었는데, Neovim 생태계에도 OpenAI API를 응용하는 여러가지 플러그인도 있었다. 그 중에서 그나마 UX가 괜찮은 것이 [NeoAI](https://github.com/Bryley/neoai.nvim) 였는데, 유지보수는 잘 안되고 있긴 해도 기본적으로 제공하는 기능 자체가 UI/UX가 괜찮은 편이었고, **내가 직접 프롬프트를 넣어서 원하는대로 커스터마이징이 가능했던 것**이 큰 장점이었다. + +Neovim에서 어떻게 프롬프트를 넣는지는 이미 dotfiles에도 공개가 되어 있다. 다듬을 여지가 많이 필요하지만, 아직까지는 만족하면서 쓰고 있다. + +* [커밋 메시지 자동 생성](https://github.com/malkoG/dotfiles/commit/81190cbd077626c5f9bd60d904989275bed9d2e5) +* [Docstring 자동 생성](https://github.com/malkoG/dotfiles/commit/aede58916d529a8d500d3137f57ccc82382f2b1c) +* [커밋 메시지 수정](https://github.com/malkoG/dotfiles/commit/07c0e00f5ee5bfe77e6cffef05c6d3b8332bb326) + +프롬프트를 넣으면서 느끼는 점이 있다면, **생각하거나 쥐어짜내기 귀찮은 것을 LLM에다가 외주를 줄 수 있다**는 점이다. 심지어 시급도 저렴하다. 한번 프롬프트를 넣는데 10센트도 안된다. 적당한 멘트를 뽑아내고, 적당한 이름을 생각해보고, 고민하는데 드는 시간이 10분에서 30분까지 갈때가 있는데 GPT4 와 핑퐁하면 5분 안에 끝날때도 많다. 야매로 프롬프트를 넣을때도 적당히 괜찮은 퀄리티의 응답을 받을 수 있는데, 제대로 프롬프트를 넣으면 어떨까 싶은 생각을 자주 하고 있다. + +물론, ChatGPT가 정확한 답을 내놓지는 않을때가 많다는 것은 알고 있다. 아무리 포맷을 명확하게 지정해주더라도 100% 내가 원하는 것을 내놓지 않을때도 굉장히 많다. 나같은 경우에는 정확한 대답을 원한다기 보다는 **접근 방식**, 혹은 **대략적인 그림**을 원하는 것이었기 때문에, 정확도에는 크게 기대하지 않았고 어떻게 흐름을 유지하고 어디에 포커스를 둘지를 생각하면서 프롬프트를 넣기 때문에 만족하면서 써왔던 것 같다. + +프롬프트 엔지니어링을 진지하게 공부하려고 고민 중이었기에, [DAIR AI에서 만든 프롬프트 엔지니어링 가이드](https://www.promptingguide.ai/kr)도 하루 30분 할당량을 두고 읽고 있다. + +## 뒤늦게 피부 관리 + +얼굴까고 스트리밍 해야한다고 생각하니 억지로 한다는 생각으로 하다말고를 반복했던 피부관리에 동기부여가 강하게 생겼다. + +9월 중순부터 스트리밍을 진지하게 생각해보기 시작했던 것 같다. 사실 훨씬 이전부터 버튜버로 활동하려고 생각만 계속 하고 있었다. Asahi lina 라는 훌륭한 레퍼런스도 있고, 정상적인 개발 스트리머 중에는 ThePrimeagen, TJ Devries 같은 사람들도 있어서 틈틈이 보면서 연구중이기도 하다. 당장 실천하기에는 기술적으로 고려해야할 사항이 많았기 때문에 계속 미루고 있다. ~~요즘은 이세돌의 고세구도 자주 챙겨보고 있다~~ + +그렇지만, 세팅하는데 병목이 있다고 해서 계속 미루기만 할 수는 없을 노릇이다. 계속 미루다가 그냥 영영 안할바에는 차라리 빨간약[^2]을 먼저 복용하고, 파일럿 방송을 조금씩 오픈하면서 방송에 대한 감을 잡는걸 병행해야겠다는 판단이 들었다. [twitch](twitch.tv/kodingwarrior) + +모든 것을 한번에 준비하려고 해서는 안된다고 생각한다. 모든 문제는 부분적으로 쪼갤 수 있고 부분적으로 해결할 수 있다면 당장 해결할 수 있는 것부터 해결하는 것이 최종적으로는 목표에 도달할 수 있는 확률이 더 높아진다고 생각한다. + + +# Books + +이번 분기에는 번아웃이 좀 심하게 와서 책을 제대로 읽지는 못했다. 지난 분기보다는 2배 정도는 읽어야지 하는 각오는 있었지만, 동기부여가 되는 흐름을 만들어내지 못해서 읽었다고 할 수 있는거라고 해봐야 3권 정도가 고작이다. + +* [Rust programming language]() + * 위에서 언급했던 Balpan CLI을 맨땅에 헤딩하면서 작업하다가 ownership, lifetime 부분에서 머리가 깨질 것 같아서 한번 각 잡고 공부했었는데, 생각보다 진도가 빨리 나갔다. 한 주말에 온종일 투자해서 2일 컷. 챕터 10까지는 2시간 컷으로 빠르게 훑어볼 수 있었던 것 같다. +* 요약이 힘이다 +* 개발자의 하루를 바꾸는 코파일럿&챗GPT + +# Thoughts + +* Note taking vs Note making + +# Conclusion + +8월 말부터 시작해서 번아웃이 좀 심하게 왔다. 밥을 먹는 것도, 씻는 것도, 몸뚱이를 움직이는 것도 모든 것이 그냥 귀찮기만 하다. 생명을 유지하면서 살아야 하는 이유가 무엇인지, 내 삶이 그렇게 가치가 있는 삶인지도 모르겠고 그냥 허무주의 그 자체의 삶을 살고 있다. 이런게 딱히 부정적이라는 생각은 들지는 않고, 그냥 받아들이고 있다. 세상에 고립되는 사람이 나뿐만이 아니라는 자각도 있고, 고립되는 것을 받아들일 줄 알아야 한다고 생각한다. + + +[^1]: 한국으로 치자면 velog 같은 개발자 전용 블로그 호스팅 서비스라고 생각하면 된다. +[^2]: 매트릭스라는 영화에서 현실을 자각하게 해주는 약으로 등장하는데, 버튜버가 실물을 공개하는것을 은유적으로 표현할때 이런 워딩을 사용한다.