<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
	<channel>
		<title>썰렁한 엔지니어</title>
		<link>http://coolengineer.com/</link>
		<description>최호진의 글들입니다.</description>
		<language>ko</language>
		<pubDate>Sun, 20 Jul 2008 18:27:23 +0900</pubDate>
		<generator>Textcube 1.7.2 : Risoluto</generator>
		<image>
		<title>썰렁한 엔지니어</title>
		<url>http://coolengineer.com/attach/1/1447282470.jpg</url>
		<link>http://coolengineer.com/</link>
		<width>168</width>
		<height>208</height>
		<description>최호진의 글들입니다.</description>
		</image>
		<item>
			<title>못생긴 PHP create_function</title>
			<link>http://coolengineer.com/entry/ugly-php-lambda-function</link>
			<description>PHP의 lambda function 제조기는 create_function 이라는 함수 입니다. 대략 이렇게 사용하죠.&lt;br&gt;&lt;br&gt;&lt;blockquote&gt;&amp;lt;?php&lt;br&gt;$times = 5;&lt;br&gt;$yourarray = array_map( create_function( &#039;$item&#039;, &quot;return \$item * $times;&quot; ), $myarray );&lt;br&gt;?&amp;gt;&lt;/blockquote&gt;실시간으로 만들어지는 함수를 map 함수에 집어 넣는 전형적인 예입니다. 그런데 너무 못생기지 않았나요? 그런데 딱히 PHP 구문에 맞추면서 근사한 뭔가도 만들기 쉽진 않아 보입니다. 위의 예에서 함수 본체에 해당하는 &quot;return \$item * $times;&quot;는 모두 문자열이기 때문에 런타임 파싱의 오버헤드가 있는데, 이것을 컴파일타임으로 올리고, 변수의 스코프만 적절히 만들어주면, 굳이 문자열로 가지 않고도 대략,&lt;br&gt;&lt;br&gt;&lt;blockquote&gt;&amp;lt;?php&lt;br&gt;$times = 5;&lt;br&gt;$yourarray = array_map( function ( $item ) { extern $times; return $item * $times; }, $myarray );&lt;br&gt;?&amp;gt;&lt;/blockquote&gt;&lt;br&gt;이렇게 하면 되지 않을까 싶은데, 이정도면, $times를 런타임에서 패싱해야하므로, 내부적으로는 global 키워드 취급해서 스코프 체인을 현 스택에서부터 뒤지는 것으로 가면되지 않을까 싶은데...&lt;br&gt;&lt;br&gt;이러면, 컴파일타임으로 많은것을 끌어 올릴 수 있지 않을까...&lt;br&gt;&lt;br&gt;&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;크리에이티브 커먼즈 라이센스&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-nd/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&gt;
			&lt;!-- &lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
			&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;&lt;/License&gt;&lt;/rdf:RDF&gt; --&gt;&lt;/div&gt;&lt;/fieldset&gt;</description>
			<category>장난하기</category>
			<category>lambda</category>
			<category>php</category>
			<author>(최호진)</author>
			<guid>http://coolengineer.com/572</guid>
			<comments>http://coolengineer.com/entry/ugly-php-lambda-function#entry572comment</comments>
			<pubDate>Wed, 16 Jul 2008 19:01:35 +0900</pubDate>
		</item>
		<item>
			<title>V3 lsass.exe 오진건</title>
			<link>http://coolengineer.com/entry/v3-false-positive</link>
			<description>직원으로서, 해당 사실을 알리고 대응을 해야할 것 같애서 글을 올립니다.&lt;br&gt;-----------------------------------------------------------------------------------------------------&lt;br&gt;
&lt;p&gt;&lt;span style=&quot;font-size: 10pt; color: rgb(227, 108, 10); font-family: &#039;맑은 고딕&#039;;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: rgb(227, 108, 10); font-family: &#039;맑은 고딕&#039;;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;color: rgb(0, 0, 0);&quot; lang=&quot;EN-US&quot;&gt;안녕하세요, 안철수연구소입니다&lt;span lang=&quot;EN-US&quot;&gt;. &lt;/span&gt;우선 이번 건으로 고객님들께 큰 불편을 드리게 되어 대단히 죄송합니다&lt;span lang=&quot;EN-US&quot;&gt;.&lt;/span&gt;현재 MS 윈도우&lt;span lang=&quot;EN-US&quot;&gt; XP&lt;/span&gt;의 서비스팩&lt;span lang=&quot;EN-US&quot;&gt; 3&lt;/span&gt;를 사용하시다가 부팅이 정상적으로 되지 않는 고객분들을 위해 복구&lt;span lang=&quot;EN-US&quot;&gt; CD&lt;/span&gt;를 제작하여 배포하고 있습니다&lt;span lang=&quot;EN-US&quot;&gt;. &lt;/span&gt;직접 CD를 구워 처리하실 수 있도록&lt;span lang=&quot;EN-US&quot;&gt; ISO &lt;/span&gt;형태로 배포가 되고 있으며&lt;span lang=&quot;EN-US&quot;&gt;, &lt;/span&gt;또한 직접&lt;span lang=&quot;EN-US&quot;&gt; CD &lt;/span&gt;제작이 어려운 고객분들을 위해 전달해 드리고자 저희 직원들이 철야를 하면서 수천장의&lt;span lang=&quot;EN-US&quot;&gt; CD&lt;/span&gt;를 굽고 있습니다&lt;span lang=&quot;EN-US&quot;&gt;.&lt;/span&gt;&lt;/span&gt;&lt;strong&gt;&lt;font color=&quot;#352e2c&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: rgb(227, 108, 10); font-family: &#039;맑은 고딕&#039;;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt; &lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-size: 10pt; color: rgb(227, 108, 10); font-family: &#039;맑은 고딕&#039;;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: rgb(227, 108, 10); font-family: &#039;맑은 고딕&#039;;&quot;&gt;&lt;font color=&quot;#000000&quot;&gt;다시 한번 고객님께 심한 불편과 심려를 끼쳐 드린 점 사과 드리며&lt;span lang=&quot;EN-US&quot;&gt;, &lt;/span&gt;전직원이 비상체제에 돌입하여 최선을 다해 고객님의 불편을 최소화시켜 드릴 수 있도록 노력하겠습니다&lt;span lang=&quot;EN-US&quot;&gt;. &lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;span style=&quot;font-size: 10pt; color: rgb(227, 108, 10); font-family: &#039;맑은 고딕&#039;;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: rgb(227, 108, 10); font-family: &#039;맑은 고딕&#039;;&quot;&gt;&lt;span lang=&quot;EN-US&quot;&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&amp;nbsp;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;&lt;o:p&gt;&lt;/o:p&gt;
&lt;p&gt;&quot;고객 여러분에게 불편을 끼치게 되어 진심으로 사과드립니다. 불편을 최소화하기 위해 최선을 다하고 있습니다. 부팅에 문제가
있는 고객분들께서는 1588-3094, 1588-3096, 2186-3095, 2186-6000 이상 4개의 번호로 전화를
주시거나 안랩닷컴 (&lt;a target=&quot;_blank&quot; class=&quot;con_link&quot; href=&quot;http://www.ahnlab.com/&quot;&gt;http://www.ahnlab.com&lt;/a&gt;) 에 있는 복구CD 신청 게시판(7/11일 오전 10시 오픈 예정)에 글을 남겨 주시면 됩니다.”&lt;/p&gt;
&lt;br /&gt;
&lt;p style=&quot;color: rgb(0, 0, 0);&quot; class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &#039;맑은 고딕&#039;;&quot;&gt;안랩닷컴 공지사항&lt;span lang=&quot;EN-US&quot;&gt; : &lt;a target=&quot;_blank&quot; class=&quot;con_link&quot; href=&quot;http://kr.ahnlab.com/info/noticeView.ahn?num=50069157&quot;&gt;http://kr.ahnlab.com/info/noticeView.ahn?num=50069157&lt;/a&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p style=&quot;color: rgb(0, 0, 0);&quot; class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 10pt; font-family: &#039;맑은 고딕&#039;;&quot;&gt;빛자루닷컴 공지사항&lt;span lang=&quot;EN-US&quot;&gt; : &lt;a target=&quot;_blank&quot; class=&quot;con_link&quot; href=&quot;http://www.vitzaru.com/bluebelt_customer/custom_news.do?svccode=vc1001&amp;amp;contentscode=129&quot;&gt;http://www.vitzaru.com/bluebelt_customer/custom_news.do?svccode=vc1001&amp;amp;contentscode=129&lt;/a&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class=&quot;MsoNormal&quot;&gt;&lt;span style=&quot;font-size: 10pt; color: rgb(227, 108, 10); font-family: &#039;맑은 고딕&#039;;&quot;&gt;&lt;/span&gt;&amp;nbsp;&lt;/p&gt;7/10(목) 배포된 빛자루 엔진 2008.07.10.01 버전에서 특정 파일을 &lt;strong style=&quot;color: rgb(220, 20, 60);&quot;&gt;Win-Trojan/Infactlsass.13312 로 잘못 진단하여 삭제하는 사례&lt;/strong&gt;가 아래와 같이 발생하였습니다.&lt;br&gt;&lt;p&gt;&lt;br&gt;- 오진발생 엔진버전: 2008.07.10.01&lt;br&gt;- 진단명: Win-Trojan/Infactlsass.13312&lt;br&gt;- 진단파일: &lt;span style=&quot;font-weight: bold;&quot;&gt;윈도우 XP 서비스팩 3&lt;/span&gt;에 존재하는 Lsass.exe 파일(13,312바이트)&lt;br&gt;- 피해증상: 진단파일 삭제로 인한 시스템 부팅 불가 (하드디스크의 데이터 파일 손상은 발생하지 않음)&lt;br&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;font color=&quot;#ff0000&quot;&gt;&lt;/font&gt;&lt;/strong&gt;&amp;nbsp;&lt;/p&gt;&lt;div class=&quot;autosourcing-stub&quot;&gt;&lt;p style=&quot;margin: 11px 0pt 7px; padding: 0pt; font-size: 12px; font-family: Dotum; font-style: normal; font-weight: normal;&quot;&gt;&lt;strong style=&quot;padding: 0pt 7px 0pt 0pt;&quot;&gt;[출처]&lt;/strong&gt; &lt;a href=&quot;http://blog.naver.com/mento/70032937567&quot;  target=&quot;_blank&quot;&gt;빛자루 오진으로 인해 삭제된 Lsass.exe 파일 조치방법&lt;/a&gt;&lt;span style=&quot;padding: 0pt 7px 0pt 5px;&quot;&gt;|&lt;/span&gt;&lt;strong style=&quot;padding: 0pt 7px 0pt 0pt;&quot;&gt;작성자&lt;/strong&gt; &lt;a href=&quot;http://blog.naver.com/mento&quot;  target=&quot;_blank&quot;&gt;진영파파&lt;/a&gt;&lt;/p&gt;&lt;/div&gt;&lt;p&gt;&lt;br&gt;&lt;/p&gt;&lt;br&gt;&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;크리에이티브 커먼즈 라이센스&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-nd/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&gt;
			&lt;!-- &lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
			&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;&lt;/License&gt;&lt;/rdf:RDF&gt; --&gt;&lt;/div&gt;&lt;/fieldset&gt;</description>
			<category>사는 얘기</category>
			<category>v3</category>
			<category>안철수연구소</category>
			<category>오진</category>
			<author>(최호진)</author>
			<guid>http://coolengineer.com/567</guid>
			<comments>http://coolengineer.com/entry/v3-false-positive#entry567comment</comments>
			<pubDate>Fri, 11 Jul 2008 09:47:06 +0900</pubDate>
		</item>
		<item>
			<title>오래된 시 한 수</title>
			<link>http://coolengineer.com/entry/my-old-poem</link>
			<description>&lt;blockquote&gt;그림 나무 새 &lt;br&gt;&lt;br&gt;나는 그림 나무새&amp;nbsp; &lt;br&gt;조용한 밤이면&amp;nbsp; &lt;br&gt;너를 부르는 노래를 하며 &lt;br&gt;세상의 적막을 잠깨운다&lt;br&gt;&lt;br&gt;누가 알랴 &lt;br&gt;누가 들으랴&amp;nbsp; &lt;br&gt;세상의 적막은 아무도 없으므로&lt;br&gt;적막이라 할 수 없는 것 &lt;br&gt;&lt;br&gt;난 노래를 부르다&amp;nbsp; &lt;br&gt;너의 기척 소리에&amp;nbsp; &lt;br&gt;그림 나무 속으로 숨는다&amp;nbsp; &lt;br&gt;&lt;br&gt;널 볼 자신 없는 그림새는&lt;br&gt;추한 자신의 모습을&amp;nbsp; &lt;br&gt;드러내기 두려워&amp;nbsp; &lt;br&gt;&lt;br&gt;적막이라 말할 수 없는 &lt;br&gt;시간에 너를 부른다. &lt;/blockquote&gt;&lt;br&gt;Note:&lt;br&gt;그림나무새.. 테헤란로를 지나다보면 공사현장들이 있는데&amp;nbsp; &lt;br&gt;미관상 벽을 숲 사진으로 찍어 놓은 곳이 있다.&lt;br&gt;마치 내가 그 적막한 숲 어딘가에서 숨어 있다가.. 그를 위한 노래를 부르고&amp;nbsp; &lt;br&gt;그가 나타나면 숨는 모습을 생각해본다. &lt;br&gt;세상의 적막은 아무도 없으므로&lt;br&gt;적막이라 할 수 없는 것 &lt;br&gt;이말은.. 아무도 없는 공간에 앞으로도 아무도&amp;nbsp; &lt;br&gt;알아주지 않는 사건이 일어났다면&lt;br&gt;과연 그건 일어난 것일까? 라는 질문을 해보는 것이다. &lt;br&gt;삶에서 그런 생각을 많이 해본다. &lt;br&gt;&lt;br&gt;--&lt;br&gt;1998년 아니면 1999년 즈음에 쓴 시.&lt;br&gt;&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;크리에이티브 커먼즈 라이센스&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-nd/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&gt;
			&lt;!-- &lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
			&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;&lt;/License&gt;&lt;/rdf:RDF&gt; --&gt;&lt;/div&gt;&lt;/fieldset&gt;</description>
			<category>시</category>
			<category>실존</category>
			<author>(최호진)</author>
			<guid>http://coolengineer.com/565</guid>
			<comments>http://coolengineer.com/entry/my-old-poem#entry565comment</comments>
			<pubDate>Tue, 08 Jul 2008 17:49:19 +0900</pubDate>
		</item>
		<item>
			<title>난 뭐하는 사람일까?</title>
			<link>http://coolengineer.com/entry/what-i-am</link>
			<description>뜬금없이,&lt;br&gt;문득,&lt;br&gt;얽혀 있는 것들을 하나씩 연상해보건데,&lt;br&gt;명료한 답들로 만들어진 유쾌한 상황은 아닌 것 같다.&lt;br&gt;&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;크리에이티브 커먼즈 라이센스&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-nd/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&gt;
			&lt;!-- &lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
			&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;&lt;/License&gt;&lt;/rdf:RDF&gt; --&gt;&lt;/div&gt;&lt;/fieldset&gt;</description>
			<category>사는 얘기</category>
			<category>없어요</category>
			<author>(최호진)</author>
			<guid>http://coolengineer.com/564</guid>
			<comments>http://coolengineer.com/entry/what-i-am#entry564comment</comments>
			<pubDate>Tue, 08 Jul 2008 01:53:08 +0900</pubDate>
		</item>
		<item>
			<title>웹사이트 기획</title>
			<link>http://coolengineer.com/entry/role-of-web-master</link>
			<description>잡생각이 떠올라 잠을 더 이루지 못하고 컴퓨터를 켜게 되었다. 요즘 내 머리에 생각의 똬리를 틀고 있는 주제중의 하나가 &quot;기획&quot;이라는 단어이다.&lt;br&gt;&lt;br&gt;생각없는이라는 단어를 앞에 좀 붙여 몇가지 말을 만들어 보기로하자.&lt;br&gt;&lt;blockquote&gt;생각없는 개발자, 생각없는 그래픽 디자이너, 생각없는 UI 디자이너, 생각없는 퍼블리셔, 생각없는 홍보담당.&lt;/blockquote&gt;이런 단어들을 만들어 놓아야, 그 옆에 생각있는 기획자라는 역할이 생겨난다. 위의 누구라도 생각하기 시작하면, 피곤해진다. 과거, 개발자와 디자이너가 웹이라는 기술에 대한 깊은 이해없이 마구 시장에 쏟아져 들어오던 시절, 누군가는 지휘를 해야했고, 웹마스터가 변신하여 기획이라는 고유의 영역을 가진 타이틀을 생산해내지 않았던가.&lt;br&gt;&lt;blockquote&gt;개발자는 서버사이드 스크립트부터 Javascript, CSS를 모두 할 줄 알아야한다.&amp;nbsp; 디자이너는 자신의 그래픽디자인이 어떤 태그로, 어떻게 배치될지를 알아야한다. UI는 구현상의 javascript, 서버사이드 스크립트 기술들을 알고 적절한 사용자 경험을 이끌어내야한다.&lt;/blockquote&gt;개발조직이 위와 같이 목표를 두고 자기계발을 하지 않는 이상, &lt;br&gt;&lt;ul&gt;&lt;li&gt;책임을 회피하고, 소극적인 반쪽짜리 개발자를 양산할 뿐이다.&lt;/li&gt;&lt;li&gt;멈췄을 때 보기 좋은 그래픽을 만들어내는 디자이너를 만들 뿐이다.&lt;/li&gt;&lt;/ul&gt;흔하디 흔한 웹 2.0을 다시 들먹여서 미안하지만,&lt;br&gt;&lt;blockquote&gt;웹 2.0식 개발이란 심하게 말하면, 모든 생각 없었던 웹 종사자들이 자기들의 몸값을 높히기 위한 의도적 포장이며, 정색을하고 말하면, 다른 역할에 대한 깊은(!) 기술적 이해를 바탕으로 상호 작업하는 문화인 것이다.&lt;/blockquote&gt;이렇게 변화하고 있는데, 기획자의 단어가 던져주는 역할은 무엇일까? 모르겠다. 정말 모르겠다.&lt;br&gt;&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;크리에이티브 커먼즈 라이센스&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-nd/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&gt;
			&lt;!-- &lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
			&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;&lt;/License&gt;&lt;/rdf:RDF&gt; --&gt;&lt;/div&gt;&lt;/fieldset&gt;</description>
			<category>잡생각</category>
			<category>웹기획</category>
			<author>(최호진)</author>
			<guid>http://coolengineer.com/562</guid>
			<comments>http://coolengineer.com/entry/role-of-web-master#entry562comment</comments>
			<pubDate>Sun, 06 Jul 2008 00:07:00 +0900</pubDate>
		</item>
		<item>
			<title>대화의 기술: 주의력의 리듬</title>
			<link>http://coolengineer.com/entry/art-of-dialog-attention</link>
			<description>대화를 하다보면, 주의력에 대한 리듬이 있다. 말하고, 듣고, 해석하고, 반응하고하는 일련의 동작에는 두뇌의 상태변화가 있게 마련이다.&lt;br&gt;&lt;br&gt;이런 실험을 해보면 알 수 있는데, 한참일하고 있는 창명씨를, &quot;창명씨!&quot;하고 불러서 나를 보게한 후, &quot;그~&quot;라고 한 마디 한 뒤, 한 5초간 정지하고 있으면, 그 사람은 듣고 있는 상태로 순간 아무 것도 안하는 상태에 빠지게 된다. 그 순간만큼은 그 사람에게는 판단정지의 시간이 된다. 왜냐하면, 아무런 사전 정보없이 무슨 말을 할 지를 기대할 수 없기 때문에, 해석할 만한 실마리를 수집하기 위해 최대한 듣는 상태가 되는 것이다.&lt;br&gt;&lt;br&gt;마찬가지로, 대화 중에서도 주거니 받거니 하는 상황에서, 한 사람의 대화는 말의 반만 들어도 이미 해석의 반이 되는 리듬을 타게 된다. 그런데, 이때, 문맥을 통해 바로 유추할 수 없는 연상에 의한 말이 끼어 들면, 순간 썰렁해지는 상황이 연출 된다. 그리고 비로소 해석의 단계에 들어서는 순간, 반응은 완전 썰렁하거나 다같이 웃는 상황이 된다.&lt;br&gt;&lt;br&gt;계속 그런 일이 반복되는 조직에 있게되면, 썰렁한 말을 하는 사람에 대한 내성이 늘어나게 되고, 이젠 왠만한 사이드킥 수준이 아니면 매장을 당할 수도 있다.&lt;br&gt;&lt;br&gt;주의력의 리듬을 타서, 해석의 실마리를 말이 끝나기도 전에 알아채는 행동은 우리 대화 생활의 주요한 패턴인데, 이런 패턴 속에 틈새를 노리는 적확한 단어선택에 의한 퀀텀점프 신공! 이것을 시전할 수 있는 사람들이야말로 하나의 종족으로 분류될 만한 가치가 있는 것이다아~~~ 퍽!&lt;br&gt;&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;크리에이티브 커먼즈 라이센스&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-nd/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&gt;
			&lt;!-- &lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
			&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;&lt;/License&gt;&lt;/rdf:RDF&gt; --&gt;&lt;/div&gt;&lt;/fieldset&gt;</description>
			<category>사는 얘기</category>
			<category>대화의 기술</category>
			<author>(최호진)</author>
			<guid>http://coolengineer.com/560</guid>
			<comments>http://coolengineer.com/entry/art-of-dialog-attention#entry560comment</comments>
			<pubDate>Fri, 04 Jul 2008 14:26:48 +0900</pubDate>
		</item>
		<item>
			<title>화면 보호기의 작동을 막는 무언가</title>
			<link>http://coolengineer.com/entry/screen-saver-must-be-in-action</link>
			<description>메인 PC가 아닌 IE를 사용하기 위해서와 그룹웨어에 들어가는 PC가 있다. 5년쯤된 성능 허접한...&lt;br&gt;&lt;br&gt;화면보호기는 1분간 귀찮게하는 일이 없으면 동작하도록 설정되어 있건만, 어떤 프로그램을 실행해놓으면 동작하지 않는다. 뭔지는 계속하다보면 알겠지만, 우선 synergy는 아닌것 같다.&lt;br&gt;&lt;br&gt;화면보호기는 꼭 실행되어야한다. 내 메인 PC는 일하고 있을지언정, 그 놈은 화면 보호기가 돌고 있어야한다. 반드시...! 보안 감사에 걸리기 때문이고, 가만히 있다는 것은 LCD에 공급되는 전력에 대한 모독이 아닌가?&lt;br&gt;&lt;br&gt;미안하다. &quot;내 그림 슬라이드 쇼&quot;라는 화면보호기를 선택해놓았고, 그림이 들어 있는 폴더 내용은 다음과 같다...&lt;br&gt;&lt;br&gt;&lt;blockquote&gt;C:\화면보호기사진&amp;gt;dir&lt;br&gt;&amp;nbsp;C 드라이브의 볼륨에는 이름이 없습니다.&lt;br&gt;&amp;nbsp;볼륨 일련 번호: F081-31AB&lt;br&gt;&lt;br&gt;&amp;nbsp;C:\화면보호기사진 디렉터리&lt;br&gt;&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp;&amp;nbsp; &amp;lt;DIR&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; .&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp;&amp;nbsp; &amp;lt;DIR&amp;gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; ..&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 34,429 choiganghee.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 14,402 choiganghee10.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 30,350 choiganghee11.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 223,279 choiganghee12.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 223,777 choiganghee13.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 128,644 choiganghee14.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 102,308 choiganghee15.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 190,057 choiganghee16.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오전 10:54 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 45,358 choiganghee17.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오전 10:54 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 168,760 choiganghee18.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오전 10:54 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 112,672 choiganghee19.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 57,737 choiganghee2.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 110,607 choiganghee20.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 105,776 choiganghee21.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 255,153 choiganghee22.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 96,596 choiganghee23.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 123,070 choiganghee24.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 77,534 choiganghee25.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 51,423 choiganghee26.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 101,501 choiganghee27.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 109,788 choiganghee28.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 108,331 choiganghee29.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 26,115 choiganghee3.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 119,260 choiganghee30.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 91,005 choiganghee31.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 58,271 choiganghee32.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 29,479 choiganghee33.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 205,298 choiganghee34.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 111,498 choiganghee35.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 50,253 choiganghee36.jpg&lt;br&gt;2008-07-01&amp;nbsp; 오후 01:14 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 71,982 choiganghee37.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 19,751 choiganghee4.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 48,953 choiganghee5.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 18,004 choiganghee6.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 38,955 choiganghee7.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 13,710 choiganghee8.jpg&lt;br&gt;2008-06-30&amp;nbsp; 오후 03:30 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 186,166 choiganghee9.jpg&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 37개 파일 &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; 3,560,252 바이트&lt;br&gt;&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&amp;nbsp; 2개 디렉터리 &amp;nbsp; 4,010,971,136 바이트 남음&lt;/blockquote&gt;&lt;br&gt;&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;크리에이티브 커먼즈 라이센스&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-nd/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&gt;
			&lt;!-- &lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
			&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;&lt;/License&gt;&lt;/rdf:RDF&gt; --&gt;&lt;/div&gt;&lt;/fieldset&gt;</description>
			<category>사는 얘기</category>
			<author>(최호진)</author>
			<guid>http://coolengineer.com/559</guid>
			<comments>http://coolengineer.com/entry/screen-saver-must-be-in-action#entry559comment</comments>
			<pubDate>Thu, 03 Jul 2008 15:29:20 +0900</pubDate>
		</item>
		<item>
			<title>다른 도메인간의 자바스크립트 장난질2</title>
			<link>http://coolengineer.com/entry/avoid-cross-domain-2</link>
			<description>&lt;a href=&quot;/entry/avoid-cross-domain-1&quot; target=&quot;_blank&quot;&gt;지난 글&lt;/a&gt;에 이어 생각해 볼만한 문제 회피 방법을 소개할까합니다. domain이 다른 상황에서 데이터를 요구하거나 전송하고자할 때 사용하는 방법으로 &lt;a href=&quot;http://www.xml.com/pub/a/2005/12/21/json-dynamic-script-tag.html&quot;  target=&quot;_blank&quot;&gt;script tag 삽입&lt;/a&gt;(dynamic script tag)이라는 기법이 사용됩니다. (참고 1: &lt;a href=&quot;http://code.google.com/apis/books/docs/dynamic-links.html&quot;  target=&quot;_blank&quot;&gt;구글 책 검색&lt;/a&gt;) (&lt;a href=&quot;http://www.google.co.kr/search?q=Improving+Existing+AJAX+Applications+With+Dynamic+Script+Tags&amp;amp;btnG=Search&quot;  target=&quot;_blank&quot;&gt;참고2&lt;/a&gt;)&lt;br&gt;&lt;br&gt;&lt;h5&gt;www.example.com: main.html&lt;/h5&gt;&lt;blockquote&gt;&amp;lt;script&amp;gt;&lt;br&gt;function draw( result )&lt;br&gt;{&lt;br&gt;&amp;nbsp; &amp;nbsp; if( result ) { alert(&quot;성공&quot;); } else { alert(&quot;실패&quot;); }&lt;br&gt;}&lt;br&gt;&lt;br&gt;function addComment( id, comment )&lt;br&gt;{&lt;br&gt;&amp;nbsp; &amp;nbsp; var scr = document.createElement( &quot;SCRIPT&quot; );&lt;br&gt;&amp;nbsp; &amp;nbsp; scr.src = &quot;http://external.example.net/api/get_tags?article_id=&quot;+&lt;br&gt;id+&quot;&amp;amp;comment=&quot;+encodeURIcomponent(comment)+&quot;&amp;amp;callback=draw&quot;;&lt;br&gt;&amp;nbsp; &amp;nbsp; document.body.appendChild( scr );&lt;br&gt;}&lt;br&gt;&amp;lt;/script&amp;gt;&lt;/blockquote&gt;위 스크립트는 도메인이 www.example.com에 있으면서, external.example.net이라는 외부 도메인의 글에 댓글을 달 수 있는 방법에 대한 하나의 예시입니다. 전형적이죠.&lt;br&gt;&lt;br&gt;위 방법의 단점이 있으니 그것은, 위 방법은 GET 방식을 통해 이루어지는 URL 길이 제한에 걸린다는 것입니다.&lt;br&gt;&lt;br&gt;검색 결과를 참고해봐서 인용하자면, &lt;br&gt;&lt;blockquote&gt;IE: 2083, FF: 65,536, Safari: 8,000, Opera: 190,000&lt;br&gt;Apache: ~4,000 IIS: 16,384&lt;br&gt;http://www.boutell.com/newfaq/misc/urllength.html&lt;/blockquote&gt;정도입니다.&lt;br&gt;아쉽게도 IE의 경우 2083자 정도이고, 이것은 UTF8의 경우 URL에서 한글 인코딩은 한 글자당 9byte를 소비하므로, 호스트명이나 변수명등을 제외하면, 200자정도로 제한 되는 것을 알 수 있습니다.&lt;br&gt;&lt;br&gt;따라서, POST를 쓸 수 밖에 없습니다만, 이 경우 script 태그를 통한 방법으로는 GET만 가능하므로 어렵습니다. 숨겨진 IFRAME을 만들고, 이 녀석 안에서 FORM을 만들어 전송하는 방법으로 해야겠습니다.&lt;br&gt;&lt;br&gt;다음과 같은 방법을 소개합니다.&lt;br&gt;&lt;br&gt;&lt;h5&gt;example.com: main.html&lt;/h5&gt;&lt;blockquote&gt;&amp;lt;script&amp;gt;&lt;br&gt;var request = {};&lt;br&gt;var requestCount = 0;&lt;br&gt;function addComment( id, comment )&lt;br&gt;{&lt;br&gt;&amp;nbsp; &amp;nbsp; request[requestCount] = {id:id, comment:comment};&lt;br&gt;&amp;nbsp; &amp;nbsp; var irf = document.createElement( &quot;IFRAME&quot; );&lt;br&gt;&amp;nbsp; &amp;nbsp; ifr.src = &quot;post.html#&quot;+ requestCount;&lt;br&gt;&amp;nbsp; &amp;nbsp; requestCount++;&lt;br&gt;&amp;nbsp; &amp;nbsp; document.body.appendChild( ifr );&lt;br&gt;}&lt;br&gt;&amp;lt;/script&amp;gt;&lt;/blockquote&gt;&lt;h5&gt;example.com: post.html&lt;/h5&gt;&lt;blockquote&gt;&amp;lt;html&amp;gt;&lt;br&gt;&amp;lt;head&amp;gt;&amp;lt;meta http-equiv=&quot;Content-Type&quot;&lt;br&gt;content=&quot;text/html; charset=utf-8&quot; /&amp;gt;&amp;lt;/head&amp;gt;&lt;br&gt;&amp;lt;body&amp;gt;&lt;br&gt;&amp;lt;script&amp;gt;&lt;br&gt;var request = window.parent.request[document.location.hash.substr(1)];&lt;br&gt;var form = document.createElement( &#039;FORM&#039; );&lt;br&gt;var key = document.createElement( &#039;INPUT&#039; );&lt;br&gt;var value = document.createElement( &#039;INPUT&#039; );&lt;br&gt;&lt;br&gt;form.action =&lt;br&gt;&quot;http://external.example.net/api/addComment?callback=dummy&quot;;&lt;br&gt;&lt;br&gt;form.method = &quot;post&quot;;&lt;br&gt;key.name = &quot;article_id&quot;;&lt;br&gt;key.value = request.id;&lt;br&gt;value.name = &quot;comment&quot;;&lt;br&gt;value.value = request.comment;&lt;br&gt;&lt;br&gt;document.body.appendChild( form );&lt;br&gt;form.appendChild( person_id );&lt;br&gt;form.appendChild( key );&lt;br&gt;form.appendChild( value );&lt;br&gt;form.submit();&lt;br&gt;&amp;lt;/script&amp;gt;&lt;br&gt;&amp;lt;/body&amp;gt;&lt;br&gt;&amp;lt;/html&amp;gt;&lt;br&gt;&lt;br&gt;/* Dynamic script tag technique has limitation of URL max length */&lt;/blockquote&gt;

원리는 간단합니다. 숨겨 있는 IFRAME에서 자기의 주소 뒤에 오는 fragment (#) 부분을 해석하여, 부모 프레임에 숨겨 있는 개체에 접근합니다. 주소에 넣기 싫다면, 숨겨 있는 frame을 만들때 name에 넣어주고, window.name으로 접근해도 됩니다.&lt;br&gt;&lt;br&gt;간단하죠? 단,iframe을 사용할 경우, iframe이므로 /api/addComment의 결과는 text/html과 같이 브라우져 안에서 해결할 수 있는 MIME 형식이어야합니다. 또한 callback이 동작하지 않습니다. FORM이 전송되고 나면, iframe은 더이상 www.example.com이 아닌 external.example.net 소속이 되므로, 부모에 접근할 수 없게 됩니다. 꼭, callback을 호출하고 싶을 때는 api의 결과창이 다시 redirect되어 상위에 접근할 수 있도록 바뀌어야합니다. 이것은 숙제로 남겨 둡....니다.&lt;br&gt;&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;크리에이티브 커먼즈 라이센스&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-nd/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&gt;
			&lt;!-- &lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
			&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;&lt;/License&gt;&lt;/rdf:RDF&gt; --&gt;&lt;/div&gt;&lt;/fieldset&gt;</description>
			<category>장난하기</category>
			<category>cross domain</category>
			<category>dynamic script tag</category>
			<author>(최호진)</author>
			<guid>http://coolengineer.com/558</guid>
			<comments>http://coolengineer.com/entry/avoid-cross-domain-2#entry558comment</comments>
			<pubDate>Tue, 01 Jul 2008 20:21:58 +0900</pubDate>
		</item>
		<item>
			<title>텍스트큐브 MMS 기반 모바일 로그</title>
			<link>http://coolengineer.com/entry/mms-mobile-blog</link>
			<description>텍스트 큐브 1.7 확장팩으로 들어가 있는 모바일 플러그인을 설계할 때, 몇가지 번쩍인 생각들에 대해 공유하고 자 합니다.&lt;br&gt;&lt;br&gt;&lt;h3&gt;전화번호&lt;/h3&gt;다른 모바일 블로그와 달리 이 기능은, 전화번호 인증을 하지 않습니다. 사실, 제 휴대폰이 IM-7400 SKY 폰인데, 여기에 설치되어 있는 컬러메일 기능은 전화번호를 보내오지 않습니다. 그래서 처음부터 전 모든 MMS에서 휴대폰 번호가 올라오지 않는 줄 알았습니다. 그러다가 테스트해 본 다른 폰에서는 올라오기도 하는 것이었습니다.&lt;br&gt;&lt;br&gt;잘 찾아보면 MMS 규격을 찾을 수 있겠지만, 기본적으로 Email MIME 형식만으로 만들 수 있기 때문에 Email blog 형식으로 바로 진행하였습니다. 모바일에서 올라오는 특성들이 표준을 모두 준수해서 올라올 것이 아니겠더군요.&lt;br&gt;&lt;br&gt;&lt;h3&gt;이메일 서버&lt;/h3&gt;이메일 서버를 돌려야 MMS 메시지를 받을 수 있습니다. 그러나, 수많은 Textcube 사용자에게 이메일 서버를 돌리라는 것은 사실 무리입니다.&lt;br&gt;&lt;br&gt;이것의 대안으로, textcube.org 메일 서버를 MMS 수신용도로 돌려서, 블로그에 쏴주는 방법도 있겠습니다만, 저희가 서버 운영을 하기에는 설치형 블로그에서 부담스러운 일이 될 것입니다.&lt;br&gt;&lt;br&gt;따라서, 외부 메일 서버를 사용하고 POP3를 이용하기로 결정하였습니다. 따라서, 메일을 받은 즉시 처리할 수 있는 실시간성을 포기하고, 5분정도의 간격으로 처리하는 방법을 사용합니다.&lt;br&gt;&lt;br&gt;&lt;h3&gt;주기적인 작업&lt;/h3&gt;위에서 말한대로, POP3의 경우 주기적으로 메일이 왔는지 확인해야 합니다. 그러면, 누가 그 5분을 계산해서 명령을 수행한단말입니까? 웹서버만 있는 환경에서 주기적인 작업을 실행하기 위해서는 UNIX계열의 cron이나 Window 계열의 AT 명령을 이용해야하는데, 사실상의 많은 호스팅 업체에서는 잘 허락해주지 않습니다.&lt;br&gt;&lt;br&gt;이를 위해서, Referer 없이 들어오는 없는 페이지에 대한 요청 로그였습니다. Referer가 있을 경우 페이지상의 잘못된 링크로 인한 css, image등일테니 페이지 렌더링에 영향을 줍니다만, referer가 없는 경우 웜 같은 경우가 많을 것이라 판단하여, 이들의 404 not found page 뒷부분에 cron 작업을 실행해야할지 판단합니다.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;크리에이티브 커먼즈 라이센스&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-nd/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&gt;
			&lt;!-- &lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
			&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;&lt;/License&gt;&lt;/rdf:RDF&gt; --&gt;&lt;/div&gt;&lt;/fieldset&gt;</description>
			<category>Textcube</category>
			<author>(최호진)</author>
			<guid>http://coolengineer.com/545</guid>
			<comments>http://coolengineer.com/entry/mms-mobile-blog#entry545comment</comments>
			<pubDate>Tue, 01 Jul 2008 19:54:50 +0900</pubDate>
		</item>
		<item>
			<title>다른 도메인간의 자바스크립트 장난질</title>
			<link>http://coolengineer.com/entry/avoid-cross-domain-1</link>
			<description>브라우저에서 사용되는 자바스크립트는 잘 알고 있다시피, DOM 구조상 document 개체의 domain이 다르면 접근할 수 없는 것으로 알려져 있습니다. (&lt;a href=&quot;http://en.wikipedia.org/wiki/Same_origin_policy&quot;  target=&quot;_blank&quot;&gt;참고&lt;/a&gt;) 그 규칙에 따라서, 브라우저 제작사들은 적절한 접근제한을 가하고 있습니다.&lt;br&gt;&lt;br&gt;몇가지 상황에서 우회로를 뚫어 보겠습니다.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;h3&gt;세션키 전달&lt;/h3&gt;&lt;br&gt;같은 데이터베이스를 사용하지만, TLD나 1차 도메인 명이 다른 두 개의 다른 도메인으로 운영되되는 사이트를 운영할 때는 싱글사인온 같은 문제가 발생합니다. 한가지 팁으로 사용되는 방법으로는 현재의 window.name에 값을 저장하고 도메인이 달라지는 다음 페이지에서 window.name을 조사하여 &lt;a href=&quot;http://www.thomasfrank.se/sessionvars.html&quot;  target=&quot;_blank&quot;&gt;전달하는 방식&lt;/a&gt;을 iframe에 응용하는 것입니다.&lt;br&gt;&lt;br&gt;example.com: main.html&lt;br&gt;&lt;blockquote&gt;&amp;lt;html&amp;gt;&amp;lt;body&amp;gt;&lt;br&gt;&amp;lt;iframe src=&quot;http://example.net/othersite.html&quot; name=&quot;SESS_12345678&quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br&gt;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&lt;/blockquote&gt;example.net: othersite.html&lt;br&gt;&lt;blockquote&gt;&amp;lt;html&amp;gt;&amp;lt;head&amp;gt;&lt;br&gt;&amp;lt;script&amp;gt;if( document.cookie.indexOf( &#039;SESSION&#039; ) &amp;lt; 0 &amp;amp;&amp;amp; window.name.substr(0,4) == &#039;SESS&#039; ){&lt;br&gt;&amp;nbsp; &amp;nbsp; document.cookie = &quot;SESSION=&quot;+window.name.substr(5); &lt;br&gt;&amp;nbsp; &amp;nbsp; document.location.href = document.location.href; /* 다시 로드 */&lt;br&gt;}&lt;br&gt;&amp;lt;/script&amp;gt;&lt;br&gt;&amp;lt;/head&amp;gt;&amp;lt;/html&amp;gt;&lt;/blockquote&gt;&lt;h3&gt;변화하는 값 전달&lt;br&gt;&lt;/h3&gt;위의 예는 페이지가 로드될 때 한 번 일어날 수 있는 상황에서 사용됩니다. 다음 소개하는 예는 IE에서만 동작하는 팁입니다.&lt;br&gt;&lt;br&gt;example.com: main.html&lt;br&gt;&lt;blockquote&gt;&amp;lt;html&amp;gt;&lt;br&gt;&amp;lt;body&amp;gt;&lt;br&gt;&amp;lt;iframe width=&quot;300px&quot; height=&quot;1024px&quot; src=&quot;http://example.net/othersite.html&quot; name=&quot;other&quot;&amp;gt;&amp;lt;/iframe&amp;gt;&lt;br&gt;&amp;lt;script&amp;gt;&lt;br&gt;setInterval( function() {&lt;br&gt;&amp;nbsp; &amp;nbsp; window.frames[&#039;other&#039;].name = (new Date()).getTime();&lt;br&gt;}, 1000 );&lt;br&gt;&amp;lt;/script&amp;gt;&lt;br&gt;&amp;lt;/body&amp;gt;&amp;lt;/html&amp;gt;&lt;/blockquote&gt;example.net: othersite.html&lt;br&gt;&lt;blockquote&gt;&amp;lt;html&amp;gt;&amp;lt;body&amp;gt;&lt;br&gt;&amp;lt;span id=&quot;display&quot;&amp;gt;&amp;lt;/span&amp;gt;&lt;br&gt;&amp;lt;script&amp;gt;&lt;br&gt;setInterval( function() {&lt;br&gt;&amp;nbsp; &amp;nbsp; document.getElementById(&#039;display&#039;).innerHTML = window.name;&lt;br&gt;}, 1000 );&lt;br&gt;&amp;lt;/script&amp;gt;&amp;lt;/body&amp;gt;&lt;br&gt;&amp;lt;/html&amp;gt;&lt;/blockquote&gt;IE에서만 동작하는 이유는 window.frames[&#039;other&#039;].name 속성이 접근가능하기 때문입니다. 분명히, 다른 도메인인데도 불구하고, 해당 윈도우의 속성을 변경할 수 있게 되고, 그것을 통해서 두 도메인간 데이터를 교환할 수 있는 방법이 존재하는 것입니다. IETester를 이용해서 확인한 결과 5.5~8Beta1까지 모두 사용이 가능하더군요.&lt;br&gt;&lt;br&gt;FF, Opera, Safari에서는 위 코드가 모두 접근 오류를 일으키고 실행되지 않습니다.&lt;br&gt;&lt;br&gt;&lt;br&gt;
&lt;fieldset style=&quot;margin:20px 0px 20px 0px;padding:5px;&quot;&gt;&lt;legend&gt;&lt;span&gt;&lt;strong&gt;크리에이티브 커먼즈 라이센스&lt;/strong&gt;&lt;/span&gt;&lt;/legend&gt;&lt;!--Creative Commons License--&gt;&lt;div style=&quot;float: left; width: 88px; margin-top: 3px;&quot;&gt;&lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;&lt;img alt=&quot;Creative Commons License&quot; style=&quot;border-width: 0&quot; src=&quot;http://i.creativecommons.org/l/by-nc-nd/2.0/kr/88x31.png&quot;/&gt;&lt;/a&gt;&lt;/div&gt;&lt;div style=&quot;margin-left: 92px; margin-top: 3px; text-align: justify;&quot;&gt;이 저작물은 &lt;a rel=&quot;license&quot; href=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; target=_blank&gt;크리에이티브 커먼즈 코리아 저작자표시-비영리-변경금지 2.0 대한민국 라이센스&lt;/a&gt;에 따라 이용하실 수 있습니다.
			&lt;!-- Creative Commons License--&gt;
			&lt;!-- &lt;rdf:RDF xmlns=&quot;http://web.resource.org/cc/&quot; xmlns:dc=&quot;http://purl.org/dc/elements/1.1/&quot; xmlns:rdf=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;
			&lt;Work rdf:about=&quot;&quot;&gt;
			&lt;license rdf:resource=&quot;http://creativecommons.org/licenses/by-nc-nd/2.0/kr/&quot; /&gt;
			&lt;/Work&gt;
			&lt;License rdf:about=&quot;http://creativecommons.org/licenses/by-nc-nd/&quot;&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Reproduction&quot;/&gt;
			&lt;permits rdf:resource=&quot;http://web.resource.org/cc/Distribution&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Notice&quot;/&gt;
			&lt;requires rdf:resource=&quot;http://web.resource.org/cc/Attribution&quot;/&gt;&lt;prohibits rdf:resource=&quot;http://web.resource.org/cc/CommercialUse&quot;/&gt;&lt;/License&gt;&lt;/rdf:RDF&gt; --&gt;&lt;/div&gt;&lt;/fieldset&gt;</description>
			<category>장난하기</category>
			<category>SSO</category>
			<category>XSS</category>
			<author>(최호진)</author>
			<guid>http://coolengineer.com/538</guid>
			<comments>http://coolengineer.com/entry/avoid-cross-domain-1#entry538comment</comments>
			<pubDate>Sat, 07 Jun 2008 01:57:37 +0900</pubDate>
		</item>
	</channel>
</rss>
