오랜만에 글 쓰려고 하니까 어렵네요.
# 개요
개요 바이브코딩 여러분들은 AI로 개발할 때 가장 중요하다고 보는 게 무엇인가요?
모델의 성능? 정교한 프롬프트? 컨텍스트 엔지니어링? 최신 기술이 포함된 하네스? 더 효과적인 LLM 평가 방법? 워크스페이스 및 세션 분리? AI 혹은 인간 개발자에 대한 자율성? 모두 중요한 것들이지만, 제 경험 상 단 하나의 가치에 의해 충분히 조율될 수 있는 것들이라고 생각되는 항목들입니다.
재현가능성 저희가 어떤 경험을 한 사람을 만나거 …
# 들어가며
들어가며 미쳐버린 생산성 미쳐버린 AI의 발전으로 인해 수 많은 사람들이 AI에의해 월급을 받지 못 하고 있습니다. 하지만, 프리는 오히려 늘었죠. 저 또한 회사에서 개발하는 시간은 오히려 줄고, 사이드로 뭔가 하는 건 상당히 늘었습니다. 사이드로 안 가더라도 회사에서 하나를 개발하는 시간이 줄고, 다른 걸 더 개발하는 회수가 늘기도 했죠.
생산성의 역설 여기까지만 보면 AI는 단순히 생산성을 혁신적으로 높이는 도구로만 보일 …
이에 대해 제 기나긴 헛소리가 이어질 예정입니다. 불편하시면 그런거 아닌데!라고 해주세요.
# TL;DR
TL;DR 리셋 버튼이 된 트럭: 과거의 교통사고가 성장을 위한 시련이었다면, 현대의 트럭은 지친 현실을 가장 효율적으로 끝내고 새로운 삶을 시작하게 돕는 리셋 버튼입니다. 노력 가성비와 치트 능력: 노력이 보상받지 못하는 저성장 사회에서, 고통스러운 수련 과정(전문성)을 생략하고 즉각적인 보상을 얻으려는 딸깍 심리가 치트 능력 서사로 나타납니다. 관계 청산과 안식의 재정의: 집과 가정을 구속이자 감시(부모)로 느끼는 세대에게 …
# 메락아, 그게 무슨 소리니?
메락아, 그게 무슨 소리니? 아니 일단 들어봐 서비스가 되었든, 소프트웨어가 되었든, 어떤 프로젝트에 대해 보통 기업은 신기술에 밝거나, 손이 빠르거나, 임원의 말을 잘 듣는 사람에게 첫 스타트를 시키는 경우가 많습니다. 하지만 단순히 그렇게 되어서는 서비스나 소프트웨어의 수명이 줄어들어서, 유지보수 비용의 증가 뿐만 아니라 해당 프로젝트를 대체할 새로운 프로젝트를 해야할 수 있어, 큰 지출로 다시 돌아올 수 있습니다.
그래서 …
이것 또한 최근 포스트와 마찬가지로, 최근에 진행했던 프로젝트의 회고입니다.
# 개요
개요 해당 프로젝트에는 개인적으로 몇가지 이해가 어려운 부분들이 좀 있었습니다. 그 중 R&R에 대해 제가 품은 의문과 그에 대한 제 나름의 해결 방법을 서술하고자 합니다.
본문 어떤 부분이? API GW와 서비스만 책임 분리 API GW와 인증 및 인가 책임 각 서비스 간의 역할과 책임 분리 API GW와 서비스간의 책임 분리에 대해 설계 당시부터 지금까지 모든 서비스는 k8s에 pod로써 운영되고 있습니다. 대략적으로 네트 …
# Liskov Substitution Principle with inheritance
Liskov Substitution Principle with inheritance 리스코프 치환 법칙은 객체지향 프로그래밍에서 중요한 법칙 중 하나입니다.
서브 타입은 언제나 슈퍼 타입으로 대체될 수 있어야 한다.
개인적으로는 살짝 헷갈린 적이 있는 표현이지만, 코드 내의 인스턴스 타입을 교체하는 케이스로 이해하면 쉽습니다.
상속을 활용한 케이스 이 법칙은 일반적인 상속이 존재하는 객체지향 지향 언어에서 쉽게 설명되는 법칙입 …
# 개요
개요 코드를 구조화하는 건 생각보다 어렵지 않다고 생각합니다. 하지만 생각보다 어렵기도 하죠. 그래서 사실 이걸 어떻게 표현해야할 지는 모르겠는데, 그냥 편하게 아키텍처를 만드는 것에서 프로젝트 구조를 짜는 것, 코드를 작성하는 것까지의 제 나름대로의 룰을 정리해보려고 합니다.
룰 모듈 혹은 서비스를 분리하세요. 모듈을 서비스와 동치해서 서술합니다.
아키텍처나 프로젝트 전반에서 한번에 거대한 문제를 해결하려고 하지 않습니다. …
# 구조체 임베딩
구조체 임베딩 구조체 임베딩은 구조체를 다른 구조체의 필드로 사용하는 것을 말합니다. 예를 들어 다음과 같은 구조체가 있다고 가정해봅시다.
type Person struct { Name string Age int } 그리고 이 구조체를 다른 구조체의 필드로 사용한다면 다음과 같이 사용할 수 있습니다.
type Student struct { Person Grade int } 그러면 마치 Student 구조체에 Person 구조체 …