<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>따라쟁이</title>
	<atom:link href="http://www.yuiworld.kr/suguni/?feed=rss2" rel="self" type="application/rss+xml" />
	<link>http://www.yuiworld.kr/suguni</link>
	<description>모방은 상대방에 대한 최고의 찬사다. - 속담이라는데...?</description>
	<lastBuildDate>Wed, 18 Apr 2012 05:24:37 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>ace-jump-mode</title>
		<link>http://www.yuiworld.kr/suguni/?p=785</link>
		<comments>http://www.yuiworld.kr/suguni/?p=785#comments</comments>
		<pubDate>Sat, 14 Apr 2012 04:58:12 +0000</pubDate>
		<dc:creator>suguni</dc:creator>
				<category><![CDATA[emacs]]></category>

		<guid isPermaLink="false">http://www.yuiworld.kr/suguni/?p=785</guid>
		<description><![CDATA[AceJump-mode is a minor mode for Emacs, enabling fast/direct cursor movement in current view. EmacsWiki: AceJump Marmalade ELPA에서 설치하고, 아래 코드를 init.el에 추가하면 C-c SPC 단축키로 바로 이용 가능. 사용방법은 C-c SPC한 후 찾고자 하는 단어(ace-jump-word-mode)의 첫 번째 문자를 입력하면, 나머지 단어들은 모두 딤드되고 입력한 문자로 시작하는 단어들에 단축키가 설정된다. 원하는 위치의 단축키를 입력하면 해당 [...]]]></description>
			<content:encoded><![CDATA[<blockquote cite="http://www.emacswiki.org/emacs/AceJump">
<p>AceJump-mode is a minor mode for Emacs, enabling fast/direct cursor movement in current view.</p>
<footer><cite><a href="http://www.emacswiki.org/emacs/AceJump">EmacsWiki: AceJump</a></cite></footer>
</blockquote>
<p><a href="http://marmalade-repo.org/packages/">Marmalade</a> <a href="http://tromey.com/elpa/">ELPA</a>에서 설치하고, 아래 코드를 <tt>init.el</tt>에 추가하면 <tt>C-c SPC</tt> 단축키로 바로 이용 가능.</p>
<pre class="brush: lisp; title: ; notranslate">
(define-key global-map (kbd &quot;C-c SPC&quot;) 'ace-jump-mode)
</pre>
<p>사용방법은 <tt>C-c SPC</tt>한 후 찾고자 하는 단어(ace-jump-word-mode)의 첫 번째 문자를 입력하면, 나머지 단어들은 모두 딤드되고 입력한 문자로 시작하는 단어들에 단축키가 설정된다. 원하는 위치의 단축키를 입력하면 해당 단어로 커서가 바로 이동됨. 말보다는 <a href="http://dl.dropbox.com/u/3254819/AceJumpModeDemo/AceJumpDemo.htm">ace-jump-mode 데모</a>를 보면 바로 이해된다.</p>
<p>이동 방식은 ace-jump-word-mode(단어), ace-jump-char-mode(문자), ace-jump-line-mode(줄) 세 가지를 지원한다. 이것도 직접 해보면 바로 이해됨. 이동 후 원래 위치로 돌아가려면 <tt>C-u C-SPC</tt>를 하면 되는데, 아래 코드를 init.el 파일에 추가해야 한다. <a href="http://irreal.org/blog/?p=760">A Note On ace-jump-mode</a>를 읽어보면 <a href="https://github.com/winterTTr/ace-jump-mode">github 소스</a>에는 추가되어 있지만, <a href="http://marmalade-repo.org/packages/">Marmalade</a> 저장소에는 없다고 함.</p>
<pre class="brush: lisp; title: ; notranslate">
(add-hook 'ace-jump-mode-before-jump-hook
             (lambda () (push-mark (point) t))) ;until it's fixed in Maramalade
</pre>
<h3>주의</h3>
<ul>
<li>화면에 보이는 위치로만 이동할 수 있다. 당연</li>
<li>한글은 지원되지 않는다.</li>
</ul>
<h3>참조</h3>
<ul>
<li><a href="http://dl.dropbox.com/u/3254819/AceJumpModeDemo/AceJumpDemo.htm">ace-jump-mode demo</a></li>
<li><a href="http://www.emacswiki.org/emacs/AceJump">EmacsWiki: AceJump</a></li>
<li><a href="http://emacsrocks.com/e10.html">Emacs Rocks! Episode 10: Jumping around</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.yuiworld.kr/suguni/?feed=rss2&#038;p=785</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Regression</title>
		<link>http://www.yuiworld.kr/suguni/?p=776</link>
		<comments>http://www.yuiworld.kr/suguni/?p=776#comments</comments>
		<pubDate>Sun, 26 Feb 2012 13:48:08 +0000</pubDate>
		<dc:creator>suguni</dc:creator>
				<category><![CDATA[Programming?]]></category>
		<category><![CDATA[regression]]></category>
		<category><![CDATA[용어]]></category>

		<guid isPermaLink="false">http://www.yuiworld.kr/suguni/?p=776</guid>
		<description><![CDATA[책이나 기사를 읽다보면 (물론 컴퓨터 소프트웨어 관련) regression란 용어가 종종 등장하는데, 무슨 의미인지 모르고 있었다. Secrets of the JavaScript Ninja를 읽다 또 나와서, 세미나를 하는 관계로 자세히 알고 있어야 해서 다시 찾아봤음. 예전에는 찾아도 잘 모르겠던데&#8230; ㅎㅎ 역시나 google + wikipedia로 해결 http://en.wikipedia.org/wiki/Software_regression 알고 보니 흔히 겪는 일이다. 코드를 개선했는데 여태까지 잘 되던게 망가지는 경우를 [...]]]></description>
			<content:encoded><![CDATA[<p>책이나 기사를 읽다보면 (물론 컴퓨터 소프트웨어 관련) regression란 용어가 종종 등장하는데, 무슨 의미인지 모르고 있었다. <a href="http://www.manning.com/resig/">Secrets of the JavaScript Ninja</a>를 읽다 또 나와서, 세미나를 하는 관계로 자세히 알고 있어야 해서 다시 찾아봤음. 예전에는 찾아도 잘 모르겠던데&#8230; ㅎㅎ 역시나 google + wikipedia로 해결</p>
<p><a href="http://en.wikipedia.org/wiki/Software_regression">http://en.wikipedia.org/wiki/Software_regression</a></p>
<p>알고 보니 흔히 겪는 일이다. 코드를 개선했는데 여태까지 잘 되던게 망가지는 경우를 의미한다. 정확히는 software regression이라고 하네. software performance regression이라는 용어도 있는데 동작은 정상적으로 하는데 성능이 떨어진 경우를 의미한다.</p>
<p>regression이라고 하면 통계에서의 회귀분석이 계속 생각났었는데 이거랑 무슨 관계가 있는지 모르고 있었음. 회귀란 예전으로 돌아간다는 의미니까, 업데이트 하고 나서 오히려 예전으로 돌아갔다는 의미로 보면 되나?</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuiworld.kr/suguni/?feed=rss2&#038;p=776</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Project Euler 시작</title>
		<link>http://www.yuiworld.kr/suguni/?p=770</link>
		<comments>http://www.yuiworld.kr/suguni/?p=770#comments</comments>
		<pubDate>Sun, 26 Feb 2012 06:11:26 +0000</pubDate>
		<dc:creator>suguni</dc:creator>
				<category><![CDATA[Programming?]]></category>

		<guid isPermaLink="false">http://www.yuiworld.kr/suguni/?p=770</guid>
		<description><![CDATA[http://projecteuler.net/ 2012.2.24 시작했고, clojure로 코딩합니다. 매일 한 문제씩 풀어보기가 목표. 하루에 하나씩만 해도 1년하고도 1주일이 더 걸리네요. ㅋ 저의 문제 풀이는 https://github.com/suguni/project-euler 에서 확인! 잘못된, 개선할 사항 있으면 알려주세요! ??? ㅋ Logs 2012.3.2 10번까지 완료!]]></description>
			<content:encoded><![CDATA[<p><a href="http://projecteuler.net/" title="Project Euler">http://projecteuler.net/</a></p>
<p>2012.2.24 시작했고, clojure로 코딩합니다. 매일 한 문제씩 풀어보기가 목표. 하루에 하나씩만 해도 1년하고도 1주일이 더 걸리네요. ㅋ</p>
<p>저의 문제 풀이는 <a href="https://github.com/suguni/project-euler" title="suguni's Project Euler source">https://github.com/suguni/project-euler</a> 에서 확인! 잘못된, 개선할 사항 있으면 알려주세요! ??? ㅋ</p>
<h3>Logs</h3>
<p>2012.3.2 10번까지 완료!</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuiworld.kr/suguni/?feed=rss2&#038;p=770</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Node.js testing framework</title>
		<link>http://www.yuiworld.kr/suguni/?p=765</link>
		<comments>http://www.yuiworld.kr/suguni/?p=765#comments</comments>
		<pubDate>Tue, 21 Feb 2012 04:10:35 +0000</pubDate>
		<dc:creator>suguni</dc:creator>
				<category><![CDATA[Programming?]]></category>
		<category><![CDATA[nodejs]]></category>
		<category><![CDATA[testing]]></category>

		<guid isPermaLink="false">http://www.yuiworld.kr/suguni/?p=765</guid>
		<description><![CDATA[Node.js in Action &#8211; 6장 Testing Node applications 에서 소개하는 것들. Assert node assert module Expresso node assert module을 사용. node의 http.Server 인스터스와 연동되는 http response test가 있어 유용할 듯. expresso --serial로 동기(serial) 실행이 가능하다는데 계속 에러남. Nodeunit 기존에 보던 unit test framework과 가장 유사한 듯. 기본적으로 sequential로 테스트가 실행된다. 느리긴 하지만 테스트간 의존성이 있는 [...]]]></description>
			<content:encoded><![CDATA[<p>Node.js in Action &#8211; 6장 Testing Node applications 에서 소개하는 것들.</p>
<h3><a href="http://nodejs.org/docs/latest/api/assert.html">Assert</a></h3>
<p>node assert module</p>
<h3><a href="https://github.com/visionmedia/expresso">Expresso</a></h3>
<p>node assert module을 사용.<br />
node의 http.Server 인스터스와 연동되는 http response test가 있어 유용할 듯.<br />
<tt>expresso --serial</tt>로 동기(serial) 실행이 가능하다는데 계속 에러남.</p>
<h3><a href="https://github.com/caolan/nodeunit">Nodeunit</a></h3>
<p>기존에 보던 unit test framework과 가장 유사한 듯.<br />
기본적으로 sequential로 테스트가 실행된다. 느리긴 하지만 테스트간 의존성이 있는 경우 유용(antipattern으로 알고 있긴 한데&#8230;)<br />
browser 모드가 있어 client와 같이 테스트 코드를 만들땐 좋겠다.</p>
<h3><a href="http://vowsjs.org/">Vows</a></h3>
<p>앞의 것들이 TDD라면 이건 BDD framework<br />
BDD라는데 느낌이 잘 안나다. 사실 BDD의 개념이 명확치 않은것?</p>
<p>소개되는 프레임워크들 중에 가장 구조적이다. Suite &gt; Batches &gt; Contexts &gt; Topics / Vows 요런식으로 구조화한다. 그리고 async로 동작된다. Vows 사이트에서도 얘기하지만 node가 async이므로 테스트도 당연히 async해야 할 듯 하다.</p>
<p>테스트 자체는 node의 assert 모듈을 사용한다.</p>
<h3><a href="https://github.com/visionmedia/should.js">Should</a></h3>
<p>BDD 스타일이다. <code>dollarFormat(rounded).should.equal('$38.10');</code> 이런식?</p>
<p>근데 어쩔수 없긴 하지만 nativ object를 확장하는 방식이다. 이거 맘에 안든다. 개인적으로 명세서에 존재하지만 환경에서 구현되지 않은 경우 그리고 구현 방식이 명확한 경우에는 확장하는게 좋지만, 그렇지 않은 경우에는 선호하지 않기 때문. <a href="http://perfectionkills.com/extending-built-in-native-objects-evil-or-not/">Extending built-in native objects. Evil or not?</a> 참조.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuiworld.kr/suguni/?feed=rss2&#038;p=765</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Magit</title>
		<link>http://www.yuiworld.kr/suguni/?p=757</link>
		<comments>http://www.yuiworld.kr/suguni/?p=757#comments</comments>
		<pubDate>Mon, 20 Feb 2012 14:37:50 +0000</pubDate>
		<dc:creator>suguni</dc:creator>
				<category><![CDATA[emacs]]></category>
		<category><![CDATA[git]]></category>
		<category><![CDATA[magit]]></category>

		<guid isPermaLink="false">http://www.yuiworld.kr/suguni/?p=757</guid>
		<description><![CDATA[emacs git interface mode. ELPA로 설치하는게 제일 속편한듯. 직접 설치는 https://github.com/magit/magit 에서 확인! Crash course from EmacsWiki: Magit M-x magit-status to see git status, and in the status buffer: &#8211; 실행하면 magit status buffer가 열린다. 아래는 magit status buffer에서의 명령들 s to stage files c to commit (type in your commit message then C-c C-c [...]]]></description>
			<content:encoded><![CDATA[<p>emacs git interface mode. ELPA로 설치하는게 제일 속편한듯. 직접 설치는 https://github.com/magit/magit 에서 확인!</p>
<p>Crash course from <a href="http://www.emacswiki.org/emacs/Magit">EmacsWiki: Magit</a></p>
<ul>
<li><tt>M-x magit-status</tt> to see git status, and in the status buffer: &#8211; 실행하면 magit status buffer가 열린다. 아래는 magit status buffer에서의 명령들</li>
<li><tt>s</tt> to stage files</li>
<li><tt>c</tt> to commit (type in your commit message then <tt>C-c C-c</tt> to save the message and commit &#8211; 이건 commit log edit 버퍼에서)</li>
<li><tt>b</tt> to switch to a branch &#8211; 안해봤음.</li>
<li><tt>P</tt> to do a git push &#8211; 다시 메뉴가 나오는데 한번 더 <tt>P</tt>하면 push한다.</li>
<li><tt>F</tt> to do a git pull &#8211; <tt>P</tt>와 마찬가지</li>
<li>try to press <tt>TAB</tt> &#8211; magit status 버퍼에서 selection을 열고 닫고 할 때 사용</li>
</ul>
<p><strike><strong style="color:red;">주의사항</strong> &#8211; commit log에 한글 입력하면 안된다.(아직 해결책 못찾았음) 처음 파일 추가할때는 에러나면서 실행 안되고, 추가된 파일의 수정을 커밋할때는 commit log가 ???로 되어버림. 그리고 이후 commit, push 등을 하면 뭔가 꼬여버림. 결론은 <strong>이 문제 해결 안되면 못쓸거 같아요</strong>.</strike> Mac GitHub app도 commit log에 한글 들어가면 문제 있음.</p>
<p>commit log edit 버퍼의 language environment를 UTF-8로 설정하고 커밋하면 정상적으로 된다. 설정이 문제! 그럼 어떻게 하면 항상 UTF-8이 되도록 할 수 있을까?</p>
<p>아래 코드를 <tt>.emacs</tt>(또는 <tt>.emacs.d/init.el</tt>)에 추가하면 default가 UTF-8이 된다.</p>
<p><code>(set-language-environment "utf-8")</code></p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuiworld.kr/suguni/?feed=rss2&#038;p=757</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Sublime Text2 &#8211; Package Control / Terminal package / REPL package</title>
		<link>http://www.yuiworld.kr/suguni/?p=750</link>
		<comments>http://www.yuiworld.kr/suguni/?p=750#comments</comments>
		<pubDate>Mon, 20 Feb 2012 07:53:01 +0000</pubDate>
		<dc:creator>suguni</dc:creator>
				<category><![CDATA[생활]]></category>

		<guid isPermaLink="false">http://www.yuiworld.kr/suguni/?p=750</guid>
		<description><![CDATA[Package Control http://wbond.net/sublime_packages/package_control Sublime package 관리자. 설치 방법에 따라 설치하며 된다. Command Palette(M-S-p)에서 package control 까지 입력하면 할 수 있는 일들이 나온다. Terminal http://wbond.net/sublime_packages/terminal Terminal을 실행해 주는 package. Sublime 내 terminal emulator는 아니다. 그나마 이 정도라도 있으니 써 봐야 할 듯. Package Control로 설치(Package Control: Install package) 가능하다. REPL https://github.com/wuub/SublimeREPL 언어별 REPL을 실행시켜 준다. Clojure, [...]]]></description>
			<content:encoded><![CDATA[<h3>Package Control</h3>
<p><a href="http://wbond.net/sublime_packages/package_control">http://wbond.net/sublime_packages/package_control</a></p>
<p>Sublime package 관리자. 설치 방법에 따라 설치하며 된다. Command Palette(<tt>M-S-p</tt>)에서 <tt>package control</tt> 까지 입력하면 할 수 있는 일들이 나온다.</p>
<h3>Terminal</h3>
<p><a href="http://wbond.net/sublime_packages/terminal">http://wbond.net/sublime_packages/terminal</a></p>
<p>Terminal을 실행해 주는 package. Sublime 내 terminal emulator는 아니다. 그나마 이 정도라도 있으니 써 봐야 할 듯. Package Control로 설치(<tt>Package Control: Install package</tt>) 가능하다.</p>
<h3>REPL</h3>
<p><a href="https://github.com/wuub/SublimeREPL">https://github.com/wuub/SublimeREPL</a></p>
<p>언어별 REPL을 실행시켜 준다. Clojure, CoffeeScript, F#, Ruby, Python, Node 등의 REPL을 지원한다.</p>
<h4>REPL &#8211; Clojure</h4>
<p>Clojure를 실행하려면 Find not found 에러가 발생한다. Clojure REPL은 <tt>lein repl</tt>로 실행되는데, lein의 경로가 포함되어 있지 않아서이다. <tt>$PATH</tt>에 추가해 뒀는데 이건 적용이 안되는 듯. 암튼 그래서 <tt>SublimeREPL/config/Clojure/Main.sublime-menu</tt> 파일에서 <code>"extend_env": {"INSIDE_EMACS": 1}</code>를 <code>"extend_env": {"INSIDE_EMACS": 1, "PATH": "/path/to/lein"}</code>로 변경하면 된다.</p>
<p>지금은 <strong>[Errno 20] Not a directory</strong> 에러가 발생하는데, 이건 해결책을 못 찾음. 그래서 허무하게도 안쓰고 있다. ㅋ</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuiworld.kr/suguni/?feed=rss2&#038;p=750</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Sublime Text 2에서 브라우저 열기</title>
		<link>http://www.yuiworld.kr/suguni/?p=733</link>
		<comments>http://www.yuiworld.kr/suguni/?p=733#comments</comments>
		<pubDate>Tue, 24 Jan 2012 04:52:06 +0000</pubDate>
		<dc:creator>suguni</dc:creator>
				<category><![CDATA[생활]]></category>

		<guid isPermaLink="false">http://www.yuiworld.kr/suguni/?p=733</guid>
		<description><![CDATA[간만에 괜찮은 텍스트 에디터 발견한듯. Emacs를 주로 사용하려고 노력해도 뭔가 맞지 않는 부분이 있고, 이걸 커스터마이징하는 노력이 너무 크다. 무난하면서도(일반적인 에디터의 이동, 편집 convention을 가진) 어느 정도 커스터마이징과 확장 가능성이 있는 에디터가 어디 없나 찾았었는데, sublime text가 그런 용도에 맞는거 같다는 느낌이 든다. 자세히는 모르겠지만 확장 인터페이가 python을 통해 구현할 수 있다. emacs는 elisp이었는데, 비슷한 [...]]]></description>
			<content:encoded><![CDATA[<p>간만에 괜찮은 텍스트 에디터 발견한듯. Emacs를 주로 사용하려고 노력해도 뭔가 맞지 않는 부분이 있고, 이걸 커스터마이징하는 노력이 너무 크다. 무난하면서도(일반적인 에디터의 이동, 편집 convention을 가진) 어느 정도 커스터마이징과 확장 가능성이 있는 에디터가 어디 없나 찾았었는데, <a href="http://www.sublimetext.com">sublime text</a>가 그런 용도에 맞는거 같다는 느낌이 든다.</p>
<p>자세히는 모르겠지만 확장 인터페이가 python을 통해 구현할 수 있다. emacs는 elisp이었는데, 비슷한 개념인듯. 첫번째 커스터마이징(물론 구글링 후 copy&amp;paste 한거지만).</p>
<p>Windows, Mac, Linux 모두 지원하는것도 강점. Mac에서만 써 봤는데 Windows나 Linux는 어떨지? 그리고 유료이긴 하지만 무료로 기능 제한이 없고(?) 대신 가끔 저장하려면 구매하라는 alert이 뜨는 정도.</p>
<p>Emacs에서 가장 아쉬운 점은 html과 같이 하나의 major-mode만으로 사용하기 힘든 환경에서는 일반적인 에디터보다 오히려 생산성이 떨어지는 느낌이 든다는 점이다. 물론 방법이 있는거 같은데, 내 손에 맞는걸 찾는데 까지가 넘 힘들어서&#8230;</p>
<h4>현재 파일을 브라우저에서 열기</h4>
<p>source : <a href="http://www.sublimetext.com/forum/viewtopic.php?f=2&amp;t=3851">http://www.sublimetext.com/forum/viewtopic.php?f=2&amp;t=3851</a></p>
<p>Tool &gt; New Plugin 선택하고, 아래 코드 붙여 넣기</p>
<pre class="brush: python; title: ; notranslate">
import sublime, sublime_plugin
import webbrowser

class OpenBrowserCommand(sublime_plugin.TextCommand):
    def run(self,edit):
        url = self.view.file_name()
        webbrowser.open_new(url)
</pre>
<p>Tools &gt; Command Palette 에서 &#8220;Key Bindings &#8211; User&#8221; 선택. Suggest 해 주니 쉽게 찾을수 있음. 배열 제일 마지막에 아래 코드 붙여 넣기. 원래 있던 마지막 항목 끝에 &#8216;,&#8217; 붙이는거 잊지 말것.</p>
<pre class="brush: python; title: ; notranslate">
{ &quot;keys&quot;: [&quot;ctrl+shift+b&quot;], &quot;command&quot;: &quot;open_browser&quot; }
</pre>
<p><tt>ctrl+shift+b</tt> 키에 <tt>open_browser</tt> 명령을 바인딩하는 것이니, 입맛에 맞춰 단축키 변경하면 됨. 참고로 Mac에서 <tt>command</tt> 키는 <tt>super</tt> 이고, 화면에 출력되지 않는 키들은 이름이 부여되어 있는거 같음. 파일을 보면서 확인 가능.</p>
<p>키 바인딩에서 명령을 <tt>"open_browser"</tt>라고 했는데 해당 클래스 이름은 <code>OpenBrowserCommand</code>이다. 아마도 매핑하는 컨벤션이 있는듯.</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuiworld.kr/suguni/?feed=rss2&#038;p=733</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>2011년의 마무리.</title>
		<link>http://www.yuiworld.kr/suguni/?p=729</link>
		<comments>http://www.yuiworld.kr/suguni/?p=729#comments</comments>
		<pubDate>Sat, 31 Dec 2011 13:44:53 +0000</pubDate>
		<dc:creator>suguni</dc:creator>
				<category><![CDATA[생활]]></category>

		<guid isPermaLink="false">http://www.yuiworld.kr/suguni/?p=729</guid>
		<description><![CDATA[뭐 새삼스럽게 마무리할건 없고&#8230; 그냥 몇가지 되짚어 보면. 서울시장 야권, 민주당(?) 후보 경선 투표 &#8211; 첫번째 적극적 정치 참여. 통합진보당 당원 가입 &#8211; 정치 참여. 뭐 얼마나 참여할지는 모르겠음. 오늘 극적(ㅋㅋ)으로 가입. 시사인 정기 구독 &#8211; 빨랑 했어야 했는데 늦장 부렸다 오늘에서야 신청 카페 안드로이드 앱 프로젝트 &#8211; 첨으로 PM 해봤고 지금까지 결과 좋다고 자평(그런가?). [...]]]></description>
			<content:encoded><![CDATA[<p>뭐 새삼스럽게 마무리할건 없고&#8230; 그냥 몇가지 되짚어 보면.</p>
<p>서울시장 야권, 민주당(?) 후보 경선 투표 &#8211; 첫번째 적극적 정치 참여.<br />
통합진보당 당원 가입 &#8211; 정치 참여. 뭐 얼마나 참여할지는 모르겠음. 오늘 극적(ㅋㅋ)으로 가입.<br />
시사인 정기 구독 &#8211; 빨랑 했어야 했는데 늦장 부렸다 오늘에서야 신청<br />
카페 안드로이드 앱 프로젝트 &#8211; 첨으로 PM 해봤고 지금까지 결과 좋다고 자평(그런가?).<br />
팀원들이랑 마니 친해졌고.</p>
<p>정치 얘기가 많아진건 순전히 나꼼수 때문임.</p>
<p>내년 목표 명확해 졌음&#8230; ??? &#8230;</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuiworld.kr/suguni/?feed=rss2&#038;p=729</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>&#8220;2011년 목표&#8221;라고 했었는데&#8230; 결과.</title>
		<link>http://www.yuiworld.kr/suguni/?p=727</link>
		<comments>http://www.yuiworld.kr/suguni/?p=727#comments</comments>
		<pubDate>Sat, 31 Dec 2011 13:15:08 +0000</pubDate>
		<dc:creator>suguni</dc:creator>
				<category><![CDATA[생활]]></category>

		<guid isPermaLink="false">http://www.yuiworld.kr/suguni/?p=727</guid>
		<description><![CDATA[2011년 나의 목표 라고 했었는데, 역시나 이룬게 별로 없군. 필수 SICP 모든 내용 학습하기 3장까지만 봤음. 50% 달성. 그리고 &#8220;모든 내용&#8221;이 마스터의 의미는 아니었겠지? 3장까지 다시 봐도 새로울거 같어&#8230; 그리고, HTDP를 새롭게 시작했기 때문에 내년은 이걸 목표로!!! 개인 프로젝트 2개 진행하기 뭐 하나 진지하게 한건 없음. 그냥 쫌 하다 말고&#8230; 쩝. 이건 내년에 다시 목표로 [...]]]></description>
			<content:encoded><![CDATA[<h3>2011년 나의 목표</h3>
<p>라고 했었는데, 역시나 이룬게 별로 없군.</p>
<h5>필수</h5>
<ul>
<li>SICP 모든 내용 학습하기<br />
3장까지만 봤음. 50% 달성. 그리고 &#8220;모든 내용&#8221;이 마스터의 의미는 아니었겠지? 3장까지 다시 봐도 새로울거 같어&#8230;<br />
그리고, HTDP를 새롭게 시작했기 때문에 내년은 이걸 목표로!!!</li>
<li>개인 프로젝트 2개 진행하기<br />
뭐 하나 진지하게 한건 없음. 그냥 쫌 하다 말고&#8230; 쩝. 이건 내년에 다시 목표로 잡기.</li>
<li>100권 책 읽기 <br />
지금 보니 40권 정도인데 일부는 읽다 말고 한것들도 있고, 다 읽었지만 읽었다고 할 수 없는것들도 있고. 쩝. 역시나 책을 읽는 나만의 방법을 찾는게 시급해 보임. 그리고 교과서(?, 기술서적) 이것도 여기다 세야 하나? 애매함.</li>
<li>정규표현식 공부하기-실무에서 겁없이 쓸수 있는 수준으로 <br />
첨에 목표로 잡고 책 한권 읽은게 다이네. 역시나 아직은 copy&amp;paste 방식이고 그나마 기회도 별로 없는듯. 일단 내년 목표는 아님.</li>
</ul>
<h5>최대한 노력</h5>
<ul>
<li>clojure를 나의 주 언어로 만들기<br />
뭔가 많이 늘긴 했는데 수준을 가늠하기 어려움. 역시나 프로젝트가 필요함.</li>
<li>순수 함수형 언어 학습 &#8211; clojure/javascript와 비교 차원, clojure 이해를 위해 필요한 부분일 듯.<br />
전혀 못했다고 봐야 하고, 내년에는 Haskell 공부를 해야 할거 같음.</li>
<li>30편 영화 보기<br />
카운트 불가. 근데 30편은 아닌 듯. 역시나 무리!</li>
</ul>
<h5>했으면</h5>
<ul>
<li>운전하기 &#8211; 차 살 수 있을까?<br />
전혀 못함. 내년은&#8230; 사실 하고 싶지 않다.</li>
<li>PMP 공부/준비<br />
이걸 왜 하려고 한거지??? 일단 목표서 제외
</li>
</ul>
<p>Last Updated: 2011. 1. 4</p>
]]></content:encoded>
			<wfw:commentRss>http://www.yuiworld.kr/suguni/?feed=rss2&#038;p=727</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>The Node Beginner Book 후기</title>
		<link>http://www.yuiworld.kr/suguni/?p=722</link>
		<comments>http://www.yuiworld.kr/suguni/?p=722#comments</comments>
		<pubDate>Wed, 28 Dec 2011 02:53:11 +0000</pubDate>
		<dc:creator>suguni</dc:creator>
				<category><![CDATA[생활]]></category>
		<category><![CDATA[nodejs]]></category>

		<guid isPermaLink="false">http://www.yuiworld.kr/suguni/?p=722</guid>
		<description><![CDATA[갑자기!!! node.js 공부중이다. 초보자를 위한 &#8211; 물론 JavaScript는 안다는 가정 &#8211; 책이 있어 소개. 책 제목은 The Node Beginner Book. 배운점 Node는 single thread이고, application은 async로 동작하게끔 짜야 한다. 이 부분에 대해 잘못된 사례를 들며 친절히 설명하고 있음. 최종적으로 이미지를 업로드하는 web application을 하나 만드는데, server, router, handler의 구조를 가진다. 왜 이러한 구조가 되는지 하나씩 [...]]]></description>
			<content:encoded><![CDATA[<p>갑자기!!! node.js 공부중이다. 초보자를 위한 &#8211; 물론 JavaScript는 안다는 가정 &#8211; 책이 있어 소개.</p>
<p>책 제목은 <a href="http://www.nodebeginner.org/" title="The Node Beginner Book">The Node Beginner Book</a>.</p>
<p><strong>배운점</strong></p>
<ol>
<li>Node는 single thread이고, application은 async로 동작하게끔 짜야 한다. 이 부분에 대해 잘못된 사례를 들며 친절히 설명하고 있음.</li>
<li>최종적으로 이미지를 업로드하는 web application을 하나 만드는데, server, router, handler의 구조를 가진다. 왜 이러한 구조가 되는지 하나씩 따라가면서 개념을 익힐 수 있다. 중간에 소개하는 아래 참조 글들도 숙독할 필요 있음.</li>
</ol>
<p><strong>참고 article</strong></p>
<ul>
<li><a href="http://martinfowler.com/articles/injection.html">Inversion of Control Containers and the Dependency Injection pattern</a></li>
<li><a href="http://steve-yegge.blogspot.com/2006/03/execution-in-kingdom-of-nouns.html">Execution in the Kingdom of Nouns</a></li>
<li><a href="http://debuggable.com/posts/understanding-node-js:4bd98440-45e4-4a9a-8ef7-0f7ecbdd56cb">Understanding node.js</a></li>
<li><a href="http://blog.mixu.net/2011/02/01/understanding-the-node-js-event-loop/">Understanding the node.js event loop</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://www.yuiworld.kr/suguni/?feed=rss2&#038;p=722</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

