백엔드 API 개발이 늦어져 프론트엔드 화면 구현이나 단위 테스트를 진행하지 못하고 무작정 기다린 경험이 있을 것이다.다만 정식 API가 나올 때까지 컴포넌트 내부에 임시 데이터를 하드코딩하거나 fetch 함수를 직접 수정하는 방식은 나중에 코드를 정리할 때 버그를 유발하기 쉽다.이번에는 네트워크 계층에서 실제 HTTP 요청을 가로채는 MSW(Mock Se···
해외여행을 떠나거나 해외 직구 사이트에서 물건을 살 때 생각지도 못한 환전 수수료나 해외 결제 수수료 때문에 예상보다 지출이 컸던 경험이 있을 거다. 분명 원화 기준으로 계산하고 결제했는데 청구서에 원화 결제 수수료(DCC)까지 붙어 추가 비용이 나간 것을 보면 속이 쓰리다. 다만 카드사마다 내놓는 해외 특화 카드의 종류가 워낙 다양하고 충전 방식이나 환전···
PHP 신규 프로젝트를 배포하거나 라이브러리를 추가한 뒤 Fatal error: Uncaught Error: Class 'AppServicesUserService' not found 같은 치명적 에러를 마주쳐 당황했던 경험이 있으신가요?대부분의 개발자들은 단순한 파일 경로 문제로 지레짐작하고 require_once를 남발하지만, 정작 원인이 Composer···
열심히 일해서 모은 돈으로 예적금을 들거나 주식, ETF에 투자해 소소한 수익을 냈지만 막상 만기나 정산 때 생각보다 적은 금액이 들어와 당황한 적이 있을 거다. 바로 15.4%라는 이자·배당소득세가 꼬박꼬박 빠져나가기 때문이다. 다만 절세 금융상품의 존재를 잘 몰라서 이러한 세금을 그대로 내는 경우가 많다. 이번에는 절수의 필수품으로 불리는 ISA(개인종···
매년 때가 되면 어김없이 날아오는 자동차세 고지서를 보고 부담감을 느낀 적이 있을 거다. 다만 자동차세를 한 번에 선납하면 세금을 할인해 주는 '연납 제도'가 있다는 사실을 알면서도, 신청 시기를 놓치거나 방법을 몰라 정가를 그대로 내는 경우가 많다. 이번에는 자동차세 연납 제도의 핵심 원리부터 신청 대상, 그리고 최대 공제 혜택을 받는 실전 활용법까지 정···
Zoom API를 연동해 화상 회의실을 자동 생성하는 시스템을 구축해보았는가?다만 2023년 이후 기존 JWT 앱 인증 방식이 완전히 지원 중단(Deprecated)되어, 예전에 작성한 코드가 401 Unauthorized 에러를 뱉거나 Server-to-Server OAuth 2.0 인증 절차에서 헤매는 개발자들이 많다.이번에는 Zoom의 변경된 인증 표···
웹 서비스를 운영하다가 사용자가 이모지(?, ?)나 특정 다국어 문자를 입력하고 저장할 때 MySQL ERROR 1366 (HY000): Incorrect string value 에러가 발생하며 데이터 저장이 튕기는 현상을 경험해봤을까?다만 대부분의 개발자들은 이 에러의 정확한 원인이 MySQL 기본 utf8 인코딩의 3바이트 제한이라는 사실을 모른 채, ···
계절이 바뀔 때마다 부쩍 늘어난 전기요금 청구서를 보고 한숨을 쉰 적이 있을 것이다.다만 전기를 아낀 만큼 현금이나 요금 차감으로 그대로 돌려주는 정부 지원 제도가 있다는 사실을 잘 몰라서 못 챙기는 경우가 많다.이번에는 에너지캐시백 제도가 정확히 무엇인지, 누가 신청할 수 있고 어떻게 신청해서 매달 전기요금을 아끼는지 구체적으로 정리해서 소개하겠다. 왜 ···
웹 서비스나 쇼핑몰 프로젝트를 개발하다 보면 사용자에게 입력받은 주소를 기반으로 지도에 핀을 표시하거나, 매장 간의 거리를 계산하기 위해 위도와 경도 좌표로 변환해야 하는 상황을 다들 경험해봤을 것이다.다만 Kakao Developers에서 REST API 키를 발급받아 cURL 요청을 보냈는데 401 Unauthorized 에러가 발생하거나, 응답 결과가···
병원이나 약국에 다녀온 뒤 소액이라는 이유로, 혹은 서류 준비가 귀찮아서 실손보험 청구를 미뤄본 적이 있을 것이다.다만 청구할 수 있는 기간이 무려 3년이나 된다는 점을 몰라서 아까운 내 돈을 그대로 날리는 경우가 많다.이번에는 놓치기 쉬운 미청구 실손보험금이 무엇인지, 누구를 대상으로 하며, 모바일로 어떻게 쉽고 빠르게 돌려받는지 정리해서 소개하겠다. 왜···
웹사이트의 URL 구조를 리뉴얼하거나 특정 페이지를 새 주소로 옮길 때 리다이렉트(Redirect)를 설정해본 경험이 있으실 겁니다.다만 대부분의 개발자들은 301과 302 상태 코드의 명확한 차이점과 이것이 검색엔진 크롤러에 미치는 치명적인 영향을 모른 채 단순 이동용으로 302나 자바스크립트 이동을 남발하곤 합니다.이번 글에서는 301과 302 리다이렉···
매달 지로 영수증이나 앱 알림으로 찾아오는 관리비 고지서를 보고 한숨을 쉬어본 적이 있을 거다.다만 관리비는 당연히 내야 하는 고정 비용으로 생각하고 별다른 확인 없이 그대로 납부하는 경우가 많다.이번에는 매달 세어나가는 관리비를 줄이는 핵심 절약 방법이 무엇인지, 대상자는 누구이고 실전에서 어떻게 활용하는지 깔끔하게 정리해서 소개하겠다. 1. 왜 관리비를···
매달 통장에서 빠져나가는 대출 이자를 보며 한숨을 쉰 적이 다들 한 번쯤은 있을 거다.대출을 받을 때 정해진 금리가 만기 때까지 그대로 유지된다고 생각해서 무작정 참고 내는 경우가 많다.다만 승진이나 소득 증가, 신용점수 상승 등 상태가 좋아져도 방법을 잘 몰라서 금리 인하 혜택을 챙기지 못하는 사람들이 많다.이번에는 대출 이자를 줄여주는 금리인하요구권이 ···
웹 서비스를 개발하며 회원 시스템을 구축할 때 사용자의 비밀번호를 md5나 sha256으로 단순 해싱해서 DB에 저장해 본 경험이 있을까? 다만 대다수 개발자가 솔트(Salt)의 정확한 개념이나 Bcrypt 알고리즘의 필요성을 모른 채 인터넷 블로그의 구형 코드를 그대로 복사해 붙이는 경우가 많다. 이번에는 PHP에서 제공하는 password_hash()와···
DB에서 데이터를 조회한 뒤 PHP 단에서 특정 키(Key) 기준으로 연관 배열 목록을 재정렬해야 할 때, 매번 usort()나 array_multisort()의 복잡한 익명 함수 문법 때문에 애를 먹은 적이 있을 것이다.다만 대부분의 개발자들은 array_multisort()에 인자를 전달하는 방식이나 usort()의 우주선 연산자() 작동 원리를 정확히···
웹사이트의 정적 리소스나 콘텐츠를 수정했음에도 사용자의 브라우저에는 계속 옛날 버전이 노출되어 난감했던 경험이 있을 것이다.다만 Cloudflare CDN을 사용하는 환경에서 관리자 페이지 내 콘텐츠 업데이트 기능과 연동하여 캐시를 자동으로 지우는 방법을 몰라, 매번 Cloudflare 대시보드에 로그인하여 수동으로 버튼을 누르는 경우가 많다.이번에는 Cl···
카페에서 텀블러를 사용하거나 마트에서 전자영수증을 받으면서 그냥 버려지는 혜택이 아깝다고 느껴본 적이 있을 거다.다만 이러한 소소한 일상 실천이 실제 현금으로 환급된다는 사실을 몰라서 신청조차 하지 않는 경우가 많다.이번에는 매달 나가는 생활비를 아끼고 통장에 현금을 적립받을 수 있는 탄소중립포인트 제도의 지원 대상과 구체적인 활용법을 한눈에 정리해서 소개···
매달 통신사에서 빠져나가는 7~8만 원대 스마트폰 요금 명세서를 보며 한숨을 쉰 적이 다들 있을 것이다.다만 결합 할인이나 약정 승계 문제가 복잡하게 느껴져 선뜻 바꾸지 못하고 그대로 방치하는 경우가 의외로 많다.이번에는 매달 부담되는 통신비를 절반 이하로 줄일 수 있는 알뜰폰(MVNO) 요금제 전환 방법과, 실패 없이 알짜 혜택을 챙기는 실전 활용 팁을 ···