Archive for October, 2007

정태영

gaussian blur 는 간단하게 아래와 같은 gaussian function 을 이미지에 convolution 해주는 것을 통해 쉽게 구현할 수 있다.

시그마값을 0, 2, 4 로 변경시켜가며 가우시안 블러를 적용해보면 아래와 같은 결과를 얻을 수 있음.

코드:
http://trac.unfix.net/browser/snippet/gaussian_blur

p.s) 이걸 이용해서 구현해보려는 게 있는데, 막상 gaussian blur 와 difference of gaussian 모두 구현했지만 이상하게 관련된 실험은 손에 잡히질 않고 있다. -_-; 아악;;

정태영

요 근래 외계어 수식들로 블로그를 알아볼 수 없게 만들곤 했었는데, 그런 수식을 쉽게 만들어낼 수 있는 웹기반 무료 에디터를 하나 소개해보려 합니다.

SITMO 가 바로 이 녀석이고, 아래와 같이 자신의 홈페이지에 STIMO 를 삽입하는 것도 가능합니다.

DHTML 입력기이기 때문에 클릭을 통해 수식을 만들어내는 것도 가능합니다만 단축 아이콘으로 등록되어 있지 않은 수식들은 직접 손으로 타이핑해야 합니다.

\begin {bmatrix} a & b & c \\ d & e & f \end{bmatrix}

위와 같이 간단한 형식으로 쉽게 매트릭스를 그릴 수도 있습니다. latex 의 수식 문법을 잘 모르신다면 아래 페이지를 참고하심 될 것 같습니다.

http://www.artofproblemsolving.com/LaTeX/AoPS_L_GuideCommands.php

정태영

요 며칠동안 현재 인터넷 뱅킹과 관련된 이슈들을 정리해서 하나의 포스트를 작성하고 있다.

현재 문제점은 보안 채널을 제공하는데 INISafeWeb/XecureWeb 등의 activeX[1] 를 사용한다는 것과 공인인증서(비밀키)를 이용한 서명을 activeX 로만 구현해 놓았다는 것이 아닐까 싶다.

https 를 통해 128bit secure channel 을 구성할 경우 지저분한 프로그램이 깔릴 필요가 없고, 현재 사용 중인 대부분의 브라우져에서 웹페이지를 안전하게 접근하는 것이 가능해진다. 또한 보안채널을 이용할 때와 이용하지 않을 때 모두 동일한 방법을 통해 웹페이지를 코딩하는 것이 가능하기 때문에 웹 개발자/코더 입장에서도 훨씬 편하게 작업할 수 있을 것이다. 게다가 비싼 플러그인도 라이센스할 필요가 없으므로 원가 절감 효과까지 누릴 수 있다.

공인인증서를 이용한 서명의 경우의 경우는 여전히 activeX/plugin 인터페이스가 필요하겠지만 ‘공인인증서를 사용한 전자서명 인터페이스(api)’ 를 표준화 하게 되면, 공인인증서를 사용하는 사이트들을 이용하게 되더라도 각각에 대해 다른 플러그인을 설치할 필요가 없기 때문에 사용자 입장에서 더욱 편리하게 이용할 수 있을 것이다. 또한 플러그인이 할 일은 대폭 줄어들어 비밀키를 읽어 전자서명 하는 용도 정도로만 사용될 뿐이므로 구현 또한 쉬워질 것이라고 생각된다.

SEED 등 전자 서명에 필요한 모든 알고리즘은 openSSL 에 이미 구현되어 있고, 이를 이용하면 UI 정도의 작업만이 필요하게 된다. API 가 표준화 되고, 구현체가 opensource 로도 나오게 되면 멀티 플랫폼을 지원하는 건 시간 문제일 뿐이다.

개발자의 생산성을 비약적으로 향상시킬 방안이 있어도, 그 기술을 쓰는 개발자의 단가가 비싸다는 이유로 기각되곤 한다. 이는 혁신의 상실일뿐더러 기회의 상실이다. ‘보이지 않는 손’의 위업이라 해버리면 그만이지만, 정책이란 이러한 상실을 지키기 위한 것 아니었던가.

from: zdnet - 대한민국 개발자의 우울, 자기 책임론에서 구조 개혁론으로
http://www.zdnet.co.kr/itbiz/column…goodhyun/0,39030292,39161841,00.htm

공인인증서를 이용하기 위한 API 표준화, 그리고 보안 채널을 제공하기 위한 방법으로 https 를 이용하도록 마이그레이션 하는 것 이 두 가지 모두 생산성을 비약적으로 향상시킬 수 있는 방법이고, 더불어 최소한의 비용으로 드라마틱한 접근성 향상을 가져올 수 있는 방법이 될 것이다.

언제까지 이런 ‘혁신의 상실’ 을 반복하고만 있을 것인지 이를 보고 있는 난 너무나 답답하다.

[1] activeX 는 Microsoft Internet Explorer 를 확장시키기 위한 기술로 특정 프로그램을 설치한 뒤 jscript 를 통해 그 프로그램을 조작할 수 있는 방법을 제공하게 된다. 단 Microsoft Windows 에서만 사용이 가능하다.

정태영

sql injection 을 피하기 위해 single quote 를 escape 시켜주는 코드를 작성해야할 필요가 있었는데, 매번 하나하나에 대해 mysql_real_escape_string 을 호출해주는 건 너무나도 번거로웠다. 뭔가 간단하게 처리할 방법이 없을까 하고 찾아봤더니 왠걸! array_map 이라는 마법의 함수를 발견할 수 있었다.

function stripslashes_deep($var){ $var = is_array($var)? array_map('stripslashes_deep', $var) : stripslashes($var);   return $var; }   function mysql_real_escape_string_deep($var){ $var = is_array($var)? array_map('mysql_real_escape_string_deep', $var) : mysql_real_escape_string($var);   return $var; }   if( get_magic_quotes_gpc() ){ if( is_array($_POST) ) $_POST = array_map( 'stripslashes_deep', $_POST ); if( is_array($_GET) ) $_GET = array_map( 'stripslashes_deep', $_GET ); }   if( is_array($_POST) ) $_POST = array_map( 'mysql_real_escape_string_deep', $_POST ); if( is_array($_GET) ) $_GET = array_map( 'mysql_real_escape_string_deep', $_GET);

common function 들을 정의해놓은 파일 맨 아래 저 코드를 삽입해버리니 sql injection 따위 이제 두려워할 필요가 없어졌다. 움하하핫!!

p.s) 그냥 array_map 에 stripslashes 나 mysql_real_escape_string 을 사용하게 되면 array 가 넘어온 경우 문제가 생길 수 있어서 약간 수정을 했습니다.

정태영

nmindplus 님처럼 꾸준히 오늘의 링크를 정리하는 건 힘들겠지만, 요 근래 읽었던 포스트들 중에 다른 분들도 읽어보면 좋겠다 싶은 글 몇 개를 추려봤습니다.

꼴찌 서울대생하면 생각나는 후배가 있습니다.
맞지 않는 교수님을 만나 석사과정을 하다 보니 트러블도 있고 성적도 좋지 않았습니다.
(우리 나라 교수님들 아직도 문제 많으십니다. 학생들은 노예가 아닌데 말이죠)
회사 들어와서는 정말 어려운 일들을 척척 해내는, 제가 존경하는 후배 중에 하나가 되었죠.
지금은 실리콘 밸리에서 중추적인 역할을 해내고 있답니다. 늘 자랑스럽습니다.

1등 지방대생하면 생각나는 친구가 있습니다.
자신이 원하는 것이 무엇인지 몰랐기 때문에 시작이 조금 늦었지만
자신이 원하는 것을 찾은 후에는 성실과 열정으로 전진 밖에는 모릅니다.
줄곧 1등을 하고 있으며, 자신의 일을 너무 좋아하는 그런 친구죠.
자신이 원하는 꿈을 향해 오늘도 한발 한발 즐겁게 오르고 있답니다. 늘 자랑스럽습니다.

from: 소프트웨어 이야기: 서울대 꼴지와 지방대 1등

링크만 걸면 안읽어보실 분을 위해 맘에 드는 구절을 인용해봤습니다. :)

작은 행복: 세상을 살아가는 방식
http://mbastory.tistory.com/100

서울대 꼴지와 지방대 1등
http://jamestic.egloos.com/1497911

얼마나 멀리 보고 있습니까?
http://jamestic.egloos.com/1522165

무료 음료수의 스낵
http://jamestic.egloos.com/1463659

그 친구들은 안그래도 되는데 말이지
http://jamestic.egloos.com/1382804

폐인 만복래! 소설가 이외수
http://www.dcinside.com/webdc/dcnew…_list.php?code=succeed&id=7947

기획자가 하는 일, 개발자가 하는 일
http://www.dal.kr/blog/2007/10/20071020_planner.html

혹시나 괜찮은 글들이 많이 올라오는 블로그가 있으면, 추천해주세요~

정태영

인터넷에서 상주하다보면 아래와 같은 일들을 간간히 겪게 되는데 그럴 때마다 난 기분이 별로 좋지 않다.

  1. 열심히 이것저것 찾아보고 대답해줬는데, ‘제가 원한 건 그게 아니네요. 그냥 제가 찾아봐서 해결했습니다.’ 정도의 대답을 받았을 때 - 제발 첨부터 좀 찾아봐주시면 안될까요?
  2. 누군가 메일로 나에게 질문을 해왔길래 여러가지 관련된 것들을 찾아 정리해서 보내줬지만, 아무 응답이 없을 때 - 하다못해 ‘감사합니다.’ 이 여섯자 적어 답장을 보내주는게 그렇게 어려운 일인건가요.
  3. 실수(?) 혹은 대강 대답해주는 바람에 약간 잘못된 방향의 대답을 줬더니 날 죄인취급하면서 따지고 들 때
  4. 누군가 메신져에 날 등록하더니 평소엔 말 한마디 없다가 질문거리가 있을 때만 말을 거는 경우

대답해줄 생각이 없으면 테스트조차 해보지 않고, URL 하나 찾아보지도 않는다. 자신은 그 정도 테스트 코드를 작성해볼 생각도, 그 간단한 링크하나 검색해보지 않았으면서 내가 할애해준 노력은 가치 없는 것으로 만드는 게 너무 싫다.

내가 삐뚜러진 건지 아님 가을을 타는건지… 결국 오늘도 까칠하게 포스트 하나!

정태영

홍대 커뮤니티 사이트에서 솔라리스에 설치된 dos2unix 를 사용하면 한글이 깨진다는 얘기가 보였고, 한글설정이 안되서 그런것 같다는 댓글이 보이길래 예전 제가 사용하던 프로파일을 링크걸어줬습니다.

솔라리스가 한글설정 안된듯 한데

작년 1학기때 님 bash설정한걸로 해도 dos2unix에서 깨진걸로 기억되고, 이번에 solaris들어가서도 해봐도 깨지는것 봐서는 솔라리스 문제인듯 한데요.

잠시 딴 짓을 하다 확인해보니 에고군 으로 부터 위와 같은 쪽지가 하나 와있더군요. 그걸로 안된다고. 그래서 이래저래 테스트를 해본 뒤 다른 사람들도 참고하면 괜찮겠다 싶어서 공개 코멘트로 글을 남겨놨습니다.

솔라리스가 없어서 테스트해볼 수는 없지만

dos2unix -c ascii 파일이름

식으로 문제를 해결할 수 있지 않을까 싶습니다. 그리고 unix 에서의 한글 관련 설정들은 자신의 개인 설정 파일 (.bash_profile / .profile 등등) 을 이용하면 다 가능합니다.

env 명령을 통해 현재 세팅되어 있는 환경변수들을 확인하는 것이 가능하고,

set ENVNAME ENVVALUE (csh)
export ENVNAME=ENVVALUE (sh/bash)

위 명령을 통해 환경변수 값을 변경하는 것도 가능합니다.

alias ‘ll’='/usr/bin/ls -l’

위와 같이 어떤 명령어를 자신이 원하는 명령으로 바꿔놓을 수도 있고, 기본 옵션을 지정할 수도 있구요. 게다가 옵션들은 man 페이지에 자상하게(?) 설명까지 되있습니다.

노트북에 리눅스까지 설치해놓고 쓰는걸로 알고 있는데, 이런 것들은 왜 알아두려하지 않는지 궁금하네요.

사실 저 위에는 로케일을 변경해가며 tr 과 dos2unix 등을 여러가지 옵션으로 실행해본 결과가 첨부되어 있는데 내용이 너무 길어져서 생략했습니다.

하여튼 제가 알기로 에고군 은 꽤나 오래전부터 자신이 리눅서임을 블로그를 통해 밝혀왔는데 왜 저정도도 모르지라는 생각이 들어 마지막 문장을 추가했던 것입니다.

거기에 대해 아래와 같은 답변을 달았던데…

Solaris는 저도 그닥 써보지도 않았고 관심도 없어서 -_-;;
저도 .bash_profile / .profile 바꾸는 것은 다 압니다. 이건 상식이라는 것은 알거든요
저도 환경변수 다 셋팅해서 VMware돌리거든요.
한글 설정을 해도 dos2unix가 깨진다는 것은 사실이긴 합니다. 한글 설정만 한다고 해서 한글이 안깨진다는 댓글 보고 뭔가 잘못알려준다는 것 같아서 쪽지 보낸 것이거든요.

…약간 생략…

Solaris man에서 보면 ascii로 제대로 변환하면 되는것은 man 치면 나오는 것은 압니다.
dos2unix -ascii test.s test.s
그냥 한글설정하고 dos2unix하면 안된다고 해서 쪽지 보냈습니다 -_-;;
저도 Linux 환경설정은 다할줄알고 웬간한것 다 알아도 솔라리스는 거의 쓰지를 않아서 Linux처럼 생각했던 저의 불찰도 있겠다만.
(홍익인 쓰시는 사람들은 …….님같은 생각을 하시는 사람이 아닌 평범한 사람들이 많은지라)
그런데 웬지 절 바보로 만드는 것 같은 덧글을 쓰셨군요 -ㅅ-

제가 잘못가르쳐줬다기 보다 기본적인 한글 설정이 안되있어서 dos2unix 가 오동작하는 것 같다기에 기본적인 한글 설정을 가르쳐줬고, 또 그걸로 안된다기에 다른 해결책을 써준 것입니다.

dos2unix 가 locale 설정만으로는 솔라리스에서 정상 작동하지 않는다는 것을 알았고, 저런 옵션으로 해결할 수 있다는 걸 미리 알았으면 저한테 쪽지를 보내기보단 그냥 거기에 리플로 이렇게 하면 됩니다. 라고 쓰는 것이 훨씬 좋지 않았을까 싶네요. 아니면 잘못된 것을 따라하지 않도록 그렇게 해도 안되네요 정도로 코멘트를 달았어도 나쁘지 않았을거라 생각하구요.

(그나마도 -c ascii 라고 제가 리눅스에서 테스트한 내용만 써놨을땐 -c ascii 라고 써놨다가 나중에 솔라리스에 접속해서 확인한 뒤 솔라리스에선 -ascii 옵션을 사용해야 한다고 다시 가르쳐주고 나니 저 코멘트를 수정해놓았더군요. )

그 다음 코멘트에서도 강력하게 밝혔지만, 자신이 unix 에 관심이 있다고 자신있게 얘기해왔고, 컴퓨터 공학을 전공한다고 자랑스럽게 밝혀오고 있다면 저정도는 기본 소양입니다. 또한 그 글은 컴퓨터 공학을 전공하는 사람들을 대상으로 써놓았던 글이기 때문에 더더욱 그렇게 달아놓은 것입니다.

댓글결전? 도움을 주려고 글 하나 썼다가 쌈닭취급까지 당하네요. 하..하핫;

p.s) 예전에 제가 맥 사용자란 걸 밝히지도 않은 코멘트에다가 달렸던 그 황당했던 리플이 생각나는군요. 그 때도 그렇고 지금도 그렇지만 사과를 원하는 것도 아니고, 연장자 대접, 선배 대접 받고 싶은 생각도 없습니다만 좀 생각을 하고 글을 쓰시기 바랍니다.