청소년 흡연을 줄이는 획기적인 방법. TV 드라마에서 담배를 못피게 할 것이 아니라, 찌질이 캐릭터들만 담배를 피게 만들면 된다. 예비군 복장으로 쭈그리고 앉아서 담배 피는 모습이 드라마에 나온다면, 누가 따라 피고 싶을까.

트랙백 주소 :: http://www.epapyrus.com/blog/jeong/trackback/36

댓글을 달아 주세요

  1. roulette tricks 2010/08/18 17:58  댓글주소  수정/삭제  댓글쓰기

    아름다운 기사

  2. links of london 2010/09/08 15:58  댓글주소  수정/삭제  댓글쓰기

    아름다운 기사

최근 면접을 보다 장래 목표가 뭐나는 질문에 아키텍트가 되는 것이라는 이야기를 들었습니다. 또 나이가 들면서 계속 코딩을 할 수 없으니, 다른 쪽 일을 찾아 보고 싶다는 이야기도 들었습니다. 코더라는 말은 코딩을 하는 사람이라는 의미일테고 아무래도 맥락상 코더라는 말은 뭔가 열등한 존재로 보입니다. 코딩이나 하는 사람이라는 뜻으로도 들린다는 말이지요. 코더가 진화하면 프로그래머가 되고, 프로그래머가 다시 진화하면 아키텍트가 된다는 식으로 생각하는 경우도 많이 봤습니다. 무슨 포케몬도 아니고 꼬부기가 어니부기가 되고, 거북왕이 되는 것 같군요.

트랙백 주소 :: http://www.epapyrus.com/blog/jeong/trackback/35

댓글을 달아 주세요

최근 들어 '자유'라는 단어가 너무 변질되었다는 느낌이 많이 든다.
이 단어를 들었을 때 요즘 내 머리에서 바로 드는 느낌은, "있는 놈, 힘쎈 놈들 지들 마음대로 하는 자유?" 정도...

뜬금 없지만, 자유라는 단어의 최근 정치적 위치를 생각해 보면, 자유 소프트웨어(Free Software)의 사상과는 전혀 다르다. 요즘 이야기 하는 자유 기업, 신자유주의 이런 단어와는 전혀 다르니까... (물론 free와 liberal의 차이도 있지만, 우리말에서 뾰족한 구분이 없으니)

차라리 진보 소프트웨어라는 말이 더 나을 것 같다는 생각도 ㅋㅋ

트랙백 주소 :: http://www.epapyrus.com/blog/jeong/trackback/34

댓글을 달아 주세요

  1. 2009/01/29 17:39  댓글주소  수정/삭제  댓글쓰기

    관리자만 볼 수 있는 댓글입니다.



녹색 밖에 안 보이는구나~

출처: http://www.heraldbiz.com/SITE/data/html_dir/2008/10/24/200810240311.asp

트랙백 주소 :: http://www.epapyrus.com/blog/jeong/trackback/33

댓글을 달아 주세요

  1. 아니아범 2008/10/27 18:54  댓글주소  수정/삭제  댓글쓰기

    그래도 999 였네...ㅋ

사용자 삽입 이미지

트랙백 주소 :: http://www.epapyrus.com/blog/jeong/trackback/32

댓글을 달아 주세요

공대를 졸업한 당신. 학교에 다닐 때는 목이 다 늘어진 흰 셔츠와 물빠진 청바지만 입고 다니며, 인사라고는 밥먹었냐와 숙제했냐 밖에 모르던 당신.

사용자 삽입 이미지사용자 삽입 이미지

사회 생활을 몇 년 하며, 이제는 공돌이 물이 빠졌겠지 라고 생각하겠지만... 과연?

몇가지 테스트로 간단히 점검해보자.

1) 다음 단어의 의미는?

probability
equation
evaluate
frequency
function

생각도 안하고 바로 답 보려는 행동도 공돌이스러울 수 있으니 잠시만 생각해 보고 답을 보자. ㅎㅎ

혹시 생각한 답이 아래라면 당신은 공돌이. (마우스를 드래그 해 보세요)
확율
방정식
값을 구하다
주파수
함수

일반인들은 다음과 같이 생각한다는게 문제. ㅎㅎ

probability : 가능성, 개연성
equation : 평형 상태
evaluate : 평가하다
frequency : 빈도
function : 기능

억울하다면, 한 문제 더!

2) "정의" 가 영어로 뭘까요?

(드래그 해 보세요) definition 이라고 생각한 당신은 역시 공돌이.

문돌이들은 justice 라고 생각한단다.

마지막으로

3) open의 반댓말은 무엇일까? short라고 답했다면 당신은 구제 불능!

트랙백 주소 :: http://www.epapyrus.com/blog/jeong/trackback/31

댓글을 달아 주세요

  1. 공돌이 2008/09/21 01:37  댓글주소  수정/삭제  댓글쓰기

    ㅋㅋㅋ 재밌습니다.

  2. 공돌이2 2008/10/14 10:25  댓글주소  수정/삭제  댓글쓰기

    보기좋게 당했군요... 정말 허를 찔린기분입니다-ㅅ-

  3. Leo Kim 2008/10/26 19:10  댓글주소  수정/삭제  댓글쓰기

    공돌 내공이 부족해서인가 3번에는 걸리지 않았군요.
    우리 공돌이들도 꾸준히 인문학적 소양을 길러야 겠습니다.

  4. 모던보이 2008/10/29 14:39  댓글주소  수정/삭제  댓글쓰기

    3번은 전자공학 전공에만 해당되겠네요 ㅎ
    1, 2번 걸린 것 만으로도 충분히 당신은 공돌이...

PDF와 HTML의 비교에 대해 궁금해 하시는 분들을 꽤 자주 봅니다.

기술적으로 보면 PDF와 HTML은 비교 대상이 될만한 유사성이 별로 없습니다만, 컨텐트의 컨테이너라는 점에서 그리고 플랫폼 독립적이라는 점 등에서 서로가 비교 대상이 될 수도 있습니다.

PDF 문서는 대부분 인쇄를 염두에 두거나, 원본 문서를 있는 그대로 전달하기 위한 용도로 사용되어 왔습니다.

그렇다면 인터넷, 특히 웹 환경에서의 문서 포맷으로 PDF 문서는 어떤 장점과 단점을 가지고 있을까요? 이러한 의문을 현재 웹환경의 표준 문서 기술 언어인 HTML과의 비교를 통해 풀어보겠습니다.


일단 간단히 둘을 비교한다면,


    PDF는 장치나 운영체제에 관계없이 어떠한 환경에서도 똑같은 모습으로 보여지고 출력될 수 있습니다.


    HTML은 화면상의 보기와 사용자와의 인터페이스를 위하여 설계되었습니다. 화면상에서 읽기에 최적화 되어 있지만, 브라우저에 따라서 보이는 모습이 달라질 수 있고 또한 출력이 상대적으로 어렵습니다.

이제 좀더 자세히 알아 보겠습니다.


1. 비용

    PDF: 매우 저렴한 비용에 제작될 수 있습니다. 원고를 일반적으로 사용하는 워드프로세서 또는 오피스류 소프트웨어를 사용할 수 있기 때문입니다.

    HTML: 사용자 인터페이스와 상호작용, 화면 보기에 신경을 쓰는 만큼 비용이 증가합니다. 하이퍼링크, 썸네일, 이미지 등은 꽤 지식과 시간을 요합니다.


2. 파일 구조

    PDF: 모든 요소가 단일 파일 내부에 저장되며, 대체로 워드 등과 같은 파일 보다 크기가 작습니다.

    HTML: 텍스트와 이미지, 멀티미디어 요소가 분리된 파일로 존재 합니다. 대체로 하나의  페이지는 10-20여개의 파일로 이루어 집니다.


3. 화면 보기

    PDF: 원고와 완전히 동일한 모습을 보여주며, 3200% 까지의 확대가 가능합니다.

    HTML: 보여지는 모습은 브라우저, 화면 해상도, 브라우저 세팅 등과 같은 요소에 의해 달라질 수 있습니다.


4. 인터랙티브 요소

    PDF: 가능하기는 하나 꽤 어렵고 시간이 걸리는 작업이 됩니다.

    HTML: 이미지 뿐만 아니라, 오디오, 비디오 클립, 폼에 이르기 까지 다양한 요소를 그리 어렵지 않게 사용할 수 있습니다.


5. 출력 품질

    PDF: 원본과 완전히 동일합니다.

    HTML: 화면 보기의 경우와 비슷하게 많은 요소에 의해 달라 질 수 있으며, 대체로 화면이 잘리거나, 마진이 틀려지는 등의 트러블이 종종 발생합니다.


6. 수식 사용

    PDF: 원본에서 표현된 것과 완전히 동일하게 표현합니다.

    HTML: 수식을 직접적으로 지원하지 않습니다. 따라서 별도의 이미지 파일로 수식을 표현해야 하는 등의 번거로움이 있습니다.


지금 까지의 사실을 바탕으로 두 포맷 간의 장단점을 비교해 보겠습니다.


[장점]

    PDF: 쉽게 만들 수 있고, 원본과 동일한 화면/출력 품질을 유지합니다.

    HTML: 인터랙티브 요소를 쉽게 만들 수 있고, 오디오/비디오 클립 등과 같은 데이터를 쉽게 포함할 수 있습니다. (최신 PDF 스펙은 HTML 만큼은 아니지만 멀티미디어 요소를 포함할 수 있습니다.)


[단점]

    PDF: 인터랙티브 요소의 추가가 쉽지 않습니다.

    HTML: 단일 페이지를 구성하는 파일의 개수가 많아 제작과 관리가 힘들며,  여러 플랫폼에서 일관적인 모양을 유지하기가 힘들고 출력이 어렵습니다.

TAG HTML, PDF, 비교

트랙백 주소 :: http://www.epapyrus.com/blog/jeong/trackback/30

댓글을 달아 주세요

최근 서점에 갔다가 놀라게 된 일이 있었다. 직업이 직업인지라 컴퓨터 관련 서적들을 습관처럼 훑어 보게 되는데, 버전 관리 시스템(이하 SCM)에 대한 책들이 꽤 많이 나와 있는 것이다.


놀란 이유는 두 가지다. 하나는 왜 SCM 사용법이 책으로 나와야 하는 것이고, 다른 하나는 왜 요즘에 저런 책이 나오는가 하는 것이다. 아, 그랬던 것이다. 책을 몇 권 뒤져보니 지금까지도 버전 관리 없이 살아온 개발팀이 많았던 것이다.


여기서, 버전 관리의 중요성을 논하고 싶지는 않다. 그 보다는 널리 사용되는 두 종류의 SCM, 마이크로소프트 SourceSafe와 오픈 소스 프로젝트인 CVS에 대한 담론을 해보려고 한다.


SourceSafe(이하 SS)는 어떤 파일에 대해 작업을 하기 위해 체크아웃이라는 절차가 필요하다. 체크아웃을 통해 내가 이 파일을 수정할 예정이니 다른 사람들은 손대지 말라는 선언을 하는 것이다. 수정이 끝나면 체크인을 해서 중앙 저장소에 기록을 하게 되고, 이제 모든 사람들이 이 수정을 자신의 로컬로 가져올 수 있게 된다.


이 방식의 가장 큰 특징은 하나의 파일을 동시에 한 사람만 수정할 수 있다는 것이다. 즉 main.c 파일을 김군이 수정하고 있으면, 이양은 김군이 수정을 마칠 때까지 수정할 수 없다는 것이다. 여러 사람이 작업할 때, 생길 수 있는 충돌을 원천 봉쇄하는 것이다.


CVS는 훨씬 자유롭다. 아무 파일이나 마음 내키는 대로 수정하면 된다. 그리고 수정이 끝나면 커밋(SS의 체크인과 비슷한 개념)을 하면 된다. 그러면 동시에 여러 사람이 같은 파일을 수정하고 커밋하면 어떻게 되냐고? 이런 상황을 충돌이라고 하는데 그런 경우는 동시에 일어난 수정들을 손으로 해결 하거나, 자동에 맡기면 된다.


위의 두 방식은 예전부터 격렬한 논쟁 거리가 되어 왔었지만, 이 이야기를 또 들고 나온 것은 저 물건들의 정치적, 사회적 특성에 대해 재미있는 것을 발견 했기 때문이다.


SourceSafe의 방식은 안전하다. 절대 혼란이 발생할 수가 없다. 어떠한 작업을 하기 위해서는 SCM이라는 중앙 기관의 허락을 받아야 하고, 이 허락 없이는 작업이 불가능 하기 때문이다. 그야 말로 계몽주의의 전형이다. 누가 어떤 파일을 사용하는지 중앙에서 통제한다. 사회의 혼란을 막기 위해서 모든 것을 통제 하는 시스템. 형식의 아름다움이 느껴지지 않는가?


하지만, CVS는 이 형식을 깨버린다. 작업을 하기 전에 중앙의 승인을 받아야 하는 절차를 무시한다. 그저 아무 때나 작업을 하면 된다. 작업을 하기 위한 중앙 저장소의 허락이 필요 없다. 작업이 끝나면 커밋 만 하면 되는 것이다. 더 이상 관리의 주체는 SCM이 아니라, 개인이 된 것이다. 오바를 해 보자면, 개인과 사회의 해방을 이룩한 것이다.

종종 충돌 과 혼란도 일어난다. 하지만, 구조나 형식을 통해서 이 문제를 해결하지는 않는다. 자유와 해방을 위해서 이러한 혼란을 감수한다.


사회, 문화, 예술에 이어 엔지니어링 세계에서도 포스트모더니티가 나타나고 있다.

(이 글은 2006/04/25일 네이버 블로그에 올렸던 글입니다.)

트랙백 주소 :: http://www.epapyrus.com/blog/jeong/trackback/29

  1. Subject: 버전관리 - 작업영역에 대한 오해

    Tracked from 머샤의 인생과 웃기는 고양이 2008/09/17 11:41  삭제

    이글은 이파피루스 대표이신 모던보이님의 글에 트랙백하기 위해서 씁니다. 이파피루스 대표께서 운영하는 블로그에 "버전관리시스템과 포스트모더니즘"이라는 글이 올라왔습니다. 물론 글의 내용은 본인도 상당히 공감하는 통제와 자유화의 관점에서 느끼는 소견이라 사족을 달고 싶지는 않습니다. (동감한다고 해야 할까요?) 하지만, CVS와 SourceSafe의 비교에서 일반 사용자(버전관리 시스템을 개발하는 사람은 아닌)분들이 조금 헷갈려 하시는 부분이 있어 언급..

댓글을 달아 주세요

  1. clue 2008/09/17 04:29  댓글주소  수정/삭제  댓글쓰기

    CVS가 sourcesafe보다 훨씬 먼저 만들어진 소프트웨어죠. sourcesafe는 그래도 90년대일 텐데.

  2. youlsa 2008/09/17 14:01  댓글주소  수정/삭제  댓글쓰기

    CVS를 거쳐 SVN을 쓰고 있는데요, 별로 생각해보지 않은 내용을 지적하셨네요. 그러고 보니 또 그렇다는 생각이 듭니다. 통제의 틀을 다소 넓힌거라고 볼수도 있겠고요.

  3. clue 2008/09/17 15:39  댓글주소  수정/삭제  댓글쓰기

    sourcesafe가 사용하고 있는 lock-modify-unlock 모델은 CVS 전부터 RCS, SCCS 따위시절부터 오랫동안 쓰던 방식입니다. CVS나 SVN은 이런 전통과는 다르게 working copy를 만들어 merge하는 모델을 택했고 매뉴얼을 보면 lock을 하는 것에 대해 문제점과 불필요함을 논하는 부분이 있죠. sourcesafe는 더 나중에 만들어졌음에도 불구하고 lock을 하는 모델을 택했구요.

  4. 모던보이 2008/09/17 16:47  댓글주소  수정/삭제  댓글쓰기

    CVS와 SourceSafe의 앞뒤는 논점은 아닙니다. Clue님이 말씀하신것 처럼 lock-modify-unlock 모델이 더 오래 됬고, 모던 하다는 이야기 이지요. ㅎㅎ

리눅스용 오픈소스 테니스 게임 하나를 소개하겠습니다.

사용자 삽입 이미지사용자 삽입 이미지

요즘 나오는 상용 게임 기준으로 보면 비주얼이 별로라고 생각하실 수 있지만 두가지 재밌는 점이 있습니다.

1. 테니스 선수 출신 프로그래머가 개발한 오픈 소스 소프트웨어 입니다.

테니스 선수와 프로그래머. 꽤 재밌는 두가지 직업이죠? 실제 테니스에서 사용되는 전술들을 직접 적용할 수 있으며, 인공지능이 꽤 똑똑합니다.

2. OCaml로 작성된 소프트웨어 입니다.

2007년말 기준으로 Flying Flog Consultancy에서 발표한 가장 인기있는 OCaml 프로그램 톱10에 들었던 소프트웨어입니다. 선정 기준은 우분투와 데비안에서 인스톨 된 시트수 기준인 것 같습니다. http://ocamlnews.blogspot.com/2007/12/top-10-most-popular-ocaml-programs.html 

아래 링크에서 자세한 설명과 다운로드를 받을 수 있습니다.
http://freetennis.sourceforge.net/

트랙백 주소 :: http://www.epapyrus.com/blog/jeong/trackback/28

댓글을 달아 주세요

일전에 개발 언어 관련해서 KLDP에 글을 포스팅한 적이 있습니다.
http://kldp.org/node/96655

결국 OCaml로 한 번 가보자는 결론을 내렸고 작은 프로젝트 부터 실험적으로 시작해 보고 있습니다.

그나저나 가장 큰 문제는, OCaml에 대해서 별로 경험 없는 사람들끼리 모여서 프로젝트를 하려니 책이나 자료 부족이 가장 큰 문제네요. 한글 책은 없어 보이고요.

혹시 ML 또는 functional language을 배우고 싶은 분들을 위해 책 한권 소개 하겠습니다.

The Little MLer
Matthias Felleisen and Daniel P. Friedman

 
with a foreword by Robin Milner
and drawings by Duane Bibby

사용자 삽입 이미지

이 책은 어려운 개념을 쉽게 잘 설명한다는 점에서 가장 큰 점수를 주고 싶습니다. 왼쪽과 오른쪽으로 나누어져 질문과 답변의 형식에 약간의 유머가 들어 있어 쉽게 읽을 수 있고요.
특히 함수형 언어에 대해 경험이 없는 프로그래머들에게 ML의 타입 시스템, 표현식, 고차 함수, 람다 캘큘러스 등을 잘 설명해 줍니다. 특히 Imperative language에 익숙한 독자들이 재귀적으로 생각하는 틀을 만들어 주는데 많은 도움을 줍니다.
또 한국 독자들에게는 쉬운 영어로 쓰여져 있다는 점도 큰 메리트이겠군요.

책은 SML을 기본으로 사용하고 있지만, 복잡한 문법이 없고 책 앞부분에서 OCaml의 경우에 대한 언급이 있으므로 별다른 문제는 없습니다.

참, Lisp에 관심이 있는 독자라면 The Littler Schemer도 추천합니다.

트랙백 주소 :: http://www.epapyrus.com/blog/jeong/trackback/27

댓글을 달아 주세요