2024년 12월 31일 화요일

rust : lifetime

Rust 라이프타임(Lifetime) 쉽게 이해하기

Rust 라이프타임(Lifetime) 쉽게 이해하기

Rust에서 라이프타임(Lifetime)이란, “참조가 실제로 유효한 기간”을 의미합니다. 이 개념이 있는 이유는, Rust가 메모리 안전성을 보장하기 위해서에요. “값이 살아있는 동안만, 그 값을 참조할 수 있다”는 조건을 엄격하게 지키기 위해서는, “참조가 언제까지 유효한가?”를 Rust 컴파일러가 추적할 수 있어야 합니다.

라이프타임 없이 생기는 혼란

간단한 함수나 로직에서는 라이프타임 표기를 자주 쓰지 않아도 됩니다. 하지만 여러 개의 참조를 인자로 받고, 그 중 하나를 반환하는 함수는 이야기가 달라져요.

fn longest(x: &str, y: &str) -> &str {
    if x.len() > y.len() {
        x
    } else {
        y
    }
}

이 함수가 최종적으로 내보내는 참조가 언제까지 살아 있을지를 컴파일러는 명확히 알 수 없습니다. 특히 xy의 라이프타임(“참조가 유효한 기간”)이 서로 다르거나, 함수 호출 이후에 어떤 식으로 사용되는지에 따라 달라지면 컴파일러로서는 “어느 쪽 라이프타임에 맞춰야 하지?”라는 문제가 생기거든요.

좀 더 구체적으로 왜 혼란이 생길까?

  1. 컴파일러의 역할
    Rust 컴파일러는 참조가 유효한지(= 값이 아직 안 죽었는지) 항상 검사해야 해요. 값(owners)과 빌려 쓰는 참조(borrowers)가 있는데, 빌려 쓰는 동안 원본 값이 사라져버리면 안 되니까요.
  2. 함수 반환 시, 참조의 라이프타임 판단
    우리가 x 또는 y 중 하나를 반환한다고 했을 때, 컴파일러 입장에서는 “반환된 참조는 x의 라이프타임에 따라야 하나, y의 라이프타임에 따라야 하나?”라고 고민을 해야 해요.
    • 만약 x의 라이프타임이 y보다 짧은데 함수가 y를 반환한다면?
    • 그 반대 상황이라면?
    이처럼 어느 한 쪽으로도 결정하기 애매해서, 컴파일러는 에러를 낼 수밖에 없습니다.

명시적 라이프타임으로 해결

그래서 우리가 직접 함수 선언에 <'a>를 붙이고, 파라미터와 반환값에 'a를 지정해 주면 문제가 해결돼요.

fn longest<'a>(x: &'a str, y: &'a str) -> &'a str {
    if x.len() > y.len() {
        x
    } else {
        y
    }
}

이렇게 “둘 다 'a라는 동일한 기간(또는 그 이하)만큼만 유효해!”라고 컴파일러에게 확실히 알려주면, 컴파일러 입장에서는 “어떤 값을 반환하든, 'a라는 라이프타임 범위 내에서만 참조가 사용되는구나!” 하고 안심할 수 있게 됩니다. 결과적으로 컴파일러가 “라이프타임이 모호하다”는 이유로 에러를 내지 않는 것이죠.

정리하자면

  • 라이프타임은 참조(예: &str)가 언제까지 유효한가를 나타내는 개념입니다.
  • 함수 반환 시 여러 참조 중 어느 것을 반환하는 로직이 들어가면, 컴파일러가 정확한 라이프타임을 추론하기 어려워집니다.
  • 명시적 라이프타임(<'a>)을 써서 “함수의 파라미터와 반환값 사이의 라이프타임 관계”를 직접 명시해 주면, 컴파일러가 모호함 없이 판단할 수 있습니다.
  • 결국 무효 참조(Dangling Pointer)를 방지하고, Rust가 메모리 안전성을 컴파일 타임에 보장하도록 돕는 핵심 장치가 라이프타임이에요.

라이프타임은 Rust가 제공하는 강력한 메모리 안전 장치이지만, 처음에는 생소해서 어렵게 느껴질 수 있어요. 그래도 위 예시처럼 “왜 필요한지, 컴파일러가 어떤 혼란을 느끼는지”를 이해하면, 보다 쉽게 다가갈 수 있을 것입니다!

2024년 10월 17일 목요일

(가상) 등산로에서 만난 리더십

등산로에서 만난 리더십

등산로에서 만난 리더십

1막: 흐린 정상 (안개 속의 현실)

주인공 민서는 회사의 중간 관리자입니다. 어느 날, 회사 단합대회로 등산을 가게 됩니다. 산 정상을 향해 가는 길, 민서는 앞서가는 CEO를 바라봅니다.

민서: (속으로) '와, 대표님 정말 빠르게 올라가시네. 근데 왜 저 방향으로 가시지?'

동료: "민서 씨, 저기가 정상 아닌 것 같은데..."

민서: "글쎄... 대표님을 믿어야겠죠. 분명 특별한 이유가 있으실 거예요."

안개가 자욱해지면서 일행은 점점 희미해집니다.

2막: 갈림길에서 (현실을 마주하다)

한 시간 후, 일행은 갈림길에 도착합니다. CEO는 잠시 망설이다 왼쪽 길을 선택합니다.

민서: (조심스럽게) "대표님, 혹시 오른쪽 길은 어떨까요? 지도를 보니..."

CEO: "민서 씨, 난 20년째 등산을 해왔어. 내 직감을 믿으세요."

민서는 말을 멈추고 따라갑니다. 하지만 마음 한 구석이 불편합니다.

동료: (작은 목소리로) "저기, 우리 길을 잘못 들어선 것 같은데..."

민서: "쉿! 대표님이 들으실라. 어, 저기 버섯이 특이하네요?"

3막: 예상치 못한 발견 (새로운 시각)

결국 일행은 정상 대신 아름다운 계곡에 도착합니다. 모두 놀랍고 황홀한 풍경에 감탄합니다.

CEO: "여러분, 이게 바로 제가 찾던 곳입니다! 때론 목표를 바꾸는 것도 중요하죠."

민서: (깨달음을 얻으며) "와, 정말 아름답네요. 이런 곳이 있는 줄 몰랐어요."

그때 민서는 CEO의 배낭에서 살짝 보이는 지역 가이드북을 발견합니다.

민서: (미소 지으며) '아, 그래서 그렇게 자신 있어 하셨구나...'

일행은 계곡에서 즐거운 시간을 보내고, 회사로 돌아가는 길에 민서는 생각합니다.

민서: (속으로) '때로는 길을 잃는 것 같아 보여도, 새로운 기회를 발견할 수 있구나. 하지만 다음엔 지도도 좀 볼 수 있으면 좋겠어...'

그렇게 민서는 리더십의 다양한 면을 배우고, 자신의 역할에 대해 새롭게 고민하게 되었답니다. 물론 다음 등산 때는 은근슬쩍 자신이 지도를 들고 가겠다고 자원했다는 후문도...

2024년 10월 16일 수요일

(가상) AI 시대의 개발자들: 한 사무실의 좌충우돌 이야기

AI 시대의 개발자들: 한 사무실의 좌충우돌 이야기

AI 시대의 개발자들: 한 사무실의 좌충우돌 이야기

등장인물

  • 김코딩: 40대 중반, 고전적인 코딩 마니아 개발자
  • 이설계: 30대 후반, 분석과 설계를 중시하는 개발자
  • 박AI: 20대 후반, AI 도구에 능숙한 신입 개발자
  • 최팀장: 50대 초반, 팀의 리더이자 중재자

장면 1: 사무실 아침 풍경

(김코딩이 컴퓨터 앞에서 열심히 타자를 치고 있다. 이설계가 들어온다.)

이설계: (놀란 듯) 어머, 김 대리. 아침부터 무슨 일이에요? 타자 대회라도 나가나요?

김코딩: (자랑스럽게) 후후, 이 과장. 난 지금 우리 프로젝트의 핵심 알고리즘을 코딩 중이라고. 벌써 3000줄째야!

이설계: (한숨) 아, 그렇군요. 근데 혹시... 설계 문서는 보셨나요?

김코딩: 설계 문서? 그게 뭐죠, 먹는 건가요?

이설계: (한숨을 더 깊게 쉬며) 아... 괜찮아요. 그냥 계속하세요.

(박AI가 느긋하게 들어온다)

박AI: 안녕하세요, 선배님들!

김코딩: (뭔가 잘못됐다는 듯) 어라? 박 주임, 지각 아닌가?

박AI: (당황) 네? 아닌데요. 9시 정각이에요.

이설계: 맞아요. 근데 박 주임, 어제 맡긴 업무는 다 끝냈어요?

박AI: (자신 있게) 네, 다 했죠. AI의 도움을 받아 30분 만에 끝냈어요.

김코딩&이설계: (동시에, 놀라서) 뭐라고요?!

장면 2: 팀 회의실

최팀장: 자, 오늘은 새 프로젝트 킥오프 미팅입니다. 각자 준비한 내용 발표해보죠.

김코딩: (자신만만하게) 저는 벌써 코드의 기본 뼈대를 다 짰습니다. 객체 지향의 정수를 보여드리겠습니다!

이설계: (말을 끊으며) 잠깐만요. 저는 사용자 요구사항 분석과 시스템 아키텍처 설계를 완료했습니다. 이걸 먼저 검토해야...

박AI: (큰 소리로) 잠깐만요! 제가 AI를 이용해서 요구사항 분석부터 초기 프로토타입까지 다 만들어봤어요!

(모두 경악)

최팀장: (당황하며) 어... 그럼 박 주임 것부터 볼까요?

김코딩: (불만스럽게) 흥, AI가 뭘 안다고...

(박AI가 프로젝트를 시연한다. 모두 감탄)

이설계: 이건... 우리가 한 달은 걸릴 일을 하루 만에...?

김코딩: (충격 받은 듯) 내 청춘이... 내 새벽 3시 커피가... 다 어디로 간 거지...

최팀장: (감탄하며) 박 주임, 정말 대단해요. 그런데 이거... 합법적인 거 맞죠?

박AI: (당황) 네? 아... 그건 잘 모르겠어요. AI한테 물어볼까요?

장면 3: 점심 식사 후 카페

김코딩: (우울하게) 내가 그동안 자부심 가졌던 내 코딩 실력이... 이제 쓸모없어지는 건가...

이설계: (위로하며) 아니에요. 우리의 경험이 있어야 AI의 결과물도 제대로 검증할 수 있는 거예요.

박AI: 맞아요, 선배님들. AI는 도구일 뿐이에요. 그걸 어떻게 쓰느냐가 중요한 거죠.

김코딩: (갑자기 눈빛이 반짝) 그렇군! 내가 AI를 이용해서 더 많은 코드를 짤 수 있다는 거잖아?

이설계&박AI: (동시에 한숨) 아...

최팀장: (커피를 마시다 말고) 자네들, 이제 좀 알겠나? 우리에게 필요한 건 코드의 양이 아니라 비즈니스 가치를 만들어내는 거라네.

김코딩: (혼란스러워하며) 비즈니스요...? 그건 또 뭔가요, 새로운 프로그래밍 언어인가요?

모두: (폭소)

장면 4: 한 달 후, 사무실

(모두 화기애애한 분위기로 일하고 있다)

최팀장: 여러분, 정말 수고 많았습니다. 우리 팀이 AI를 활용해 개발 기간을 단축시키고, 고객의 요구사항을 정확히 반영한 덕분에 대형 프로젝트를 수주하게 되었어요!

모두: (환호)

김코딩: (부끄러워하며) 제가 고집을 부렸었네요. 이제 저도 AI의 도움을 받아 일하고 있어요.

이설계: 저도 요구사항과 설계에만 집중하지 않고, 비즈니스 가치 창출에 대해 더 고민하게 됐어요.

박AI: 저는 선배님들께 우리 분야의 깊이 있는 지식을 배우고 있어요. AI만으로는 부족하더라고요.

최팀장: (감격) 다들 정말 많이 성장했네요. 이제 우리는 AI 시대에 걸맞은 최고의 팀이에요!

(갑자기 정전이 된다)

모두: (당황) 어? 이게 무슨 일이지?

김코딩: (장난스럽게) 누가 AI한테 전기 아끼는 법도 좀 물어볼걸 그랬나봐요?

(모두 폭소하며 막이 내린다)

2024년 9월 12일 목요일

AI 없는 시대의 사람들

제목: **"AI 없는 시대의 사람들"**

**장면 1:**

(무대에 오래된 컴퓨터와 함께 등장하는 등장인물, 90년대 복고 패션)

**MC**: (들뜬 목소리) "자, 여러분! 오늘은 AI 시대에 들어서기 전에, 대체 사람들은 어떻게 살았는지 알아보는 시간입니다. 우리 인류는 AI 없던 시절, 대체 무슨 고생을 했을까요?"

**캐릭터 1:**

(타자기를 두드리며) "아이고, 편지 하나 쓰는데 왜 이렇게 힘들어! 요즘 애들은 '디프런트폰트' 어쩌구 한다던데, 우리 때는 말이야, 한 글자 틀리면 처음부터 다시 써야 했어!"

**캐릭터 2:**

(옆에서 고개를 끄덕이며) "맞아, 그때는 ‘자동 맞춤법’ 그런 거 없어. 맞춤법 틀리면 뭐다? 창피함 3년간 보관! 하하!"

**MC**: "그럼 AI 없던 시대에 사람들은 어떻게 길을 찾았을까요?"

**캐릭터 1:**

(종이 지도 펼치며) "이걸로 찾았지! 근데 문제는... 접힌 부분이 더럽게 안 맞아! 지도를 펴면 어디가 위고 아래인지 몰라! 겨우 찾으면, 거리에서 아저씨한테 물어봐야지."

**캐릭터 2:**

(웃으며) "그럼 아저씨가 이러지, ‘아, 저쪽으로 가면 한 5분 거리야!’ 근데 그 ‘5분’이 50분이지!"

**MC**: (웃으며) "그리고 길을 물어봤는데, 그 아저씨도 모른다는 거!" (관객들 웃음)

**캐릭터 1:**

(허리 아프다는 듯이) "나 때는 말이야, 물건 살 때도 AI 추천 없었어. 그냥 '카운터에 있는 사람이 좋다고 한 거' 샀지."

**캐릭터 2:**

(비웃으며) "그게 왜 문제냐면, 카운터에 있는 사람이 ‘유통기한 임박’ 상품을 추천했다는 거지!"

**MC**: (웃음) "AI 없던 시절에 맛집 찾기도 쉬웠을까요?"

**캐릭터 1:**

(고개를 절레절레) "무슨 소리! 그냥 줄 서 있는 곳 가는 거야. 사람 많으면 맛집이라고 믿고 먹는데, 알고 보니 그 사람들이 그냥 화장실 줄 서 있었던 거!"

**캐릭터 2:**

"그때도 후기가 있었지! 근데 후기가 뭐냐면, 그냥 ‘김씨 아저씨’가 지나가면서 ‘거기 괜찮아’ 한마디면 끝!"

**MC**: "이제는 AI가 추천해주는 거 아니면 아무것도 못 하겠지?"

**캐릭터 1**: (의기소침하게) "맞아... 나 AI한테 반찬 뭐 고를지도 물어봐..."

**캐릭터 2**: (의기양양하게) "그게 무슨 소리야! 나 AI 없던 시절엔 내 인생 다 내가 결정했지! ...결과는? 내가 결정하면 맨날 라면이지!"

**MC**: (웃으며) "결국 AI 없는 시대의 사람들은... 고생 많이 했군요. 근데 지금은 어떻습니까?"

**캐릭터 1**: "지금은 다 좋아졌지. AI가 다 알아서 해 주거든. 근데 이상하게, AI가 늘 옳다고 하는데도… 내가 하는 거랑 왜 똑같이 라면이 나오냐?"

**캐릭터 2**: (고개 끄덕이며) "결국 우리 문제였네... AI가 문제가 아니었어!"

(관객들 웃음)

**MC**: "결국 AI 시대건, 없던 시대건, 사람은 변하지 않는다는 결론으로 마무리하겠습니다!" (모두 박수)

---

이렇게, AI 없는 시절을 돌아보며 웃음을 자아내는 에피소드입니다. AI와 관련된 현재의 편리함과 과거의 불편함을 비교하며 유머를 더한 것이죠!

2024년 9월 8일 일요일

미움같은 사랑 그만하자.

'미움 같은 사랑 그만하자'


서울의 어느 아파트 단지, 밤 11시가 조금 넘은 시간. 김현우(48)는 피곤한 발걸음으로 집 문을 열었다. 거실은 어둡고 조용했다. 아내 정미영(46)과 딸 수연(18)은 이미 각자의 방에 들어간 듯했다. 현우는 한숨을 내쉬며 넥타이를 느슨하게 풀었다.


"다녀왔습니다," 그의 말은 공허하게 울렸다.


대답은 없었다. 늘 그랬듯이.


현우는 주방으로 향했다. 식탁 위에는 미영이 남겨둔 밥과 반찬이 있었다. 차갑게 식은 음식을 보며 그는 씁쓸한 미소를 지었다. 한때는 따뜻한 저녁 식사와 함께 가족들과 대화를 나누던 시간이 그리웠다.


식사를 마치고 설거지를 하던 중, 수연의 방에서 소리가 들렸다.


"엄마, 제발요! 내일 시험인데, 지금 교회 갈 시간 없어요!"


"하나님을 무시하는 거니? 네가 그렇게 살면 어떻게 될 줄 알아?"


현우는 눈을 감았다. 또 시작이었다.


미영의 목소리가 날카롭게 울렸다. "너희 아빠 좀 봐. 교회도 안 다니고 돈만 벌려고 하니까 우리 가정이 이 모양이지!"


현우는 주방 싱크대를 꽉 잡았다. 가슴 속에서 분노가 끓어올랐지만, 그는 참았다. 싸움은 언제나 상황을 악화시킬 뿐이었다.


수연의 방문이 쾅 하고 닫혔다. 미영이 거실로 나왔다.


"당신, 들었죠? 우리 딸이 얼마나 하나님을 무시하는지?"


현우는 깊은 한숨을 내쉬었다. "미영아, 수연이도 힘들어. 내일 중요한 시험이..."


"시험? 시험이 뭐가 중요해요? 영혼의 구원이 더 중요하다고요!"


"그래, 알아. 하지만 지금은..."


미영은 현우의 말을 자르고 외쳤다. "당신도 마찬가지예요! 교회에 가봤자 겉으로만 신자인 척하고. 진짜 하나님을 만났다면 이렇게 살지 않았을 거예요."


현우는 말을 삼켰다. 그는 정말로 하나님을 만났다고 믿었다. 하지만 그의 신앙은 미영의 기준에 한참 미치지 못했다.


"나는... 최선을 다하고 있어." 현우의 목소리는 작았다.


미영은 비웃듯 말했다. "최선? 당신의 최선이 이거예요? 밤늦게 들어와서 가족은 안중에도 없고?"


"난 우리 가족을 위해 일하는 거야. 수연이 과외비도 내야 하고..."


"과외비? 하나님의 말씀을 듣는 게 더 중요해요! 당신은 돈만 알아, 돈!"


현우는 입술을 깨물었다. 그는 가족을 위해 열심히 일했다. 하지만 최근 경제 상황이 좋지 않아 회사에서의 스트레스가 더 커졌다. 게다가 수연의 과외비로 인해 가계는 적자 상태였다. 하지만 이런 걱정을 미영과 나눌 수 없었다.


"난... 미안해." 현우는 겨우 말을 이었다.


미영은 고개를 저었다. "미안하다고? 그 말로 뭐가 변해요? 당신이 변해야 해요. 진정으로."


현우는 대답하지 않았다. 무슨 말을 해도 소용없다는 걸 알았다.


미영은 한숨을 쉬며 방으로 돌아갔다. 문이 닫히는 소리와 함께 거실은 다시 침묵에 잠겼다.


현우는 소파에 앉아 머리를 감쌌다. 언제부터 그들의 관계가 이렇게 되었을까? 신혼 때는 달랐다. 미영은 상냥했고, 현우는 열정적이었다. 하지만 시간이 지나면서 모든 것이 변했다.


수연이 태어나고 얼마 지나지 않아 미영은 산후 우울증을 겪었다. 그때 미영은 교회에 의지하기 시작했다. 처음에는 현우도 함께 다녔다. 하지만 점점 미영의 신앙은 강박이 되어갔고, 현우는 그런 미영을 이해할 수 없었다.


일에 몰두하는 것은 현우의 도피처였다. 집에 있을 때마다 미영의 불만과 비난을 들어야 했기 때문이다. 하지만 그렇게 멀어질수록 가정은 더욱 삐걱거렸다.


수연의 방에서 훌쩍이는 소리가 들렸다. 현우는 일어나 딸의 방문 앞에 섰다. 노크를 하고 싶었지만, 손이 떨어지지 않았다. 그는 무력감을 느꼈다. 자신의 딸을 위로할 수 없다는 사실이 가슴을 아프게 했다.


다음 날 아침, 현우는 평소보다 일찍 일어났다. 수연의 시험 날이었다. 부엌에서 간단한 아침 식사를 준비하고 있을 때, 수연이 나왔다.


"아빠..." 수연의 눈은 붉어져 있었다.


현우는 미소 지었다. "잘 잤니? 오늘 시험이지?"


수연은 고개를 끄덕였다. "네..."


"걱정 마. 넌 잘 할 거야." 현우는 토스트와 우유를 수연 앞에 놓았다.


수연은 잠시 머뭇거리더니 물었다. "아빠... 우리 가족이 왜 이렇게 됐어요?"


현우는 숨을 들이켰다. 그는 대답을 찾지 못했다.


"난... 모르겠다, 수연아." 그의 목소리는 떨렸다. "하지만 우리 모두 서로를 사랑한다는 건 알아."


수연은 고개를 저었다. "사랑? 이게 사랑이에요? 엄마는 항상 화만 내고, 아빠는... 아빠는 여기 있지도 않아요."


현우의 가슴이 아팠다. 그는 수연에게 다가가 안아주고 싶었지만, 어색하게 서 있을 뿐이었다.


"수연아... 미안해."


수연은 고개를 숙였다. "됐어요, 아빠. 그냥... 시험 보고 올게요."


현우는 수연이 나가는 모습을 바라보았다. 그의 딸이 이렇게 성장했는데, 그는 아무것도 해주지 못했다.


미영이 방에서 나왔다. 그녀는 현우를 보지도 않고 주방으로 향했다.


"미영아..." 현우가 불렀다.


미영은 돌아보지 않았다. "뭐예요?"


"우리... 이렇게 살면 안 돼."


미영은 천천히 고개를 들었다. 그녀의 눈에는 피로와 분노, 그리고 슬픔이 뒤섞여 있었다.


"그럼 어떻게 살아요? 당신이 뭘 바꿀 수 있나요?"


현우는 깊은 숨을 내쉬었다. "난... 모르겠어. 하지만 우리 모두 불행해. 수연이도, 너도, 나도."


미영의 눈에 눈물이 고였다. "난... 난 그저 우리 가족이 하나님의 사랑 안에서 행복하기를 바랐어요. 그게 그렇게 잘못된 거예요?"


"아니, 그게 아니라..." 현우는 말을 잇지 못했다.


둘 사이에 무거운 침묵이 내려앉았다.


미영이 먼저 입을 열었다. "우리... 이제 어떻게 해야 할까요?"


현우는 고개를 숙였다. "나도 모르겠어. 하지만 이렇게는 안 돼. 우리 모두를 위해서..."


미영의 눈에서 눈물이 흘러내렸다. "당신... 정말 우리를 사랑하나요?"


현우는 고개를 들어 미영을 바라보았다. "그럼. 항상 사랑했어. 지금도..."


미영은 고개를 저었다. "그럼 왜 이렇게 됐을까요? 우리가... 어디서부터 잘못된 걸까요?"


현우는 대답하지 못했다. 그들의 사랑은 언제부터인가 미움으로 변해버렸다. 서로를 이해하려 노력하지 않고, 각자의 상처만 키워왔다.


"미영아..." 현우가 조심스레 말을 이었다. "우리, 이제 그만하자. 이런 미움 같은 사랑... 서로에게 상처 주는 이 관계..."


미영의 눈이 커졌다. "당신... 헤어지자는 거예요?"


현우는 고개를 끄덕였다. "어쩌면... 그게 우리 모두를 위한 길일지도 몰라."


미영은 잠시 말이 없었다. 그녀의 눈에서 눈물이 멈추지 않았다.


"그동안... 정말 힘들었어요." 미영이 작은 목소리로 말했다. "당신을 미워하면서도, 사랑한다고 믿으면서... 이렇게 사는 게 옳은 건지 모르겠어요."


현우는 미영에게 다가갔다. 그는 조심스럽게 그녀의 어깨에 손을 얹었다.


"우리 둘 다 실수했어. 서로를 이해하려 하지 않고, 각자의 방식대로만 살려고 했지."


미영은 고개를 끄덕였다. "수연이... 수연이는 어떡하죠?"


"수연이를 위해서라도, 우리가 행복해져야 해. 이렇게 살면... 수연이도 계속 아플 거야."


둘은 오랫동안 말없이 서 있었다. 20년 넘게 함께한 시간, 그 속에 쌓인 추억과 상처들이 스쳐 지나갔다.


"당신..." 미영이 흐느끼며 말했다. "정말 미안해요. 난... 당신을 이해하려 노력하지 않았어요."


현우도 눈물을 참으며 대답했다. "나도 미안해. 네 마음을 몰라줬어."


두 사람은 서로를 바라보았다. 그들의 눈에는 미움보다는 슬픔과 후회가 가득했다.


"우리... 정말 끝내는 거예요?" 미영이 물었다.


현우는 깊은 숨을 내쉬었다. "어쩌면... 이게 새로운 시작일지도 몰라. 우리 모두를 위한..."


미영은 천천히 고개를 끄덕였다. "그럴지도 모르겠네요..."


둘은 잠시 침묵 속에 서 있었다. 20년이 넘는 세월 동안 쌓아온 관계가 이렇게 끝나는 것이 믿기지 않았다.


"수연이에게는 어떻게 말할까요?" 미영이 물었다.


현우는 깊은 숨을 내쉬었다. "함께 말하는 게 좋을 것 같아. 수연이가 우리 둘 다 사랑한다는 걸 알게 해줘야 해."


그때, 현관문이 열리는 소리가 들렸다. 수연이 시험을 마치고 돌아온 것이다.


"다녀왔습니다..." 수연의 목소리가 작게 들렸다.


현우와 미영은 서로를 바라보았다. 둘 다 눈가에 눈물이 맺혀 있었다.


"수연아, 이리 와볼래?" 현우가 부르자 수연이 거실로 들어왔다.


수연은 부모의 표정을 보고 뭔가 심상치 않음을 느꼈다. "무슨 일 있어요?"


미영이 먼저 입을 열었다. "수연아... 엄마, 아빠가 할 말이 있어."


수연은 불안한 눈빛으로 부모를 번갈아 바라보았다.


현우가 조심스럽게 말을 이었다. "우리가... 엄마랑 아빠가 많이 생각해봤어. 그동안 너에게 많은 상처를 줬지?"


수연의 눈에 눈물이 고였다. "아빠..."


미영이 수연의 손을 잡았다. "미안해, 수연아. 엄마가 너무 강압적이었어. 네 마음을 이해하려 하지 않고..."


"우리가 결정한 게 있어." 현우가 말을 이었다. "엄마랑 아빠가... 헤어지기로 했어."


수연의 눈이 커졌다. "뭐라고요? 이혼... 이혼한다고요?"


미영이 고개를 끄덕였다. "응... 우리 모두를 위해서야. 이렇게 서로 상처 주며 사는 건..."


수연은 갑자기 울음을 터뜨렸다. "싫어요! 제발... 제발 그러지 마세요!"


현우는 수연을 안아주려 했지만, 수연은 뿌리쳤다.


"이게 다 제 탓이에요? 제가 공부 열심히 하지 않아서? 교회에 열심히 다니지 않아서?"


미영이 고개를 저었다. "아니야, 수연아. 네 탓이 아니야. 이건 엄마, 아빠의 문제야."


현우도 말을 보탰다. "우리가 너를 위해 최선을 다하지 못했어. 하지만 이제... 우리 모두 행복해질 수 있는 길을 찾고 싶어."


수연은 흐느끼며 말했다. "그럼 왜 지금까지... 왜 이제야..."


미영은 눈물을 흘리며 수연을 안았다. "미안해, 정말 미안해..."


가족 세 사람은 한동안 울며 서로를 안고 있었다. 그들의 눈물 속에는 후회와 미안함, 그리고 새로운 시작에 대한 두려움이 섞여 있었다.


시간이 얼마나 흘렀을까, 수연이 먼저 입을 열었다.


"그럼... 앞으로 어떻게 되는 거예요?"


현우가 대답했다. "우선 엄마랑 아빠가 따로 살게 될 거야. 하지만 네가 원한다면 언제든 둘 다 만날 수 있어."


미영이 덧붙였다. "수연아, 우리가 헤어지더라도 너에 대한 사랑은 변하지 않아. 알겠지?"


수연은 고개를 끄덕였다. 그녀의 눈에는 여전히 혼란스러움이 가득했지만, 조금은 안도의 빛도 보였다.


"저... 제가 원하는 대로 살아도 돼요? 교회도, 공부도..."


미영은 잠시 망설이다 대답했다. "그래... 네가 원하는 대로 살아. 엄마가 너무 강요했던 것 같아."


현우도 고개를 끄덕였다. "우리가 네 선택을 존중할게. 다만, 네 미래를 위해 열심히 노력하길 바랄 뿐이야."


수연은 두 부모를 번갈아 바라보았다. 그녀의 눈에는 여전히 눈물이 고여 있었지만, 작은 미소가 번졌다.


"고마워요... 엄마, 아빠."


세 사람은 다시 한 번 포옹을 나눴다. 이번에는 조금 더 따뜻하고 편안한 느낌이었다.


몇 주 후, 현우는 새로운 아파트로 이사를 했다. 미영과 수연은 기존 집에 남기로 했다. 이혼 절차는 시작되었지만, 그들은 서로를 배려하며 진행하기로 약속했다.


수연의 방에서 짐을 정리하던 현우는 문득 책상 위에 놓인 성경책을 발견했다. 그는 조심스럽게 성경을 들어 펼쳤다. 첫 페이지에는 미영의 글씨로 쓰여 있었다.


"사랑하는 우리 수연에게, 하나님의 사랑 안에서 항상 행복하길. - 엄마가"


현우는 잠시 그 글귀를 바라보았다. 그의 마음에 복잡한 감정이 교차했다. 후회, 미안함, 그리고 새로운 시작에 대한 희망.


그때 수연이 방에 들어왔다.


"아빠, 뭐 해요?"


현우는 미소를 지으며 성경을 수연에게 건넸다. "네 엄마가 써준 글이구나."


수연은 성경을 받아들고 잠시 글을 바라보았다. 그녀의 눈에도 복잡한 감정이 스쳐 지나갔다.


"수연아," 현우가 조심스럽게 말을 꺼냈다. "앞으로 우리 가족이 어떻게 변할지 모르겠지만, 한 가지는 확실해. 우리 모두 서로를 사랑한다는 거야."


수연은 고개를 끄덕였다. "알아요, 아빠. 저도... 엄마도 아빠도 사랑해요."


현우는 수연을 안아주었다. 이제 그들의 삶은 새로운 국면을 맞이하게 될 것이다. 과거의 상처를 완전히 치유하기까지는 오랜 시간이 걸릴 것이다. 하지만 그들은 이제 서로를 이해하고 존중하며, 진정한 의미의 사랑을 찾아가는 여정을 시작했다.


미움 같은 사랑은 끝났다. 이제 그들은 새로운 형태의 가족, 그리고 새로운 사랑을 만들어갈 것이다.

2024년 8월 15일 목요일

OQ 10년 후 ( 가상 )

 # 한 명의 팔로워가 만든 기적: OQDQ의 10년


*2034년 8월 16일*


오늘은 우리 회사 'OQDQ'의 창립 10주년 기념일입니다. 이 자리에 오기까지, 수많은 도전과 위기가 있었지만, 지금 돌이켜보면 그 모든 순간이 값진 경험이었습니다. 특히, 우리의 첫 번째 팔로워였던 지현이 없었다면, 오늘의 우리는 없었을 것입니다.


## 운명적인 만남


2024년, 저와 동료 민우는 'AI로 실시간 맞춤형 메뉴판을 만들자'는 아이디어를 가지고 있었습니다. 당시에는 많은 사람들이 의아해했죠. "그냥 키오스크 아니야?", "AI를 굳이 왜 써?"라는 반응이 대부분이었습니다.


그러던 어느 날, 우리는 한 스타트업 네트워킹 이벤트에서 신입 개발자 지현을 우연히 만났습니다. 우리의 아이디어를 들은 그녀의 반응은 달랐습니다. "와, 이거 정말 혁명적일 수 있겠어요! 개인 맞춤형 메뉴 추천부터 식당 재고 관리까지 다 가능하겠는데요?"


## 첫 번째 팔로워의 등장


지현의 열정적인 반응에 우리는 깜짝 놀랐습니다. 그녀는 단순히 아이디어를 칭찬하는 데 그치지 않았죠. "제가 이 프로젝트에 참여할 수 있을까요? 제 기술을 이 아이디어에 쏟고 싶어요!"라고 말하며 적극적으로 동참 의사를 밝혔습니다.


## 위기의 순간


초기 개발 단계에서 우리는 큰 기술적 난관에 부딪혔습니다. AI 모델의 정확도가 낮아 실용화가 어려워 보였죠. 투자자들은 하나둘 발을 빼기 시작했고, 민우와 저는 거의 포기할 뻔했습니다.


그때 지현이 나섰습니다. 그녀는 자신의 정규직을 과감히 그만두고 우리 프로젝트에 전념했습니다. 밤을 새워가며 AI 모델을 개선했고, 심지어 자신의 적금을 깨서 우리에게 6개월의 시간을 벌어주었습니다. "이 기술은 반드시 성공할 거예요. 저는 그걸 믿어요."


## 책임감의 무게


지현의 헌신은 우리에게 엄청난 책임감을 안겨주었습니다. 그녀의 믿음에 보답하기 위해, 우리는 더욱 열심히 일했습니다. 포기하고 싶을 때마다 "적어도 지현이를 위해서라도 해내자"라는 마음으로 버텼죠.


## 새로운 시각


지현은 단순한 개발자가 아니었습니다. 그녀는 음식에 대한 깊은 애정과 요리 경험을 가지고 있었죠. 이 경험은 우리의 AI 메뉴판에 실용성을 불어넣었습니다. 고객의 취향, 식단 제한, 심지어 그날의 날씨까지 고려하는 추천 시스템은 지현의 아이디어에서 시작되었습니다.


## 끊임없는 에너지의 원천


스타트업의 일상은 고됐지만, 지현의 열정은 우리 팀 전체에 에너지를 불어넣었습니다. "우리가 식당 문화를 바꿀 수 있어요!"라는 그녀의 말은 우리의 슬로건이 되었습니다.


## 10년 후의 오늘


이제 'OQDQ'는 전 세계 100만 개 이상의 식당에서 사용되는 서비스가 되었습니다. 우리의 AI 메뉴판은 단순한 주문 시스템을 넘어, 식당의 재고 관리, 고객 데이터 분석, 심지어 새로운 메뉴 개발까지 돕는 종합 솔루션으로 발전했습니다.


## 교훈: 팔로워의 가치


이 모든 성공의 시작에는 지현이라는 한 명의 열정적인 팔로워가 있었습니다. 그녀의 존재는 우리에게 용기와 책임감, 새로운 시각과 끊임없는 에너지를 주었습니다.


창업자로서 우리는 종종 '리더십'에만 집중하곤 합니다. 하지만 진정한 리더는 팔로워의 가치를 아는 사람입니다. 여러분의 꿈을 믿고 따라오는 그 한 명을 소중히 여기세요. 그들의 존재가 여러분의 꿈을 현실로 만드는 결정적인 힘이 될 것입니다.


오늘, 우연한 만남으로 시작되어 우리의 첫 번째 팔로워가 되었고, 이제는 우리 회사의 CTO가 된 지현에게 특별한 감사를 전합니다. 그리고 여러분 모두가 누군가의 '지현'이 되어주길 바랍니다. 그것이 바로 혁신의 시작입니다.


( Inspired by https://x.com/wdshin/status/1823460698535625149 , Written By Claude )

삥 치다가 올인한다.


https://x.com/wdshin/status/1772413090832748589?s=46&t=RbV5FM5cUArlZj7K8N2d0w

내 트윗을 클로드를 통해 블로그화 시켜 봤다.

 

# 포커와 인생의 올인: 승부의 순간


우리는 종종 인생을 도박에 비유합니다. 그중에서도 포커는 삶의 여정과 놀라울 정도로 닮아있습니다. 단순히 운에만 의존하는 게임이 아니라, 전략과 심리, 그리고 결단력이 필요한 게임이죠. 오늘은 포커를 통해 인생의 중요한 교훈 하나를 이야기해보려 합니다.


## 시작은 작지만...


"삥만 내고 치고 승부 보는 포커가 있으면 좋겠지만, 그렇지 않다."


인생도 마찬가지입니다. 우리는 종종 큰 위험 없이 큰 보상을 얻길 원합니다. 최소한의 노력으로 최대의 결과를 얻는, 이른바 '로또 당첨' 같은 일이 일어나길 바라죠. 하지만 현실은 그렇게 녹록지 않습니다.


## 점점 커지는 판돈


"베팅엔 더 큰 후속 베팅이 필요해진다."


포커에서 게임을 계속하려면 점점 더 많은 돈을 걸어야 합니다. 인생의 도전도 이와 비슷합니다. 처음에는 작은 결정으로 시작하지만, 점점 더 큰 결단을 내려야 하는 순간이 찾아옵니다. 새로운 직장에 지원할 때, 처음에는 이력서를 보내는 것으로 시작하지만 최종 면접에 가서는 현재의 안정된 직장을 포기할 준비를 해야 할지도 모릅니다.


## 희망과 고뇌 사이


"가능성이 더 커지는 희망고문 같은 것."


포커 핸드가 좋아질수록 승리의 희망은 커집니다. 하지만 동시에 잃을 수 있는 것도 많아지죠. 인생의 큰 기회들도 이와 비슷합니다. 성공의 가능성이 보일 때 우리는 더 많은 것을 투자하고 싶어집니다. 시간, 돈, 노력을 쏟아붓죠. 하지만 이 과정이 항상 쉽지만은 않습니다. 희망과 불안이 교차하는 시간을 겪게 되죠.


## 올인의 순간


"결국 올인해야 하는 상황이 생긴다."


포커에서 가장 극적인 순간은 올인을 선언할 때입니다. 모든 것을 걸고 승부를 보는 거죠. 인생에서도 이런 순간이 옵니다. 새로운 사업을 시작하기 위해 안정된 직장을 그만두는 것, 사랑하는 사람과의 결혼을 결심하는 것, 또는 전혀 새로운 분야에 도전하는 것 등이 이에 해당할 수 있습니다.


## 깨달음의 순간


"승부를 보려면 결국 올인해야 하는 상황이 생길 수 있다는 것을 인지해야 하는 것이다."


이것이 바로 포커와 인생이 우리에게 주는 중요한 교훈입니다. 진정한 성공과 성취를 위해서는 때로는 모든 것을 걸어야 한다는 것. 이는 두려운 일이지만, 동시에 우리를 성장시키는 과정이기도 합니다.


## 마치며


삶은 포커 게임과 같이 불확실성으로 가득합니다. 하지만 우리가 꿈꾸는 승리를 위해서는 때로 과감한 결단이 필요합니다. 모든 판에서 올인할 수는 없지만, 정말 중요한 순간에는 주저하지 말고 올인할 준비가 되어 있어야 합니다.


여러분의 인생에서 '올인'이 필요한 순간은 언제일까요? 그리고 그 순간이 왔을 때, 여러분은 준비되어 있나요?

2024년 2월 16일 금요일

변수 네이밍 #1 - 상태 변수 - status vs state

 

프로그래머의 중요한 역량 중에 하나가 이름짓기(네이밍)라고 생각한다.

프로그래밍 월드 내에서의 개념들을 만들고,

객체를 만들고, 

그들간의 관계를 만들고,

동작하게 한다.

객체를 지칭하는 네이밍이 와닿지 않으면 혼동하기 쉽고 오류에 빠지기 쉽다.


코딩 할 때에는 영어를 써야 한다.

단어의 미묘한 차이가 개념의 혼동,혼란,적확성을 결정하기 때문에, 영어를 잘 해야 한다. 


status, state 는 객체의 상태를 나타내는데 인기 있는 단어이다.

status 는 상하로 움직이는 사회적인 지위를 나타내는 경우에 쓰이고,
state 는 state machine 에서의 상태, 전이 상태를 나타내는 경우에 쓰인다고 생각한다.
대부분 state 로 쓰면 더 맞다.

그 외의 상태를 나타내는 단어들을 더 조사해서, 이 글을 업데이트 해 봐야겠다.

2024년 2월 12일 월요일

잡 꿈

 

잡꿈


간만에 여러 생각을 하게 하는 꿈을 꿨다.


첫사랑이 나한테 이제라도 대학을 다시 들어가라는 조언을 해 주고,

친구가 나와서 우리 이제 새로운 꿈을 갖고 일해보자라는 말을 해 주고,

구상 하던 사업 아이템 관련 아이디어가 구현되는 모습도 보이고...


아쉬움과 욕망

한마디로, '아쉬움과 욕망'의 잔재물이 내 마음속에 남아 있다는 말이다.


인생을 반바퀴 돌면서 정말 많은 생각을 하고 산다.

사회화가 아닌 반사회화, 개인화가 이제 더 중요해지는 것 아닌가 싶고,

아쉬움을 떨치거나 가볍게 이루거나 평화롭게 살고 싶다는 생각을 한다.


지난 두어달은 아이디어를 다듬는 고독한 시간 


지난 두어달을 게임을 하며 게임 기획을 하려고 폐인처럼 지냈는데,

게임 기획도 쉬운 일은 아니다.

코딩과 같은 개발에 집중해 있을 때도 행복했었지만,

다른 차원의 고민을 해야 한다.

실마리를 찾아야 하는 고민들을 한다.

개발에는 대부분 답이 있는데, 기획에는 답이 없어보이고, 점점 미궁으로 빠져든다.

다른 사람들에게 경력 10년,20년이면 (나처럼) 답을 찾을 수 있어야 하지 않냐고 질타했던 내가 부끄러워진다.

과연 기획 아이디어를 잘 찾는 방법들을 경력자들은 갖고 있을까?


개발을 오래 했던 탓에 이제는 개발이 재미가 없고, 기획이 더 재밌고, 의미있게 느껴진다.

그러나 기획의 어려움은 구현이 된 완성체를 빨리 확인하기 어렵다는데에 있다.

업무를 하던 동안에는 숙련된 프로토타입 개발팀이 유능한 기획자를 보조할 수 있는 시스템이 되어 있어야 한다고 생각했었다.

혼자서 아이디어를 다듬고 방향성이 일관된 기획을 하고 스스로 검증하는 고독한 과정이 필요하긴 하다.

그런 과정에서 아이디어를 토론할 수 있는 상대자는 엄청난 즐거움이자 효율책이 될 것이다.


앞으로는 어떻게 할까?


폐인모드로 지내다보니, 루틴의 중요성을 다시 한번 실감한다.

너무 하나에만 매몰되서 하루를 지내는 것보다는

하루에 30분짜리 반복적이고 생산적인 일정들을 소화 했었더라면, 지금은 좀 더 나은 상태였을 것이다.

무너진 생활을 다시 다잡아야 한다.


인생도 문제 해결의 과정


아무것도 모르고 태어나 세상에 던져져서 살았다.

부모님과 선생님들,친구들의 사랑이 아니었으면 나는 아무것도 아니었을 것이다.

사람들이 돈 벌고 사는 방식을 가만히 보면,

결국 문제를 해결해주는 것이다.

사소하고 반복적인 문제부터, 그것들이 합쳐져 큰 문제를 해결하는 회사까지...

결국 가치 있는 문제를 해결하면 된다.

예전에 어르신들이 '그걸 하면 떡이 나오냐 밥이 나오냐 헛소리 마라' 했던 일들이

이제는 사람들이 각광하는 일들이 되어 있는 경우가 있다.

'노래와 춤'이라던지, '게임'이라던지...

나는 어떤 문제를 찾고 해결 할 수 있는 사람인가?

인생 3막에서 이제 스스로 다시 묻고 꾸준히 갈 수 있어야 한다.









Through the ages

 

문명 게임


지인의 추천을 받고, 문명(Civilization) 게임의 축소판인 '쓰루 더 에이지스'를 해 봤다.


보드게임이었는데, 앱으로 나와 있다.

보드게임은 안 해 봤는데, 튜토리얼을 통해서 룰을 대강 익힐 수 있었고,

몇시간만에 도전과제를 클리어할 수 있었다.


빌드 오더


이 게임의 핵심은 '빌드 오더'이다.

문명 게임의 핵심 재미 중의 하나인, 결정에 따라서 문명의 운명이 바뀌는 

문명의 축소판이다.

'선택의 재미'인 증명된 재미를 핵심만 더 파고들어서 새로 만든 게임이라고 볼 수 있다.



턴마다 할 수 있는 액션 수의 제한이 있고,

액션 수보다 3배 많은 카드 중에서 액션을 선택하여 수행하여 문명의 경쟁력을 키우고, 다른 경쟁자를 견제하고 전쟁하기도 한다. 

전쟁구현은 4X 게임이 아니기 때문에, 간단한 공격력 방어력 수준으로 구현하고, 일방적으로 밀려서 괴멸되지는 않도록 적절히 밸런싱 되어 있다.

고대 시대부터 현대 시대까지 시대마다 영웅 리더를 적절히 채용해서 그 특성을 활용해야 한다.

처음에 하면 Easy Mode 도 Easy 하지 않다. 

아직 베스트 빌드 오더를 찾지를 못했다.

몇시간 한 상태에서 개인적으로 끌리는 순서는 

아리스토텔레스 -> 징기스칸 -> 나폴레옹 -> 처칠로 이어지는 전쟁 위주의 진행이다.

정치적인 행위에는 약탈,전쟁,조약 등이 있는데 세력 차이가 많이 나야 약탈,전쟁에서 효과적이기 때문에 이득을 크게 볼 수는 없지만, 아드레날린 나오는 조합은 역시 전쟁위주의 진행인 듯 하다. ㅎㅎ

영웅들의 특성은 해 보면 쉽게 알 수 있는 수준이지만, 잘 활용 하기는 힘들다.

여간해서 Medium 이상 레벨에서의 챌린지를 이기기는 쉽지 않다.




2,3,4 인 플레이어까지 할 수 있다.

위의 그림은 2인용에서 첫 승리를 한 기념 샷이다.


육성 시뮬레이션에 적용 가능?


하다보니, 내가 기획하고 있는 게임에도 적용할 수 있는 로직이 있을 것 같다.

육성 시뮬레이션 게임에 빌드 오더를 이런 식의 로직으로 적용할 수 있지 않겠는가?

선형적인 육성 시뮬레이션은 재미가 떨어지기 때문이다.

이 게임에서의 1차,2차,3차 산업에 대한 성장 선택 과정은 어떤 육성 시뮬레이션에도 적용할 수 있는 로직일 듯 하다.


예를 들어, 걸그룹 육성 시뮬레이션이라면,

보컬, 댄스, 매력의 분야에 맞춰서 

다양항 액션(어떤 액션들이 있을까?) 카드로서 육성을 시키고,

영웅적인 트레이너에 의해서 육성이 영향을 받고,

다른 연습생 경쟁자와 겨룰 수 있는 구도로 하고, 

1위를 해야만 서바이벌 하는 게임으로 만들면 될 듯 하다. 

ㅎㅎㅎ


즐겜.





2024년 1월 3일 수요일

나는 솔로 - "이상형이 뭐에요?"

 

SBS Plus 채널의 프로그램인 '나는 솔로'를 즐겨본다.

1기부터 지금까지 다 봤다. ㅎㅎㅎ

눈물도 웃음도 인생도 들어있다. ㅋㅋㅋ

16기에 너무 피곤해서 멀리하게 되긴 했는데, 

최근 기수에서 희한한(?) 여성을 보게 되서 적어본다.


썸타거나, 소개팅 할 때 흔히 묻는 말

'이상형이 어떻게 되세요?'

대개 그 답들은 예측가능하고 정해져 있는 편 아닌가?

그런데,

한 여성 출연자가

'야망 있는 남자'라고 말하더라.


우와~ 

난 그런 남자 이상형을 원하는 여성이 있을 수 있다는 것에 너무 놀랐다!

역시 나의 뇌에 세상을 가두고 사는 것이다.

그런 이상형이 있을 수 있다는 것을 알았다면,

나는 그런 이상형을 찾는 여성을 찾았을 것 같다. 푸학학~

다시 말하자면, 그런 이상형이 있을 수 있다는 것 자체를 생각을 못했었다.

보통은 그저 내가 생각하는 여성들의 이미지 중에서 

제일 끌리는 사람과 함께 하게 되지 않는가?


커플 매칭 서비스를 만든다면, 

내 이상형이 어떤 것인가?

나는 어떤 사람인가?

그런 나를 원하는 사람들이 얼마나 되는가?

을 핵심으로 만들어볼 수 있을 것 같다.

뻔한 이야기로 들리겠지만...

그걸 잘 구현하는 것은 다른 일일 것이다.


겪어봤을지도 모르겠지만,

내가 좋아하는 이상형, 내가 이상형인 그대는 훨씬 아름답고, 설레인다.


나와 맞는 사람과 산다는 행복.

그게 얼마나 소중한 가치인가?

인생에서 제일 소중한 가치일지도 모른다.





2024년 1월 2일 화요일

기술적으로 아직도 포기 못하겠는 일

 

30년을 엔지니어로 일했지만, 아직도 혼자라도 해보고 싶은 것들이 있다.

한마디로 말하면, 정말 좋은 게임 서버 만들기.


rust , go, c++, c# , python 등을 혼합하여 만들 것 같고,

대용량 트래픽 처리는 기본이고, 계정 관리, 게임 객체의 저장, 관리, 분산 액터로서의 역할, 로그 관리, 요즘 필요한 AI 서버, 온라인 게임에서 필수적으로 필요한 게임 클라이언트와의 동기화를 쉽게 구현할 수 있는 게임 서버가 되어야 할 것이다.

간단한 모바일 게임 서버부터, 메타버스까지 모두 아우르며 만들 수 있는 게임 서버가 되어야 하겠지.

내가 엔지니어로서 가장 잘 할 수 있는 일이니까, 마무리는 해 놓고 싶다.


틈날때마다 설계하고, 한땀한땀 하다보면 어느 순간 다 되어 있지 않을까?

10년전에도 20년전에도 생각만 하고 하지 못하지 않았는가? ㅎㅎㅎ


게임 서버 말고도, 사실 게임 엔진도 만들고 싶은데, 이번 생은 200살까지 살지 않는 한 힘들 것 같기도 하고... ㅎㅎ 틈틈히 좋은 게임 엔진을 공부하며 잘 쓰기만 해도 좋겠네. 


다짐만 이렇게 쓰다가, 나중에 이 글을 보면 부끄럽겠지? 

실천합시다! 실천! 

2024년을 맞이하며

 

2023년 회고는 못 했지만, 2024년 포부를 써 보고자 한다.


추진력이 필요하다.


결론부터 말하자면, 매우 불안하지만, 더 건강해지고 추진력을 갖추면 가능성이 있다.


지난 2년간 사업의 본질에 대해서 많이 고민 했던 것 같다.

사업의 진행은 본질에 대한 깨우침, 니치 마켓을 찾아 목표 세우기, 목표에 따른 계획 세우기, 실천의 과정을 거쳐야 하는 듯 하다.

작년에는 본질과 목표에 대해서만 생각 했던 것 같다.

나 자신이 너무 나태해서 계획도 못 세우고, 실천도 제대로 못 했다.

다행히 아직도 추진하고 싶은 목표가 있고, 그 시장은 아직 유효해 보인다.

그래서, 2024년은 추진해야 한다!

추진하기 위해서는 건강해야 한다! 그리고 매일 매일의 의미를 부여하며 보람차게 살아야 한다.

놀만큼 놀았고, 방황할만큼 방황했다.

더 이상 좌고우면하며 방황하고 탐험하는 것이 재미가 없다.

추진하는 것만이 재미가 있는 상태가 되었다.


핵심 가치


내가 만들고 싶은 프러덕트인 게임의 핵심 가치를 정했다.

1. 인재의 숨은 스탯을 AI(LLM)으로 말하고, 유추하여 좋은 팀원을 구하는 구인 게임.

2. 팀원들을 좋은 포지션에 맞춰서 팀을 구성하여, 좋은 퍼포먼스를 내도록 튜닝하고, 경쟁시키는 매니징 게임

3. 실제 인물과 매칭이 되는 인재로 가상의 목표를 이뤄가며 돈 버는 시뮬레이션 게임


이렇게만 말하면 뭐가 뭔지 잘 모를 것이지만, 더 정확히 말하긴 어렵다.

이 정도만 말해도 알 사람들은 알 것 같다.

어쨌든 AI First Game 이다!!! 

잘 만들어서 투자 받고 날아올랐으면 좋겠다!


버티고 개척하자


사업을 영유하는 일은 매우 어려운 일이다.

돈 벌며 유지하고, 회심의 새로운 프러덕트나 서비스를 출시하여, 새로운 시장을 개척해야 의미가 있을 것이다.

시간을 아끼고 의미있게 써야 한다.

버티려면, 알바나 외주도 해야 할 것이고, 소소하게 돈 버는 일들도 마다하지 말아야 할 것이다. 

그럼에도 메인 업무의 일정이 흐트러지지 말아야 할 것이다.


기술을 연마하고, 좋은 사람들을 만나는 것도 게을리하지 말아야 할 것이다.


화이팅!