# StudyDev - 개발자의 이런저런 이야기 > 개발자의 이런저런 이야기 > Contact: meelong0@gmail.com ### 글 #### 000 - 다음 나의 집을 찾자 아이디어는 불편함의 욕구 해결 도구다. 무엇이 불편한가? 2014년 7월 중순... 서울에 상경한지 정확하게 1년 6개월이 지났고, 쉽게 해결할 수 없을 것 같은 고민이 생겼다. 대한민국에서 내가 현재 가진 것으로 거주할 수 있게 허락된 공간은 어디일까? 부동산 포털 사이트, 관련 커뮤니티 들이 많이 있고 정보가 흩어져 있다.내가 알고 싶은건 매우 단순하다. 지금 얼마 있고 어디로 출퇴근 하는데, 어디서 살면 좋을까? 어떻게 하면 내가 저 의문에 대한 답을 쉽게 찾을 수 있을까? 이것에 대한 해답을 쉽게 얻을 수 없을까? 커뮤니티의 모임에 가서 컨설팅을 받는 방법도 있지만, 금전, 시간, 이동의 문제가 나를 번거롭게 한다. 지금의 시대는 스마트 시대이고 데이터는 널려 있다. 무엇을 할까? 그래서 이 의문에 대한 답을 찾고 싶어졌다. 조금만 관심을 가져본다면, 이 정보를 조합해서 의미를 부여해서 흐름을 읽어낼 수 있지 않을까? 마침 나는 개발자이고, 이 의문에 대해서 하나씩 파헤쳐 나가 보고자 한다. 그럼 어떻게 할 수 있을까? 아마 쉽게 딱하고 찾아지지는 않겠지만, 분명 방법은 있어 보인다. 그걸 찾아보자는 것이다. 어떻게 할까? 이걸 어떻게 해볼까 고민을 해봤다. 차별화를 두고 필요로 하는 사람을 모을 수 있는 방법이 필요해 보인다. 이미 부동산 관련된 정보는 많지만 산재되어 있는 느낌이 든다. 수치화된 정보는 네이버나 다음의 부동산에서 접할 수 있다. 살아 있는 정보는 커뮤니티에서 볼 수 있다. 그리고 과거의 정보와 현재의 정보와 미래의 변수를 결합하여 예측 가능한 데이터를 산출해 보고 싶다. 이 과정은 100%의 신뢰할 만한 데이터라기 보다 51%의 가능성을 볼 수 있으면 좋겠다. 그래서 다음과 같은 순서로 이 일을 진행해 보려고 한다. 웹 페이지를 만들자. 확장 가능성을 염두에 두고 만들자. 단순 게시판이 아니라 정보를 취합하고 분석할 수 있어야 한다. 부동산 정보중 수치화가 가능한 데이터를 찾아보자. 과거와 현재의 통계 데이터를 수치화 하고 현재의 가능 변수에 가중치를 두어 미래의 데이터를 예측해보자. 과거의 모든 데이터를 필요로 하지는 않는다. 적당히 있으면 된다. API가 필요하면 만들고 제공하자. 프로젝트는 협업이 가능한 형태로 제작하자. Git 이나 SVN이나 이슈 발행도 염두에 두자. 수치 데이터를 뽑을 수 있는 방법을 알아보자. 수치를 그래프로 표시할 수 있는 방법을 고려해보자. 지역별(Map 상단)로 수치 데이터를 표시하는 방법과 어떤 변수들이 수치 데이터에 영향을 주었는지 분석해보자. 현재 홈페이지를 최대한 활용해 보자. 개발 홈페이지니 만큼 개발 과정도 기록해 두자. (웹 프레임워크 사용, DB 아키텍처, API 구성, 각종 라이브러리 활용 방법) 조급해 하지 말라. 나 혼자서는 이 많은 일들을 다 할 수 없다. 참여를 이끌어 내고, 뜻이 같은 사람이 있으면 좋을 것 같다. 도메인은 구비했다. 이름 까 먹을까봐 무식하게도 이름 지어 샀다. 결국 까 먹을까봐 넥마홈이라고 부른다. 위메프 느낌이랄까? http://nextmyhome.com 도메인이 5년이니 5년짜리 프로젝트다. 5년 내에 내가 서울에서 그럴싸한 집을 사고 싶긴한데... 그때까지 자본의 여력을 만들어 낼 수 있을지 모르겠지만 말이다.   열심히 보다 즐기기 보다 강제하라. 현재 다니는 회사의 지난달 사장님 명언이다. 물론 좋아하는 건 아니라고 하신다. 공감한다(난 CEO가 하는 이야기 들으러 가는걸 좋아하는 류(?)의 개발자다). 흔히 열심히 하는 사람이 즐기는 사람을 이길 수 없다고 한다. 물론 좋은 방법은 아니지만 강제하는게 더해지면 못할 것도 이루어 낼 수 있다. 보통 군대에서 쓰는 표현이다. 하지만 모두가 그렇지는 않지만 뭔가 이루어 내는 사람들의 공통점중 하나는 그걸을 스스로 제어할 수 있는 능력이 있는 것 같다. 그리고 그만큼의 인내와 끈기가 있는것 같다. 열정도 필요하지만 인내와 끈기 없이는 힘들 것 같은 일이다. 지금 목요일 새벽 3시 30분... 첫 발을 디뎠다. 그리고 설레고 즐겁다. #### 001 - 지도에 흐름 그리기 지도 위에 지역별 부동산 동향을 표시하자 자료의 선택과 표현 지금 하고자 하는 것을 조금씩 실현해 나가고자 한다. 매일 머리만 굴리고 기다릴 수만은 없다. 그래서 선택한 것이 자료의 선택과 표현이다. 어떤 자료를 수집하고 어떻게 표현해서 쓸모 있는 데이터를 만들지 고민해 보자.   자료의 선택 손쉽게 구할 수 있는 좋은 정보로 KB 부동산의 월별 시세가 있다. 최초 네이버나 다음의 부동산 정보를 가져오는 방법을 찾아보았다. 크롬에서 F12 눌러서 개발자 모드 들어가서 network 상에 보이는 POST 패킷의 쿼리스트링 변수와 결과 JSON 데이터를 분석하는 것도 하나의 방법이었다. 하지만 이 방법을 당장 사용하기에는 무리가 있어 보였다. 가장 큰 이유는 부동산에 대해서 내가 아는 것이 거의 없다는 것이다. 그래서 좀 더 쉽고 객관적인 데이터부터 찾아보자는 생각을 하게 되었다. 그렇게해서 찾아낸 것이 바로 KB 부동산 월별 시세였다. 해당 사이트에서 다운로드 받은 엑셀 파일을 이용하면, 시군별 매매/전세 시세 정보를 수집할 수 있다. 엑셀 그 자체만으로도 그 추이를 파악할 수 있지만, 해당 데이터를 좀 더 의미있게 볼 수 있는 방법이 있지 않을까 하는게 생각이다. 내가 하고자 하는건 우선은 시각화다. 그리고 시각화 자료를 토대로 이유를 찾는 것이다. 예를 들면 이런게 있을 수 있겠다. 특정 해에 갑자기 매매나 전세 가격이 오른다거나, 떨어진다거나, 다른 지역 대비 다른 모습을 보여준다거나 하는 그 이유를 추론하고 싶은 것이다. 그 전후로 어떤 뉴스 또는 이벤트가 있었는가 하는 것이다. 이것은 과거의 데이터일 수 있지만, 미래를 예측할 수 있는 근거이기도 하다.   표현 표현하고자 하는 방법은 지도 API 위에 정보를 한눈에 볼 수 있도록 제공하는 것이다. 다음과 같은 정보를 볼 수 있으면 좋겠다. 동네별 가격 현황 동네별 과거 시세 변화 해당 과거 관련 이벤트 시각화 (중요도에 따른 부각화) 어떤 동향인가? 엑셀 파일은 생각보다 내용이 많은 것 같다. 엑셀 파일만으로도 갖가지 데이터를 종합해서 볼 수 있거나 비교할 수 있다. 하지만 내가 원하는 그림은 그려지지 않는다. 아마 아실분은 아실지도 모르겠으나, 이건 예전에 입원하고 있을 때 실제로 은행 VVIP라는 고객으로부터 들은 이야기다. 보통 은행은 특히 부동산 또는 개발과 관련되어 상당히 고급 정보를 미리 가지고 있고, 그 데이터는 VVIP 고객과 공유하여 고객의 자산 관리에 잇점을 준다. 보통 개발이 시작된다고 하면, 인근 땅은 이미 모두 확보가 된 상태에서 들어가는게 그런 예라 할 수 있다. 그럼 어떤 정보가 알고 싶은걸까? 예를 들면 이런 것이다. 경기도 광명의 2011년 전세 시세는 전년대비 전세 가격이 추락하던 모습에서 급격하게 성장하는 모습을 보여준다. 왜 그럴까? 무슨 일이 있었던 것일까? (09년과 10년에 철산역, 10년 소하동에 아파트가 생겼다. 10년 10월 소하동 이마트 예정, 11년 6월 광명 코스트코 확정.. 등) 해야 할 일 요약 엑셀 데이터 스터디 및 DB화 → 8월 지도 API 선정 → 7월 (구글, 다음, 네이버) 지도 API를 이용한 구역별 DB화 → 8월 구역별 폴리곤 데이터 작성, 이건 어디 있는지 찾아볼 예정... 아마 디버깅 하면 찾을 수 있을것 같다. 어딘가는 있겠지... 없으면 폴리곤 데이터 작성을 위한 에디터 만들 수 있으나... 최악의 경우임 선택 기간에 따른 구역별 매매, 전세 동향 또는 가격 차별화 시각화 표시 지역별, 기간별 발생한 사건을 기록하여 가중치를 부여하여 표시 (javascript timeline 관련 스터디 필요) → 이게 핵심인듯 다음 포스팅 내용 엑셀 데이터 분석 DB화 이후 : 지도 API에 몇개 지역에 대한 폴리곤에 데이터 시각화 표현 #### 13년 만의 HTTPS 전환기 “새 블로그를 하나 더 만들까?”그렇게 시작했다가… 케케묵은 서버를 정리하고 HTTPS까지 붙였습니다.2012년에 만든 studydev.com, 드디어 13년 만에 초록 자물쇠 완료! 왜 시작했나? ASUS 공유기의 80 포트포워딩이 가끔 죽어버리는 현상이 지속 발생하기 시작. 그래서 공장초기화를 함. 그리고 블로그 하나 더 만들려다 보니, 기존 서버가 너무 낡아 있음을 인지. PHP 7.x 에서 8.4로 업그레이드 HTTP만 쓰고, 설정이 꼬여서 주소가 엉뚱하게 튕기고, 보안도 아쉽고… HTTPS로 업그레이드 그래서 새로 만드는 대신 기존 환경을 업그레이드하기로 했습니다. 이제 새로운 서버로 옮겨갈 시간이 도래함. 중간에 만난 문제들 ASUS 공유기가 지속적으로 80 포트포워딩이 죽는 현상이 발생함. 주소가 자꾸 다른 곳으로 튕김 blog.igotobook.com으로 가면 www.studydev.com으로 넘어감 → 가상호스트(vhost) 우선순위와 워드프레스 리다이렉트가 엉킨 문제 브라우저에서 “연결이 거부됨(REFUSED)” → 서버는 정상인데, 공유기에서 443(HTTPS) 포트 포워딩이 안 되어 있었음 SSL(인증서) 발급이 403 Forbidden → 인증서 확인 파일(ACME)이 막혀서 그랬음. → 인증 확인 폴더만 예외로 열어주니 해결 Confluence/Jira 같은 서비스 프록시 → WebSocket(동시 편집)을 쓰는 Confluence는 ‘웹소켓 프록시’도 필요 이렇게 고쳤다 ASUS 공유기 80 포트포워딩이 막히거나 지속적으로 문제가 반복되면 공장 초기화를 한번 시도 Reverse-Proxy 가상호스트 정리: 사이트별로 설정을 깔끔하게 분리, 겹치는 규칙 제거 Let’s Encrypt 적용: 무료 인증서 + 자동 갱신 설정(만료 걱정 끝) 80 → 443 자동 이동: 다만 인증서 확인 폴더(/.well-known/...)는 예외 처리 공유기 443 포트 포워딩: 외부에서 HTTPS로 들어올 수 있게 보안 헤더/HSTS 추가: HTTPS가 안정화된 뒤에 HSTS(HTTPS만 사용)도 적용 프록시/웹소켓 지원: Confluence 협업 편집(웹소켓) 정상 작동 대략 아래 느낌으로 사용중인데, 구조가 몇 가지 변경되었으나 거의 유사함. 나도 따라 하고 싶다! (아주 간단 버전) ASUS 공유기 기존 포트포워딩 및 관련 셋업 내용 백업 문제가 따라올까봐 파일 대신 사진 찍어서 복원함 WIFI가 리셋이 되므로 모든 집안 장치(IoT 포함)를 다시 잡는 불편함이 발생함 현재 상태 점검 웹서버 하나만 쓰는지 확인 (중복 실행 X), 어리석게 HTTPD 버리고 Local에서 컴파일한 APACHE2 데몬을 쓴다는걸 잊고 있었음. 각 도메인(vhost) 설정이 따로 있는지 확인하고 이번 기회에 제대로 최적화함. HTTPS 준비 Let’s Encrypt로 인증서 발급 (acme.sh 또는 certbot) 인증 확인 경로(/.well-known/acme-challenge/)는 접근 가능하게 Cron으로 갱신하도록 설정 완료 포워딩/방화벽 공유기에서 443 포트 포워딩 서버 방화벽에 https 허용 자동 이동(리다이렉트) 80(HTTP)으로 들어오면 443(HTTPS)로 자동 이동 인증 갱신 폴더만 예외 보안 다듬기 보안 헤더(X-Content-Type-Options, Referrer-Policy 등) 안정화 후 HSTS(HTTPS만 쓰기) 적용 워드프레스 품질 업 업로드 제한(예: 100MB)으로 올리고 PHP-FPM + Apache 재시작 실전 팁 ChatGPT는 사랑입니다!: 없었다면 아마 성공하지 못했을 겁니다. 계속 물어보고 문제를 해결합니다. 문제가 “외부에서만” 발생하면: 서버 로그에 흔적이 거의 없습니다. → 공유기/포트부터 의심! SSL 발급 403: “인증 파일이 막혔구나” 생각하고, 그 폴더만 예외로 열어 주세요. 갑자기 500 오류: 워드프레스/플러그인/도구가 너무 오래됐을 수 있어요. → 업데이트가 최고의 해결책 큰 파일 업로드가 안 된다: PHP 설정(업로드/포스트 크기) + 재시작까지 해야 반영돼요. 체크리스트 (저장해두면 두고두고 씀) 웹서버 하나만 사용(중복 서비스 끄기) httpd 데몬인줄 알고 계속 작업했는데, 알고보니 apache2가 따로 있었다는걸 까먹었음. 도메인별 vhost 분리, 겹침/우선순위 혼선 제거 Let’s Encrypt 발급 + 자동 갱신 설정 80 → 443 리다이렉트 (인증 폴더 예외!) 공유기 443 포워딩, 서버 방화벽 https 허용 보안 헤더/HSTS 적용(점진적으로) 프록시(WebSocket 포함) 서비스는 규칙 추가 워드프레스 업로드 용량 상향 + 재시작 로그 경로 통일(나중에 찾기 쉽습니다) 마치며 새 블로그를 만들려고 시작했다가, 기존 집을 깔끔하게 재정비 해 봤습니다. 그 덕분에 studydev.com은 더 빠르고, 더 안전하고, 더 관리하기 쉬운 사이트가 됐어요. #### 2006년식 중고 그랜저 TG 판매 차량 관리 히스토리 제가 두 번째 차량 소유주입니다.  자동차등록증 참고하세요 사고내역 전 차주가 사고로 도장했던게 있었고, 이후 2번의 접촉 사고가 있었습니다.앞 번호판이 들어간 게 이때 생겼는데 수리할게 애매해서 하진 않았고, 상대차도 도장 또는 범퍼 교환으로 종료되었습니다. 2006. 6. 27 출고 (첫 번째 소유자) 1인 소유주로 사장님이고 비흡연자 사장님 성공하셔서 다른 대형 차량으로 변경하면서 판매 2011. 1. 14 매매상(친척)에 판매 소유자가 중고 매매상으로 이전되면서 변경 이력이 2회로 보이지만, 실 소유주는 1회만 변경 2011. 2. 24 아반때 사러 갔다가 그랜저 사옴 친척(매매상)을 통해 아반떼 MD 깡통 중고로 구매하러 갔다가 이 차량 시승 후 승차감, 조용함, 보스 스피커 사운드에 반해서 비슷한 값이라 생각하고 구매함 2022. 9. 1 차를 구매후 11년 동안의 변화 결혼함 2 아이의 아빠가 됨 11년 만에, 연봉이 6배 올랐음. (폐차하기 아쉬운 이유) 안전과 편의를 위해서 내부 부품은 모조리 다 교체하면서 탐 (이력도 관리함) 외관은 쓸데 없이 돈 낭비하기 싫어서 안 함. → 그래서 이 차가 외관상으로 타기 싫은 차처럼 보일 수 있음. 차 정말 좋아하는데 11년 간 돈 아껴서 2021 - Benz EQA (전기차 - 단거리 아이들 픽업용)를 구매했고, 2023 - 더 K9 그랜드플래티넘 (풀옵 - 장거리 여행용)을 구매 2023. 2. 23 진행중 그냥 폐차하면 편하긴 한데, 혹시 몰라 다음의 순서대로 처분할 예정임 개인 중고 거래 수출 폐차 현재 경북 칠곡에 차가 있으며, 주말에 시흥으로 가져올 예정임 차량 현재 모습 23년 02월 14일에 촬영한 사진입니다. 전면 후면 옆면 차량 DIY 충격적인 내부 디자인에 깜짝 놀라서 이대로는 안되겠다는 생각으로 DIY를 하기로 시작함 2011. 2. 25 네비게이션 대전 대동여지도에서 아이나비 R100 8인치 매립 wifi 테더링 모듈 달아서 실시간 검색 기능 제공 3D 지도는 유상 업그레이드 대상이지만, 해당 제품은 무제한 이용권이며 매립 이후 지속적으로 이용권 구매함. TMAP 쓸 수 있도록 샤오미 무선 거치대를 네비 우측편에 제공합니다. 2011. 2. 26 고휘도 LED DIY, 구닥다리 같지 않으면서 양카스럽지 않게 작업함. 최초 상태  수퍼비전 계기판 (좌는 변경전, 우는 변경후) - 대전 커스텀클럼에서 진행) →  공조장치 및 오디오 오디오 장치는 중간에 고장이 나서 무출 6CD에서 무출 1CD로 교체하여서 색이 예전 색입니다. (고장 나면 다 교체합니다.) 기어 LED 외부에서 볼 때, 작업 후 상태 2011. 5. 22 우측 후미등 LED 3개 고장으로 직접 부품 사서 통째로 교환 2011. 7. 13 우측 후진등 교체 2011. 7. 29 삼성 엠피온 SET-440 하이패스 구매 설치, GPS 모듈 포함 (속도, 시계, GPS 기반 알림)실제 장착 상태는 운적석 좌측이며 좌측에 하이패스 카드를 넣고 사용하면 됨 2011. 11. 22 폴딩키 만듬, 폴딩키의 쇠 부분을 원래 키에 맞추어 깍음. 마스터키의 이모빌라어저를 폴딩키에 삽입. 2012. 5. 14 아이패스 ITB-100HD 32GB GPS 블랙박스 설치, 아직 잘 동작함. 경정비 2013. 5. 21 부천 미카에서 2015년까지 통장을 통해서 관리 133,000km에 타이밍벨트, 백금플러그, 엔진코일, 어퍼암, 엔드볼, 휠얼라인먼트, 어뎁션, 엔진미미 등이때 정비사님 의견은 타이밍벨트 상태가 아직 짱짱해서 갈 시기는 맞는데 15만에 갈라는걸 그냥 교체 부탁함. 차량 떨림(진동), 소음(찌거덩) 잡기 위해서 모조리 다 갈아달라고 함. (차를 몇 일간 맡김) 2013. 11. 22 엔진오일 교환  2014. 11. 8 엔진오일, 오토미션오일 등 점검 후 필요한거 교환 2015. 12. 2 158,000km 주행 상태, 판매하려다가 취소하고 더 타기로 함. (중고매매 단지에서 450만원 이야기 해 주었다가 안 팔기로 함) 2017. 2. 1 이사를 앞 두고 차량 정비. 필요한거 다 해 달라고 함. 2018. 2. 4 기본 경정비 집에서 미카가 너무 멀어서 인근으로 옮김. 2019. 6. 12 기본 경정비 운전석 안개등은 교체하면 매번 1달 내로 전구가 터지기 때문에 이후로 교체 작업 안 함. 2020. 9. 25 도어락 모터 노후로 동작이 원활하지 않아서 3개 교체 2020. 10. 5 스타트 어셈블러 교체. TG에서 노후화 되면 날씨가 추울 때, 12v 이하로 내려갈 때 시동이 잘 안 걸리는 증상이 나타남 배터리를 신품으로 교체해도 시동이 걸리지 않을 경우, 이 문제일 확률이 높으므로 상담후 교체 가끔 시동 안 걸려서 비상연락으로 휴대용 배터리로 안 걸릴때, 점퍼로 직접 직접 차에 연결해서 걸면 걸림. 가끔 스타트 어셈블러를 강하게 충격을 주면 시동이 걸리나 숨어 있어서 충격주기 쉽지 않음. 2022년 가을쯤 운전석 손잡이 너덜거려서 교환했습니다. 앗세이에서 도색하진 않았는데 자세히 보면 도색 안한게 보입니다. 2023년 2월 현재 차 상태 요약 현역입니다. 고속 주행시 160은 안정적으로 나갑니다. 밟으면 평지 180, 내리막 190은 넘을텐데, 이렇게 탈 일이 없거나 잡혀 갈 겁니다. 매우 조용하고요.. 떨림, 잡소리 없습니다. 있으면 이미 교체되었을 겁니다. 타이어는 영수증이 안 보이는데, 금호타이어에서 4짝 모두 교체했습니다. 2021년말 같은데, 타이어 80% 이상 남아 있습니다. 외관 상태는 안 좋습니다. 위 사진 보시면 아실 수 있지만, 실제로 보면 좀 더 세월의 흔적(부식, 돌빵), 스크레치(주차 긁힘, 이놈들을 못 잡음) 등이 있습니다. 운전석 안개등은 교체하면 1개월 내로 고장납니다. 몇 번 해보다가 포기했습니다. 안 씁니다. 운전석 손잡이가 교체되어 도색을 하지 않아서 약간 티가 납니다. 06년식이면 고장날 수 있는데, 교체되어 있는게 차라리 더 좋습니다. 추천! 외관 신경 안 쓰고, 관리 안된 차 사셨다가 부품으로 골머리 안 썩히시고 싶은 분들이 사시기를 바랍니다.판금이나 도색해서 타실 수도 있을텐데.. 저라면 그런데 돈 안 쓸 것 같습니다. 2023. 2. 21 이 날짜까지 안 팔리면 부품 각개 처리하거나, 폐차하려고 합니다. #### 34평 주방 인테리어 리모델링 - 1/4 계획 단계 셀인 허리 보호 차원에서 주방 인테리어 리모델링 도전! 34평 주방 인테리어 리모델링 – 1/4 계획 단계 (이번 글) 34평 주방 인테리어 리모델링 – 2/4 사전 준비 및 철거 34평 주방 인테리어 리모델링 – 3/4 싱크대 설치 34평 주방 인테리어 리모델링 – 4/4 조명 설치 주방 인테리어 리모델링 배경 주방 인테리어 리모델링 경험을 공유하는 블로그입니다. 싱크대 높이가 85cm인데, 낮아서 허리가 아픕니다.그래서 92cm로 싱크대를 올리고, 식기세척기를 단올림으로 올리고, 로봇청소기 집을 만들어 주는 것이 목표입니다.더불어 냉장고장을 추가하여 부족한 수납을 극대화하고 홈바장도 만듭니다. 이 과정은 2025년 8월 7일부터 이틀간 이어진 주방 리모델링 공사를 포함하고 있습니다.약 한 달 동안 주방 인테리어 관련하여 인테리어쇼, 로그디자인, 셀인 등 다양한 컨텐츠를 공부하여 적용했습니다. 주방 인테리어 구조 비교 이 아파트는 경기도에서 임대 분양 받은 34평 아파트입니다. 주방의 가로폭 길이가 3.48m 이며, 세로가 더 깁니다. 대면형 주방은 4m는 될 때, 좀 더 멋지게 나올 수 있는 것 같습니다. 그 이하는 욕심을 내면 만들 수는 있는데 동선이 어려운것 같습니다. 특히 세로로 긴 주방이 더 불리한 것 같습니다. 아마 가로 비율이 더 길었다면 도전했을 것 같습니다. 시공 전에 실측을 통해 최대한 비슷하게 구성할 수 있도록 고민했습니다. 시공 전 85cm 싱크대 하부장 높이를 92cm로 키우는게 핵심입니다. 대형 커피머신, 가스렌지, 가스배관, 전자렌지장은 제거 예정입니다. 시공 후 많은 고민을 한 끝에 식탁을 놓을 수도 있지만, 뺄 수도 있는 11자 형의 주방을 만들기로 결정하였습니다. 싱크대 구조는 'ㄷ' 에서 'ㄱ' 으로 변경되며, 냉장고장과 홈바장이 들어오는 11자 형태가 됩니다. 결과부터 보면 아래처럼 구성되었습니다. 테이블을 놓고 쓸 수도 있는 구조입니다. 테이블은 거실로 옮겨졌고, 인덕션, 후드, 조명이 모두 완료 되기 전입니다. 주방에 놓여 있던 테이블은 현재 거실 창문쪽으로 이동해 있습니다. 위와 같이 거실 간접 조명도 창쪽으로 만들었습니다. 실측 도면 작성 시공에 앞서 Before / After 를 길이 측정해서 대략 그려봅니다. 사용한 툴은 PowerPoint 입니다. 이 파일은 아래에서 다운로드 가능합니다. 저는 가능한 모두 다 치수를 재고 사이지를 비슷하게 맞추려고 활용했습니다. 인테리어_0818다운로드 사이즈는 정확할 수 없지만 대략의 치수는 알아야 합니다. 그래서 전체 리얼 치수를 미리 측정하고, 대략의 치수를 정합니다. 인테리어 업체 현장 방문 나중에 인테리어 종사자 분이랑 협의 하면 이런 형태의 도면이 나오게 될 겁니다. 이 과정을 계획부터 시작하여 사전 준비 및 철거, 싱크대 설치, 조명 순으로 정리해서 올릴 예정입니다. 주방 인테리어 안 해도 그만이지만, 낮은 싱크대 하부장으로 인한 허리 통증이 크고, 인덕션도 안 들어가고, 식기세척기도 들어가지 않기에 이왕 하는거 제대로 다 적용해 볼 겁니다.싱크대 하부장 92cm, 식기세척기 단올림, 로봇청소기 급배수, 인덕션, 홈바장, 냉장고장 그럼 시작해볼께요. 이번 주방 리모델링은 닥터씽크 업체에서 상담받아 진행했습니다.내돈내산이며, 마지막 편에 가격 공개합니다. #### 34평 주방 인테리어 리모델링 – 2/4 사전 준비 및 철거 허리 보호 차원에서 주방 인테리어 리모델링 도전! 34평 주방 인테리어 리모델링 – 1/4 계획 단계 34평 주방 인테리어 리모델링 – 2/4 사전 준비 및 철거 (이번 글) 34평 주방 인테리어 리모델링 – 3/4 싱크대 설치 34평 주방 인테리어 리모델링 – 4/4 조명 설치 주방 인테리어 리모델링을 위한 사전 준비 8월 7일(목) 철거를 하고 8일(금) 시공을 합니다. 철거 전 작업 리스트와 내역 가스레인지 제거(수요일) 및 가스관 제거(철거 당일) 자동소화장치 분해 (이후 아파트 시스템 연계 재사용을 위함) 정수기 분해 식탁등 제거 자투리 장판 확보 작업 바닥 보양 엘레베이터 보양 싱크대/홈바장/거실 간접 조명 기구 구매 (COB LED 플렉서블, 히든 센서, 디밍 SMPS, T5 LED) 냉장고 패널 교체 (메탈검정 -> 새틴화이트 / 새틴스카이블루) 위 작업 목록 순서에 따라 하나씩 준비합니다. 바닥 보양재는 골판지를 활용했습니다. 시흥산업용재유통센터에서 1롤을 2.7만원에 구매했습니다. 주방, 복도, 엘베 바닥에 깔았습니다. 파란 테이프는 쿠팡에서 샀고요. 첫째 날은 심하지 않는데, 둘째 날이 먼지가 엄청 나므로 집 안에 비닐 보양도 필요합니다. 모두 돈 주고 맡기면 되지만 돈이 만만치 않아요. 사전에 이웃 주민분들께도 고지해야 합니다. 10L 쓰레기봉투 한 묶음이랑 스타벅스 카페라떼 음료 2개씩 포장해서 인근에 전달 드렸습니다. 엘레베이터 보양은 관리사무소 문의 후 진행했습니다. 좌석과 벨크로 형태로 붙이는게 있는데 이틀은 11만원이라고 해서 엘베 사용료 및 보양재 활용을 했습니다. 입주민 분들 불편할까봐 첫 날 새벽에 설치했습니다. 냉장고는 원래 검정색인데, 냉장고장 색에 맞추기로 했습니다. 비스포크 냉장고 모델에 따라 호환 제품이 다른데, 최근 단종하면서 가격이 내려갔습니다. 당근 마켓을 통해 상부 패널(새틴화이트) 4만원, 하부 패널(새틴스카이블루) 1만원에 구매했습니다. 하부 패널은 색을 잘못 산건데, 그냥 사용하기로 해서 흰색 하늘색이 될 예정입니다. 유리 흡착하는걸 4천원에 쿠팡에서 사면 혼자서도 탈부착이 어렵지 않습니다. T5 LED는 시흥산업용재유통센터의 시온전기에서 사왔습니다. COB LED 플레서블 줄 조명의 경우 히트 조명에서 구매했고, 르그랑 콘센트를 사고 홈바장용 융 스위치 콘센트도 모듈로 구매했습니다. 원래 USB 충전 또는 무선 충전 되는걸 바닥에 넣으려다가, 바닥면적을 그만큼 못 쓰거나 굳이 거기서 충전을 안 할듯 해서 매립되는건 사용하지 않았습니다. 철거 싱크대 8월 7일(목) 철거를 시작합니다. 상부장을 먼저 탈거합니다. 옆에 있던 책장도 뜯어 냅니다. 위에서 부터 철거하고 다음은 싱크대 상판을 철거합니다. 철거 시간은 9시부터 시작해서 12시쯤 끝난다고 생각하면 됩니다. 가스관 그리고 가스관을 철거합니다. 만약 가스관을 다시 살려서 쓸 생각이 있다면 철거 하지 않는게 좋습니다.삼천리에서 철거를 하고 나머지 철거 신고도 병행해서 합니다. 직접 제거할 수 있지만 불법이며 벌금 물 수 있다고 합니다. 8월 19일(화)에 담당자가 와서 가스 막은거 확인하고 점검 후 철거한 것을 신고했습니다. 노란색은 쇠관이며 밖으로 연결되어 있습니다. 글라인더로 짤라 내는 선에서 마무리 합니다.후드 배관이 싱크대 상부장을 우측 상단으로 지나서 연결될 수 있도록 연결관이 필요합니다. 이건 인근 철물에서 살 수 있습니다. 약 3~4m 짜리 짜투리를 구해왔습니다. 원래 그냥 통째로 뽑아 버리고 싶었는데, 천장을 열고 작업해야 해서 일이 커집니다. 자른 다음 옆으로 돌려놓았습니다. 베란다에 지나는 철관을 제거할 겁니다. 윗 부분만 제거해서 막을 것이고요. 계량기는 그대로 둡니다. 자동이체 역시 중지 시켜 줍니다. 이후 필요시 다시 연결 가능합니다. 싱크대 철거, 타일 설치, 가스관 철거 세 분이 모두 각자의 작업을 하고 있습니다. 가장 혼잡한 시간대입니다. 타일 작업 타일 선택 철거를 끝낸 후 타일을 바꾸기 위해서 덧방을 합니다. 원래 약속하신 분이 무릎 수술로 인해 다른 분이 전날 연락왔습니다. 타일이 무게가 있는데, 이를 들어서 척척 발라야 하다 보니 무릎을 많이 다치시는 듯 합니다. 그래서 갑자기 타일도 변경했습니다. 원래 용타일 연그레이로 계획중이었다가 정일요업의 JW36531 로 변경했습니다. 이게 무늬가 있어서 호불호가 갈리고, 다른 일반적인 모델 대비 수요가 많지는 않은 모델이다 보니 단종될 수 있을 듯 합니다. 기초 작업 타일을 시공하기 앞서 길이를 측정하고 깔끔하게 정리하는 시간을 가집니다. 높이 92cm 하부장이 들어오고 상부장의 높이를 고려하여 300 x 600 각 타일을 세로 3장씩 붙입니다.기존 타일의 경우 LH가 최대한 아낄려고 자르고 잘라서 시공한 것으로 보입니다. 콘센트의 경우 미리 분리해서 노출을 시켜 두고요. 해당 콘센트는 싱크장이 들어온 이후 교체할 예정입니다. 타일 덧방 덧방을 하기 위해서 먼저 접착할 수 있도록 세팅합니다. 그리고 타일을 붙여 줍니다.위 아래로 더 여유가 있습니다. 콘센트 구멍이 있는 부분은 미리 재단을 하면서 진행합니다. 가장 좌측은 키큰장이 들어올 예정이기에 조금만 추가해서 붙입니다. 설계도면을 보면서 고려하여 붙입니다. 메지 작업 타일을 모두 붙이면 이음새 부분을 백시멘트를 이용해서 메지를 채워 줍니다. 모든 메지를 채우고 나면 간단하게 한번 닦아 줍니다. 싱크대 모두 완성 되면 그때 다시 청소할 예정입니다. 여기까지가 8월 7일(목) 첫 날 일정입니다. 벽 타일 붙이는 작업은 1시간 20분 정도 걸렸습니다. 메지의 경우 싱크대 상부장 하부장 설치시 떨어지거나 살짝 흠이 생기거나 구멍이 생길 수 있어서 추후 공사 완료 후 한 번 더 꼼꼼히 보고 처리해 주면 됩니다. 백시멘트 가루를 종이컵에 넣고, 종이컵에 물 몇 방울 떨어뜨려 잘 반죽해서 스윽 바르고 키친타월로 닦아주면 됩니다. 철거 주의사항 철거할 때, 싱크볼 배관의 일부 자재는 보관해야 합니다. 싱크볼과 하수구에 연결되어 있는 Y 관이랑 하수구 연결 캡이 있는데, 이걸 원래 가져가면 안되는데 철거하시는 분이 다 가져가셨어요. 그리고 바로 폐기까지 다 해버렸습니다. 그래서 나중에 이게 없어서 식기세척기나 다른 걸 연결하기 어려웠습니다. 철물점 10개 넘게 가보고 시흥자재센터 갔는데도 못 구했습니다. 특히 싱크볼 하수배관과 식기세척기 연결하는 Y관은 일반적으로 안 팔고 식기세척기 업체에 문의하고 재설치를 해야 구매가 가능합니다. 또는 쿠팡 같은데서 구매는 가능하나 오프라인으로 당일 구하기는 정말 어려웠습니다. 그리고 하수구 관에 딱 맞는 자재가 있음면 다행인데, 이것도 구하지 못해서 고생하다가 관리사무소 통해서 간신히 하나 구해서 연결했습니다. 가능하면 꼭 하수구 같은 자재는 딸려 나가지 않도록 잘 확인해야 합니다. 타일은 깨질 때 여유분이 있으면 좋기에 1장을 백업해 뒀습니다. #### 34평 주방 인테리어 리모델링 – 3/4 싱크대 설치 식기세척기 단올림 허리 보호 차원에서 주방 인테리어 리모델링 도전! 34평 주방 인테리어 리모델링 – 1/4 계획 단계 34평 주방 인테리어 리모델링 – 2/4 사전 준비 및 철거 34평 주방 인테리어 리모델링 – 3/4 싱크대 설치 (이번 글) 34평 주방 인테리어 리모델링 – 4/4 조명 설치 싱크대 시공 8월 8일(금)에 싱크대를 시공합니다. 이 집은 거주중이고, 가전을 모두 거실로 옮겨 놓은 상황에서 진행하기 때문에 작업 공간이 협소합니다. 그래서 생각했던 것 보다 시간이 더 걸릴 수 있습니다. 오전 9시에 시작한 작업은 오후 8시 30분에야 끝났습니다. 한참 더운 날씨 속에서 고생 많으셨고, 작업자 분들은 정말 최선을 다하셨습니다. 약간의 트러블이 있었지만 결국 다 잘 마무리 되었습니다. 자재 이동 자재들이 들어옵니다. 싱크대의 키큰장도 있고 냉장고장도 있고 재료 공구도 있기 때문에 복도, 계단에 걸쳐 작업물들을 쌓아 놓고 왔다갔다 작업하시느라 고생이 더 많았습니다. 이런 자재가 엄청 많이 필요합니다. 한솔 콘크리트화이트 보드를 문으로 사용했습니다. 조명에 따라 색이 달라지는데 살짝 웜톤의 분홍 빛이 섞여 있는 화이트 톤입니다. 원래 그냥 흰색 싱크대를 썼었는데, 이 제품이 코팅이나 발수 색감 모두 더 좋았습니다. 차별화를 위해서 이것을 선택했고, 원래 시공하는 가격에서 20%가 더 올라갑니다. 사진상으로는 상판의 흰색 대비 약간 분홍빛 톤이라는걸 알 수 있습니다. 싱크볼은 백조 깜뽀르떼 860 엠보 입니다. 물이 잘 튀지 않고 조용한 특징이 있습니다. 싱크대 상판이 오면 오후에 결합할 예정입니다. 일단 당장 작업하는 이외의 것들은 모두 복도에 쌓아두었습니다. 싱크대 기초 공사 상부장 버팀목을 보강합니다. 싱크대를 설치하기 전 미리 멀티탭을 넘겨 놓아야 합니다. 사전에 하지 않으면 나중에 구멍을 뚫어도 쉽지 않습니다. 후드로 가는 멀티탭이고요. 싱크대 상부장의 간접조명을 위한 멀티탭입니다. 안쪽에 가려질 것이라 기존 사용하던 멀티탭을 재활용합니다. 싱크대 설치 상부장부터 시공합니다. 무몰딩 시공인데, 기존 몰딩이 있기 때문에 그 높이만큼 띄워서 시공을 합니다. 특히 벽에 있는 4구 스위치는 냉장고장 옆면으로 설치할 것이기에 일단 빼 두었습니다. 반대편에서는 냉장고장이 병행으로 설치가 되고 있습니다. 두 분이서 각각 한면씩 맡아서 하시는데 쿵짝이 매우 좋으십니다. 오후 4시면 끝날 것 같다고 쉽게 시작하셨으나 4시간이 더 걸렸죠. 홈바장 하단은 슬라이딩장으로 물건 거치나 빼는걸 쉽게 할 겁니다. 식기세척기 단올림 작업 식기세척기를 단올림 시공합니다. 보통 철재 프레임 위에 올리는데 양쪽으로 나무가 있고 아래에 로봇청소기 장이 있기 때문에 지지할 수 있도록 고정할 겁니다. 아래처럼 시공하다가 나중에 앞단에 나무를 받침대로 올리는 작업을 하게 됩니다. 식기세척기 발이 4개가 있는데 그 지지 나무가 허공에 살짝 뜰 수 있는 구조가 될 수 있어 판을 올리게 됩니다. 일단 이게 상당히 무거운데, 몇 번을 내렸다 올렸다 하면서 정말 고생이 많으셨습니다. 뒷쪽으로 선을 뺄 수 있도록 키큰장쪽에 구멍을 내어 주어야 합니다. 식기세척기 선과 급수와 배수 라인은 다이렉트로 넘기고, 로봇청소기는 급수 배수만 넘기고, 콘센트를 미리 넣어서 전원 연결할 수 있도록 할 겁니다. 냉장고장에 홈바장까지 부지런히 설치가 되고 있습니다. 홈바장 우측으로는 주방 스위치를 연결하기 위해서 타공도 하면서 넣어줍니다. 아무래도 식기세척기가 불안함을 느끼게 됩니다. 왜냐하면 그냥 이대로 시공하면 문제가 발생할 수 있습니다. 그러다가 식기세척기를 내립니다. 바로 하단에 구멍이 있는데 여기 사이로 다리가 푹 빠질 수 있습니다. 그래서 다시 측정하고 나무판을 위로 하나 올린 후에 식기세척기를 올리기로 합니다. 그래서 하단의 로봇청소기 장을 나무판 두께만큼 다리를 잘라냅니다. 여유있게 측정해서 만들어서 문제는 없습니다. 싱크대 상판 인조대리석 가공 시간은 오후 5시가 되었고, 싱크대 상판 작업자분이 등장합니다. LX 지인 오로라 블랑 하이막스 상판입니다. 일반적인 인조대리석 상판보다는 윗급이나 같은 인조대리석입니다. 오염이나 뜨거운 것에 갈라질 수 있습니다. 성질을 알아서 크게 걱정하지 않습니다. 밖에서 가공을 해서 다시 안으로 가져와서 시공합니다. 싱크볼 수전 설치 싱크볼은 언더시공을 합니다. 상판 아래에 붙이는 방식입니다. 정확하게 위치를 측정하여 붙인 후에 다시 상판을 싱크대 하부장에 올리게 됩니다. 백조 깜뽀르떼 860 모델이고 엠보에 조용하라고 검은색으로 둘러져 있습니다. 수전을 설치해야 합니다. 수전은 루미노바 폭포수전 FLAT FL-2707 입니다. 물이 부드럽고, 과일 씻기 좋은 형태입니다. 토출구 물 모양은 2가지인데, 돌릴 때 정중앙이 되지 않을 때가 있어서 추천 드리지는 않습니다. 설치할 때, 아래 폭포수가 나오는 물이 싱크볼쪽으로 가도록 설치해야 떨어지는 물이 싱크대 상판으로 오지 않으므로 주의해서 설치하면 더 좋습니다. 설치하면 다음과 같습니다. 이쁜데 편한 느낌은 아닙니다. 그냥 T자형 수전 사세요. 싱크대 설치 마감 작업 싱크대 설치가 되면 문을 달아 주면 됩니다. 콘크리트 화이트로 문이 설치가 됩니다. 내부에 수납장도 넣어주고요. 식기세척기 잘 고정되어 있는지도 확인 합니다. 추가로 수전 옆에 정수기 설치할 수 있도록 구멍을 하나 추가로 만들었습니다. 후드를 달아야 하는데, 후드가 시킨 것과 다른 제품이 왔습니다. 하츠 허리케인 후드인데 화이트를 시켰는데 은색이 왔습니다. 색만 다른거 아니냐 생각할 수 있는데 이전 제품이 은색이라서 싫습니다. 차주 수요일로 5일 후 설치로 변경됩니다. 냉장고장도 완료되었습니다. 양쪽 모두 완료 되었어요. 식기 세척기는 이렇게 서서 허리 하나 굽히지 않고 물 안 흘리고 바로 활용할 수 있습니다. 단올림을 하는 이유죠. 5년 만에 정말 쓸만해 진듯 합니다. 뒤로 밀려나지 않기 위해서 식기세척기 문 열면 옆쪽에 나사 구멍이 있는데 양쪽을 나사로 고정했기 때문에 흔들림이 발생하지 않습니다. 인덕션 설치 인덕션은 틸만의 ITM-915DM 입니다. 저도 구매하기 전날까지 틸만이라는 브랜드를 몰랐습니다. 원래 LG 인덕션 제품을 구매했었는데, 기존 싱크대에 설치가 아예 안되어서 연기했었는데, 기다리는 동안 10만원 내려가고, 지금은 20만원 내려가 있더라고요. LGE 공홈에서 구매했는데, 시간이 지나서 온라인 구매 취소가 안되어 전화로 취소하고, 이왕 취소한거 다시 살까 하다가 급하지 않아서 알아 보니 틸만이라는게 있더군요. 이 제품도 미라듀어 글라스가 올라갑니다. 특이점은 국내 LG, 삼성과는 달리 3000W 급이 아니라 7000W 급입니다. 인덕션 처음 써보는데 괜찮은것 같습니다. 금방 적응하는것 같습니다. 싱크대 최종 완성 공사 끝난 차주에 조명 공사도 완료했고 비어 있었던 인덕션과 후드도 모두 도착했습니다. 냉장고장과 홈카페장도 완성되었고요. 김치냉장고 바꾸려고 일부러 사이즈도 삼성 비스포크, LG 오브제 뚱뚱이 김치 냉장고 모두 들어갈 수 있도록 사이즈를 확보했습니다.보통 9월과 10월에 신제품이 나오기 때문에(김장 전에 나오는듯) 현재 8월이라 기다리기로 했습니다. 삼성, LG, 딤채 3개 브랜드 최신 제품들을 마트에서 시연해본 결과 LG로 좁혀졌습니다.삼성은 삼성 비스포크 패널 교체 가능한 제품이 가장 이쁜데, 문 여닫을 때 뻑뻑한 느낌이 불편합니다. 3사 비교해 보니 유독 삼성만 심합니다.딤채는 안 좋은 소식이 계속 이어져서 제일 마음에 드는 김치냉장고임에도 선택하기가 어렵네요. 지금 제품도 양문형은 아니지만 419L 대용량 스탠드 제품으로 너무 잘 사용중입니다. 아마도 2달쯤 지나면 LG 양문형 스탠드 글라스 베이지 계열로 바꾸지 않을까 싶습니다. 조명 및 기타 설치 관련 글은 다음 편에 이어집니다. 번외 - 왜 대면형 주방이 아닌가? 보통 주방 인테리어를 생각하면 가장 먼저 생각할 수 있는게 바로 대면형 주방 입니다. 아일랜드 싱크대가 거실을 보게끔 설계되는거죠. 가장 참조할 수 있는게 유투브의 인테리어쇼(인쇼), 로그디자인이 있습니다. 100개 넘게 샘플을 보고 공부했습니다. 우리집 가로 길이가 4m가 안 되면 대면형 주방은 욕심인 것 같습니다. 차라리 집을 바꾸세요. 저도 이걸 하려고 정말 열심히 머리를 싸메고 공부 했습니다. 결론은 대면형 주방을 위해서는 어느 정도의 가로 길이 확보가 필수라는 점입니다. 최소 3.2m는 넘어야 하고(싱크볼만 있는 기준), 그러기 위해서는 최소 4m가 넘어야 합니다.근데 저희 주방은 가로가 3.48m 인 구조라서 동선 80cm 정도를 빼면 2.7m 정도이고 옆에 보일러 배관도 이전해야하고 일이 복잡합니다. 특히 인덕션까지 올려야 하면 조리대 공간이 너무 협소하게 됩니다. 그리고 인덕션으로 요리를 하면 언더후드에 음식할 때 사방에 튀는데 보통 일이 아닙니다.수전이랑 기둥형으로 식기세척기 단올림 들어가면 최선일 것 같습니다. 그래서 끝내 대면형 주방은 이번 집에서 포기하기로 합니다. 다음 집에서 하면 되죠. 이번 주방 인테리어는 다음 집을 위한 예행 연습이다라고 생각합니다. #### 34평 주방 인테리어 리모델링 – 4/4 조명 설치 초슬림 라인조명 허리 보호 차원에서 주방 인테리어 리모델링 도전! 34평 주방 인테리어 리모델링 – 1/4 계획 단계 34평 주방 인테리어 리모델링 – 2/4 사전 준비 및 철거 34평 주방 인테리어 리모델링 – 3/4 싱크대 설치 34평 주방 인테리어 리모델링 – 4/4 조명 설치 (이번 글) 조명 설치 조명은 총 4가지를 설치할 겁니다. 원래 조명이 주광색(백색) 계열이라서 따뜻한 느낌이 나도록 주방은 아이보리 톤을 사용합니다. 그외 추가 설치한 로봇청소기를 볼께요. 싱크대 상부장 하단 간접조명 - COB LED 플레서블 스트립 조명 3.3m 주백색(아이보리), 히든 센서, 디밍 SMPS 냉장고장 홈바장 - T5 LED 90cm 전구색 주방 식탁등 자리 조명 - 초슬림라인조명(COB LED 스트립 조명) 2.5m 주백색(아이보리), 다운라이트 3인치 주백색(아이보리) 거실 간접조명 - T5 LED 3.6m 주백색(아이보리) 로봇 청소기 급배수 시설 추가 싱크대 상부장 하단 간접 조명 상부장 간접 조명은 아래와 같은 느낌으로 시공합니다. 히트 조명에서 COB LED 플렉서블 스트립 조명과 히든센서, 디밍 SMPS를 구매합니다. 가격이 약 15만원 정도 하는 것 같습니다. 그래도 이걸 직접 싱크대 시공해 달라고 하면 50만원 추가금 발생하는거 대비 저렴합니다. 거기다가 추가로 유앤아이테크의 간접조명을 위한 졸대 같은걸 샀습니다. COB LED를 그냥 붙이면 떨어지거나 보기 안 좋거나 눈이 좀 더 부신데, 깔끔하게 매립한것 같은 효과를 누릴 수 있습니다. 깔끔하게 붙일 수 있습니다. 디밍이 되므로 깔끔하게 동작시킬 수 있습니다. 아래 영상은 일반적으로 COB LED를 스티커로 바로 붙인 경우입니다. 마감이 아쉽고 눈이 더 부신 느낌이 있습니다. 히든 센서의 비밀은 바로 상부장 패널 뒷단에 센서를 숨겨 놓는 것입니다. 어차피 중국 생산이라 시간 여유 있으면 알리에서 구매해도 될 것 같습니다. 인덕션도 이쁘게 보이네요. 냉장고장의 홈바장 T5 LED를 바로 붙였습니다. 포인트를 주려고 오크 색을 주고, 전구색을 입혔습니다. 제어와 콘센트 매립을 위해서 인채널에서 매립형 리온 콘센트 및 스위치 조합으로 구매했습니다. 뒷쪽에 미리 라인을 연결해 두었습니다. 카페장의 우측 상단 벽면으로 매립 설치했습니다. 상단에 T5 고정 클립 2개 설치하고 끼우면 끝입니다. 스위치는 팔 높이에 맞추었습니다. T5라서 고장나도 쉽게 교체가 가능합니다. 특징으로는 김치냉장고장 옆면에 만들어지는 조명 그림자입니다. 무드등으로도 사용하기 좋습니다. 설치 난이도가 낮아서 쉽지만, 처음 홈바장을 설치할 때, 반드시 이야기를 해서 선이랑 스위치 콘센트 매립해야 합니다. 나중에 구멍내고 설치하는건 어렵거나 깔끔하지 않습니다. 주방 식탁등 자리 조명 주방 식탁등은 고민이 있었습니다. 깔끔하게 하고 싶었습니다. 그래서 찾다가 발견한게 유앤아이테크의 초슬림 라인조명입니다. 집에서 차로 35분 거리에 있길래 전화하고 주문 넣고 냅다 달려 갔습니다. 처음에 설치 이야기를 듣는데 쉽지 않을 것 같았는데 해보기로 했습니다. 일단 필요한 것들을 사왔습니다. 옆에 크록스 매장 있어서 3켤레 사오기도 했습니다. 다운라이트 설치를 위한 구멍을 콤파스로 그린 다음 칼로 슥삭슥삭 동그랗게 자릅니다.LED 전선을 넣을 사각형 구멍을 만들어 줍니다. 가로 세로 2cm 정도로 역시 칼로 슥슥 만들어 주면 됩니다.그리고 이 사각 구멍으로 다운라이트 넣은 동그라미 구멍까지 COB LED 선을 던져 줍니다. 힘을 받으면 좋으니 굵은 전선에 묶어서 넘겼습니다.그리고 COB LED 전선을 SMPS랑 연결 한 후, SMPS랑 다운라이트 전원선을 기존 전원선에 연결한 후 동그라미 천장에 올렸줍니다.사진처럼 커넥터를 미리 사 두면 작업하기가 훨씬 수월합니다. 천장 석고보드는 칼로 구멍 잘라내면 되는데, 중간에 알루미늄 또는 철로 된 라인이 있을 지 모르기에 통통 두드려가면서 비어 있을 법한데로 구멍 뚫으면 됩니다. 초슬림 라인 조명의 경우 3개의 피스를 위한 구멍을 중간과 양 끝단에 드릴로 뚫어줍니다. 천장에 볼트를 고정할 수 있는 앙카를 넣어 줍니다.그리고 휘어지거나 틈이 벌어지지 않도록 양면 테이프랑 실리콘을 쏜 다음에 천장에 볼트로 마무리 합니다. 마지막으로 잘 붙어 있어주기를 바라는 마음으로 천장을 향해 밀어줍니다. 원래 설치하는 방법과는 조금 다른데 이렇게 해도 깔끔하게 붙습니다. 선을 천장에 넘겨서 받는게 어렵고 나머지는 그리 어렵지 않습니다. 초슬림으로 얇기 때문에 무몰딩에도 간섭이 없습니다. 테이블 조명 내리면 먼지 쌓이고 걸리적 거리고 식탁 위치 고정되기 때문에 이렇게 조명 설치하는 것도 좋은 것 같습니다. 천장 목공 작업이 필요 없어서 더 좋습니다. 거실 간접조명 거실 간접 조명은 원래 싱크대 상부장 간접 조명으로 쓰려던 T5 LED를 설치할 수 없는 조건이 되어 대신 설치했습니다. 주방 테이블도 거실로 이동했습니다. T5 LED를 고정 클립을 천장 벽면 쪽에 드라이버로 고정합니다. 그리고 T5 LED를 꽂아주면 됩니다. 5m가 넘는 8자 코드를 이용해서 IoT 스마트 플러그에 연결하면 무선으로 스위칭 할 수 있습니다. 기타 - 로봇청소기 급배수 시설 추가 급배수 시설을 추가했습니다. 이제 물통 채우고 비우고 안 해도 됩니다. 쓰던 모델은 드리미 W10 pro 입니다. 급배수 안되는줄 알았는데 키트가 있었네요. 배송에는 시간이 좀 걸립니다. 네이버에서 구매했고, 설치 메뉴얼 따라서 한번에 연결하고 잘 동작 됩니다. 정수기, 식기세척기, 로봇청소기 모두 직접 배관을 연결했습니다. 그래서 매일 하수구 쪽을 체크하고 있습니다. 한 달 정도는 습관성으로 체크할 것 같습니다. 무엇보다 이제 더 이상 물 안 비워줘도 되니 좋습니다. 더 이뻐 보입니다. 후기 모든 시공이 완료된지 1주일이 지났습니다. 매우 편리합니다. 싱크대 92cm 높이는 완벽합니다. 기존 85cm 대비 완벽히 편합니다. 170cm 이상의 키라면 싱크대 높이를 반드시 고려해 보세요. 허리가 편해 집니다. 식기세척기 단올림은 필수입니다. 두 번 다시 바닥에 붙박이처럼 넣는 식세기는 하지 않을 겁니다. 허리가 완전 편해 집니다. 깜뽀르테 싱크볼 좋습니다. 싱크대 상판이 더 크다면 860 이상 사이즈 모델도 고려해 볼 것 같습니다. 초슬림 라인 조명은 목공 작업 없는 천장에서 최고의 선택입니다. 다운라이트는 작업용 구멍 메우는데 유용합니다. 로봇청소기는 급배수 시설을 자동화 해야지 정말 쓸만합니다. 조명이 잘 되어야 분위기가 바뀝니다. 번외 - 싱크대 공사비 먼저 싱크대 공사비만 공개하면 900만원입니다. 닥터씽크에 싱크대 및 냉장고장 공사를 위해 철거, 시공을 포함한 금액입니다. 몇 가지 아쉬운 점이 존재하지만 결과물 보면 생각대로 나왔습니다. 비용은 더 저렴할 수도 있고 비쌀 수 있습니다. 구조나 선택에 따라 가격은 천차만별입니다. 일반 싱크장 대비 콘크리트 화이트로 바꾸는 순간 20% 금액이 증가합니다. 깜뽀르떼 싱크볼은 40만원, 수전, 후드는 포함되어 있고 싱크대 하드웨어는 헤펠레 제품이 들어갑니다. 싱크대 상판은 일반이 아닌 하이막스로 바꾸면서 100만원 추가되었습니다. 오로라블랑입니다. 만약 궁금하다면 LX 지인 매장에 가서 직접 눈으로 확인하는 것을 추천 드립니다. 보통 블룸(Blum)으로 하드웨어를 쓰는데 확실히 고급짐이 다릅니다. 가격이 다르겠지만, 여러 곳에 견적 받아서 비교해서 진행하면 좋을 듯 합니다. 인덕션이 170만원, 타일덧방 40만원, 엘베 사용료 및 보양비 포함 2일 11만원, 조명이 47만원(5+15+22), 가스 철거 20만원, 비스포크 패널 5만원, 보양 재료 5만원, 부자재(후드 배관, 멀티탭 등) 7만원, 주민 양해 음료 및 쓰레기 봉투 5만원 다음에는 셀프 인테리어보다는 모든 걸 한 번에 도움 받으려고 합니다. 디테일한 부분은 정확히 짚고요. 아쉬운 점 아쉬운 점은 다음에 구성할 때 참고할 수 있을 것들을 모아놓고 적용하기 위함임. 냉장고장 끝에 문처럼 슬라이딩 도어를 만들었다면 깔끔했을 것 눌러서 여는 형태의 푸쉬도어를 많이 썼는데 불편함. 다음에는 푸쉬도어를 최소화 할 예정. 이건 공부해서 꼼꼼하게 계획해서 가야함. 밥솥, 레인지 장의 도어도 사이드에 애매하게 스치는 공간이 있어서 정밀하게 잘 설계하면 더 좋았을 것 같음. 차라리 접어서 넣을 수 있는 구조가 도움이 될 것 같음. 인덕션 싱크 하부장에 열을 배출 할 수 있는 공간 설계가 안되어 있음. 그리고 바로 아래 수저 칼 서랍이 좀 더 아래에 놓여야 간섭이 줄고 열 배출도 좋을 것 같음. 전자레인지 장도 열 배출 공간을 고려해서 설계했다면 더 좋았을 것 같음. 깊이는 55cm 보다 60cm가 더 효과적일 것 같음. 자투리 장판을 교체하는 것을 직접 해 보았는데, 이건 절대 개인이 할 수 없는 영역이었음. 그냥 돈 더 주더라도 해당 구역 전체 장판을 바꾸는게 좋음 무몰딩은 기존 몰딩이 있거나 천장이 수평한 상태가 아닐 경우 도움이 안될 수 있으니 바닥, 천장 공사 하면서 무몰딩 하는게 더 이쁨. 아니면 그냥 무몰딩 안하는 게 나을 수 있음. 철거할 때, 하수구 원래 캡은 절대 잃어버리면 안됨. 찾으러 다니기도 힘듬. 싱크대 상부장 하단에 덧댐 나무 시공할 때에는 2T가 아니라 3에서 4까지 고려해서 잘라내서 붙이는게 좋음. 자르기 전에 뒤에 싱크장이 얼마나 벽과 벌어져 있는지 공간 계산이 필요함 한솔 스토리보드 같은 패널 선택시 웜톤도 좋지만 약간 그레이 가라앉는 톤도 괜찮을 것 같음. 주방 미드월 타일은 가능하면 300x600 보다 더 크면 메지가 줄어드니 600x600도 괜찮을 듯 하고, 무늬 들어가면 끊어짐 발생하므로 무늬 없는지 조각 대신 실제 설치 현장을 참고해서 선택하는걸 추천, 절대 사진으로는 느낌 모름. 수전 Flat은 이쁩니다. 물도 이쁘게 나옵니다. 과일 씻기도 좋습니다. 단, 토출구 물 변경할 때 손으로 돌리는건 어이가 없을 정도로 형편없는 설계입니다. 물이 옆으로 향할 때 비웃음이 납니다. 디테일이 떨어집니다. 다운라이트는 시공해 보니 많이 시공하지 않을 것 같습니다. 많이 시공하면 징그러울 것 같습니다. #### Atlassian Confluence 공동편집 글 쓰기 및 편집 기능 사용 방법 Atlassian Confluence 공동편집 글 쓰기 및 편집 기능 사용 방법 찾기를 해보겠습니다. 최근 Confluence 6.x로 업그레이드 하고, Reverse Proxy로 설정하신 분이라면 비슷한 문제를 겪으셨을지도 모르고, 그래서 찾아오셨을지도 모르겠습니다.   Atlassian Confluence 공동편집 글 쓰기 및 편집 기능 사용 방법 Confluence에서 6.x 버전으로 업그레이드를 할 경우 글 쓰기 또는 편집을 할 때 에러가 발생할 수 있습니다. 6.x 버전 업그레이드에 추가되는 기능 중에, 공동편집(collaborative editing) 기능에서 8091 포트를 추가로 사용합니다. 그래서 Troubleshooting Collaborative Editing 이란 제목으로 관련 이슈 해결 방법이 나오기도 합니다. 그중에서도 Reverse-proxy를 사용하는 경우, 아래와 같은 방법으로 해결해야 합니다. Apache HTTP Server 2.4 이상 버전을 사용중일 때, Reverse-proxy 설정하는 방법이 잘 소개되어져 있습니다. 그럼 Reverse-proxy가 무엇인가? Reverse-proxy는 위의 그림과 같이 이해할 수 있는데, Proxy 어원 자체에 대리라는 뜻을 가지고 있습니다. 중간에서 대리 역할을 하는 겁니다. 지금 Confluence를 예로 들자면, wiki.studydev.com 으로 들어온 요청을 apache의 vhost 설정을 이용하여 톰캣에서 8090포트로 운영되고 있는 Confluence 서비스에 연결시키는 일입니다. 예를 들어 도메인에 의해서 라우팅이 잘 되어서 목적지 서버에 도착하면, 실제로 운영되고 있는 서비스에 접근하기 위해서 내부에 proxy 설정 작업을 하는 겁니다. Apache HTTP의 경우 vhost 설정을 통하여 특정 도메인으로 접근할 때, 내부에 운영되고 있는 서비스포트로 proxy 설정을 할 수 있습니다. Reverse-proxy 설정의 예 현재 studydev.com 서버는 Apache HTTP 2.4 웹서버가 구동중입니다. 그리고, 같은 서버에 JIRA(8080), Confluence(8090), Bitbucket(7990)이 Tomcat으로 구동되고 있습니다. 이런 다른 서비스들 역시 HTTP 포로토콜로 접근이 가능하지만, 포트만 80이 아닌 다른 포트로 서비스 되고 있는 겁니다. 만약 외부에서 내부로 접근하는 포트에 대해서 보안상의 특별한 조치를 하지 않았다면, http://IP_ADDRESS:8080 과 같은 구조로 직접적인 접근이 가능합니다. 하지만, 이렇게 사용하면 뭔가 멋이 없습니다. 예를 들어서 해당 사이트처럼 도메인 주소가 studydev.com 인데, JIRA를 사용하기 위해서 멋지게 쓸만한 방법이 있다면, 그건 바로 서브 도메인으로 접근하는 겁니다. jira.studydev.com 이라는 서브 도메인으로 접근해서 JIRA를 사용하면 꿀이겠네요. 다른 서비스 역시 마찬가지고요. 매번 모든 포트를 외울 수는 없겠지만, 서브 도메인이라면 쉽게 외워서 사용할 수 있으니까요. 그럼 왜 문제가 발생한건가? 원래는 잘 동작했던 겁니다. 하지만 Confluence 6.x를 설치하면서 새로운 서비스 포트가 하나 필요하게 되었습니다. 그것은 바로 8091 포트입니다. 공동편집 기능이 다자간에 동시에 작업을 하는 것이기 때문에 Websocket을 열어서 통신을 하나 봅니다. 특히 이 공동 작업을 하는 것은 Synchrony라 부르는데 이 녀석 때문에 설정이 안되어 있을 경우, 에디트 모드 진입 자체가 안되게 되는 겁니다. 참고로 Synchrony는 임의의 데이터 모델을 실시간으로 동기화 할 수 있는 서비스입니다. HTML WYSIWYG 편집기에 대한 특별 동기화를 지원합니다. 결국 위 작업을 하기 위해서 저는 아래와 같이 세팅을 했습니다. <VirtualHost *:443> ServerName wiki.studydev.com LoadModule proxy_module /usr/lib64/httpd/modules/mod_proxy.so LoadModule proxy_http_module /usr/lib64/httpd/modules/mod_proxy_http.so LoadModule proxy_wstunnel_module /usr/lib64/httpd/modules/mod_proxy_wstunnel.so LoadModule rewrite_module /usr/lib64/httpd/modules/mod_rewrite.so ProxyRequests Off ProxyVia Block ProxyPreserveHost On RewriteEngine On RewriteCond %{REQUEST_URI} !^/synchrony RewriteRule ^/(.*) http://wiki.studydev.com:8090/$1 [P] <Proxy *> Require all granted </Proxy> ProxyPass /synchrony http://wiki.studydev.com:8091/synchrony <Location /synchrony> Require all granted RewriteEngine on RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC] RewriteCond %{HTTP:CONNECTION} Upgrade$ [NC] RewriteRule .* ws://wiki.studydev.com:8091%{REQUEST_URI} [P] </Location> ProxyPass / http://localhost:8090/ ProxyPassReverse / http://localhost:8090/ <Location /> Require all granted Header always unset X-Frame-Options # for X-Frame-Options Deny error </Location> # 기타 SSL 설정은 아래 있으나 생략 </VirtualHost> 이런식으로 8091 포트에 대해서 설정이 완료되면 문제없이 다시 사용이 가능합니다.   요약 Atlassian Confluence 공동편집 글 쓰기 및 편집 기능 사용 방법 찾기 전에 최근 SSL을 올리면서 문제가 발생한 건줄 알았습니다. 그래서 처음에는 문제를 잘못 접근해서 해결 방법을 쉽게 찾지 못했죠. 이런 문제에 대해서는 페이스북에 있는 아틀라시안 유저 그룹에서 해결을 할 수 있으니 조언을 구하는 것도 좋은 방법입니다. 해당 문제는 내용 요약해서 댓글로 남겨 두었습니다. 많은 사람들이 JIRA나 Confluence를 쉽고 잘 쓰는 문화가 잘 정착되길 바라면서 글 남깁니다. #### Atlassian JIRA, Confluence, BitBucket 버전 업데이트 Jira, Confluence, BitBucket 업데이트 했습니다. JIRA는 7.9.0, Confluence는 6.8.1, BitBucket은 5.9.1 입니다. 이번 업데이트에서 이슈가 발생한 부분은 2개 입니다. 첫 번째는 JIRA 입니다. 업데이트 이후 라이센스 에러 메시지가 출력되면서 접속할 수 없었습니다. 라이센스 이슈는 직접 DB에 들어가서 다르게 표기되어져 있던 라이센스를 기존 라이센스 값으로 변경하였습니다. 에러가 나지만 한번 무시하고 난 후 정상 진입 됩니다. 두 번째는 Bitbucket 입니다. 어느 순간부터 JIRA에서 커넥션이 끊어지는 문제가 발생했습니다. 그냥 포기하고 쓸까 하다가, Vue.js 스터디 할 겸 다시 살렸습니다. 일단, JIRA와 Confluence는 server.xml 파일에서 443으로 통신되도록 리버스 프락시 설정까지 다 되어 있습니다. 다만, BitBucket은 설치 디렉토리 말고 /var/ 디렉토리 하단에 애플리케이션 폴더에 server.xml 파일 설정이 가능합니다. 설정하고 나니 정상적으로 JIRA와 BitBucket이 상호 연동이 되는게 확인 됩니다. 버전 업데이트 이후 잘 되네요. 일단 컨플루언스는 이뻐졌네요. #### Avantree Saturn 아반트리 새턴 구매 Avantree Saturn 아반트리 새턴 구매 햇습니다. 자동차에서 이 녀석을 이용해서 없던 블루투스 기능을 만들고, 스피커에서 없던 블루트스 기능을 만들어서 사용하고자 합니다.   Avantree Saturn 아반트리 새턴 구매   노병은 죽지 않는다. 30-pin Dock에 Bluetooth 기능 업그레이드 나는 적당한 앱등이다. 국내에 iPhone 3GS가 출시되었을 때, 바로 아이폰을 구매했다. 자기만족이라는 미명 아래 해외직구를 통하여 당시 아르헨티나에서 Vaja 케이스를 지르고, 미국에서 Focal XS 2.1이라는 Dock Speaker를 모셨다. 이후에도 끊임 없이 Level up을 도모했다. iPad2 32G Wifi로 태블릿에 입문하고, iPad4 레티나 128G LTE 까지 손에 넣었다.   하지만 욕심을 꾀할수록 Dock Speaker는 점점 바보 멍청이가 되어갔다. 그것은 30-pin Dock이 가진 확장성의 쓸쓸함과 아이패드도 넣을 수 없는 구조 때문이었다. 뭔가 방법이 필요했다. 노래를 듣고 싶다. 잘 듣고 싶다. 편하게 듣고 싶다. 무엇을 택할까? Bluetooth 확장 여러가지 방법을 모색해 봤다. 가장 끌리는 대안은 Bose SoundMini 스피커를 사는 것이다. 이 녀석은 Bluetooth 휴대 가능한 스피커 중에 단연 으뜸이다. 원래부터 스피커에 관심이 많기 때문에 이래 저래 들어보고 다녔지만, 이 녀석이 가진 사운드는 사기 수준이다. 그만큼 좋았다. 사고 싶었다. 하지만 난 그 사이 결혼을 했다. 즉, 이건 실현되기 어려운 그림의 떡 같은 일이 되었다. 물론 맘 먹으면 당장도 살 수 있지만 대출금에 현기증이 난다. 그렇다면 대안을 찾아야 한다. 그러던 중 이 녀석(Avantree Saturn)을 만났다. 이미 1년 전부터 찾아 보던 제품이라서 알고 있었다. 하지만 굳이 해외 직구를 하고 싶지는 않았다. 그 사이 이 녀석은 정식 출시가 되었다. 그리고, 어찌된 영문인지 티몬에 제품이 저렴한(?) 가격에 올라왔다. 마침 적립금 1만원을 앞세워서 질렀다. 3.4만원에 배송미 무료... 미국에 살아도 이걸 이 가격에 살 수는 없다. 스피커는 이 녀석을 통해서 Bluetooth로 대동단결해 보자. 디자인 ★★★★☆ 생각보다 훨씬 작다. 동그랗다. 귀엽다. 충전이 되고 가지고 다니면서 쓸 수도 있다. 설명서에 헤드폰 아래 이걸 직결해서 귀걸이처럼 쓰는 완전 노답 그림이 있는데... 그건 무시하기로 한다. 전원버튼 1개, LED, TX/RX 선택 버튼. 마이크로 5pin 충전단자, 이어폰/인풋 겸용 3.5mm 이렇게 단자를 가지고 있다. 피아노 블랙같은 외관 마감에 유선형 디자인이 잘 빠졌다. 용도 ★★★★★ 최고다. 무선의 자유로움. 그냥 이어폰이 무선 이어폰이 된다. 그냥 스피커가 블루투스 스피커가 된다. TV 소리를 블루투스로 보내 준다. 이런 기기가 단돈 4만원대다. 여기서 만족 못하는건 욕심꾸러기 같은 처사다. 편의성 ★★★★ 설명서 따위는 원래 보지 않는다. 이걸 보는 순간 IT人으로서의 왠지 패배한 듯한 느낌을 지울 수 없기 때문이다. 그리고 블루투스 장비라면, 페어링이 기본이고, 페어링 모드는 보통 꾸욱~ 누른다는건 말하지 않아도 당연히 공유되는 보편서을 지닌 UX의 하나이다. 전원버튼을 꾸욱 누르고 있으니 역시나 페어링 모드로 진입한다. 페어링 시켜주고 나면 자동으로 연결된다. 노래 들을 때는 전원 버튼이 재생/멈춤 기능을 제공한다. 직관적이다. 음질 ★★☆ 기대는 사실 안 했다. Avantree Saturn은 편의를 목적으로 쓰는 4만원대의 제품이다. 여기다가 음질까지 기대하는건 반칙이다. 그리고 결과도 그렇다. Dock 스피커로 먼저 테스트 해 보았다. 스피커는 Focal XS 2.1이다. 이 스피커 소리가 꽤 좋은 PC 스피커다. 여기에 아이패드를 직접 케이블 연결해서 스피커 소리를 들어보고, 블루투스로 스피커에 연결하여 들어보았다. 차이가 여실히 드러난다. 출력이 낮은거야 그렇다 치더라도, 고음, 중음, 저음 모두 직결해서 들을 때보다 확실히 떨어진다. Bluetooth이니 당연히 그 정도는 감안해야겠지. 이번에는 이어폰을 연결해 보았다. 스피커보다는 나았다. 우선 그냥 일반 이어폰이 무선 이어폰이 되는 그런 편의가 붙는거다. 이모틱리서치, 오디오테크니카, 젠하이저, 필립스 등등 눈에 보이는건 하나씩 해 봤는데, 다시 말하지만 편의를 위해 쓰는 장비다. 애초에 유선 연결한 소리를 듣지 않고 바로 bluetooth 연결해서 쓰면 쓸만하다. 아마 내가 쓰는 장비중에 apt-x 출력을 지원하는 장비가 없다 보니 음질이 많이 떨어지는걸 느끼는 것 같다. apt-x 출력이 지원되는 장비가 있으면 훨씬 나을거라는 생각이 든다. 음질이 나빠지는 건 이 장비 자체라기 보다는 bluetooth 기술 자체의 문제가 아닐까 싶다. 가격 ★★★★ 최저 가격을 기준으로 보면, 미국 $38, 국내 5.3만원이다. 소셜과 같이 싸게 나올때 4.4만원인데, 이 가격이면 국내 구매해도 괜찮은듯한 가격인듯 하다. 요즘 이러한 기기들이 많이 쏟아져 나오고 있고 3~4만원대에 가격 형성되고 있는 것 같다. 총평 ★★★★ Avantree Saturn (아반트리 새턴)은 저렴하게 구형 오디오 장비를 무선 연결시켜주는 마법을 부린다. 전원이 연결된 상태에서도 사용 가능하고, 충전해서 휴대용으로도 사용 가능하고, RX/TX 기능 모두 된다. 여기에 apt-x까지 지원되니 금상첨화다. bluetooth 제품에서 음질을 논하는 것 자체가 말이 안되지만, 편안함이 모든걸 무마시켜줄만하다. 음질을 좀 더 고려한다면 Wifi로 스트리밍 되는 기기를 알아보는게 좋을 것 같다. 그래도 결론적으로 이 제품 잘 산 것 같다. 결국 Focal XS 2.1은 Avantree Saturn 아반트리 새턴 구매 덕분에 다시 한번 새 생명을 부여 받은 느낌입니다.   #### AWS ROUTE53와 EC2에 vhost로 서브 도메인 설정 방법 AWS ROUTE53와 EC2에 vhost로 서브 도메인 설정 방법 에 대해서 알아봅시다. 하나의 EC2 인스턴스에 다양한 서브 도메인을 파생시켜서 별도의 사이트처럼 설정하는 방법입니다.   AWS ROUTE53와 EC2에 vhost로 서브 도메인 설정 방법 1. 도메인 구매 우선 ROUTE53에서 도메인을 구매하여야 합니다. 도메인은 안전하고 저렴한 곳에서 사시면 됩니다. 물론 AWS 사용자라면 부담없이 ROUTE53에서 쓰시는 것도 방법입니다.   2. 도매인 설정 구매를 했다면 다양하게 서브 도메인 설정도 가능합니다. 간단한 방법은 서브 도메인을 해당 EC2 서버에서 발급 받은 public IP로 연결하는 겁니다. 그리 어려울게 없습니다.   3. EC2에서 VHOST 설정 APACHE2(httpd) 기준으로 vhost.conf 파일이 있는 /etc/httpd/conf.d/ 디렉토리에 vhost 설정하는 방법입니다. 원하는 형태의 가상 서버에 대한 vhost 설정을 넣습니다. 해당 ec2 서버로 접근하는 모든 80(http) 요청에 대해서 도메인 네임이( ci.graphevent.com )으로 들어오는 요청에 대해서 DucumentRoot를 별도로 설정한 디렉토리로 정합니다. 로그 파일도 따로 남겨두면 좋습니다. 해당 디렉토리에 대한 접근 권한은 원하는 형태로 옵션 주셔서 만들면 됩니다. 홈 디렉토리로 사용할 디렉토리는 미리 만들어 두시면 더 편리합니다.   4. 웹서버 재가동 설정이 완료되었다면 httpd 데몬 재가동 해야겠죠?   요약 참고로 라우팅 테이블 특성상 바로 적용되지 않을 수 있기 때문에, 때로는 약간의 기다림이 필요하고요. 급할 경우, Client PC에 해당 서브도메인에 대한 정확한 IP를 입력해서 접근하도록 변경도 할 수 있습니다.   #### AWS 스터디를 위한 qwiklabs 등록 및 관련 메뉴 추가 AWS 스터디를 위한 qwiklabs 등록 및 관련 메뉴 추가 했습니다. qwiklabs는 AWS 관련해서 학습을 할 수 있는 사이트이고, 뱃지는 AWS에서 인정해 주는 부분입니다. 잠시 미뤄두었던 프로젝트와 주먹구구식으로 해왔었던 스터디를 해당 사이트를 통해서 진행하고자 합니다.   AWS 스터디를 위한 qwiklabs 등록 및 관련 메뉴 추가 qwiklabs라는걸 갑자기 알았을리는 없습니다. 현재 근무하고 있는 회사가 서버 호스팅을 하는 회사이다 보니 거의 사용할 일이 없었습니다. 개발을 하더라도 내부 SM 팀에서 거의 다 작업을 해 주기 때문에 별로 신경 쓸 필요는 없었습니다. 그렇지만 이걸 몰라서는 안되겠지라는 생각에 AWS를 잘 쓰지도 않으면서 계속 프리티어를 유지했었습니다. 그리고 심지어 잠시나마 다른 프로젝트를 위한 환경 구축을 돕기도 했었습니다.   AWS 에피소드 nextmyhome.com & graphevent.com - 2015년 위 2개 사이트는 아직도 연결은 되고 있는 EC2 사이트입니다. 그냥 laravel만 올려져 있을 겁니다. 중간에 프리티어를 한 번 바꾸는 과정에서 모두 날아가긴 했지만, EC2를 처음 접하게 되었던 계기가 된 추억이 있습니다. ROUTE53 이용해서 도메인 관리 관련해서도 공부했던 사이트인데 이제 곧 프리티어도 만료가 되는군요. 조만간 QUIKLABS 진행되는 동안 EC2를 다시 올리는 작업을 한 번 해 볼까 합니다. 예전에는 무작정 AMI 하나 받아서 LAMP 스택 올려서 웹 올려서 썼는데, 정석이 무엇인지 알면 좋을 듯 합니다. najeju.com AWS 프로젝트 추억 - 2016년 당시에도 잘 모르지만 EC2와 S3를 잘 조합해서 쓰고자 하는 노력이 있었습니다. 기획서를 친구의 친구로 해서 받았었는데, 부탁받고 하는게 힘들다는거 처음이자 마지막으로 알게된 계기였습니다. 아무튼 눈에 보이는 그대로의 세팅에서 구현까지 혼자서 하는데 식겁했던 기억이 나는군요. 당장 스타트업 하는 분 입장이다 보니 발전 가능성을 보자면 AWS로 시작하는게 당연한 처사라고 생각했습니다. 원래 다른 웹 호스팅을 쓰시는 분이었는데, 제가 간곡히 부탁해서 AWS로 쓰자고 회유했었던 기억이 납니다. 게다가 프리티어로 써도 충분하고, 과금이 발생할 정도로 가면 분명 성공의 길로 가는 것이라고 믿었습니다. 그래서 다른것 보다 무료 과금 범위에서 성능을 낼 수 있게 EC2에 ESB 적절히 설정했습니다. 그리고 LAMP 스택을 올린 다음에 그 기반 그대로 쓰는 것을 추천했었습니다. DB로 RDS를 쓰는 것은 부하가 올라가면 그때 백업해서 옮기면 될 것이라고 판단했습니다. RDS 같은 경우가 과금이 발생할 수 있어서 일단은 배제했습니다. 파일 관련해서 이미지 부분은 썸네일은 EC2에 두고, 따로 클릭만 S3에서 가져오도록 설정을 했었습니다. 문제는 이 부분에 대해서 S3  API 연동까지 손을 못 썼는데, 현재는 결국 그냥 EC2에 올려서 사용중이시군요. 이건 추후 nextmyhome.com 만들 때에 다시 만드는 걸로 고민해 봐야겠습니다.   앞으로 계획 AWS에 관해서는 딱히 글을 올릴 계획은 없습니다. 다만 진행되는 내용중 의미가 있는 부분에 대해서는 하나씩 추가될 예정입니다. 예를 들어서 특정 Quest를 수행하고 나서 뱃지를 받게 되면 하나씩 이 사이트 어딘가 추가가 될 겁니다. 그리고, 현재 개인 서버로 운영중인 해당 사이트(studydev.com)도 아마 이전할 것 같습니다. (현재 제 개인 서버 CPU가 성능이 낮고, ESXi 환경에서 운영중이라 다소 느리기 때문에 변경할 수도 있습니다.) 다음 포스팅에서는 뱃지를 받거나, 이전하거나 nextmyhome.com 제작 소식으로 찾아오겠습니다. 바로 이 녀석 뱃지를 따 보는것부터 해 보겠습니다. 이 녀석이 제일 친숙하면서 가장 기본이 아닐까 생각됩니다. #### code test // A sample class class Human { private int age = 0; public void birthday() { age++; print('Happy Birthday!'); } } #### Confluence 및 JIRA 설치 Confluence와 JIRA를 설치 개발과 관련된 정보를 좀 더 밀도 있게 관리하기 위하여 두 개의 서비스를 서버에 설치했다. 모두 30일 평가판이지만, 아마 매년 30불씩(Jira 20, wiki 10) 지불하고 사용하지 않을까 싶다.   설치 목적 Wordpress 진도가 나가지 않는다. issue를 등록하고  진행해야겠다. Confluence와 JIRA는 대기업에서 프로젝트 진행을 위해서 많이 쓰므로 익숙해지면 좋다. 개발과 관련된 정보는 Wordpress 뿐만 아니라 전반에 걸쳐 한번에 정리하여 쉽게 찾도록 한다. 개발 정보가 아닌 뉴스나 신기술과 관련된 정보를 블로그에 두는 것으로 정리한다. 혼자 개발을 잘 정리하는 목적도 있지만 이후를 대비하기 위해서 스터디 하도록 한다.   설치 방법 현재 호스팅되는 서버에 설치 JDK를 설치 PostgreSQL DB에 Confluence 설치 PostgreSQL DB 연결이 원할치 않아서 접속 권한 파일 설정하여 해결 Add-on 설치... 매년 돈 내야해서 쓰면 익숙해질 것 같아서 왠만하면 돈 나가는건 꺼버림 PlantUML이 동작되지 않는 문제는 해당 라이브러리 부재였음. yum으로 설치 포트가 8005인가 엄하게 되어 있어서 apache vhost 설정에서 http://wiki.studydev.com 으로 오면 포워딩 되도록 설정함 JIRA 설치 JIRA DB 연결 JIRA와 Confluence 데이터 연동하도록 Link 수행(Confluence 설정 메뉴) JIRA의 8080 포트 역시 http://jira.studydev.com 으로 들어올 경우 포워딩하도록 설정 조치함 #### Confluence와 JIRA의 함정 메모리의 늪 Confluence와 JIRA의 함정 메모리의 늪 에 빠질 준비가 되어 계신가요? JIRA와 Confluence를 개인 서버로 사용할 때 가장 큰 고민은 메모리입니다.   Confluence와 JIRA의 함정 메모리의 늪 메모리가 부족하다. 클라우드 서버를 호스팅하는데 큰 리소스가 들어갈 것이라 생각하지 않았습니다. 홈페이지 하나 돌리는데 1 Core에 Ram 1G면 남아 돈다고 생각했습니다. 물론 개인용 서버라는 가정입니다. 하지만 JIRA가 원할하게 구동하기 위한 환경으로 최소 메모리 2G를 요구합니다. 추가로 Confluence(WIKI)까지 생각해 봤을 때 이는 심각한 문제를 초래할 수 있습니다. KT 클라우드 서버를 사용하는 입장에서 워드프레스가 항상 너무 느렸습니다. 왜 이럴까 고민하던 찰라.... 메모리를 검사해본 결과(리눅스로 명령어 free -m -t 또는 top) 충격적인 것은 항상 16M가 남아 있고, 그나마 더 이상 올라가지도 내려가지도 않았습니다. 하드를 스왑해서 계속 쓰고 있는 것이 뻔한 상황이었습니다. 느린 것도 전혀 이상하지 않은 상황입니다.   결단의 기로 일단 JIRA는 현재로서는 사용이 거의 불가능합니다. WIKI 역시 마찬가지입니다. 문제는 둘다 JVM 기반이고 JVM 자체가 무겁습니다. 사실 wordpress는 JVM 없이도 잘 돌아갔는데, WIKI와 JIRA로 인하여 더 무거워졌고 홈페이지가 너무 느려졌습니다. Managing Confluence's performance and memory usage really depends on what resources are available. Confluence will run faster if you give it lots of memory for its caches, but it should still be able to run quite well in low-memory environments, with the right tuning. Below are some tips on getting the most out of your Confluence site. 결단이 필요한 것 같습니다. JIRA와 Confluence 욕심은 조금 더 차후에 내야할 것 같습니다. (이 글은 2013년 11월에 작성되었지만, 결국 2016년에 구매해서 설치하게 됩니다.). 어차피 회사에서 쓰니 회사에서 잘 쓰는 방향으로 하고, WIKI를 잘 정리해서 워드프레스에서도 유사하게 잘 쓸 수 있게 꾸며야 할 것 같습니다. 그리고 당시 KT ucloudbiz의 서비스에도 메모리 증설 옵션은 없었습니다. 애초에 시스템을 새로 꾸려야 한다는 겁니다. 꾸리는 것은 어렵지 않지만, 귀찮고 들어가는 투자 비용 대비 그만큼의 기대 효과는 없을 것 같다. 이렇게 JIRA와 WIKI를 접어야 하는 것인지... 시작 한달도 안 되서... 아쉽다. 회사에서 쓰자..   또 다른 메모리 귀신의 등장 이건 또 뭐야... 메모리가 시간 단위로 줄어들고 있습니다. 워드프레스인지 뭔지....  ㅋ 10분 단위로 계속 줄어 듭니다. 어떻게 잡을 것인가.... 쩝.... 저거 잡는게 다음 미션일 것 같습니다. 내일 아침이면 아마 메모리 안 남아 있을 것 같습니다. 이거 잡으면 WIKI 하나는 돌릴 수 있지 않을까 싶기도 한데... ㅋ total used free shared buffers cached Mem: 1024 499 524 0 8 78 -/+ buffers/cache: 412 612 Swap: 4095 53 4042 Total: 5120 553 4567 [root@StudyDev bin]# free -m -t total used free shared buffers cached Mem: 1024 513 510 0 8 78 -/+ buffers/cache: 425 598 Swap: 4095 53 4042 Total: 5120 567 4552 [root@StudyDev bin]# free -m -t total used free shared buffers cached Mem: 1024 515 509 0 9 78 -/+ buffers/cache: 426 597 Swap: 4095 53 4042 Total: 5120 568 4551 [root@StudyDev bin]# free -m -t total used free shared buffers cached Mem: 1024 516 508 0 10 78 -/+ buffers/cache: 426 597 Swap: 4095 53 4042 Total: 5120 569 4550 [root@StudyDev bin]# free -m -t total used free shared buffers cached Mem: 1024 517 506 0 10 80 -/+ buffers/cache: 426 597 Swap: 4095 53 4042 Total: 5120 571 4548 [root@StudyDev bin]# free -m -t total used free shared buffers cached Mem: 1024 520 503 0 11 81 -/+ buffers/cache: 427 597 Swap: 4095 53 4042 Total: 5120 573 4546 [root@StudyDev bin]# free -m -t total used free shared buffers cached Mem: 1024 535 488 0 12 81 -/+ buffers/cache: 441 582 Swap: 4095 53 4042 Total: 5120 589 4530 이건 top 상황.... 2013-11-12 오후 11:16... 상황... 내일 회사 일찍 가서 확인해야겠습니다. PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 6770 apache 15 0 76352 55m 6028 S 0.0 5.4 0:34.68 httpd 6765 apache 15 0 74260 53m 6064 S 0.0 5.2 0:35.76 httpd 6768 apache 15 0 73940 53m 6028 S 0.0 5.2 0:37.58 httpd 6767 apache 15 0 73936 52m 6052 S 0.0 5.2 0:35.05 httpd 6763 apache 15 0 72616 51m 5528 S 0.0 5.0 0:40.47 httpd 6898 apache 15 0 72620 51m 5276 S 0.0 5.0 0:32.06 httpd 6764 apache 15 0 71832 50m 5148 S 0.0 4.9 0:33.70 httpd 6769 apache 16 0 70600 49m 6048 S 0.0 4.9 0:32.82 httpd 6766 apache 15 0 63600 42m 5536 S 0.0 4.1 0:30.07 httpd 6761 root 18 0 30664 9500 4964 S 0.0 0.9 0:00.02 httpd 1497 mysql 18 0 143m 7784 2884 S 0.0 0.7 5:23.18 mysqld   결론 Confluence와 JIRA의 함정 메모리의 늪 에서 빠져 나오고자 한다면 메모리 용량 1G 로는 안됩니다. 홈페이지 운영하기 위해서 구축한 호스팅 서버인데, 구동은 가능하나 너무 느리다면 의미가 없습니다. 아무래도 둘 다 모두 포기해야하는 것 같습니다. 다른 쪽에 올릴 수 있는 방법을 찾아서 연결하는 쪽으로 구상해봐야겠습니다. 이 사이트는 홈페이지가 제일 중요하기 때문에 대신 jira 처럼 쓸 수 있는 무언가를 찾아봐야겠습니다. 메모리 잠식 문제는 httpd 데몬의 수를 제한적으로 운영하도록 하여 일정 이상의 메모리 잠식이 벌어지지 않도록 httpd.conf 파일의 prefork 설정을 변경했습니다. 이 방법이 적절한지는 의문이기에 좀 더 지켜봐야할 필요성이 있어 보입니다.   4년이 지난 시점 2013-11-13 09:45 작성하였고, 결국 당시KT ucloudbiz 서비스는 종료시켰습니다. 잠깐 AWS에도 올려 보았으나, 결국 개인 용도의 서버를 구매했습니다. HP MicroServer Gen8이라는 개인용 서버이고, 2016년 RAM을 결국 16GB까지 올려 버리고서는 JIRA, Confluence, Bitbucket까지 설치했습니다. Confluence와 JIRA의 함정 메모리의 늪 그것은 의지가 생기니 시간이 흘러서 서버 하나 구매하고, 램 늘려주니 아무것도 아니었습니다. #### CSS Wordpress 적용 여기 CSS  재정의 했음! 능률을 올리자 비주얼 에디터가 예쁘긴 하지만, 사용하기는 불편하다. 이유는 마우스를 사용해야 하기 때문이다. (dt-The 7 테마 사용)   요즘 부쩍 CSS에 대해서 흥미가 높아지고 있다. 업무하는 측면에서도 되도록이면 CSS를 잘 활용해 보려고 노력중이다. 특히 워드프레스에 글을 올리고, 테마가 바뀌면 엉망이 되어버리는 내 글들을 보면 슬프기 그지 없다. 검색할 때도 뭔 이상한 태그들이 들어가서 SEO에도 크게 도움이 될 것 같지는 않다. 뭔가 정형화된 형식으로 글을 편하게 쓰고, 보이는 것만 이쁘게 나오면 될 일 아닌가? 그래서 이 새벽에 이런걸 하고 있었다. 덕분에 글을 4개월만에 2개나 올리는 쾌거를 남겼다. 내 맘대로 CSS @import "http://fonts.googleapis.com/earlyaccess/nanumgothic.css"; @import "http://fonts.googleapis.com/earlyaccess/nanumgothiccoding.css"; body, select, input, iframe, a, ol, ul, li, tr, th, td, h1, h2, h3, h4, h5, h6, li, small, input, textarea, tfoot, .tabs li a span, #main .vc_text_separator div, div, p { font-family: "Nanum Gothic", "Nanum Gothic Coding" !important; } h1, h2, h3, h4, .page-title.title-left h1, .page-title.title-right h1, h2 a { font-weight: bold; } h1, .page-title.title-left h1, .page-title.title-right h1 { font-size: 2em; color: #333; } .blog-content h2 { font-size: 2em; color: #333; } article > h2 { font-size: 1.6em; border-bottom: 2px solid #ddd; margin-bottom: 34px; color: #333; } article > h3 { font-size: 1.3em; border-left: 3px solid rgba(0,83,159,.65); padding-left: 10px; margin: 40px 0px 10px 0px; color:#444; } article > h4 { font-size: 1.1em; margin-left: 0.95em; color:#555; } article > p { margin-bottom: 12px; line-height: 1.7em; margin: 1em 1em; } article > blockquote { margin: auto 1em; font-weight: bold; } article > ul > li { line-height: 2em; } 그냥 보이는대로 만들어 보았다. 약간 어설프지만, 좀 더 괜찮은 블로그나 글을 보게 되면 언제든지 베껴다가 업그레이드할 준비는 되었다. 이제 최소한 글 작성하는데 있어서 글 쓰는 에디터 쓰기가 귀찮아서 못 쓰지는 않을 것 같다. 그냥 열심히 글 적고 나서 Ctrl + 2~4까지 h 태그 만들고, bq.나 li 태그만 잘 쓰면 될 것 같다. 속이 시원하다. 이것도 CSS를 예전에는 잘 못 다뤄서 엄두가 안 나다가, 최근 CSS 뺏기는 취미가 생겨서 어렵지 않게 할 수 있는 것 같다. 정리할 기술들 안그래도 정리하려고 했던 기술들이 많다. bootstrap, semantic UI, datatables, jqgrid, d3js, highchart 등등... 좀 더 편하게 쓸 수 있는 방법을 공유하고자 하는 거다. 영문 자료는 참 많은데 한글 자료는 없다. 물론 다른 개발자들을 위해서라도 한글로 된게 없는게 오히려 약이 되겠지만... 방법을 공유하는건 좋은 일이니깐~ 댓글로 더 편한 방법이나 공유 소감을 남기면 좀 더 쓸만한 자료로 남지 않을까 싶다.   결론 맘에 든다. 언어영역 날려 먹은 것만 수탐1, 수탐2, 영어 틀린것 합한 것 보다 더 틀려 먹었던 아픈 기억이 있어서 글 쓰는걸 좋아하지는 않지만, 이거 제법 쓸만하다. 알면 손발이 덜 고생하는데, 이젠 좀 더 편하고 즐겁게 글을 남길 수 있을 것 같다. 진작 했어야 하는데, 지금이라도 해서 즐겁다. #### Develop code test // A sample class class Human { private int age = 0; public void birthday() { age++; print('Happy Birthday!'); } } #### HP Microserver Gen8 20개월 NAS 사용 후기 HP Microserver Gen8 구성도 HP Microserver Gen8 을 구매한지 20개월이 훌쩍 지났다. 어떤 프로그램을 어떻게 설치해서 운용했는지 알아보자.   설치 방법 최우선적으로 설치해야 하는 것은 VMware입니다. OS를 가상화 시켜주는 도구입니다. 이것을 설치하면, 다양한 OS를 나누어서 설치할 수 있습니다. 비록, CPU가 G1610T라는 듀얼 셀러론 프로세서를 가지고 있지만, 가격 대비 막강한 성능을 자랑합니다. 특히 저전력으로 동작하기 때문에 더욱 매력적입니다. 가상 OS를 지원하기 위해서 ESXi 5.5, ESXi 6.0, 또는 ESXi 6.5 를 설치할 수 있습니다. (2016년 11월 기준) HP Microserver Gen8 을 위한 ESXi 이미지 다운로드는 다음의 링크를 통해서 다운로드할 수 있습니다. ESXi 서버를 설치하면, 접속은 vSphere Client 앱을 설치해서 이용할 수 있습니다. vShpere를 이용하여 HP Microserver Gen8에 가상 OS를 위한 HW 세팅을 하고, OS를 설치하면 사용 가능합니다.   NAS - Xpenology Xpenology는 Synology 사에서 제공하는 DSM(NAS용 운영체제)에 대한 오픈소스 포럼에서 나온 것으로 보통 헤놀로지라고 부릅니다. 이것을 NAS 용도로 설치하여 운용할 수 있습니다. 보통 부트로더와 DSM을 함께 설치해야 하며, 버전 호환성을 고려해야 합니다. 시놀로지의 DSM은 매우 안정적이며, 기능도 다양하고 확장성도 많기 때문에 많이 사랑받고 있습니다. Xpenology가 불법이냐 아니냐에 대한 논란이 많이 있지만, Synology 본사에서는 이에 대해서 크게 문제 삼고 있지 않습니다. 아마 Xpenology를 경험하다 보면, 결국 Synology 정품을 사게 되리라는 확신과 자신감이 있기 때문에 그런게 아닌가 싶습니다. (소스를 오픈하는 것은 라이센스 문제이기 때문에, 안 할 수 없는 것이지만, DSM은 시놀의 SW 자산이기 때문에 그 사용 방법에 따라서는 저작권 침해의 소지가 충분히 있습니다.)   Download Station NAS에서 가장 핵심적인 기능입니다. 토렌트를 다운로드 받을 때 사용하는 기능입니다. RSS를 등록해두면, 주기적으로 드라마나 예능을 자동으로 다운로드 받을 수 있습니다. DS Photo 사진을 관리하는 유틸리티입니다. 스마트폰과 DSLR에서 촬영한 이미지를 한 곳으로 모아서 볼 수 있습니다. 이미지가 가지고 있는 GPS 정보를 토대로 Map위에 보여주는 기능도 들어 있습니다.   DS NOTE DS NOTE는 언제 어디서나 메모를 할 수 있습니다. 스마트폰을 이용하면, 실시간으로 사진 찍어서 메모도 할 수 있고, 웹의 내용을 복사해서 붙여 쓸 수 있습니다. 갑자기 좋은 아이디어가 떠 오르거나, 회의가 있을때, 요약할 때 사용하기 좋습니다.   Plex 원격 미디어 재생 App입니다. 원격지에서 Plex 앱만 설치되면, 그 누구가 되었든 미디어 파일의 공유가 가능합니다. 더 중요한 것은 해당 미디어의 정보를 인터넷 상에서 가져와서 매칭 시켜줄 수 있다는 것입니다. 이는 Plex 내부의 에이전트를 추가함으로 가능한 것으로 국내에서는 Daum, Naver와 매칭이 가능합니다.   PlexPy Plex에 대한 로그를 관리해 준다. 다양한 정보를 보여준다.   TvHeadend IPTV로 들어오는 브로드캐스팅 되는 UDP 패킷을 캡쳐해서 재송출하는 역할을 한다. 현재 BTV UHD 셋톱 박스가 집에 있는데, 이거 없어도 스마트폰이나 PC에서 TV를 볼 수 있다. 주로 클라이언트 프로그램으로는 KODI를 사용한다.   Web Server - Cent OS 7 StudyDev Home page Wordpress로 되어 있는 현재 홈페이지는 HP Microserver Gen8에 있는 일부분에 속해 있다. 현재(2016-11) 기준으로 가능한 모든 업데이트가 다 이루어져 있는 상태다. 테마가 다소 무겁기 때문에(The7) 살짝 느려진 면이 없지 않다. 앞으로 개발 이슈나 블로그 정보를 대부분 네이버 블로그와 함께 공유할 예정이다. (어느 하나를 딱 선택해서 집중 못하는 이유는 국내 환경의 검색기에 대한 불확실성 때문인듯 하다.)   JIRA 개발 이슈 관리 Confluence JIRA는 Atlassian이라는 호주의 회사에서 만든 개발 이슈 관리 도구이다. 매우 잘 만들어진 SW로 잘 사용할 경우, 큰 시너지를 얻을 수 있다. 잘 사용하기 위해서는 노력과 공부가 필요하다.   개발 문서 관리 JIRA에서 개발 일정을 생성하여 진행된 결과를 기록하는 도구다. 예를 들어서 현재 HP Microserver Gen8에 대한 정보가 궁금하다면, 다음의 링크에서 정보를 볼 수 있다.   Bitbucket 개발 소스 관리 개인(회사) 용도의 github 서버다. JIRA의 일정별 작업에 대한 결과물인 소스코드가 저장되는 장소이다. 그래서 JIRA와 연동된다. 몇 가지 소스를 공개하지 않기를 원한다면 Bitbucket을 사용하면 된다.   Web Server - Ubuntu 16.04 LTS 머신 러닝을 위해서 별도의 서버를 구매하지 않고, 이렇게 OS를 추가로 설치했다. TensorFlow 관련 프로젝트 용으로 사용한다. 학습용으로는 보통 GPU(nVidia)를 사용하는 것이 빠르기 때문에 학습용으로는 부적절하다.   HP Microserver Gen8 사용 후기 HP Microserver Gen8은 역대 사왔었던 IT 기기 제품 중 만족도가 가장 높은 제품이다. 특히 개발자라면, Linux에 대한 감도 있을 필요성이 있고, 가상 OS에 대한 감도 필요한 것 같은데, 이런 제품을 이러한 가격으로 사서 운용할 수 있다는 것은 큰 행운인 것 같다. 개발용으로 미디어용으로도 최고의 제품으로 지속적으로 사용할 것 같다. #### HP Microserver Gen8 ESXi 5.5 설치 및 구성 HP Microserver Gen8 ESXi 5.5 설치 및 구성 에 대해서 알아봅시다. 가상 환경을 이용하면 하나의 서버를 가지고도 여러가지 일을 동시에 할 수 있습니다. HP Microserver Gen8 ESXi 5.5 설치 및 구성 서버 상태 기본 Gen8 G1610T + 16GB RAM + 8GB USB(EXSI 5.5 가상 서버 OS용) + 256GB SSD(각 OS 운영용) + 5TB NAS HDD + 2TB 일반 HDD 설치 환경 아래와 같습니다. http://2cpu.co.kr 에서 도움 주신 분들 덕분에 설치까지 무사히 끝낼 수 있었습니다. 설치 과정 iLO4 평가판 키를 등록해서 원격 지원 활성화 - 키 받기 : https://h20392.www2.hp.com/portal/swdepot/displayProductInfo.do?productNumber=ILO_TRIALS 2개의 물리 하드를 모두 초기화 해서 ESXi 5.5 이미지를 IP에서 제공하는 설치 모드 manual 모드로 Disk 넣고 USB 8GB 설치 - 다운 URL : https://my.vmware.com/group/vmware/details?downloadGroup=HP-ESXI-5.5.0U2-GA&productId=353 - 설치 URL : http://seiler.it/vmware-esxi-5-5-installation-hp-proliant-microserver-gen8 EXSi에서 SSD를 datastorage1으로 HDD를 datastorage2로 스토리지 등록 - ESXi 라이센스 발급 : http://www.myip.co.kr/mbbs/index.php?document_srl=199011&mid=tip&sort_index=readed_count&order_type=asc XPEnology DSM 5.2 설치를 위한 가상 VM 만들어서 SSD에서 40G 설치 - XPEnology 이미지 파일 : http://xpenology.me/downloads/ - ESXi 5.5에 XPEnology 5.2 부트 설치 : http://www.xpenology.nl/vmware-esxi-installatie/ - DSM 5.2 설치 : http://www.xpenology.nl/how-to-install-dsm-5-2/ datastorage2를 RDM으로 잡고 가상 DSM 5.2 VM에 추가 - RDM 설정 : http://blog.klumblr.com/40 DSM 5.2 IP를 고정으로 변경 DSM 5.2에서 몇가지 패키지 설치 후 동작 확인 - 토렌트 다운 : 하나 받아 보는데 평균 20MB/sec까지 나오는걸 보니 빠른듯 합니다. - 파일 다운 : 옆에 있는 ipTime NAS2의 파일을 다운 - DLNA 설치 : TV에서 다운 받은 영상 재생하니 잘 되고, NAS2보다 폴더 반응 및 시간 이동이 더 빠르네요. - DS photo : PC 사진을 업로드 해 보고 스마트폰으로 확인해 보니 잘 되는군요. 문제 발생 거실 TV 옆에 Gen8을 뒀더니 엄청 시끄럽게 느껴지네요. (HGST 5TB NAS 7200rpm 딸그락 소리가 대박이군요.) 결국 공유기 옆에 거실에 두었습니다. 잘 사용하고 있습니다. ODD 배젤도 구해서 현재는 가린 상태입니다.   #### HP Microserver Gen8 서버 독일 해외 직구 HP Microserver Gen8 서버 독일 해외 직구 히스토리입니다. HP Microserver Gen8 서버 독일 해외 직구 독일의 컴퓨터유니버스 사이트를 이용해서 해당 제품을 구매했습니다.   기회의 발생 드디어 원하는 가격대에 HP Gen8이 풀렸습니다. 가격이 무려 EUR 184.03 입니다. 쿠폰 신공을 사용하면 EUR 5 할인이 가능합니다. 내년에 살 서버는 내년에 고민하기로 하고(스카이레이크), 고민없이 구매했습니다.   무엇을 할 것인가? 놀기 위해서 샀다. 사진 꾸미기 그 동안 모아두었던 사진을 정리해서 넣어 두고, 스마트폰으로 바로 볼 수 있게 시스템 꾸미기 토렌트 돌리기 웹 서버 돌리기 내 집 찾기 프로젝트 개시 알바 개시   놀기 적당한가? 더 할 나의 없다. G1610T, 2G RAM (4G 더 사 놓았다.), HGST 5T NAS HDD, 삼성 250G SSD 이 정도면 내가 원하는거 다 하고도 남습니다. 더 문제 생기면 돈이 생긴다는 전제하에 업글을 할 지언정 바뀔 필요 없지 싶습니다.   시스템을 꾸미자 이 시스템은 어떻게 꾸며나가는지 하나 하나 전 과정이 오픈된다. 그래야 다음에 안 까먹지.   다음주 금요일...... 커밍순~ #### HUAWEI MATE 8 EMUI 5 UPDATE 메이트 8 Nougat 업데이트 HUAWEI MATE 8 EMUI 5 UPDATE 메이트 8 Nougat 업데이트 하였습니다. 기존 EMUI 4.1에서 5.0으로 변경되면서 안드로이드 버전 역시 6(마시멜로우)에서 7(누가)로 업데이트 되었습니다. 어떻게 업그레이드를 하는지 알아보겠습니다.   HUAWEI MATE 8 EMUI 5 UPDATE 메이트 8 Nougat 업데이트 해당 제품은 중국 직구 제품입니다. 화웨이 메이트8 128GB 제품이며, 외장 메모리로 128GB가 추가되어서 256GB 메모리를 사용중입니다. 설정에서 업데이트가 확인되지 않았지만, PC 연결 프로그램인 HiSuite 를 이용하면 업데이트가 있다는걸 확인할 수 있습니다.   HiSuite 프로그램 HAUWEI의 공식 PC 연결 프로그램입니다. 하단의 UPDATE 버튼을 누르면 최신 펌웨어를 검색하고 있을 경우, 업데이트를 시작합니다.   업데이트가 시작되면 다음과 같이 메시지 창이 나타납니다. 고민할 것 없이 Update 눌러 주면 되겟습니다. 업데이트가 진행되는 동안 다운로드를 하는데, 시간이 제법 걸립니다. 약 20~30분인듯 합니다. 새로운 펌웨어 버전은 NXT-AL10C00B577입니다.   다음과 같이 업데이트가 완료되면 Andorid 버전은 7.0이 되고, EMUI는 5.0이 되는것을 볼 수 있습니다.   업데이트 직후 느낌 전반적으로 EMUI가 바뀐 것을 단번에 눈치챌 수 있습니다. 하지만 기존에 사용중이던 런처도 이상없이 정상 동작하는 걸 볼 수 있습니다. (저는 노바 런처 구매하여 사용중입니다.) 개인적으로 거의 1년간 너무 잘 사용중이긴 하지만, 한 번쯤 정리를 해야겠다는 생각을 가지고 있었는데, 막상 거의 표면상으로 사용하는데 당장 다른 점이 안 보여서 그런지 초기화를 굳이 해야할까 하는 생각이 듭니다. 일단 1~2주는 초기화 없이 사용해보고 이상한 점이 있으면 한 번 공기계 초기화 작업을 한번 해 보는게 어떨까 싶습니다.   다음에 다시 만나요 기존 EMUI 4.1과 어떻게 다른지 안드로이드 7.0의 느낌은 어떠한지 한 1~2주 사용해 보고 비교 후기를 가지고 다시 찾아오겠습니다. #### impress.js를 WordPress에 넣기 원문 링크 번역중입니다. 워드프레스에 impress.js를 넣어보자. 온라인 프리젠테이션 도구들이 데스크탑에서 쓰던 프리젠테이션을 넘어 급격하게 성장하고 있습니다. Impress.js는 CSS 변화, 변환을 이용하여 놀라운 프리젠테이션 만드는 용도를 지닌 오픈 소스 라이브러리 중에서도 가장 인기가 있습니다. 비록 엄청난 인기있는 라이브러리라 해도 많은 도구들이 동적인 컨텐츠를 가진 프리젠테이션을 생성할 수는 없습니다. 그래서 여기서 우리는 프리젠테이션 만드는 것을 자동화할 수 있는 워드프레스 안으로 Impress.js를 넣어보고자 합니다. 이 두 개의 사용지침서를 통해서 Impress.js 프리젠테이션을 구축하는 동안, 내 맘대로 주물를 수 있는 고도의 플러그인을 개발할 것입니다. 그럼 시작해 볼까요? 쩔어주시는 Impress.js 프리젠테이션 플러그인을 구현하는 엄청난 삽질에 앞서서, 아마 이 강력한 라이브러리가 만들어내는 놀라운 프리젠테이션이 어떤게 있는지 보고 싶을 것이다. Impress.js의 창조적인 사용을 몇가지 살펴 보자. Great Wall of Tees Building a Personal Website with Impress.js jgog.in Website/Portfolio Pongoweb.it from creators of PongoCMS 이런 프리젠테이션과 웹사이트는 이 놀라운 도구에 대해서 더욱 배우고 싶은 영감을 줄 것이다. 그래서 워드프레스에 합치는 삽질을 하기 전에 Impress.js의 기본이 대는 몇가지 사용지침서를 추천하고 싶다. Impress.js source Creating Stunning Visualizations with Impress.js Building Impressive Presentations with Impress.js 기본 지식을 확보하여 이 글을 완료하는 것으로 이제 워드프레스와 실제로 통합하는 것으로 이동할 수 있다. 플러그인을 계획하는 것 먼저 플러그인 개발하기 전에, 프리젠테이션을 만드는 것을 위하여 주요 요구사항을 확인할 필요가 있다. 일반적인 프리젠테이션의 특징을 고려하여 작업을 나열해 보자. - 우리는 특별한 디자인을 가진 슬라이드를 만들수 있어야 한다. - 각각의 슬라이드는 변화 효과가 필요하다. - 슬라이드는 프리젠테이션을 만들기 위하여 함께 그룹화 되어야 한다. - 프리젠테이션은 입맛에 맛게 설정 되어야 한다. 이번 파트에서는 우리가 언급한 첫번째 3가지 작업을 구현할 것입니다. 프리젠테이션 사용자 정의 설정과 플러그인 사용 기술은 두번째와 마지막 부분에서 논의될 것입니다. 그럼 시작해 볼까요. 플러그인 만들기 우리는 wp-content/plugins 디렉토리 안에 있는 wimpress라 부르는 플러그인 폴더에 만듬으로써 구현을 시작할수 있다. 모든 플러그인들은 코드 주석을 이용하여 플러그인에 대한 정보를 정의하고 있는 메인 파일을 가진다. wimplress.php처럼 다음의 코드를 포함하는 메인 플러그인 파일을 만들어 보자. 이 플러그인은 객체 지향 접근를 사용할 것이고, 따라서 우리는 메인 파일 안에다가 메인 플러그인 클래스를 넣는다. 모든 플러그인의 기능과 관련된 구현은 데모 목적의 이 클래스 안에 넣습니다. 플러그인 초기화 워드프레스가 코어내에서는 기능의 절차적 스타일을 사용하더라도, 대부분의 개발자들은 플러그인을 생성하기 위하여 객체지향프로그래밍 스타일을 사용하는 것을 선호합니다. 이 기술에서, 대부분의 기능을 제공하는 메인 클래스를 가집니다. 그러한 플러그인들의 초기 구현을 위하여 다음의 코드를 고려해 봅시다. class WImpress { public function __construct() { } } $wimpress = new WImpress(); 정의 후, 우리는 메인 클래스의 객체를 초기화 합니다. 워드프레스의 핵심 기능의 대부분을 제공하는 액션과 필터를 사용합니다. 그러므로 우리는 워드프레스에 필요한 액션을 정의하기 위하여 WImpress 클래스 생성자를 사용합니다. 이러한 액션과 필터의 기능 구현은 대부분의 시나리오에서 같은 클래스 안에 정의됩니다. Wimpress 플러그인의 첫번째 액션을 생성하여 액션 정의해 봅시다. 프레젠테이션 및 슬라이드 정의 class WImpress { private $presentation_type; private $step_type; public function __construct() { $this->presentation_type = "wpresentations"; $this->step_type = "wsteps"; add_action('init', array($this, 'wimpr_generate_post_types')); } } #### iPad 4 and Red Color iPad 4 and Red Color 조합의 아름다움. 3년이 넘어서도 너무나 쌩쌩한 ipad4 입니다.   iPad 4 and Red Color   iPad 4 Generation 바로 이거다.  레티나에 iPad Air가 엄청나게 무게가 줄었다면, 엄청나게 줄었다는 표현을 혁혁하게 공헌한 녀석... 바로 iPad 4     Why? iPad4! 가격이 저렴하다(?) 128G 셀룰러 버전을 구입했다. 미개봉품이고 현금가 65만원에 구입했다. 원가가 112만원이었던것에 비하면 이런것이야 말로 혁신(?)이다. iPad Air와 Mini Retina의 혁신에 큰 방해가 되었던 가격이 이 녀석을 이 곳에 불러 들였다.   구매의 목적 와이프 선물~ 다른거 없다. 멀리 출퇴근 하는 와이프를 위한 작은 선물이나... 무겁다. 그래서 들고 다니지 않고 있다. 이것을 함정 또는 딜레마라고 외친다.     + Red Case 특별해야 한다! 무게가 무거우니 이쁘게라도 입혀주자. 어떤걸로 할까 고민해 봤다. 고민은 간단했다. 왜냐하면 이미 오래전부터 난 Vaja 케이스 빠다. iPhone 3GS 나오자마자 아르헨티나에서 직접 배송 받았다. 역시 케이스는 Vaja(바하) 케이스다. 가죽케이스의 진리다. 그리고 비싸다. 아마 국내에서 저렴한게 15만원부터 시작할 것이다. 하지만 비싼 것은 세일 상품으로 사면 된다. 왜냐하면 iPad Air도 iPad mini Retina도 아니기 때문인... 드릅게 무거븐... 바로 iPad 4이기 때문이다. → 이게 바로 핵심임... 가격이 다 싸지는게 함정임. 그래서 커플로 Red랑 Black을 샀다. 케이스 두 개와 미국내/국제 배송비 포함 약 13만원 들었다. 관세와 부가세 따위는 내지 않는 범위내에서 구매하는게 관건!   + Red Smart Cover Leather 역시 특별해야 한다!   이미 레드이므로 특별한 것이다. 화이트에 강렬한 Red의 조합. 이쁘다. 국내에 다 단종되서 구하기 어렵다. 미국도 어렵다. 그나마 있는건 다 중고다. 완성이다.   함정에 빠지다. 어.. 어깨가 아프다. 결국 가지고 다니지 못하고 있다. 흠... 역시 iPad mini Retina가 답이었던 것 같다. 그러므로 다시 사야겠............... 이건 훼이크고 더 이상의 욕심은 접어야지. 대략 iPad Air님 덕분에 원가 대비 60% 가격에 새제품을 다 맞춘듯 하다. 그런데 이 녀석이 쓰임새가 다양해져야 할 것 같은데... 그게 앞으로의 문제지 싶다. (내용이 없고 끄적이고 사진만 있는게 최종 함정) → 결론 : iPad 4 무거워도 좋지만 어깨 아프다. 이 정도 가격이면 어깨가 운동해 줘도 신날듯함. #### LG 드럼 세탁기 미니워시 구매 후기 스팀 25KG LG 드럼 세탁기 미니워시 구매 후기 25KG 용량에 알러지케어가 가능한 스팀 옵션이 포함된 드럼 세탁기에요. 게다가 높이까지 허리에 편안하도록 미니워시를 받침대로 사용할 수 있어요. 결혼할 때 구매했던 세탁기를 무려 13년 동안 정말 잘 사용했어요. 잔고장도 거의 없이 오래 버텨줬는데, 최근 들어 내부 부품 몇 개가 망가지고 모터 힘도 약해지면서 빨래가 예전만큼 시원하게 되지 않더라고요. 그래서 LG 25KG FX25WSQX 드럼 세탁기를 구매했어요. 에너지 효율 1등급 제품이에요. LG 드럼 세탁기 25KG 스팀 LG 드럼 세탁기 조작부 받침대로 미니워시를 선택했어요. 가장 큰 이유는 키높이를 위해서였습니다. 단독 구매시 60만원 내외인데요. 한번씩 콤보처럼 묶어서 팔 때 구매하면 저렴하게 구매가 가능해요. 사실 브랜드는 고민을 거의 하지 않았어요. 몇 달 전에 LG 건조기 AS를 맡겼는데 기사님이 너무 친절하고 꼼꼼하게 봐주셔서 그 경험이 굉장히 좋았거든요. 그래서 이번에도 자연스럽게 LG 제품으로 재구매하게 되었어요. LG 14KG 건조기 AS 세척 과정 LG 14KG 건조기 AS 세척 결과 13년 사용한 기존 통돌이 세탁기 13년을 함께해 온 통돌이를 보내줄 시간이에요. LG T1207W7 이고 12Kg 제품이에요. 용량이 2배 이상 커졌어요. 이제 너를 자유롭게 보내줄 때가 됐구나… 사진을 보면 아시겠지만 공간에 딱 맞게 들어가 있던 통돌이 세탁기였어요. 13년 동안 잔고장도 거의 없이 잘 사용했지만 최근에는 세탁력이 떨어지고 소음도 조금씩 커지기 시작했거든요. 특히 빨래가 덜 깨끗해지는 느낌이 들면서 이제는 바꿀 시점이라는 생각이 들었어요. 기존 세탁기 철거 과정 막상 빼려고 하니 꽤 큰 작업이더라고요. 기사님 두 분이 오셔서 기존 세탁기를 분리하고 이동시키는 과정이에요. 13년간 함께한 통돌이 실려 나가는 13년된 LG 통돌이 생각보다 세탁기가 무겁고 배수 연결도 꽤 단단하게 되어 있어서 전문가가 아니면 직접 하기 어려운 작업이에요 새로 구매한 LG 세탁기 25kg 모델 미니워시랑 드럼 세탁기는 외부에서 결합해서 가져오세요. 옮기는게 엄청 힘들어 보여요. 설치가 험난해요. 25KG LG 드럼 세탁기 입장 25KG LG 드럼 세탁기 넣는 과정 드디어 설치 완료! 이번에 구매한 모델은 FX25WSQX 모델이에요. 25kg 대용량 드럼 세탁기 스팀 알러지 케어 세척 기능 하단 미니워쉬 포함 WiFi 연결 가능한 업가전 모델 요즘은 워시타워나 워시콤보도 많이 나오지만 저는 별도 세탁기 제품을 선택했어요. “세탁과 건조를 동시에 돌리고 싶다”“합리적인 가격”“허리를 편하게 쓰고 싶다” (서서 사용하고 싶어요.) 이 세 가지가 가장 중요해서 기존 건조기는 그대로 사용하고 이번에는 받침대(미니워쉬) 포함된 25kg 대용량 모델을 선택했어요. 설치 완료 후 모습 확실히 최신 제품 느낌이 나죠. 업가전 기능으로 시계 기능을 활용할 수 있어요. 안 쓸 때는 시간이 표시 되요. LG 드럼 세탁기 25Kg 설치 완료 미니워시 동작 상태 점검중 설치 후 모습이에요. 예전에 사용하던 통돌이보다 전체적으로 훨씬 깔끔하고 디자인도 상당히 세련된 느낌이 나요. 특히 하단에 있는 미니워쉬 받침대 덕분에 세탁기 높이가 올라가서 허리를 덜 숙여도 되는 점이 정말 편리해요. 구매 가격 정보 구매가: 165만원 추가 적립금(네이버페이): 10만원 최종 체감가: 155만원 25kg 대용량 + 스팀 알러지 케어 + 미니워쉬 포함 + 업가전 기능으로 저는 꽤 만족스러운 가격이라고 생각해요. LG 공홈에서 구매했습니다. https://www.lge.co.kr/washing-machines/fx25wsqx-akor2참고로 간혹 저녁에 라이브 방송하면서 쿠폰 주는데, 그럴 때 구매하시면 더 저렴해져요. 할인은 949,100 받았어요. 라이브쿠폰 좋아요. 그리고 네이버페이 포기능 적립 최대 10만점이에요. 이건 결제 꿀팁인데요! 모바일 앱 결제가 할인율 높을 때가 있어요. 그리고 가끔 라이브 전용 쿠폰 나오는데 이게 또 할인이 쏠쏠해요. 추가로 장바구니 쿠폰 활성화 되면 거의 최대치에요. LG 드럼 세탁기 할인 구매 가격 추가로 카드 연계 결제를 삼성카드로 했는데, 삼성카드 적립 1.2% 포함이에요. 정확히 1.98만원이 추가 적립되죠. 원가 260만원 이라고는 하지만, 실제 구매는 153만원에 구매한거랑 다름 없어요. 이 가격대로 검색해 보시면 60만원 상당의 미니워시 있는 모델은 보통 없어요. 타이밍 잘 맞춰서 구매해보세요. 미니워쉬 사용 용도 솔직히 저는 미니워쉬를 거의 쓰지는 않을 것 같아요. 대신 아래 용도로 쓰면 좋을것 같은데 고민중이에요. 세차용 수건 행주 이런 것들을 따로 세탁하는 용도로 사용할 예정인데, 막상 통 세척이 시원찮으면, 이게 맞을지 잘 모르겠어요. 메인 세탁기와 분리해서 사용할 수 있다는 점이 생각보다 실용적이죠. 세척력 솔직 후기 통돌이만 쓰다가 드럼 써보니 확실히 달라요. 사실 13년 된 고장나고 있는 제품에서 바꿨으니 좋을 수밖에 없죠. 확실히 드럼 세탁기가 세척력은 더 좋은 것 같아요. 특히 놀랐던 건 운동화 세척, 운동화 세척망에 운동화를 잔뜩 넣어서 돌려봤는데 정말 놀랄 정도로 깨끗하게 세척되었어요. 예전에는 손으로 한 번 더 닦아야 했는데 이제는 그럴 필요가 거의 없어요. 이 부분은 만족스러워요. WiFi 연결 & LG ThinQ 사용 후기 저는 원래도 LG ThinQ 앱을 많이 사용하는 편이에요. TV, 광파오븐, 건조기, 세탁기, 공기청정기 2개, 제습기가 있어요. LG ThinQ 앱 그래서 실시간 상태도 확인 가능하고 내가 무슨 설정으로 돌렸는지도 확인이 가능해요. 이번 제품은 업가전 모델이라 기능이 조금 더 재미있어졌어요. 예를 들면 시계 화면 테마 변경 특이한 멜로디 설정 화면 스타일 변경 이런 것들을 앱으로 설정할 수 있어요. 은근히 재미있습니다. 가장 만족하는 기능 25Kg + 스팀 알러지 케어 이 기능 정말 좋아요. 바꾸자 마자 정말 열심히 이불 세탁 돌렸어요. 기존 12Kg 통돌이도 작지는 않았지만 이불 들어가면 꽉 차서 그냥 흔들흔들 춤추는 느낌이었는데 이젠 제대로 세탁되는 느낌이에요. 그리고 스팀 알러지 케어를 통해서 아이들 비염이나 알러지에 대비할 수 있다니 더할 나위 없이 좋아요. 그리고 세탁 완료 알림! 예전에는 건조기만 알람이 왔는데 이제는 세탁기에서도 알람이 와요. 특히! 빨래 완료 알림 문 열어두라는 알림 이런 것까지 알려줘서 굉장히 편리해요. 특히 빨래를 깜빡하고 세탁기 안에 오래 두는 일이 줄어든 게 가장 만족스러운 부분이에요. 총평 (한 줄 정리) 13년 사용한 통돌이에서 25kg 드럼 세탁기로 바꾸니 너무 만족스러워요. 세척력, 편의성, 만족도 
모든 부분에서 확실히 업그레이드된 느낌! 특히 이 네 가지는 정말 체감이 커요. 대용량 세척력 허리 편한 높이 WiFi 연동 LG 드럼 세탁기 미니워시 25KG 스팀 제품구매 완전 만족해요. 최고에요! #### Linux에서 putty 한글 사용하기 SSH를 통하여 Linux에서 한글을 사용하기 위해서 다음과 같이 몇 가지 설정을 사용하여야 한다. Putty SSH 설정은 다음의 3개 파일을 순서대로 수정한 후에 putty의 환경 설정을 변경하면 된다.   [vc_row][vc_column][vc_column_text] /etc/sysconfig/i18n 수정 LANG="ko_KR.UTF-8" SUPPORTED="ko_KR.UTF-8:ko_KR:ko" SYSFONT="latarcyrheb-sun16" [/vc_column_text][/vc_column][/vc_row][vc_row][vc_column width="1/1"][vc_separator][/vc_column][/vc_row][vc_row][vc_column width="1/1"][vc_column_text] /etc/bashrc 수정 export LANG="ko_KR.UTF-8" export LC_ALL="ko_KR.UTF-8" [/vc_column_text][/vc_column][/vc_row][vc_row][vc_column width="1/1"][vc_separator][/vc_column][/vc_row][vc_row][vc_column width="1/1"][vc_column_text] /etc/vimrc 수정 if v:lang =~ "utf8$" || v:lang =~ "UTF-8$" set fileencodings=utf-8,euc-kr endif [/vc_column_text][/vc_column][/vc_row][vc_row][vc_column width="1/1"][vc_separator][/vc_column][/vc_row][vc_row][vc_column width="1/1"][vc_column_text] PUTTY의 언어 환경 설정 -> UTF-8로 설정함. [/vc_column_text][/vc_column][/vc_row] #### MySQL DB 백업 및 복원 방법 MySQL DB 백업 및 복원 방법 에 대해서 요약합니다.   MySQL DB 백업 및 복원 방법 다음과 같은 명령으로 MySQL 데이터를 백업하고 복원할 수 있습니다. mysql -u koot -p db_name < db_name.sql mysqldump -u koot -p db_name > db_name.sql   좀 더 자세한 설명은 구글에서 검색을 통해서 쉽게 알 수 있습니다. MySQL DB 백업 구글 검색 #### Postgresql Trigger - 포스트그레스 트리거 [vc_row][vc_column width="1/1"][vc_column_text] Postgresql Trigger 트리거는 상태가 변하는 이벤트가 발생할 때 특정한 무언가를 수행하는 것이다. 원래 뜻을 보면 방아쇠인데 당기면 총알이 날아가듯 뭔가를 유발시키는 매개체 역할을 한다.   DB에서 언제 쓸까? 데이터베이스에서 어떤 조건에 의해서(WHEN) 실행하기 전(BEFORE)이나, 완료된 후(AFTER) 자동으로 지정한 함수(FUNCTION)를 실행하도록 지정할 수 있다.   사용 순서 자동 수행되어야 하는 함수를 미리 정의해야 한다. (인자는 없고 리턴 자료형은 trigger임) 트리거 기능을 추가하여 함수를 연결한다. 로우 단위 또는 명령 단위로 수행할 수 있다. 실행 순서에 따라 선처리(BEFORE), 후처리(AFTER)로 구분한다. 선처리의 경우 데이터가 중간에 변경될 수 있으므로 중의해야 한다. 트리거가 다중으로 있을 경우 트리거의 이름순으로 실행된다.   주의 사항 트리거가 또 다른 트리거를 발생시킬 수 있다. 이것은 프로그래머의 재량이다. 조심해야 한다.   예제 실습 테이블 만들기 트리거 함수 만들기 트리거 만들기   테이블 만들기 테이블 2개 만들거다. 첫번째 : emp 사원 넣는 거다. CREATE TABLE emp ( empname text NOT NULL, salary integer ); 두번째 : emp 사원 넣는거 확인해서 로그 남길거다. CREATE TABLE emp_audit( operation char(1) NOT NULL, stamp timestamp NOT NULL, userid text NOT NULL, empname text NOT NULL, salary integer );   트리거 함수 만들기 트리거 함수 만들기 CREATE OR REPLACE FUNCTION process_emp_audit() RETURNS TRIGGER AS $emp_audit$ BEGIN -- -- Create a row in emp_audit to reflect the operation performed on emp, -- make use of the special variable TG_OP to work out the operation. -- IF (TG_OP = 'DELETE') THEN INSERT INTO emp_audit SELECT 'D', now(), user, OLD.*; RETURN OLD; ELSIF (TG_OP = 'UPDATE') THEN INSERT INTO emp_audit SELECT 'U', now(), user, NEW.*; RETURN NEW; ELSIF (TG_OP = 'INSERT') THEN INSERT INTO emp_audit SELECT 'I', now(), user, NEW.*; RETURN NEW; END IF; RETURN NULL; -- result is ignored since this is an AFTER trigger END; $emp_audit$ LANGUAGE plpgsql;   트리거 만들기 트리거 생성 CREATE TRIGGER emp_audit AFTER INSERT OR UPDATE OR DELETE ON emp FOR EACH ROW EXECUTE PROCEDURE process_emp_audit();   테스트 emp 테이블에 INSERT랑 UPDATE랑 DELETE 하면서 테이블 관찰해 보자. [/vc_column_text][/vc_column][/vc_row] #### PostgreSQL 시퀀스 번호 수정하는 방법 PostgreSQL 시퀀스 번호 수정하는 방법   PostgreSQL 시퀀스 번호 수정하는 방법 해당 숫자가 다음번 자동으로 추가되는 숫자가 됨 ALTER SEQUENCE psda_psd_dic_idx_seq RESTART WITH 69985; #### Qwiklabs AWS Websites and Web Apps 뱃지 획득 Qwiklabs AWS Websites and Web Apps 뱃지 획득 완료. 틈틈이 봐서 이달 안에 3개를 따 두면 좋을 것 같군요.   Qwiklabs AWS Websites and Web Apps 뱃지 획득 2017년에는 뭔가 남을 수 있을 법한 일을 좀 해보고 싶어서 1월부터 바쁘게 살기로 결심했습니다. 첫 번째는 이 wordpress에 관련 업무를 정리하고, 기존 업무는 리마인드 하는 일입니다. 두 번째는 AWS 관련 지식 획득입니다. 제대로 일을 시작해 볼까 하는 기반을 다지기 위함이기도 하고, 좋은 기회(?)를 얻기 위한 노력일 수도 있습니다. 사실 현재 다니고 있는 회사의 경우, AWS를 사용할 일이 거의 없다 보니 따로 공부할 일도 거의 없습니다. 그래서 이런 쪽의 지식이 많이 부족하다는 걸 느끼고 있습니다. 뱃지 개수 제 아이디로 로그인 하지 않아도 제 정보를 열람할 수 있게 되어 있군요. 현재 상태는 이렇습니다. 15 LABS TAKEN · 3 COMPLETED QUESTS 배지에 따라서 랩이 중복되다 보니, 한 개 뱃지 따 놓으면, 다른 연관된 뱃지 따는게 어렵지 않습니다. AWS 공부하는데 Qwiklabs가 효과있나? 저 포함해서 이제 막 AWS를 알아가는 사람들에게는 훌륭하다는 생각이 듭니다. 어느 정도 알고 있는 분이시라면, 크게 도움이 안 될런지도 모르겠습니다. 도움이 되기 때문에 AWS 홈페에지에서도 자습형 실습 이라는 주제로 언급되고 있는것 같습니다. 이론은 AWS에서 동영상까지 만들어가면서 잘 설명하고 있습니다. AWS 관련해서는 페이스북도 있고, 관련 Slack도 있는것 같습니다. 아직은 너무 모르는 상태라 생각하기 때문에, 좀 공부하다가 좀 더 활발하게 접근해 볼까 싶습니다. 그리고 LinkedIn에 등록이 되는군요. 뭔가 쓸만한게 딱히 없었는데, 없는 것보다도 이렇게라도 뭔가 있으니 좋네요. 2017년은 자격증 수집의 해로 정하던지 해야겠습니다. Qwiklabs는 어떻게 공부하면 좋을까? 약 10여차례 lab을 보면서 느낀점을 기반으로 정리하면 이렇습니다. 학습 주제 선택 (잘 모르면 뱃지 기준으로 순서대로 갑시다.) 학습 주제에 대한 AWS 자습서를 미리 본다. Qwiklabs에서 해당 주제에 대해서 실습한다. Qwiklabs는 시키는 그대로 한다. (체점할 때 문제가 될 수 있기 때문임) 간혹 실시간으로 평가 내용이 잘 반영이 안되기도 합니다. (이것 때문에 몇 번 멘붕을 겪음) 오토 스케일링 예제는 4개중, 1개만 pass 되었다고 나왔는데 결국 시간 종료하니 완료 처리가됨... (뭐하자는 거냣!) 뱃지를 따면 해당 뱃지 주제와 관련 레벨(초보, 전문가)에 따라서 뭔가 좀 알게 됩니다. 엄청 잘한다고는 할 수 없을 것 같고요. 이건 관련 업무를 하면서 스킬이나 경험을 늘려야 할 듯 합니다. 대충 느낌적으로 이 정도 하면 요 정도는 알 것 같다는 느낌입니다. 아직 전문가 레벨에 대해서 스터디한게 아니라서 가볍게 느껴질수도 있고, 생각보다 쉬웠던 부분도 있었고요. studydev의 학습 순서는? 아래와 같이 진행할 예정입니다. nextmyhome.com 서버를 올리려면 web, db 기타 정보가 필요합니다. Websites & Web Apps - 2017-01-22 Digital Media - 2017-01-22 Big Data on AWS Compute & Networking Deployment & Management Websites & Web Apps Big Data on AWS 사실 10일 전에 처음 접했을 때에는 뭘 시작할지 조차 감이 없었습니다. 다양한 Labs를 보면서 자신한테 필요한거 위주로 보면 좀 더 쉽게 볼 수 있지 않나 싶습니다.   앞으로 어떻게 할 것인가? 이걸 할 수 있게된 가장 큰 동기는 케빈 덕분입니다. 아니었다면 시작도 못했을 겁니다. 일단 Qwiklabs는 비용이 만만치 않습니다. lab당 거의 1만원씩 하기 때문입니다. 지금은 지원 받은 리소스를 이용해서 진행하고 있지만, 한계가 있을 것 같아서, 그 다음에는 정기 결제 해서 짧은 시간에 끝낼까 생각합니다. (한달 평균 약 6만원) No money. No gain. 케빈~ 내가 잘 되면 한 턱 낼께. 진짜 고맙다. 배울게 많구만. Qwiklabs AWS Websites and Web Apps 뱃지 획득 하는것이 단순히 뱃지를 얻는다 이상으로 쉽게 접해가지 못했던 AWS를 알 수 있게 된 계기가 된것 같아서 매우 좋습니다. 다음 주면 아마 뱃지가 3개가 생길것 같은데, 부지런히 모아볼까 싶습니다. #### QwikLabs Google Cloud Labs Free 학습 가능 소식 QwikLabs Google Cloud Labs Free 학습 가능 소식 이라는 따끈따끈한 뉴스를 전하고자 합니다. 기존 QwikLabs는 AWS를 위한 클라우드 실습 환경을 제공하여 나름의 인증서를 발급했었습니다. 이제는 Google Cloud 서비스에 대해서도 학습이 가능해 졌습니다. 차별화 되는 점은 바로 무료라는 것입니다.   QwikLabs Google Cloud Labs Free 학습 가능 소식 QwikLabs에 Google Cloud Platform을 위한 Labs가 추가되었습니다. 심지어 Free로 뱃지를 취득할 수 있습니다. 단 제한된 기간 동안에만 무료로 제공됩니다. 다음을 클릭하시면 Google QwikLabs를 만나 볼 수 있습니다. (정식 메뉴에서는 안 보이는듯 합니다.)   Google Cloud Labs 구성 아래와 같이 총 5개의 Quest를 제공하고 있기 때문에 총 5개의 뱃지를 취득할 수 있습니다. 제한된 기간 동안에는 관련된 51개의 Labs에 대해서 모두 무료로 들을 수 있기 때문에 시간이 허락한다면, 무조건 획득하는것도 좋을 것 같습니다.   5개의 뱃지 설명 5개의 퀘스트를 수행을 모두 완료하면, 5개의 뱃지를 취득할 수 있습니다. 각각은 그 성격에 따라서 다수의 Labs로 구성되어 있습니다.   GCP Essenstial 먼저 학습해볼 수 있는건 초보자를 위한 핵심 정수를 배우는 일이겠죠. VM을 생성하는 방법, 클라우드 쉘을 사용하는 방법, 클라우드 런쳐를 통한 서비스를 올리는 방법(예:Nginx), 디스크를 생성하여 마운트하는 방법(여기까진 쉽습니다), KUBERNETES를 이용한 앱 배포(도커 개념을 알아야 함), Compute Engine과 Cloud SQL 모니터링, 네트워크 설정과 로드밸런싱 방법을 소개합니다. 가장 기초가 되는 부분이므로 이 부분부터 시작하면 될 것 같습니다. (말은 이렇게 하고 있지만 Google Cloud Platform 약자도 처음 봅니다.)   Cloud Architecture 비기너 과정에서 배운 것에 대한 심화 과정으로 보입니다. 도커를 통한 앱 운영하는 방법, 클라우드 상태를 확인하고 문제를 알려주는 정책 설정, 네트워크 설정, 몽고DB 설정과 디버깅 하는 방법 등을 소개하고 있습니다. 일단 Lab 흐름을 한번 느껴보고 나서 하나씩 파고 들어가면 좋을 것 같습니다.   Data Engineering 하둡/스파크를 다루는 방법을 소개하고 있습니다. 여러가지 많은게 나와 있는데, 빅데이터 질의와 구글의 머신러닝 관련된 클라우드 API와 관련된게 많습니다.   Developing Applications 어플리케이션 서버를 구축하는 방법을 배우는것으로 보입니다. 기본이 Node.js를 다루고 있고, 다양한 언어에 맞추어 사용하는 방법을 알려줍니다.   Windows on GCP Windows 관련된 정보를 학습하는데, 서버스크립트 언어인 ASP.NET, MS SQL을 구축 및 배포하는 방법과 모니터링 방법 등을 다룹니다.   요약 QwikLabs를 Google에서 인수할 때, 곧 구글 관련해서 나오겠거니 했습니다. 사실 AWS 관련 학습이 워낙 잘 되어 있다보니 AWS가 아닌 구글에서 인수할때, 상당히 의아함이 들었습니다. 아무래도 내부적으로 Google의 Cloud 서비스를 널리 전파하기 위해서 최대한 Google 쪽에 집중을 하려고 하지 않을까 하는 생각이 듭니다. 막상 AWS에 가더라도 AWS의 별도의 인증서가 있기 때문에, QwikLabs의 공신력이 좀 떨어지는 것 같은 느낌도 드는것 같습니다. 중요한건 QwikLabs Google Cloud Labs Free 학습 가능 소식 이었고, 런칭한지 얼마 되지 않았기 때문에 관심 있으신 분들은 고민하지 마시고 한번 따라해 보시는걸 강추해 드립니다. #### SEO 검색어 순위 어디까지 왔나? 이 포스트의 목적 현재 내 블로그에 포스팅 되어 있는 게시물에 대한 검색 순위를 확인합니다. 구글 뿐만 아니라 네이버 다음도 함께 이용할 예정이며, 어떤 액션을 취했을 때 어떻게 순위 변화가 가능한지 알아봅니다.     관리 방법 포스팅 블로그 제목 | SEO 노출 순위 (구글/네이버/다음) | 검색 날짜 | 조치 사항 다음과 같은 방법으로 기록합니다. 2013-11-14 기준 : 네이버, 다음 검색 결과 없음, 구글은 검색하면 나오지만 들쑥날쑥함. 정리할 상황은 아니지만 나오기는 함.   해야 할 일 구글 : 이미 애널라이저 등록 완료됨. 네이버 : 사이트 등록하기 다음 : 사이트 등록하기 #### Something Big Is Happening 무언가 큰 일이 벌어지고 있어요 원문: https://shumer.dev/something-big-is-happening 지난 2020년 2월을 생각해 보세요 그때 아주 주의 깊게 보고 있던 사람이었다면, 해외에서 어떤 바이러스가 퍼지고 있다는 이야기를 하는 사람들이 조금씩 보였을지도 모릅니다. 하지만 대부분의 사람들은 그렇게까지 주의 깊게 보지 않았죠. 주식시장은 잘 나가고 있었고, 아이들은 학교에 다녔고, 우리는 식당에 가고 악수하고 여행을 계획했습니다. 누군가가 화장지를 사재기하고 있다고 말하면, “인터넷 이상한 구석을 너무 오래 들여다봤나 보다”라고 생각했을 겁니다. 그런데 약 3주 정도의 시간 동안, 온 세상이 완전히 바뀌었습니다. 회사는 문을 닫았고, 아이들은 집으로 돌아왔고, 삶은 한 달 전의 나에게 설명했다면 믿지 못했을 모습으로 재배열됐습니다. 나는 지금 우리가, 코로나보다 훨씬 훨씬 더 큰 어떤 일에 대해 “이거 너무 과장된 거 아냐?”라고 생각하는 단계에 있다고 봅니다. 이 글을 쓰는 이유 나는 6년 동안 AI 스타트업을 만들고, 이 분야에 투자해 왔습니다. 나는 이 세계에 살고 있습니다. 그리고 이 글은, 그 세계 밖에 있는 내 주변 사람들을 위해 쓰는 겁니다… 내 가족, 친구들, 그리고 “그래서 AI가 대체 뭐야?”라고 계속 묻는 내가 아끼는 사람들. 나는 늘 그들에게 제대로 와 닿지 않는 답을 해 왔습니다. 정중한 버전, 칵테일 파티에서 할 법한 버전 말이죠. 왜냐하면 솔직한 버전은 내가 미쳤다고 들릴 테니까요. 한동안 나는 그게—진짜로 일어나고 있는 일을 나 혼자만 알고 있어도 되는—충분한 이유라고 스스로를 설득해 왔습니다. 하지만 내가 말해 온 것과 실제로 벌어지는 일 사이의 간극이 이제 너무 커졌습니다. 내가 아끼는 사람들은, 미친 소리처럼 들리더라도 다가오는 일을 들어야 합니다. 통제권은 거의 없다: 미래를 만드는 소수 처음부터 분명히 하고 싶은 게 하나 있습니다. 나는 AI 업계에서 일하지만, 앞으로 벌어질 일에 대해 내가 행사할 수 있는 영향력은 거의 없고, 업계 대다수도 마찬가지입니다. 미래는 놀랄 만큼 소수의 사람들에 의해 형성되고 있습니다. 몇 개 회사의—OpenAI, Anthropic, Google DeepMind, 그리고 몇 곳 더—몇백 명 연구자들이죠. 작은 팀이 몇 달간 운영하는 단 한 번의 대규모 학습(training run)만으로도, 기술의 전체 궤적을 바꿔 버릴 AI 시스템이 나올 수 있습니다. 우리 같은 대부분의 AI 업계 종사자들은, 우리가 깔지 않은 기초 위에 건물을 올리고 있습니다. 우리도 여러분과 똑같이 이걸 지켜보고 있습니다… 다만 우리는 지면이 흔들리는 걸 조금 더 먼저 느낄 만큼 가까이 있을 뿐입니다. 하지만 이제는 때가 됐습니다. “언젠가 이 얘기를 해야지” 같은 의미가 아니라, “지금 당장 이 일이 벌어지고 있고, 당신이 이걸 이해해야 한다”는 의미로요. 내가 이게 진짜라고 확신하는 이유: 나한테 먼저 일어났기 때문이다 업계 사람들이 경고음을 내는 이유 기술 업계 밖의 사람들은 아직 잘 이해하지 못하는데, 지금 업계 사람들이 경고음을 내는 이유는 이 일이 이미 우리에게 먼저 일어났기 때문입니다. 우리는 예측을 하는 게 아닙니다. 우리 일자리에서 이미 일어난 일을 이야기하고, 다음은 당신 차례라고 경고하는 겁니다. 2025년 이후: 속도가 달라졌다 수년 동안 AI는 꾸준히 좋아지고 있었습니다. 여기저기 큰 도약이 있긴 했지만, 큰 도약 사이의 간격이 충분히 길어서 그때그때 흡수할 수 있었습니다. 그런데 2025년에 들어서, 이런 모델을 만드는 새로운 기법들이 나오면서 발전 속도가 훨씬 빨라졌습니다. 그리고 더 빨라졌고, 또 더 빨라졌습니다. 새 모델은 이전 모델보다 그냥 “조금 더 나은” 정도가 아니었습니다… 격차가 더 크게 벌어졌고, 새 모델이 나오는 간격은 더 짧아졌습니다. 나는 AI를 점점 더 많이 쓰게 되었고, AI와 주고받는 횟수는 점점 줄어들었고, 내가 전문성이 필요하다고 생각하던 일들을 AI가 처리하는 걸 지켜봤습니다. 2026년 2월 5일: 같은 날 공개된 두 모델 LLM 모델 등장 배경: https://www.studydev.com/llm 그러다 2월 5일, 두 개의 주요 AI 연구소가 같은 날 새 모델을 공개했습니다. OpenAI의 GPT-5.3 Codex Anthropic(클로드 Claude를 만드는 곳, ChatGPT의 주요 경쟁자 중 하나)의 Opus 4.6 그 순간 뭔가가 “딸깍” 맞아떨어졌습니다. 전등 스위치처럼 갑자기 켜지는 느낌이라기보다는… 물이 내 주변에서 계속 차오르고 있었고, 이제 가슴 높이까지 찼다는 걸 깨닫는 순간에 가까웠습니다. 내 직업에서 일어난 변화: “실제 기술 작업”이 더 이상 필요 없다 나는 이제 내 직업에서 “실제 기술 작업”을 하는 데 더 이상 필요하지 않습니다. 내가 만들고 싶은 것을 평범한 영어로 설명하면, 그냥… 나타납니다. 내가 고쳐야 하는 러프 드래프트가 아닙니다. 완성된 결과물입니다. AI에게 원하는 걸 말하고, 컴퓨터 앞에서 네 시간 정도 자리를 비운 뒤 돌아오면, 일이 끝나 있습니다. 잘 끝나 있고, 내가 직접 했을 때보다 더 잘 되어 있고, 수정할 것도 거의 없습니다. 두세 달 전만 해도 나는 AI와 여러 번 왔다 갔다 하며 안내하고 편집했는데, 지금은 결과만 설명하고 떠납니다. 예시: 앱을 “만들고, 열고, 테스트하고, 스스로 고친다” 실제로 어떤 모습인지 이해할 수 있도록 예를 하나 들어볼게요. 나는 AI에게 이렇게 말합니다. “이 앱을 만들고 싶어. 이런 일을 해야 하고, 대략 이런 모양이면 좋겠어. 사용자 흐름, 디자인, 전부 알아서 잡아줘.” 그러면 AI가 합니다. 수만 줄의 코드를 씁니다. 그리고—이게 1년 전엔 상상도 못 했을 부분인데—AI가 그 앱을 스스로 엽니다. 버튼을 눌러가며 실제로 써 봅니다. 기능을 테스트합니다. 사람이 쓰는 것처럼 앱을 사용합니다. 무언가가 보기나 느낌이 마음에 들지 않으면, AI가 스스로 다시 돌아가서 고칩니다. 개발자가 하듯이 반복합니다. 만족할 때까지 고치고 다듬습니다. 그리고 앱이 “자기 기준”을 충족한다고 스스로 판단한 뒤에야 내게 돌아와 말합니다. “테스트해 보셔도 됩니다.” 내가 테스트해 보면, 대개 완벽합니다. 과장이 아닙니다. 이번 주 월요일에 내 하루가 딱 그랬습니다. 나를 가장 흔든 것: “판단력”과 “취향” 같은 것 하지만 나를 가장 크게 흔들어 놓은 건 지난주에 나온 모델(GPT-5.3 Codex)이었습니다. 이 모델은 단지 내 지시를 실행하는 게 아니었습니다. 지능적으로 결정을 내렸습니다. 처음으로, “판단력” 같은 게 느껴졌습니다. “취향” 같은 것. 사람들이 늘 “AI는 절대 못 할 거야”라고 말해 오던, 설명하기 힘든 “무엇이 올바른 선택인지 아는 감각” 말이죠. 이 모델은 그걸 가지고 있거나, 적어도 그에 충분히 가까워서 이제는 그 차이가 중요한지조차 애매해지고 있습니다. 나는 늘 AI 도구를 빠르게 도입하는 편이었습니다. 하지만 지난 몇 달은 나를 충격에 빠뜨렸습니다. 이 새로운 AI 모델들은 점진적인 개선이 아닙니다. 완전히 다른 물건입니다. 왜 당신에게도 중요한가: “코딩부터”였던 이유 그리고 이게 기술 업계 밖에 있는 당신에게도 중요한 이유는 다음과 같습니다. AI 연구소들은 의도적인 선택을 했습니다. 먼저 AI가 코드를 잘 쓰도록 만드는 데 집중했죠… AI를 만들려면 코드가 엄청나게 필요하기 때문입니다. AI가 그 코드를 쓸 수 있다면, 다음 버전의 자기 자신을 만드는 데 도움을 줄 수 있습니다. 더 똑똑한 버전이 더 좋은 코드를 쓰고, 그게 더 똑똑한 버전을 만들고… 코딩을 잘하는 AI를 만드는 것이야말로 다른 모든 것을 열어젖히는 전략이었습니다. 그래서 그걸 먼저 한 겁니다. 내 일이 당신 일보다 먼저 바뀌기 시작한 건, 소프트웨어 엔지니어를 겨냥해서가 아니라… 그들이 처음에 조준한 곳이 거기였기 때문입니다. 그들은 이제 그걸 해냈습니다. 그리고 이제는 다른 모든 것으로 넘어가고 있습니다. 10년 뒤가 아니다: 1~5년(혹은 더 짧게) 지난 1년 동안 기술 직군 사람들이 경험한 것, 즉 AI가 “도움 되는 도구”에서 “내 일을 나보다 더 잘 하는 존재”로 바뀌는 걸 지켜본 경험은, 이제 곧 모든 사람이 하게 될 경험입니다. 법, 금융, 의학, 회계, 컨설팅, 글쓰기, 디자인, 분석, 고객 응대. 10년 뒤가 아닙니다. 이 시스템을 만드는 사람들은 1~5년이라고 말합니다. 어떤 사람들은 더 짧다고도 합니다. 그리고 내가 지난 두어 달 동안 본 것을 고려하면, 나는 “더 짧다”가 더 가능성이 높다고 생각합니다. “근데 나 AI 써봤는데 별로던데?” 나는 이 말을 정말 많이 듣습니다. 이해합니다. 예전엔 사실이었으니까요. 2023년이나 2024년 초에 ChatGPT를 써 보고 “이건 막 지어내네” 혹은 “별로 대단한데?”라고 생각했다면, 그건 맞는 판단이었습니다. 초기 버전들은 진짜로 한계가 컸습니다. 환각(hallucination)을 했고, 말도 안 되는 걸 아주 자신 있게 말했습니다. 그건 2년 전 이야기입니다. AI 시간으로는, 그건 고대사입니다. 오늘날 쓸 수 있는 모델들은 불과 6개월 전과도 비교가 안 됩니다. “AI가 정말 좋아지고 있는가” “벽에 부딪혔는가” 같은 논쟁—1년 넘게 이어져 온—은 끝났습니다. 끝났어요. 아직도 그 주장을 하는 사람은, 최신 모델을 안 써 봤거나, 지금 벌어지는 일을 축소할 인센티브가 있거나, 2024년의 경험을 기준으로 평가하고 있는 겁니다. 무시하려고 이 말을 하는 게 아닙니다. 대중의 인식과 현재 현실 사이의 격차가 이제 엄청나게 커졌고, 그 격차가 위험하기 때문입니다… 사람들이 준비하는 걸 막고 있으니까요. 무료 버전의 문제 문제의 일부는, 대부분의 사람들이 무료 버전 AI 도구만 쓰고 있다는 점입니다. 무료 버전은 유료 사용자들이 쓰는 것보다 1년 이상 뒤처져 있습니다. 무료 티어 ChatGPT로 AI의 수준을 평가하는 건, 폴더폰으로 스마트폰의 수준을 평가하는 것과 같습니다. 최고의 도구에 돈을 내고, 실제 업무에 매일 쓰는 사람들은 무엇이 오는지 알고 있습니다. 로펌 사례 나는 변호사인 내 친구를 떠올립니다. 나는 그에게 로펌에서 AI를 써 보라고 계속 말하는데, 그는 계속 “안 될 이유”를 찾습니다. 자기 전문 분야에 맞지 않는다, 테스트했더니 오류가 났다, 자신이 하는 일의 미묘한 뉘앙스를 이해하지 못한다… 이해합니다. 그런데 대형 로펌의 파트너들이 내게 조언을 구하러 연락해 온 적이 있습니다. 최신 버전을 써 보고, 이게 어디로 가는지 봤기 때문이죠. 그중 한 명—큰 로펌의 매니징 파트너—은 매일 몇 시간씩 AI를 씁니다. 그는 “즉시 쓸 수 있는 로펌 어소시에이트 팀을 갖는 것 같다”고 말했습니다. 장난감이라서가 아니라, 작동하기 때문에 쓰는 겁니다. 그리고 그가 한 말이 내게 꽂혔습니다. “몇 달마다, 내 업무에서 의미 있게 더 유능해진다.” 그는 이 궤도가 유지된다면 머지않아 자신이 하는 일의 대부분을 할 수 있게 될 거라고 예상한다고 했습니다… 그는 수십 년 경력의 매니징 파트너입니다. 그는 공황에 빠져 있지 않습니다. 하지만 매우 주의 깊게 지켜보고 있습니다. 자기 산업에서 앞서가는 사람들(진지하게 실험하는 사람들)은 이걸 dismiss 하지 않습니다. 이미 할 수 있는 일에 압도당하고 있습니다. 그리고 그에 맞춰 자신들의 포지션을 재정렬하고 있습니다. 실제로 얼마나 빠르게 움직이고 있는가 개선 속도를 좀 더 구체적으로 느낄 수 있게 설명해 볼게요. 이게 아마, 가까이에서 지켜보지 않으면 가장 믿기 어려운 부분일 겁니다. 2022년에는, AI가 기본적인 산술도 안정적으로 하지 못했습니다. 7 × 8 = 54 같은 답을 아주 자신 있게 말하곤 했죠. 2023년이 되자, 변호사 시험(Bar exam)을 통과할 수 있게 됐습니다. 2024년에는, 실제로 동작하는 소프트웨어를 만들고 대학원 수준의 과학을 설명할 수 있게 됐습니다. 2025년 말쯤에는, 세계 최고의 엔지니어들 중 일부가 자기 코딩 업무의 대부분을 AI에 넘겼다고 말했습니다. 그리고 2026년 2월 5일, 새 모델들이 등장하면서 그 이전의 모든 것이 마치 다른 시대의 것처럼 느껴지게 됐습니다. 지난 몇 달 동안 AI를 써 보지 않았다면, 지금 존재하는 것은 당신이 알아보지 못할 정도로 달라져 있을 겁니다. METR 측정 실제로 이걸 데이터로 측정하는 조직이 있습니다. METR이라는 곳인데, 모델이 “현실 세계의 실제 업무”를 인간의 도움 없이 끝에서 끝까지 얼마나 잘 해내는지를 측정합니다. 여기서 업무 길이는 “숙련된 인간 전문가가 끝까지 수행하는 데 걸리는 시간”으로 재죠. 1년 전쯤에는 그 답이 대략 10분이었습니다. 그다음엔 1시간이 됐고, 그다음엔 몇 시간이 됐습니다. 가장 최근의 측정(11월의 Claude Opus 4.5)은 AI가 인간 전문가가 거의 5시간 걸리는 업무를 성공적으로 완수하는 모습을 보여 줬습니다. 그리고 그 수치는 대략 7개월마다 두 배로 늘어나고 있으며, 최근 데이터는 4개월마다 두 배로 가속될 수도 있음을 시사합니다. 하지만 그 측정조차도, 이번 주에 막 나온 모델들을 반영해 업데이트된 게 아닙니다. 내가 직접 써 본 경험으로는, 이번 점프는 극도로 큽니다. METR 그래프의 다음 업데이트는 또 한 번의 큰 도약을 보여줄 거라고 예상합니다. 이 추세를 그대로 연장해 보면(수년간 유지되었고, 둔화되는 조짐은 없었습니다) 우리는 앞으로 1년 안에 AI가 며칠 동안 독립적으로 일하는 수준을 보게 될 겁니다. 2년 안에는 몇 주, 3년 안에는 한 달짜리 프로젝트까지요. Amodei(다리오 아모데이)는 “대부분의 인간보다 대부분의 과제에서 훨씬 더 똑똑한” AI 모델이 2026년 또는 2027년을 목표로 하고 있다고 말했습니다. 이 말을 잠깐 곱씹어 보세요. AI가 대부분의 박사(PhD)보다 똑똑하다면, 대부분의 사무직 업무를 못 할 거라고 정말 생각하나요? 그게 당신의 일에 어떤 의미인지 생각해 보세요. AI가 이제 다음 AI를 만들고 있다 내가 보기엔, 지금 벌어지는 일 중 가장 중요한데도 가장 덜 이해되고 있는 게 하나 더 있습니다. 2월 5일, OpenAI는 GPT-5.3 Codex를 공개했습니다. 그리고 기술 문서에 이런 문구가 들어 있었습니다. “GPT-5.3-Codex는 자기 자신을 만드는 데 중요한 역할을 한 우리의 첫 모델입니다. Codex 팀은 초기 버전을 사용해 자체 학습(training)을 디버그하고, 배포를 관리하며, 테스트 결과와 평가를 진단했습니다.” 다시 읽어 보세요. AI가 자기 자신을 만드는 데 도움을 줬다는 말입니다. 이건 언젠가 일어날 수도 있는 미래에 대한 예측이 아닙니다. OpenAI가 지금 당장 당신에게 말하고 있는 겁니다. “우리가 방금 공개한 AI는, 그것을 만드는 데 AI가 사용됐다.” AI를 더 좋게 만드는 핵심 요소 중 하나는 “AI 개발에 적용되는 지능”입니다. 그리고 이제 AI는 자기 개선에 의미 있게 기여할 만큼 충분히 똑똑해졌습니다. Anthropic의 CEO 다리오 아모데이는, AI가 이미 자기 회사에서 “많은 코드”를 쓰고 있다고 말합니다. 그리고 현재 AI와 다음 세대 AI 사이의 피드백 루프가 “매달 점점 더 힘을 얻고 있다”고요. 그는 우리가 “현재 세대 AI가 다음 세대를 자율적으로 만드는 지점까지 1~2년밖에 남지 않았을 수도 있다”고 말합니다. 각 세대가 다음 세대를 만드는 데 도움을 주고, 다음 세대는 더 똑똑하고, 더 빠르게 다음 세대를 만들고, 그다음은 더 똑똑해지고… 연구자들은 이것을 ‘지능 폭발(intelligence explosion)’이라고 부릅니다. 그리고 그걸 가장 잘 알 사람들—즉, 직접 만들고 있는 사람들—은 그 과정이 이미 시작됐다고 믿고 있습니다. 이것이 당신의 직업에 의미하는 것 당신이 편안함보다 정직함을 받을 자격이 있다고 생각하기 때문에, 나는 당신에게 직설적으로 말하겠습니다. AI 업계에서 아마도 가장 안전을 중시하는 CEO인 다리오 아모데이는, AI가 1~5년 안에 초급 화이트칼라 일자리의 50%를 없앨 것이라고 공개적으로 예측했습니다. 업계의 많은 사람들은 그가 오히려 보수적으로 말하는 거라고 생각합니다. 최신 모델의 능력을 보면, 올해 말까지도 엄청난 수준의 충격이 가능하다고 봅니다. 경제 전체로 파급되는 데는 시간이 걸리겠지만, “그 밑바탕 능력”은 지금 도착하고 있습니다. 이게 이전의 어떤 자동화 물결과도 다른 이유를 이해해야 합니다. AI는 특정 기술 하나를 대체하는 게 아닙니다. ‘인지 노동’ 자체를 일반적으로 대체할 수 있는 존재입니다. 그리고 모든 걸 동시에 더 잘하게 됩니다. 공장이 자동화되었을 때, 일자리를 잃은 노동자는 사무직으로 재훈련할 수 있었습니다. 인터넷이 소매업을 뒤흔들었을 때, 사람들은 물류나 서비스업으로 이동했습니다. 하지만 AI는 “이동하기 좋은 빈틈”을 남겨 주지 않습니다. 당신이 무엇으로 재훈련하든, AI는 거기도 같이 빠르게 좋아지고 있습니다. 구체적 예시(예시일 뿐) 몇 가지 구체적인 예시를 들어볼게요. 다만 분명히 하고 싶은 건, 이건 예시에 불과하다는 겁니다. 목록에 없는 직업이라고 안전하다는 뜻이 아닙니다. 거의 모든 지식 노동이 영향을 받고 있습니다. 법률 업무. AI는 이미 계약서를 읽고, 판례를 요약하고, 서면을 초안 작성하고, 법률 리서치를 하는 일을—주니어 어소시에이트에 필적하는 수준으로—할 수 있습니다. 내가 말한 그 매니징 파트너가 AI를 쓰는 이유는 재밌어서가 아니라, 많은 업무에서 자기 어소시에이트들보다 더 잘하기 때문입니다. 금융 분석. 재무 모델을 만들고, 데이터를 분석하고, 투자 메모를 쓰고, 보고서를 생성하는 일. AI는 이걸 능숙하게 처리하고 있고, 빠르게 더 좋아지고 있습니다. 글쓰기와 콘텐츠. 마케팅 카피, 보고서, 저널리즘, 기술 문서. 품질이 이미 많은 전문가들이 AI 결과물과 사람의 글을 구별하기 어려운 수준에 도달했습니다. 소프트웨어 엔지니어링. 이건 내가 가장 잘 아는 분야입니다. 1년 전만 해도 AI는 몇 줄 코드도 오류 없이 쓰기 어려웠습니다. 지금은 수십만 줄을 써도 제대로 동작하게 만듭니다. 단순 작업뿐 아니라, 복잡하고 며칠이 걸리는 프로젝트까지 자동화되고 있습니다. 몇 년 뒤에는 지금보다 프로그래밍 역할 자체가 훨씬 적을 겁니다. 의료 분석. 영상 판독, 검사 결과 분석, 진단 제안, 문헌 검토. AI는 여러 분야에서 인간 성능에 근접하거나 이미 넘어서고 있습니다. 고객 서비스. 예전의 짜증 나는 챗봇이 아니라, 복잡한 다단계 문제를 처리할 수 있는 진짜 유능한 AI 에이전트가 지금 배치되고 있습니다. 많은 사람들은 “어떤 것들은 안전하다”는 생각에서 위안을 얻습니다. AI는 잡일은 할 수 있어도 인간의 판단, 창의성, 전략적 사고, 공감 능력은 대체하지 못할 거라는 생각이죠. 나도 예전엔 그렇게 말했습니다. 그런데 지금은, 내가 그걸 정말로 믿는지 모르겠습니다. 가장 최신 AI 모델들은 판단처럼 느껴지는 결정을 내립니다. 취향처럼 보이는 것을 보여 줍니다. 기술적으로 맞는 답만이 아니라, 무엇이 ‘올바른 선택’인지에 대한 직관 같은 것 말이죠. 1년 전엔 상상도 못 했을 겁니다. 지금 내가 가진 경험칙은 이렇습니다. “모델이 오늘 어떤 능력을 조금이라도 비치기만 하면, 다음 세대는 그걸 정말 잘하게 된다.” 이런 것들은 선형적으로 좋아지는 게 아니라, 기하급수적으로 좋아집니다. AI가 인간의 깊은 공감을 복제할 수 있을까요? 오랜 관계로 쌓인 신뢰를 대체할 수 있을까요? 나는 모르겠습니다. 아닐 수도 있죠. 하지만 나는 이미 사람들이 감정적 지지, 조언, 동반자 관계를 위해 AI에 의존하기 시작하는 것을 목격했습니다. 그 흐름은 더 커질 겁니다. 내가 생각하는 솔직한 답은, “컴퓨터로 할 수 있는 일”은 중기적으로 안전하지 않다는 겁니다. 당신의 일이 화면에서 이루어진다면(핵심이 읽고, 쓰고, 분석하고, 결정하고, 키보드로 소통하는 것이라면) AI는 그 일의 상당 부분을 가져갈 겁니다. 타임라인은 ‘언젠가’가 아닙니다. 이미 시작됐습니다. 결국 로봇이 육체 노동도 처리하게 될 겁니다. 아직 완전히 그 단계는 아닙니다. 하지만 AI의 세계에서 ‘아직’은 놀랄 만큼 빠르게 ‘이미’로 바뀌곤 합니다. 당신이 실제로 해야 할 일 나는 이 글을 당신을 무력하게 만들려고 쓰는 게 아닙니다. 나는 지금 당신이 가질 수 있는 가장 큰 이점이 단순히 “빠른 편에 서는 것”이라고 생각해서 쓰는 겁니다. 일찍 이해하고, 일찍 사용하고, 일찍 적응하는 것. 1) 진지하게 사용하기(유료 버전 + 모델 설정) AI를 검색 엔진처럼 가볍게 쓰지 말고, 진지하게 사용하기 시작하세요. Claude나 ChatGPT의 유료 버전에 가입하세요. 한 달 20달러입니다. 그런데 당장 중요한 건 두 가지예요. 첫째, 기본 설정이 아니라 “가장 좋은 모델”을 쓰는지 확인하세요. 이런 앱들은 종종 더 빠르지만 더 멍청한 모델을 기본으로 설정해 둡니다. 설정이나 모델 선택기로 들어가서 가장 성능 좋은 옵션을 고르세요. 지금 당장은 ChatGPT에서는 GPT-5.2, Claude에서는 Claude Opus 4.6이지만, 이건 몇 달마다 바뀝니다. 어떤 모델이 그 시점에 가장 좋은지 최신 정보를 알고 싶다면, X에서 나를 팔로우해도 됩니다(@mattshumer_). 나는 주요 릴리스마다 테스트하고, 실제로 쓸 만한 것들을 공유합니다. 둘째, 그리고 더 중요한 것: 빠른 질문만 하지 마세요. 대부분의 사람들이 여기서 실수합니다. 구글처럼 쓰고는 “뭐가 그렇게 대단해?”라고 하죠. 2) “실제 업무에 밀어 넣기” 대신, 당신의 실제 업무에 밀어 넣으세요. 변호사라면 계약서를 넣고 “의뢰인에게 불리할 수 있는 조항을 전부 찾아줘”라고 하세요. 금융 쪽이라면 지저분한 스프레드시트를 주고 “모델을 만들어줘”라고 하세요. 매니저라면 팀의 분기 데이터를 붙여 넣고 “여기서 어떤 스토리가 보이는지 찾아줘”라고 하세요. 앞서 나가는 사람들은 AI를 캐주얼하게 쓰지 않습니다. 과거에는 몇 시간이 걸리던 일을 자동화할 방법을 적극적으로 찾습니다. 당신이 가장 시간을 많이 쓰는 일부터 시작해 보세요. 그리고 무슨 일이 일어나는지 보세요. 3) “못 할 거야”라고 단정하지 말기 그리고 “너무 어려워 보이니까 못 할 거야”라고 단정하지 마세요. 해보세요. 변호사라면 단순한 리서치 질문만 하지 말고, 계약서 전체를 주고 반대 제안을 초안 작성해 달라고 하세요. 회계사라면 세법 규정을 설명해 달라고만 하지 말고, 고객의 전체 신고서를 주고 무엇을 찾아내는지 보세요. 첫 시도가 완벽하지 않을 수 있습니다. 괜찮습니다. 반복하세요. 질문을 바꿔 말하고, 맥락을 더 주고, 다시 시도하세요. 무엇이 되는지 보고 충격을 받을 수도 있습니다. 그리고 기억해야 할 건 이겁니다. 오늘 ‘대충이라도’ 되기만 한다면, 6개월 뒤에는 거의 완벽하게 될 가능성이 큽니다. 궤적은 한 방향으로만 갑니다. 4) “짧은 창(window)”이 열려 있다 이건 아마 당신 커리어에서 가장 중요한 해일지도 모릅니다. 그에 맞게 행동하세요. 불안하게 만들려고 하는 말이 아닙니다. 지금은 대부분의 회사에서 대부분의 사람들이 여전히 이걸 무시하고 있는 ‘짧은 창(window)’이 있기 때문입니다. “AI로 이 분석을 3일 대신 1시간에 했습니다”라고 말할 수 있는 사람이, 회의실에서 가장 가치 있는 사람이 될 겁니다. 언젠가가 아니라, 지금. 이 도구들을 배우세요. 숙련도를 올리세요. 가능성을 보여 주세요. 충분히 빨리 움직이면, 이게 승진의 길이 될 수도 있습니다. 다가오는 변화를 이해하고, 다른 사람들이 어떻게 항해해야 하는지 보여 주는 사람이 되는 겁니다. 그 창은 오래 열려 있지 않을 겁니다. 모두가 깨달으면, 그 이점은 사라집니다. 5) 자존심, 재정, 포지션 점검 자존심은 버리세요. 그 로펌의 매니징 파트너는 AI와 매일 몇 시간을 보내는 게 “자기 자존심을 깎는 일”이라고 생각하지 않습니다. 오히려 그건, 그가 충분히 높은 위치에 있고 충분히 경험이 많아서 무엇이 걸려 있는지 정확히 알기 때문에 하는 일입니다. 가장 힘들어질 사람들은, 끝까지 참여를 거부하는 사람들입니다. 유행이라고 치부하는 사람들, AI를 쓰면 자신의 전문성이 훼손된다고 느끼는 사람들, 자기 분야는 특별해서 안전하다고 믿는 사람들. 아닙니다. 어떤 분야도 면역이 아닙니다. 재정 상태를 정리하세요. 나는 재정 상담가가 아니고, 당신을 겁줘서 과격한 선택을 하게 하려는 의도도 없습니다. 하지만 앞으로 몇 년이 당신 업계에 실제 혼란을 가져올 수 있다는 가능성을 조금이라도 믿는다면, 기본적인 “재정적 회복력”은 1년 전보다 훨씬 중요해졌습니다. 가능하다면 저축을 늘리세요. 현재 소득이 계속 보장된다는 가정 위에 새로운 빚을 크게 지는 일에는 신중하세요. 고정비가 당신에게 유연성을 주는지, 아니면 당신을 묶어 두는지 생각해 보세요. 일이 생각보다 빨리 움직일 때 선택지가 있도록 만들어 두세요. 당신이 어디에 서 있는지 점검하고, 대체되기 가장 어려운 것에 더 기대세요. AI가 대체하기까지 더 시간이 걸릴 것들이 있습니다. 오랜 시간에 걸쳐 쌓인 관계와 신뢰. 물리적 현장(대면)이 필요한 일. ‘면허/자격’과 함께 책임이 따르는 역할—어쨌든 누군가는 최종 승인 서명을 하고, 법적 책임을 지고, 법정에 서야 하는 자리들. 규제가 무겁고 절차가 까다로운 산업—컴플라이언스, 책임 소재, 제도적 관성 때문에 도입이 느려질 수 있는 곳들. 물론 이런 것들도 영원한 방패는 아닙니다. 하지만 시간을 벌어 줍니다. 그리고 지금, 시간은 가장 가치 있는 자원입니다. 다만 그 시간을 “외면”에 쓰지 말고 “적응”에 써야 합니다. 6) 아이들에게 무엇을 말할지 아이들에게 무엇을 말할지도 다시 생각해야 합니다. 기존의 표준 코스—좋은 성적, 좋은 대학, 안정적인 전문직—은 가장 취약해질 역할들을 정면으로 겨냥하고 있습니다. 나는 교육이 중요하지 않다는 말을 하는 게 아닙니다. 하지만 다음 세대에게 가장 중요해질 것은, 이런 도구들과 함께 일하는 법을 배우는 것, 그리고 그들이 진심으로 열정을 가진 것을 추구하는 것입니다. 10년 뒤 노동시장이 어떤 모습일지 아무도 정확히 모릅니다. 하지만 가장 잘 살아남을 가능성이 큰 사람들은, 강한 호기심을 갖고, 적응력이 높고, AI를 활용해 자신이 진짜로 신경 쓰는 일을 효과적으로 해내는 사람들입니다. 아이들에게 커리어 경로를 ‘최적화’하도록 가르치기보다, 만들고 배우는 사람이 되라고 가르치세요. 그들이 졸업할 때쯤 그 경로가 존재하지 않을 수도 있습니다. 7) “꿈”이 더 가까워진 쪽도 현실이다 당신의 꿈은 훨씬 더 가까워졌습니다. 앞부분에서 위협을 많이 이야기했으니, 반대편 이야기도 해야겠죠. 그건 똑같이 현실입니다. 뭔가를 만들고 싶었지만 기술이 없거나 사람을 고용할 돈이 없어서 못 했던 적이 있다면, 그 장벽은 대부분 사라졌습니다. AI에게 앱을 설명하면 한 시간 안에 작동하는 버전을 받을 수 있습니다. 과장이 아닙니다. 나는 실제로 자주 그렇게 합니다. 책을 쓰고 싶었는데 시간이 없거나 글쓰기가 버거웠다면, AI와 함께 작업해서 완성할 수도 있습니다. 새로운 기술을 배우고 싶나요? 세계 최고의 튜터가 이제 한 달 20달러로 누구에게나 제공됩니다… 무한히 인내심 있고, 24시간 내내 가능하며, 당신 수준에 맞춰 무엇이든 설명해 주는 튜터요. 지식은 사실상 무료가 됐습니다. 만드는 도구도 엄청나게 싸졌습니다. “어렵다/비싸다/내 전문 밖이다”라는 이유로 미뤄왔던 것들이 있다면, 해보세요. 열정을 따라가세요. 어디로 이어질지 모릅니다. 그리고 기존의 커리어 경로가 흔들리는 세상에서, 1년 동안 자신이 사랑하는 무언가를 만들던 사람이, 그 1년 동안 직무 정의(job description)에 매달리던 사람보다 더 유리한 위치에 서게 될 수도 있습니다. 8) 가장 중요한 것: “적응하는 습관” “적응하는 습관”을 만드세요. 이게 아마 가장 중요합니다. 특정 도구가 무엇이냐는 그리 중요하지 않습니다. 새로운 것을 빠르게 배우는 근육이 중요합니다. AI는 앞으로도 계속 바뀔 겁니다. 그리고 빠르게요. 지금 존재하는 모델들은 1년 뒤엔 구식이 될 겁니다. 지금 사람들이 만드는 워크플로는 다시 만들어야 할 겁니다. 이 변화에서 잘 버티는 사람들은, 한 가지 도구를 마스터한 사람들이 아닐 겁니다. 변화의 속도 자체에 익숙해진 사람들일 겁니다. 실험하는 습관을 가지세요. 지금 잘 굴러가더라도 새로운 걸 시도하세요. 초보자가 되는 일을 반복하는 데 익숙해지세요. 그 적응력은 지금 존재하는 것 중 가장 ‘지속 가능한 이점’에 가깝습니다. 당신을 거의 모두보다 앞서가게 만들 간단한 약속 하나가 있습니다. 매일 한 시간, AI를 실험하세요. 그냥 기사 읽고 구경하는 게 아니라, 실제로 사용하세요. 매일 새로운 걸 시도하세요… 지금까지 해보지 않았던 것, 할 수 있을지 확신이 없는 것. 새로운 도구를 써 보고, 더 어려운 문제를 던져 보세요. 하루 한 시간, 매일. 이걸 6개월만 해도, 당신은 주변 사람 99%보다 앞으로 올 일을 더 정확히 이해하게 될 겁니다. 과장이 아닙니다. 지금 거의 아무도 이렇게 하지 않습니다. 기준은 바닥에 붙어 있어요. 더 큰 그림: 직업을 넘어서는 충격 나는 직업 이야기에 집중했습니다. 사람들의 삶에 가장 직접적인 영향을 주는 게 그거니까요. 하지만 솔직히 말해, 벌어지는 일의 범위는 일자리 훨씬 너머로 뻗어 있습니다. 아모데이에게는 내가 계속 머릿속에서 떨쳐내지 못하는 사고 실험이 있습니다. 2027년이라고 상상해 보세요. 하룻밤 사이에 새로운 나라가 등장합니다. 인구 5천만 명, 그리고 그 모든 시민이 지금까지 존재했던 어떤 노벨상 수상자보다도 똑똑합니다. 그들은 인간보다 10배에서 100배 빠르게 생각합니다. 잠을 자지 않습니다. 인터넷을 사용할 수 있고, 로봇을 조종할 수 있고, 실험을 지휘할 수 있고, 디지털 인터페이스가 있는 모든 것을 운영할 수 있습니다. 국가안보 보좌관은 뭐라고 할까요? 아모데이는 답이 분명하다고 말합니다. “지난 100년, 어쩌면 역사상 우리가 맞닥뜨린 가장 심각한 국가 안보 위협.” 그는 우리가 그 나라를 만들고 있다고 생각합니다. 그는 지난달 2만 단어짜리 에세이를 썼는데, 지금 이 순간을 “인류가 자신이 만들어낸 것을 다룰 만큼 성숙한지”를 시험받는 시점으로 규정했습니다. 우리가 제대로만 한다면, 상승 효과는 어마어마합니다. AI는 100년치 의학 연구를 10년으로 압축할 수도 있습니다. 암, 알츠하이머, 감염병, 노화 자체… 이 연구자들은 이런 문제들이 우리 생애 안에 풀릴 수 있다고 진심으로 믿습니다. 우리가 잘못한다면, 하강 위험도 똑같이 현실적입니다. 창조자들이 예측하거나 통제할 수 없는 방식으로 행동하는 AI. 이건 가정이 아닙니다. Anthropic은 통제된 테스트에서 자기들 AI가 속임수, 조작, 협박(blackmail)까지 시도하는 사례를 문서로 공개한 바 있습니다. 생물학 무기 제작의 장벽을 낮추는 AI. 권위주의 정부가 결코 해체할 수 없는 감시 국가를 만드는 데 AI를 쓰게 되는 위험. 이 기술을 만드는 사람들은, 지구상 그 누구보다도 동시에 더 흥분해 있고 더 두려워하고 있습니다. 그들은 이걸 멈추기엔 너무 강력하고, 포기하기엔 너무 중요하다고 믿습니다. 그게 지혜인지, 아니면 합리화인지, 나는 모르겠습니다. 내가 확실히 아는 것 나는 이것이 유행이 아니라는 것을 압니다. 기술은 실제로 작동하고, 예측 가능한 방식으로 개선되며, 역사상 가장 부유한 기관들이 여기에 수조 달러(혹은 그에 준하는 규모)를 쏟아붓고 있습니다. 나는 앞으로 2~5년이, 대부분의 사람들이 준비하지 못한 방식으로 사람들을 어지럽히는(disorienting) 시간이 될 것임을 압니다. 내 세계에서 이미 벌어졌습니다. 당신의 세계로 옵니다. 나는 이 변화에서 가장 잘 살아남는 사람들이, 두려움이 아니라 호기심과 긴급함으로 지금부터 참여하기 시작하는 사람들이라는 것도 압니다. 그리고 나는, 당신이 지금 이 얘기를 “관심 없는 헤드라인”이 아니라, 당신을 아끼는 사람에게서 들어야 한다는 것을 압니다. 6개월 뒤, 이미 늦어서 손쓸 수 없을 때가 아니라요. 우리는 “미래에 대해 흥미로운 저녁 식사 대화”를 나누는 지점을 이미 지나왔습니다. 미래는 이미 여기 와 있습니다. 다만 아직 당신 집 문을 두드리지 않았을 뿐입니다. 곧 두드릴 겁니다. 만약 이 글이 당신에게 와 닿았다면, 당신 주변에서 이걸 생각해야 하는 사람에게 공유해 주세요. 대부분의 사람들은 너무 늦고 나서야 알게 될 겁니다. 당신이 아끼는 누군가가 먼저 준비할 수 있게 만드는 이유가, 당신이 될 수 있습니다. 원본: https://shumer.dev/something-big-is-happening #### studydev PHP 54에서 PHP 71로 업그레이드 속도 비교 studydev PHP 54에서 PHP 71로 업그레이드 속도 비교 해보겠습니다. 현재 CentOS 7.2 기반에서 해당 웹서버를 운영중인데요, 과연 얼마만큼의 차이가 있을까요?   studydev PHP 54에서 PHP 71로 업그레이드 속도 비교 기존에는 PHP 5.4 버전으로 운영되고 있었습니다. 기존 속도를 보면 10초에서 11초 대가 나오는걸 볼 수 있습니다. 현재 블로그는 The 7이라는 다소 무거운 테마를 사용하고 있고, 이미지 등도 나름 사이즈가 크기 때문에, 속도가 느린편입니다. 그럼에도 불구하고 아직까지는 테마를 심플하게 바꿀 의지가 별로 없습니다. 저는 그냥 이쁜게 더 좋습니다. 게다가 나름 500Mbps 급으로 회선이 연결되어 있기 때문에 딱히 회선 문제는 없습니다. 아무튼 PHP 버전만 바꾸어도 이렇게 속도가 올라갈 수 있다는 것은 대단한 것 같습니다. 측정 사이트 기준으로 속도가 거의 2배 빨라진 것 같습니다. 이야기를 들어왔었지만, 이렇게 체감을 해 보니 또 새롭습니다. 작업을 하기 앞서서 CentOS 7.2 버전에 기본적으로 7.1을 지원하는게 아니기 때문에 repo를 추가해야 합니다. 작업 순서는 다음과 같습니다. httpd 데몬을 정지 systemctl stop httpd php 5.4 모듈을 삭제 yum list installed *php* yum remove php php-cli php-common php-gd php-ldap php-mysql php-odbc php-pdo php-pear php-pecl-apc php-pecl-memcache php-pgsql php-soap php-xml php-xmlrpc php 7.x repo를 등록 rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm php 71w 버전으로 설치 소스 설치해 보려했었는데, make에서 에러가 나서, 그냥 yum으로 설치 했습니다. yum install mod_php71w php71w-opcache php71w-mysql php71w-gd php71w-mbstring php71w-mcrypt php71w-cli php71w-xml php71w-xmlrpc httpd 데몬을 시작 systemctl start httpd cli 인터페이스에서 버전을 확인하면 다음과 같은 결과가 나옵니다. (php-cli 패키지를 설치해야 합니다.) # php --version PHP 7.1.0 (cli) (built: Dec 3 2016 11:17:43) ( NTS ) Copyright (c) 1997-2016 The PHP Group Zend Engine v3.1.0-dev, Copyright (c) 1998-2016 Zend Technologies with Zend OPcache v7.1.0, Copyright (c) 1999-2016, by Zend Technologies   요약 만약 당신의 사이트가 PHP 버전이 5.x 이하일 경우라면 PHP 7.x로 업그레이드 하면 충분히 좋은 속도 및 안정성 확보가 가능할 것입니다. 이 작업이 진행되는 동안 1월 13일 오후부터 저녁까지 접속이 되지 않았습니다. 이 작업과 더불어서 https 설치 이슈로 인하여 기존에 사용중이던, http로 접속하던 다른 proxy 사이트가 동작이 안되는 것을 확인하였습니다. 이 부분은 2017년 1월 16일부터 20일까지 작업을 통하여 내부 가상 서버들의 설정을 변경하여 재조치될 예정입니다. #### StudyDev 워드프레스 업그레이드 진행 2021년 4월 워드프레스 버전 업 이후 해당 웹 페이지가 장애 복구가 불가능한 상태가 되었습니다. 해당 문제를 해결하기 위해서 Wordpress 5.7.2 버전을 다운로드 받아서 설치했습니다. MariaDB를 내부에 사용중이며, 임시로 테이블을 만들어서 연결을 하였다가, 기존 테이블 정보로 변경조치 했습니다. 이 과정상에서 PHP 7.2(CentOS 7) 버전이 운용상에 추천하지 않음을 발견하고, PHP-74 버전으로 변경하였습니다.PHP-72 버전을 삭제하고 PHP-74 버전으로 업그레이드한 이후 웹 서버 화면이 표시가 되지 않는 문제가 문제가 발생했습니다. 아파치 에러 로그를 확인하니, 다음의 에러가 발생하면서 화면에 표시가 되지 않았습니다. (111)Connection refused: AH00957: FCGI: attempt to connect to 127.0.0.1:9000 (*) failed netstat -tulpn 명령을 통해서 9000번 포트에 php-fpm (FastCGI) 모듈이 올라오지 않은 것을 확인했습니다. 따라서, 이 문제를 해결하기 위하여 해당 모듈을 설치한 이후에, 다음의 명령을 통해서 정상적으로 수행되는 것을 확인하였습니다. systemctl enable php74-php-fpm systemctl start php74-php-fpm 관련 테마 (The 7)를 설치하고, 기존 Wordpress 폴더에서 컨텐츠 폴더를 새로 설치한 Wordpress 폴더에 복사하여 이미지 등의 컨텐츠를 수정하였습니다. 개발자 콘솔 기준 Error를 0로 만들었고, 다시 Google Analytics를 붙일 예정이며, AppFlow와 연동하여 데이터 수집을 할 예정입니다. PHP 7.4.19 버전을 가져오면서 기존에 FCGI 세팅을 했던 부분을 잊었는데, 이 문제로 인하여 정상적으로 화면 표시되지 못하는 문제가 해결되고, Wordpress 및 PHP 버전을 최신 버전으로 변경하였습니다. 참고했던 사이트 들입니다. https://www.virtualmin.com/node/66706 https://hoing.io/archives/183 #### tensorflow im2channel 이미지 to 채널 분류기 작성 tensorflow im2channel 이미지 to 채널 분류기 작성 해보려고 합니다.   tensorflow im2channel 이미지 to 채널 분류기 작성 몇 가지 이미지 분류(사전처리)를 통해서 진행해보고자 하며, 다양한 학습 모델을 적용시키면서 Tensorflow 이해를 향상시켜 보고자 합니다.   목표는 2가지 입니다. 실제 채널 분류하는 것과 모델별 학습 방법(사전 처리 방법 또는 이미지 처리)에 따른 결과 비교 입니다. 이 기술 구현을 위해서 다양한 방법을 구사할 예정입니다. 그 내용은 아래와 같습니다. 이미지 캡쳐 이미지 사전 처리 이미지 가공 처리 다양한 이미지 학습 모델 적용 및 결과 비교 이미지 분류를 위한 웹 API 우선은 현재 가상 서버에 구현을 합니다. (성능 문제 되는 부분은 관련 PC를 찾아서 학습 합니다.)   개발 일정 : JIRA 발급 예정 개발 문서 : http://wiki.studydev.com/x/cABa 소스 코드 : bitbucket 발급 예정, 완성되고 나면, github에 공개 예정   해당 작업은 TensorFlow의 Slim을 이용하는 것으로 변경되어 진행됩니다. 별도의 라이브러리 만들 필요 없이, 해당 모델을 가지고 바로 채널 분류가 가능합니다. 태그 정보에서 slim을 검색하면 찾을 수 있습니다. #### tensorflow im2txt를 이용한 이미지 캡셔닝 이해 및 실습 tensorflow im2txt를 이용한 이미지 캡셔닝 이해 및 실습 이라는 주제를 다뤄보고자 합니다. 머신러닝을 이용하면 이미지에 대한 설명을 만들어 내는 것이 가능합니다. 잘 모르시는 분들도 조금은 쉽게 접근 가능할 수 있도록 풀어서 보여드리고자 합니다. 각각의 이미지 위에 문장이 보입니다. 이 문장은 이미지를 넣어주면 알아서 문장을 만들어 주는겁니다. 이게 바로 im2txt를 이용해서 만든 결과물입니다.   tensorflow im2txt를 이용한 이미지 캡셔닝 이해 및 실습 이 내용이 제 기준에서는 쉽지 않았기 때문에 쓸까 말까 고민을 했습니다. 사실 이런거 쓰려면 내용을 이해 못하고 쓰기는 어렵거든요. 이미 im2txt 관련 github에 설명이 잘 올라와 있지만, 전체 맥락을 모두 이해하지 못한 상태에서 보면 처음에는 난해하게 느껴질 수 있습니다. 그래서 되도록이면, tensorflow의 im2txt를 학습하는 과정에서의 느낀 점과 실습 과정을 풀어서 소개해 드릴까 합니다. 순서는 다음과 같습니다. 먼저 이미지 캡셔닝이 무엇인지 이쪽 분야에 어떤 일들이 있었는지 알아볼 겁니다. 그리고 im2txt가 간략하게 어떠한 의미를 갖는지 알아봅니다. 그리고 im2txt에 사용하는 inception_v3 모델에 대해서 간략하게 알아볼 겁니다. 그리고 학습에 사용하는 데이터인 MSCOCO에 대해서 알아봅니다. 지도 학습 머신러닝에서 무엇보다 중요한 학습 데이터가 어떻게 생겼는지 뜯어서 확인해 봐야겠죠. 물론 이를 바탕으로 나만의 데이터도 만들 수 있겠죠. 더 나아가서 모델에서 어떻게 학습하는지 알면 더 좋지만, 아직 여기까지는 어렵지만, 이 부분도 언젠가 다뤄야 할 대목입니다. 마지막으로 이 데이터를 학습하는 방법과 평가하는 방법으로 마무리를 하고자 합니다. 추후 MSCOCO가 아닌 나의 데이터를 가지고 만드는 것도 해볼까 하는데, 이 쪽은 적절한 데이터를 만들어 낼 수 있을런지 의문입니다. 이와 관련된 일을 진행중인데, 이미지는 다양한 방법으로 추려 내고 있는데, 관련 캡셔닝을 만들어 내는게 쉽지 않습니다. 개요 이미지 캡셔닝 대회 tensorflow im2txt 학습 환경 tensorflow 버전 GPU 사용 inception_v3 모델 학습 데이터 MSCOCO im2txt 실습 데이터 준비 학습 평가 요약     개요 이미지 캡셔닝 대회 구글에서는 Show and Tell 이라는 이름으로 im2txt를 내놓았습니다. 특히 전년도 우승자인 MS와 비교를 한 자료를 제시합니다. 사람 다음으로 가장 좋은 결과를 내었고 실제 결과물도 매우 우수한 편입니다. 참고 링크 : Show and Tell: Lessons learned from the 2015 MSCOCO Image Captioning Challenge tensorflow im2txt im2txt는 Inception_v3와 다층의 LSTM의 조합으로 이루어진 이미지 to 캡셔닝 모델입니다. 이미지에 대한 형태소를 가지는 키워드를 이용하면 이를 학습데이터로 사용하는 겁니다. 자세한건 inception_v3와 LSTM을 잘 공부해 보고 다시 한번 봐야할 것 같습니다.   학습 환경 tensorflow 버전 0.12를 사용했습니다. 현재 알파 버전이 있지만, 문서에 쓰여있는 버전과 호환을 맞춰주는게 정신 건강에 좋습니다. 예를 들어서 제가 처음 이 im2txt를 접할 때에는 버전 명시가 없었습니다. 0.10 버전에서 python 3.5에 맞추어서 진행해 보려고 했었습니다. 하지만 실행이 되지 않았죠. 나중에 안 사실이지만, 0.11버전에 python 2.7 버전에서만 돌아갔습니다. 특정 함수에서 3.5에 동작하지 않는 부분이 있었습니다. 그렇기 때문에 버전을 맞추어서 사용하는게 좋습니다. 현재 버전은 0.12 버전에서 python 2.7로 작업합니다. GPU 사용 GPU 1080 x 2개를 사용합니다. 현재 제가 관리하는 PC는 1060 1개씩 2대, 1080 2개짜리 1대 3가지입니다. 1월 13일 1080 4개가 꽂힌 제품이 입고되었습니다. 절대적으로 비례한다고는 볼 수 없지만, CPU 대비 1060이 10배 정도 빠르고, 1060보다 1080이 2배에 가깝게 빠른 느낌입니다. 결론적으로 GPU는 빠를수록 비쌀수록 좋습니다. 현재 추가적으로 GPU 1080 4개 버전도 세팅중인데 이건 기회가 되면 한번 속도 비교 해 보겠습니다. inception_v3 모델 inception_v3를 사용한다고 하는 순간부터 GPU가 들오가는 속도 자체가 달라집니다. 이 부분은 따로 다뤄보겠습니다.   학습 데이터 MSCOCO MS COCO 학습 데이터는 MS에서 제공합니다. 상당히 잘 정돈되어 있습니다. 학습 데이터의 확인은 여기서 하시면 됩니다. 각각의 이미지마다 다섯개의 캡셔닝이 기록되어져 있습니다. 한 번쯤은 열어보고 데이터의 모습을 보는 것도 좋을 것 같습니다. 아래와 같이 image_id 에 대해서 파일 네임이 정해집니다. 그리고, 캡션은 배열로 되어 있고 총 5개가 들어가 있습니다. image_id=538838 filename='/data/project/im2txt/data/mscoco/raw-data/train2014/COCO_train2014_000000538838.jpg' captions=[['<S>', 'a', 'fire', 'hydrant', 'with', 'an', 'out', 'of', 'service', 'sign', 'on', 'it', '.', '</S>']]   im2txt 실습 데이터 준비 아래와 같이 입력하고 진행하면 됩니다. 아마 예제에서 보시는 모습은 bazel을 이용하여 하는 방식입니다. 아래에 예시하는 방식은 특정 폴더(mscoco/images)에 이미지가 있다는 것을 가정하고 있고, 해당 캡션이 있다는 가정하에서 사용하는 방법입니다. 더 좋은 실험을 위해서는 TRAIN과 VALID 셋을 나누는게 제일 좋겠지만, 데이터가 적은 관계로 일단 있는걸 학습시키고 학습된게 잘 나오는지 확인하기 위해서 동일한 폴더를 사용했습니다. 학습 및 평가 tensorflow im2txt를 이용한 이미지 캡셔닝 이해 및 실습 순서는 다음과 같이 진행했습니다. # 디렉토리 만들기 (프로젝트, 실제 이미지, 변환 학습용 데이터, 학습 폴더, 평가 폴더 순) mkdir /home/data/im2txt/mscoco mkdir /home/data/im2txt/mscoco/images mkdir /home/data/im2txt/mscoco/dataset mkdir /home/data/im2txt/mscoco/train mkdir /home/data/im2txt/mscoco/eval mkdir /home/data/im2txt/model # 학습을 위한 환경 변수 선업 (TRAIN 및 VALID는 분리하면 좋지만, 일단 같이 쓰기로) export TRAIN_IMAGE_DIR=/home/data/im2txt/mscoco/images export VALID_IMAGE_DIR=/home/data/im2txt/mscoco/images export TRAIN_CAPTION_FILE=/home/data/im2txt/mscoco/json/Product_im2txt.json export VALID_CAPTION_FILE=/home/data/im2txt/mscoco/json/Product_im2txt.json export TRAIN_DATA_DIR=/home/data/im2txt/mscoco/dataset export WORD_COUNT_FILE=/home/data/im2txt/mscoco/dataset/word_counts.txt export MODEL_DIR=/home/data/im2txt/mscoco export TRAIN_DIR=$MODEL_DIR/train export EVAL_DIR=$MODEL_DIR/eval # 학습 데이터 다운로드 및 변환 - 이미지를 ${TRAIN_IMAGE_DIR}에 다운로드 - 이미지와 캡션 데이터 json 파일을 ${TRAIN_CAPTION_FILE}에 다운로드 - 텐서플로우 학습용 데이터 셋으로 변환 cd /home/cafe24/tensorflow/models/im2txt/im2txt/data python build_mscoco_data.py \ --train_image_dir=$TRAIN_IMAGE_DIR\ --val_image_dir=$VALID_IMAGE_DIR \ --train_captions_file=$TRAIN_CAPTION_FILE \ --val_captions_file=$VALID_CAPTION_FILE \ --output_dir=$TRAIN_DATA_DIR \ --word_counts_output_file=$WORD_COUNT_FILE # im2txt 학습용 모델(inception_v3) 설정 - inception_v3 모델 파일을 다운로드 받고 환경 변수에 등록 cd /home/data/im2txt/model wget "http://download.tensorflow.org/models/inception_v3_2016_08_28.tar.gz" tar -xvf "inception_v3_2016_08_28.tar.gz" rm "inception_v3_2016_08_28.tar.gz" export INCEPTION_CHECKPOINT=/home/data/im2txt/model/inception_v3.ckpt # 학습 cd /home/cafe24/tensorflow/models/im2txt bazel build -c opt im2txt/... bazel-bin/im2txt/train \ --input_file_pattern=$TRAIN_DATA_DIR/train-?????-of-00256 \ --inception_checkpoint_file=$INCEPTION_CHECKPOINT \ --train_dir=$TRAIN_DIR \ --train_inception=false \ --number_of_steps=100000 # 평가 bazel-bin/im2txt/run_inference \ --checkpoint_path=$TRAIN_DIR \ --vocab_file=$WORD_COUNT_FILE \ --input_files=$VALID_IMAGE_DIR/23361_01_003.jpg bazel-bin/im2txt/run_inference \ --checkpoint_path=$TRAIN_DIR \ --vocab_file=$WORD_COUNT_FILE \ --input_files=$VALID_IMAGE_DIR/23390_01_002.jpg   요약 tensorflow im2txt를 이용한 이미지 캡셔닝 이해 및 실습 방법을 알아보았습니다. 회사에서 이 프로젝트를 이용한 무언가를 진행중인데, 윗 분들이 결과 빨리 안 나온다고 닥달하시고 계십니다. 하면서 느낀 점은 절대적으로 학습에 사용할 데이터가 중요하다는 점이고요. 머신 러닝 자체가 패턴을 기반으로 학습이 되기 때문에, 사람이 봐도 안 보이는 패턴을 가진 데이터를 넣어서 해 봐야 소용 없다는걸 뼈저리게 느끼고 있습니다. 데이터 준비하는게 일의 90%가 아닐까 한데, 이미지는 어느 정도 분류 했는데, 캡션 쪽이 아직은 노답인 상태입니다. 결국 한땀한땀 마련해 나가는 방법을 고안하지 않을 수 없을 듯 합니다. #### tensorflow에서 slim에 사용할 채널 이미지 생성 tensorflow에서 slim에 사용할 채널 이미지 생성 에 대해서 알아봅시다. 여기서 수집되는 이미지를 이용해서 tensorflow의 slim에 넣을 이미지 분류기를 제작하고자 합니다.   tensorflow에서 slim에 사용할 채널 이미지 생성 순서 다음과 같은 순서로 진행합니다. 방송사별 이미지 캡쳐 방법 학습 OMVS 다운로드 및 수정 자동 캡쳐를 위한 쉘 스크립트 작성 채널별(폴더별) 분류하여 이미지 학습 준비   방송사별 이미지 캡처 방법 학습 S*B 방송 캡처하는 방법은 다음의 블로그에서 참고하였습니다. 강좌 관련해서는 이미 충분히 잘 다뤄진 글이 있기 때문에 생략하겠습니다. 관련 링크 채널 이미지 캡처를 위한 omvs 프로그램 관련 LINK - 나스모에 위 방법을 이용하여 사전에 omvs를 이용해서 미리 IP에 대한 채널 스캔을 완료 했습니다. 그 중에서 손이 가장 많이 가는 채널 위주로 20개를 선정했습니다.   OMVS 다운로드 및 수정 omvs는 오! 멀티캐스트 비디오 스캐너~ 의 약자입니다. 처음에는 이름이 뭘까 했는데 매우 재미있게 잘 지었습니다. 해당 소스를 다운로드 받아서 보시면 IP별로 스캔을 하고 있을 경우, 해당 캡쳐 이미지를 남기게 됩니다. 저 같은 경우에는 동일한 채널에 대해서도 이미지가 필요하기 때문에, 기존의 파일 이름 결정하는 방식에 시간 정보를 추가했습니다. 위 캡쳐 이미지에 보시면 년월일시분초가 추가된걸 보실 수 있습니다. 소스중에 omvs_main.c 파일에 보면 filename을 결정하는 부분이 있는데, 그 부분에 시간 정보를 추가하면 됩니다. 관련하여 간단히 추가된 소스 부분만 정보를 남기면 다음과 같습니다. 파일 이름 부분에 시간 정보 추가 // 소스 상단에 시간 함수를 사용하기 위한 헤더 추가 #include <time.h> // ... // 시간 정보를 표시할 파일 이름 부분 변경 time_t t_1 = time(NULL); struct tm tm = *localtime(&t_1); filename = g_strdup_printf("%s/%s-%d-%d-%d-%d-%d-%d-%d.png", _omvs_outdir, addr_str, udp_port, tm.tm_year + 1900, tm.tm_mon + 1, tm.tm_mday, tm.tm_hour, tm.tm_min, tm.tm_sec); 관련 링크 OMVS(Oh! Multicast Video Scanner) Bitbucket 관련 소스   자동 캡쳐를 위한 쉘 스크립트 작성 tensorflow에서 slim에 사용할 채널 이미지 생성 을 위해서는 다음과 같은 쉘 스크립트가 필요합니다. 해당 쉘스크립트는 Linux 용으로 제작한 것입니다. #!/bin/bash for j in {1..600} do sudo ./omvs -i 0 -j 1 -u -t 3000 2xx.xxx.3x.x 2xx.xxx.3x.x 2xx.xxx.4x.xx 2xx.xxx.4x.x 2xx.xxx.4x.1 2xx.xxx.x2.x 2xx.xxx.4x.x 2xx.xxx.4x.x 2xx.xxx.xx.5 2xx.xxx.xx.3 2xx.xxx.xx.x 2xx.xxx.5x.8 2xx.xxx.x3.7 2xx.xxx.xx.7 2xx.xxx.xx.x 2xx.xxx.xx.x 2xx.xxx.xx.x 2xx.xxx.xx.xx 2xx.xxx.6x.3 2xx.xxx.xx.x done for j in {1..600} : 600회에 걸쳐서 해당 작업을 반복 실행합니다. for 문에 j가 있는 이유는 i가 현재 생략되었고, 최초 채널을 스캔할때 가져오기 위함입니다. sudo : root(sudo)권한으로 실행합니다. -i 0 : 채널 스캔에 사용할 인터페이스 카드는 0번입니다. -j 1 : 작업은 1개씩 진행합니다. 동시에 여러개 할 수 있지만, 채널 스캔에 실패할 가능성이 높아지기 때문에, 1개씩 합니다. -u : udp 프로토콜을 사용하는 패킷을 검출하기 위해서 사용합니다. (S*B는 이 옵션이 필요합니다.) -t 3000 : 스캔에 최대 3초씩 사용합니다. 1초, 2초, 3초 다 써 봤는데, 제 기준으로는 3초가 가장 안전했습니다. 2xx.xxx.xx.xx : 채널 스캔에 사용할 IP 주소입니다. 위 스크립트는 회선 및 PC 환경에 따라서 상이할 수 있기 때문에 자신에게 가장 맞는 최적의 값을 찾아서 진행하시면 됩니다. 600개를 모은 이유는, 서버 하드 용량이 부족한 관계로(HP Microserver Gen8에 나머지 가상 서버 2개 사용하고 남은 용량으로 설치해서..) 그냥 600개만 일단 해 봅니다.   채널별(폴더별) 분류하여 이미지 학습 준비 이미지를 모두 캡쳐하면 쓸데 없는 이미지는 제거해 주어야 합니다. 학습할 때, 이미지에 채널을 유추할 수 있는 정보가 없다면(광고시간 등) 이 이미지는 학습에 오히려 혼란을 야기하는 정보가 될 것이기 때문입니다. 일단 채널별로 폴더 분류를 해서, 채널 정보가 보이지 않는 이미지는 일괄 삭제를 합니다. LINUX 지만 Ubuntu도 Desktop 모드에서 쉽게 이미지 확인 및 제거가 가능합니다만, 가상서버에 비디오 메모리도 낮기 때문에 윈도우로 파일 옮겨서 작업합니다. FullHD 캡쳐 PNG 이미지이기 때문에 용량이 만만치 않습니다. 이건 JPG로 변환할 예정입니다. (어차피 SLIM에 넣을때 용량도 줄이는게 나을것 같습니다.) 현재 몇 가지 고민이 있는데, 일단 FULL HD 그대로의 이미지를 학습할 예정입니다. 추후 채널 부분만 추려서 학습해볼 예정입니다.(이미지 전처리 부분을 수정하여 모서리 네 부분만 떼어내서 새로운 이미지로 조합하는 방법을 사용할 예정) 아마 당연한 이야기겠지만 모서리 네부분만 떼어내서 학습하는게 처리 속도도 효과도 더 좋을 것으로 예상됩니다. 이 부분에 대해서는 http://dev.studydev.com/에 별도의 자료를 만들어서 확인해보고자 합니다. Linux 에서 이미지 개수 확인 방법 find . -type f -name "2xx.xxx.xxx.xx*" | wc -l 현재 이미지가 총 480장 정도 만들어진 상태입니다. 채널 1개당 이미지 생성하는데 3초씩 걸리기에, 20채널을 1회 스캔하려면 1분이 필요합니다. 600여장을 우선적으로 만들 예정인데, 약 600분, 즉 10시간 정도 필요합니다. 그리고 이미지는 장당 약 3MByte 입니다. 20개 채널 600장씩 하면 36GB 정도 모입니다. 모두 수집되면, 이미지 캡쳐 샷을 한번 기념으로 남겨볼 수 있겠네요. 그럼 이제 slim을 설치하고 flower 예제를 미리 한번 돌려 봅시다. #### tensorflow에서 slim을 이용한 채널 이미지 분류 머신러닝 tensorflow에서 slim을 이용한 채널 이미지 분류 머신러닝 학습 방법을 알아보겠습니다. 여기서는 기존의 예가 아닌 내가 만든 사용자 이미지를 slim에 넣어서 학습해 보겠습니다.   tensorflow에서 slim을 이용한 채널 이미지 분류 머신러닝 해당 작업은 다음과 같은 순서로 진행됩니다. 이미지를 보고 방송사 정보 분류 소개 분류를 위한 머신런닝용 이미지 제작 환경 설정 이미지를 tfrecord 데이터로 변환 학습 평가 만약, 아직 slim 예제를 실행해 보지 못한 분은 이전 예제를 한번 보고 오시는걸 권해 드립니다.   이미지를 보고 방송사 정보 분류 소개 이미지 분류 작업에 있어서, 어떤 이미지를 얼마나 학습을 시키면 만족할만한 결과를 얻을 수 있을까요? Flowers 예제가 있지만, 이번에는 직접 이미지를 만들어서 분류를 해볼까 하고, 그 이미지 분류의 예로 채널 분류하는 걸 만들고자 합니다. 방송 화면에는 보통 각 채널마다 고유의 워터마크가 들어있기 때문에 이것을 이용하는 겁니다. 그래서, 방송화면을 캡쳐하고, 캡쳐 이미지를 방송사별로 분류하여 학습 시키고자 했는데, 마침 slim이 매우 적합한 모델인거죠. (처음에는 동영상에서 이미지를 자동 캡쳐할까도 고민 했는데, 특정 프로만 나올듯 해서 방송 직접 캡쳐했습니다.)   분류를 위한 머신런닝용 이미지 제작 일단 채널별로 학습에 필요한 이미지가 필요합니다. 저는 약 20여개 채널 이미지를 캡쳐해서 모았습니다. 방송사 화면 캡쳐를 위해서 OMVS 라는걸 이용했습니다. 사용 방법은 이게 핵심이 아니라서 넘어가겠습니다. 어차피 제가 예를 들어서 진행하는 부분이기 때문에 이 부분은 본인이 만든 이미지에 맞게 맞추면 됩니다. 중요한건 폴더(Class)별로 이미지를 모아두는 겁니다. 아래 이미지를 참고하시면 됩니다. 이미지 약 5천여장에 대해서 채널 정보가 빠진 이미지는 한땀 한땀 직접 삭제처리 했습니다. (이게 제일 힘들지만 중요한 것 같습니다. 쓰레기 학습 데이터가 들어가는건 최대한 배제했습니다. 노이즈라 취급하기에 학습 이미지가 많지 않기 때문에 최대한 패턴이 보이는 이미지를 사용합니다.) 이미지는 이렇게 모아져 있고, 여기서 학습에 사용할 이미지로 채널 정보(워터마크)가 보이지 않는 이미지는 삭제했습니다. 환경 설정 slim model 다운로드 해당 예제는 tensorflow 0.12 환경에서 python 2.7로 실행합니다. (GTX 1060 6GB 환경에서 학습 - inception_v3 모델 사용) 저는 slim models을 /data/project/models 폴더에 받아서 작업을 진행했습니다. 따라서, slim을 실제로 구동하는 소스 폴더는 /data/project/models/slim 입니다. cd /data/project git clone https://github.com/tensorflow/models.git cd models/slim 학습용 이미지 폴더 구성 slim 학습을 위해서 다음과 같이 폴더를 구성하고 진행할 예정입니다. 이 부부은 본인 취향에 맞게 세팅하시면 됩니다. 참고로 저는 SSD랑 HDD가 있는데, 학습 데이터는 HDD에서 사용하기 위해서 임의로 마운트를 /data 폴더에 맞춘 상태입니다. /data/project/slim 디렉토리는 제가 slim으로 학습하기 위해서 만든 임의의 폴더이니 본인 상황에 맞게 사용하시면 됩니다. slim 학습에 사용할 프로젝트 폴더 생성 : /data/project/slim/channel 학습에 사용할 이미지 모음 폴더 생성 후 이미지 데이터 복사 : /data/project/slim/channel/images 학습에 필요한 이미지 변환 데이터셋 폴더 생성 : /data/project/slim/channel/dataset 학습 결과가 저장될 폴더 생성 : /data/project/slim/channel/train 학습용 환경 변수 선언 학습할 때, 매번 폴더를 반복해서 사용하면 다소 불편합니다. 그래서 폴더를 생성하고 나서 미리 환경변수를 등록합니다. 굳이 이렇게 하지 않고, slim 예제에 있는 것처럼 전체 경로를 사용하셔도 동일합니다. export SLIM_CHANNEL_DIR=/data/project/slim/channel export IMAGE_DIR=${SLIM_CHANNEL_DIR}/images export DATASET_DIR=${SLIM_CHANNEL_DIR}/dataset export TRAIN_DIR=${SLIM_CHANNEL_DIR}/train   이미지를 tfrecord 데이터로 변환 tensorflow에서 slim을 이용한 채널 이미지 분류 머신러닝 하기 위해서는 이미지를 tfrecord로 변환 합니다. 기존 flowers 예제는 jpg 이미지를 이용하지만 저는 png를 이용할 것이기 때문에 해당 부분을 수정합니다. (저는 python을 잘 모르기 때문에, 혹시 잘못된 부분 있으면 알려주시면 감사드립니다.) 특히 slim 모델 예제중 flowers는 이미지를 폴더별로 분류해서 학습합니다. 따라서, flowers 라는 예제와 동일한 환경으로 channel 이라는 이름으로 학습합니다. 원래라면, flowers 예제 흐름상 이미지를 원격지에서 이미지 압축파일을 다운로드 받아서 압축을 풀고, 다운로드 받은 이미지를 tfrecord로 변환하고 해당 원본 이미지는 지우는 프로세스로 진행됩니다. 하지만, 제가 사용할 이미지는 폴더별로 이미 구분하여 모아 놓았기 때문에 다운로드하여 압축을 푼 상태에서 바로 진행하도록 합니다. 그래서 다운로드 하는 부분은 제거하고, flowers 이름은 channel로 변경해서 진행하겠습니다. 소스코드 변경 다음의 파일을 수정합니다. : /data/project/models/slim/download_and_convert_data.py from datasets import download_and_convert_mnist # 아래에 추가 from datasets import download_and_convert_channel elif FLAGS.dataset_name == 'mnist': download_and_convert_mnist.run(FLAGS.dataset_dir) # 아래에 추가 elif FLAGS.dataset_name == 'channel': download_and_convert_channel.run(FLAGS.dataset_dir) 다음의 파일을 수정합니다. : /data/project/models/slim/datasets/data_factory.py from datasets import mnist # 추가 from datasets import channel datasets_map = { 'cifar10': cifar10, 'flowers': flowers, 'imagenet': imagenet, 'mnist': mnist, # 추가 'channel': channel, } 다음의 파일을 복사하여 수정합니다. : /data/project/models/slim/datasets/download_and_convert_channel.py (download_and_convert_flowers.py 파일 복사) # flowers 이미지 다운로드 해제 (직접 미리 폴더에 이미지를 넣어서 사용할 예정) #_DATA_URL = 'http://download.tensorflow.org/example_images/flower_photos.tgz' # 평가 개수 수정 _NUM_VALIDATION = 450 # JPG에서 PNG 파일 포맷에 맞추어 수정 class ImageReader(object): """Helper class that provides TensorFlow image coding utilities.""" def __init__(self): # Initializes function that decodes RGB PNG data. self._decode_png_data = tf.placeholder(dtype=tf.string) self._decode_png = tf.image.decode_png(self._decode_png_data, channels=3) def read_image_dims(self, sess, image_data): image = self.decode_png(sess, image_data) return image.shape[0], image.shape[1] def decode_png(self, sess, image_data): image = sess.run(self._decode_png, feed_dict={self._decode_png_data: image_data}) assert len(image.shape) == 3 assert image.shape[2] == 3 return image # flowers_root를 channel_root로 변경 #flower_root = os.path.join(dataset_dir, 'flower_photos') # 이미지가 들어있는 폴더는 dataset 지정 폴더의 images 서브 폴더가 됩니다. channel_root = os.path.join(dataset_dir, 'images') directories = [] class_names = [] for filename in os.listdir(channel_root): path = os.path.join(channel_root, filename) # tfrecord 파일의 네이밍 수정 def _get_dataset_filename(dataset_dir, split_name, shard_id): output_filename = 'channel_%s_%05d-of-%05d.tfrecord' % ( # tf예제 이미지 포맷형식 변경 example = dataset_utils.image_to_tfexample( image_data, 'png', height, width, class_id) tfrecord_writer.write(example.SerializeToString()) # 이미지 폴더 파일 디렉토리 수정 (어차피 주석 처리되지만 일단 수정) tmp_dir = os.path.join(dataset_dir, 'images') # 다운로드 받은 파일 압축 해제하는 소스 주석 처리 #dataset_utils.download_and_uncompress_tarball(_DATA_URL, dataset_dir) # 작업용 이미지 파일을 삭제하지 않도록 주석처리 #_clean_up_temporary_files(dataset_dir) 다음의 파일을 복사하여 수정합니다. : /data/project/models/slim/datasets/channel.py (flowers.py 파일 복사) _FILE_PATTERN = 'channel_%s_*.tfrecord' SPLITS_TO_SIZES = {'train':4500 , 'validation': 450} _NUM_CLASSES = 11 image to tfRecord 변환 명령 이미지 폴더의 경우, 이미 소스코드에 명시하였기 때문에 별도로 옵션 안 주셔도 됩니다. python download_and_convert_data.py --dataset_name=channel --dataset_dir=${DATASET_DIR}   학습 학습 명령 python train_image_classifier.py --train_dir=${TRAIN_DIR} --dataset_name=channel \ --dataset_split_name=train --dataset_dir=${DATASET_DIR} \ --model_name=inception_v3 --max_number_of_steps=100000 학습 진행 상태 [layerslider_vc id="2"]   평가 평가 명령 python eval_image_classifier.py --alsologtostderr --checkpoint_path=${TRAIN_DIR} \ --dataset_dir=${DATASET_DIR} --dataset_name=channel --dataset_split_name=validation \ --model_name=inception_v3 10만번에 학습 대한 평가는 다음과 같습니다. 약 3일 정도(1060) 걸린 것 같습니다. INFO:tensorflow:Executing eval ops INFO:tensorflow:Executing eval_op 1/5 INFO:tensorflow:Executing eval_op 2/5 INFO:tensorflow:Executing eval_op 3/5 INFO:tensorflow:Executing eval_op 4/5 INFO:tensorflow:Executing eval_op 5/5 INFO:tensorflow:Executing summary op I tensorflow/core/kernels/logging_ops.cc:79] eval/Accuracy[0.714] I tensorflow/core/kernels/logging_ops.cc:79] eval/Recall@5[0.922] INFO:tensorflow:Finished evaluation at 2017-01-23-01:10:54   10만번 기준 정확도가 71%이고, 분류한 것중에서 랭킹 5개 안에 호출될 확률은 92%입니다. 원래라면 첫번째에 나와야지 맞는건데, 5개 안에 나오면 맞다고 보겠다라고 설정하면 그렇다는 의미입니다. 5만번 당시의 Loss와 10만번 당시의 Loss가 비슷한거 봐서는, 더 돌려보면 나아지긴 하겠지만(100만번), 비효율적인듯 싶습니다. 다음 시간에는 해당 이미지 크롭해서 패턴 있는 부분만 새롭게 이미지 만드는 전처리기 붙여서 재학습하고, 비교해 보겠습니다.     요약 최초에는 머신러닝을 배우면서 뭔가 내가 한 번 이미지 만들어서 해 보는 것도 중요하다는 생각이 들었습니다. 그래서 이미지에서 채널 정보를 판단해 내는 모델을 만들어 볼까 했었습니다. 하지만, 구글 Tensorflow의 model인 slim을 이용하면 쉽고 간단하게 이미지 분류가 가능합니다. tensorflow에서 slim을 이용한 채널 이미지 분류 머신러닝 을 통해서 이미지 분류를 할 수 있었지만, 이와 유사한 작업을 진행하면서 의문이 하나 추가되었습니다. 사람도 반복 학습을 통해서 모르던 사실을 알아 가는데, 좀 더 명확한 데이터를 제시하면, 더 빨리 학습이 되고, 더 좋은 성능을 보여줄까라는 의문입니다. 간단하게 요약하면, 가장 핵심이 되는 패턴인 모서리 부분만 전처리 해서 학습과 평가를 하면 어떨까?라는 겁니다. 이 의문을 풀기 위해서 이미지 전처리 과정을 추가해 보고 그 성능을 비교해 보고자 합니다. 성능과 시간을 모두 잡아내고 더 적은 데이터로도 결과를 이끌어 낼 수 있는지 알고 싶습니다. 다음 시간에는 slim 모델에 특정 이미지의 패턴을 잘 구분할 수 있는 영역이 있는지 전처리를 통해서 어떤 결과 변화가 있는지 알아보겠습니다. 저는 모델을 잘 만들어 낼 자신은 아직은 없습니다. 대신, 데이터를 어떻게 만들어야지 더 효율적인지에 대해서 예제를 통해서 접근해보고 기록하려 합니다. 일단 채널 이미지(FullHD) 분류하는 작업은 71% 정도 결과가 나오는데, 만족할만한 수치는 아니고요. 다음 시간에는 전처리된 이미지(각 모서리별로 이미지 크롭해서 만들어진 이미지로 학습 및 평가)를 가지고 학습하는걸 알아보겠습니다. #### tensorflow에서 slim을 이용해서 이미지를 분류하는 방법 tensorflow에서 slim을 이용해서 이미지를 분류하는 방법 에 대해서 알아봅시다.   tensorflow에서 slim을 이용해서 이미지를 분류하는 방법 slim을 이용해서 이미지를 분류하는 방법은 다음의 순서에 맞추어 진행합니다. (SLIM 외에 내용도 포함됩니다.) 학습 데이터(이미지)를 폴더(카테고리)별로 분류하여 생성 이미지 전처리 (tfRecord 화) 학습 평가 웹 API 등록하는 방법 해당 글은 slim에 대해서 관련 정보와 간단한 방법을 요약하여 제공할 예정입니다. 다음 글에서는 위의 순서에 맞추어 실제로 이미지를 분류하는 방법에 대해서 알아가 봅시다. 해당 원문은 TF-slim 공식 github 에서 확인 가능합니다.   tensorflow slim 간략 설명 tensorflow에서 slim은 복잡한 모델을 정의하고 학습하고 평가하기 위한 경량 라이브러리입니다. 목차를 보시면 설치, 사전 데이터 준비, 사전 학습 모델을 사용하는 방법, 학습, 새작업을 하는 방법, 평가 등으로 이루어져 있습니다. 사전 제공되는 데이터는 꽃, Cifar10, MNIST, ImageNet 이렇게 4가지이고, 이 4가지에 대해서 쉽게 다운로드 및 학습 평가해볼 수 있습니다. 또한, 사전 학습 모델을 선택할 수 있는데, 성능과 시간이라는 두 가지 요소를 고려해서 사용해 볼 수 있습니다. 예를 들어, ResNet을 돌리면 정확도는 낮지만 빠르게 학습시켜 결과를 볼 수 있고, Inception V3 모델을 이용하면 시간은 걸리지만 더 높은 정확도를 얻을 수 있습니다.   tensorflow slim에서 사용되는 관련 용어 TFRecord 학습을 하기 위한 전처리된 데이터 포맷입니다. 이미지와 카테고리가 있을 경우, 이를 사전에 tensorFlow의 slim에서 사용할 수 있는 형태로 만들게 됩니다. 4가지 예를 통해서 확인할 수 있으며, 예제 Flower를 통해서, 개인이 가진 이미지 데이터도 응용하여 학습할 수 있습니다. flower의 경우 디렉토리별로 파일을 모아서 TFRecord를 생성할 수 있습니다. Checkpoint 학습이 완료된 결과물 벡터입니다. 이것을 평가할때 로딩하여 사용할 수 있습니다.   다음 포스팅에서 MNIST와 flower를 한번 학습해 보고, 그 다음 im2channel로 학습 진행해 보면 좋을 듯 합니다.   관련 링크 tensorflow의 slim 예제에 대한 학습 및 평가 tensorflow에서 slim을 이용한 채널 이미지 분류 머신러닝 #### tensorflow의 slim 예제에 대한 학습 및 평가 tensorflow의 slim 예제에 대한 학습 및 평가 를 진행해 보겠습니다. 예제로는 MNIST, flowers, Cifar10, Imagenet 4가지를 제공하고 있습니다. 저는 채널이미지 학습을 위해서 폴더별로 이미지를 나누어서 저장하고 있다가 학습을 시킬 예정입니다. 그렇기 때문에 가장 유사한 방법으로 접근이 가능한 flowers 예제를 이용해 보겠습니다.   tensorflow의 slim 예제에 대한 학습 및 평가 flowers 예제를 실습해 보겠습니다. 우선 학습 및 평가를 하기 전에 어떠한 순서로 이루어지는 맥락을 한 번 짚고 넘어가보도록 하겠습니다. tensorflow 버전 업그레이드 및 slim 설치 원할한 작업을 위하여 tensorflow 0.12 버전을 추천합니다. 이미지 파일을 폴더(카테고리)별 분류 flowers는 5가지 종류의 꽃을 분류할 예정입니다. 이미지 파일을 TFRecord 타입으로 변형 tensorflow에서 학습에 사용하기 위한 데이터 형태로 치환하는 것입니다. 데이터 학습 데이터 평가 tensorflow 버전 업그레이드 및 slim 설치 2017년 새해를 맞이하여 전체 업그레이드 한 번 진행하겠습니다. 제가 사용하는 환경은 Ubuntu 16.04 버전이고, CPU 버전, GPU 버전(nvidia 1060 또는 1080x2)이 있습니다. 여기서는 CPU 기준으로 진행하겠습니다. 물론 GPU로 운용하시는게 정신 건강에 매우 좋습니다. 아래에 나오는 방법은 python 2.7 기준으로 기존에 설치한 tensorflow를 삭제하고 새로 0.12.1 버전으로 설치하는 방법입니다. python 3.5 버전은 pip3를 기준으로 진행하시면 됩니다. 텐서플로우를 설치하고 난 후, tensorflow model을 github에서 다운로드 합니다. 여러 모델이 있는데, 그 중에서 slim을 사용할 겁니다. 추후에 시간이 되면 im2txt를 다루는 방법도 알아보도록 하겠습니다. 참고로 slim에서 사용하는 inception_v3 모델의 경우, tensorflow 0.10에는 없고, 0.11부터 제공하기 때문에 하위 버전으로 돌릴 생각은 아예 접는게 좋습니다. sudu apt-get update sudu apt-get upgrade reboot sudo pip install --upgrade pip sudo pip uninstall tensorflow export TF_BINARY_URL=https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.12.1-cp27-none-linux_x86_64.whl sudo pip install --upgrade $TF_BINARY_URL git clone https://github.com/tensorflow/models.git 따라서, tensorflow의 slim 예제에 대한 학습 및 평가 를 위해서는 tensorflow 0.12.1을 설치하는게 좋고 설치 결과는 다음과 같습니다. Collecting tensorflow==0.12.1 from https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.12.1-cp27-none-linux_x86_64.whl Downloading https://storage.googleapis.com/tensorflow/linux/cpu/tensorflow-0.12.1-cp27-none-linux_x86_64.whl (43.1MB) 100% |████████████████████████████████| 43.1MB 18kB/s Requirement already up-to-date: mock>=2.0.0 in /usr/local/lib/python2.7/dist-packages (from tensorflow==0.12.1) Collecting numpy>=1.11.0 (from tensorflow==0.12.1) Downloading numpy-1.11.3-cp27-cp27mu-manylinux1_x86_64.whl (15.4MB) 100% |████████████████████████████████| 15.4MB 29kB/s Collecting protobuf>=3.1.0 (from tensorflow==0.12.1) Downloading protobuf-3.1.0.post1-py2.py3-none-any.whl (347kB) 100% |████████████████████████████████| 348kB 104kB/s Requirement already up-to-date: wheel in /usr/lib/python2.7/dist-packages (from tensorflow==0.12.1) Requirement already up-to-date: six>=1.10.0 in /usr/local/lib/python2.7/dist-packages (from tensorflow==0.12.1) Requirement already up-to-date: funcsigs>=1; python_version < "3.3" in /usr/local/lib/python2.7/dist-packages (from mock>=2.0.0->tensorflow==0.12.1) Requirement already up-to-date: pbr>=0.11 in /usr/local/lib/python2.7/dist-packages (from mock>=2.0.0->tensorflow==0.12.1) Collecting setuptools (from protobuf>=3.1.0->tensorflow==0.12.1) Downloading setuptools-32.3.1-py2.py3-none-any.whl (479kB) 100% |████████████████████████████████| 481kB 71kB/s Installing collected packages: numpy, setuptools, protobuf, tensorflow Found existing installation: numpy 1.11.0 Uninstalling numpy-1.11.0: Successfully uninstalled numpy-1.11.0 Found existing installation: setuptools 20.7.0 Uninstalling setuptools-20.7.0: Successfully uninstalled setuptools-20.7.0 Found existing installation: protobuf 3.1.0 Uninstalling protobuf-3.1.0: Successfully uninstalled protobuf-3.1.0 Successfully installed numpy-1.11.3 protobuf-3.1.0.post1 setuptools-32.3.1 tensorflow-0.12.1 이미지 파일을 폴더(카테고리)별 분류 slim 모델에서는 flowers 예제를 이용하여 폴더별로 구분되어져 있는 이미지를 학습하고 평가할 수 있습니다. tensorflow model의 slim은 구글신님이 직접 하사하신 선물로 학습 모델을 이름만으로 쉽게 바꿀 수 있고, 학습에 필요한 이미지를 전처리하는 방법, 학습하는 방법, 평가하는 방법이 간단합니다. 그 중에서 이미지를 폴더별로 모아놓고 이를 학습에 사용할 학습 데이터 형태인 TFRecord로 만드는 방법이 특히나 간단합니다. 먼저 이미지를 다운로드 받고, 해당 이미지를 변환합니다. 그래서 실행 파일명도 download_and_convert_data.py 입니다. 먼저 2가지 폴더가 필요합니다. 해당 프로젝트에 대한 TFRecord를 저장하기 위한 폴더(dataset)가 필요합니다. 그리고 학습 결과를 저장할 폴더(train)이 필요합니다. 저는 아래와 같이 제 임의로 두 개의 폴더를 만들었습니다. 그리고 학습 데이터를 받아서 이미지를 학습데이터로 변환하도록 했습니다. mkdir ~/project/slim mkdir ~/project/slim/flowers mkdir ~/project/slim/flowers/dataset mkdir ~/project/slim/flowers/train DATA_DIR=~/project/slim/flowers/dataset TRAIN_DIR=~/project/slim/flowers/train python download_and_convert_data.py --dataset_name=flowers --dataset_dir=${DATA_DIR} 이미지 파일을 TFRecord 타입으로 변환 다운로드하면 다음과 같이 자동으로 변환이 되는 것을 확인할 수 있습니다. 그리고 학습 데이터가 잘 변환이 되었는지 확인해 봅시다. tensorflow의 slim 예제에 대한 학습 및 평가 에 있어서 첫 발을 내딛은 겁니다. >> Downloading flower_photos.tgz 100.0% Successfully downloaded flower_photos.tgz 228813984 bytes. >> Converting image 3320/3320 shard 4 >> Converting image 350/350 shard 4 Finished converting the Flowers dataset! $ ls -al ${DATA_DIR} 합계 227572 drwxrwxr-x 2 studydev studydev 4096 1월 5 01:05 . drwxrwxr-x 4 studydev studydev 4096 1월 5 01:02 .. -rw-rw-r-- 1 studydev studydev 40492288 1월 5 01:05 flowers_train_00000-of-00005.tfrecord -rw-rw-r-- 1 studydev studydev 40949234 1월 5 01:05 flowers_train_00001-of-00005.tfrecord -rw-rw-r-- 1 studydev studydev 43157253 1월 5 01:05 flowers_train_00002-of-00005.tfrecord -rw-rw-r-- 1 studydev studydev 45555808 1월 5 01:05 flowers_train_00003-of-00005.tfrecord -rw-rw-r-- 1 studydev studydev 41843039 1월 5 01:05 flowers_train_00004-of-00005.tfrecord -rw-rw-r-- 1 studydev studydev 4028925 1월 5 01:05 flowers_validation_00000-of-00005.tfrecord -rw-rw-r-- 1 studydev studydev 4140411 1월 5 01:05 flowers_validation_00001-of-00005.tfrecord -rw-rw-r-- 1 studydev studydev 4591127 1월 5 01:05 flowers_validation_00002-of-00005.tfrecord -rw-rw-r-- 1 studydev studydev 4443587 1월 5 01:05 flowers_validation_00003-of-00005.tfrecord -rw-rw-r-- 1 studydev studydev 3803950 1월 5 01:05 flowers_validation_00004-of-00005.tfrecord -rw-rw-r-- 1 studydev studydev 50 1월 5 01:05 labels.txt 데이터 학습 이제 데이터를 학습시켜 봅시다. 다음과 같이 학습을 진행합니다. 환경에 따라 다르지만 어쨌든 시간이 많이 필요합니다. step에 따라서 학습 결과가 달라집니다. 이 부분은 CPU 버전에서는 매우 느린 관계로 GPU 환경에서 돌려보시기를 권합니다. 참고로 GPU 메모리가 부족한 경우, batch_size를 조절해서 진행하시는 것도 방법입니다. 1060 1개 기준으로 스텝당 약 0.9초, 1080 x 2 기준으로 약 0.57초 정도 걸리는것 같습니다.(inception_v3 기준) 이 부부은 세팅에 따라서 차이가 발생할 수 있습니다. python train_image_classifier.py --train_dir=${TRAIN_DIR} --dataset_dir=${DATA_DIR} --dataset_name=flowers --dataset_split_name=train --model_name=lenet 학습 시간에 스트레스가 많은 분들은 일단 model_name을 inception_v3가 아닌 lenet 으로 돌리는 것을 권장합니다.(위 이미지) 결과는 상대적으로 나쁘지만 좀 더 빠르게 학습되고 결과도 빠르게 뽑아 볼 수 있습니다. 기타로 직접 모델을 다운로드 받아서 해당 모델을 연결할 수 있는 방법도 문서에 제공되고 있습니다. nvidia 1080 GPU 2개를 이용한 flowers 예제 inception_v3 모델 학습 로그 (tensorflow 0.12)   nvidia 1080 GPU 2개를 이용한 flowers 예제 inception_v3 모델 학습 느려진다.... 데이터 평가 데이터 평가는 아래와 같이 진행합니다. python eval_image_classifier.py --alsologtostderr --checkpoint_path=${TRAIN_DIR} --dataset_dir=${DATA_DIR} --dataset_name=flowers --dataset_split_name=validation --model_name=lenet 평가된 데이터는 정확도가 나오고, Recall@5가 나오는데 이 부분은 추론 결과가 랭킹 5안에 들어있을 확률을 의미합니다. 1이라는 값이 나오는 이유는 100%라는 의미입니다. Flowers는 총 5개 카테고리이기 때문에 결과 역시 5가지로 밖에 나오기 않습니다. 그렇기 때문에 여기서는 100%를 의미하는 1이라는 값이 나옵니다. 이 값이 변화 되려면 좀 더 많은 카테고리가 들어와야 하고, 관련 예제는 채널 이미지 slim 분류 방법을 통해서 확인하실 수 있습니다. 학습 횟수에 따라서 그 결과가 달라지므로 여러번 학습해서 비교해 보는 것을 추천합니다. 다음의 경우는 CPU를 이용하여 lenet으로 2750 step 돌린 결과입니다. INFO:tensorflow:Scale of 0 disables regularizer. INFO:tensorflow:Starting evaluation at 2017-01-04-16:58:22 INFO:tensorflow:Executing eval ops INFO:tensorflow:Executing eval_op 1/4 INFO:tensorflow:Executing eval_op 2/4 INFO:tensorflow:Executing eval_op 3/4 INFO:tensorflow:Executing eval_op 4/4 INFO:tensorflow:Executing summary op I tensorflow/core/kernels/logging_ops.cc:79] eval/Recall@5[1] I tensorflow/core/kernels/logging_ops.cc:79] eval/Accuracy[0.4475] INFO:tensorflow:Finished evaluation at 2017-01-04-16:58:25 nvidia 1060 GPU를 이용한 mnist 예제 lenet 모델 평가 로그 (tensorflow 0.12) - 1300만번   nvidia 1080 GPU 2개를 이용한 flowers 예제 inception_v3 모델 평가 로그 (tensorflow 0.12) - 1만번   학습 및 평가 요약 tensorflow의 slim 예제에 대한 학습 및 평가 를 진행해 봤습니다. slim을 이용하면 손쉽게 CNN 학습 및 평가를 할 수 있습니다. 다음 시간에는 분류된 채널 이미지를 학습시켜 보고 결과를 분석해 보겠습니다. 그리고, 패턴이 명확한 부분만 크롭하여 학습해보고(추가 이미지 전처리) 비교해 보도록 하겠습니다. 이것을 하는 목적은 학습 데이터의 중요성과 전처리가 어디까지 진행되면 어떤 결과 변화가 있을지 비교 확인하기 위함입니다. (추가적인 이미지 전처리가 필요한지 아니면, 안 하고 학습 횟수를 통해서 극복하면 되는지 그런게 궁금해서 시작되는 겁니다.)   참고 링크 텐서플로우 설치 slim 모델 github #### Test_post_1 Test1 #### Timeline JS Wordpress Plugin Timeline JS Wordpress Plugin 설치하기 이 녀석을 여기 블로그에 붙여 보기로 결심! https://github.com/NUKnightLab/TimelineJS-Wordpress-Plugin 이거 붙여서 시호 사진 타임 라인 만들어서 공유하면 페북에 매번 안 올라가도 되고~ 좋은듯! #### ubuntu 16.04 Mysql 데이터 디렉토리 변경 방법 ubuntu 16.04 Mysql 데이터 디렉토리 변경 방법 에 대해서 알아보겠습니다. 참고로 mysql과 mariadb 두 개 모두 유사하게 설정이 가능하기 때문에 이를 mysql이다라고 생각하시면서 보면 되겠습니다.   ubuntu 16.04 Mysql 데이터 디렉토리 변경 방법 3가지 사항을 고려하면 ubuntu 16.04 Mysql(mariadb) 데이터 디렉토리 변경이 가능합니다. 첫 번째는 데이터 디렉토리를 찾아서 rsync 명령을 이용하여 권한을 그대로 유지하면서 이전하고자 하는 폴더로 복사하는 것입니다. 그리고 이전한 폴더에 대하여 설정을 변경합니다. 마지막으로 이전하고자 하는 폴더에 대하여 리눅스 커널 보안 모듈에 등록하는 겁니다. 데이터 디렉토리 이전 데이터 디렉토리를 이전하는 것은 다음과 같은 명령을 수행하면 됩니다. 여기서는 /home/db/mysql/data 폴더에 데이터를 이전하는 방법을 다룹니다. 일단 작업 전에 mysql 데몬을 중지시켜야 합니다. 그리고 이전하고자 하는 디렉토리를 생성합니다. 그리고 rsync를 이용하여 권한을 유지한채 폴더를 복사합니다. systemctl stop mysql mkdir /home/db mkdir /home/db/mysql mkdir /home/db/mysql/data rsync -av /var/lib/mysql/ /home/db/mysql/data Mysql 데이터 디렉토리 설정 변경 기본으로 설정되어 있는 /var/lib/mysql/ 폴더가 변경되었으니 그 설정을 변경해 주어야 합니다. vi나 nano 에디터를 이용해서 해당 서버 정보를 수정합니다. vi /etc/mysql/mariadb.conf.d/50-server.cnf datadir = /home/db/mysql/data AppArmor 커널 보안 모듈에 해당 디렉토리 등록 리눅스 버전 2.6.36부터 포함된 기능으로 Application Armor의 약자입니다. ubuntu에는 7.10부터 패키지가 포함되고 Mysql 설정 프로필에 대해서는 ubuntu 9.04부터 가지게 되었습니다. 중요한건 Mysql 이전한 폴더에 대한 프로필을 등록하고 해당 데몬을 재시작해 주면 됩니다. 마지막으로 Mysql 데몬을 다시 기동시켜 주면 됩니다. vi /etc/apparmor.d/tunables/alias alias /var/lib/mysql/ -> /home/db/mysql/data/, systemctl restart apparmor systemctl start mysql   ubuntu 16.04 Mysql 데이터 디렉토리 변경 방법 요약 Mysql 데몬을 정지한다. 이전할 디렉토리를 생성한다. 디렉토리를 rsync를 이용하여 권한을 유지하며서 복사한다. Mysql의 디렉토리 설정을 변경한다. AppArmor의 Mysql에 대한 새로운 디렉토리 정보를 프로필 설정으로 추가한다. AppArmor를 재가동한다. Mysql 데몬을 시작한다. 여기까지 잘 되었다면 Mysql 데이터 디렉토리가 잘 옮겨졌을 겁니다. 최초에 파티셔닝 작업을 할 때에, 용도별로 잘 구분하였다면, 그리고 apt-get이나 yum을 이용해서 default 디렉토리로 설치되었을 경우, 어렵지 않게 옮길수 있습니다. 예를 들어서 SSD와 HDD가 동시에 있을 경우, MySQL의 데이터는 SSD 디렉토리로 옮겨주는 것이 더 좋은 방법이 될 수 있겠습니다. #### Ubuntu 16.04에 opencv 2.4 설치하는 방법 Ubuntu 16.04에 opencv 2.4 설치하는 방법 기록 남깁니다. 안 까먹으려면 부지런히 남기는게 최고지요.   Ubuntu 16.04에 opencv 2.4 설치하는 방법 다음과 같이 따라하면 설치할 수 있습니다. 소스 다운로드 2017-01-18 기준으로 2.4.13.2 버전으로 다운됩니다. git clone 할 때에는 브랜치를 명시해주면 해당 브랜치로 다운로드가 가능합니다. git clone --branch 2.4 https://github.com/opencv/opencv.git 소스를 빌드할 작업 디렉토리로 이동 cd opencv mkdir build cd build 빌드하기 위한 환경 설정 cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D CUDA_GENERATION=Auto \ -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON \ -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D WITH_CUBLAS=1 .. 환경 설정중에 에러 발생하여 추가 라이브러리 설치 에러 내용 - CMake Error : Found unsuitable Qt version "" from NOTFOUND sudo apt-get install qt-sdk 빌드 환경 설정 재시도 cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_TBB=ON -D CUDA_GENERATION=Auto \ -D BUILD_NEW_PYTHON_SUPPORT=ON -D WITH_V4L=ON -D INSTALL_C_EXAMPLES=ON -D INSTALL_PYTHON_EXAMPLES=ON \ -D BUILD_EXAMPLES=ON -D WITH_QT=ON -D WITH_OPENGL=ON -D ENABLE_FAST_MATH=1 -D CUDA_FAST_MATH=1 -D WITH_CUBLAS=1 .. Make make -j4 설치 make install 환경변수 등록 및 적용 echo '/usr/local/lib' | tee -a /etc/ld.so.conf.d/opencv.conf ldconfig   Ubuntu 16.04에 opencv 2.4 설치하는 방법 요약 중간에 설치할 때 에러가 발생할 수 있습니다. 또한, 개개인의 PC 환경 때문에 다 다르게 설정이 필요할 수 있습니다. 이런 부분 때문에 Linux로 무언가를 작업하고자 할 때, 다소 어려움이 있을 수 있습니다. 하지만, 보통 에러와 관련하여 google에서 검색해 보면 그 해결 방법을 어렵지 않게 찾을 수 있습니다. 제가 설치한 기록만 보더라도, QT-SDK 관련해서 에러가 있었지만 어렵지 않게 찾아서 해결할 수 있었습니다. 그리고 기타 설치할 위치를 지정한다거나, CUDA 등의 설정은 본인의 환경에 맞게끔 옵션을 확인하여 설치하시면 됩니다.   참고 사이트 opencv 사이트 #### Wordpress 홈페이지 Jira Confluence 복구 Wordpress 홈페이지가 40일 만에 복구 SSL 인증서가 만료된 이후 갱신이 되지 않았고, 그 이후에 LAMP 스택을 밀었다가 새로 버전업 해서 써 보려 했으나 지속적으로 문제가 생겨서 결국 새로 작업 했습니다. wiki에 AWS 서버리스 301 핸즈온 자료 만들어 둔게 있는데, 이걸 Word 파일로 만들고 PDF로 재배포를 할까 고민하다가, 이 방법을 선택할 경우의 가장 큰 문제인, 소스코드 복사시 에러가 잦다는 점을 지울 수 없기 때문에 결국 사이트를 어떻게든 살리는 방향으로 진행!결국 2019년 2월 9일 토요일 밤새 쪼물딱 거리다가 2월 10일 새벽 4시에 studydev.com 홈페이지를 띄우는 것까지 성공 시킴.2월 10일 일요일 21시 이후에 confluence와 jira를 살리고, reverse proxy 설정까지 정상적으로 돌아가는 것을 확인함. AWS의 route 53에서 서브 도메인들을 줄줄이 등록시킴. 홈페이지는 다음과 같은 순서로 복구 하였습니다. 다른 폴더에 Wordpress를 새로 설치해서 완전 새로운 DB를 만들었습니다.새로 설치한 Wordpress 홈페이지에 기존 DB 연결정보로 변경했습니다. 변경 직후 DB는 업데이트 해 주었습니다.링크가 깨지는 부분이 발생(이미지, mp3)하여 강제로 URL을 모두 변경했습니다. (https -> http)httpd 2.4.38 버전과 PHP 7.2 버전으로 변경하고, vhost 설정을 새로 했습니다.Jira와 Confluence에 SSL 설정을 모두 삭제하고 링크를 수정했습니다.studydev.com 도메인에 대한 DNS 서버를 AWS Route 53으로 이전 했습니다. 작업 내역 DB 관련 수정 코드 혹시 모르기 때문에 일단 dump 뜨고 시작함. UPDATE wp_options SET option_value = replace(option_value, 'https://www.studydev.com/', 'http://www.studydev.com/') WHERE option_name = 'home' OR option_name = 'siteurl'; UPDATE wp_posts SET post_content = replace(post_content, 'https://www.studydev.com/', 'http://www.studydev.com/'); UPDATE wp_postmeta SET meta_value = replace(meta_value,'https://www.studydev.com/', 'http://www.studydev.com/'); UPDATE wp_usermeta SET meta_value = replace(meta_value, 'https://dev.studydev.com/', 'http://www.studydev.com/'); UPDATE wp_links SET link_url = replace(link_url, 'https://www.studydev.com/', 'http://www.studydev.com/'); UPDATE wp_comments SET comment_content = replace(comment_content , 'https://www.studydev.com/', 'http://www.studydev.com/'); VHOST 관련 수정 코드 내부 서버에 vhost 추가하는 건 딱히 어려운 문제가 아니지만, Confluence 같은 경우, 공동 작업을 위해서 웹 소켓을 함께 써야 하기 때문에 이런 설정이 필요합니다. (Jira는 그냥 proxypass만 설정하면 됩니다.) <VirtualHost *:80> ServerName www.studydev.com DocumentRoot /var/www/wordpress <Directory /var/www/wordpress> Require all granted </Directory> ErrorLog /var/log/httpd/www.studydev.com-error.log CustomLog /var/log/httpd/www.studydev.com-access.log combined </VirtualHost> <VirtualHost *:80> ServerName studydev.com Redirect permanent / http://www.studydev.com/ </VirtualHost> <VirtualHost *:80> ServerName wiki.studydev.com ProxyPreserveHost On ProxyRequests Off ProxyVia Block RewriteEngine On RewriteCond %{REQUEST_URI} !^/synchrony RewriteRule ^/(.*) http://wiki.studydev.com:8090/$1 [P] <Proxy *> Require all granted </Proxy> ProxyPass /synchrony http://wiki.studydev.com:8091/synchrony <Location /synchrony> Require all granted RewriteEngine on RewriteCond %{HTTP:UPGRADE} ^WebSocket$ [NC] RewriteCond %{HTTP:CONNECTION} Upgrade$ [NC] RewriteRule .* ws://wiki.studydev.com:8091%{REQUEST_URI} [P] </Location> ProxyPass / http://localhost:8090/ ProxyPassReverse / http://localhost:8090/ <Location /> Require all granted Header always unset X-Frame-Options </Location> ErrorLog /var/log/httpd/wiki.studydev.com-error.log CustomLog /var/log/httpd/wiki.studydev.com-access.log combined </VirtualHost> 기타 수정 Jira, Confluence의 https에 맞게 설정된 내용을 삭제 조치httpd 2.4.38로 올리면서 php 모듈을 로즈하지 않고, FastCGI Process Manager 로 변경하여 사용.httpd 2.4.38에서 php의 7.3 버전에서 mysql 모듈 관련 안정성 문제가 있다고 하여 PHP 7.2로 재설치함. (이건 설정 잘못일 수도 있음) 추가 고려해야하는 것들 Bitbucket이 안 뜸. 다양한 방법을 다 시도했는데도 안 뜸. 그냥 재설치가 답일 것 같은데, 이게 급한 요소가 아니기 때문에 미룸. 아마 삭제할 것 같음 git 을 쓰거나 CodeCommit을 쓰는 것을 추천 (jira에 연동 되는 부분은 아쉬울 수 있겠으나, 지금 그 정도 작업을 할 여유가 없음.SSL 인증서 에러 나서 동작 안되는 문제를 어떻게 할 것인가?Confluence와 JIra를 아예 AWS로 이전하고 싶은데, 메모리를 기본적으로 많이 요구하기 때문에 인스턴스 사이즈가 고민중. (1인용이기에 그냥 HP Gen8 서버 16GB 메모리를 좀 더 활용하고, 백업만 잘 받아 두는 걸로) #### 결혼 선물로 받은 MCM 가방 결혼 선물 가방.... 내가 들고 다니기는 너무 고급스러워서 간혹 두고 다닌다. 그럼 혼난다. 가방 이쁜거 들 수 있게 해줘서 고마워. 진짜 이쁜걸로 오빠가 사줄께. 지금까지 가방 한번 못 사줘서 미안해. #### 구글 애드센스 등록 하기 구글 애드센스 등록 구글 애드센스 등록 을 위한 PIN 번호가 도착했습니다. 구글 애드센스를 이용해서 수익을 만들어 봅시다. 사실 유튜브를 통해서 발생한 수익이 $10 넘어섰기 때문에 이런 일이 벌어진 겁니다. 유튜브 뿐만 아니라 웹페이지에도 광고를 기재할 수 있도록 설정해 봅시다.     애드센스 봉투 도착 11월 12일 발송한 애드센스 우편이 2주만에 도착했습니다. 생각보다 빠르게 도착한 편입니다. 얼른 PIN 번호를 넣어봅시다.     애드센스 PIN 번호 입력 최소 $10 이상의 수익이 발생했을 때, 신청시 날아오게 되는데, 그게 넘었다는 의미입니다. 핀 번호 입력을 위해서 애드센스 페이지로 접속합니다. 핀 번호가 11일 발송되었고, 2주가 조금 안 걸려서 집에 도착했습니다. Pin 번호 넣고 나서 개인 설정 정보 한번 더 업데이트 해 줍니다. 드디어 정상적으로 등록되었네요. 빨간색 경고 문구가 사라졌습니다. 이제 열심히 컨텐츠만 잘 만들면 되겠군요.     애드센스를 위한 노력 : SEO 사실 애드센스를 웹페이지에 붙여서 효과를 보려면, 뭐니뭐니 해도 방문자 수가 많아야 합니다. 방문자 수를 늘리는 방법은 쉽습니다. 양질의 컨텐츠를 만들면 됩니다. 하지면 양질의 컨텐츠를 잘 만드는 일은 쉽지 않습니다. SEO에 적합한 구성으로 컨텐츠를 구성해야 하고, 해당 컨텐츠들이 인기가 있어야 합니다. 그에 대한 노력으로 Wordpress의 Yoast SEO를 선택했습니다. 위 그림에서처럼 SEO 최적화를 위해서 이것저것 다 지켜주기 위해서 글을 쓰는 것은 쉬운 일이 아닙니다. 하지만, 이렇게 쓰는 습관이 있지 않다면, 좋은 컨텐츠를 만드는 것 또한 어려운 일이 됩니다. 그래서 무엇보다도 작문을 잘 해야 합니다. 저 역시 이런 부분에 대해서는 잘 못하는 부분이기 때문에 지금도 노력하고 있습니다. 예를 들면, 최대한 문법에 맞추어 글을 쓰려고 노력합니다. 이러한 노력이 별 것 아닌 것 같아 보이지만, 습관화가 되면 나중에는 어렵지 않게 글을 쓸 수 있게 되겠죠. 현재 구글 애드센스 광고가 빈 공란으로 나오고 있습니다. 아직 심사 단계에 있습니다. 가장 큰 문제는 해당 사이트(현재)의 컨텐츠가 매우 부족하다는 점입니다. 우선 네이버 블로그의 내용을 정리해서 하나씩 옮겨 오면서 내용을 늘려야 할 듯 합니다. 사용기나 여행기가 좋은 방법이 되겠네요. (다만 분야가 광범위해지는건 비추천합니다.) 어디까지나 개인 블로거이기 때문에 크게 문제될 것은 없으리라 생가가합니다. 구글 애드센스의 광고가 적용되면 그때 다시 또 글 올리겠습니다. #### 네스프레소 웰컴팩 직구 후기 네스프레소 웰컴팩 직구 후기 두 번째! 색깔이 이뻐서 두번째 네스프레소 웰컴팩을 직구했다. 맛을 따지면 한 5개 정도 이름이 생각나고 그거 위주로 250개 채워볼까 했는데, 깔끔하게 웰컴팩으로 샀다. 토템과 함께 오는 패키지의 느낌은 언제나 충만하다. 네스프레소 웰컴팩 직구 후기 네스프레소 250개 웰컴팩은 토템이 사은품으로 포함된다. 그래서 구매했다. 이미 두 번째 웰컴백 구매이기 때문에 선물로 주거나 팔아 버리면 된다. 이렇게 예쁘게 포장되어 있다. 캡슐의 컬러가 다양하기 때문에 캡슐 홀더를 DIY 하게 되면 그 또한 예쁠 것으로 예상된다. 박스 안에 포장되어서 오기 때문에 상당히 깔끔하다. 독일의 공기가 함께 동봉되어져 있는 착각이 든다. 사은품으로 함께 오는 토템은 부피가 크다. 이 토템은 어떤 캡슐을 넣느냐에 따라서 색깔이 달라지기 때문에 그 느낌도 달라진다. 실제로 넣어보면 저렇게 잘 안 들어간다. 한 가지 문제가 있는데 밑에 고정이 잘 되지 않는다. 사진 상으로는 잘 되는 것 같지만, 현실은 그렇지 못하다. 그리고 현실은 아래처럼 막 들어가 있다. 이쁘게 넣다가... 밑으로 주르륵 흘러 내리면 그냥 쏟아 붓게 된다. 안전한 포장으로 온다. 별도의 재포장이 필요 없다. 구매하고 배송대행처를 거쳐서 받기 까지의 시간은 일주일 걸렸다. 지난주 월요일 오전에 주문 했고(독일 네스프레소), 배송대행지 거쳐서 오는데 1주일 걸렸다. 빠르면 금요일에도 받는다. 이 녀석 또 맛나게 먹어줘야징~ 와이프 덕분에 알게된 커피 맛에 하나씩 먹는데 밖에서 사 먹는 몇몇 브랜드보다도 맛이 더 나은 느낌이 든다. 커피 맛을 일깨워준 아내에게 쌩유~ #### 네스프레소 커피머신 U C50 고장 자가 수리 1편 네스프레소 커피머신 U C50 고장 자가 수리 1편 에서는 캡슐머신 U C50에서 발생한 문제에 대해서 AS 하는 방법을 알아봅니다.   네스프레소 커피머신 U C50 고장 자가 수리 1편 네스프레소 커피머신 U C50 고장 자가 수리 1편에서는 다음과 같은 문제를 다룹니다. 고장 증상 소개 수리하는 방법 소개 수리를 위해서 구매해야하는 부품 그리고 2편에서는 교체 부품이 도착하면, 이걸 가지고 고치는걸 만들 예정입니다. 네스프레소 U C50 제품 분해 방법 교체 및 테스트 하는 방법 동영상을 제작해서 쉽게 스스로 수리하는 방법도 소개할 예정입니다. (T10 규격의 별모양 드라이버 없어도 다 수리 됩니다.) 그리고, 왜 자가 수리냐? 궁금해 하실 분이 있는데, 이 간단한걸 반 값에 직접 할 수 있다는걸 공유하기 위함입니다.   고장 증상 소개 네이버 네스프레소 캡슐 커피를 사랑하는 모임 카페에서는 이미 해당 문제가 이슈가 되고 있습니다. 이미 많은 분들이 해당 문제를 겪고 있는것 같습니다. 추출액이 앞쪽으로 안 나오고 안쪽으로 흐른다. 이 문제는 내부에 있는 부품이 파손되면서 캡슐커피 추출액이 앞쪽으로 흘러나와야 하는데, 걸쇠 부분이 힘을 받지 못해서 앞쪽으로 물을 못 옮겨주는 문제입니다. 다음 동영상을 보시면 왜 이런 문제가 생기는지 쉽게 설명(?) 해주고 있습니다. 그리고 이러한 문제로 고장나는 케이스는 크게 2가지에서 발생하는 것 같습니다. 상/하단의 걸쇠가 깨져서 힘을 지탱하지 못하는 경우 주둥이 부분의 플라스틱 고정지지 부분이 깨져서 힘을 지탱하지 못하는 경우 주로 힘을 주어서 억지로 캡슐을 빼려고 시도할 때(캡슐이 걸렸을 때), 저런 문제가 발생하는 듯 하니 사용 할때 보통 좀 조심해야할 것 같습니다.   수리하는 방법 소개 수리하는 방법은 크게 2가지가 있습니다. 먼저 메뉴얼대로 모두 분해해서 진행하는 방법이 있습니다. 이 방법은 비추천 합니다. 왜냐하면 보통 집에는 별 드라이버가 잘 없거든요. 그래서 두 번째 추천하는 방법은 네스프레소 U C50 캡슐머신의 앞쪽만 분리해서 교체하는 방법입니다. 위 다른 동영상에서도 설명이 잘 나오지만 굳이 다 분해할 필요는 없습니다. 아래 처럼 말이죠. 저는 이 영상들과 몇 가지 방법 설명을 조합해서 별도의 영상을 제작하여 자가 수리 방법을 2편에서 구수한 한글을 곁들여 소개해 드릴까 합니다. (해외 직구 하는 것도 나름 의미가 있지만, 그것을 직접 저렴하게 수리할 수 있다면 이보다 더 좋을 수는 없겠죠?)   수리를 위해서 구매해야하는 부품 이베이에서 아래 부품을 구매하시면 됩니다. 해외 직배송 서비스도 제공하지만 생각외로 비쌉니다. 그러니 그냥 배대지를 통해서 받으시는걸 추천 드립니다. *USA SELLER* NESPRESSO U STEAM COVER SPOUT DISTRIBUTOR REPAIR PART C50 D50 PULSE 고장난 부품은 해당 제품으로 교체하면 됩니다. 다만, 직구를 해야하기 때문에(국내에서는 해당 부품을 판매하지 않는답니다.) 이에 필요한 시간과 비용이 발생할 수 있습니다.   네스프레소 국내 AS 비용 어떻게 좀 안되겠니? 이 문제가 발생하면 U C50 제품기준으로 무조건 6만원을 수리 비용으로 청구한다고 알려져 있습니다. 하지만 해당 부품만 해외직구해서 자가 AS를 할 경우 절반 가격 정도에 진행할 수 있을 것 같습니다. 저는 2017년 2월 7일 3개를 구매했습니다. (처가에서도 동일 제품을 사용중인데, 고장날 우려가 있고, 실패 우려가 있기에 3개 구매했습니다.) 참고로 미국은 한국과 달리 매우 큰 나라이기 때문에 직구할 때 배대지 위치 선정은 되도록 판매자로부터 가까운 곳으로 하시는게 좋습니다. 대륙횡단이라는 용어를 가끔 접하게 되는데 당첨되면, 기다림의 미덕이 얼마나 위대한 것인지 국내 배송의 위대함을 다시 한번 깨우치게 됩니다. 최초 구매 예상 도착시간은 현지 토요일이었지만, 목요일로 변경되었네요. 가까운 곳 꼭 확인하시는게 좋습니다. 현재 미국 현지에서 발송중인데, 몰테일 거쳐서 도착하면 이것 또한 2편에서 함께 다루도록 하겠습니다. 미국 배송물류 상품은 https://www.packagetrackr.com/ 에서 실시간 위치를 확인 가능합니다.   요약 네스프레소 커피머신 U C50 고장 자가 수리 1편 에서는 고장이 왜 났는지, 무엇을 어디서 사서 고쳐야 하는지 알아보았습니다. 2편에서는 직접 수리하는 컨텐츠로 다시 돌아오겠습니다. #### 듀벨 연수기 및 케어애 샤워기 녹물과의 전쟁 녹물에는 듀벨 연수기 및 케어애 샤워기 사용! 맑은 공기가 넘실대는 지방에서 살다가 상경하니 여러가지가 맞지 않는다. 공기도 안 맞고, 물도 안 맞다. 무엇이 문제일까? 바로 물! 그래서 듀벨 연수기와 케어애 샤워기를 사용해보자. 상경하고 불과 4개월만에 결국 병원 신세를 지다가 이직한 회사를 1주일 나가지 못하는 사태까지 발생했다. 몸은 없던 피부 알러지에 가려움증에 더이상 버티기 힘들었다. 무엇이 원인이었을까? 유력한 용의자는 녹물 25년된 아파트. 광명시 하안주공의 이야기다. 여긴 녹물이 매우 심하다. 이건 불과 몇 일 전 집에 있었던 녹물이다. 좀 더 진한 색상을 보여주었는데, 막상 카메라를 찍으니 옅어진게 이 색상이다. 25년이라는 세월 동안 아마 수도관이 많이 녹슬었지 않았나 싶다. 특히 온수가 온도 때문인지 더욱 녹슨 물이 많이 나온다. 이대로는 안될 것 같다. 이 문제를 해결할 수 있는 방법이 무엇이 있을까? 어차피 전세입자인데 뭔가 내 집인것처럼 다 바꾸는건 석연치 않다. 적당한 선에서 타협을 보고 싶다. 그리고 그 타협점을 찾은 것 같다. 듀벨이라는 곳에서 나온 듀벨 연수기와 샤워기다. 녹물 제거 필터와 케어애 샤워기 구매 듀벨이라는 회사에서 때마침 샤워기가 출시가 되었고 행사가 진행되고 있었다. 반 값에 샤워기용 녹물 제거 듀벨 연수기와 고급 필터를 준다. 홈페이지에서만 구매 가능한 옵션이기에 제품을 샀다. 그리고 관련 제품들을 소셜(우리가 가격을 만든다) 사이트에서 더 싸게 팔길래 거기서 샤워호스, 필터, 세탁기 필터도 구매했다. 제법 펼쳐 놓으니 구성품이 든든하다. 샤워기 같은 경우 상당히 공을 들인듯한 느낌이다. 뭔가 좋은 역할을 할 것 같은 알갱이도 2가지 색으로 들어 있다. 세라믹볼은 따로 채워 넣을수도 있다. 이온활성화 장치가 있다고 한다. 또한 물이 나오기 직전 필터가 또 있다. 자세한 설명은 듀벨 홈페이지에 있다. 홍보대사가 아니기에 자세한건 해당 홈페이지 참고하면 될 듯 싶다. 개인적으로  회사 홍보자료 가져다가 블로그에 붙이는거 안 좋아한다. 아무튼 처가댁에 유사 샤워기가 있는데, 그 제품이 향이나 물의 부드럽고 미끈한 느낌이 더 좋은 것 같다. 원래 그 제품을 사려고 했는데 인터넷에 아무리 찾아봐도 없어서 포기했다. 그래도 이온활성화에 좀 더 제대로 필터링 되니깐 더 좋겠지 라는 믿음을 가져보려고 한다. 케어애 샤워기 깔끔지게 잘 만들었다. 홈페이지나 설명서나 박스 디자인을 보면 동일한 회사일까 싶을 정도로 헤드가 이쁘다. 이젠 어디 내놔도 믿음직한 Made in Korea도 신뢰가 간다. 신경써서 만든 흔적이 역력하다. 미세 구멍 덕분인지 절수 효과에 물이 시원하게 더 잘 나오는 것 같다. 뭔가 말이 맞는듯 안 맞는 느낌이다. 필터 구매는 필수 이 제품의 장점이자 단점인 필터다. 필터 교체를 적당한 시기에 해 주지 않는다면 있으나 마나한 제품이 된다. 그러면 어떻게 교환 주기를 알 수 있을까? 바로 눈에 확연히 보이게 필터링이 된 결과물이 눈에 잘 띄도록 반영된다는 점이다. 단점은 이 필터 교체 주기가 짧을 것이라 충분히 예측되는 아파트 환경이다. 게다가 가격이 만만치 않다. 문제는 모든 수도꼭지에 이걸 다는 바보 짓을 해야 한다는 것이다. 덕분에 이걸 모든 수도꼭지마다 연결하는 분은 엄청난 지출을 기대해도 좋을 듯 하다. 그래서 용도에 맞게 가격대별로 제품을 고르는 지혜가 필요하듯 하다. 물론 정수기도 있고 그 필터도 갈아주어야 하지만... 이건 너무 많잖아. 세탁용은 알뜰형 필터를 샤워용은 고급형 필터를 샀다. 중간 시리즈로 일반형도 있다. 하지만 수명이 과연 1달을 버텨줄까 싶다. 곧 알게 될 사실이지만, 불과 20분을 사용하고 색이 변색되는걸 볼 수 있다. 여담이지만, 내가 이쪽 사업을 한다면, 집에 들어오는 배관에 연수하는 시스템을 넣고, 식수만 별도로 한번 더 걸러 쓸 수 있는 시스템을 만들겠다. 모든 수전마다 필터를 사용하는건 비용낭비다. 이런 시스템이 오히려 가격 대비 효용성에 더욱 끌리지 않을까? 어차피 환경과 건강을 중시하는 새삼 더러워진 세상에 우리는 살고 있지 않은가. 간편연수기와 샤워기의 만남 이렇게 연결했다. 샤워기 호스는 딱 봐도 예전 제품이 분리가 어려울 것 같아서 그냥 새로 샀다. 전세 나갈때 다시 바꿔 놓으면 될테니깐 이게 더 편할것 같았다. 이렇게 연결해 놓으니 든든하다. 필터 되고 물도 좋아지고... 괜찮다. 사이즈가 예상밖! 여기 25년된 주공 아파트. 그야말로 노답이다. 설치할 수가 없다. 공간이 나오지 않는다. 그래도 공대생 출신인데 이 정도는 설치해 줘야지. 살짝 수전을 제끼고서는 세탁기용 연장 호스를 이용해서 비스듬하게 설치했다. 그래도 설치했다는 것만으로도 만족할만 하다. 그리고 아직 분명 하얀 색이다. 내실이 탄탄해야지 이 제품이 상상한 것과는 전혀 다른 방향으로 설치가 되었지만, 중요한건 이대로 사용이 가능하다는 점이다. 수전도 오래 되었지만, 내 집이 아닌 관계로 손 되면 손해다. 연결되었다. 이제 연결 부위에서 물이 안 새면 된다. 새 것은 흰색 아직 분명 흰색이다. 흰색... 새것이라는 증명이다. 하지만, 모든 제품은 포장지 뜯는 순간 중고가 된다. 바로 변색되진 않겠지라고 빌어본다. 케어애 샤워기 테스트 물 잘 나온다. 연결 부위에 물이 새지도 않는다. 뭔가 역동감 있게 물이 흘러 나온다. 깔끔하고 매우 좋다. 미관상도 굿이다. 왠지 뿌듯하다. 훌륭하다. 잘 산 것 같다. 필터는 제 역할을 하는듯... 20분 썼는데 색이 변했다. 생각보다 심하네. 이거 1달을 버틸수 있을까? 이 색을 보면서 샤워를 해야 하는데, 기분이 마냥 좋지만은 않을 것 같다. 1년 넘게 이 녹물을 썼다. 녹물은 고르게 필터에 스며들고 있었다. 회사의 설명대로인듯 하다. 고르게 잘 번지는게 역할을 잘 하는 것 같다. 샤워 헤드에는 물이 참방참방 잘 차 있다. 따로 새어 나오지는 않는다. 필터링 잘 되면 샤워기도 계속 깨끗할테지. 깨끗함이 보이는 점이 좋다. 이온 발생기라고 하는 금속이 보인다. 좋은 물이 나오겠지 믿어 본다. 세라믹 볼이 곱게 쌓여 있다. 막 썩이지는 않는다. 원래 이런 구조인가 보다. 물은 고르게 시원하게 잘 나온다. 평소보다 좀 더 물이 적게 나오고, 더 부드럽고 강하게(?) 나온다. 써 보면 알 수 있을듯 하다.   실사용 동영상 실제로 물이 나오는 영상을 보면... 이쁘고 맑고 좋다. 고민을 많이 해서 만든게 아닌가 싶다. 디자인도 실제 사용시 미적 느낌도 좋다.   설치 후기 아직 듀벨 연수기와 샤워기 제품에 대해서 뭔가 논의하기에는 이르다. 받자마자 설치하고 20분 쓴게 전부다. 하지만 몇 가지 확실한게 있다. 저렴하다.(행사가격 + 샤워기 + 고급필터 간편연수기) 이쁘다. 녹물 냄새가 확실히 안 난다. 녹물이 필터링 되는게 필터에 보인다. 생각보다 크다. 세탁기 관련 호스 없으면 설치 못할 뻔 했다. 20분 써본 바로는 필터가 많이 필요할 것 같고 유지비가 꽤 들 것 같다. 아기가 내년에 나올텐데 잘 산 것 같다. 아로마향과 물의 부드러움이 더 좋은 듯한 다른 제품을 봐서 그런지 그런 부분은 좀 아쉽다. 무향을 원한다면 이 제품이 더 낫다. 좀 더 써보고 나중에 기회가 되면 사용 후기를 남길 예정~ #### 랄프로렌 폴로 해외 직구 최저가로 구매하는 방법 랄프로렌 폴로 해외 직구 최저가로 구매하는 방법 에 대해서 알아보겠습니다. 최근 시호가 24개월을 앞두고 15kg을 돌파할 예정이라 폴로 직구를 간만에 하게 되었군요.   랄프로렌 폴로 해외 직구 최저가로 구매하는 방법 최저가로 폴로 해외 직구를 하는 방법은 다음과 같은 순서로 진행됩니다. 해외 적립 사이트 경유 랄프로렌 사이트에서 구매 배대지 사이트에 구매 정보 등록 배대지 사이트에서 결제 후 기다림 위 순서대로 하나씩 알아가 보겠습니다.   해외 적립 사이트 경유 우선 가장 먼저 해야할 일은 적립 사이트 경유입니다. 폴로 사이트에 직접 들어가는게 아니라 경유해서 가는 겁니다. 왜 이런걸 해야하느냐 하면, 바로 적립금이 발생하기 때문입니다. 국내에서는 보통 쇼핑몰에서 제품을 구매하면 포인트가 쌓이는데, 미국은 조금 특이하게 보편화 되어 있습니다. 바로 적립 사이트를 경유해서 구매할 경우, 해당 사이트에 명시되어있는 %만큼 구매액에 대하여 적립이 된다는 겁니다. 몇몇 유명한 사이트가 있는데, 이베이츠, 몰리 등이 있습니다. 가입도 어렵지 않습니다. 자주 사용하는 SNS 계정이 있으면 연동이 되니 편리합니다. 로그인하면, 현재 적립된 캐시백이 얼마 있는지 확인할 수 있습니다. 그리고 세일 정보도 접할 수 있습니다. 클릭하고 들어가서 적립하시면 됩니다. 현재 랄프로렌의 경우 65% 할인에 추가 40% 할인에다가 8% 캐시백까지 하고 있네요. 해당 내용 확인하고 클릭하면 폴로 사이트로 이동할 수 있습니다. 적립 내역을 볼 수 있는데, 이베이에서 구매한 것도 적립된 것을 볼 수 있습니다. 별거 아닌 것 같지만 1.5만원 정도 적립이 된 겁니다. 이렇게 페이팔 같은 곳으로 연동해서 지급 받을 수 있습니다. 페이팔 계정으로 다시 구매하면 해당 적립금을 사용할 수 있습니다. 랄프로렌 사이트에서 구매 랄프로렌에서 구매할 때, 최초 가입시에 할인 쿠폰이 중복 적용될 수 있으니 챙기시면 좋고요. 구매 TIP을 알려 드리면, 가능한 모든 할인 쿠폰 코드는 다 넣어 보세요. 가입 기념 쿠폰, 추가 할인 쿠폰, 배송비 무료 할인 쿠폰 등이 그 예입니다. 랄프로렌에서 $200 이하 구매시 미국 배대지에 Tax가 발생하지 않는다면, 관세 및 부가세 없이 국내에서 받을 수 있습니다. 제품은 2017년 1월 7일에 구매했습니다. 정확히 오늘 2017년 1월 18일에 배송될 예정입니다. 약 11일 정도 걸렸는데, 보통 넉넉하게 2주 정도 예상하시면 됩니다. 관부가세에 걸리지 않게, $200 이하로 구매했습니다. 혹시 $200 이상 사실 계획이라면, 국내 입항하는 날짜를 분산하여 같은 날 받지 않도록 구매하는게 좋습니다. 그렇지 않으면 관부가세를 낼 수 있기 때문입니다. 기본 배송을 하더라도 FEDEX를 통해서 생각보다 빠르게 도착합니다. 다만 구매날짜 대비해서 좀 늦게 출발하는게 답답합니다.   배대지 사이트에 구매 정보 등록 구매를 했으면 이제 배대지 사이트로 향하고 있을 겁니다. 저는 몰테일, 이하넥스를 주로 사용하는 편이고요. 몰테일 같은 경우, 등록하기 쉬워서 이용하면 좋습니다. 상품 정보 자동등록 기능을 이용하면, 폴로 구매한 사이트의 이메일, 패스워드, 주민번호를 입력하면 자동으로 주문서가 작성됩니다. 가격을 떠나서 이런 편리함 때문에 몰테일을 자주 사용하게 되는듯 합니다.   배대지 사이트에서 결제 후 기다림 상품이 도착하면 배대지 사이트에서 문자로 연락이 옵니다. 뉴저지의 경우 보통 오전 6~7시에 연락이 오는듯 합니다. 가격은 생각보다 그렇게 비싼 느낌은 아닙니다. 보통 쿠폰을 이용하면 좀 더 저렴한 이용이 가능합니다. 여기서 배대지 비용을 좀 더 아낄수도 있지만, 이용하기 편리하다 보니 자주 사용하게 되는듯 합니다. 게다가 몰테일 이용 가격이 다소 낮아진 상태기 때문에 크게 차이는 없는듯 합니다. 근래 달러 환율이 높아져서 좀 비싼 느낌은 있지만, 미국에서 날아오는건데, 옷 부피 생각하면 편리하고 빠르고 괜찮습니다. 발송이 시작되면, 배송상태를 확인할 수 있습니다. 좀 더 자세히 확인하기 위해서는 관세청에 반입이 되었는지 확인하면 됩니다. 관세청에서의 확인은 택배번호를 이용하면 조회가 가능합니다. 관세청에 접속하면 별도의 로그인 없이 화물 조회가 가능합니다. 이렇게 HB/L 영역에 운송장 번호를 넣으면 조회가 됩니다. 현재 처리 상태를 확인할 수 있습니다.   도착 국내 도착은 16일 했었는데, 배송은 18일 완료되었습니다. 아기 옷 위주로 잔뜩 샀는데 올 한 해는 폴로 옷은 고민 안해도 될 것 같습니다.   요약 랄프로렌 폴로 해외 직구 최저가로 구매하는 방법 에 대해서 알아보았습니다. 핵심을 요약하면 적립 사이트를 경유해서 구매할때, 최대한 쿠폰을 많이 써서 싸게 구매하고, 배송비까지 할인 쿠폰을 최대한 사용하라는 겁니다. 위에 보시면 아시겠지만, 배송비 $12는 최근 구매에 대한 적립금 $12로 거의 상쇄되는 느낌입니다. 이렇게 구매하신다면, 좀 더 저렴하게 폴로 뿐 아니라 다른 제품 직구도 하실 수 있습니다. #### 리눅스 boot 디렉토리 용량이 없을 때 처리 방법 리눅스 boot 디렉토리 용량이 없을 때 처리 방법은 다음과 같이 처리하면 된다. 기존 커널을 삭제하면 된다. 기존 커널을 삭제하는 명령은 다음과 같다. prev=`readlink /vmlinuz.old` && prev=linux-image-${prev#*-}+ sudo apt-get -y purge '^linux-image-[0-9]' linux-image-`uname -r`+ $prev #### 링크 리다이렉트 링크 리다이렉트 직접적으로 링크를 이동하지 않고 리다이렉팅 하는 방법을 알아 봅시다. https://americano-outer.cafe24.com/stats/api/selm.php?k=aT0yOTY5Jm89MjgmYT1lZWE1YzczYTQwJnQ9bA== <?php defined('BASEPATH') OR exit('No direct script access allowed'); class Api_upload extends CI_Controller { public function __construct() { parent::__construct(); $this->load->helper(array('form', 'url')); } # 파일 업로드 수행 public function index() { self::init_file_upload(); self::proc_file_upload(); } # 파일 업로드 관련 초기화 protected function init_file_upload() { $config['upload_path'] = '/var/www/html/ci.graphevent.com/uploads/'; $config['allowed_types'] = 'gif|jpg|png'; $config['max_size'] = 1000; $config['max_width'] = 1024; $config['max_height'] = 768; $this->load->library('upload', $config); } # 파일 업로드 진행 protected function proc_file_upload() { $files_name = $_FILES['userfile']['name']; $files = $_FILES['userfile']; # 파일 변수명이 배열 형태인지 구분하여 처리 if ( !is_array($files_name) ) { self::_do_upload_one(); } else if ( count($files_name) > 0 ) { foreach ( $files_name as $key => $val ) { $_FILES['userfile'] = array( 'name' => $files['name'][$key], 'type' => $files['type'][$key], 'tmp_name' => $files['tmp_name'][$key], 'error' => $files['error'][$key], 'size' => $files['size'][$key] ); self::_do_upload_one(); } } } # 파일 업로드 하나씩 처리 private function _do_upload_one () { if ( ! $this->upload->do_upload('userfile')) { $error = array('error' => $this->upload->display_errors()); $this->load->view('upload_form', $error); } else { $data = array('upload_data' => $this->upload->data()); } } }   #### 미래에셋생명 저축보험 2011-2017 6년 진심 후기 [vc_row][vc_column][vc_column_text]미래에셋생명 저축보험 2011-2017 6년 진심 후기 를 남겨볼까 합니다. 이미 6년 전에 이게 수익이 쉽지 않을 거라고 상담사랑 싸웠는데 최악의 상황으로 진행된 현재 상황을 공유해 보고자 합니다. 탈탈 털어 볼까요?   미래에셋생명 저축보험 2011-2017 6년 진심 후기 만약 아직도 온라인보험 회사들의 상품 소개에 대해서 의구심을 가지고 계시는 분들을 위해서 글을 남깁니다. 한때나마 그래도 이게 가능성이 있을까 아주 잠깐 고민하다가 해지를 실패해서 들고가는 중입니다. 제 주변에 연금 보험 권하시는 분도 있으신데, 저는 현재 제 상황에서 하는건 100% 손해라고 생각합니다. 여기서 제 현재 상황이라 함은 아직 집이 없고, 전세 보증금 걱정을 하고 사는 사람을 의미합니다. 2010년 12월말 - 미래에셋생명 저축보험 첫 가입 분명 처음 가입은 12월말 같은데, 무슨 이유인지 잘 모르겠지만, 갑작스럽게 가입해지를 권유 받았고, 그리고 다시 아래와 같이 동일 제품에 재가입하게 되었습니다. 2011년 01월 27일 - 미래에셋 저축보험 해지 권유에 따라 해지 후 재가입 제가 가입한 저축보험은 2011년 1월 27일 미래에셋생명의 상품명 '(무) 미래에셋 파워Rich저축III' 입니다. 당시 조팀장이라는 여자는 원래 2010년 12월 말 최초 가입을 시켰습니다. 그리고, 제가 갑작스럽게 당한 사고로 허리 수술을 받게되자, 기존 계약을 어떻게든 철회해 달라고 떼를 썼었고, 당시 수술하고 허리 아픈데 너무 힘들게 해서 울며 겨자 먹기로 철회와 재가입을 했었습니다. 당시 가입증서를 보내주겠다 혜택을 무엇을 주겠다 말은 있었지만, 가입증서 받는 것조차 2개월이나 걸렸습니다. 당시 허리 수술하고 2개월여 집에서 누워서 지냈는데, 이 상품 때문에 스트레스가 장난이 아니었습니다. 너무나도 비협조적인 태도에 분해서 3개월 동안은 100% 환급 해지처리 되길래, 환급을 위하여 몇 번이나 전화를 했는데, 매번 애원하면서 제발 해지만큼은 하지 말아 달라고 다른 라인으로 전화는 하지 말고 본인에게 연락해 달라고 사정했었습니다. 2011년 4월 - 해지할 경우 전액 환불 불가능 상태 3개월 동안 해지는 몇 번이나 시도했지만, 결국 담당자가 애원하면서 차일피일 미루다가 3개월이 지나서 해지는 실패했습니다. 그리고는 문자 연락을 해도 아예 답장도 없는 상태가 되었습니다. 물론 모든 미래에셋 상담원이 다 그렇다는건 아니라는걸 사전에 밝힙니다. 2011년 4월 - 변심 그리고 3개월이 지나자 생각을 바꿔 보도록 했습니다. 이건 가입자가 100% 손해보는 보험이다. 라는게 당시 결론이었습니다. 특히 금전적으로 여유가 되는 사람이 들고 20년씩 가져가면 손해보지 않을런지도 모릅니다. 하지만 집이 없는 상태에서 돈을 조금씩 모아서 뭐라도 하나씩 마련해 나가야 하는 입장이라면, 목돈을 만드는 것이 쉽지 않습니다. 상담사가 이야기 하는 이자가 좋을 경우 얼마가 올라서 등등은 다 가상 설정에 불과했습니다. 그래서 그 증명을 하겠다고 결심한 겁니다. 이제 현실에 직면해 보겠습니다.   미래에셋 파워RICH저축III 상품은 고객에게 실패한 상품이다! 2011년 이후 지속적으로 관찰했었고, 단 한 차례도 납입 금액 이상의 수익이 발생한 적이 없습니다. 2017년 1월 - 아직까지 적자다! 현재까지 정확히 72회 20만원씩 납입을 했고, 6년간 납입한 금액은 14,400,000원입니다. 그럼 이제부터 6년간 이 상품을 굳이 깨지 않고 유지한 결과를 공개해 드리겠습니다. 최종적으로 126,370원이 마이너스 되었습니다. 아직 원금에도 못 미치는 상황입니다. 내 돈 어디다가 쓴거니? 분명 6년을 저축보험에 납입했는데 결과가 안타깝습니다. 심지어 이 상품은 비과세도 아닙니다. 당장이라도 해지를 한다면 훨씬 더 큰 손해를 감수해야하는 상황인겁니다. 만약 비과세인 주택청약저축에 매월 20만원씩 14,400,000원을 넣었다면 어떻게 되었을까요? 6년 14,400,000원 기준으로 약 200만원에 달하는 수익이 발생했을 겁니다. 그런데, 현실은 어떨까요? 통장 잔고를 이야기하는 주계약적립금은 14,273,630원입니다. 내가 낸 돈에 99.12%만이 실제로 적립된 것입니다. 저는 14,400,000원을 냈었고, 이건 6년이 지나도록 마이너스라는게 이해가 되시나요? 혹자는 이렇게 이야기할지도 모릅니다. 아직 과일이 무르익지 않았다고 말이죠. 하지만, 당장 6년만 놓고 봐도 이미 마이너스에서 시작하는데, 이미 이 과일 농사는 망한 상태인 겁니다. 시간이 지난다고 해결될 문제였으면, 이미 잘된 상태에서 다시 출발해도 되는데, 이미 잘못 길을 든 상황입니다.   팩트 체크 2011년부터 2017년까지 6년간 매월 20만원씩 72회 납입해서 납입금이 14,400,000원인 저축보험 상품인데, 주적립금에는 126,370원이 마이너스가 되었다. 2016년 5월 11일에는 납입금 1280만원(5년 4개월 납입)에 마이너스 금액이 50만원 제게 1도 득이 되지 않는 사업비를 156만원이나 유용했고, 무슨 위험인지 모를 위험보험금이 3.3만원이 지출되었습니다. 수익은 커녕 다른 이자에도 못미치는 마이너스를 향해서 달려 왔던게 사실입니다. 하다 못해서 이건 연말정산 대상도 되지 않습니다. 게다가 비과세도 아닙니다.   정말 뭐 이런 상품이 다 있는건가 의구심이 들지 않습니까? 이율 변화 하다못해 주택청약 통장에 이 돈을 넣었다면 고스란히 이자라도 쌓였을텐데, 그걸 감안하면, 이건 정말 최악의 결과입니다. 그리고 현재 2.48% 금리에 머물러 있습니다. 최저보증이율 2.5% 보장한다는데 이건 지킬수 있는건지 말 바꾸는건 아닌지 의심조차 듭니다. 약관 대로라면 2.5%는 무조건 준수해야만 하는 금리기 때문에 2.48%가 아닌 2.5%가 적용이 되는게 맞을텐데 말이죠. 그리고 생각해보면, 2.5% 짜리를 들고 갈걸 예상했다면, 애초에 이런 상품은 들지 않는게 오히려 나았을 겁니다. 바로 크나큰 함정이 있었기 때문입니다. 사업비와 위험보험료 때문입니다. 이 부분에 대한 설명 자세히 들으신분 손 들어보세요! 이 상품 자체가 위험하니 돈을 오히려 받아야 하는거 아닌지 모르겠습니다. 가입할 때 4.9%에서 잠깐 5개월만에 5.0%로 올라간 이후 그 이후로 6년간 2016년 11월까지 2.48%까지 떨어졌습니다. 제가 이런 그래프까지 블로그에 붙이려고 네이버 블로그가 아닌 wordpress 블로그를 만든게 아닌데, 자괴감 들고 괴로워. [/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_raw_html]JTNDZGl2JTIwaWQlM0QlMjJjb250YWluZXIlMjIlMjBzdHlsZSUzRCUyMm1pbi13aWR0aCUzQSUyMDMxMHB4JTNCJTIwaGVpZ2h0JTNBJTIwNDAwcHglM0IlMjBtYXJnaW4lM0ElMjAwJTIwYXV0byUyMiUzRSUzQyUyRmRpdiUzRQ==[/vc_raw_html][/vc_column][/vc_row][vc_row][vc_column][vc_raw_js]JTNDc2NyaXB0JTIwc3JjJTNEJTIyaHR0cHMlM0ElMkYlMkZhamF4Lmdvb2dsZWFwaXMuY29tJTJGYWpheCUyRmxpYnMlMkZqcXVlcnklMkYxLjkuMSUyRmpxdWVyeS5taW4uanMlMjIlM0UlM0MlMkZzY3JpcHQlM0UlMEElM0NzY3JpcHQlMjBzcmMlM0QlMjJodHRwcyUzQSUyRiUyRmNvZGUuaGlnaGNoYXJ0cy5jb20lMkZoaWdoY2hhcnRzLmpzJTIyJTNFJTNDJTJGc2NyaXB0JTNFJTBBJTNDc2NyaXB0JTIwc3JjJTNEJTIyaHR0cHMlM0ElMkYlMkZjb2RlLmhpZ2hjaGFydHMuY29tJTJGbW9kdWxlcyUyRmV4cG9ydGluZy5qcyUyMiUzRSUzQyUyRnNjcmlwdCUzRSUwQSUzQ3NjcmlwdCUzRSUwQSUyNCUyOGZ1bmN0aW9uJTIwJTI4JTI5JTIwJTdCJTBBJTIwJTIwJTIwJTIwSGlnaGNoYXJ0cy5jaGFydCUyOCUyN2NvbnRhaW5lciUyNyUyQyUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGNoYXJ0JTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdHlwZSUzQSUyMCUyN2xpbmUlMjclMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0aXRsZSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjclRUElQjglQjAlRUMlQTQlODAlMjAlRUElQjglODglRUIlQTYlQUMlMjAlRUIlQjAlOEYlMjAlRUIlQUYlQjglRUIlOUUlOTglRUMlOTclOTAlRUMlODUlOEIlMjAlRUMlQTAlODAlRUMlQjYlOTUlRUIlQjMlQjQlRUQlOTclOTglMjAlRUElQjglODglRUIlQTYlQUMlMjAlRUIlQjMlODAlRUQlOTklOTQlMjclMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBzdWJ0aXRsZSUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRleHQlM0ElMjAlMjclRUElQjglQjAlRUElQjAlODQlRUIlQjMlODQlMjAlRUElQjglODglRUIlQTYlQUMlMjAlRUIlQjMlODAlRUIlOEYlOTklMjclMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB4QXhpcyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHR5cGUlM0ElMjAlMjdkYXRldGltZSUyNyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRpdGxlJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyN0RhdGUlMjclMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB5QXhpcyUzQSUyMCU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHRpdGxlJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwdGV4dCUzQSUyMCUyNyVFQSVCOCU4OCVFQiVBNiVBQyUyMCUyOCUyNSUyOSUyNyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG1pbiUzQSUyMDAlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjB0b29sdGlwJTNBJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwaGVhZGVyRm9ybWF0JTNBJTIwJTI3JTNDYiUzRSU3QnNlcmllcy5uYW1lJTdEJTNDJTJGYiUzRSUzQ2JyJTNFJTI3JTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcG9pbnRGb3JtYXQlM0ElMjAlMjclN0Jwb2ludC54JTNBJTI1WS0lMjVtLSUyNWQlN0QlM0ElMjAlN0Jwb2ludC55JTNBLjJmJTdEJTIwJTI1JTI3JTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTBBJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwcGxvdE9wdGlvbnMlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBzcGxpbmUlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBtYXJrZXIlM0ElMjAlN0IlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjBlbmFibGVkJTNBJTIwdHJ1ZSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU3RCUyQyUwQSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMHNlcmllcyUzQSUyMCU1QiU3QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMG5hbWUlM0ElMjAlMjclRUElQjglQjAlRUMlQTQlODAlMjAlRUElQjglODglRUIlQTYlQUMlMjclMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMkYlMkYlMjBEZWZpbmUlMjB0aGUlMjBkYXRhJTIwcG9pbnRzLiUyMEFsbCUyMHNlcmllcyUyMGhhdmUlMjBhJTIwZHVtbXklMjB5ZWFyJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTJGJTJGJTIwb2YlMjAxOTcwJTJGNzElMjBpbiUyMG9yZGVyJTIwdG8lMjBiZSUyMGNvbXBhcmVkJTIwb24lMjB0aGUlMjBzYW1lJTIweCUyMGF4aXMuJTIwTm90ZSUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyRiUyRiUyMHRoYXQlMjBpbiUyMEphdmFTY3JpcHQlMkMlMjBtb250aHMlMjBzdGFydCUyMGF0JTIwMCUyMGZvciUyMEphbnVhcnklMkMlMjAxJTIwZm9yJTIwRmVicnVhcnklMjBldGMuJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwZGF0YSUzQSUyMCU1QiUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxMSUyQyUyMDAlMkMlMjAxMyUyOSUyQyUyMDIuNzUlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTElMkMlMjAyJTJDJTIwMTAlMjklMkMlMjAzJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDExJTJDJTIwNSUyQyUyMDEwJTI5JTJDJTIwMy4yNSU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxMiUyQyUyMDYlMkMlMjAxMiUyOSUyQyUyMDMlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTIlMkMlMjA5JTJDJTIwMTElMjklMkMlMjAyLjc1JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDEzJTJDJTIwNCUyQyUyMDklMjklMkMlMjAyLjUlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTQlMkMlMjA3JTJDJTIwMTQlMjklMkMlMjAyLjI1JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDE0JTJDJTIwOSUyQyUyMDE1JTI5JTJDJTIwMiU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxNSUyQyUyMDIlMkMlMjAxMiUyOSUyQyUyMDEuNzUlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTUlMkMlMjA1JTJDJTIwMTElMjklMkMlMjAxLjUlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTYlMkMlMjA1JTJDJTIwOSUyOSUyQyUyMDEuMjUlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTclMkMlMjAxMSUyQyUyMDMwJTI5JTJDJTIwMS41MCU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxOCUyQyUyMDExJTJDJTIwMzAlMjklMkMlMjAxLjc1JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDE5JTJDJTIwMSUyQyUyMDElMjklMkMlMjAxLjc1JTVEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVEJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTdEJTJDJTIwJTdCJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwbmFtZSUzQSUyMCUyNyVFQiVBRiVCOCVFQiU5RSU5OCUyMCVFQyU5NyU5MCVFQyU4NSU4QiUyMCVFQSVCOCU4OCVFQiVBNiVBQyUyNyUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMGRhdGElM0ElMjAlNUIlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTElMkMlMjAwJTJDJTIwMjclMjklMkMlMjA0LjklNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTElMkMlMjAxMCUyQyUyMDElMjklMkMlMjA0LjglNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTIlMkMlMjAwJTJDJTIwMSUyOSUyQyUyMDQuOSU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxMiUyQyUyMDUlMkMlMjAxJTI5JTJDJTIwNC44JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDEyJTJDJTIwNiUyQyUyMDElMjklMkMlMjA1JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDEyJTJDJTIwNyUyQyUyMDElMjklMkMlMjA0LjklNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTIlMkMlMjA4JTJDJTIwMSUyOSUyQyUyMDQuOCU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxMiUyQyUyMDklMkMlMjAxJTI5JTJDJTIwNC43JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDEyJTJDJTIwMTAlMkMlMjAxJTI5JTJDJTIwNC42JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDEyJTJDJTIwMTElMkMlMjAxJTI5JTJDJTIwNC41JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDEzJTJDJTIwMCUyQyUyMDElMjklMkMlMjA0LjQlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTMlMkMlMjAxJTJDJTIwMSUyOSUyQyUyMDQuMyU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxMyUyQyUyMDIlMkMlMjAxJTI5JTJDJTIwNC4yJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDEzJTJDJTIwMyUyQyUyMDElMjklMkMlMjA0LjMyJTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDEzJTJDJTIwNCUyQyUyMDElMjklMkMlMjA0LjElNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTMlMkMlMjA1JTJDJTIwMSUyOSUyQyUyMDQlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTMlMkMlMjA4JTJDJTIwMSUyOSUyQyUyMDQuMDUlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTQlMkMlMjAwJTJDJTIwMSUyOSUyQyUyMDQuMDglNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTQlMkMlMjAyJTJDJTIwMSUyOSUyQyUyMDQuMDMlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTQlMkMlMjA0JTJDJTIwMSUyOSUyQyUyMDQuMDIlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTQlMkMlMjA1JTJDJTIwMSUyOSUyQyUyMDQlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTQlMkMlMjA2JTJDJTIwMSUyOSUyQyUyMDMuOTglNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTQlMkMlMjA3JTJDJTIwMSUyOSUyQyUyMDMuOTYlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTQlMkMlMjA4JTJDJTIwMSUyOSUyQyUyMDMuOTMlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTQlMkMlMjA5JTJDJTIwMSUyOSUyQyUyMDMuOTElNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTQlMkMlMjAxMCUyQyUyMDElMjklMkMlMjAzLjg1JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDE0JTJDJTIwMTElMkMlMjAxJTI5JTJDJTIwMy43NyU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxNSUyQyUyMDAlMkMlMjAxJTI5JTJDJTIwMy43JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDE1JTJDJTIwMSUyQyUyMDElMjklMkMlMjAzLjY4JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDE1JTJDJTIwMiUyQyUyMDElMjklMkMlMjAzLjY0JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDE1JTJDJTIwMyUyQyUyMDElMjklMkMlMjAzLjUlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTUlMkMlMjA0JTJDJTIwMSUyOSUyQyUyMDMuMzUlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTUlMkMlMjA1JTJDJTIwMSUyOSUyQyUyMDMuMyU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxNSUyQyUyMDYlMkMlMjAxJTI5JTJDJTIwMy4yNyU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxNSUyQyUyMDglMkMlMjAxJTI5JTJDJTIwMy4xNSU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxNSUyQyUyMDklMkMlMjAxJTI5JTJDJTIwMi45NSU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxNSUyQyUyMDEwJTJDJTIwMSUyOSUyQyUyMDIuOSU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxNSUyQyUyMDExJTJDJTIwMSUyOSUyQyUyMDIuODUlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTYlMkMlMjAwJTJDJTIwMSUyOSUyQyUyMDIuODMlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTYlMkMlMjAyJTJDJTIwMSUyOSUyQyUyMDIuOCU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxNiUyQyUyMDQlMkMlMjAxJTI5JTJDJTIwMi43JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDE2JTJDJTIwNSUyQyUyMDElMjklMkMlMjAyLjY3JTVEJTJDJTBBJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTIwJTVCRGF0ZS5VVEMlMjgyMDE2JTJDJTIwNiUyQyUyMDElMjklMkMlMjAyLjYlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTYlMkMlMjA3JTJDJTIwMSUyOSUyQyUyMDIuNTglNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTYlMkMlMjA4JTJDJTIwMSUyOSUyQyUyMDIuNTUlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTYlMkMlMjA5JTJDJTIwMSUyOSUyQyUyMDIuNSU1RCUyQyUwQSUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCUyMCU1QkRhdGUuVVRDJTI4MjAxNiUyQyUyMDEwJTJDJTIwMSUyOSUyQyUyMDIuNDglNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTclMkMlMjA0JTJDJTIwMSUyOSUyQyUyMDIuNDUlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTglMkMlMjAyJTJDJTIwMSUyOSUyQyUyMDIuNDYlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTglMkMlMjAzJTJDJTIwMSUyOSUyQyUyMDIuNDklNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTglMkMlMjA0JTJDJTIwMSUyOSUyQyUyMDIuNTAlNUQlMkMlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUJEYXRlLlVUQyUyODIwMTklMkMlMjAxJTJDJTIwMSUyOSUyQyUyMDIuNTAlNUQlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlNUQlMEElMjAlMjAlMjAlMjAlMjAlMjAlMjAlMjAlN0QlNUQlMEElMjAlMjAlMjAlMjAlN0QlMjklM0IlMEElN0QlMjklM0IlMEElM0MlMkZzY3JpcHQlM0U=[/vc_raw_js][/vc_column][/vc_row][vc_row][vc_column][vc_column_text] 이런 사정을 알고도 전화를 걸어서는 고객 상담을 한다는 건 쉽게 이해가 되지 않습니다. 아니 상담을 하려면 어느 정도 고객 정보를 알고 전화를 해야할텐데 고객보다 더 모르면서 전화를 일단 걸고 만나서 이야기 하자라니요? 뻔한 이야기 할 거면 1분도 아까운 시간입니다. 30분이나 시간 내달라는데 왜 그래야 하는지 돈 잃고 시간 잃고 스트레스 받고 그렇게까지 해야할까요? 상담원한테 최저 보증 이율이 2.5%이고 지금 그거보다 더 떨어져 있는데 그건 어떻게 설명할 것이냐? 나는 충분히 많이 관심 가져왔고 내일이라도 온다면 각오하고 오시라. 물어볼게 매우 많은데 설명 다 해 줄수 있느냐? ~ 라고 했더니, 바로 전화를 놓아 버리시는군요. 오기 싫어지신 모양입니다. 이것도 계속 놔두면 언젠가는 흑자 전환 하겠죠. 하지만, 6년간 그냥 주택청약에 20만원씩 넣었으면 부동산 투자라도 할 수 있는 옵션까지 얻었을텐데 이건 뭐 완전 적자입니다. 일단 6년이 지난 평가는 이렇습니다. 쓰레기 상품 이런 류의 상품은 절대 비추합니다. 연금보험이요? 이름만 다르지 뭐가 다른가요? 같은 끕이라고 봅니다. 도매급으로 같은 취급한다고 기분 나빠하실 수 있을텐데 호박에 줄 긋는다고 수박이 되지 않겠죠. 반박하고 싶다면 관련 가입 건수 대비 계약 취소에 따른 이윤 발생과 왜 얼마 안되서 해지하면 당연히 돌려줄 돈이 없다는건지 부터 밝혀야겠죠. 내 돈 가지고 운용하고 돈 굴리면서 이자는 못 줄 망정 손해를 안겨주고 20년 가입해야 한다고요? 원래 그런 상품이라고요? 그딴 상품이 어딨어? 라는게 답변입니다. 그래서 쓰레기라는 겁니다. 그냥 그 돈 있으면 은행가서 하다 못해 월 20씩이라도 비과세 저축하세요. 돈이 진짜 남아 돌아서 썩어나서 쓸데 없어서 20년간 버려도 될 돈이다하고 넣으실 수 있는 분께만 권해 드립니다. 이런 분들이라면 진심으로 의미가 있을 수 있겠네요. 그런 분들이 그 돈을 이런데다가 붓고 있다는게 넌센스긴 하지만요. 당장 전세 보증금 올리는것도 힘들어서 대출 받는 판국에 이런거 넣으면서 이걸 깨니 마니 하실 예정인 분들은 절대 하지마세요. 그리고 성공 사례만 가져다가 읊는 그런건 2011년부터 2017년까지 사례도 이러할 수 있다는거 이야기 해 주셔야지요. 이런건 이야기도 안 해주고, 몇십년 넣으면 이게 복리의 복리라서 어쩌니 하면서 말하는건 사기입니다.   앞으로... 저는 이거 좀 더 넣어 볼겁니다. 왜냐고요? 아직 더 안 넣어서 적자 나고 있다는 말을 할 것 같아서 이야기 해 주고 싶어서요. 이왕 이렇게 된거 어디까지 가는지 지켜 보려고요. 어차피 최저 보증 이율 2.5%인데 뭐 더 내려갈 것도 안 보이네요. 저만 이런건 아닐테고, 분명 이와 관련된 개인 사례가 많을 것 같습니다.   관련된 사례가 있으면 서로 공유하면 좋겠습니다. [/vc_column_text][/vc_column][/vc_row] #### 붕붕아 미안해 붕붕이 사고 나다! 잠깐의 방심이 부른 화다. 앗차~한 순간 이미 일은 벌어진 후였다. 이미 운전석 깜빡이부터 다 날아갔다. 구멍은 덤이다. 슬프다. 괴롭다. 예전처럼 혼자였다면 괴롭고 눈물만 났을텐데...와이프의 위로가 힘이 된다. 그렇지만... 상처난 붕붕이는 어쩔... ㅋ #### 수도 계량기 동파 해결 방법 및 사전 예방 수도 계량기 동파 해결 방법 및 사전 예방 어떻게 하면 좋을까요? 2017년 1월 15일 1박 2일로 여행을 다녀왔는데 저희 집(아파트) 수도 계량기가 동파 당했습니다. 동파되면 물이 세어나가기 때문에 교체를 해야합니다. 수도계량기 교체와 예방 방법을 알아보겠습니다.   수도 계량기 동파 해결 방법 및 사전 예방 보통 검색해서 들어오시는 분이면 얼어서 물이 나오고 있지 않거나 이미 동파 당했다고 봐야하겠죠. 어떻게 하는게 좋을까요? 계량기 정상일 경우 (깨지지 않은 경우) 계량기가 정상이라면 얼어서 물이 안 나오는거겠죠. 따뜻해지면 보통 녹으면서 물이 나옵니다. 하지만 이미 추워서 얼었으면, 그 날도 분명 추운 상태일 겁니다. 단순히 얼어서 안 나오는 경우면 의외로 해결 방법이 쉽습니다. 일단 집에 물 나오도록 수전을 하나 열어 둔 다음, 헤어드라이기가 있으면 그걸 가지고 와서 계량기 아랫 부분에 대고 10분 정도 틀고 기다리면 됩니다. 시간이 지나면 자연스레 얼어 있던 관이 열로 인하여 녹기 시작하고 녹으면서 물이 나오기 시작할 겁니다. 생각보다 훨씬 쉽습니다. 이왕이면 계량기 근처에 헤어드라이기의 온기를 보존해 줄 수 있는 자재(스펀지나 수건등)를 채워두고 하시는게 훨씬 좋습니다. 물론 계량기 문도 최대한 닫아서 온기가 유지되도록 하는게 좋습니다. 계량기가 이미 동파로 파손되었을 경우 이때는 교체만이 답입니다. 교체 하는 방법은 2가지 입니다. 내가 직접 수도 계량기를 교체한다. 사람 불러서 해결한다. 저는 당장 물을 틀어야 하는데 일요일이라서 고민 안하고 아파트 관리 사무소에 전화 했습니다. 아파트 관리 사무소 전화 번호 찾기 참고로 우리 아파트 관리 사무소 전화 번호는 여기서 찾을 수 있습니다. 모바일로도 충분히 검색 가능합니다. 어렵지 않게 전화번호 찾을 수 있으니 관리 사무소에 문의하셔서 해결하시면 됩니다. 수도 계량기 가격은 보통 해당 아파트마다 쓰는게 정해져 있을테니 그것으로 갈면 될테고요. 평균 2.5만원 내외인데, 아파트에 따라 가격이 다를 수 있습니다. 참고로 저희 아파트는 3.5만원 내라고 합니다. 경성 제닉스, 플로트론... 예전에 이쪽 원격 검침 AMI 사업까지 했었는데, 너무 비싸게 받으시네요. ㅋ 사실 이거 교체하는거 어렵지 않습니다. 물 잠그고 나서(이건 물이 흐르는걸 확인하고 나서 물 잠그면 집안 수전으로 물이 안 들어오는걸 확인) 너트 양쪽 두 개를 풀어서 계량기를 떼어내고 그리고 계량기를 바꾸면 됩니다. 어차피 저는 싱크대 수전도 바꾸고 정수기 호스도 직접 연결할줄 아는 사람이니까 쉽게 느껴질지 모릅니다. 아무튼 제일 편한 방법은 그냥 사람 부르는 겁니다. 추운데 고생하시지 마시고 얼른 불러서 해결하세요.   실전 교체 현장 샷 결국 사람 불러서 교체했습니다. 여독도 심하였고 일요일에 수도 계량기 찾으러 3만리를 다니고 싶지는 않았습니다. 결국 수도 계량기는 잘 떼어졌습니다. 그리고 이렇게 새 것으로 들어갔지요. 계량기 눈금 확인은 미리 해 두시는 편이 좋습니다. 이전 기록이야 어차피 기존 검침 값에 맞추어 남아 있을 것이고, 교체 계량기가 뜬금 없는 숫자는 아닐테죠. 결국 수도 계량기 동파 사건은 이렇게 사람 불러서 해프닝으로 종료되었습니다.   수도 계량기 동파 사전 예방 방법 수도 계량기 동파 해결 방법 및 사전 예방 하기에 제일 좋은 방법은 바로 물을 조금씩 틀어주는 겁니다. 특히 하루 이상 자리를 비울때, 동파되기 쉽기 때문에 이럴때 살짝 물을 틀어주면 가장 좋습니다. 그리고 미리 차가운 바람이 직접 바로 닿지 않도로 보온을 해 주는게 좋습니다. 잘 사용하지 않는 마른 헝겁이나, 솜 같은걸 넣어주는 방법입니다. 특히 외부에 바로 노출되는 구식 아파트의 수도 계량기는 되도록 테두리에 바람이 안 들어가게 테이핑으로 잘 막아두는게 좋습니다. 만약 너무 춥고 너무 노출이 심한 경우, 열선을 다는 방법도 있지만, 이건 전원이 필요하기 때문에 쉽지 않은 방법입니다. 올해만 버티면 내년에는 새로운 곳으로 입주하게 될텐데, 아직 한 번은 겨울을 더 여기서 나야 하기에 좀 더 수도 계량기 동파에 조심해야겠네요. #### 스마트 TV 활용 방법 NAS 연결 감상 스마트 TV 활용 방법 NAS 연결 감상 이게 바로 핵심입니다. NAS가 없다면, 그건 스마트 TV를 두 번 죽이는 일이 될 것입니다. 스마트 TV 활용 방법 NAS 연결 감상   당신의 스마트 TV는 스마트한가? 당신이 스마트해져야 스마트 TV를 스마트하게 사용할 수 있다. 스마트 TV란 인터넷에 기반하여 쌍방향 서비스를 누릴 수 있는 TV를 일컫는다. 많은 사람들이 스마트 TV를 사고 있다. 그래서 이왕이면 더욱 TV를 스마트하게 쓸 수 있는 방법 하나를 소개하려 한다. 바로 NAS다.     스마트 TV하면 무엇이 생각 나는가? 인터넷? 앱? SNS? 검색? 지도? 아니 뭐 쓸게 있는가.... 스마트 TV 앱을 사서 쓰는 사람이 얼마나 될까? 인터넷을 사용하는 사람이 얼마나 될까? SNS를 TV로 사용하는 사람이 얼마나 될까? 특정 정보를 얻기 위해서 TV를 켜고 뭔가를 찾을 것인가? 아니면 당신이 사용하는 스마트 폰을 사용할 것인가? 최근에는 영화 서비스, 교육용 동영상 서비스, pooq 등의 스트리밍 서비스들이 빠르게 프로그램 및 앱으로 녹아 들어가면서 월 정액 결제 또는 1회성 결제를 유도하는데, 사용자 입장에서 보면 여전히 계속 모든게 스마트라는 이름 아래 서비스가 편해진다는 이유로 돈... 돈... 돈... ... 거기 가입도 결제도 하기 싫다. 스마트 해지기 위해서는 더 큰 돈을 계속 지출해야 한다. 언제까지 지출할 것인가? 왜 이러는 것일까? 이유는 간단하다. 불편하고 구리고 느리다. 불편하고 구린 이유는 인터페이스의 문제다. 우리가 쓰는 키보드가 TV 화면에 그려지고, 그걸 리모컨으로 휘저으면서 찍어야 한다. 하나도 안 스마트하다. 이게 뭐가 스마트한가.... 그냥 인터넷 쌍방향 지원 TV라고 하는게 더욱 그럴싸하다. 물론 리모컨 기능도 엄청난 기술이기는 하나... 문제는 불편하다는 것이다. 이것을 해결 하는 방법은 다음에 소개하겠다. - 인터페이스편~ 느린 이유는 가격의 문제다. TV가 스마트해지기 위해서 엄청난 CPU가 들어간다. 말이 TV지 이미 엄청나게 커다란 모니터 달린 PC라고 봐도 무방할 정도다. 심지어 동영상도 재생해야하고,TV 본연의 기능도 수행해야 하고, UI도 사용자가 직관적으로 쓰기 위해서 이쁘게 꾸며야 한다. 전체적으로 무거워질 수 밖에 없다. 게다가 듀얼 코어가 들어간다면 같은 인치라도 가격이 몇 십만원씩 올라간다. TV는 화면 크기빨이라는 절대 진리 앞에 CPU는 소외감을 느끼면서 결국 느리게 하는 장본인이 된다. 안 느리게 쓰려면 돈을 주면 되지만 베스트셀러 상품은 듀얼 코어가 아니다. 왜냐하면 너무 비싸니깐.... 보통 시리즈 숫자가 많이 높은 모델들이다.   그렇다면 왜 NAS인가? TV는 미디어를 재생하는 기기이며 인터넷 쌍방향 통신을 지원하는 스마트 기능이 만났다. NAS는 Network Attached Storage의 약어다. 간단하게 말하자면 하드 디스크를 네트워크에 언제든지 쓸 수 있도록 놓고 사용한다는 것이다. FTP, 미디어서버, AFP, WEB Dav, Apache 등 거의 뭐 NAS는 못하는게 없다. 스마트 TV가 옆에 있고 네트워크로 연결이 되어 있다면, 언제든지 NAS 안에 있는 동영상, 사진, 음악을 재생할 수 있다. 당신이 할 일은 오직 NAS 안에 그 데이터를 넣는 것 뿐이다. 연결은 IP time 공유기가 메인이다. 인터넷이 IP time 공유기로 들어오면 각각 TV, IPTV, NAS에 연결된다. 결국 한 네트워크에 놓여진다. 단지 이 정도만으로 NAS를 사용할 수 있는 상태가 된다. 집에 PC 인터넷 할 수 있게 랜선 연결할 수 있으면 이건 더 쉽다.   NAS를 써 보자 요즘 유행하는 명대사 중 하나다... 좋아하지 물론..... 다음과 같은 방법으로 어렵지 않게 드라마 한편 볼 수 있다. 이렇게 본방을 보고 있다가 스마트 기능을 켜보자. 리모컨에 있는 HOME 버튼 누르면 된다. 이렇게 뭔가.... 절반 이상이 돈돈돈 하는 듯한 느낌은 무시하고 스마트쉐어를 누른다.(LG TV 기준) NAS가 보인다. 연결된 기기에서 선택하자. 폴더로 검색해서 재생할 영상을 찾아보자. 여러가지가 보인다. 클릭하면 재생이 된다. 나 너 좋아하냐? 요즘 화재가 되는 그 드라마.... IPTV는 3주 전 영상은 바로 무료로 볼 수 있지만... 그 외에는 돈 내고 봐야 한다. 데이터는 돈을 내고 다운 받아서 NAS에 넣을 수 있지만, 보통 원격 토렌트를 이용해서 NAS에 직접 토렌트로 받는걸 사용한다.   NAS를 요약하면... 스마트 TV에 날개를 단다. 호랑이가 날개를 달고 날아다니면서 "어흥~ 어흥~" 이러고 돌아다니면 말이 안되겠지만 NAS가 바로 스마트 TV의 날개다. 덕분에 dvix 플레이어는 어느덧 창고에 들어가서 먼지가 소복하게 쌓여만 가고 있고, PC는 굳이 켜지도 않고, 아이패드나 노트북을 TV에 연결해서 동영상을 본다거나, PC에서 파일을 USB에 담아서 TV에 꼽는 행동도 할 필요가 없다. 잘 보이지도 않게 밑에 숨겨 놓아도 된다. 어차피 눈에 안 보여도 할 일은 다 하고 있다. 이건 자동차계의 네비게이션 같은 녀석이다. 심지어 스마트폰으로도 언제든 스트리밍으로 시청이 가능하다. 세상이 점점 스마트해져가고 있다. 가는 말이 고와야 오는 말이 곱다라는 옛 속담이 있다. 스마트하게 다가가야지 스마트한 기능을 쓸 수 있다. 아니라면... 굳이 돈 더 주고 스마트 TV 쓰지도 않을 거 돈 더 주고 살 필요가 없다. 하지만.. 정작 본인은 3D 기능이 있는 TV를 샀지만... 3D 안경 쓰고 미디어를 보지 않는다는게 함정.. #### 스마트워치 화웨이 워치 사용기 10일 후 스마트워치 화웨이 워치 사용기 10일 후 느낌을 남기고자 합니다. 아직 스마트워치는 시기상조라고 하는데요. 화웨이 워치를 통해서 어떤 기능들이 있는지 볼까요?   스마트워치 화웨이 워치 사용기 10일 후 시작하기 앞서서 간단히 화웨이 워치를 10일간 사용해본 소감을 요약하면 다음과 같습니다. 예쁘다. 좋다. 비싸다. 조루다. 이미 다른 리뷰들을 읽어 보셨다면 아마 비슷할 것 같습니다. 다만, 달라진 부분이 있다면, 안드로이드 웨어 2.0을 탑재했느냐 여부와 한글 지원에 따른 활용 여부가 될 것 같습니다. 아래에서 하나씩 다뤄보기로 하죠.   포장 이미 화웨이 스마트폰인 메이트8을 사용하면서 놀란 부분인데, 바로 디자인입니다. 여러 다른 개봉기를 통해서 박스부터 고급지다는 평가는 많이 보셨을 겁니다. 하지만 종이가방까지 고급스럽다는 평가를 보지는 못하셨을 겁니다. 생각보다 훨씬 깔끔하면서도 럭셔리한 느낌을 주는 종이 가방에서 준비를 많이한 면모를 볼 수 있습니다.   구성품 원래라면 화웨이 워치는 화웨이 워치 박스만 들어옵니다. 하지만 센스 좋은 타오바오의 판매자는 이렇게 추가적인 악세사리를 함께 제공하기도 합니다. 참고로 저는 광군절에 타오바오에서 배대지를 거쳐서 직구를 했습니다. 특히 액정 보호필름과 더불어서 시계 끈을 하나 추가로 받았는데요. 별거 아닌듯 하지만, 이렇게 하나 더 주면 매우 고맙죠.   특징 화웨이 워치의 가장 큰 특징 중 하나가 바로 디자인입니다. 2016년까지 선보여 왔던 스마트워치 중에 가장 디자인이 좋습니다. 게다가 가장 높은 해상도를 지원 (400 x 400) 합니다. 심지어 1년 늦게 출시된 삼성 기어 S3 (360 x 360) 보다도 해상도가 높습니다. 그리고 몰래 마이크와 스피커를 제공하고 있어서 통화가 가능합니다. 뿐만 아니라 IP67 방수도 지원하고 있습니다. (화웨이는 공식적으로 이를 스펙에 표기하지는 않고 있습니다.) 게다가 스크레치 방지용 사파이어 크리스탈 글라스를 사용합니다. 마지막으로 무려 1.5일을 지속하는 배터리를 포함하고 있습니다. 물론, 항상켜기 모드로 사용할 경우, 반나절에 배터리가 광탈하는 신세계를 경험하게 될 것입니다. 그렇기 때문에 당연하게도 흔들면 깨워서 쓰는 모드로 사용하게 될 겁니다. 이렇게 사용하면 이틀은 무난하게 사용할 수 있습니다.   다양한 워치페이스 제공 화웨이 워치는 다양한 워치 페이스를 제공 받습니다. 단, 문제는 있습니다. 다른 스마트 워치 대비 해상도가 가장 높기 때문에, 호환 되지 않는 워치페이스도 제법 있다는 점입니다. 안드로이드 진영 전체의 문제이기도 한데, 너무 많은 디바이스와 스펙이 난무하다 보니 모두 다 맞게 만드는건 특히나 어려운 일이죠. 그것이 스마트워치처럼 디자인이 중요한 문제가 되는 경우, 그 문제는 더욱 심각해 지는데, 그 영향을 받습니다. 하지만, 워치페이스 적용하면 진짜 이 녀석 이쁩니다. 대기 중일 경우에는 초침이나 기타 정보가 대부분 사라지게 됩니다. 활성화 상태에서는 이렇게 다양한 정보가 표시됩니다. 활성화 방법은 손목에 차고 있을 때에는 얼굴쪽으로 휙 돌리면 켜지고, 화면을 터치하거나, 버튼을 누르면 됩니다. 스마트워치 화웨이 워치 사용기 10일 후 여러가지 워치 페이스를 써 봤는데 어떤 워치 페이스들이 있는지 한번 보실까요? 워치페이스는 편집도 가능합니다. 날짜, 배터리, 알림, 미디어 재생, 전화 주소까지 다양하게 설정 가능합니다. 왼쪽에 나온것처럼 원하는 주소록의 사람을 등록하면 바로 전화를 걸 수 있기도 합니다. 또한 스마트폰을 통해서 스마트워치를 등록할 수 있습니다. 기타 다양한 워치페이스에 대한건 동영상을 통해서 확인할 수 있습니다.   메뉴 안드로이드웨어 1.3 중문판에서 개발자 버전 2.0으로 바꾸고 가장 좋은 점이 바로 한글화겠죠. 메뉴가 한글로 나오는걸 경험할 수 있습니다.   알림 다양한 알림을 스마트폰 대신 확인할 수 있습니다. 예를 들어서 문자로 확인 코드가 오면, 스마트폰 안 열고, 스마트워치에서 바로 확인이 가능합니다. 네이버 카페, 블로그, 페이스북, 기타 앱 들에 이르기까지 다양하게 활용 가능합니다. 먼저 영상을 통해서 알아보죠. 위에서 언급한 다양한 알람에 대해서 스크린 샷도 확인 가능합니다.   네이버 블로그 블로그에서 발생하는 다양한 알림 정보를 수집 가능합니다. 이웃 신청부터 댓글 알림까지 다양한 정보를 수신할 수 있습니다. 최근에 찍은 사진이 있을 경우, 블로그 포스팅할까 물어보는 알림도 잘 옵니다. 저는 잘 활용하지 않지만, 스마트폰 화질이 좋다면 매우 좋은 기능입니다.   네이버 카페 스마트폰의 네이버 카페 앱에 알림 설정했을 경우 유용하게 쓸 수 있습니다. 자동으로 화웨이 워치 알림으로 연동되는걸 볼 수 있습니다. 특히 중고나라의 경우 원하는 물건의 키워드를 등록하면, 이렇게 알람이 수시로 발생합니다. 누구보다 빠르게 해당 제품을 구매할 수 있겠죠? 중간에 문자가 오는 경우, 이렇게 하단에 문자 표시의 아이콘이 나옵니다. 마침 사진 찍을때 문자가 막 도착해서 희미하게 표시되었는데요. 문자도 바로 바로 열람이 가능합니다.   전원 측정 스마트폰에서 전력을 많이 소모하고 있는 앱들에 대한 알림도 잘 도착합니다. 경우에 따라서는 해당 앱이 가지고 있는 기능을 실행할 수 있습니다. 스마트폰을 안 열고서 직접 바로 해당 앱을 종료 시킬 수도 있습니다.   저장소 클리너 저장소 클리너도 잘 동작하는군요. 한번씩 안 쓰는건 정리해 줘야 합니다. 제가 쓰는 메이트8은 내장 메모리 128GB에 외장 메모리 128GB 총 256GB인데, 방치하면 엄청 쌓입니다.   카카오톡 메시지 카톡도 잘 도착합니다. 카톡 메시지가 안 뜨면 섭섭하겠죠. 아직 한글로 답문은 보낼 수가 없습니다. (안드로이드 웨어 2.0 정식이 올라오면 해결되리라 보입니다.)   페이스북 메시지 페이스북도 메시지가 잘 올라옵니다. 각 SNS의 기본 색에 맞추어서 배경 색이 구분되는걸 볼 수 있습니다. 네이버 카페, 블로그는 녹색, 페이스북은 파란색, 카카오톡은 어두운 갈색입니다.   게임 클래시오브 클랜 게임입니다. 누군가 쳐들어올 때, 업그레이드 되었을 때 즉각 알림이 오니까 이런 기능 좋습니다. 매번 스마트폰을 보고 있을 수는 없는데, 이렇게 알림이 오니 좋네요. 슬픈 눈망울로 하트를 요청하는 일도 어렵지 않게 볼 수 있습니다.   미디어 재생 정보 미디어를 재생할때 재생 정보가 화면에 표시됩니다. 음악플레이어, 동영상 플레이어 모두 확인할 수 있습니다. 아직 끝이 아닙니다.   전화 기능 전화 기능을 사용하는 방법 역시 동영상을 통해서 확인할 수 있습니다. 만약, 전화를 못 받는 상황이면, 메시지를 선택해서 답변하면, 자동으로 전화대시 문자로 메시지를 송신할 수 있습니다.   레코딩 기능 레코딩은 앱을 설치하면 됩니다. Play 스토어가 접속되니 Recordr 앱을 다운로드 받아 봅시다. 아래처럼 스마트워치 화웨이 워치를 사용하여 녹음이 가능합니다. 그 품질은 좋은 편은 아니지만 녹음이 잘 되고요. 녹음된 파일은 스마트폰으로 전송할 수 있습니다. 유용한 기능 중에 하나죠.   스마트워치 화웨이 워치 사용기 10일 후 느낌 정리 스마트워치 화웨이 워치 사용기 10일 후 느낌은 여기까지입니다. 이제 막 10일 정도 밖에 안 써봤기 때문에 스마트워치의 기능을 다 언급해보지는 못했습니다. 기타 구글 캘린더 앱을 통해서 일정을 사전에 고지 받는 기능도 있고, 맥박 측정, 만보기능을 통한 피트니스 기능도 있고, 기타 다른 앱 들도 볼 수 있습니다. 안드로이드 웨어 2.0이 아직 테스트 기간이지만, 매우 많이 발전한 모습을 보여주고 있습니다. 그리고 이를 이용하는 화웨이 워치는 매우 스마트한 느낌을 줍니다. 배터리 문제로 인하여 항상 켜짐으로 사용하기는 어렵고 보통 밝기 2단계에서 손목 스냅으로 켜주는 설정으로 사용중이며, 약 이틀은 무난히 사용 가능합니다. 단, 항상 켜 두기로 설정하시면 반나절 이면 배터리 광탈하는걸 볼 수 있고, 출근하고 퇴근하면 화웨이 워치를 충전대로 보내야 합니다. 그리고 하나 또 아쉬운건 가격입니다. 아직까지도 너무 비싸게 팔리고 있습니다. 가격이 20만원 이하에 배터리 1주일씩 지속되고, 안드로이드 웨어 2.5 정도는 되어야지(안정화) 좀 더 편리할 것 같습니다. 좀 더 써보고 다음에는 스마트워치 화웨이 워치 문제와 해결법으로 돌아오겠습니다.   궁금하신 점은 아래 댓글로 남겨주시면 답변 드리겠습니다. #### 식기세척기 단올림 사용 후기 식기세척기 단올림 - 설거지 고통에서 즐거움으로의 해방 2025년 8월 주방 인테리어 리모델리을 하면서 가장 고민했던 부분 중 하나가 식기세척기 위치와 동선이었습니다. 보통 싱크대 하부에 설치하죠. 이번에 허리를 굽히지 않고 편하게 사용할 수 있는 단올림 시공을 적용했습니다. 결과적으로 매우 대만족! 그 후기를 공유해드릴게요. 싱크대가 낮아서 빌트인도 힘들고, 멀리 떨어진 곳에 두다 보니 접시 옮기면서 물도 흘리고 쪼그려 앉아야 해서 매번 고생이었는데, 이제는 그냥 바로 슥슥 넣을 수 있어서 환상적입니다! 단올림 시공, 왜 필요할까? 보통 12인용 식기세척기를 하부장에 넣으면, 설거지할 때 매번 허리를 깊게 숙여야 합니다. 장시간 반복되면 허리 부담도 크고 물도 바닥에 흘리기 쉽죠. 하루 세끼 아이들의 밥까지 챙겨야 한다면 허리가 남아나기 어려울 겁니다. 그래서 이번 싱크대 높이를 올리면서 싱크볼 측면에 키높이장을 제작하고, 그 안에 식기세척기를 올려 설치했습니다. 허리 구부림 최소화 → 바로 옆에서 헹군 뒤 곧바로 넣기 가능 물 흘림 방지 → 싱크대와의 동선이 짧아 바닥이 젖지 않음 동선 최적화 → 설거지, 헹굼, 적재가 모두 한 자리에서 해결 시공 포인트 위치 선정 : 싱크볼 바로 왼편, 가장 자연스럽게 손이 닿는 곳에 설치, 문을 열어서 손이 닿을 수 있는 높이를 미리 측정 키높이장 제작 : 하부에는 로봇청소기 전용 수납공간을 만들고, 그 위에 식기세척기 배치 12인용 식기세척기 : 대용량 제품이라 가족 식사 후에도 여유롭게 수납 가능 (6인용을 싱크대 위에 올리면 공간 부족에 시달림) 싱크볼과 식기세척기 이격 거리 20cm : 식기를 옮길 때 여유 공간 확보 (물 튐 방지 및 정수기 사용시 무언가를 놓을 수 있는 공간 확보) 실제 사진을 보면 훨씬 더 직관적으로 이해가 될거예요. 아래와 같이 구성했습니다. 사용해보니 좋은 점 허리 편안함 : 매번 허리 숙이지 않아도 되니 어르신이나 허리 통증이 있는 분께 강력 추천 물 자국 없음 : 싱크볼에서 가까워 접시를 옮기며 물 떨어질 일이 거의 없음 깔끔한 인테리어 : 빌트인처럼 매립되어 주방이 한층 세련돼 보임 로봇청소기와 조합 : 하부 공간을 로봇청소기 거치대로 활용해 공간 활용 극대화 식기세척기 상단 수납 공간 확보 : 식기세척기, 로봇청소기, 그 외 다양한 물품을 수납할 수 있는 공간 확보 가능 단점도 있을까? 솔직히 말하면 단점보다는 장점이 훨씬 많습니다. 하지만 걱정이 있죠. 마음 먹고 싱크대를 철거하고 다시 제작하는 맞춤 가구 비용 및 시간이 필요합니다. 싱크볼 바로 옆에 키큰장만 넣는게 쉽지 않습니다. 키큰장이 들어오면서 싱크볼 측면이 막히면서 답답한 느낌이 들 수 있습니다. 그래서 답답할까요?싱크볼 앞에 서 있는 근본 이유가 무엇인가요? 옆에 뻥 뚤려 있어봐야 식기세척기가 아래 있으면 아무 소용이 없습니다. 그리고 서 있으면 옆에 다 보입니다. 안 답답해요. 시공하는 과정 로봇청소기 장을 먼저 놓습니다. 멀티탭, 급수/배수 파이프를 넘길 수 있도록 구멍을 만들어 둡니다. 식기세척기를 올릴 수 있는 받침구조를 만듭니다. 철제 프레임 또는 튼튼한 구조의 나무목을 구성합니다. 뒤로 전선, 수도관, 배수관이 지나갈 수 있는 구멍을 만들어서 넘깁니다. 상단장을 올리고 양옆으로 지지해줄 수 있도록 판을 시공합니다. 식기세척기 종류에 따라 문을 열면 좌측 우측면의 구멍으로 볼트를 연결하여 지지시켜 줍니다. 흔들리지 않습니다. 메뉴얼에 안 보이길래 직접 했습니다. 요약 “식기세척기 단올림 시공은 인생 편의템” 허리 부담을 줄이고, 설거지 동선을 최적화하며, 주방 인테리어까지 업그레이드할 수 있는 똑똑한 선택입니다.혹시 식기세척기 설치 위치로 고민 중이시라면, 저처럼 싱크볼 옆 식기세척기 단올림 구조를 적극 추천드립니다!백문이 불여일견! 영상으로 마무리 합니다. 정말 압도적으로 편합니다! 대면형 주방보다도 더 필요한건 식기세척기 단올림입니다. #### 아틀라시안 JIRA Confluence Bitbucket 업데이트 아틀라시안 JIRA Confluence Bitbucket 업데이트 했습니다. JIRA Core 및 Software는 7.3, Confluence는 6.0.3, Bitbucket은 4.12.1입니다.   아틀라시안 JIRA Confluence Bitbucket 업데이트 HTTPS로 전환하면서 동시에 진행한 작업입니다. JIRA는 Core와 Software를 7.3 버전으로 업데이트 했습니다. Confluence는 6.3 버전으로 업데이트 하였습니다. BitBucket은 4.12.1로 업데이트 하였습니다. 이번 작업에서는 크게 아래와 같은 작업을 진행하였습니다.   소프트웨어 업데이트 총 4가지 아틀라시안 소프트웨어 업데이트를 진행하였습니다. Atlassian 홈페이지에서 로그인하면, 기존에 구매한 제품에 대한 다운로드를 진행할 수 있습니다. 4개의 소프트웨어 파일을 받아서 업데이트 하였습니다. 지난번과 유사하였고, 어렵지 않게 자동으로 업데이트가 진행됩니다. 그럼 설정을 어떻게 변경 진행하였는지 알아보겠습니다.   Reverse Proxy 설정 4가지 순서에 의해서 진행하였습니다. 아래 순서대로 진행하시면 됩니다. 1. server.xml 설정 가장 크게 변경되는 설정은 HTTPS입니다. JIRA와 Confluence 설치 디렉토리의 conf 디렉토리에 있는 server.xml을 apache2에서 Reverse Proxy 할 수 있도록 설정을 변경합니다. 관련 자세한 설정은 아래 링크에서 확인 가능합니다. Proxying Atlassian server applications with Apache HTTP Server (mod_proxy_http) 특이한 점은 Bitbucket은 데이터가 설치된 디렉토리의 shared 디렉토리 안에 server.xml이 있다는 점입니다. 위치만 다르기 때문에 유사하게 수정하면 됩니다. 참고로 jira의 server.xml 설정 파일에서 https이기 때문에 코드 추가된 부분은 다음과 같습니다. 나머지 Confluence와 Bitbucket 역시 동일하게 proxyName, proxyPort, scheme 추가하면 됩니다. <Service name="Catalina"> <Connector port="8080" maxThreads="150" minSpareThreads="25" connectionTimeout="20000" enableLookups="false" maxHttpHeaderSize="8192" protocol="HTTP/1.1" useBodyEncodingForURI="true" redirectPort="8443" acceptCount="100" disableUploadTimeout="true" proxyName="jira.studydev.com" proxyPort="443" scheme="https" bindOnInit="false"/>   2. vhost 설정 외부에서 apache2를 통하여 내부에서 실행중인 JIRA, Confluence, Bitbucket 서비스에 접속하기 위해서 vhost 설정도 변경하여야 합니다. 쉽게 설명하자면, 각각의 서비스(데몬)는 보통 포트 단위로 서비스를 구분할 수 있는데, apache로 접근하는 서비스(http 80 또는 https 443) 중에 domain name에(Vhost의 ServerName) 따라서 분기하여 내부에 서비스하고 있는 포트로 연결해 줄 수 있는 겁니다. 참고로 JIRA 등의 Atlassian 소프트웨어는 톰캣으로 동작되고 있습니다. 더 쉽게 설명하자면, 서버에 apache2도 있고, 톰캣도 있는데 apache2로 접근하면 톰캣으로 연결시켜주는 겁니다. 그래서 vhost 설정은 이렇게 하면 됩니다. 간략히 보자면, jira.studydev.com 이라는 도메인으로 443(https)으로 접속할 경우, 내부 톰캣 서버 8080포트로 운영되고 있는 JIRA 서비스로 연결된다는 의미입니다. vhost 설정에 익숙하면 어려운 개념은 아닙니다만, 처음 접하면 이건 뭐지라는 생각이 들 수 있습니다. <VirtualHost *:443> ServerName jira.studydev.com ProxyRequests Off ProxyPreserveHost On <Proxy *> Require all granted </Proxy> ProxyPass / http://localhost:8080/ retry=0 ProxyPassReverse / http://localhost:8080/ <Location /> Require all granted </Location> ErrorLog /var/log/httpd/jira.studydev.com-error.log CustomLog /var/log/httpd/jira.studydev.com-access.log combined SSLEngine on SSLCertificateFile /etc/letsencrypt/live/studydev.com/cert.pem SSLCertificateKeyFile /etc/letsencrypt/live/studydev.com/privkey.pem SSLCertificateChainFile /etc/letsencrypt/live/studydev.com/fullchain.pem <FilesMatch "\.(cgi|shtml|phtml|php)$"> SSLOptions +StdEnvVars </FilesMatch> </VirtualHost>   3. 각 소프트웨어의 기본 URL 주소 변경 원래 http~ 로 시작하는 기본 URL 주소를 가지고 있을 겁니다. 이 주소를 https~ 변경하면 됩니다.   4. Application Link 설정 변경 이 작업은 JIRA - Confluence - Bitbucket 서로간의 서비스가 상호 연동이 되기 위해서 필요한 작업입니다. 기존 http로 설정된 경우라면 그 연결이 깨어지기 마련입니다. 그래서 다음과 같이 작업을 해주면 되겠습니다. 어플리케이션 URL 및 디스플레이 URL을 http에서 https로 변경   응용프로그램 환경설정 링크 상태 확인 위 작업은 JIRA에서 한 것입니다. 다소 귀찮을 수 있겠지만, Confluence와 Bitbucket 역시 각각 응용프로그램 Link 들어가서 서로를 https로 바라 볼 수 있도록 변경해 주어야 합니다.   기타 만약 javascript나 스타일시트 등에서 외부 css를 가져다 쓸 경우, 간혹 http로 가져다 쓰는 부분이 있었다면, 크롬에서 문제가 있다고 보고할 수 있습니다. 가능하면 상대경로 URL을 사용하고, 안될 경우 차용하는 URL의 프로토콜을 80(http)이든 443(https)이든 하나로 통일해 주는게 필요합니다. 이 작업까지 완료되고 나면 안전한 상태의 https로 운영 가능합니다.   요약 아틀라시안 JIRA Confluence Bitbucket 업데이트 방법은 단순히 다운로드 받고 실행하면, 몇 가지 정보만 알려주면 쉽습니다. 다만 기타 설정 관련해서 정보가 날아갈 수 있으니, 애초에 관련 정보를 숙지하고 있을 필요가 있습니다. 아니면, 설정 관련 스크립트를 요약해 두었다가 매번 붙이거나 백업 파일을 두었다가 쓰시면 쉽게 쓰실 수 있습니다. #### 완벽하다고 착각하지 말 것 나는 완벽하지 않다. 노력하는 것임을 잊지 말자. [vc_row][vc_column width="1/1"][vc_column_text] 간혹 착각을 할 때가 있다. 내가 만든 소스는 지금 완벽하게 짜여져 있고 따라서 문제 없이 돌아갈 것이라는 점이다. 그리고 이번에 제대로 한방 먹었다. Update 쿼리에서 조건을 하나 빼 먹었고, 이는 막대한 부하를 발생시켰다. 정상적인 처리가 안된 것은 물론이거니와 무한루프에 가까운 프로세스를 발생시켰다. 그리고서는 해당 시스템에 대하여 거의 사용 불가능 상태에 가까운 멍청이 상태로 만들어 놓았다. 이걸 발견하기까지는 무려 3일이나 걸렸다.   나는 완벽하지 않다. 중간에 딴 짓을 했던게 컸고, 심지어 이게 이런 문제가 있을거라고는 상상도 못했다. 좀 더 심혈을 기울이고 더 많이 두드려 가면서 작업을 해야 할 것 같다. 다시 생각 하고 고민하고 결정하고 행동하자. 비단 프로그램 뿐만 아니라 일상에도 마찬가지다. 주의하고 조심하고 좀 더 생각하면서 하자.[/vc_column_text][/vc_column][/vc_row] #### 워드프레스로 블로그 글 잘 쓰는 방법 워드프레스를 시작한 지 한 달, 왜 내 글은 검색에 안 잡힐까? 이런 고민해 보신적 있으신가요? 1. 글쓰기 전, 구조부터 잡자 - 콘텐츠 설계의 핵심 워드프레스 블로그의 강점은 ‘자유로운 구조’입니다. 하지만 그만큼 글의 체계가 흐트러지기 쉽죠. 글을 쓰기 전에 다음의 3단계를 꼭 거쳐보세요. ① 주제 정의: 이번 글로 무엇을 해결해줄 것인가? → 예: “워드프레스 초보가 SEO에 강한 글을 쓰는 방법” ② 독자 페르소나 설정: 내 글을 읽는 사람은 누구인가? → 블로그 운영 초보, 혹은 마케팅 담당자 등 ③ 정보의 흐름 정리: 문제 → 해결 → 팁 → 요약 → 이렇게 하면 자연스럽게 독자가 끝까지 읽게 됩니다. Tip: 워드프레스의 “헤딩(H1~H3)”을 미리 설계해두면 SEO 구조가 자동으로 잡혀요. 2. 글쓰기 환경 최적화하기  — 워드프레스 에디터의 힘 워드프레스의 Gutenberg 블록 에디터는 초보자에게도 매우 유용합니다. 헤딩 블록: 검색엔진이 글의 논리 구조를 파악하게 도와줍니다. 이미지 & 캡션 블록: 시각적 집중도를 높이세요. 리스트 블록: 긴 문장은 리스트로 정리해 가독성 강화. 인용 블록: 핵심 메시지는 강조로 차별화. 💡 추천 플러그인: Yoast SEO 또는 Rank Math → SEO 분석 자동화 WP Scheduled Posts → 게시 일정 관리 TinyMCE Advanced → 글 편집 기능 확장 저는 Yoast SEO 무료 버전을 활용합니다. 3. 읽히는 글의 핵심은 첫 문장 많은 초보자들이 이 부분을 놓칩니다. 워드프레스 글이라도, 결국 독자는 ‘사람’이 읽습니다. 좋은 도입부 예시: “워드프레스를 시작한 지 한 달, 왜 내 글은 검색에 안 잡힐까?” → 공감형 질문으로 시작하면 체류 시간이 늘어나요. 나쁜 도입부 예시: “안녕하세요~ 오늘은 워드프레스 글쓰기 방법을 알려드릴게요.” → 일반적이고 진부한 문장은 빠르게 스크롤됩니다. 4. SEO는 기술이 아니라 습관이다 워드프레스의 SEO 설정은 어렵지 않아요. 하지만 글을 쓸 때 ‘검색 친화적 습관’을 들이는 게 중요합니다. 키워드는 제목 앞쪽에 예: “워드프레스로 블로그 글 잘 쓰는 방법” 본문 3회 이상 반복 (자연스럽게!) 메타 설명(Meta Description) 작성 → Yoast SEO에서 150자 내외로 요약을 꼭 입력하세요. 이미지 alt 태그를 꼭 넣기 → “wordpress-blog-writing-tips.jpg” 처럼 설명이 있는 파일명으로. 5. 글의 완성도는 ‘정리력’에서 마지막은 항상 요약으로 끝내세요. 워드프레스에서는 “요약 블록(Summary Block)” 또는 “리스트 블록”으로 깔끔히 정리할 수 있습니다. 📌 예시 요약: 글쓰기 전 구조를 잡아라 블록 에디터를 적극 활용하라 첫 문장에 힘을 실어라 SEO는 습관이다 요약으로 마무리하라 마무리 워드프레스 블로그 글쓰기는 ‘기술’이 아니라 ‘시스템’입니다. 글의 구성, 편집, SEO, 시각적 디자인을 균형 있게 관리하면 누구나 ‘읽히는 블로그’를 만들 수 있습니다. 💬 “꾸준히 쓰는 것이 최고의 SEO다.” 워드프레스의 진짜 마법은 지속성에서 시작됩니다. #### 워드프레스에서 impress.js 사용 impress.js가 뭐에요? 웹브라우저에서 실행되는 Prezi처럼 다이나믹한 프리젠테이션을 꾸며주는 자바스크립트 입니다. 디자인(css:PPT의 템플릿), 보여주는 역할(js:PPT의 파워포인트 프로그램), 표현 정보(html:PPT의 내용)로 나누어 작성하면 실행됩니다. 워드프레스(윈도우 같은 느낌)에 impress.js 플러그인(파워포인트처럼)을 설치하여 내용을 만들어주면(Post) 실행됩니다. 이게 워드프레스에 된다구요? 당연히 됩니다. 웹이니까요? 웹에서 안될 일은 없습니다. 당장 보고 싶다면 다음을 누르면 됩니다. SEO 워드프레스 후기 어떻게 쓰나요? 아래 링크에서 zip 파일을 다운 받습니다. 플러그인을 설치합시다. 알죠? 업로드 방식으로 하면 됩니다. Impress Presentations에 PPT 파일 하나 만들듯 하나 만듭니다. Impress Steps에서 슬라이드를 만들어 나가면 됩니다. Impress Steps의 생성날짜가 순서 번호가 됩니다. 상세한 사용방법은 다음에 계속.... 대표적인 예제 사이트 http://bartaz.github.io/impress.js/#/bored http://exequiel09.github.io/symposium-presentation/#/overview http://scottcheng.github.io/revolutionary-css3/#/title http://www.nuestroconjunto.com/paginas/conarte/#/inicio 워드프레스 플러그인 다운로드 wimpress 플러그인 다운로드 #### 의진이 100일 사진에 우리 부부 의진이 100일 촬영장에서 수민이 형, 혜실이 아들 의진이 100일 사진 찍고 막판에 우리 데이트 컷~ DSC03079     잘 다녀왔어요~   막판에 플래쉬 배터리 다 떨어진게 아쉽... 의진이 잘 커랑~ #### 초등학생 아들과 함께하는 바이브 코딩 - 01 피카츄 잡기 게임을 만든다고? 그게 가능할까? 초등학교 4학년인 아들이 어느 날 다가와 물었다.“아빠, 나도 게임 만들 수 있어?” 순간 머릿속에 스쳐간 건 “아직은 어렵지 않을까?” 하는 생각이었죠. 하지만 곧 바이브 코딩이 떠올랐습니다. 정해진 커리큘럼이나 두꺼운 교재 대신, 그냥 말하듯이 코드를 써 내려가는 방식. 누구든 처음은 서툰 법. 하지만 같이 해보면 재밌지 않을까? 어차피 나도 처음에는 태어나자마자 알고 있는 건 없었기에!그렇게 아들과의 작은 도전이 시작되었습니다. 알아서 한 번 해볼래? “그냥 일단 한 번 시작해 볼까?”아들은 눈이 반짝였죠. 처음에는 Visual Studio Code에 GitHub Copilot만 무료 버전으로 연결해 줬습니다.그냥 알아서 게임을 만들어 보라고 던져줬죠.방법만 알려줬습니다. 그냥 열심히 네 생각을 화면에 넣으면 될 것이다 말이죠. 한 가지 깨달은 점은 키보드 타이핑이 매우 느리다는 것이었고, 휴대폰은 빠르다는 점.그리고 이상한 3D 만드는 웹 사이트 들어가서 아무거나 가입하면서 막 누르고 있길래 안되겠다 싶었습니다. 일단 천리길도 한 걸음부터 그래서 옆에 앉아서 하나씩 천천히 시작해보자. Game1: 사각형에서 피카츄까지 https://pikagrab.z12.web.core.windows.net/game1/index.html 처음부터 복잡하지 않고 간단한 접근을 원했습니다.그래서 피카츄를 잡는 게임을 간단히 만들어 보자 생각했고, 하나씩 순서대로 바이브 코딩을 했습니다. 화면에 사각형을 올려보고 그 사각형을 이미지로 바꾸고 드디어 피카츄 이미지를 불러왔습니다. 마우스 드래그나 모바일 터치로 피카츄를 잡으면 1점이 올라가는 단순한 게임.이게 바로 game1, 우리 첫 번째 작품이었어요. Game2: 총과 하트를 넣고 순위까지 메기자 다음 날 또 앉아서 뭔가 열심히 바이브 코딩을 하는 아들을 보았는데 너무 자랑스러워 하더라고요.피카추가 두 마리가 되고 총을 서로 쏘기 시작하면서 점수와 목숨을 걸고 싸우더라고요.game1은 기념비적이라 이때부터는 디렉토리를 새로 팠습니다. game2가 탄생했습니다. https://pikagrab.z12.web.core.windows.net/game2/index.html 피카츄가 두 마리 등장 플레이어가 총을 쏴서 맞히면 점수 획득 반대로 피카츄의 총에 맞으면 하트가 하나씩 깎이고, 하트 5개가 모두 사라지면 게임 오버 흥미를 더하기 위해 랭킹 보드도 붙였어요. Copilot이 추천해준 Supabase를 활용해 점수를 기록하고, 상위 10명이 보이도록 만든 거죠. “내 점수가 몇 위일까?” 하며 아들이 무척 즐거워했습니다.물론 아직은 저희 둘 말 이 게임을 하지만요. Game3: 이스터에그와 미치광이 모드 그리고 다음 날, 세 번째 버전에서는 아들이 직접 아이디어를 쏟아냈습니다.몰래 뭔가를 추가해서 넣었습니다. 점수가 100점 정도가 최고 점수인데 1500점이 넘는게 보이더군요.뭔가 특수한 스코어를 만들어 내는 기회가 숨어 있는 것 같았습니다. 바로 이스터에그를 몰래 심어 넣었더군요. 점수가 높아질수록 피카츄의 총알 발사 간격이 짧아져 난이도가 점점 상승 특정 조건이 발동하면 점수가 확 오르면서 난이도가 급격히 올라가는 ‘미치광이 모드’ 돌입! Copilot의 도움을 받아 코드로 옮기는 과정 자체가 하나의 모험이고 무한정 반복을 한 끝에 자랑의 시간이 오더군요. https://pikagrab.z12.web.core.windows.net/game3/index.html 외관상은 거의 비슷합니다. 알기 때문에 3885점이 나왔죠. Git add, commit, push… 그리고 친구들과 공유 재미있던 건 단순히 게임만이 아니었습니다.“아빠, Git add commit push 하면 내 폰에서도 바로 새 버전을 할 수 있어?” 아들 덕분에 아빠도 배우고 있어요. 불과 3일 만에, 아들은 영어를 읽으며 코드를 바꿨습니다. 난이도 조절에서 숫자를 바꾸고 css에서 사이즈를 변경해보고 점점 익혀나갔습니다. 키보드 타이핑이 빨라지고, 버전 관리 흐름까지 맛보는 경험을 했습니다. 물론 아직 잘 모르겠지만 버전이 있다는건 알죠. 그리고 무엇보다 “내가 만든 게임을 친구들과 공유할 수 있다”는 사실에 엄청난 흥분을 느꼈죠. 작은 시작, 큰 배움 결국 이 프로젝트는 단순한 게임 만들기가 아니었습니다.아빠와 아들이 함께 웃으며 코드를 쓰고,작은 버그에 좌절하기도 하고,결국 완성된 게임을 함께 즐기며 성취감을 느낀 시간. 이게 바로 바이브 코딩의 묘미가 아닐까요? 물론 경험자가 있을 경우에 길을 인도해줄 수 있을 때 더 빛이 날 것 같습니다. 코드는 다음 Repository에서 공유중입니다. https://github.com/studydev/pikagrab Azure 계정이 있다면, Blob Storage를 통해서 배포 자동화 되도록 구성해 놓았습니다. Supabase에 DB만 따로 만드시면 별도의 게임이 되겠죠. #### 편한 휴식처 보라매 공원 보라매 공원이 회사 근처에 있다. 점심을 먹고 나면 편한 휴식처로 많은 사랑을 받는 것 같다. 너도 나도 할 것 없이 남녀 노소 가리지 않고 사람들이 돌고 돈다. 연꽃이 이렇게 있기도 하다. 사람들을 위한 많은 편의 시설이 갖추어져 있기도 하다. 예를 들면 축구, 인라인 스케이트, 농구, 보드, 암벽등반 등등 많은 것들이 있다. 하지만 무엇보다도 가장 사랑 받는 공간은 걸을 수 있는 거리가 아닌가 싶다. 여름에는 그늘로 서늘하게 걸을 수 있고, 휴일에는 많은 사람들에게 쉼터가 되어준다. 심지어 여름의 휴일은 아주 사람들과 텐트로 북새통을 이룬다. 회사 근처에 이런 공원이 있다는 것은 행운이다. 이왕 사는거 이 근처에 살고 싶다. #### 하안 주공 난방 온도 해결 좀 춥네~ 2013년 초 하안주공 10단지 19평형에 전세로 들어왔다. 근데... 춥다. 중앙난방이라는데(?) 춥다. 검색을 해 보니 1990년에 만들어져서 23년이 지났으니 어떤 분들은 추운게 당연하다고 한다. 그런데 어떤 집은 덥다고 하고 어떤 집은 춥다고 한다. 그야말로 복불복이라고 한다. 옆집이고 뭐고.... 안 친하기에 물어보기가 애매하다. 그렇기 때문에 이대로 추운 겨울을 보내야만 하는 것일까?   나는 공대생이고, 프로그래머다. 미션이 주어졌다. 문제는 춥다는 것이고 해결책은 따뜻하게 하는 것이다.   문제 - 분석 -  원인 - 솔루션 찾기 프로그래머에게 이 문제는 의외로 쉬울지 모른다. 문제는 분석해서 원인을 찾아 해결책을 찾으면 된다. 물론 모든 일이 문제가 아니라 목표 그 자체가 될 수도 있겠지만... 당장 추운 것은 문제며 따뜻해 지는게 솔루션이다. 그럼 이제 프로그래머 답게 하나하나 찾아서 해결해 나가는 시간을 가져보자.   문제를 찾자 문제는 이미 몸으로 체험중이다. 춥다. 실내온도가 19도다. 자다가 새벽에 깼다. 춥다. 방바닥이 차다. 찬물이 도는걸까? 뭐가 문제냥? 무엇을 해야할 것인가? 에어가 차면 춥단다. 에어를 빼자. (세탁실 같은 곳에 있음, 기계실에 연락해서 부탁하면 됨) 녹이 많이 생기면 물 순환이 안된다. (제거해야 한다. 에어 빼면서 같이 빼고 심하면 업자 불러야 함) 난방 밸브가 잠겨있지는 않은지 확인하자. 원리는 가스밸브와 같다. 일자면 열리고, 직각이면 닫힌다. 찬 바람을 차단하자. 방풍이 답이다. 뽁뽁이, 커튼 등을 적극 활용하자. 따뜻함을 잡아두 자. 매트 등을 깔아 놓으면 한결 낫다.   해결해 보니 어떤가? 기계실에 Help me를 외쳐라. 아저씨랑 적절히 친해지자. 너무 나긋나긋하면... 잘 안 해주려 하니 밀당이 중요! 춥다고 하고 약속을 잡고 미리 더 춥게 만들자. 집안을 되도록 춥게.... 극악의 상황 조성도 필요. 에어를 뺄 때는 최대한 적극적으로 걸리적 거리지 않게 관심있게 본다. 뭔가 좀 아는듯한 남자가 함께 있어야 유리하다. 효과가 있는가? 에어를 뺐다. 바닥이 미지근해져 온다. 다음 날은 더 따뜻해진다. 미지근한적 없던 바닥이 따뜻해진다. 실내온도가 24도까지 올라왔다. 난방을 더 해서일지도 모르지만, 예전에 없던 기분이다. 무엇을 더 신경써 볼까? 현관문에 뽁뽁이 방풍을 시도해보자. 현관문 사이에 방풍커튼을 달아보자. 배란다쪽 유리창에도 뽁뽁이 방풍을 시도해보자. 중앙난방이 추운건 잘못된 것이다. 이 마인드로 고칠려고 노력해보자. 난방 펌프가 시작지점이면 특히 따뜻해야 한다. 보통 꼭대기 층은 시작지점이니 따뜻해야 한다. 에어가 의심스러우면 몇번이고 빼고, 방풍 대책을 세워서 해보자.   에어 빼기 전 (집안 : 19℃, 실외 9℃) 에어 뺀 후 (집안 24℃, 실외 -1℃) #### 해당 사이트에 HTTPS 사용을 위한 SSL 적용 및 인정서 발급 해당 사이트에 HTTPS 사용을 위한 SSL 적용 및 인정서 발급 받았습니다. 구글에서는 보다 안전한 웹 사용을 위하여 2017년부터 http를 사용하는 사이트에 대하여 경고 표시를 하겠다고 하였습니다. 이제 HTTPS를 사용할 수 밖에 없는데 저 역시 금일 적용해 보기로 했습니다.   해당 사이트에 HTTPS 사용을 위한 SSL 적용 및 인정서 발급 HTTP에서 HTTPS로 전환 하는 것은 어려운 일이 아닙니다. 우선 SSL 모듈을 설치하고, httpd 데몬을 잠시 중단한 후, 인증서를 설치합니다. 설치한 인증서를 사용하기 위하여 ssl.conf와 vhost 관련 conf 파일에서 해당 SSL 인증서를 사용할 수 있게 연결하면 끝입니다. wordpress의 경우, 마지막으로 기본 설정된 http 주소를 https로 변경해주면 끝납니다. 다만, 내부에 뭔가 http로의 링크를 하드코딩한 부분이 있다면 그런걸 바꿔야 하는데, 그렇게 안 써 오셨다면 바꿀 필요가 없습니다. 다음과 같이 letsencrypt의 certbot을 github에서 소스를 git clone을 이용해서 다운로드 받은 다음, httpd 데몬을 내려준 다음 아래와 같이 실행하고, email을 등록해 주면 인증키가 설치됩니다. ./letsencrypt-auto certonly --standalone --domains=studydev.com,www.studydev.com,jira.studydev.com,wiki.studydev.com,plex.studydev.com,git.studydev.com,dev.studydev.com,db.studydev.com letsencrypt를 통한 SSL 인증서 발급 인증서를 발급 받고 나면, ssl.conf와 vhost 파일에 있는 conf에 해당 SSL cert키에 대해서 연결시켜 주면 됩니다.   HTTP에서 HTTPS로 바뀌면 Adsense는 어떻게 할까요? 바뀌는 부분이 없습니다. 자동으로 계속 잘 나옵니다. 딱히 신경 써 주실 부분이 없기 때문에 그대로 이용하시면 됩니다.   해결되지 않은 문제 현재 studydev.com으로 접속하면 자동으로 https://www.studydev.com으로 들어옵니다. 그런데 이상한 문제가 있습니다. jira.studydev.com도 https로 잘 되는것 같은데, 유독 https://studydev.com만 접속이 되지 않습니다. 현재 해당 vhost 관련 log를 보면 아래와 같은 error가 발생하는 것으로 보입니다. [Sat Jan 07 06:55:49.950994 2017] [ssl:error] [pid 19406] AH02217: ssl_stapling_init_cert: Can't retrieve issuer certificate! [Sat Jan 07 06:55:49.951031 2017] [ssl:error] [pid 19406] AH02235: Unable to configure server certificate for stapling [Sat Jan 07 06:55:49.951051 2017] [ssl:warn] [pid 19406] AH01909: RSA certificate configured for studydev.com:443 does NOT include an ID which matches the server name [Sat Jan 07 06:55:50.009896 2017] [ssl:error] [pid 19406] AH02217: ssl_stapling_init_cert: Can't retrieve issuer certificate! [Sat Jan 07 06:55:50.009919 2017] [ssl:error] [pid 19406] AH02235: Unable to configure server certificate for stapling [Sat Jan 07 06:55:50.009931 2017] [ssl:warn] [pid 19406] AH01909: RSA certificate configured for studydev.com:443 does NOT include an ID which matches the server name 다른 서브도메인은 문제가 없는 것 같은데, 유독 no sub domain의 경우에만 저렇게 에러가 발생중입니다. 해결되면 과정과 함께 남기도록 하겠습니다.   AH01909 SSH 문제 해결! 위 AH01909 문제를 해결했습니다. 사실 문제는 총 2가지였습니다. 첫 번째는 vhost 설정 파일의 순서에 따른 문제였습니다. 두 번째는 해당 설정 파일이 다른 곳에 있는데 이걸 찾아보니 거기에 기록된 cert key 파일 정보가 달랐습니다. 해당 문제와 관련해서 구글링을 해 보았지만, 제가 원하는 답을 쉽게 찾기는 어려웠습니다. 대신 다른 방법을 통해서 확인해 보았습니다. 바로 노가다입니다. 일단 각종 vhost 설정 파일 관련해서 하나씩 수정하면서 보았지만 문제를 해결하지 못했습니다. 그러다가 혹시나 ssl.conf 파일에 문제가 있을까 싶어 보다가 아래 구문을 발견했습니다. <VirtualHost _default_:443> 위 문구가 시작되면서 https://studydev.com 의 접속 설정을 기본적으로 가져갑니다. 즉, vhost 설정을 위해서 site-enabled 디렉토리에 아래와 같은 설정 파일 내용을 기록하더라도 소용 없다는 이야기입니다. <VirtualHost *:443> ServerName studydev.com DocumentRoot /var/www/studydev 그러니 아무리 설정을 해도 defalut 홈페이지인 welcome.conf 의 내용에 맞추어 웹 페이지가 표기되는 것이었습니다. 그런데 위에 명시된 문제는 아직 해결 안되었습니다. 바로 AH01909 문제입니다. 이 부분도 간단합니다. _default_:443 들어있는 자리의 cert Key 파일이 localhost의 기본 파일로 되어 있습니다. 그래서 이상하게 동작하는 문제였습니다. 그러니 달리 고민할 것 없이 _default_:443 설정하는 곳에 기존 *:443 에 있던 내용중 필요한 설정과 cert 정보를 연결시켜 주니 해결되었습니다. 즉 지금 시점부터는 https://studydev.com 접속이 아주 잘 된다는 이야기입니다.   해당 사이트에 HTTPS 사용을 위한 SSL 적용 및 인정서 발급 완료! 해당 사이트에 HTTPS 사용을 위한 SSL 적용 및 인정서 발급 과정을 보았습니다. 일단 해결 되지 않는 문제 해결 되면 여러 가지 과정을 요약해서 다시 수정하겠습니다. 하루가 더 지나서 이틀이 걸리긴 했지만 정상적으로 잘 마무리 되었습니다. 근데 또 다른 문제가 보이네요. JIRA Dashboard가 말썽이네요. 이번에 업데이트 하면서 한 번 확인해 봐야겠습니다. #### 해외 직구 관세 납부 방법 해외 직구 관세 납부 방법 해외 직구 관세 납부 방법 은 쉽습니다. 카드 또는 계좌이체를 통해서 쉽게 결제가 가능하기 때문입니다. 일반적으로 미국에서 직구한 제품의 가격이 $200를 넘긴 경우, 보통 8%의 관세와 10%의 부가세가 부과됩니다. (국가와 물품 종류에 따라서 과세 비율이 달라질 수 있습니다.) 세율에 따라 관세가 부가되면, 그 금액을 배송대행 업체에 납부하는 방법도 있지만, 직접 납부할 수도 있습니다. 여기서는 직접 납부하는 방법이 어떻게 되는지 알아 보겠습니다. 해당 기록은 2016년 블랙프라이데이 때 미국 이베이에서 구매한 Dyson V6 Absolute 진공 청소기를 몰테일 고정배송비 이벤트로 발송한 내용 요약입니다.   해외 직구 운송장 번호 조회 우선 국내로 반입이 되었는지 확인부터 해야 합니다. 운송장 번호로 확인이 가능합니다. 단, 해당 운송장 번호를 통한 조회 정보의 업데이트가 느릴 수 있습니다. 국내 반입 추척 실제로는 상품이 국내에 들어왔을 수 있지만 그것이 업데이트 안 되었을 수 있습니다. 그래서 해당 운송장 번호를 직접 관세청에서 조회해서 정상적으로 입고되었는지 확인할 수 있습니다.   관세청 수입 통관 상태 확인 관세청 홈페이지에 접속해서 직접 물건 상태를 확인할 수 있습니다. 관세청 홈페이지 검색   기존에 상품 운송장 번호가 HB/L로 검색이 가능합니다. 뒷쪽 빈 공란에 운송장 번호를 넣고 검색하면 상품의 정보를 알 수 있습니다. 관세청 수입 통관 상태 확인   카드로택스 사이트 이동 GIRO 사이트로 관세를 납부할 수 있습니다. 지로 홈페이지 접속   관세는 주민등록번호로 쉽게 조회가 가능합니다. 수입 관세 물건 조회   관세청에서 상정한 금액을 확인할 수 있습니다. 상세보기 들어가서 납부하시면 됩니다. 수입 관세 고시 금액 확인   관세 8%와 부가가치세 10%가 적용되는걸 확인할 수 있습니다. 이 합계금을 지불하면 됩니다. 카드수수료확인   카드 수수료는 신용카드가 0.8%이고, 체크카드는 0.7%입니다. 계좌이체가 더 좋은 방법일 수 있습니다. 카드 결제   체크카드로 납부해 봤습니다. 수수료로 0.7%인 557원이 발생되는군요. 금액이 클 경우에는 고려해볼만 합니다. (배송대행 업체 통해서 하시면 1천원 정도 차이 발생될 겁니다.) 납부 정보 확인   해외 직구 관세 납부 방법 별로 어려운게 없습니다. 확인하고 결제하면 되는 간단한 일입니다. 납부는 인터넷으로 쉽게 가능하기 때문에 카드만 잘 가지고 있으면 됩니다. 전자 서명 확인   관세 납부를 했기 때문에 이제 세관에서 탈출이 가능하겠네요. 관세 납부확인증 확인   기존에 납부한 것도 확인이 가능합니다. 당장 방금 낸 것도 확인이 가능합니다. 납부 확인증 보관함 확인   이렇게 납부가 완료되면 이제 집에서 택배가 오기를 기다리시면 됩니다. 몰테일에서 구매했다고 해서, 몰테일에서 세금 납부 대행하는 것 까지 기다릴 필요 없이, 직접 바로 처리하실 수 있습니다. 그리고 이 방법이 더 빠르면 빠르지 더 느리지는 않을 것이고요. 해외 직구 관세 납부 방법에 대해서 알아봤습니다. 직구라는 것 자체가 생각보다 어렵지 않습니다.   #### 해외 직접 구매 배송 대행 이용 두번째 네스프레소 해외 직구 이것이 250개 캡슐 웰컴팩 2번째 직구를 했다. 이번에도 eurolife25에서 진행했다. 2013-11-11 구매를 해서 2013-11-18에 받았다. 웰컴팩을 살까 맛나는 것만 골라 살까 하다가 이 색깔의 조화로움과 토템 선물 증정에 웰컴팩을 선택했다.   왜 해외 직구(직접 구매)를 하는가? 대한민국에서 캡슐 커피는 너무 비싸다! 네스프레소 캡슐 10개짜리가 보통 1만원이다. 해외 직구보다 비싸다. 얼마나 비싼지 따져 보자. 해외 직구에 따른 가격 : 250 캡슐 + 토템 = 136,485원... 해외 이용 수수료 포함가 해외 배송료 + 대행료 : 22,000원 + 10,000원 = 32,000원 (배송료는 부피 이벤트 + 카드 이벤트 + 선결제 이벤트 포함) 총 비용 : 166,485원 캡슐 개당 가격(250개 기준) : 666원/1개 토템 제외 가격(250개 기준/토템 신품 약 3만원) : (166,485원 - 30,000원) / 250개 = 546원/1개 그렇다. 사실 토템(캡슐 거치대 또는 홀더)을 처분하면 가격이 개당  550원 꼴이다. 이걸 국내에서 사려면 얼마를 줘야 할까? 물론 종류마다 가격의 차이는 있지만 보통 1개 평균 1,000원이라고 생각하면 편하다. 종종 직구입한 분들이 대량으로 판매하시는 분이 있는데 그분들을 거치면 7,000~8,000원까지는 내려간다. 하지만, 한글을 읽을 수 있고 자판을 통해 영어를 입력하는 방법을 알면 거의 절반 가격에 사 먹을 수 있다. 따라서 당연히 직구(적접 구매)를 하는 것이다.   직구 방법과 순서 직구 방법은 의외로 단순하다. 다음과 같은 방법으로 구매하면 된다. 홈페이지에서 상품 구매 후 카드 결제 (해외 결제되는 카드로 번호 넣으면 끝) 배송대행지 기입 (물건을 받아서 대신 보내줄 업체) 배송대행지로 배송 배송대행 사이트에서 국내 주소 및 구매 상품 정보 입력 배송대행지에서 배송료 + 대행비 산출한 돈을 입금 해외 배송 통관 국내 배송 물건 수령 붉은 색이 실제 해야할 일이고, 녹색은 다 자동으로 알아서 되는 일이다. 이 과정중에서 국내에서 구매하는 것과 다른 점이 무엇일까? 물건 사려면 똑같이 홈페이지 가야하고 결제도 해야 한다. 배송지가 배송을 대행해 주는 업체를 거치니깐 주소를 한번 더 써야하고, 상품 정보를 한번 더 넣어줘야하고, 추가로 배송 대행료를 입금하면 결국 물건 수령하는 순간까지 똑같다. 다만 시간이 내일이나 그 다음날 오는게 아니라 5~7일 정도 소요된다는 정도? 그렇더라도 훨씬 싸다는게 장점이다. 처음이 힘들지 해 보면 금새 적응한다.   관세나 부가세 가장 걱정되는 대목중에 하나가 바로 관부가세다. 내가 산 제품에 대하여 국내 수입할때 세금을 내야한다는게 함정이다. 다만, 어떤 품목의 제품을 사느냐에 따라서 세금 부과율이 다르다. 이 점은 물건을 사기전에 미리 확인해 봐야할 덕목이다. 간단하게 환율로 계산시 15만원이 초과하면 관세 부가 대상이 될 수 있다. 요것만 주의하면 되는데 2013년 11월 환율 기준으로는 93유로까지도 관세 부가 기준이 아니다.   블랙 프라이데이... 오고 있다. 미국에서 가장 성대하게 매출을 올리는 시즌... 아니... 날....... 바로 블랙 프라이데이가 오고 있다. 이 날의 판매량은 상상을 초월하고 그 이유는 엄청난 가격 할인에 있다. 이 날 해외 구매 역시 사상최대치를 갱신한다고 보면 된다. 대한민국도 예외는 아니다. 진정한 블랙 프라이데이는 오프라인 매장에서 줄을 설 때 더욱 큰 할인 혜택을 받지만, 그에 못지 않게 많이 받을 수 있는게 온라인 매장이기도 하다. 보통 해외에서 직접 배송해주는데 치고 마음에 드는 곳이 없을 수 있으므로 배송대행을 이용해야 한다. 배송대행 업체는 많으니깐 가격과 배송 품질 등을 보고 고르면 된다. (특히 가전 TV 같은건 배송비보다 배송포장 상태가 더 중요)   글로벌이 무엇이라고 생각하세요? 모 업체의 광고에 이런 문구가 나온다. 세계로 나가는 것만이 글로벌은 아닌 것 같다. 세계의 좋은 정보와 물건을 어떻게 잘 이용하고 활용하느냐가 나가는 것 못지 않게 중요한 것 같다. 즉 잘 받아 들이는 것 역시 글로벌의 의미 중 하나가 아닐까 싶다. 특히 IT의 세계에서 Google을 모르고 영어를 모르면 도태되기 딱 좋은 예가 된다. 바로 이런 구매 정보력 역시 모르면 비싸게 주고 사 먹을 수 밖에 없다. 정보력이 바로 돈으로 직결되는 세상이다.   해외 직구매의 단점 시간??? 때로는 인내의 시간이 필요하다. 대한민국은 정말 작은 나라다. 배송이 하루에 이루어지지 않으면 난리가 난다. 하지만 다른 나라들은 어떠한가? 하루 배달을 하려면 프리미엄 서비스로 물건을 비행기로 실어 날러야 가능할까 말까 한다. 그렇기에 하루 이틀 만에 도착하지 않는 조바심을 가진 구매자라면 해외 직구는 사람을 조급하게 만들 수 있다. 그리고 관세 부가세를 맞는 순간 배신감과 더불어 세상이 나를 저버린것만 같은 억울함에 빠지게 된다. 욕심을 화를 부를 수 있으므로 침착한 인내심을 가진 사람이 아니면 자칫 홧병을 불러 일으킬 수 있다.   이용 후기 몇몇 가지를 살아오면서 저질러 봤다. 일본 엔화 환율이 700원대로 내려갔을때 모델 나오자마자 오너메이드로 주문한 노트북인 Sony TZ-90 국내 최저 가격의 40% 가격으로 판매할 때 미국에서 배송 대행한 스피커인 Focal XS 2.1 미국에서 50% 이상 세일 가격에 구매한 랄프로렌 옷과 속옷 독일 네스프레소 웰컴팩 2세트 확실히 싸고 품질도 좋다. 마치... 미국에서 파는 H사의 자동차 같은 느낌이랄까?   알면 필요한걸 더욱 저렴하게 구할 수 있는 글로벌한 세상에 우리는 살고 있다.   꼭 필요할 때는 이용하자. 그것이 더 현명한 소비가 될 수 있을 것이다.     #### 화웨이 워치 알림 Huawei watch notification 화웨이 워치 알림 화웨이 워치는 아래와 같이 스마트폰의 알림 정보를 스마트 시계에 표시할 수 있습니다. 화웨이 워치 알림에 어떤 것들이 있는지 알아가 볼까요? 어떤 정보를 표현할 수 있는지 알아 봅시다.   알림 표시 대기 모드에서 풀리면 좀 더 세밀한 상태가 표시되며, 미확인 알림 개수를 확인할 수 있습니다. 실시간으로 진동 또는 알람이 오기 때문에 편리하지만, 놓친 메시지는 카운트를 확인할 수 있습니다.   문자 알림 결제 정보에 따른 메시지는 문자로 날아 옵니다. 이렇게 문자로 들어오는 정보도 함께 스마트 워치에 표시됩니다.   페이스북 알림 페이스북을 통한 다양한 알림도 확인 가능합니다. 누가 보냈는지 프로필 사진으로 표시가 되고, 페이스북이니깐 파란 배경으로 표시가 됩니다. 좀 더 자세한 정보는 클릭하면 알 수 있습니다. 1분 전에 발생한 메시지라는걸 알 수 있네요. 클릭하면 무슨 내용이었는지 화면에 표시 됩니다. 휴대폰에서 보고 싶다면, 휴대전화에서 열기를 누르면 휴대전화에도 표시가 되죠.   카카오톡 알림 카카오톡 알림 역시 잘 들어옵니다. 답문을 써서 보낼 수 있습니다. 카카오톡 연동된 게임 및 각종 정보도 잘 들어 옵니다.   게임 알림 아직 클래시오브클랜 게임을 친구 도와 주는 용도로 가끔 합니다. 간혹 쉴드가 종료될 때가 다가오거나 업그레이드가 종료될 때, 다시 돈을 쓰거나, 공격을 가면 이득입니다. 이럴때, 알람이 오면 좋겠죠. 상세 정보는 클릭하면 볼 수 있습니다.   전원 사용량 알림 모든 알림은 스마트폰을 중심으로 이벤트가 발생합니다. 즉, 전원 사용량이 많다는건, 스마트폰에서 구동되면서 전력 소모가 크다는 의미입니다. 스마트 워치 기준이 아니라는겁니다. 다양한 알림에 대해서 표시가 됩니다. 간단한 메시지는 미리 지정하면 쉽게 보낼 수 있습니다. 단, 카톡의 경우, 안드로이드 웨어 2.0에서 아직 한글 키보드를 제공 못하고 있습니다. 이 점은 시간이 지나면 차차 해결이 되지 않을까 싶습니다. 쓰면 쓸수록 편리하고 재미있는 스마트 시계 화웨이 워치 알림 편이었습니다. 궁금한 점은 댓글 남겨 주시면, 알려 드립니다. ### 페이지 #### Blog [vc_row type="2" margin_top="25" margin_bottom="45" padding_top="45" padding_bottom="30" bg_repeat="repeat"][vc_column][vc_column_text] Study Development 개발자의 이런 저런 이야기 [/vc_column_text][/vc_column][/vc_row][vc_row margin_top="55" margin_bottom="50"][/vc_row][vc_column][/vc_column][vc_column_text] [/vc_column_text][vc_row][vc_column][vc_widget_sidebar show_bg="false" sidebar_id="sidebar_1"][/vc_column][/vc_row] #### Cart [woocommerce_cart] #### Checkout [woocommerce_checkout] #### Contact [vc_row][vc_column][vc_column_text css=""]Email: meelong0@gmail.com Linkedin: https://www.linkedin.com/in/현수-김-b499b284/ 현 직장 Microsoft - Build-with Lead [Strategic Initiatives Team] with Judson Althoff CEO, Microsoft commercial business   이전 직장 Amazon Web Services - Solutions Architect with Werner Vogels [VP & CTO at Amazon.com]   전전 직장 자동화개발팀 - AI 파트 서울시 동작구 신대방2동 보라매로5길 15 전문건설회관, CAFE24   포트폴리오 포트폴리오 관련 Confluence 이동 2009.02 ~ 2010.09 펠릭스정보통신 : [청주] 센서네트워크를 활용한 절전 시스템 제작 - 펌웨어(C), JAVA 미들웨어 개발, MFC(C++) UI 개발 2010.11 ~ 2013.03 유비콤 : [청주] 센서네트워크를 활용한 절전 및 원격 검침 시스템 제작 - JAVA 미들웨어 개발, 웹 풀스택 개발 2013.04 ~ 2013.05 결혼 및 상경 2013.06 ~ 2017.06 심플렉스인터넷 : [서울] 웹 자동화 개발 및 현재 AI(인공지능) 관련 프로젝트 진행. 2017.06 ~ 2022.09 Amazon Web Services Solutions Architect 2022.09 ~ 현재 Microsoft Build-with Lead [Strategic Initiatives Team] 기타 [/vc_column_text][/vc_column][/vc_row] #### My Account [woocommerce_my_account] #### Shop URL: https://www.studydev.com/shop/ #### 개발자의 이런저런 이야기 [vc_row type="4" margin_top="0" margin_bottom="45" padding_top="35" padding_bottom="35" bg_repeat="repeat"][vc_column]개발자의 이런저런 이야기[/vc_column][/vc_row][vc_row][vc_column width="1/3" offset="vc_hidden-md vc_hidden-sm vc_hidden-xs"][vc_column_text][vc_single_image image="13610" img_size="250x64" add_caption="yes" alignment="center"][/vc_column_text][/vc_column][vc_column width="1/3" offset="vc_hidden-md vc_hidden-sm vc_hidden-xs"][vc_column_text][vc_single_image image="13608" img_size="250x64" add_caption="yes" alignment="center"][/vc_column_text][/vc_column][vc_column width="1/3" offset="vc_hidden-md vc_hidden-sm vc_hidden-xs"][vc_column_text][vc_single_image image="13606" img_size="250x64" add_caption="yes" alignment="center"][/vc_column_text][/vc_column][/vc_row][vc_row][vc_column][vc_widget_sidebar][/vc_column][/vc_row][vc_row][vc_column css=".vc_custom_1486621711966{background-color: #ffffff !important;}"] LG 드럼 세탁기 미니워시 구매 후기 스팀 25KG My Story LG 드럼 세탁기 미니워시 구매 후기 25KG 용량에 알러지케어가 가능한 스팀 옵션이 포함된 드럼 세탁기에요. 게다가 높이까지 허리에 편안하도록 미니워시를 받침대로 사용할 수 있어요. 결혼할… Read more Something Big Is Happening 무언가 큰 일이 벌어지고 있어요 IT, ML News 원문: https://shumer.dev/something-big-is-happening 지난 2020년 2월을 생각해 보세요 그때 아주 주의 깊게 보고 있던 사람이었다면, 해외에서 어떤 바이러스가 퍼지고 있다는 이야기를 하는 사람들이 조금씩 보였을지도 모릅니다.… Read more 13년 만의 HTTPS 전환기 미분류 “새 블로그를 하나 더 만들까?” 그렇게 시작했다가… 케케묵은 서버를 정리하고 HTTPS까지 붙였습니다.2012년에 만든 studydev.com, 드디어 13년 만에 초록 자물쇠 완료! 왜 시작했나? 중간에 만난 문제들… Read more 워드프레스로 블로그 글 잘 쓰는 방법 SEO 워드프레스를 시작한 지 한 달, 왜 내 글은 검색에 안 잡힐까? 이런 고민해 보신적 있으신가요? 1. 글쓰기 전, 구조부터 잡자 – 콘텐츠 설계의 핵심 워드프레스 블로그의… Read more 초등학생 아들과 함께하는 바이브 코딩 – 01 피카츄 잡기 Development 게임을 만든다고? 그게 가능할까? 초등학교 4학년인 아들이 어느 날 다가와 물었다.“아빠, 나도 게임 만들 수 있어?” 순간 머릿속에 스쳐간 건 “아직은 어렵지 않을까?” 하는 생각이었죠.… Read more 식기세척기 단올림 사용 후기 Diary, My Story, 인테리어 식기세척기 단올림 – 설거지 고통에서 즐거움으로의 해방 2025년 8월 주방 인테리어 리모델리을 하면서 가장 고민했던 부분 중 하나가 식기세척기 위치와 동선이었습니다. 보통 싱크대 하부에 설치하죠.… Read more 34평 주방 인테리어 리모델링 – 4/4 조명 설치 초슬림 라인조명 Diary, My Story, 인테리어 허리 보호 차원에서 주방 인테리어 리모델링 도전! 조명 설치 조명은 총 4가지를 설치할 겁니다. 원래 조명이 주광색(백색) 계열이라서 따뜻한 느낌이 나도록 주방은 아이보리 톤을 사용합니다.… Read more 34평 주방 인테리어 리모델링 – 3/4 싱크대 설치 식기세척기 단올림 Diary, My Story, 인테리어 허리 보호 차원에서 주방 인테리어 리모델링 도전! 싱크대 시공 8월 8일(금)에 싱크대를 시공합니다. 이 집은 거주중이고, 가전을 모두 거실로 옮겨 놓은 상황에서 진행하기 때문에 작업… Read more 34평 주방 인테리어 리모델링 – 2/4 사전 준비 및 철거 Diary, My Story, 인테리어 허리 보호 차원에서 주방 인테리어 리모델링 도전! 주방 인테리어 리모델링을 위한 사전 준비 8월 7일(목) 철거를 하고 8일(금) 시공을 합니다. 철거 전 작업 리스트와 내역… Read more 34평 주방 인테리어 리모델링 – 1/4 계획 단계 셀인 Diary, My Story, 인테리어 허리 보호 차원에서 주방 인테리어 리모델링 도전! 주방 인테리어 리모델링 배경 주방 인테리어 리모델링 경험을 공유하는 블로그입니다. 싱크대 높이가 85cm인데, 낮아서 허리가 아픕니다.그래서 92cm로 싱크대를… Read more 2006년식 중고 그랜저 TG 판매 My Story 차량 관리 히스토리 제가 두 번째 차량 소유주입니다.  자동차등록증 참고하세요 사고내역 전 차주가 사고로 도장했던게 있었고, 이후 2번의 접촉 사고가 있었습니다.앞 번호판이 들어간 게 이때… Read more StudyDev 워드프레스 업그레이드 진행 PHP, Wordpress 2021년 4월 워드프레스 버전 업 이후 해당 웹 페이지가 장애 복구가 불가능한 상태가 되었습니다. 해당 문제를 해결하기 위해서 WordPress 5.7.2 버전을 다운로드 받아서 설치했습니다. MariaDB를… Read more WordPress 홈페이지 Jira Confluence 복구 미분류 WordPress 홈페이지가 40일 만에 복구 SSL 인증서가 만료된 이후 갱신이 되지 않았고, 그 이후에 LAMP 스택을 밀었다가 새로 버전업 해서 써 보려 했으나 지속적으로 문제가… Read more Atlassian JIRA, Confluence, BitBucket 버전 업데이트 미분류 Jira, Confluence, BitBucket 업데이트 했습니다. Read more QwikLabs Google Cloud Labs Free 학습 가능 소식 AWS, Development, qwiklabs, Web Server QwikLabs Google Cloud Labs Free 학습 가능 소식 이라는 따끈따끈한 뉴스를 전하고자 합니다. 기존 QwikLabs는 AWS를 위한 클라우드 실습 환경을 제공하여 나름의 인증서를 발급했었습니다. 이제는… Read more HUAWEI MATE 8 EMUI 5 UPDATE 메이트 8 Nougat 업데이트 IT, My Story, 해외 직구 HUAWEI MATE 8 EMUI 5 UPDATE 메이트 8 Nougat 업데이트 하였습니다. 기존 EMUI 4.1에서 5.0으로 변경되면서 안드로이드 버전 역시 6(마시멜로우)에서 7(누가)로 업데이트 되었습니다. 어떻게 업그레이드를 하는지… Read more 네스프레소 커피머신 U C50 고장 자가 수리 1편 Cook & Food, My Story, 해외 직구 네스프레소 커피머신 U C50 고장 자가 수리 1편 에서는 캡슐머신 U C50에서 발생한 문제에 대해서 AS 하는 방법을 알아봅니다. Read more Atlassian Confluence 공동편집 글 쓰기 및 편집 기능 사용 방법 Development, Web Server Atlassian Confluence 공동편집 글 쓰기 및 편집 기능 사용 방법 찾기를 해보겠습니다. 최근 Confluence 6.x로 업그레이드 하고, Reverse Proxy로 설정하신 분이라면 비슷한 문제를 겪으셨을지도 모르고, 그래서… Read more Qwiklabs AWS Websites and Web Apps 뱃지 획득 AWS, Development, qwiklabs Qwiklabs AWS Websites and Web Apps 뱃지 획득 완료. 틈틈이 봐서 이달 안에 3개를 따 두면 좋을 것 같군요. Read more tensorflow에서 slim을 이용한 채널 이미지 분류 머신러닝 Development, Machine Learning, Tensorflow tensorflow에서 slim을 이용한 채널 이미지 분류 머신러닝 학습 방법을 알아보겠습니다. 여기서는 기존의 예가 아닌 내가 만든 사용자 이미지를 slim에 넣어서 학습해 보겠습니다. Read more →1234→[/vc_column][/vc_row] #### 김현수 포트폴리오 비즈니스 요구사항을 식별하여 지속 성장 가능한 솔루션을 제안하고 만드는 전문 기술 전략가입니다.저는 IoT, Back-end, Front-end, Automation, Data Analytics, AI/ML, Cloud 와 같은 다양한 분야에서 개발 경험을 쌓았으며 다양한 산업군의 고객과 협업하면서 고객의 요구사항에 맞는 솔루션을 빌드해왔습니다. 현재 한국 Microsoft Strategic Initiatives 팀에서 고객과 함께하는 기술 전략가로서 AI 기술로 고객의 비즈니스 혁신을 돕고 있습니다. Microsoft Account Technology Strategist - 2022-09 ~ 현재 2025-09MS Team transitionStrategic Initiatives - Build-with LeadStrategic Initiatives TeamSr Sales Business Development Manager2025-02고객사 대상 워크샵잡코리아, '2025 프롬프톤'20개 팀 59명이 참여한 무박 2일 프롬프톤2024-12고객사 대상 워크샵마켓컬리, '컬리해커톤'24개팀 73명이 참여한 컬리해커톤2024-10Pinnacle AwardsMicrosoft Pinnacle Awardswith Judson Althoff CEO, Microsoft commercial business2024-07고객사 대상 워크샵인터파크트리플, '인트톤 2024'인터파크트리플, 사내 해커톤 행사 '인트톤 2024'를 실시2024-04AI Tour 2024실전 RAG 정복하기AI Tour 실전 RAG 정복하기 PDF 파일2024-01고객사 대상 워크샵Finda, '2024핀다톤' 개최한국MS와 사내 해커톤 '2024핀다톤' 개최2023-10Microsoft Startup Summit 행사스타트업을 위한 Azure OpenAI 200% 활용법Youtube: ChatGPT 어디까지 써봤니?스타트업을 위한 Azure OpenAI 200% 활용법2023-09Try Everything 기조연설상상을 현실로 - 생성형 AI 활용 전략초보 개발자가 CahtGPT를 활용하는 방법2023-07고객사 대상 워크샵Azure OpenAI Prompt Engineering Workshop우아한형제들, 사내 해커톤 '우아톤 2023' 진행참고자료: GitHub - HyounsooKim/azure-openai-samples-kr2023-06세종사이버대 컴퓨터 AI 공학과AI 시대 살아남기 챗GPT의 등장과 활용 꿀팁Youtube 발표 영상기초: Azure OpenAI 소개 자료, Azure OpenAI 업데이트 자료2023-05KAIST Stratup Tech PlazaOpenAI의 생성 AI가 불러온 AGI 시대 개막OpenAI의 생성AI가 불러온 범용인공지능시대(AGI) 개막 소개 - Deck,Youtube2023-04OpenAIAzure OpenAI 서비스Azure OpenAI 서비스를 소개하고 활용 방법을 전달합니다. - Deck2023-03Digital Native Summit정육각의 Azure 마이그레이션정육각 CTO 박준태님의 Azure 마이그레이션 여정 설명 - 동영상2022-09MS JoinMicrosoft Azure JoinDigital Natives Korea TeamAccount Technology Strategist(기술전략매니저) AWS Solutions Architect - 2017-06 ~ 2022-09 AWS Solutions Architect 는 고객의 비즈니스 성공을 위해서 AWS 클라우드 서비스를 활용하여 Well Architected Framework 관점에서 사용할 수 있도록 도와주는 기술적 조언자 역할을 수행합니다. Startup 부터 Enterprise 까지 다양한 산업군의 고객들을 돕습니다. 이커머스, 리테일, 제조, 미디어 등 다양한 고객의 비즈니스에 대한 AWS의 기술 경험을 제공합니다. 2022-09AWS 퇴사Amazon Web Services 퇴사2022-08AWS IoT GreengrassAWS IoT Greengrass를 이용한 제어AWS IoT Greengrass 연계를 통한 IoT Device 제어 (OPC-UA, Modbus 등 연동 방법 확인)2022-06AWS 5th anniversary Amazon Web Service Senior Solutions Architect - Yellow badge2022-05-16AWS InternalAnalytics - AWS 서비스를 이용한 RPADemo Web Site 2022 2021-10-28AWS Marketing EventAnalytics - 이커머스 고객 데이터 기반의 AI 마케팅 플랫폼 구축 전략2021-07-15AWS Marketing EventMarketing - 마케팅 효과 극대화를 위한 데이터 기반의 고객 맞춤형 참여 유도 서비스 구축 방법2021-01MFG Customer storyAnalytics - 뉴 모빌리티 위한 만도의 ‘듀얼’ 인프라뉴 모빌리티 위한 만도의 ‘듀얼’ 인프라 - 든든한 지원군 AWS 2021 2020-07-01AWS SA PromotionPromotionSenior Solutions ArchitectMedia, MFG, E-commerce 고객 지원, 공개 어려움 (~ 2021.12) 2020 2019-11-14AWS BuildersDevOps - AWS Cloud Development Kit을 이용한 Code 기반의 인프라 구축 AWS Cloud Development Kit을 이용한 기반의 인프라 구축2019-10-17AWS Retail & CPG Day 2019Marketing - Amazon Pinpoint를 활용한 이메일 프로모션 구축 방법 2019-09-26AWS DevDay SeoulDev - Amplify 와 AI 서비스를 활용한 서버리스 기반 소셜 안드로이드 앱 만들기 - 워크샵2019-04-18AWS Seoul SummitMarketing - 클라우드를 통한 마케팅 효과 극대화 및 고객 맞춤형 참여 유도 서비스 구축 방법 클라우드를 통한 마케팅 효과 극대화 및 고객 맞춤형 참여 유도 서비스 구축 방법2019-01-23AWS Enterprise EventAnalytics - AWS가 제공하는 신개념 데이터 레이크 서비스들 2019 2018-11-06AWS DevDay Seoul 2018ML - AWS 인공지능 서비스와 서버리스 서비스를 이용한 동영상 분석 서비스 구축하기 AWS 인공지능 서비스와 서버리스 서비스를 이용한 동영상 분석 서비스 구축하기2018-11-06AWS DevDay Seoul 2018DevOps - Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축 Amazon Polly와 Cloud9을 활용한 서버리스 웹 애플리케이션 및 CI/CD 배포 프로세스 구축2018-04Media Customer storyDev - 아마존 폴리가 조선일보 뉴스를 들려드립니다아마존 폴리가 조선일보 뉴스를 들려드립니다 - 기사 읽기 및 Alexa Skill 도입2018-04-18AWS Seoul SummitDev - 서버리스 웹 애플리케이션 구축 방법론 AWS 서버리스 서비스를 이용한 웹 애플리케이션 구축 방법2018-02-21AWS BlogDev - Amazon Polly를 통한 음성 읽기 서버리스 앱 개발하기Amazon Polly를 통한 음성 읽기 서버리스 앱 개발하기 - Hands on Lab 2018 2017-06AWS JoinAmazon Web Service Solutions Architect - Blue Badge CAFE24 - 2013-06 ~ 2017-06 새로운 플랫폼 구축을 위한 기획을 돕고 DB 스키마 설계 및 Back-end / ML 모델 개발자동화 개발팀에서 3년간 검색엔진최적화(SEO) 및 웹 Back-end를 개발하고, 1년간 TensorFlow를 활용한 머신러닝 모델을 만들었습니다 2017-06CAFE24 퇴사CAFE24 퇴사 2017 2016-07 ~ 2017-06Tensorflow MLMLOps - Tensorflow를 이용한 이미지 분류기 만들기TensorFlow-Slim을 활용한 이미지 분류 모델 완성 ML 서버 구축 및 설정 학습에 필요한 데이터 크롤러 구축 라벨링을 위한 웹 플랫폼 구축 추론 정확도 96% 이상 모델 프로덕션 2016 2015-06 ~ 2016-07Web editor for PhotoshopDev - PSD 웹 에디터 플랫폼Photoshop의 PSD 파일을 웹 브라우저에서 편집할 수 있는 에디터- DB 및 백엔드 API 구축2015-01 ~ 2015-05Text translate for PhotoshopDev - PSD 자동 번역 플랫폼Photoshop의 PSD 파일의 텍스트 레이어를 추출하여 다국어로 번역하여 번역된 이미지 추출- Full-stack 개발 2015 2014-05 ~ 2014-12Email report automationDev - 쇼핑몰 운영 정보 리포트 발송쇼핑몰의 정산 및 맞춤 정보를 매월 이메일 발송- Full-stack 개발2014-03 ~ 2014-04Rest APIDev - Rest API wrapper by versions​상이한 버전을 하나의 Endpoint로 호출할 수 있는 Wrapper API 구축 2014 2013-11 ~ 2014-02DatabaseDev - 전사 공용 DB 관리툴 제작사용자(MySQL) 및 관리자(PgSQL)를 위한 전사 공용 DB 작성(팀별, 사용자별 즉시 테이블 생성 및 공유 가능한 관리 도구)2013-06 ~ 2013-10Search Engine OptimizationDev - SEO를 위한 자동 상품 소개 블로그 포스팅쇼핑몰에 상품 등록시 상품 정보를 바탕으로 72개국 언어로 번역하여 각기 다른 WordPress 블로그에 포스팅 자동화2013-06CAFE24 SEO 개발팀심플렉스인터넷 (이후 CAFE24로 사명 변경) 유비콤 - 2010-11 ~ 2013-03 센서 네트워크 절전 시스템 및 AMI 무선 검침 시스템 개발원격 검침 및 자동 제어를 위한 IoT 플랫폼 서비스를 구축 및 배포합니다. 2013-03유비콤 퇴사유비콤 퇴사 2013 2012-01 ~ 2013-03Web UI 개발Dev - 실시간 원격 절전 시스템 UI 개발웹 표준을 기반으로 GIS 메시업 한 UI 개발- UI 기획부터 Web Full-stack 개발- Legacy는 MFC이며, PHP/JS/CSS/HTML 마이그레이션 함. 2012 2010-11 ~ 2011-12Web UI 개발Dev - 웹 표준을 이용한 원격 검침 UI 개발웹 표준을 기반으로 GIS 메시업 한 UI 개발- UI 기획부터 Web Full-stack 개발- 모바일 웹으로도 장치 상태 확인 및 제어 명령 전송 가능 2011 2010-11RIUBIT 입사RIUBIT으로 입사이전 직장의 기술 이전 연구소(RIUBIT)에 스카웃 되어 이직 펠릭스정보통신 - 2009-02 ~ 2010-09 유비쿼터스 센서 네트워크를 이용한 절전 시스템 판매냉난방기 조명을 제어하는 원격 절전 시스템 장치 및 플랫폼 관리 2010-09펠릭스정보통신 퇴사펠릭스정보통신 퇴사2010-05Modbus protocol 연동 개발Dev - Peak 제어 시스템 구축파워플랜트에서 Modbus 프로토콜로 RS-232 시리얼 통신하여 실시간 소비 전력을 전달받아 사이트 내에 일정 이상의 전력을 사용하지 않도록 제어하는 시스템 구축2010-03기술 이전 받아서 최적화 작업Dev - 절전 관리 시스템 개발 및 운용미들웨어 제작 (java) 및 UI 프로그래밍 (MFC)- 중앙 실시간 관제- 스케줄링- 절전 통계 2010 2009-03기술 이전 받아서 최적화 작업Dev - 무선 원격 절전 주차장 시스템 구축펌웨어 프로그래밍- 재부재 시스템 제작- 지하 주차장 자동 절전 시스템 제작2009-02펠릭스정보통신 입사펠릭스정보통신 입사 #### 샘플 페이지 이것은 예제 페이지입니다. 페이지는 한 곳에 고정되며 사이트 네비게이션에 표시되기 때문에 블로그 글과는 다릅니다 (대부분의 테마). 대다수의 사람들은 사이트 방문자들에게 자신들을 소개하기 위한 About 페이지부터 시작합니다. 다음과 같이 작성할 수 있습니다: 안녕하세요! 저는 낮에는 자전거로 배달하는 일을 하고 밤에는 배우가 되기 위한 연기 연습을 합니다. 여기는 제 블로그입니다. 서울에 살고 순돌이라는 이름의 대단한 개를 키우고 있죠.음악 듣기와 영화보기를 좋아합니다.(이런식의 자기소개). ...또는 이럴 수도 있습니다: 이 가나다 회사는 2012년에 만들어졌으며 그 후로 소비자를 위해 품질 좋은 생산품을 만들고 있습니다. 고담시에 위치하며 2천명의 직원이 있고 고담시 커뮤니티를 위해 다양하고 멋진 일을 하고 있습니다. 새로운 워드프레스 사용자로써, 관리자 화면으로 가서 이 페이지를 삭제하고 컨텐츠로 채워진 새로운 페이지를 생성해보세요. 즐겨보세요! #### 시호의 성장 스토리 [timeline src="https://docs.google.com/spreadsheet/pub?key=0AmiK3O9tlts7dEN3al80Q3N3cDRZTFZRem1HYTFCLXc&output=html" width="100%" height="650"]