한눈에 보는 2014년 연말정산

 1월 중순의 직장인은 머리가 아프다. 13번째 월급이라 불리던 연말정산이 면 년 전부터 13번째 세금으로 변해버렸기 때문이다. 매년 바뀌는 세법으로 인해서 연말정산 계산방법도 매년 바뀌고 있다. 간소화 시스템이 도입되었다고는 하지만 평범한 회사원이 연말정산을 제대로 이해하고 처리하는 것은 쉬운 일이 아니다.

 2014년 연말정산을 잘 요약해 놓은 자료가 있어서 공유하고자 한다. PDF파일은 아래의 바로가기를 통해서 받을 수 있다.
연말정산 - 2013 vs 2014 흐름도.pdf(바로가기)
연말정산 - 공제항목별 제출 서류.pdf(바로가기)
 연말 정산에서 승리하길 기원한다. 아래의 이미지를 클릭하면 정상적인 크기로 볼 수 있다. 

고속터미널 맛집, 파미에스테이션 방문기(하즈벤, 스타벅스, 올반)

 주말을 맞이하여 고속터미널에 위치한 신세계 백화점에서 잠시 일을 보았다. 그리고 밥을 먹기 위해서 주변 맛집을 검색해보던 중 신세계 백화점에서 JW메리어트 호텔 뒷편에 새로운 식당가가 생긴 것을 확인하였다. 용산 아이파크, 삼성 코엑스, 문래 타임스퀘어와 조금 비슷하면서도 다른 형태의 "파미에스테이션"이라는 실내 거리형 식당가가 생겼다. 살짝 여의도 IFC몰과 비슷한 느낌을 받았다.
 입구에 들어서면 기존 식당가와는 조금 다른 느낌을 받을 것이다. 실내를 거리 형태로 만들어 개별 식당을 방문하는 형태로 구성되어 있다. 거리 중간 중간에 식당 안내가 있어서 자신이 원하는 식당을 찾는 것은 어렵지 않았다.
 살짝 유럽 느낌이 나는 장식물들이 많다. 파주의 신세계 아웃렛과 비슷한 느낌이다.
 중간에 사람들이 쉴수 있는 공간도 있다. 하지만, 유동인구에 비해서 공간히 협소하긴 하다.
 일요일 저녁 7시경에 방문을 하였는데, 사람이 너무 많아서 줄을 서지 않고 밥을 먹을 수 있는 곳이 없었다. 인터넷에 맛집이라고 포스팅된 곳에서는 밥을 먹을 수가 없을 정도로 줄이 길었다. 긴 곳은 100명의 대기자가 있는 곳도 있었다.

 나름 고르고 골라서 간곳이 "Sushi & Bento by Hazben" 라는 일식집이었다. 덮밥류, 일본식 도시락, 초밥을 판매한 곳이다.
 가격은 만원부터 3만원대까지 있다. 가격이 저렴한 편은 아니지만, 파미에스테이션의 분위기를 볼 때, 이곳에서 먹을 수 있는 저렴한 식당 중하나라고 생각된다. 맛은 나쁘진 않았다. 초밥의 경우, 신선하였고, 덮밥은 괜찮았다. 무난한 입맛의 소유자라면 만족하고 나왔을 것 같다. 내가 먹은 것은 덮밥과 우동정식이었는데, 다른 사람들은 대부분 벤토를 주문해 먹었다. 다음에 가면 벤토를 먹어야 겠다.

 그 다음으로 이동한 곳이 스타벅스였다. 이제껏 가본 스타벅스 중에 가장 큰 곳이었다. 파미에스테이션 건물 3층에 위치해 있다. 올라가는 길에 커다란 스타벅스 로고를 볼 수 있다.
 다른 스타벅스와는 다르게 조금 고풍스러운 느낌이었다. 큰 원형 형태였고 중간중간에 큰테이블도 많이 있었다.
 대형 스타벅스 매장이기에 스타벅스에 판매하는 다양한 물건들도 진열되어 있었다.
 오랜만에 서울 나들이를 통해 코에 바람을 넣었다. 그래서인지 별거 아닌것 같지만 별거같은 포스팅을 올려본다.

 추가.
 추후에 친구들끼리 올반이라는 한식 뷔페 식당에 방문할 일이 있어, 음식 사진을 몇 장 첨부합니다. 주말, 평일 저녁 가격이 1인당 23,000원이라서 그런지 식사 시간엔 2시간 이상 대기를 해야합니다.
 이정도 가격에 괜찮은 맛이라고 생각됩니다. 다만, 대기 시간이 너무 긴것 빼고는 괜찮습니다. 

2015년 전망, 믿거나 말거나

 연말 연초가 되면 서점가, 언론사 등에서 새해 전망을 한다. 경기, 산업, 문화, 주식, 부동산등 다양한 분야의 전망을 한다. 이런 전망은 얼마나 맞았을까? 2014년에는 코스피 2400을 향해 갈거라던 주식 전망을 했던 사람들은 2015년의 주식 전망을 여전히 한다. 국제유가는 100달러대를 유지할 거라는 사람들의 전망을 비웃듯 유가는 폭락을 거듭해 50% 가까이 떨어졌다. 2015년의 유가를 70불로 전망하는 책이 12월에 출간되었을때 유가는 이미 50달러였다. 소위 전문가라 말하는 사람들도 미래를 예측하는 일은 어렵다. 사실, 예측이라고 볼 수도 없다. 상당수의 광고, 예측 등은 대가의 결과이다. 우리 나라의 주식, 부동산 시장이 대표적이다.

 심심하니, 나도 2015년 대전망을 해보려 한다.

 주가
 코스피는 최저 1700에서 최대 2400포인트 내에서 움직일 것이다. 가장 의미없는 예측이라고 생각되는 것이 코스피의 최대/최소치 발표이다. 이런 예측은 나도 할 수 있다.

 유가
 러시아가 배고픔에 미사일을 쏘지 않는 올해의 유가는 계속 하락 후, 50달러 이하를 유지할 것같다. 유가세력과 세일세력, 미국과 중동, 미국과 러시아 사이의 치킨 게임은 어느 한쪽이 죽어야 끝날 것 같은데, 1년가지고는 치킨 게임이 끝나지 않을 것이다. 반도체 산업의 치킨 게임도 몇 차례에 걸쳐서 일어났는데, 유가는 국가간 산업의 경쟁이다. 고로, 반도체와는 급이 다른 규모와 시간이 필요할 것 같다.

 부동산 시장
 한국의 주택 시장이 살아나는 방법은 단 하나다. 폭락후, 다시 올르는 방법 밖에 없다. 한국의 부채의 대부분은 주택으로 인한 부채다. 부채를 줄이려면 실질 소득이 증가해야한다. 이 실질 소득의 증가는 새로운 산업이 나타나거나 많은 일력을 고용할 수 있는 산업이 폭발적으로 성장을 해야한다. 그간, 건설, LCD, 반도체, 조선 그리고 휴대폰 등 제조업을 기반으로 하는 산업이 성장을 했을때, 한국은 성장했다. 하지만, 지금 위에서 언급된 산업은 성숙기에 접어들었고, 일부는 중국에 그 자리를 내주었다. 민간의 성장이 정체되었기에 정부에서 대출을 더 해주는 방식으로 부동산 경기를 받들고 있지만, 이또한 임시 방편에 불과하다. 결국엔 부동산 경기는 내려갈 것이다. 폭락이라는 이벤트가 있지 않다면 결코, 회복은 있을 수 없을 것이다. 적어도 2015년에 부동산 상승은 없을 것이다. 

 신산업
 건설, LCD, 반도체, 인터넷 통신, 조선, 휴대폰 등 제조업을 기반으로 하는 산업이 경쟁력을 갖추었을때, 한국은 한 단계 더 성장했다. 더 이상 대규모 고용을 창출할 수 있는 산업이 잘 보이지 않는다. 고유가가 지속되었다면, 전기차 관련 개발과 투자로 인해서 관련 산업이 흥하지 않았을때 유추해 볼수도 있지만, 지금 유가는 물보다 싸지고 있다. 한국의 경제 구조로 인해서 폭발적으로 성장하는 산업은 없을 것 같다. 다만, 언어, 공간적 장벽이 적은 산업인 게임 산업은 지속적으로 성장 하지 않을까 생각된다. 

 네이버 VS 다음카카오
 다음과 카카오가 합병을 하였지만, 네이버를 이용하는 사람들이 다음으로 넘어오긴 힘들것같다. 카카오 메신저는 메신저, 게임플랫폼을 넘어서기 힘들 것이다. 네이버에서 다음으로 넘어오기엔 메일/카페/일정 등의 각종 서비스 매몰비용이 너무 크게 작용하기 때문이다. 다음과 네이버 중에서 하나를 골라서 투자를 해야한다면 네이버를 할 것이다. 다음카카오는 국내 시장을 선점했지만, 네이버의 라인은 일본, 동남아 시장을 선점했기 때문이다.

 국산차 점유율
 국산차의 점유율은 지속적으로 하락할 것이다. 현기차에 대한 국민, 특히 젊은이들의 인식이 너무 안좋기 때문이다. 내수용과 수출용이 확연히 다른 상황을 국민들이 점점 알아가고 있고, 국산차를 사는 사람은 호구라는 인식이 퍼지고 있는 것이 사실이다. 해외에서 발생하는 손실을 국내의 높은 이익율로 채우고 있는 현대기아차가 국내판매의 마진율을 떨어뜨리기 힘들 것이다.

 박근혜 대통령의 지지율
 2년간 지속적으로 하락했고, 앞으로 하락하리라 생각된다. 사람은 쉽게 바뀌지 않는다. 불통의 대명사인 박근혜 대통령에게 새로운 모습을 기대하기란 어렵다. 기대가 실망으로 바뀌었을 때에는 그만큼의 충분한 이유가 있었다. 경기는 쉽게 회복되지 않을 것이고, 특히 경제 구조의 변화는 더더욱 힘들 것이다. 매번 등장하였던, 부동산, 북한 이벤트는 충분히 써먹을 만큼 써먹어서 더 이상의 효과는 기대하기 힘들 것이다. 이미 대구/경북의 지지율 50%가 무너졌다는 것은 지지기반마져 등을 돌렸다는 의미로 해석될 수 있다. 지지율의 반등은 외부에 의한 국가적 재난이 오지 않는 이상 힘들 것이다.

 아이폰 vs 안드로이드폰
 아이폰6는 확실히 성공했다. 한국에서도 점유율이 점점 올라가고 있다. 그 동안 한국에서 안드로이드폰이 아이폰보다 높은 점유율을 보일 수 있었던 요인중에 하나가 큰 화면이었다. 아이폰6는 큰 화면을 지원한다. 아이폰 사용을 망설이게 했던 요소중 하나가 사라진 것이다. 아이폰의 점유율은 지속적으로 증가하겠지만 저렴한 안드로이드 폰으로 인해서 획기적으로 점유율이 올라가지는 않을 것이다.

 2015년 12월 31일이 되었을 때, 나의 전망이 얼마나 맞았는지도 확인해 봐야겠다. 

DDNS(다이나믹DNS) 자동업데이트 하기

 개인이 홈페이지나 서버를 운영하려면 여러가지 요소가 필요하다. 먼저 물리적인 서버, 그리고 도메인, 그리고 서버에 연결된 네트워크가 필요하다. 필자의 경우, 학창시절에 작은 단체의 서버를 운영한 적이있다. 구형PC에 우분투 OS를 설치하여 학교의 네트워크망에 물려서 사용하였다. 지금은 취미 생활로 라즈베리 파이를 집에 설치하여 이것저것 공부하고 있다.

 대학/회사의 네트워크는 기본적으로 고정IP를 기반으로 한다. 하지만 집에서 사용하는 인터넷은 유동IP이다. 언제 IP가 바뀔지 모른다. 이를 해결하기 위해 DDNS라는 것이 있다. DDNS를 이용하는 2가지 방법이 있다. 

 첫 번째 방법으론 이전 글에서도 언급한 적이 있는 공유기에 있는 DDNS를 이용하는 방법이다.
공유기 DDNS 이용하기 : http://www.withover.com/2014/12/nginx-php5-mysql.html
 위 링크의 중간 부분부터 iptime DDNS를 설정하는 방법이 나온다. 이 방법을 이용하면 도메인.iptime.org 같은 형태의 도메인을 획득 할 수 있다. 인터넷 서비스 업체에서 IP를 변경하더라도 공유기에서 IP를 자동으로 도메인에 업데이트 하기 때문에 다른 작업이 필요없다. 하지만, withover.com 의 도메인을 직접 구입해서 사용하는 입장에서는 iptime.org라는 다른 도메인을 사용해야 한다는 점이 아쉬운 방법이다.

 두 번째 방법이 DDNS를 지원해주는 dnsever.com 과 같은 서비스를 이용하는 방법이 있다. 이 방법을 이용하면, http://pi.withover.com 과 같이  withover.com 도메인의 하위 도메인을 이용할 수 있다. 세계적으로 많이 사용하는 dyndns.com 서비스을 이용한다면 공유기 설정만으로 DDNS를 이용할 수 있다. 하지만, 필자는 dnsever.com 을 이용하기 때문에 dnsever.com 을 이용해서, 특정 도메인과 필자의 라즈베리 파이이를 연결하는 방법을 설명하려 한다.
DNSever.com : http://dnsever.com
 pi.withover.com 을 입력했을 때, 변환과정을 간략히 보자.
http://pi.withover.com -> DNS Server -> 입력된 도메인을 특정 IP를 변환 -> IP를 가지고 서버를 찾음
 위 과정을 거쳐 특정 도메인이 IP로 변환되어 서버를 찾는 것이다.

 먼저 간략하게 DDNS를 등록해 보자. 도메인 구입과 dnsever.com에 도메인 등록은 완료되었다고 가정한다.
DNSever.com 에 로그인 -> 기본 도메인 선택 -> 다이나믹 DNS 관리 -> DDNS에 공유기 외부 IP등록
 고정 IP를 사용한다면, 위 단계까지만 해도 문제가 없다. 하지만, 일반 가정집에서 인터넷 공유기를 이용해 서버를 구축했다면, IP가 주기적으로 변경된다. IP가 변경되면 도메인은 잘못된 IP에 연결을 시도하게 된다. 이 문제를 해결하렴 IP가 변경되는 것을 감지해 DNS정보를 업데이트 해야한다. dnydns.com 서비스를 이용한다면 보통의 공유기에서 이 작업을 자동으로 처리할 수 있다. 하지만, 우리나라에서 많이 사용하는 dnsever.com 서비스는 crontab 등을 사용해 변경된 IP를 등록하는 작업을 만들어야한다.
DNSEver.com의 DDNS 등록 참고 : https://kr.dnsever.com/help/wiki/wiki.php?AboutDDNSHelp
 다음 단계를 통해서 DDNS 정보를 주기적으로 업데이트하는 작업을 만들어보자.

 먼저, DNSEver.com 의 다이나믹 DNS 관리 페이지에서 DNS 인증코드(authcode) 를 등록한다. 자동으로 IP를 업데이트할 때 필요한 코드이다.

 DNS 인증코드를 등록한 후, 아래 형식의 코드를 서버에서 실행한다. 정상적으로 실행되면 dnsever.com에 등록된 도메인 IP의 업데이트가 이루어 진다.
linx 사용시
lynx -source -auth=아이디:인증코드 'http://dyna.dnsever.com/update.php?host[호스트이름]' 
wget 사용시
wget -O - --http-user=아이디 --http-passwd=인증코드 'http://dyna.dnsever.com/update.php?host[호스트이름]'
 아래의 코드는 필자의 pi.withover.com 도메인의 IP를 업데이트하는 코드이다. 사용자ID(userid)와 DNS인증코드(12345678)은 다른 코드로 바꾸었다.
pi@raspberrypi ~ $ wget -O - --http-user=userid --http-passwd=12345678 'http://dyna.dnsever.com/update.php?host[pi.withover.com]'
--2015-01-03 16:08:56--  http://dyna.dnsever.com/update.php?host[pi.withover.com]
Resolving dyna.dnsever.com (dyna.dnsever.com)... 211.233.75.82, 211.233.75.81
Connecting to dyna.dnsever.com (dyna.dnsever.com)|211.233.75.82|:80... connected.
HTTP request sent, awaiting response... 401 Unauthorized
Connecting to dyna.dnsever.com (dyna.dnsever.com)|211.233.75.82|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 238 [text/xml]
Saving to: `STDOUT'
 0% [                                    ] 0           --.-K/s              <?xml version="1.0" encoding="utf-8" ?>
<dnsever>
        <result type="update" code="701" numOfSuccess="1" numOfFailure="0" msg="DDNS Update Success">
                <host name="pi.withover.com" code="720" msg="Update Success"></host>
        </result>
</dnsever>
100%[===================================>] 238         --.-K/s   in 0s
2015-01-03 16:08:56 (3.44 MB/s) - written to stdout [238/238]
pi@raspberrypi ~ $
 위 내용을 crontab 과 같이 주기적으로 실행하는 서비스에 등록해보자.
Cron : http://en.wikipedia.org/wiki/Cron 
Crontab 설명 : http://jmnote.com/wiki/%EB%A6%AC%EB%88%85%EC%8A%A4_%EB%B0%98%EB%B3%B5_%EC%98%88%EC%95%BD%EC%9E%91%EC%97%85_cron,_crond,_crontab
dnsever.com 에서 1분이내의 시도가 있으면 거부를 주기 때문에 5분마다 실행하는 크론탭을 만들어보자.
$ crontab -e 
아래의 내용을 마지막에 붙여 넣고 저장한다. 5분 단위로 서비스를 호출하는 코드이다.
*/5 * * * * wget -O - --http-user=userid --http-passwd=12345678 'http://dyna.dnsever.com/update.php?host[pi.withover.com]'
크론탭 서비스를 다시 시작한다.
$ sudo apt-get service cron restart
다음의 명령으로 등록된 크론탭 리스트를 볼수 있다.
$ crontab -l
 ISP 업체에서 공유기에 할당된 IP를 바꾸더라도 5분 이내에 바뀐 IP로 DNS가 설정되게 된다.

추가.
 DNS업데이트를 쉘로 바꾸었고, 로그를 남기게 설정을 변경하였다.
 위 크론탭 내용을 setdns.sh 등의 쉘 파일로 만든다.
$ vi setdns.sh 
-O - --http-user=userid --http-passwd=12345678 'http://dyna.dnsever.com/update.php?host[pi.withover.com]'

 쉘 실행권한을 준다.
$ chmod +x setdns.sh 
 쉘을 크론탭에서 실행한다. 그리고 로그를 남긴다.
00 * * * * $HOME/setdns.sh > $HOME/setdns.sh.log


Makeblock Starter Robot Kit V2.0-Blue 프로그래밍 하기

 Makeblock 에서 사용하는 Me-Baseboard는 아두이노 레오나르도 기반의 보드이다. 따라서 아두이노 프로그래밍이 가능하다.
 Makeblock의 코딩을 조작하기 위해 아두이노 프로그래밍을 할 수 있는 환경을 만들어보자. 필자는 인텔 갈릴레오를 이전에 사용한 환경이 있어서 기본적인 아두이노IDE 환경이 갖추어져 있다. 하지만 갈릴레오 페이지를 이용해서 설치를 했다면, 아두이노의 다른 환경이 설치 되어 있지 않기 때문에 처음부터 다시 시작해보자.

 아래의 링크를 참고하여 Makeblock의 아두이노IDE 환경을 설정해보자.
아두이노IDE 환경 설정하기 : http://learn.makeblock.cc/learning-arduino/
 첫번째 단계로 IDE 파일을 설치한다. 아두이노 공식 홈페이지의 파일을 다운받아 설치하거나 Makeblock에서 제공하는 파일을 설치해도 된다.
 두번째 단계로 MakeBlcok 드라이버를 설치하자.
MakeBlcok Driver 설치 : http://learn.makeblock.cc/driver_installation/
 세번째 단계로 Makeblock 라이브러리 파일을 설치하자.
Makeblock Labrary : https://github.com/Makeblock-official/Makeblock-Library/archive/master.zip
 다운받은 압축파일을 아두이노의 라이브러리 폴더(D:\Documents\Arduino\libraries)에 압축을 푼다. 라이브러리가 정상적으로 설치되었다면 아래의 이미지처럼 나와야 한다.
 이제 실제, 컴퓨터와 Me-Baseboard를 연결해보자. 먼저 보드의 전원을 켠다. 그리고 마이크로 USB를 연결한다.
 Aduino IDE를 실행하여 다음 단계를 진행한다.

  • Tools -> Board 에서 Arduino Leonardo 를 선택
  • Tools -> Serial Port 에서 COM4 를 선택
  • File -> Examples -> makeblock -> Makeblock_Robot_Starter_Kit -> IR Contorl 을 선택
  • 업로드 버튼(Ctrl + U)를 클릭해서 업로드
 포트는 상황에 따라 다르게 설정 될수 있다. IDE의 오른쪽 하단에 연결된 포트를 확인 할 수 있다. 
 정상적으로 업로드가 되었다면 마이크로 USB를 제거하여 동작시켜 보자. 유튜브에 올라온 공식 영상으로 이 포스트를 마무리한다.