Skip to content

Commit ceffc8a

Browse files
docs(blog): sir.kr 2024년 포스트 4건 마이그레이션 (3개 언어)
- 블로그 유목민 정착기 (플랫폼 전전 → GitHub Pages) - MSA 설계에 ChatGPT 활용 후기 - SvelteKit 프레임워크 입문 도전 - 벡터 데이터베이스 도입 판단 기준 정리
1 parent 7edfb12 commit ceffc8a

12 files changed

Lines changed: 810 additions & 0 deletions
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
---
2+
layout: post
3+
title: "The Blog Nomad Finally Settles Down"
4+
date: 2024-01-15 09:00:00 +0900
5+
categories: [Life, Essay]
6+
tags: [Blog, WordPress, GitHub Pages, Developer, Writing]
7+
author: "Kevin Park"
8+
lang: en
9+
excerpt: "Naver Blog, Tistory, WordPress, GitHub Pages... After years of platform-hopping, I've finally settled. A developer's blog nomad journey comes to an end."
10+
---
11+
12+
# The Blog Nomad Finally Settles Down
13+
14+
## A History of Wandering
15+
16+
I didn't expect running a single blog to be this hard.
17+
18+
Looking back, the number of blog platforms I've been through is embarrassing.
19+
20+
**Naver Blog** — Where it all started. Accessible, but code block support was terrible. You can't write dev content without proper code formatting. The frustration drove me out.
21+
22+
**Tistory** — Moved for the free skin customization. Markdown support was decent. But after Kakao acquired it, things felt unstable. Policies kept changing, and depending on a platform for my own content felt wrong.
23+
24+
**WordPress** — Self-hosted means full ownership, so I switched. The plugin ecosystem is incredible, but update management is a pain. Plugin conflicts crash the site, skip security patches and you get hacked. I came to write blog posts but ended up managing a server.
25+
26+
**GitHub Pages** — Jekyll-based static site. Write in Markdown, git push, done. No server management, free, full ownership. Initial setup was a bit tedious though, and the entry barrier for non-developers is high.
27+
28+
## Why All the Moving?
29+
30+
Each migration had its reasons. But honestly, looking back, they were closer to excuses.
31+
32+
The real reason is simple: **when you're not writing, you blame the platform.**
33+
34+
"The code blocks look ugly here." "Loading is slow." "SEO is bad." Switching blog platforms is like giving yourself a pass for not writing. Moving feels like a fresh start. But you move and still don't write.
35+
36+
It's the same as buying workout clothes to start a diet.
37+
38+
## This Time Is Different
39+
40+
I've settled on GitHub Pages + Jekyll.
41+
42+
The reasons are straightforward:
43+
44+
- Write in Markdown — the most natural format for developers
45+
- Managed with git — version control built in
46+
- No hosting costs — free
47+
- Custom domain support — looks professional
48+
- No platform lock-in — Markdown files can go anywhere
49+
50+
The most important thing: writing a blog post follows the same workflow as writing code. Open editor, write Markdown, git commit, push. It feels natural because it's identical to the development cycle.
51+
52+
## It's About Habit, Not Platform
53+
54+
In the end, blog failure isn't a platform problem — it's a habit problem.
55+
56+
No matter which platform you use, the key is writing consistently. Don't aim for perfect posts. Write short, write often. And stick with wherever you've chosen. No more moving.
57+
58+
I'm genuinely going to write regularly this time. Of course, I've made this promise every time... but this time it's for real. Probably. Maybe.
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
---
2+
layout: post
3+
title: "ブログ遊牧民、ついに定住する"
4+
date: 2024-01-15 09:00:00 +0900
5+
categories: [Life, Essay]
6+
tags: [ブログ, WordPress, GitHub Pages, 開発者, 執筆]
7+
author: "Kevin Park"
8+
lang: ja
9+
excerpt: "いくつものブログプラットフォームを転々として、ようやく定住しました。開発者のブログ遊牧生活の終結記です。"
10+
---
11+
12+
# ブログ遊牧民、ついに定住する
13+
14+
## 遊牧生活の歴史
15+
16+
ブログ一つ運営するのがこんなに大変だとは思いませんでした。
17+
18+
振り返ると、今まで経てきたブログプラットフォームの数は一つや二つではありません。
19+
20+
**韓国の大手ブログ** → 最初に始めた場所。アクセシビリティは良かったのですが、コードブロックのサポートがひどかったです。開発記事を書くにはコードが必須なのに、きれいに表示されない。そのストレスで離れました。
21+
22+
**Tistory** → スキンのカスタマイズが自由だったので移動。Markdownもサポートしていてまあまあ良かったです。でも買収後に何か不安になりました。ポリシーが頻繁に変わり、自分のコンテンツなのにプラットフォーム依存というのが引っかかりました。
23+
24+
**WordPress** → 自分でホスティングすれば完全な所有権があるので移動。プラグインのエコシステムは素晴らしいのですが、アップデート管理が面倒です。プラグインの競合でサイトがダウンし、セキュリティパッチを怠ると攻撃される。ブログを書きに来たのにサーバー管理をしている状態でした。
25+
26+
**GitHub Pages** → Jekyllベースの静的サイト。Markdownで書いてgit pushすれば完了。サーバー管理不要、無料、完全な所有権。ただし初期セットアップが少し面倒で、非開発者にはハードルが高いです。
27+
28+
## なぜこんなに引っ越したのか
29+
30+
毎回引っ越すたびにそれなりの理由がありました。でも正直に振り返ると、言い訳に近かったです。
31+
32+
本当の理由は一つ。**書いていないからプラットフォームのせいにしている。**
33+
34+
「ここはコードブロックがきれいじゃないから」「ここはロードが遅いから」「ここはSEOが弱いから」...ブログプラットフォームの引っ越しは、書かない自分への免罪符のようなものです。引っ越せば新しく始められる気がする。でも引っ越しだけして、また書かない。
35+
36+
ダイエットのために運動着を買うのと同じです。
37+
38+
## 今度こそ違います
39+
40+
今回定住した場所はGitHub Pages + Jekyllです。
41+
42+
理由はシンプルです:
43+
44+
- Markdownで書く → 開発者にとって最も自然なフォーマット
45+
- gitで管理する → バージョン管理ができる
46+
- サーバー費用がない → 無料
47+
- カスタムドメイン対応 → プロフェッショナルに見える
48+
- プラットフォームに依存しない → Markdownファイルはどこにでも移せる
49+
50+
最も重要なのは「ブログを書く過程が開発ワークフローと同じ」ということです。エディタでMarkdownを書いて、git commitして、push。コードをコミットするようにブログが書けるので自然です。
51+
52+
## プラットフォームではなく習慣の問題
53+
54+
結局ブログがうまくいかないのはプラットフォームの問題ではなく、習慣の問題でした。
55+
56+
どのプラットフォームを使おうが、コンスタントに書くことが核心です。完璧な記事を書こうとせず、短くても頻繁に書くことが大事です。そして一度決めた場所で書き続けること。引っ越しはもうおしまい。
57+
58+
今回の定住地では本当にコンスタントに書くつもりです。もちろんこの決意も毎回してきましたが...今度こそ本当です。たぶん。おそらく。
Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
---
2+
layout: post
3+
title: "블로그 유목민, 드디어 정착하다"
4+
date: 2024-01-15 09:00:00 +0900
5+
categories: [Life, Essay]
6+
tags: [블로그, 티스토리, 워드프레스, 네이버블로그, 개발자]
7+
author: "Kevin Park"
8+
lang: ko
9+
excerpt: "네이버 블로그, 티스토리, 워드프레스, GitHub Pages... 블로그 플랫폼을 전전하다가 드디어 정착했다. 개발자의 블로그 유목 생활 종결기."
10+
---
11+
12+
# 블로그 유목민, 드디어 정착하다
13+
14+
## 유목 생활의 역사
15+
16+
블로그 하나 운영하는 게 이렇게 어려울 줄 몰랐다.
17+
18+
돌이켜보면 지금까지 거쳐 온 블로그 플랫폼이 한둘이 아니다.
19+
20+
**네이버 블로그** → 처음 시작한 곳. 접근성은 좋았는데 코드 블록 지원이 형편없었다. 개발 글 쓰려면 코드가 필수인데 이쁘게 들어가질 않으니까 스트레스받아서 떠남.
21+
22+
**티스토리** → 스킨 커스터마이징이 자유로워서 이동. 마크다운도 지원하고 나름 괜찮았다. 근데 카카오가 인수하고 나서 뭔가 불안해졌다. 정책이 수시로 바뀌고, 내 콘텐츠인데 플랫폼 의존적이라는 게 꺼림칙했다.
23+
24+
**워드프레스** → 직접 호스팅하면 완전한 소유권이 있으니까 이동. 플러그인 생태계가 대단하긴 한데, 업데이트 관리가 귀찮다. 플러그인 충돌 나면 사이트가 뻗고, 보안 패치 안 하면 해킹당하고. 블로그 쓰려고 왔는데 서버 관리를 하고 있다.
25+
26+
**GitHub Pages** → Jekyll 기반 정적 사이트. 마크다운으로 쓰고 git push하면 끝. 서버 관리 필요 없고, 무료이고, 완전한 소유권. 근데 초기 세팅이 좀 귀찮고, 비개발자한테는 진입 장벽이 높다.
27+
28+
## 왜 이렇게 옮겨 다녔나
29+
30+
매번 옮길 때마다 나름의 이유가 있었다. 근데 솔직히 돌이켜보면 핑계에 가까웠다.
31+
32+
진짜 이유는 하나다. **글을 안 쓰니까 플랫폼 탓을 하는 거다.**
33+
34+
"여기는 코드 블록이 안 이뻐서", "여기는 로딩이 느려서", "여기는 SEO가 안 좋아서"... 블로그 플랫폼 옮기는 건 글 안 쓰는 자신에 대한 면죄부 같은 거다. 이사하면 뭔가 새롭게 시작할 수 있을 것 같은 기분. 근데 이사만 하고 글은 또 안 쓴다.
35+
36+
다이어트하려고 운동복 사는 거랑 같은 거다.
37+
38+
## 이번에는 다르다
39+
40+
이번에 정착한 곳은 GitHub Pages + Jekyll이다.
41+
42+
이유는 단순하다:
43+
44+
- 마크다운으로 글을 쓴다 → 개발자한테 가장 자연스러운 포맷
45+
- git으로 관리한다 → 버전 관리가 된다
46+
- 서버 비용이 없다 → 무료
47+
- 커스텀 도메인 지원 → 전문적으로 보인다
48+
- 플랫폼에 종속되지 않는다 → 마크다운 파일은 어디로든 옮길 수 있다
49+
50+
가장 중요한 건 "글 쓰는 과정이 개발 워크플로우랑 같다"는 거다. 에디터에서 마크다운 쓰고, git commit하고, push. 코드 커밋하듯이 블로그를 쓸 수 있으니까 자연스럽다.
51+
52+
## 플랫폼이 아니라 습관의 문제
53+
54+
결국 블로그가 안 되는 건 플랫폼 문제가 아니라 습관의 문제였다.
55+
56+
어떤 플랫폼을 쓰든 꾸준히 글을 쓰는 게 핵심이다. 완벽한 글을 쓰려고 하지 말고, 짧더라도 자주 쓰는 게 중요하다. 그리고 한번 정한 곳에서 계속 쓰는 게 중요하다. 이사는 이제 그만.
57+
58+
이번 정착지에서는 진짜로 꾸준히 써보려고 한다. 물론 이 다짐도 매번 했었지만... 이번에는 진짜다. 아마도. 아마.
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
---
2+
layout: post
3+
title: "Using ChatGPT for Microservice Architecture Design - An Honest Review"
4+
date: 2024-02-10 09:00:00 +0900
5+
categories: [Development, AI]
6+
tags: [MSA, ChatGPT, Microservices, Architecture, AI]
7+
author: "Kevin Park"
8+
lang: en
9+
excerpt: "I tried using ChatGPT to help design a microservice architecture. It's no replacement for an architect, but as a rubber duck debugging partner, it's unbeatable."
10+
---
11+
12+
# Using ChatGPT for MSA Design
13+
14+
## ChatGPT as Architecture Consultant?
15+
16+
I've been actively using ChatGPT at work lately.
17+
18+
Using it for code generation and debugging is old news. This time, I tried it during the design phase of a microservice architecture project — decomposing an existing monolith into microservices, using ChatGPT as an architecture sounding board.
19+
20+
Bottom line: more useful than expected.
21+
22+
## Where It Helped
23+
24+
These were the main areas:
25+
26+
**Service boundary identification.** The hardest part of moving from monolith to microservices is deciding where to cut. I described the current system to ChatGPT and asked how it might be decomposed. The suggestions were reasonably sound. Not directly usable, but a solid starting point for thinking.
27+
28+
**Communication pattern decisions.** When debating synchronous (REST) vs asynchronous (message queue) for inter-service communication, I asked for pros, cons, and situational recommendations. Textbook answers, but well-organized — useful as decision-support material.
29+
30+
**Failure scenario simulation.** Questions like "If the payment service goes down in this architecture, what happens?" yielded helpful cascade failure scenarios. It surfaced edge cases I'd overlooked.
31+
32+
## Clear Limitations
33+
34+
ChatGPT can't replace an architect.
35+
36+
It doesn't know your actual system. Traffic patterns, team size, codebase state, business constraints — you can explain all of this, but it still can't fully grasp the real context.
37+
38+
It offers "general best practices," not "the right answer." MSA design varies by situation, but ChatGPT defaults to textbook responses. "Our team is 3 people with 100K lines of legacy code" type constraints don't get properly factored in.
39+
40+
And it occasionally states wrong things with full confidence. Hallucinations are particularly common with recent libraries and tool specifics. Never trust answers without verification.
41+
42+
## The Most Useful Role
43+
44+
Where ChatGPT proved most valuable was as a **rubber duck debugging partner.**
45+
46+
When designing architecture solo, it's easy to get trapped in your own thinking. You convince yourself an approach works and stop seeing counterarguments. Explaining your design to ChatGPT and asking "any problems with this?" surfaces edge cases you hadn't considered.
47+
48+
It's like having a colleague you can ask "can you review this?" — except this one answers at 2 AM. It can't replace a real colleague's experience and intuition, of course.
49+
50+
## My Practical Workflow
51+
52+
Here's the approach I've settled on:
53+
54+
1. I create the design first
55+
2. Explain it to ChatGPT and request a review
56+
3. Incorporate only the valid criticism
57+
4. Ask about implementation details during the build phase
58+
59+
The key: ChatGPT reviews my design — it doesn't create it. I always maintain ownership. That keeps responsibility clear.
60+
61+
AI tools genuinely boost productivity. But "AI will figure it out" is a dangerous mindset. Tools are tools, nothing more.
Lines changed: 61 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
---
2+
layout: post
3+
title: "MSA設計にChatGPTを活用してみた感想"
4+
date: 2024-02-10 09:00:00 +0900
5+
categories: [Development, AI]
6+
tags: [MSA, ChatGPT, マイクロサービス, アーキテクチャ, AI]
7+
author: "Kevin Park"
8+
lang: ja
9+
excerpt: "マイクロサービスアーキテクチャの設計にChatGPTを活用してみました。万能ではありませんが、ラバーダックデバッグの相手としては最高です。"
10+
---
11+
12+
# MSA設計にChatGPTを活用してみた
13+
14+
## ChatGPTがアーキテクチャ設計を?
15+
16+
最近、ChatGPTを業務に積極的に活用しています。
17+
18+
コード作成やデバッグに使うのはもう一般的ですが、今回はMSA(Microservice Architecture)の設計段階で使ってみました。既存のモノリシックサービスをマイクロサービスに分離するプロジェクトを進めながら、ChatGPTにアーキテクチャの相談をしてみたのです。
19+
20+
結論から言うと、思ったより使えました。
21+
22+
## どこに活用したか
23+
24+
主にこういった部分で助けてもらいました。
25+
26+
**サービス境界の設定**。モノリスからマイクロサービスに分離する時、最も難しいのが「どこで切るか」です。ChatGPTに現在のシステム構造を説明して「これをMSAに分離するならどう分けられるか?」と聞いたところ、かなり合理的な提案が出てきました。そのまま使えるわけではありませんが、思考の出発点としては良かったです。
27+
28+
**通信パターンの選択**。サービス間通信を同期(REST)にするか非同期(メッセージキュー)にするか迷った時、それぞれの長所短所と状況別の推奨を聞きました。教科書的な回答ではありますが、整理されていて意思決定の参考として良かったです。
29+
30+
**障害シナリオのシミュレーション**。「この構成で決済サービスがダウンしたらどうなるか?」のような質問を投げると、連鎖障害のシナリオを列挙してくれます。見落としていた部分を発見するのに役立ちました。
31+
32+
## 限界も明確
33+
34+
ChatGPTがアーキテクトを代替することはできません。
35+
36+
まず私たちのシステムの実際の状況を知りません。トラフィックパターン、チーム構成、既存コードの状態、ビジネス上の制約...全部説明しても実際のコンテキストを完全には理解できません。
37+
38+
「正解」ではなく「一般的なベストプラクティス」を教えてくれます。MSA設計は状況によって正解が異なりますが、ChatGPTは教科書的な回答に近いです。「うちのチームは3人でレガシーコードが10万行なんだけど」のような現実的な制約を反映した回答は期待しにくいです。
39+
40+
そして時々、自信を持って間違ったことを言います。特に最新のライブラリやツールの詳細についてハルシネーションが出ます。回答をそのまま信じず、必ず検証が必要です。
41+
42+
## 最も有用だった使い方
43+
44+
結局ChatGPTが最も有用だったのは**ラバーダックデバッグの相手**としてです。
45+
46+
一人でアーキテクチャを設計すると、自分の考えに閉じこもりがちです。「これでいけるのでは?」と確信すると反対意見が見えなくなります。ChatGPTに自分の設計を説明しながら「これに問題はないか?」と聞くと、思いもよらなかったエッジケースを提示してくれます。
47+
48+
以前は同僚に「これちょっと見てくれない?」とお願いしていたのが、深夜2時でも答えてくれる同僚ができたようなものです。もちろん本物の同僚の経験と直感は代替できませんが。
49+
50+
## 実践ワークフロー
51+
52+
私が定着した活用方式はこうです:
53+
54+
1. まず自分で設計案を作る
55+
2. ChatGPTに設計案を説明してレビューを依頼する
56+
3. 指摘された部分のうち妥当なものだけ反映する
57+
4. 実装段階で詳細を質問する
58+
59+
核心は「ChatGPTが設計するのではなく、自分が設計してChatGPTがレビューする」方式です。主導権は常に自分が持つこと。そうすれば結果に対する責任も明確になります。
60+
61+
AIツールが生産性を上げてくれるのは確かですが、「AIが何とかしてくれるだろう」は危険です。ツールはツールに過ぎません。

0 commit comments

Comments
 (0)