본문 바로가기

전체 글

(17)
일의 의미 내 이력서는 이러한 문단으로 시작한다. 제가 만든 서비스와 프로그램들을 통해 사람들에게 기쁨을 주기 위해 개발을 하고 있습니다. 서비스의 가치와 지향점을 중요하게 생각합니다. 어떠한 일을 하는지, 그리고 그 일을 통해서 어떤 서비스를 사람들에게 제공하는지, 그 제공되는 서비스가 사람들을 유익하게 하는지를 중요하게 생각합니다. 개발자라는 소프트웨어를 만든다. 시스템 깊숙한 곳에 있는 소프트웨어를 만드는 경우에는 그 시스템을 통해 실제적으로 어떤 것들이 만들어지는지 보기 어려운 경우도 있지만, 나는 서비스 개발을 주로 했기 때문에 많은 사람들이 내가 개발한 결과물을 사용하는 것을 가까이에서 접했다. 내가 지금까지 개발했던 대부분의 서비스는 내가 실제로 먼저 사용하는 서비스였다. 내가 만든 결과물을 내가 직접..
갤럭시핏2 심박센서로 사용하기 갤럭시핏2에는 심박센서가 들어가 있어서 BLE 센서로 각종 라이딩 앱과 연동이 가능하다. iOS 기준으로 와후 피트니스, 스트라바, 오픈라이더에서 심박 센서로 연동이 되는 것을 확인했다. 각 앱에서 연결하는 방법을 간단하게 알아보면 다음과 같다. 와후 피트니스 앱은 별도로 설정할 것 없이 센서 추가 화면에서 바로 갤럭시핏2를 심박센서로 추가할 수 있다. 앱에서 처리를 잘 해두었는지 가장 편하게 갤럭시핏2를 심박센서로 사용할 수 있다. 문제는 오픈라이더 앱과 스트라바 앱인데... 오픈라이더 앱은 그나마 낫다. 가끔가다 갤럭시핏2를 센서로 잘 인식하지 못할 때 아이폰 블루투스를 한 번 껐다가 켜주면 잘 인식한다 스트라바 앱이 제일 거지같은데.. 스트라바 앱을 한 번 끄면 다시 켰을 때 갤럭시핏2를 잘 인식하..
2015 메리다 스피더 200D 지금 타고 있는 자전거다. 2018년 4월에 중고로 업어와서 지금까지 열심히 달려주고 있는녀석이다. 처음 업어왔을 때는 이런 모습이었다. 이미 전 주인분이 컴포넌트들도 변경을 해두어서 순정 상태로 남아있던 것은 프레임, 구동계, 브레이크 정도 뿐이었다. 티아그라 3x9 구동계에 텍트로 유압 디스크 사양인 녀석이었다. 전 주인분이 아주 깨끗하게 관리를 잘하셔서 카본 모용 데칼 스티커도 이쁘게 붙어있었고 자전거도 기스 없이 깨끗한 상태였다. 지금은 뭐... 수많은 기스와 상처 자국이 있지만... 전 주인분이 변경한 컴포넌트들이 꽤 있었는데, 앞 뒤 큐알과 싯클램프가 Zefal 도난 방지용 세트로 변경되어 있었고 안장은 셀레 이탈리아의 SLS 안장, 핸들바, 스템, 싯포스트는 릿치 wcs 알로이 제품으로 교체..
자전거 주저리 주저리 내 첫 자전거는 중학생 때 부모님이 사주셨던 스틸 재질의 20인치 접이식 미니벨로였다. 그 때는 미니벨로라는 단어도 몰랐고 그냥 접을 수 있는 자전거였다. 정작 접어서 뭘 한 적은 한 번도 없지만.. 지금도 그렇지만 그 당시에도 자잘한 자전거 튜닝에 손을 대고 싶었는지, 뒷 바퀴 허브 쪽에 발 받침대를 부착하여 친구도 뒤에 태워서 다니고 그랬다. 그 때는 빠른 속도나 이런 것에는 관심이 전혀 없었기 때문에 더 좋은 자전거를 갖고 싶다는 생각도 전혀 없었고 이곳저곳을 자전거로 많이 쏘다니고는 했다. 그러다가 학교 근처로 이사를 가게되면서 자전거를 탈 곳이 마땅치 않았다. 전에 살던 곳처럼 골목을 통해서 여기저기 다니기 힘든 곳이었고 고등학교에 가게되면서 자연스럽게 잘 타지 않게 되어서 내 첫 자전거는 집 ..
웹 푸시 구현에 대한 고민 웹 푸시를 어떻게 구현할 것인가? 1. websocket 서버를 구현하는 방법 - socket.io, spring websocket, ws, websocketd 등을 이용한 웹 소켓 서버 구현 - 클라이언트에서 적절한 라이브러리 혹은 api 로 실시간(에가까운) 양방향 통신 구현 - WebSocket api 가 지원되지 않는 브라우저나 환경에서는 long polling 이나 스트리밍 등의 방법으로 양방향 통신을 구현 - 트래픽 관리 다 직접 해야함 - 거의 모든 브라우저 환경 지원 가능 2. FCM 이용 - 다 좋은데 (무료, 트래픽 관리 안해도 됨) - Push API, Service Worker API 를 지원하는 브라우저에서만 사용 가능하다. - 즉 mac 사파리, iOS 사파리에서 fcm 사용 불..
mac 로컬 환경 https 구성 맥에서 로컬 개발환경을 https 로 만들기 위해서는 직접 ssl 인증서를 만들고 macOS에 등록하는 과정이 필요하다. 1. ssl 인증서 만들기 - https://letsencrypt.org/docs/certificates-for-localhost/ 참고 openssl req -x509 -out localhost.crt -keyout localhost.key \ -newkey rsa:2048 -nodes -sha256 \ -subj '/CN=localhost' -extensions EXT -config 응용 프로그램 -> 유틸리티 -> 키체인 접근 어플리케이션 실행 상단 파일 메뉴 -> 항목 가져오기 -> 생성된 crt 파일 가져오기 키체인 앱 리스트에 추가된 인증서 더블클릭 -> 신뢰 탭 -> 이 ..
[번역글] 자바스크립트의 이벤트 처리 순서 (Event order in Javascript) 원문 : https://www.quirksmode.org/js/events_order.html 첫 번역 글이라 뭔가 매끄럽지 못하네요. 궁금하신 점이 있거나 번역 수정에 대한 의견은 댓글로 주시면 감사하겠습니다. 자바스크립트 이벤트 순서show page contentsSee section 7D of the book.Netscape 4 only supports event capturing, Explorer only supports event bubbling. Netscape 6 and Konqueror support both, while Opera and iCab support neither. 자바스크립트 이벤트 소개 에서 처음에 제가 이해가 잘 안되는 질문을 했었습니다. “만약 어떤 엘리먼트와 그 상위 ..
맥용 마우스/키보드 버튼 바인더 BetterTouchTool 요새 작업하던 중 손목이 아파서 집에 굴러다니던 닥터마우스를 사용하기 시작했는데 맥에서는 뒤로 가기 버튼, 앞으로 가기 버튼이 제대로 동작하지를 않는다. 닥터마우스 회사가 망했는지 이미 공식홈페이지는 폭파되어 있고 맥 드라이버도 구할 수 없는 상황... 마우스 버튼에 맥의 기능을 바인딩해주는 앱을 찾던중 상당히 괜찮은 앱을 발견했는데 그것이 바로 BetterTouchTool 이다. 위쪽 메뉴 탭들을 보면 블루투스 입력장치, 매직 마우스, 트랙패드, 키보드, 일반 마우스 등 다양한 입력장치 별로 원하는 바인딩이 가능하다. 내가 필요한 것은 웹 브라우저에서의 뒤로가기, 앞으로가기 기능이기 때문에 일반 마우스(Normal Mice) 탭에 가서 Add New Button 으로 원하는 기능들을 할당해주었다. 직접..