<?xml version="1.0" encoding="utf-8" ?>
<?xml-stylesheet href="http://rss.egloos.com/style/blog.xsl" type="text/xsl" media="screen"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/">
<channel>
	<title>Refreshing My Brain!!!!!</title>
	<link>http://mirr187.egloos.com</link>
	<description>나태한 두뇌 깨우기 프로젝트~!!!</description>
	<language>ko</language>
	<pubDate>Fri, 06 Nov 2009 06:08:14 GMT</pubDate>
	<generator>Egloos</generator>
	<image>
		<title>Refreshing My Brain!!!!!</title>
		<url>http://pds5.egloos.com/logo/200707/10/98/e0038698.jpg</url>
		<link>http://mirr187.egloos.com</link>
		<width>80</width>
		<height>60</height>
		<description>나태한 두뇌 깨우기 프로젝트~!!!</description>
	</image>
  	<item>
		<title><![CDATA[ ioctl 과 FIONREAD ]]> </title>
		<link>http://mirr187.egloos.com/2470950</link>
		<guid>http://mirr187.egloos.com/2470950</guid>
		<description>
			<![CDATA[ 
  <p>site에 나가 있는 제품중에 문제가 있다고 하여 테스트하다가 궁금해서 추가해보았던 코드...</p><p><br></p><p>A side에서 packet을 막~~~ 던진다.</p><p>B side에서는 그것을 받아서 처리한다... 고 할때...</p><p><br></p><p>대략... A 사이드에서 1, 2, 3, 4를 던졌다... B사이드에서 1, 2까지 읽고 3, 4는 recv buffer에 남아있다는걸 ioctl 을 이용해서 확인</p><p><br></p><p>그렇다면.. A사이드에서 위의 경우에 강제로 동작중인 app를 종료 시킬 경우 B에서는 과연 recv buffer에 남아있는 내용을 감지할 수 있을까?  해서 확인중...</p><p><br></p><p>ret=ioctl(psd, FIONREAD, &amp;nSize);</p><p><br></p><p>env:</p><p>non-blocking bsd socket, linux-64bit....</p>			 ]]> 
		</description>
		<category>IT Life</category>

		<comments>http://mirr187.egloos.com/2470950#comments</comments>
		<pubDate>Fri, 06 Nov 2009 06:08:14 GMT</pubDate>
		<dc:creator>아비숑</dc:creator>
	</item>
	<item>
		<title><![CDATA[ process name으로 동작중인지 확인하기~ ]]> </title>
		<link>http://mirr187.egloos.com/2470947</link>
		<guid>http://mirr187.egloos.com/2470947</guid>
		<description>
			<![CDATA[ 
  <p>최근 작업중인 부분중에 필요로 해서 만든 function... -_-;;</p><p><br></p><p>argument로 process_name을 받아서 </p><p>/proc의 하위 디렉토리를 하나씩 읽어가면서 /proc/pid/cmdline을 읽어서 입력 받은 process name이 있는지 확인하는 func.</p><p><br></p><p>특이점이라면... /proc/pid/cmdline에 process 기동시 주었던 argument 관련된 내용들이 중간에 NULL 문자로 채워져 있어서...</p><p><br></p><p>cmdline open시 'b' 옵션 (binary 옵션)을 주어서 읽어야 argument까지 처리 가능하다는... -_-;;</p><p><br></p><p>cat /proc/pid/cmdline시 정상적으로 보여도 read 하게 되는 경우 잘린다는 문제점이 있더랍니다..ㅋ</p><p><br></p><p>ex) </p><p>cat -&gt; /usr/java/j2sdk1.4.2_12/bin/javacom.xxx.xxx.service</p><p>vi   -&gt; /usr/java/j2sdk1.4.2_12/bin/java^@com.xxx.xxx.service^@</p><p><br></p><p>위와 같기 때문에 feof로 화일의 끝까지 읽어줘야 처리가 가능합니다... ㅠㅠ</p><p><br></p><p>{</p><p>#include &lt;stdio.h&gt;<br>#include &lt;stdlib.h&gt;<br>#include &lt;string.h&gt;<br>#include &lt;unistd.h&gt;<br>#include &lt;dirent.h&gt;<br>#include &lt;errno.h&gt;<br><br>#include &lt;sys/types.h&gt;<br>#include &lt;sys/stat.h&gt;<br>#include &lt;fcntl.h&gt;<br><br>//#include &lt;linux/unistd.h&gt;<br><br>int fndPsRunning(char *process)<br>{<br>  char pname[64], buf[512], *ptr, *peek;<br>  struct dirent *dInfo;<br>  DIR *dp;<br><br>  int fd;<br>  FILE *fp;<br><br>  int len;<br><br><br>  if( (dp = opendir("/proc")) == (DIR *)NULL)<br>  {<br>     printf("opendir failure: %s\n", strerror(errno));<br>     return -1;<br>  }<br><br>  while(1)<br>  {<br>     /* read all dirs.. /proc   */<br>     dInfo = readdir(dp);<br><br>     if(dInfo == (struct dirent *)NULL) break;<br><br>     if(atoi(dInfo-&gt;d_name) == 0) continue;<br><br>     /* open /proc/dir_name/stat        */<br>     memset(pname, 0x00, sizeof(pname));<br>     sprintf(pname, "/proc/%s/cmdline", dInfo-&gt;d_name);<br><br>     fp = fopen(pname, "rb");<br><br>     len = 0;<br><br>     while(!feof(fp))<br>      buf[len++] = fgetc(fp);<br><br>     if(strstr(buf, process) != (char *)NULL) return 1;<br><br>     if(len != strlen(buf))<br>     {<br>      char *mptr;<br><br>      mptr = &amp;buf[strlen(buf) + 1];<br><br>      if(strstr(mptr, process) != (char *)NULL) return 1;<br>     }<br>  }<br>  close(fd);<br>  closedir(dp);<br>return 0;<br></p><p>}</p>			 ]]> 
		</description>
		<category>IT Life</category>

		<comments>http://mirr187.egloos.com/2470947#comments</comments>
		<pubDate>Fri, 06 Nov 2009 05:56:10 GMT</pubDate>
		<dc:creator>아비숑</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 시사IN109호 리뷰... (너무 늦었나..ㅠㅠ) ]]> </title>
		<link>http://mirr187.egloos.com/2470937</link>
		<guid>http://mirr187.egloos.com/2470937</guid>
		<description>
			<![CDATA[ 
  <p>시사인 리뷰어에 선정되어 받은지는 좀 된거 같은데... 최근 몇주간 계속해서 업무가 미칠듯하게 쏟아져서 이제서야...ㅋ</p><p><br></p><p>항상 받아볼때마다 느끼지만.. 세상 돌아가는 부분에 대해서 많은 생각들을 갖게 해준다...</p><p><br></p><p>그리고.. 미처 생각지도 못했던 사회문제에 대해 생각할 수 있게 해주는 잡지가 아닌가 한다...</p><p><br></p><p>이번호에서 가장 기대가 컸던 부분은 100분 토론과 손석희 교수의 하차...</p><p><br></p><p>손석희 교수의 입장 표명과 관련해서 인터뷰를 해서 100분 토론을 진행하면서 느낀점.. 아쉬운점... 등을 같이 실어주었으면.. 하는 바램이 있었던지라 짧은 내용에 아쉬움이 들 수 밖에 없었다..</p><p><br></p><p>표제로 실린 '나는 가난하다 고로 자퇴한다'를 보면서 의무교육 과정을 졸업한지 어언 10여년이 넘어버린 지금에.. 너무나 교육 과정, 환경에 대해 외면하고 살아가고 있지 않나.. 분명 훗날 내아이가 겪을 일들일수도 있는데 말이다...</p><p><br></p><p>2009년 11월 6일 대정부 질문을 우연찮게 보면서... 현 정부의 자위식 법치주의의 끝이 어딘가.. 하는 생각을 하지 않을 수 없었다..</p><p><br></p><p>앞으로 남은 기간동안 우리 나라의 민주, 법치, 경제, 인권, 자유... 등등... 그 많은 것들이 얼마나 더 뒤로 가고 썩어가야할지 씁쓸한 기분을 지울수가 없었다...</p><p><br></p><br />
<a href="http://valley.egloos.com/review/item.php?id=10607"><img src="http://md.egloos.com/img/review/lets_banner.gif" border="0" alt="렛츠리뷰" /></a><br/><br/>tag : <a href="/tag/렛츠리뷰" rel="tag">렛츠리뷰</a>,&nbsp;<a href="/tag/시사IN" rel="tag">시사IN</a>			 ]]> 
		</description>
		<category>렛츠리뷰</category>
		<category>시사IN</category>

		<comments>http://mirr187.egloos.com/2470937#comments</comments>
		<pubDate>Fri, 06 Nov 2009 05:46:45 GMT</pubDate>
		<dc:creator>아비숑</dc:creator>
	</item>
	<item>
		<title><![CDATA[ thread programming ]]> </title>
		<link>http://mirr187.egloos.com/2461493</link>
		<guid>http://mirr187.egloos.com/2461493</guid>
		<description>
			<![CDATA[ 
  <p>posix thread 와 관련하여 signal handling을 해야하는 일이 있어서... </p><p>(뭐.. 정확히는 data handling하는 부분에 있어서 thread로 동작시 강제 종료할 경우 data가 틀어지는 문제가 있어서... 흑..ㅠㅠ)</p><p><br></p><p>기존의 sigprocmask대신에 pthread_sigmask를 사용하는데.. 새로 알게 된 사실들....</p><p><br></p><p>1. thread 생성 이전에 signal 을 설정해줘야 한다...</p><p><br></p><p>아래의 sample code에서와 같이 SIG_BLOCK을 thread 생성전에 해줘야 thread에서 해당 signal 이 block된다...</p><p>심지어.. thread 생성전에 signal을 설정해줘도.. SIG_UNBLOCK을 해두면.. 무효.. -_-</p><p><br></p><p>2. pthread_sigmask라고 해도.. thread별로 signal을 받는게 아니므로.. 큰 의미는 모르겠음.. -_-;;</p><p><br></p><p>아래 샘플코드는 테스트한 내용을 전부 해둔거라 지저분하지만.. 뭐.. 언젠가 또 볼일이 있을지도...ㅋ</p><p><br></p><p>결론: thread로 바꿀시에는 심각하게 signal이라던가.. variable등을 심각하게 고려해 concurrency control에 문제가 없는지 다시 한번 고민해볼지어다..ㅠㅠ</p><p><br></p><p>&lt;1&gt;</p><p><br></p><p>#include &lt;stdio.h&gt;<br>#include &lt;signal.h&gt;<br>#include &lt;pthread.h&gt;<br><br>#include &lt;time.h&gt;<br><br>sigset_t mdgBset, mdgOset;<br><br>void *sub(void)<br>{<br>        char tmp[1024];<br><br>        sigset_t newmask;<br>        struct timespec st;<br><br>        sigemptyset(&amp;newmask);<br>        sigaddset(&amp;newmask, SIGINT);<br>#if 1<br>        pthread_sigmask(SIG_UNBLOCK, &amp;newmask, 0);<br>#if 0<br>        if(pthread_sigmask(SIG_BLOCK, &amp;mdgBset, 0) != 0)<br>                fprintf(stderr, "[%s: %d]\n", __FILE__, __LINE__);<br>#endif<br>        printf("yo man~!\n");<br>        fgets(tmp, sizeof(tmp), stdin);<br><br>        pthread_sigmask(SIG_BLOCK, &amp;newmask, 0);<br><br>        st.tv_sec = 3;<br>        st.tv_nsec = 0;<br>        printf("end man~!\n");<br>        fgets(tmp, sizeof(tmp), stdin);<br>        //nanosleep(&amp;st, NULL);<br>#if 0<br>        if(pthread_sigmask(SIG_SETMASK, &amp;mdgOset, 0) != 0)<br>                fprintf(stderr, "[%s: %d]\n", __FILE__, __LINE__);<br>#endif<br>        printf("done man~!\n");<br>        fgets(tmp, sizeof(tmp), stdin);<br>        pthread_sigmask(SIG_UNBLOCK, &amp;newmask, 0);<br>        printf("restart man~!\n");<br>        fgets(tmp, sizeof(tmp), stdin);<br>#else<br>        sigprocmask(SIG_UNBLOCK, &amp;newmask, 0);<br>#if 0<br>        if(pthread_sigmask(SIG_BLOCK, &amp;mdgBset, 0) != 0)<br>                fprintf(stderr, "[%s: %d]\n", __FILE__, __LINE__);<br>#endif<br>        printf("yo man~!\n");<br>        fgets(tmp, sizeof(tmp), stdin);<br><br>        sigprocmask(SIG_BLOCK, &amp;newmask, 0);<br>        printf("end man~!\n");<br>        fgets(tmp, sizeof(tmp), stdin);<br>#if 0<br>        if(pthread_sigmask(SIG_SETMASK, &amp;mdgOset, 0) != 0)<br>                fprintf(stderr, "[%s: %d]\n", __FILE__, __LINE__);<br>#endif<br>        printf("done man~!\n");<br>        fgets(tmp, sizeof(tmp), stdin);<br>        sigprocmask(SIG_UNBLOCK, &amp;newmask, 0);<br>        printf("restart man~!\n");<br>        fgets(tmp, sizeof(tmp), stdin);<br><br>#endif<br>}<br><br>void sub_set()<br>{<br>        sigemptyset(&amp;mdgBset);<br>        sigaddset(&amp;mdgBset, SIGINT);<br>#if 1<br>        if(pthread_sigmask(SIG_SETMASK, &amp;mdgBset, &amp;mdgOset) != 0)<br>        {<br>                fprintf(stderr, "[%s: %d]\n", __FILE__, __LINE__);<br>        }<br>        if(pthread_sigmask(SIG_SETMASK, &amp;mdgOset, 0) != 0)<br>        {<br>                fprintf(stderr, "[%s: %d]\n", __FILE__, __LINE__);<br>        }<br>#if 1<br>        if(pthread_sigmask(SIG_BLOCK, &amp;mdgBset, 0) != 0)<br>                fprintf(stderr, "[%s: %d]\n", __FILE__, __LINE__);<br>//      pthread_sigmask(SIG_UNBLOCK, &amp;mdgBset, 0);<br>#endif<br>#else<br>        sigprocmask(SIG_SETMASK, &amp;mdgBset, &amp;mdgOset);<br>        sigprocmask(SIG_SETMASK, &amp;mdgOset, NULL);<br>        sigprocmask(SIG_BLOCK, &amp;mdgBset, NULL);<br>//      sigprocmask(SIG_SETMASK, &amp;mdgOset, NULL);<br>#endif<br>}<br><br>int main(int argc, char* argv[])<br>{<br>        pthread_t tid[4];<br>        int iIdx;<br><br>        sub_set();<br>//      pthread_sigmask(SIG_UNBLOCK, &amp;mdgBset, 0);<br>#if 1<br>        for(iIdx = 0; iIdx &lt; 1; iIdx++)<br>                pthread_create(&amp;tid[iIdx], NULL, sub, NULL);<br><br>        for(iIdx = 0; iIdx &lt; 1; iIdx++)<br>                pthread_join(tid[iIdx], NULL);<br>#else<br>        sub();<br>#endif<br>}<br><br></p><p><br></p><p><br></p>			 ]]> 
		</description>
		<category>IT Life</category>

		<comments>http://mirr187.egloos.com/2461493#comments</comments>
		<pubDate>Thu, 22 Oct 2009 09:00:57 GMT</pubDate>
		<dc:creator>아비숑</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 예의 없는 것들!! ]]> </title>
		<link>http://mirr187.egloos.com/2452017</link>
		<guid>http://mirr187.egloos.com/2452017</guid>
		<description>
			<![CDATA[ 
  최근에 회사에 사람이 추가적으로 필요하여 구인광고를 내고 면접을 진행중입니다..<br><br>뭐.. 작고 이름 없는 회사에 현재까지.. 대략 20여분이 지원해주셔서 감사하게 생각하고 있었는데..<br><br>며칠전에 기분이 그다지 좋지 않은 일을 겪게 되었네요.. -_-;<br><br>면접 당일날 펑크내기.. 그리고 전화를 안 받기라니.. 이 무슨 예의 없는 행동인지...<br><br>이력서를 클릭 한번에 보낼 수 있는 세상이어서 그냥 보내보는 건지.. 과연 몇군데에서 연락이 올지 확인해보는겁니까?<br><br>개인적인 사정이 생겼다면 전화를 받거나, 하거나 해서 통보라도 해줘야하는게 기본적인 매너가 아닐지 싶군요...<br><br>추가로 이력서상에 이런식으로 기재하고 연락 주시는 분들은 사실 이해가 가지 않습니다..<br><br>개발자를 모집하는데 모집분야가 간략하게 적자면<br><br><strong>Database 개발 (Unix/Linux C)<br>UI 개발 (JAVA)</strong><br><br>인데, 이력서 제목에 "<strong>RFID에 특화된 인재 XXX입니다</strong>.", "<strong>유지보수에 자신있습니다</strong>"로 보내시는 분들은 무슨 생각으로 보내신건지..<br><br>자신이 일하게 될 회사가 어떤 곳인지 알아는 보고 연락은 하는건지.. 거참... <br><br>면접관으로 이번이 2번째인데.. 지난번에도 그렇고.. 이번에도 그렇고.. 사람 뽑기 참 힘들다는 생각이 들어서 끄적여 봅니다.. -_-;<br><br>뻘소리. 개발자로 지원하면서 기본적인 지식은 어느정도 가져가는게 좋습니다..<br>&nbsp;&nbsp;&nbsp; C개발자라면 포인터의 활용이라던가, Call by reference, Call by value 의 차이정도는 알고 가셔야 합니다.<br>&nbsp;&nbsp;&nbsp; Java 개발자라면 interface와 abstract class의 차이 정도는 알아야 하지 않을까요??			 ]]> 
		</description>
		<category>IT Life</category>

		<comments>http://mirr187.egloos.com/2452017#comments</comments>
		<pubDate>Wed, 07 Oct 2009 00:30:23 GMT</pubDate>
		<dc:creator>아비숑</dc:creator>
	</item>
	<item>
		<title><![CDATA[ memory leak(메모리 누수) 관찰기..???? ]]> </title>
		<link>http://mirr187.egloos.com/2440057</link>
		<guid>http://mirr187.egloos.com/2440057</guid>
		<description>
			<![CDATA[ 
  <p>최근에 진행중인 프로젝트에서 갑자기 가입자가 날라가는 크리티컬한 버그가 발견.. -_-;;</p><p><br></p><p>대충 원인을 파악해보니 해당 프로세스가 메모리가 계속적으로 증가하다가 4일정도 돌리면 메모리 부족으로 죽으면서 가입자가 유실되는 듯한.. 쿨럭..;;</p><p><br></p><p>또 머리 아픈 memory leak을 잡아야 하는데... top 으로 계속 보는것도 좋지만 다음과 같이 script를 하나 짜서 정말로 heap 영역이 증가하는지 확인하는것도 하나의 방법~</p><p><br></p><p><strong><font color="#000066">while true </font></strong></p><p><strong><font color="#000066">do ps -ef | grep a.out | sed '/grep/d' | awk '{print $2}' | while read pid</font></strong></p><p><strong><font color="#000066">do pmap $pid | grep total</font></strong></p><p><strong><font color="#000066">done </font></strong></p><p><strong><font color="#000066">sleep 1</font></strong></p><p><strong><font color="#000066">done</font></strong></p><p><br></p><p>뭐.. 별거 아닌 스크립트지만 나름 유용하게 사용 가능하며 응용하면 잘 쓸 수 있지 않을까? </p><p><br></p><p>1초 주기로 계속해서 pmap의 total 값의 증가를 지켜보는건데 이렇게 해서 확인 결과 정말로 늘어나는걸 확인</p><p><br></p><p>어떤게 원인일까 추적중에 SQL Statement Handle을 Alloc하고 Free하지 않는 코드가 있음을 확인하여 수정하고...</p><p><br></p><p>오늘로 3일째 관찰중..-_-;;</p><p><br></p><p>아직까지는 메모리 증가하는건 없지만, 정말로 memory leak으로 인해서 날라가는지 확인하기 위해 지속적으로 관찰중... -0-</p><p><br></p><p>ps. 원래는 valgrind 신봉자이지만.. -_-;; </p><p>shell script + perl + DBI + DBD + unixODBC + 자체 ODBC가 엮여 있다보니 valgrind로 돌려도 별 그렇다할게 못 나와서 뻘짓중.. ㅠㅠ</p><p><br></p><p>ps2. valgrind 는 memory leak을 확인하는데에 있어서는 킹왕짱~!</p><p><strong><font color="#330000">valgrind -v --trace-children=yes --leak-check=full --show-reachable=yes process_name</font></strong></p>			 ]]> 
		</description>
		<category>IT Life</category>

		<comments>http://mirr187.egloos.com/2440057#comments</comments>
		<pubDate>Fri, 18 Sep 2009 00:32:34 GMT</pubDate>
		<dc:creator>아비숑</dc:creator>
	</item>
	<item>
		<title><![CDATA[ Outlook Express widows live mail 관련 에러 (0x800CCC33) ]]> </title>
		<link>http://mirr187.egloos.com/2430350</link>
		<guid>http://mirr187.egloos.com/2430350</guid>
		<description>
			<![CDATA[ 
  <p>어제부터 hotmail 계정의 메일을 가져오지 못하길래 검색해봤더니..<br><br>9월1일을 기점으로 해서 msn에서 대용량화시킨 winsows live mail의 mail protocol을 block 시켜버렸더군요... 쩝..<br><a href="http://www.neowin.net/news/main/09/06/04/microsoft-to-kill-hotmail-via-outlook-express-on-september-1">http://www.neowin.net/news/main/09/06/04/microsoft-to-kill-hotmail-via-outlook-express-on-september-1</a><br><br>그래서 찾다보니 OE6 사용자의 경우 2003이나 2007로 업그레이드 하던가 pop3로 해서 받아오는 방법이 있어 올립니다.<br><a href="http://windowslivehelp.com/solutions/settings/archive/2009/02/16/how-to-add-your-e-mail-account-to-microsoft-outlook.aspx">http://windowslivehelp.com/solutions/settings/archive/2009/02/16/how-to-add-your-e-mail-account-to-microsoft-outlook.aspx</a><br><br>2003이나 2007로 업그레이드 할 경우 Microsoft Office Outlook Connector 라는 프로그램을 제공한다는데.. 사용하는게 OE6인지라.. -_-;;<br><br>pop3로 변경을 했습니다... 단점이라면.. folder 설정을 읽어오지 못한다는거~<br>2002이전 버전 사용자의 경우 업그레이드하고 싶지 않다면 아래와 같이 진행하면 됩니다.<br><br>1. 도구-&gt;계정 추가<br>2. Server Type을 POP3로<br>3. 개인 정보를 입력하고<br>4. POP3: pop3.live.com<br>&nbsp;&nbsp; SMTP:smtp.live.com<br>5. 보내는 메일서버에 인증 필요를 체크<br>6. 고급탭에서 <br>&nbsp;&nbsp; SMTP의 포트번호 25 or 587로 설정 및 SSL 체크<br>&nbsp;&nbsp; POP3의 포트번호 995로 설정 및 SSL 체크<br>7. 서버에 복사본을 남기고 싶은지의 여부를 확인<br><br>이정도가 되겠습니다... 하긴 했는데.. 왠지 모를 짜증이 밀려오는군요.. -_-;;<br><br><br><br><br></p>			 ]]> 
		</description>

		<comments>http://mirr187.egloos.com/2430350#comments</comments>
		<pubDate>Thu, 03 Sep 2009 01:42:33 GMT</pubDate>
		<dc:creator>아비숑</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 역지 사지의 정신... ]]> </title>
		<link>http://mirr187.egloos.com/2381806</link>
		<guid>http://mirr187.egloos.com/2381806</guid>
		<description>
			<![CDATA[ 
  <a title="" href="http://searching.egloos.com/2355521">짜장면과 개발자</a><br><br>며칠만에 집에 일찍 와서 밸리를 돌다가 발견한 재미있는 제목에 클릭..<br>글 읽고 광분 모드로 작성.. 할려다가 필력이 딸리는 관계로 잠시 생각 좀 정리하고 입장 바꿔서 생각해봤습니다.<br><br>짜장면 주문이 들어왔다<br><br>SItuation 1. <br>손님 왈. 여기 물좀 주세요<br>&nbsp;-&gt; 죄송하지만.. 셀프입니다<br>옆가게에서는 가져다 주던데요??<br><br>Situation 2. <br>짜장면을 줬다..<br><br>손님 왈. 여기에&nbsp;이건 뭔가요?<br>&nbsp;-&gt; 다진 양파입니다.<br>전 양파 알레르기가 있는데.. 이거 좀 빼줘요 아.. 그리고 고기좀 더 넣어줘요<br><br>Situation 3. <br>양파를 제거하고 다시 줬다..<br><br>손님 왈, 이거 음식 나오는데 왜 이렇게 오래 걸려요!!<br>-&gt; 네가 아까... -_-+<br><br>Situation 4. <br>다시 줬다.<br><br>주머니에서 뭔가를 꺼내어 자장면에 부은다...<br>&nbsp;<br>손님 왈, 이거 맛이 왜 이래요?<br>&nbsp;-&gt; 아까 보니까..&nbsp;뭘 부으시던데... 그게 뭔가요...<br><br>우리 집안 특제 소스에요,&nbsp;다른 요리들은 넣어먹어도 괜찮은데 이건 왜 그래요!!<br>&nbsp;-&gt; 아니.. 그게.. <br><br>Situation 5. <br>손님 왈, 이거 도저히 못 먹겠어요... 그냥 짬뽕으로 줘요<br>&nbsp;-&gt; 아니.. 손님 그러면 진작에 말씀을...<br><br>Situation 6.<br>&nbsp;손님 왈, 아까 그 짜장면 만드는 법좀 알려주세요<br>&nbsp;-&gt; 그건.. 저희 가게 비법이라...<br><br>아.. 적고 보니&nbsp;손님은 전부 미친넘이 되어버리는.. -_-;;<br><br><br>위의 상황은 아래와 같은 경우를 생각하고 적어보았습니다...<br><br><br>1 - "그 A사는 이런 툴들도 무료로 제공하던데, 그런거 없습니까?" <br><br>동종업계의 타업체와 비교하고 너무나 당연하게 요구한다.&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br>현재 사귀는 애인한테 전에 사귀는 애인은 어쩌구.. 저쩌구.. 싸닥션이다.. -_-<br><br>2 - "A기능은 추가로 있어야 할거 같고 B기능은 필요 없을거 같은데요?"<br><br>필요한거, 불필요한거는 미리 얘기해줘야 하는게 당연한거라 생각한다. <br>자신이 원하는게 일반적이지 않다는 것을 인지하지 못한채 나중에 요구하는거는 잘못된게 당연한거다.<br><br>3 - 계약시 요구하지 않았던 기능을 나중에 넣어달라고 요구한 이후에 기간이 늦어지는걸 뭐라고 하는건 뭐라고 할까...안드로메다.. -_-<br><br>4 - 프로그램 시작시 읽어들여야 하는 파일이 있는데 이걸 지워버리고 왜 동작이 안되냐고 묻는다... 이건... 몰상식한 짓이다...<br><br>5 - 계약시 이야기했던것을 나중에 갈아엎어달라고 요구..... 이미 할말이 없다...<br><br>6 - 프로그램의 소스 내지는 내부에서 만든 시뮬레이터등을 당연하게 요구... 제발... 계약서에 명시된대로만 해라...<br><br><br>예전에 미국에서 슈퍼맨 망토를 팔면서 써 붙인 경고문이 생각나는군요.. <br>"주의: 본 망토를 걸치고 날려고 하지 마십시오"<br><br>ps. 니오님을 깔려고 작성한 것은 아닙니다...<br>다만.. 바라보는 쪽이 어디인지.. 어떤 시각인지에 따라 다른 경우도 나올수가 있지 않겠나 하는 생각으로 작성했습니다...<br>			 ]]> 
		</description>

		<comments>http://mirr187.egloos.com/2381806#comments</comments>
		<pubDate>Fri, 26 Jun 2009 11:55:17 GMT</pubDate>
		<dc:creator>아비숑</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 정의... 언제까지 잊고 살아야 하나.. ]]> </title>
		<link>http://mirr187.egloos.com/2375414</link>
		<guid>http://mirr187.egloos.com/2375414</guid>
		<description>
			<![CDATA[ 
  <p>딴지일보 한동안 안 본지 오래됐는데.. 많이 생각하게 되는 내용입니다..</p><p>&nbsp;</p><p>정의... 올바르고 바른 생각, 도리... 언제까지 잊고 살아야 하나..</p><p>&nbsp;</p><p>다들 한번씩 생각해보았으면 좋겠군요...</p><p>&nbsp;<br><a href="http://www.ddanzi.com/articles/article_view.asp?installment_id=259&amp;article_id=4444&amp;board_category_id="><strong>딴지일보...</strong></a>&nbsp; <br><br><a href="http://www.youtube.com/watch?v=8ka_9dWUvWA&amp;feature=player_embedded"><strong>과거의 언론조작</strong><br><br></a>ps. 고등학교때 국어 선생님이셨던 분이 이런 이야기를 해주셨습니다..<br>"투표란... 나쁜 놈들 중에서 그나마 덜 나쁜 놈들을 뽑아야 하는 것이다.."<br>공교육을 담당하시는 분들께서도 학생들이 "이익" 을 보면서 살아가는게 아닌 "정의"를 보면서 살아갈 수 있게 교육을 해주셨으면<br>하는 바램입니다.... <br><br>ps2. 사교육도 나쁘지는 않군요.. -_-;;<a href="http://www.youtube.com/watch?v=8ka_9dWUvWA&amp;feature=player_embedded"></p></a>			 ]]> 
		</description>

		<comments>http://mirr187.egloos.com/2375414#comments</comments>
		<pubDate>Thu, 18 Jun 2009 07:37:58 GMT</pubDate>
		<dc:creator>아비숑</dc:creator>
	</item>
	<item>
		<title><![CDATA[ 지름 전문 잡지 Stuff 5월호 리뷰 ]]> </title>
		<link>http://mirr187.egloos.com/2348443</link>
		<guid>http://mirr187.egloos.com/2348443</guid>
		<description>
			<![CDATA[ 
  <p>이게 얼마만에 당첨된 stuff인가...ㅠㅠ</p><p>표지만 보면 Maxim이라던가... 하는 남성 잡지의 느낌이 물씬 풍긴다. 거기다.. 이번에는 핑크빛~!!! 상큼한 여인네가 한손에 "COWON 99"를 들고 표지에서부터 웃고 있지 아니한가... </p><p></p><p>오랜만에 받아드는 스터프를 보다보니 뭔가가 눈에 거슬린다... 뭔가 했더니 HOT Stuff 상단의 광고들...</p><p>전에 볼때는 몰랐지만.. 다시 보니 느껴지는 불편함이랄까? </p><p></p><p>제품들이 종류별(?)로 분류되어 있지 않고 자전거, 전자 제품, 오토바이, 자전거, 영화, 전자제품, 영화...</p><p>차례대로 모아놓을수는 없었을까? 아니면 어떤 이유가 있어서 저렇게 해놓은걸까... </p><p></p><p>Stuff에 주로 실리는 내용들을 간략하게</p><p></p><p>'전자 제품' '비전자제품' 'Culture' 'Fashion' 'Living' 과 같이 정리해 올리면 더 좋지 않을까 하는 아쉬움이 든다..</p><p></p><p>뭐... 이번호에도 장난감만 따로 다루고, 자전거만 모아놓기도 했지만 그런 섹션을 할당했으면 그 센션과 인접한 위치에 비슷한 제품군을 실어주면 어떨까 하는 바램이다..</p><p></p><p>이런 저런 불평을 늘어놓기는 했지만.. 그래도 지름신 강림에는 STUFF가 최고다~!!</p><br />
<a href="http://valley.egloos.com/review/item.php?id=10403"><img src="http://md.egloos.com/img/review/lets_banner.gif" border="0" alt="렛츠리뷰" /></a><br/><br/>tag : <a href="/tag/렛츠리뷰" rel="tag">렛츠리뷰</a>,&nbsp;<a href="/tag/스터프" rel="tag">스터프</a>			 ]]> 
		</description>
		<category>렛츠리뷰</category>
		<category>스터프</category>

		<comments>http://mirr187.egloos.com/2348443#comments</comments>
		<pubDate>Fri, 15 May 2009 03:47:41 GMT</pubDate>
		<dc:creator>아비숑</dc:creator>
	</item>
</channel>
</rss>
