👋 삶의 문제를 해결하는 논리적 도구로서의 코딩
지난 2년 정도 틈틈이 AI와 코딩을 접해보니, 이것이 단순한 기술이 아니라 '삶의 문제를 해결하는 논리적인 도구'라는 걸 깨달았습니다. 심리학이 사람의 마음을 이해하고 돕는다면, 코딩은 내 일상의 불편함을 기술로 해소해주더군요.
오늘은 제가 공부를 겸해 직접 만든 '도서관 검색 & 알림 봇' 이야기를 해보려 합니다.
😫 문제의 시작: "검색은 되는데... 너무 귀찮아!"
저는 시립 도서관을 자주 이용합니다. 요즘은 도서관 통합 사이트가 잘 되어 있어서 시내 여러 도서관의 장서를 한 번에 검색할 수 있죠. 기능 자체는 훌륭합니다.
하지만 '접근성'과 '타이밍'이 문제였습니다.
- 보고 싶은 책이 생길 때마다 사이트에 접속하고 로그인하는 과정이 번거롭습니다.
- 인기 있는 책(예: 코스모스)은 늘 '대출 중'입니다.
- 가장 큰 문제: "언제 반납되지?" 하며 매일 사이트에 들어가 확인하다가, 깜빡한 사이에 다른 사람이 채가버립니다.
*"내가 매번 확인할 필요 없이, 책이 반납되면 알아서 나한테 알려주면 안 되나?"*
이 작은 게으름이 저를 키보드 앞으로 이끌었습니다.
💡 해결책: 나만을 위한 '텔레그램 봇'
그래서 만들었습니다. 제가 매일 쓰는 메신저인 '텔레그램'에서 친구에게 카톡 하듯 물어보면 답해주는 봇입니다.
기능은 심플합니다.
- 1초 컷 검색: 채팅창에
/s 책제목만 치면, 시내 모든 도서관을 뒤져서 대출 가능한 곳을 보여줍니다. - 자동 잠복근무(모니터링): 빌리고 싶은 책이 모두 대출 중이라면? 봇이 주기적으로 확인하다가, 책이 반납되는 순간 저에게 알림을 보냅니다.
⚠️ 기술적 난관: "데이터가... 과거에서 왔다고?"
개발은 생성형 AI(Claude)와 함께 진행했습니다. 제가 기획을 하고 AI가 코드를 짜주는 식이었죠. 그런데 개발 도중 한계에 직면했습니다.
제가 사용한 '정보나루(Data4Library)' API의 특성 때문이었습니다.
⛔ 정보나루 API의 한계
이 API는 도서관의 실시간 데이터를 보여주지 않습니다.
데이터 수집 시점으로부터 최소 하루 전(D-1) 데이터를 바탕으로 결과를 알려줍니다.
즉, 봇이 "대출 가능해요!"라고 해서 갔는데, 오늘 아침에 누군가 빌려갔을 수도 있다는 뜻입니다.
🔧 타협과 보완: 완벽하지 않아도 괜찮아
하지만 포기하기엔 아까웠습니다.
"봇은 '1차 필터' 역할만 시키자."
- 봇이 "대출 가능"이라고 띄워줄 때, 실제 도서관 홈페이지의 검색 결과로 연결되는 링크(URL)를 같이 생성해줍니다.
- 저는 봇의 알림을 받고 -> 링크를 클릭해서 -> 최종적으로 실시간 현황을 확인하고 도서관으로 출발합니다.
이렇게 하니 매일 사이트에 들어가서 검색어를 입력하는 수고는 사라지고, 텔레그램 채팅창에 한 줄 명령어만 입력하면 되는 시스템이 완성되었습니다.


📝 마치며: 코딩, 누구나 할 수 있습니다
완벽한 자동화는 아니지만, 삶의 질이 약간 올라갔습니다.
상담을 하다 보면 문제 정의 자체가 모호할 때가 많은 불확실성을 견디며, 한치 앞도 잘 보이지 않는 뿌연 안개 속을 내담자와 함께 한 걸음씩 조심스럽게 걸어야 할 때가 있습니다.
초심자의 눈에서 코딩은 정반대로 느껴집니다. 문제가 명확하고 문제 풀이의 과정도 너무나 명확합니다. 그래서 더 매력적으로 느껴집니다.
저는 바이브 코딩의 진짜 가치가 일상의 소소한 문제를 해결하는 데 있다고 생각해요. - 출처
바쁜 일상 속에서 새로운 것을 배우는 게 쉽지는 않습니다. 하지만 일상의 소소한 문제 해결이 주는 쾌감은 새로운 기술을 배우는 데 따르는 수고를 상쇄하고도 남는 것 같습니다.
📎 기술 스택 & 참고
- Language: Python 3.14
- Library: python-telegram-bot, requests
- Data: 정보나루(Data4Library) API
- Limitation: 데이터 업데이트 주기로 인한 1일 지연 발생 (실시간 확인용 링크 생성으로 보완)
- Infra: GitHub Actions (24시간 자동화)