EXE 하나로 시작하는 Windows 방화벽 규칙 관리: 조회부터 안전한 배포까지

EXE 하나로 시작하는 Windows 방화벽 규칙 관리: 조회부터 안전한 배포까지
방화벽 규칙을 실행 파일 중심으로 관리하기 Windows 방화벽 규칙은 인바운드와 아웃바운드가 나뉘고, 같은 프로그램에 여러 규칙이 연결될 수 있습니다. 이름만 보고 대상 규칙을 찾으면 비슷한 이름의 다른 규칙과 혼동하기 쉽고, 한쪽 방향의 규칙만 등록된 상태도 놓치기 쉽습니다. 현재 구현은 이 문제를 실행 파일 경로를 기준으로 규칙을 조회하고 필요한 상태로 보정하는 방식으로 해결합니다. 사용자가 EXE 파일을…

SFTP 업로드가 하나 실패해도 멈추지 않도록: 오류 정책과 서버 선택 흐름 개선

SFTP 업로드가 하나 실패해도 멈추지 않도록: 오류 정책과 서버 선택 흐름 개선
여러 파일이나 폴더를 서버로 전송할 때 가장 곤란한 상황은 일부 항목의 오류 때문에 전체 작업이 중단되는 것입니다. 권한이 없는 파일 하나, 사라진 경로 하나만 있어도 나머지 정상 파일까지 다시 선택해야 한다면 대량 업로드의 부담이 커집니다.최근 macOS용 SFTP 도구에서는 이 문제를 중심으로 업로드 오류 처리와 저장 서버 선택 방식을 개선했습니다. 별도의 백엔드와 프론트엔드로 나뉜 구조가 아니라,…

빈 화면과 끊기는 로그인을 줄인 가족용 맞고 웹게임 개선기

빈 화면과 끊기는 로그인을 줄인 가족용 맞고 웹게임 개선기
게임 기능 다음에 다듬어야 했던 것 이 프로젝트는 가족 구성원이 각자 계정으로 접속해 컴퓨터와 맞고를 즐기는 웹게임입니다. 최근 확정된 구현에는 회원 인증, 사용자별 게임머니, 진행 중인 판 저장, 여러 단계의 컴퓨터 난이도, 자동치기, 효과음과 음성, 설치형 웹앱 기능이 포함됐습니다. 게임 규칙이 갖춰진 뒤에는 게임 자체보다 서비스에 들어가는 과정에서 개선할 부분이 드러났습니다. 기존 HTML은 React가 실행되기…

개인 소설 서재를 다듬은 개발 기록

개인 소설 서재를 다듬은 개발 기록
개인 소설 서재는 작품을 저장하는 기능만으로 완성되기 어렵습니다. 여러 형식의 콘텐츠를 편하게 등록하고, 연재 작품을 관리하며, 어떤 기기에서도 읽던 위치로 자연스럽게 돌아갈 수 있어야 합니다. 이번 개발은 그 흐름을 하나씩 연결하는 방향으로 진행됐습니다. 최근 Git 이력과 현재 구현을 살펴보니, 변화의 중심은 콘텐츠 수집, 작품 관리, 읽기 경험이라는 세 가지 축으로 정리할 수 있었습니다. 프론트엔드와 백엔드는…

전원 상태에 따라 CPU EPP를 바꾸는 Windows 도구 만들기

전원 상태에 따라 CPU EPP를 바꾸는 Windows 도구 만들기
매번 전원 설정을 바꾸는 불편Windows의 CPU Speed Shift EPP는 성능과 전력 절약 중 어느 쪽을 우선할지 정하는 값입니다. 낮은 값은 성능에, 높은 값은 전력 절약에 무게를 두는 성향을 나타냅니다. 다만 실제 반응은 CPU, BIOS, 전원 드라이버와 노트북 제조사 정책에 따라 달라질 수 있습니다.Windows 기본 도구인 powercfg로 EPP를 조정할 수 있지만, 명령을 직접 입력하려면 현재 전원이…

Mac Mini를 결국 주문했습니다

요즘 들어 작업 환경을 조금씩 정리하고 있습니다.그 과정에서 가장 오래 고민했던 것이 바로 데스크탑 환경이었습니다. 원래는 “지금 있는 장비로 조금 더 버틸까?” 라는 생각이 컸습니다.하지만 개발 작업, 서버 관리, 문서 정리, 테스트 환경 운영까지 점점 동시에 해야 하는 일이 많아지다 보니 결국 Mac Mini를 주문하게 되었습니다. 왜 하필 Mac Mini인가 사실 처음부터 Mac Mini를 사려고…

MES를 웹만으로 운영하지 않는 이유

MES를 개발하면서 한동안은 “모든 기능을 웹으로만 구성하는 것이 가장 효율적이지 않을까?”라는 고민을 많이 했습니다. 실제로 웹 기반 구조는 장점이 많습니다. 예를 들어: 즉시 수정 가능 중앙 관리 편리 별도 설치 부담 감소 브라우저만 있으면 접근 가능 업데이트 배포 간단 같은 부분은 매우 큰 장점이었습니다. 특히 관리자 화면이나 통계, 기준정보 관리 같은 기능은 웹 구조가 훨씬…

컨베이어 환경에서 머신비전 렌즈 선택하며 고민한 것들

최근 현장에서 사용할 머신비전 카메라와 렌즈를 검토하면서 생각보다 많은 부분을 직접 확인해야 한다는 것을 느끼게 되었습니다. 처음에는 단순히 “카메라 해상도만 높으면 되지 않을까?”라고 생각했지만, 실제로는 렌즈와 설치 환경의 영향이 훨씬 컸습니다. 현재 테스트 중인 환경은 컨베이어 위를 이동하는 제품의: 바코드 QR 코드 숫자(OCR) 등을 인식하는 구조입니다. 완전히 고정된 환경은 아니고, 제품이 지나가는 동안 순간적으로 멈칫하는…

Android 현장 앱이 Google Play 심사에서 계속 보류되던 이유

최근 현장에서 사용하는 Android 앱을 Google Play에 등록하는 과정에서 예상보다 긴 시간 동안 심사가 보류되는 경험을 하게 되었습니다. 기능적인 문제는 없다고 생각했지만, 심사는 계속 “검토중” 상태로 유지되었고 정확한 원인도 안내되지 않았습니다. 처음에는 권한 문제나 정책 문제를 의심했지만, 실제 원인은 앱의 초기 동작 흐름에 있었던 것으로 보입니다. 제가 개발 중인 앱은 실행 시 기본 서버(default site)에…

Windows RawInput으로 HID 바코드 스캐너 등록·관리하기

Windows RawInput으로 HID 바코드 스캐너 등록·관리하기
현장에서 사용하는 바코드 스캐너는 흔히 키보드처럼 동작합니다. 메모장이나 입력창에 커서를 두고 바코드를 읽으면 숫자와 문자열이 바로 입력되는 방식입니다. 설치와 사용은 간단하지만, 여러 장치가 동시에 연결되는 환경에서는 입력값만으로 어느 장치가 스캔했는지 판단하기 어렵습니다. 이번 개선의 핵심은 바코드 문자열만 받는 데서 그치지 않고, Windows RawInput을 이용해 입력 장치를 구분하고 등록된 HID 장치를 관리할 수 있도록 흐름을 정리한…