bsll_devlog_의 등록된 링크

키자드에 등록된 총 21개의 포스트를 확인하실 수 있습니다.

Naver Blog

[4편] Discord Shop Bot - Render 무료 티어로 Discord 봇 배포하기: render.yaml, 환경변수, 그리고 “완벽한 코드보다 운영”

0. 이 글의 전제 개발할 땐 다 된다. 문제는 배포하고 나서다. 내 경우는 특히: “돈 안 쓰고” “무료 티어로” “그래도 운영되게” 가 목표였어서, 배포에서 배운 게 컸다. 1. Render로 배포한 이유 (무료라서) 결론은 단순하다. 돈이 없었다. 그래서 Render 무료 티어로 배포했다. render.yaml도 이렇게 최소로 잡았다. web 서비스 node 환경 npm install → npm start envVars는 Render 대시보드에서 주입 2. 근데 Render 무료 티어는 15분 슬립이 있다 이게 진짜 문제다. 15분 비활성 시 슬리핑 봇은 “항상 살아있어야” 하는데 무료 티어는 “항상 죽는다” 여기서 완벽한 해결은 없다. 나는 현실적으로 이렇게 받아들였다. 개발/테스트/운영 초기에는 무료로 버틴다 유입이 생기면 그때 유료로 전환한다 “처음부터 완벽한 운영”은 포기한다 결국은 AWS 프리티어 남았으면 가져와보세요!! 하고 EC2로 넘아갔음 ;( 3. 환경 변수 지

Naver Blog

[5편] Discord Shop Bot - 보통 외주면 고객이 신경 안 쓰는 것들: 그런데 이번엔 “무료 + 프라이빗 GitHub 초대”라는 특이 케이스

0. 이 글의 전제 4편에서 배포 얘기를 했지만, 사실 배포는 내 기준에선 “내가 하는 일”이지 “고객이 하는 일”이 아니다. 보통 외주로 프로젝트를 진행하면, 고객은 이런 걸 거의 신경 쓸 필요가 없다. Discord Bot Token 환경변수(.env) 서버(Render/AWS/EC2) DB(Supabase/Postgres) 배포/모니터링 왜냐하면 대부분의 외주는 내가 내 서버에서 운영하고, 고객은 그냥 서비스만 판매/사용하면 되도록 끝내기 때문이다. 근데 이번 프로젝트는 완전히 달랐다. 1. 이 프로젝트의 목적은 “친구가 더 편하게 판매하도록” 만드는 것 나이지리아에 있는 친구가 있다. 이 친구는 여러 구독 서비스를 리셀 형태로 다루고 있었고, 나는 그 과정에서 도움을 받기도 했다. 근데 막상 운영 구조를 보면, 결국 이런 문제가 생긴다. 주문이 들어오면 수동으로 확인하고 결제 확인하고 재고(계정/코드)를 찾아서 DM으로 보내고 누가 샀는지 기록하고 이게 고객이 10명만 되어도

Naver Blog

[6편] Discord Shop Bot - GitHub Actions로 Render 무료 티어 sleep 막기: health check self ping 자동화

0. 이 글의 전제 5편에서 말했듯이, 이번 프로젝트는 무료 운영이 전제였고, 그 선택의 결과로 Render 무료 티어를 썼다. 문제는 하나였다. Render 무료 티어는 가만히 있으면 잔다. 판매를 담당하는 Discord 봇이 결제 확인을 못 하고 발급이 늦어지고 “봇이 안 켜져 있어요”라는 메시지를 받기 시작하면 그 순간부터 운영은 무너진다. 그래서 이번 편에서는 Render 무료 티어에서 Discord 봇을 ‘안 자게’ 만드는 현실적인 방법을 정리한다. 1. Render 무료 티어 sleep은 어떤 식으로 문제를 만든다 Render 무료 티어는 일정 시간 요청이 없으면 서비스가 sleep 상태로 들어간다. 이게 문제인 이유는 단순하다. Discord 봇은 “사용자 요청이 오기 전까지”는 HTTP 요청이 없다 즉, 아무도 안 쓰는 시간대에는 자연스럽게 sleep에 들어간다 그리고 첫 요청이 오면, 그때서야 깨는데 이 첫 요청이 timeout / interaction failed로

Naver Blog

[7편] Discord Shop Bot - 상점은 여기까지, 이제는 “판매 웹”으로 간다

0. 이 글의 전제 1~6편까지는 “왜 이런 구조를 만들었는지”와 “어떻게 굴러가게 했는지”를 설명하는 글이었다. 하지만 이번 7편은 다르다. 이제는 독자가 이런 질문을 던질 시점이다. 지금 뭘 팔고 있는지 가격은 어떤지 그래서 어떻게 구매하는지 그래서 이 글에서는 현재 기준 판매 상품 + 구매 흐름을 명확히 정리하고, 동시에 앞으로 구조를 어떻게 바꿀지를 같이 기록한다. 1. 현재 판매 중인 상품은 이런 것들이다 (2025.12 기준) 현재 이 프로젝트에서는 AI/구독 서비스를 월 단위로만 판매하고 있다. 내가 판매하는 것은 아니니 오해하지는 말도록 하자. 대표적인 상품은 다음과 같다. AI / 개발 도구 Cursor Pro (1 month) – $10 Cursor Pro+ (1 month) – $35 Cursor Ultra (1 month) – $60 ChatGPT Plus / Pro (1 month) – $3 Gemini Pro (1 month) – $2 엔터테인먼트 Netfl

Naver Blog

ChatGPT 저렴하게 사용하는 법(2025 최신)

요즘 작업을 하다 보면 AI 도구나 구독 서비스 없이는 생산성이 잘 나오지 않는다. 개발을 하든, 글을 쓰든, 자료를 정리하든 Cursor, GPT, Gemini 같은 도구들은 거의 필수에 가깝다. 여기에 일상용으로 Netflix까지 더하면, 매달 고정비가 은근히 커진다. 정가 기준으로 보면 한두 개만 써도 부담이 되는데, 여러 개를 동시에 쓰는 입장에서는 더더욱 그렇다. 그래서 나 역시 “조금 더 합리적인 방법이 없을까?” 하다가 지금의 방식을 알게 됐고, 현재까지 꽤 만족하면서 사용 중이다. !!!본문 시작 전 서버 주소를 미리 공개!!! AI SHOP Discord 서버에 가입하세요! Discord에서 AI SHOP 커뮤니티를 확인하세요. 5명과 어울리며 무료 음성 및 텍스트 채팅을 즐기세요. discord.gg 현재 세팅 중인 서버라 공개 상태가 아니라고 한다. 초대 링크를 받게 되어 공유한다!! 서버 초대 유효 기간은 일주일이라고하니 구매하지 않더라도 빠르게 들어가보자!!

Naver Blog

구글 SEO 등록이 막힌다면, 키자드(KEYZARD)라는 선택지도 있다

구글 서치 콘솔로 SEO를 직접 관리하는 것이 가장 정석이긴 하지만, 네이버 블로그를 운영하다 보면 현실적으로 막히는 구간이 분명히 존재한다. 그래서 예전에 사용해봤고, 등록 전·후 유입 단위 자체가 달라졌던 경험이 있었던 키자드(KEYZARD)라는 서비스를 함께 소개하려고 한다. 구글에 직접 등록하지 않아도 비교적 간단하게 SEO 관점의 등록·노출을 도와주는 사이트다. 시간나면 나도 비슷한 사이트를 한번 만들어보아야겠다. 이보다 편하게 만들 수 있을지는 모르겠으나.. 예전에 써봤던 이유, 그리고 지금 다시 보니 아쉬운 점 처음 키자드를 썼을 당시에는 키워드 분석 블로그 검색 등록 다양한 SEO 관련 부가 기능 을 한 번에 제공하던 서비스였다. 그 당시에도 등록 전과 후의 유입 수치가 체감될 정도로 달라졌던 기억이 있다. 다만 지금 다시 들어와 보니 아직 서버 점검 중인 기능이 많아 현재는 일부 서비스만 이용 가능한 상태라 그 점은 조금 아쉽다. 그래도 “구글 SEO 등록이 어렵게

Naver Blog

유튜브 프리미엄 인도 결제 방법 정리 (2025 최신)

겜스고(GamsGo) 유튜브 프리미엄 환불 사태를 겪고 나서, 나는 한 가지 결론을 내렸다. 중개 플랫폼은 언제든 문제가 생길 수 있고, 그 리스크는 결국 사용자에게 전가된다. 그래서 이번에는 방향을 완전히 바꿨다. 중개업체를 거치지 않고, 최대한 구조가 단순하고 공식적인 루트로 유튜브 프리미엄을 결제해보기로 했다. 결론부터 말하면, 앱스토어 인도 계정 생성 아마존 인도에서 리딤 코드 구매 결제 후 1분 이내 코드 수신 유튜브 프리미엄 정상 등록 완료 이 글은 겜스고 이후 “그럼 대안은 뭐냐”라고 묻는 분들을 위해 남기는 실제 사용 기록이다. 따끈따끈하게 오늘 성공한 후기를 남깁니다 Vv 전체 진행 요약 앱스토어 인도 계정 만들기 아마존 인도 사이트에서 앱스토어 리딤 코드 구매 리딤 코드 앱스토어 등록 유튜브 전용 구글 계정 생성 유튜브 프리미엄 결제 완료 1. 앱스토어 인도 계정 만들기 앱스토어 계정은 기존 계정과 분리해서 새로 생성했다. 혹시 모를 계정 제한이나 정책 변경에 대비

Naver Blog

[1편] Discord Shop Bot - “USDT 결제 + 구독 서비스”가 필요했던 진짜 상황

0. 이 글의 전제 이 글은 “디스코드 봇 만들었습니다” 자랑이 아니다. 내가 왜 구독 시스템을 버리고 상점 시스템으로 갈아탔는지, 그리고 그 출발점이 왜 나이지리아 친구의 한마디였는지 기록이다. 1. 시작은 기술이 아니라 대화였다 나이지리아에 있는 친구가 있었다. 내가 GPT 같은 구독 서비스를 편하게 쓸 수 있게 도와준 친구다. 그런데 대화가 이런 식으로 흘렀다. “Oh OK. But still expensive” / "아, 알겠어요. 그래도 비싸네요" “With USDT no charges” / "USDT를 사용하면 수수료가 없어요" “Is it easy to buy usdt in Korea?” / "한국에서 USDT를 쉽게 구매할 수 있나요?" “Thats a barrier” / "그것은 장벽이 있어요" “people think that the visible price is important” / "사람들은 눈에 보이는 가격이 중요하다고 생각합니다" 대충 의역했으니 뭔가 이상

Naver Blog

[2편] Discord Shop Bot - 쿠폰을 버리고 “잔액 + 재고 + 발급코드”로 바꾼 DB 설계 (Prisma 모델 기준)

0. 이 글의 전제 1편에서 “왜 상점으로 바꿨는지”를 말했으니, 2편은 실제로 구조를 어떻게 바꿨는지다. 핵심은 세 가지다. 잔액(Balance) 재고(Stock) 발급 코드(Code Delivery) 1. 구독(쿠폰) 구조가 끝내 버티지 못한 지점 쿠폰 구조는 “데이터가 단순할 때”만 산다. 제품이 1~2개 기간만 관리 수동 발급이 가능 근데 제품이 늘어나면 바로 지옥이 된다. GPT / Netflix / Cursor / Gemini 제품마다 발급 방식이 다름 재고가 있고, 없고 기간도 있고, 코드형도 있고 결국 구독 구조는 확장할수록 “예외 처리 덩어리”가 된다. 2. 상점 구조에서 데이터는 이렇게 나뉜다 내가 잡은 최소 모델은 이거다. (1) Product name price licenseDays (기간형이면) category isActive (2) Stock productId code (실제 발급할 키/계정/코드) status (available/sold) (3) UserB

Naver Blog

[3편] Discord Shop Bot - 개발에서 제일 많이 터지는 오류 TOP: 3초 제한, deferReply 중복, Interaction already replied

0. 이 글의 전제 Discord 봇 개발에서 가장 까다로운 건 기능 구현이 아니라 상호작용(Interaction) 처리다. Discord는 룰이 빡세다. 3초 내 응답 필수 한 번 응답한 Interaction에 다시 응답 불가 이걸 모르고 만들면 “가끔 봇이 멈춘다”는 괴상한 현상을 겪게 된다. 1. 핵심 개념(이거 모르면 계속 터짐) 1) reply / deferReply / editReply 차이 interaction.reply() : 3초 내 즉시 응답 interaction.deferReply() : “나 지금 처리 중” 선언 (15분 내 editReply) interaction.editReply() : 지연 응답 수정 interaction.showModal() : 모달 표시 여기서 함정은: 핸들러가 깊어질수록 누가 reply 했는지 기억이 안 난다 그래서 중복 호출이 난다 2. 오류 1) 중복 deferReply 호출 나도 이걸로 한참 헤맸다. 상황 handleButton에

Naver Blog

[1편] 맨 땅에 헤딩 게임 개발 일지

0. 이 글을 쓰게 된 이유 백준을 처음 켰을 때를 아직도 기억한다. 문제는 한국어고, 설명도 친절해 보이는데 막상 입력과 출력을 보는 순간 손이 멈췄다. “그래서… 이걸 어디에 쓰라는 거지?” “코드는 어디서부터 시작해야 하는 거지?” 사실 문제 자체가 어려운 건 아니었다. 어려운 건 문제를 ‘코드로 옮기는 과정이었다. 그래서 항상 이런 말이 따라붙는다. 일단 많이 풀어보면 늘어요. 맞는 말이긴 한데, 정작 처음 한 문제를 풀기까지의 장벽은 아무도 자세히 설명해주지 않는다. 그 장벽을 조금 다른 방식으로 낮춰보고 싶었다. 그 결과로 지금은, 코딩 문제를 게임 구조로 풀어보는 프로젝트를 기획하고 있다. 이 글은 그 기획의 출발점과, 왜 굳이 “게임”이라는 형태를 선택했는지에 대한 기록이다. 1. 백준이 어려운 이유는, 문제 때문이 아니다 코딩 입문자가 백준에서 막히는 지점은 거의 비슷하다. 문제 해석보다 입력 구조가 먼저 무섭다 출력 포맷 하나 틀렸다고 오답이 된다 어디가 틀렸는지

Naver Blog

[2편] 맨 땅에 헤딩 게임 개발 일지

0. 이 글의 전제 이 글에는 멋진 게임 화면도 없고 완성된 기능도 없고 “여기까지 만들었습니다” 같은 결과 보고도 없다. 대신 있다면 하나다. 왜 지금 이 단계에서 무엇을 만들지 않기로 결정했는지에 대한 기록 이 프로젝트를 따라 해보고 싶은 사람이 있다면, 결과보다 이 판단 과정이 더 중요하다고 생각했다. 1. 첫 스테이지를 Stage 0으로 잡은 이유 보통 게임이나 학습 서비스에서는 “재밌는 첫 화면”을 만드는 데 많은 에너지를 쓴다. 나는 반대로 갔다. 첫 스테이지를 Stage 0으로 잡았고, 의미도 아주 단순하게 정의했다. 입력값을 그대로 출력한다. 재미도 없고, 문제라고 부르기에도 민망한 수준이다. 그런데도 굳이 Stage 0을 만든 이유는 명확하다. 이 스테이지는 유저를 위한 스테이지가 아니다 개발자인 내가 구조를 검증하기 위한 스테이지다 → 사실 요즘은 바이브코더가 판을 치고 있어서 구조 검증 단계를 궁금해하는 사람이 많을지도 의문이다 입력 → 처리 → 출력 이 흐름이

Naver Blog

[3편] 맨 땅에 헤딩 게임 개발 일지

0. 드디어 Run을 눌렀다 2편에서는 일부러 Run을 열지 않았다. 아직은 코드를 실행하는 게 중요한 단계가 아니라고 판단했기 때문이다. 하지만 이번 단계, Stage 1에서는 이야기가 조금 달라진다. 입력을 받고 채점하고 결과를 내보내는 온라인 저지(OJ)의 최소 단위가 처음으로 완성되는 순간 이제부터는 “구조 실험”이 아니라 실제 문제 풀이 경험을 만들기 시작한다. 1. Stage 1의 역할 Stage 1은 이 프로젝트에서 중요한 전환점이다. Stage 0 → 입력과 출력이 무엇인지 이해시키는 단계 Stage 1 → “이제 문제를 푼다”는 감각을 처음으로 주는 단계 그래서 문제 정의도 최대한 단순하게 잡았다. 정수 두 개를 입력받아 그 합을 출력한다. 문제 자체는 중요하지 않다. 중요한 건 이걸 OJ 구조로 풀고 있다는 느낌이다. 2. Run 버튼을 열었지만, 코드는 실행하지 않았다 이번 Stage 1에서 가장 헷갈릴 수 있는 지점이 이거다. “Run 버튼을 눌렀는데, 왜 코드

Naver Blog

유튜브프리미엄 우회 결제 환불 사태 정리 – GamsGo(겜스고) 실제 피해 후기

유튜브프리미엄, GamsGo, 겜스고 환불, 우회 결제 요즘 이 키워드로 검색하는 분들이 정말 많을 겁니다. 이 글은 2025년 6월부터 12월까지 실제로 GamsGo를 이용했던 사용자 입장에서 겪은 환불 사태 전 과정을 기록한 글입니다. 1. 사건의 시작 – 잘 쓰고 있던 유튜브프리미엄, 갑작스러운 ‘환불 메일’ 나는 2025년 6월, GamsGo(겜스고)를 통해 유튜브 프리미엄 2건을 결제했다. 결제 시점: 2025년 6월 결제 수량: 유튜브 프리미엄 2개 사용 상태: 문제 없이 정상 사용 중 그런데 2025년 12월, 갑자기 유튜브로부터 환불 메일이 도착했다. 중요한 점은 이거다. 내가 직접 환불을 요청한 적 없음 유튜브에 어떤 요청도 하지 않음 ️ 결제 대행사(GamsGo) 혹은 실제 결제자가 환불을 요청한 것으로 추정 하고 있었으나 결제자가 환불요청한 것이 아닌 구글의 프리미엄 정책 변경으로 인한 환불 조치였음. 즉, 내 의사와 무관하게 구독이 끊긴 상황이었다. 2. G

Naver Blog

계속 물어보자 갑자기 51 USD가 들어왔다 – GamsGo 환불, 이게 정상인가요?

GamsGo(겜스고) 환불, 이게 정상인가요? 이전 글을 올리고 나서, 나는 이 사태를 이 정도에서 정리하려고 했다. 이미 시간도 많이 썼고, 이미 GamsGo를 다시 이용할 생각도 없었기 때문이다. 그런데 도저히 그냥 넘어갈 수 없는 일이 또 발생했다. 1. “캡처가 부족한 것 같다”는 생각에서 다시 문의를 넣었다 블로그 글을 정리하면서 한 가지가 계속 마음에 걸렸다. 내가 캡처를 다 남기지 못한 부분이 꽤 많구나. 블로거의 자세를 배워가는 오늘.. 당시에는 감정적으로 대응한 부분도 있었고, 담당자가 계속 바뀌는 상황에서 모든 대화를 캡처하지 못했다. 그래서 정리 차원에서, 다시 한 번 GamsGo 사이트에 접속해 문의를 남겼다. 특별한 요구 법적 조치 언급 그냥 “현재 보상 진행 상황이 어떻게 되었는지” 문의 2. 믿기 힘든 일 – 문의 남기고 1초도 안 돼서 벌어진 일 정말 과장이 아니다. 문의 작성 전송 버튼 클릭 1초도 안 되어 갑자기 지갑에 25.50달러가 추가 입금

Naver Blog

GamsGo(겜스고) 유튜브프리미엄 환불 사태 최종 정리

아직 보상 못 받았다면 지금 꼭 확인하세요 이 글은 내가 직접 겪은 GamsGo(겜스고) 유튜브 프리미엄 우회 결제 환불 사태에 대한 마지막 정리 글이다. 이미 1편과 2편에서 어떤 일이 있었는지 왜 사람마다 보상이 달랐는지 왜 끝까지 물어본 사람만 추가 보상을 받았는지 를 상세히 기록했다. 이 글에서는 더 이상 감정을 이야기하지 않는다. 지금 이 상황에서, 피해를 입은 이용자가 실제로 무엇을 해야 하는지만 정리한다. 1. 지금 상황을 한 문장으로 요약하면 가만히 있으면 최소 보상만 받고 끝나고, 끝까지 확인한 사람만 추가 보상을 받는 구조 이건 개인의 느낌이 아니라, 여러 이용자의 사례와 내가 직접 겪은 과정을 통해 확인된 사실이다. 2. 이런 경우라면 ‘아직 끝난 게 아닐 수 있습니다’ 아래 항목 중 하나라도 해당된다면, 보상은 아직 더 남아 있을 가능성이 있다. 유튜브에서 갑자기 환불 메일을 받았다 GamsGo에서 6달러 안팎만 환불/포인트로 받았다 주문이 2건 이상인데 1건만

Naver Blog

늦깎이 신입생? 실무 경력직?

안녕하세요! IT와 개발의 세계에서 조금은 독특한 길을 걷고 있는 대학생 개발자 겸 프리랜서, Dev NR입니다. 드디어 제 블로그 '개발하는먼지'의 첫 글을 쓰게 되었습니다. '개발하는먼지'라니, 이름이 조금 특이하죠? 광활한 개발의 우주에서 저는 아직 작은 '먼지' 같은 존재일지도 모릅니다. 하지만 그 먼지가 끊임없이 '개발(Developing)'하며 성장하는 모습을 이곳에 기록하고 싶다는 의미를 담았습니다. 그리고 언젠가는 이 먼지들이 모여 멋진 결과물을 만들어내겠죠! 이 블로그를 시작하기까지 사실 고민이 참 많았습니다. '내 이야기를 궁금해하는 사람이 있을까?' 하고요. 하지만 주변 지인들에게 제 이야기를 하면, 다들 이런 반응을 보이곤 했습니다. 정말요? 현장에서 일하다가 다시 대학생이 되었다고요? 하드웨어 하다가 왜 갑자기 소프트웨어로 넘어왔어요? 이미 외주도 한다면서 학교는 왜 다녀요? 어쩌면 나의 이 경험이 누군가에게는 꽤 흥미로운 이야깃거리가 될 수도 있겠다'는 용기

Naver Blog

대학생 개발자가 학업과 사이드 프로젝트, 두 마리 토끼 잡는 법!

개강이 엊그제 같은데 벌써 과제와 팀플, 그리고 시험 기간의 압박이 슬슬 다가오는 시기입니다. 하지만 우리의 개발 열정은 식지 않죠! 많은 대학생 개발자분들이 학업과 병행하며 사이드 프로젝트나 스터디를 진행하시는데요, 저 역시 마찬가지입니다. 시간은 한정되어 있는데 하고 싶은 건 너무 많아서, 어떻게 하면 이 소중한 시간들을 효율적으로 사용할 수 있을지 항상 고민하게 됩니다. 그래서 오늘은 제가 학업과 프로젝트를 병행하면서 터득한 그리고 여전히 노력 중인! 몇 가지 소소한 팁들을 공유해볼까 합니다. 1. 목표는 명확하게, 범위는 '현실적으로' 가장 중요한 첫걸음입니다. 열정이 넘칠 때는 "이것도 하고 싶고, 저 기능도 넣고 싶어!" 하다가 결국 이도 저도 안 되는 경우가 생기곤 하죠. (제 경험담입니다... ) MVP (최소 기능 제품) 설정: 프로젝트의 '핵심 기능'이 무엇인지 명확히 정의하세요. 처음부터 모든 것을 완벽하게 만들려 하기보다는, 가장 중요한 기능 1~2개에 집중해

Naver Blog

KAKAO Tech for impact x 알맹상점

이번 학기, 저희 팀은 Tech for Impact 프로그램을 통해 알맹상점과 함께 의미 있는 여정을 시작했습니다. '기술을 통해 사회에 긍정적인 영향을 준다'는 목표 아래, 저희는 제로 웨이스트 운동의 중심에 있는 알맹상점의 지속 가능 한 성장을 위한 기반을 마련하는 프로젝트를 진행했습니다. 사용자 여러분께 저희가 어떤 문제를 해결했고, 어떤 기술을 적용했으며, 이 과정을 통해 무엇을 배웠는지 프로젝트 전반적인 내용을 회고록 형태로 공유하고자 합니다. 기술로 사회적 가치를 만들다: Tech for Impact와 알맹상점 ERP 개발 회고 1. 문제의 발단: 재고 관리의 불안정성이 사회적 가치 확산을 막는다 저희 팀은 인지과학, 소프트웨어, AI 등 다양한 전공의 학생들이 모여 알맹상점의 운영 효율화라는 단 하나의 목표에 집중했습니다. 프로젝트 초기, 현장 인터뷰와 관찰을 통해 가장 핵심적인 문제를 발견했습니다. 바로 '수동적인 재고 관리'입니다. 일부 정보만 구글 시트로 관리되고

Naver Blog

카카오 오픈채팅 봇은 어떻게 ‘닉네임이 바뀐 사람’을 알아볼까 -

0. 이 글을 쓰게 된 이유 카카오 오픈채팅 봇을 만들다 보면, 한 번쯤은 이런 의문이 든다. (사실 안든다 루팅이라는 쉬운 방법이 있는데 바보같이 30분이나 붙들고 고민했다.) “아니… 닉네임을 바꿨는데도 봇은 왜 같은 사람인 걸 알지?” “이거 전체 채팅 로그를 계속 비교하는 건가?” “아니면 방 인원 목록을 주기적으로 스캔하나?” 나는 그랬다. DB에는 분명 이전 닉네임으로 저장된 기록이 있고, 어느 순간 같은 사람이 닉네임을 바꿔서 메시지를 보내는데, 봇은 너무 당연하다는 듯 닉네임이 변경되었다고 인식하고 있었다. (레퍼런스를 긁어오는 것은 너무 당연한 숙제인걸..) 처음엔 솔직히 좀 무서웠다. 이거 내가 모르는 뭔가를 긁어온건가? 싶을 정도로. (제대로 코드 분석을 안하고 긁어와서 사용한건 여전히 반성중이다.) 그래서 이번 글에서는, 내가 실제로 헷갈렸던 과정 → 잘못된 가설 → 구조를 이해한 순간까지 전부 정리해보려고 한다. 1. 내가 처음에 했던 착각들 처음엔 이런 가설

Naver Blog

db57325c7b6545cf937a20c9864b8a35

네이버 블로그를 운영하면서 “구글 검색에는 왜 안 나올까?”라는 생각이 들었다면 가장 먼저 해야 할 작업은 Google Search Console 등록입니다. 이 글은 개인 도메인을 구매하지 않은 네이버 블로그를 기준으로 설명하지만, 개인 홈페이지·워드프레스·티스토리 등 직접 사이트를 운영하는 분들에게도 동일하게 적용 가능한 방식으로 정리했습니다. 0. 시작 전 이해하면 좋은 핵심 개념 (중요) 네이버 블로그도 구글에 등록 가능 단, ‘도메인 방식’이 아니라 ‘URL 접두어 방식’을 사용 소유권 확인은 HTML 태그 방식이 가장 안정적 이 구조는 개인 도메인 사이트에서도 그대로 사용됩니다. 1. 구글 서치 콘솔 접속 및 로그인 Google Search Console 접속 구글 계정으로 로그인 구글 서치 콘솔 메인 화면 – 로그인 직후 화면 2. 속성(Property) 추가하기 메인 화면에서 ‘속성 추가’ 버튼을 클릭합니다. 여기서 중요한 선택지가 나옵니다. 도메인 → 개인 도메인을

1