텍스트큐브 블로그API 의 개발자인 최호진님의 블로그를 방문했다 읽은 글입니다.

이 글을 읽기 시작하면서 프로그래머들의 세계인지라 그러면 좋은건가보다~하는 심정적 동의는 있어도 딱히 저의 생활에 깊숙하게 담아둘 내용은 아니로군~ 하는 생각을 하고 있었는데 한 줄이 심장을 덜컹~하고 흔들어 놓는군요.

하나를 깊게 팔 때, 관련된 옆동네 지식을 소홀히 하면 파내려 간 만큼의 벽을 쌓는 것입니다


참으로 옳은 말씀인데다 참으로 공감이 가고 참으로 저의 인생에 되새김질을 해 두어야 할 말인 듯 합니다.

기획자로서 기획을 하다 보면 몰두아닌 몰두를 하게 되고 계속해서 그것만을 파게 되어 있습니다.

특히나 한 분야를 오래 하다 보면 자기도 모르게 자신만의 벽을 쌓게 되고 스스로도 그 벽을 허물수 없는 지경까지 다다르게 되고 말곤 하지요.

요즘 유비쿼터스를 이야기할 때 T 자형 인간형에 대해 많은 말들을 합니다.

넓게도 파야하지만 주특기가 되는 부분에 대해서는 깊게도 파야 한다는 의미로 받아들이고 있습니다.

그 와중에 세상의 모든 지식은 연결되어 있으니 옆동네 지식에게도 인사는 건네는 정도로는 알고 지내자는 말이 요즘들어 계속 고민하고 있는 스스로의 벽이라는 한계를 깨트릴 수 있는 작은 망치가 될 수 있을 것 같군요.

이 꼭두새벽에 회사에서 야근을 하고 있지만 잠시 렌더링하는 틈을 타서 좋은 말씀을 배웠다고 생각됩니다.

감사합니다.

* 아래 그림은 Ameera 님의 Interface 라는 작품입니다.
사용자 삽입 이미지


이제 시작하는 프로그래머를 위해...

인턴쉽 프로그램에 의해 저희 팀에 인턴사원 한 명이 있습니다. 이런 저런 얘기를 하다가, 정리를 한 번 하는 것도 좋을 것 같아서, 생각나는대로 써봅니다.

마우스보다는 키보드를 사용해보십시오

늘 사용하던 환경이 달라 보이며, 그런 환경에서도 동작하는 UI를 느껴보십시오. 유용한 프로그래밍 개념은 간단한 유틸리티로 작성되는 경우가 많고, 화려한 UI가 없는 경우가 대부분입니다. 그래픽 인터페이스는 사람을 피곤하게 만들어 계속 쉬고 싶게 합니다.

컴파일러나 프로그래밍 도구의 여러 옵션에 관심을 가지십시오

이 옵션들을 모두 이해할때까지 옵션이 적용될 상황을 만들어 보십시오. 그 옵션들이 왜 필요하게 되었는지 시간을 내어 검색해보면, 생각지도 못했던 개념들과 연결되어 있을 것입니다.

상상하는 프로그램의 흐름을 디버거를 이용하여 눈으로 확인하십시오

디버거는 당신의 친구입니다. 모든 프로그래밍환경은 디버거가 존재합니다. 이 디버거를 하나둘씩 익히면서, 내가 작성한 프로그램이 실제 잘 동작하고 있는지 슬로 모션으로 확인하는 것은 정말 중요합니다. 디버거가 뽑아내는 알 수 없는 값들은 마치 살아 있는 심장 소리를 청진기로 듣는 것과 같습니다.

사용하는 디버거의 원리를 이해하십시오

디버거는 개발자의 숨결이 녹아든 비밀도구입니다. 디버거야 말로, 시스템을 창조한 사람만이 만들어 낼 수 있는, 시스템을 완벽하게 이해한 사람만이 만들어 낼 수 있는 도구입니다. 이 도구를 이해한다는 것은 시스템의 일부가 되는 과정입니다.

하나를 깊게 팔 때, 관련된 옆동네 지식을 소홀히 하면 파내려 간 만큼의 벽을 쌓는 것입니다

지식은 연결되어 있지 않은 것이 없습니다. 될 수 있으면, 스쳐지나가는 정도라 할 지라도, 다른 분야의 같은 지식들이 무엇이 있는지 인사라도 하는 것이 좋습니다.

가장 궁극적인 로망은 컴파일되어 나온 바이너리를 이해하는 것입니다

이 바이너리의 비밀을 모조리 이해할때 파란하늘을 비로소 볼 수 있습니다. 어떻게 이 녀석이 살아 움직이게되는지 그것과 연관되어 있는 모든 것을 이해하는 것이 궁극적으로 소스를 작성하는 것의 종착역입니다.

화이삼..!


2008/04/21 01:48 2008/04/21 01:48

댓글을 달아 주세요

[로그인][오픈아이디란?]

일주일 전 무렵에 하룻밤에 댓글이 1500 개 이상이 달리는 과도한 스팸 공격을 받은 적이 있습니다.

화들짝 놀라 스팸들을 지우고, 텍스트 큐브에 들어가 무슨 상황인지 감을 잡고, 나름대로의 대안도 세워 스패머로부터의 공격을 막겠다는 결연한 의지를 보였더랍니다.

하지만 아직도 끝나지 않은 스패머들의 지속적인 방문이 있는건지 대략 일주일 전까지 많으면 300 정도에 달하던 카운터 수치가 느닷없이 1000 이상으로 급증가 하고 있습니다.

텍스트 큐브를 사용하시는 다른 분들도 이런 상황인지 모르겠지만 나중에 밝혀질 (?) 이 의문스러운 카운터 증상을 기록하기 위해 포스팅 해 둡니다.

사용자 삽입 이미지

2008/03/18 20:53 2008/03/18 20:53

댓글을 달아 주세요

[로그인][오픈아이디란?]

최근에 방문자 수가 급~증가해서 오호라... 역시 꾸준한 포스팅은 방문자가 스테디하게 올라가는구나~ 라며 룰루랄라 하고 있었는데 오늘 제대로 한 방 터졌군요.

잭팟입니다요~

관련 글을 읽다 보니 저와 완전히 상황이 동일하신 분을 발견해서 기쁜 맘도 있었지만 이게 웬 날벼락~ 이라고 생각하니 갑자기 우울해지더군요.

HaraWish
2008/03/13 15:39
자세한 건 모르겠고요. 제가 겪은 것만 설명드릴께요. (트랙백도 걸어뒀습니다.)

1. 대략 사흘 전부터 방문자 수 +200 정도 증가. 평소 한산한 블로그라 조금 이상하긴 했습니다.
2. 어제 아침 300 개 정도 스팸 답글 달림 (텍스트큐브 1.3.1 사용 중)
3. 혹시나 싶어 텍스트큐브 업그레이드
3. 오늘 아침 7,000 개 정도 스팸 답글 달림 (텍스트큐브 1.6.1 사용 중)
4. 더불어 방명록에도 비슷한 내용으로 3-4개의 글이 달림.

스팸 답글들의 ip는 제각각이었고요. 연결된 사이트도 주소가 굉장히 많았는데 대부분 hot, girls, women 정도가 들어있었고, 거의 대부분에는 2008 이 붙어있었습니다. (그래서 현재 2008을 홈페이지 금칙어로 추가해놨고요.)

도움이 되었으면 좋겠네요.

일단 텍스트큐브를 사용하시는 분들과 MacBlog 를 사용하시는 분 모두 다 이 상황이 터졌다는 것을 인지하시고 블로그가 유명해졌다는 환상에서 깨어나심과 함께 스팸 방지 대책이 나오는대로 다시 마이너 업데이트를 준비하시기 바랍니다.

오늘 (3월 13일) 스팸 공격 관련 임시 패치 및 사례 수집

Category : 보안
Reg Date : 2008/03/13 14:34
오늘 새벽부터 스팸의 공격이 태터툴즈/텍스트큐브 계열의 블로그에 집중되었습니다. 정형화된 패턴이 아니고 다양한 변조를 자동으로 하고 있기 때문에 기존의 방법으로 막히지 않아 EAS(Eolin Antispam Service)가 얼마동안 스팸 검출을 제대로 하지 못하였습니다.
현재 TNF/니들웍스에서는 EASplus 플러그인을 중심으로 해당 방법에 대한 근본적인 대응 방법을 세우고 있으며, TNC에서는 EAS 서비스의 동작 알고리즘에 대한 논의 및 보정을 실시하고 있습니다. 설치형 태터툴즈/텍스트큐브를 사용하시는 분들께서는 임시로 태터/큐브가 설치된 곳의 plugins/EAS/index.php 파일을 열어 11번째 줄인
$blogstr = $hostURL . $blogURL;
의 바로 아랫 줄에 다음의 줄을 추가해 주시기 바랍니다.
/*긴급 패치 */
return false;
이미 스팸 폭격을 받으신 분들께서 너무 스팸이 많아 한 번에 삭제하기 힘든 경우에는 임시로 한 페이지에 출력되는 글 수를 늘린 후 한 번에 삭제하실 수 있습니다. 관리자 화면의 '글-댓글' 또는 '글-트랙백' 에서 한 번에 보이는 글 수를 늘리기 위해서는
태터툴즈 : /blog/owner/entry/comment/index.php, /blog/owner/entry/trackback/index.php
텍스트큐브 : /interface/owner/entry/comment/index.php, /interface/owner/entry/trackback/index.php
파일을 열어 약 40번째 줄에 있는
$perPage = getBlogSetting('rowsPerPage', 10);
부분을 찾은 후에
//$perPage = getBlogSetting('rowsPerPage', 10);
$perPage = 500;
으로 수정해 주시면 한 페이지에 보이는 글 수를 임시로 500개로 늘릴 수 있습니다. 지우신 후, 원래대로 소스를 변경해 주시면 됩니다.
이후 플러그인의 업데이트를 준비하여 다시 공지하도록 하겠습니다.
혹 이번 스팸에 대해서 경험담을 적으셨거나 어떤 종류이든지 대응 방법을 고민해 보신 분들께서는 주저없이 이 글에 트랙백을 부탁드립니다! (공격을 몇개 받았다든가 같은) 경험담도, 패턴을 알아냈다거나 의견이 있다는 글도 모두 환영합니다. 최대한 많은 케이스가 필요합니다.
덧) 잊을만 하니 2년전 이맘때 즈음을 생각나게 만드네요. 창과 방패의 경쟁은 끝이 없군요... 잠시 졌지만 다시 일어나서 이기겠습니다! TNF/TNC 분들 모두 화이팅 T_T
2008/03/13 19:10 2008/03/13 19:10

댓글을 달아 주세요

[로그인][오픈아이디란?]

어제의 테스트 결과 <html> 태그보다 echo 구문이 먼저 나오는 이상한 점을 발견했었다.

역시 뭔가 이상한 것이지만 그래도 화면이 잘 나오길래 아무 생각하지 않고 있었는데 럴수럴수 이럴수가...

Safari 에서는 그런 악독한 코드도 제대로 뿌려주는데 IE 에서는 영 의도하지 않은대로 나온다.

사용자 삽입 이미지
<Safari 화면>

사용자 삽입 이미지
<IE 화면>

크게 다른 두가지는 블로그 제목 아래에 Home / Location / Tagcloud / Keyword / Guestbook 등의 메뉴가 표현되지 않는다는 것과 가운데 정렬로 구성되어 있는 것이 좌측 정렬로 바뀌어 버린다는 것이다.

음...
역시 브라우저 호환성을 맞추는 일은 복잡스러운 일인 것이다.

문제는 다시 원점부터 출발해야 할 것 같다.

이 문장을 제 위치에 넣을만한 후보로 <html> 태그가 있는 파일을 검색해 보니...
lib/view/view.php
lib/view/pages.php
lib/view/html.php
의 3가지로 압축이 되는군요.

그 와중에 스킨에 따라 레이아웃이 뒤틀려버리는 경우도 있으므로 오히려 더 큰 문제가 발생하는 분위기인지라 상단의 메뉴는 해결 방법을 찾을때까지 포기 (ㅠㅠ) 하도록 하겠습니다.
2007/12/05 09:05 2007/12/05 09:05

댓글을 달아 주세요

[로그인][오픈아이디란?]

Mac Blog 의 제일 상단에 Model Aid 메뉴를 넣어보자.
이 간단한 질문이 요 몇일간 텍스트큐브를 사용하면서 한쪽 머리 구석을 떠나지 않던 것이었다.

고민의 이유는 이렇다.

  1. 블로그 이용자들이 스킨을 자유롭게 선택해서 사용할 수 있어야 한다.
  2. 블로그로 링크될 때 새 창을 띄우는 것이 아니라 현재 창에서 바로 보일 수 있어야 한다.
  3. 선택된 개별 스킨상에서도 Model Aid 로의 복귀가 쉬워야 한다.
  4. 프레임은 사용하지 않겠다.
  5. 안타깝지만 텍스트큐브 플러그인을 개발할 능력은 안된다. ㅠㅠ
이런 이유로 고민을 시작하게 되었다.

요약하자면 조금은 운영자의 욕심이겠지만 블로그 이용에 불편을 주지 않으면서도 Model Aid 라고 하는 원래의 흐름을 잃어버리지는 말자는 것이다. 이 부분은 네이버나 다음에서도 그렇게 하는 것이므로 한편으로는 당연한 거라고 우겨도 될 것이다. ㅡ,ㅡ;;;

여하튼... 스킨을 수정해서 구현할 수도 있겠지만 이용자들이 다운로드 받은 스킨을 매번 확인하고 스킨을 수정한다는 것은 나에게는 사실상 불가능한 일이다.

시간도 없는데 어느 세월에 그걸 모두 확인할 것이며, 언제 모든걸 수정하겠느냐 말이다.

그래서 텍스트큐브 질문답변 게시판 에도 문의를 했지만 내가 할 수 있는 형태의 답변은 아직 올라오지 않았다.

그러던 중 inureyes 님의 [1.5] 개별 포스트에서 페이징을 보지 않기 라는 포스팅에서 힌트를 얻게 되었다.

이 포스팅은 포스팅 페이지 아래쪽에 있는 페이지 번호를 보지 않게 하는 것이었는데 내용에서 스킨과 무관한 텍스트큐브의 Footer 에 해당하는 파일 이름을 접하게 된 것이다.

그렇다면 Header 에 속하는 것도 있을 것이고, 이 Header 를 손본다면 결국 스킨과 무관하게 링크를 구현할 수 있을 것이라는 부분까지 생각이 확대되었다. 

옳커니~
FTP 에 접속...
파일을 찾았다.
[텍스트큐브폴더]/lib/piece/blog/begin.php 이 녀석이로구나.
간단하게 테스트를 했더니 바로 성공이다.
꺄울... 난 천재~ ^^v
현재는 이 녀석을 열고 파일의 제일 앞쪽에...

echo("<div align='center' style='font-size:7pt; color: white; background-color: black;'>
<a href='http://www.modelaid.com'>Model Aid Home</a> | <a href='http://www.modelaid.com/community'>Community</a> | <a href='http://www.modelaid.com/lecture'>Lecture</a> | <a href='http://www.modelaid.com/review'>Review</a> | <a href='http://www.modelaid.com/workroom'>Workroom</a> | <a href='http://www.modelaid.com/portfolio'>Portfolio</a> | <a href='http://www.modelaid.com/explore'>Explore</a> | <a href='http://www.modelaid.com/library'>Library</a></div>");
라고 넣어준 상태이다.

하지만 아직 두가지 문제점이 남아있다.

  1. 스킨에서 올라온 CSS 를 이용하는게 전체적인 스킨의 디자인을 해치지 않을텐데... 링크와 바탕색의 대비가 되는 CSS Class 나 ID 값의 공통 분모를 찾는 것
  2. Top Margin 이 설정된 스킨에서는 Margin 이후에 내용이 출력되면서 상단이 붕~ 뜨는 스타일이 될 텐데 어떻게 해결할 것인가?
하는 것이다.

첫번째 조합은 기본 스킨과 수정된 스킨을 열어 링크, 배경, 바탕색등에 대한 기본적인 흐름을 분석해야 겠다.
누군가 알려주시면 대략 감사~ (스킨 작업을 여러번 해 보신 분이라면 이미 알고 계실듯...)
Save my time, please

두번째는 블로그와 분명한 선을 긋기 위해 블럭 형태로 넣을까 하는 생각을 하고 있기 때문에 문제가 되는 것인데 과연 Top Margin 마저도 무시하고 무작정 윗쪽으로 찰싹 달라붙는 형태를 만들수는 없을까 하는 문제입니다.

이 두가지 질문에 대한 답을 찾는 여행은 잠시 쉬었다가 어느날 문득 머리 오른쪽 상단에서 전구가 반짝거릴때 떠나도록 하겠습니다.
2007/12/04 10:09 2007/12/04 10:09

댓글을 달아 주세요

  1. 두번째 질문의 답으로 윗쪽이 아니라 아랫쪽에 메뉴를 넣어버리는 것으로 문제를 해결하면 어떨까?

    사실 내 블로그에 서비스하는 곳의 로고가 큼지막하게 붙어있거나 광고는 아니지만 광고 비스무리한게 자리잡고 있으면 상당히 거슬렸었다. ㅡ,ㅡ;;; 역시 인간의 욕심이란...

    그러면 두번째 문제는 완전 간단하게 해결될텐데 말이다.

    으흠... 좀 더 고민을 해 보자구~

    • 그래....
      난 '서비스를 받는 곳'이기도 하고...
      '서비스를 제공하는 곳'이기도 하다.

      마치 Pixar 의 '게리의 게임(Geri's game)' 에 나오는 체스 할아버지처럼 혼자 북치고 장구치고 해야 하는 정점에 서 있는 것이다.

       댓글주소  수정/삭제 2007/12/04 10:39
  2. 첫번째 질문의 답으로 일단 강제 스타일링을 하는 식으로...
    <div align='center' style='font-size:7pt; color: white; background-color: black;'> 를 추가해서 블록을 잡아주었고,

    두번째 질문의 답으로 현재 대안을 찾은 것중에 하나는 body 태그에 있는 padding-top 의 속성을 지우고, container 태그에 padding-top 값을 추가해 주는 것으로 현재 스코어상의 안타까움을 어느정도 해소해 놓은 상태

    입니다.
    더 발전된 생각은 나중에 다시 전구가 켜지기를 기대해 보자구요

    • 문제는 어디까지나 이 방식은 꽁수일 뿐이라는거죠.
      소스보기를 해 보시면 아시겠지만 그 어느 태그보다 앞서 달려버리는 태그가 되어 버렸답니다. 오흑~

       댓글주소  수정/삭제 2007/12/04 16:19
  3. 에러가 난다. ㅡ,ㅡ;;; 천재 취소

  4. 넵! 에러가 나 버렸습니다. -..-
    너도 Mac CEO 님의 아이디어를 도용해서 peace/blog/begin 을 건들였는데, 운영되고 있는 10개의 블로그들의 대부분에서 스킨의 전체 틀이 부숴져 버리는 에러 발생...
    그래서 포기했습니다.
    자바 스크립을 써서 플로팅하는 이미지를 하고 있지만, 또 에러.... 그래서 또 포기....

    10개의 모든 블로그에 동일하게 메인으로 가는 메뉴 혹은 떠다니는 조그마한 버튼이라도 달 방법은 진정없는건가.... 흑흑

    • 뭔가 방법을 찾게 되면 다시 알려드리겠습니다.
      다중 사용자 형태로 블로그를 운영하시는 개인 사용자라면 모두들 이 고민을 하고 있지 않을까 싶네요.

       댓글주소  수정/삭제 2007/12/09 14:41
[로그인][오픈아이디란?]

그동안 태터툴즈를 이용해서 Mac Blog 공간을 제공하다 태터툴즈가 텍스트큐브로 전환되면서 업데이트가 이루어지지 않고 있었던 것을 오늘에서야 깔끔하게 정리했습니다.

데이터는 예전에 백업받아놓은 것을 이용해서 복구하고 요 몇일간 테스트도 해 보았으니 블로그 엔진 업데이트에 따른 이용상의 불편함은 없으리라 생각됩니다.

Mac Blog 를 사용하시는 분들이 자유롭게 스킨을 설정할 수 있도록 하기 위해서 업데이트한 측면도 있으므로 좀 더 예쁜 자기만의 공간을 꾸며보시기 바랍니다.

부탁 말씀) 공통 메뉴로의 접근에 대해서...
현재 모델에이드의 메인 메뉴로 복귀할 수 있는 부분에 대한 내용만 구현할 수 있었으면 좋겠는데 워낙 특수한 경우인건지 적당한 샘플을 찾을수가 없군요.

전체적인 디자인을 해치지 않고 수정할 수 있도록 여러가지 알아볼 계획입니다.

혹시라도 태터툴즈나 텍스트큐브 스킨을 제작해 본 경험이 있으신 분 중에서 스킨 폴더에 있는 파일을 건드리지 않고 페이지의 제일 상단에 한줄의 텍스트를 고정적으로 넣을 수 있는 방법을 아시는 분이 있으시면 힌트 부탁드리겠습니다.
2007/11/30 18:37 2007/11/30 18:37

댓글을 달아 주세요

[로그인][오픈아이디란?]