전체 글
-
JSX의 불편함을 해결한다는 TSRX, 직접 따져봤습니다개발 이야기 2026. 6. 22. 11:22
최근 FrontOverflow 매거진에서 TSRX라는 기술을 접했습니다. Inferno를 만들고 React, Svelte 팀을 거친 Dominic Gannaway가 개발한 TypeScript 언어 확장인데요, 간단히 말하면 "JSX의 불편한 부분을 언어 레벨에서 고쳐보겠다"는 시도입니다. 현재 알파 단계라 실무 투입과는 거리가 있지만, 설계 방향 자체가 흥미로워서 찬찬히 뜯어봤습니다.TSRX가 뭘 고치려는 건가요JSX를 쓰다 보면 반복적으로 걸리는 부분들이 있습니다. TSRX는 그중 네 가지를 언어 차원에서 건드립니다.1. Hook은 왜 조건문 앞에 있어야 할까요React를 배우면서 누구나 한 번쯤 부딪히는 규칙입니다. "Hook은 최상위에서만 호출해야 한다"는 제약 때문에, early return을 먼..
-
재직중인 회사에서 법인카드 정산·영수증 처리 자동화하기개발 이야기 2026. 6. 19. 09:17
재직 중인 회사에서 공용법인카드를 쓰고 있습니다. 매월 초가 되면 이전 달 사용 내역을 정리하는 게 루틴이죠. 카드사에서 받은 엑셀을 열고, 거래마다 사용목적과 사용인원을 채우고, 영수증을 모아 PDF로 붙인 뒤 정해진 양식에 맞춰 제출합니다.기존에는 경영관리부가 카드별 사용내역 파일을 뽑아, 담당자마다 메일로 보내는 방식이었습니다. 부서마다 받는 파일이 다르고, 메일함에서 찾고, 엑셀 설치·열기·양식 맞추기부터 시작하니까요. 익숙해지면 금방인데, 매번 손으로 하다 보면 같은 실수가 반복됩니다. 파일 버전 꼬임, 이름 오타, 영수증 빠뜨림, 금액 안 맞는 행.개발자 입장에서는 이게 꽤 아깝다고 느껴졌습니다. "파일을 사람에게 보내는" 게 아니라 "한곳에 올리면 각자 화면에 뜨게" 하면 되지 않을까요.그래..
-
WebView에서 iOS처럼 스와이프 뒤로가기 넣기 — Next.js App Router 실전기개발 이야기 2026. 6. 19. 08:58
앱 내부의 스크린 WebView를 만들면서 router.back() 하나로는 부족하다는 걸 금방 알았습니다. 버튼은 눌리는데, 손가락으로 왼쪽 끝을 끌었을 때 이전 화면이 옆에서 따라오는 느낌이 없었거든요. 네이티브 앱에 익숙한 사용자 입장에서는 “뒤로가기가 안 되는 것 같다”는 인상으로 이어질 수 있습니다.그래서 직접 구현했습니다. 엣지 스와이프, 이전 화면 미리보기, 스크롤 위치 복원까지 한 흐름으로 묶은 이야기입니다.들어가며 — router.back()만으로는 부족했던 이유처음엔 단순했습니다 헤더 뒤로가기 버튼에 router.back() 연결 -> 끝하지만 쓰다 보니 문제가 세 가지 문제가 발생했습니다.첫째, 미리보기가 없습니다. iOS는 스와이프하는 동안 이전 화면이 살짝 보입니다. router...
-
Python으로 점심 메뉴 Slack 봇 만들기개발 이야기 2026. 6. 16. 11:30
카카오 오픈채팅에는 공식 API가 없습니다.Mac 로컬 DB, Slack 파일 업로드, launchd 스케줄링을 엮으면서 겪은 문제와 해결 방법을 정리했습니다.목차문제 정의아키텍처Slack 연동 이슈카카오 연동 이슈macOS 스케줄링비즈니스 로직환경 변수테스트 방법이슈 요약표1. 문제 정의카카오 오픈채팅에 올라오는 메뉴 사진을 Slack 채널에 자동으로 보내는 파이프라인이 필요했습니다.제약 조건카카오 오픈채팅 공식 API 없음Mac 카카오톡 로컬 DB만 읽을 수 있음평일 정해진 시간에 수집 → 알림오늘 메뉴가 없으면 알림 자체를 보내지 않음특정 오픈채팅방 하나만 접근2. 아키텍처카카오 오픈채팅↓Mac + kakaocli (로컬 DB)↓로컬 캐시 (data/menu/)↓Slack Bot API실행 스케줄시..