개발&Development/프로그래밍 일반 56

Leopard에서 Zend Debugging 하기

http://www.zend.com/forums/index.php?t=msg&goto=14058&S=fe276d5a44eb0605385298c10a840608 결론은 애플이 아파치를 정말 웹 공유용으로 만들어 줘서 익스텐션이 설치가 안된다는 것. 따라서 왕창 새로 깔아야 한다는 것이다. MAMP를 설치하는 것도 답일 수 있으나 왠지 Pro버전 돈내삼 하고 있어서 직접 설치해 보도록 하자. 해답을 찾는데 도움이 된 것은 PHP-GD 설치가 안된다는 글타래. http://discussions.apple.com/thread.jspa?messageID=5693097 그리고 간만에 옛날 프로젝트 돌려보려니 난리나서 GD 설치기를 올려준 블로거분 http://www.postal-code.com/binarycode/..

개발자는 공부와 변화를 두려워 하면 안 된다?

http://itviewpoint.com/tt/index.php?pl=3589 전 두려워 죽겠습니다. 매달 몇권의 트렌디한 기술서적들을 읽어야 하고 더구나 현재 PHP위주의 개발을 하지만 고전적인 C/Java부터 Ruby책도 보고 마이너 랭귀지의 경우 책은 구매하지 않지만 종종 웹사이트에서 정보를 확인합니다. Agile이나 몇년전에 다른 곳에서 떠들던 도요타가 Lean이 되어 돌아와서 괴롭히고. 간만에 VS2008 정보를 접해보니 한동안 보지못한 사이 많이 또 변경된거 같더군요. 새로운 기술이 나오고 새로운 패러다임에 새로운 사상도 나옵니다. 컴퓨터의 발전은 당장은 느린거 같기도 하지만 무어의 법칙이 적용되는지 변화의 속도가 항상 가속되고 있습니다. 문제는 제 머리는 무어의 법칙을 따르지 못한다라는 걸까..

Zend Studio for Eclipse로 PHPUnit 놀이

http://www.zend.com/products/zend_studio/eclipse Zend Studio가 연말쯤 새 버젼을 내면서 Eclipse를 기반으로 할 예정이라고 한다. 더불어 PHPUnit 개발자가 제안해서 PHPUnit의 지원을 제대로 해 준다. http://gendoh.com/2510973 을 할때 물론 PHPUnit 자체가 Test Skelecton 만들기를 제공해 주기는 하지만 커맨드 프롬프트에서 하는 건 역시 귀찮다. 역쉬 IDE에서 해야 :) 텍스트 큐브로 한번 장난을 쳐볼까 한다. 위의 링크에 있는 튜토리얼 동영상도 있겠지만 /lib/database.php에 있는 함수들을 테스트 해 보자. 텍스트큐브의 트렁크 파일들을 받아보자. (http://dev.textcube.org/sv..

PHPUnit에서 Trac까지

이글을 쓰는 시점에서 PHPUnit과 Trac은 완벽하게 붙지는 않는다. 그래도 시늉까지 해 보는 방법을 설명한다. 이후 좀더 깔끔하게 된다면 업데이트 하겠다. 유닛테스팅은 최근의 개발방법론에서 중요한 요소이다. 유닛테스트를 깨지지 않게 하는 것은 코드의 안정성을 유지하는 좋은 방법중 하나이다. 혹은 TDD(Test Driven Development)를 적용하는데도 기본적인 방법이다. CruiseControl을 사용해서 SubVersion Repository를 감시하며 지속적으로 실행하는 방법도 있겠지만 Trac에 바로 통합하는 방법을 설명코자 한다. 목표는 아래와 같다. 커밋이 일어나면 자동으로 유닛 테스트가 수행되고 그 결과가 Trac 페이지에 떡하니 뜨길 바란다. 우선 Trac과 SubVersion..

Greatest problem in computing today

의 저자서문중에 알고리즘을 어떻게 표현할까에 대한 이야기를 하면서 언급한 문서가 하나 있다. Communcations of ACM Volume6, Issue 9(September 1963) : Computer-drawn flowcharts (전문을 보고 싶으면 멤버쉽에 가입을 하셔야 할껍니다.) 대뜸 첫마디가 이렇다. Perhaps the greatest problem in computing today, although little has been written about it, is the need for better documentation of programs.프로그래밍 분야의 역사적으로 가장 중요한 문제임이 틀림없다. 1960년대나 2000년대나 -ㅅ-. PS. 이 페이퍼를 보는대 무려 예제코드가..

Escaping String

CDATA : 스트링 노테이션은 언어를 처음 접할때 찾아보게 되는 중요한 요소중 하나이자 실제 프로그래밍에서도 까다로운 부분임에 틀림없다. SQL Injection 공격도 결국 인자로 받는 데이터를 어떻게 안전하게 이스케이핑 해서 전달하느냐의 문제이고, 블로그에서 댓글을 어떻게 잘 표현할 것인가에 대한 문제기도 하다. 실제로 지금 현재 TextCube 1.5는 댓글이 두번 이스케이핑이 되어 '&'가 '&'로 나온다거나 쌍따옴표(")가 '"'로 나오는 문제가 있다. 수정중이긴 하지만 MySQL, PHP, HTML, JavaScript까지의 연타 상황에서는 쉬운 문제만은 아니다. G-Test도 결국 그런 이유에서 나온 테스트 패턴이다. TextCube Wiki에도 나와 있는 코딩 가이드라인에 이런 내용부터 ..

BSI - Bug Scene Inspector

역시 퍼나르기. 글쓴이: gendoh (ご,ご;;;) [/writers/gendoh] 날 짜: 2004년 11월 10일 (수) 08시 01분 08초 제 목: BSI - Bug Scene Inspector CSI(Crime Scene Inspector)를 보다가 문득 든 생각이 바로 BSI. 살인현장의 증거를 수집하듯... 프로그램을 죽게 만든 버그(살인자)를 찾기 위해 증거를 수집하는 과정이 나름대로 비슷하지 않을 까란 생각이 든다. 1. 살인자를 찾아라. 우선 베이스가 되는 생각은 프로그램이 죽는 이유는 살인코드가 있거나 살인코드들(!)이 있다는 것이다. 의도적이거나(오타, 실수) 사고(Side Effect, Mis-understand 등)에 의한 것일 수도 있다. 아무튼 문제를 일으킨 부분은 존재할 ..

글자 크기

이것도 글꼴 선택과 마찬가지로 상당히 힘들여서 만든 건데(글꼴 선택 만드신 분과 같은 분), 잘 모르시더라구요. 잘 보시면 스마트 에디터의 글자 크기는 다른 곳보다 "더 세분화된 크기단계"를 제공하고 있습니다. 제가 보고 있는 4개의 유명 서비스들은 모두 6단계의 글자 크기를 제공하고 있으며 이는 유명 오픈소스 웹에디터인 FCKEditor 나 TinyMCE 등도 그러하듯이 외국계 어느 에디터, 어느 서비스를 보아도 마찬가지입니다. 기술적으로 말하면 오래된 방식인 font size="1" ~ "7"을 사용하기 때문입니다만, 이번의 에디터에서는 그 한계를 넘었습니다. 필요하다면 36pt 를 넘는 사이즈도, 24pt 와 36pt의 중간 사이즈도 가능합니다. 다른 에디터에서 글 쓰는 도중 글자 크기를 지정하고 ..

코더로서 적응해 간다는 것

최근 윗선의 지시로 TnC의 개발자 선발이 약간 까다로워졌습니다. 뭐 G사만큼은 아니지만 뭐 저도 이런 기술 면접을 받는다면 당혹 스럽지 않을까 합니다. 뭐 면접관의 입장이란게 다행인 것 같습니다. 아무튼 선발기준이 달라져도 가장 첫 질문은 바로 이것입니다. "소팅 알고리즘 몇개 불러보세요." 사실 변경된 조건때문에 개발자를 못구할 수도 있다는 두려움에 윗선의 허락없이 무단으로 정보 누출중입니다. 아무튼 저 질문에 대해 만점은 6개입니다. 앞으로의 괴롭힘 면접에 앞서 몸풀기 문제이자 대학교 처음 들어가서 배우는 것 중의 하나를 질문하여 이후의 질문 방향이 결정됩니다. 참고로, 입에서 "거품"(Bubble)밖에 나오지 않는 사람은 적당히 농담 따먹기 하다가 돌려보냅니다. 반대로 충분한 퀄리티의 답변을 한 ..

무섭고도 어려운 Scalibility

4천만 대상이 아닌 지구상의 모든 인류에 대한 서비스로 커나가려면 결국 4차원 정신세계를 가진 엔지니어부터 구해야 할듯. 관련글 : 거대용량 시스템 아키텍쳐 국내의 대규모 용량 레퍼런스중 하나라면 역시 KT. 전 국민을 한번씩 가입시키고도 남는 고객수를 자랑하는 KT 고객정보. NeOSS(뭔진 전 모름 -ㅅ-)의 스케일 이야기에서 돔냉장고(슈퍼돔) 16대면 64*16= 1024개의 시퓨가 매달려 있다는 소리. 순전히 System Programmer의 입장에서 1024개의 쓰레드가 돌아만 가도 쓰레드 이름 붙이기도 힘든 상황이지만, 반대로 한국의 인구수 별로 안된다라고 느끼는 부분은 SI 돌려서 대애~충 돌아가더라.. 라는 부분. 이베이는 벤더가 돈 꼴아 박으면서 만들었고 마이스페이스는 이베이 우습다 그러..