node.js zlib 스트림의 문제

얼마전에, 회사일로 Git의 pack에서 object를 가져오는 기능을 node.js 기반으로 구현하다가 문제를 만났다. pack은 대략 아래와 같은 포맷으로 구성되어있다. (엉성해서 죄송) ...hhzzzzzzzzzzzzhhzzzzzzzzzzzhhzzzzzzzzz... (h는 헤더, z는 deflate로 압축된 영역) pack파일은 git의 object들을 합쳐놓은 파일이므로, 크기가 굉장히 커질 수 있다. 저장소의 모든 object가 pack 파일 하나에 다 들어가는 경우도 얼마든지 있을 수 있다. 따라서 object하나만 얻으면 되는 상황에서 … node.js zlib 스트림의 문제 계속 읽기

PHP, Perl, Ruby, Python 비교

나는 왜 PHP보다 Python을 좋아하는가? 깔끔한 문법이 일단 매력이지만 그게 다가 아니다. 기능 비교 (( http://en.wikipedia.org/wiki/First-class_function, http://en.wikipedia.org/wiki/List_comprehension, http://en.wikipedia.org/wiki/Mixin )) 일단은 언어의 강력함에서 큰 차이를 보인다. 생산성에 신경쓰는 언어들이라면 당연히 지원해 줄 법한 기능들에 대해 PHP는 너무나도 무심하다. PHP Perl Ruby Python Higher-order functions Arguments Yes Yes Yes Yes Results Yes Yes Yes Yes Non-local variables … PHP, Perl, Ruby, Python 비교 계속 읽기

리눅스의 서브디렉토리 갯수 한계 (ext 계열)

리눅스에서 ext 계열 파일시스템의 서브디렉토리 생성 갯수 한계는 아래와 같다. ext2, ext3: 31998 ((http://en.wikipedia.org/wiki/Ext3)) ext4: 무제한 ((https://ext4.wiki.kernel.org/index.php/Frequently_Asked_Questions)) ext2, ext3 ext2, ext3의 제한에 대한 정의는 리눅스 커널 코드의 EXT*_LINK_MAX 값에 정의되어 있다. 아래는 linux-2.6.32.8에서 grep으로 찾아본 것이다. include/linux/ext2_fs.h:#define EXT2_LINK_MAX 32000 include/linux/ext3_fs.h:#define EXT3_LINK_MAX 32000 이처럼 32000으로 정의되어있다. 그런데 모든 디렉토리는 기본적으로 '.' 과 '..' 의 링크를 이미 갖고 있기 때문에 … 리눅스의 서브디렉토리 갯수 한계 (ext 계열) 계속 읽기

PHP의 당황스런 특징들

PHP는 나름 태생이 특이한 언어다. 현재 웹에서 널리 쓰이고 있는 많은 서버사이드 언어들(Java, PHP, Python, Ruby 등등 ((등등 취급해서 미안하다. perl 그리고 c)) ) - 중에서 거의 유일하게 '진짜로 웹개발에 특화된' 언어다. 그래서 그런건지 PHP는 다른 언어를 쓰다 온 사람들을 희한한 방식으로 깜짝 놀래키곤 한다. 지난 3년간 나를 당황시킨 PHP의 독특한 동작 몇가지를 소개해 보겠다. 0 … PHP의 당황스런 특징들 계속 읽기

프로그래밍 언어들을 한문장으로 소개

Perl Perl is a language optimized for scanning arbitrary text files, extracting information from those text files, and printing reports based on that information. ((man perl)) 펄은 텍스트를 다루는데 최적화된 언어다. Python Python is an interpreted, interactive, object-oriented programming language  that  combines  remarkable power with very clear syntax. ((man python)) 파이썬은 매우 간결한 문법이 특징. … 프로그래밍 언어들을 한문장으로 소개 계속 읽기

코딩 20년

올해는 2011년. 내가 코드를 처음으로 작성해 본 것이 초등학교 4학년때인 91년이니, 올해로 코딩을 20년째 했다는 얘기가 된다. 그렇게 열심히 한 건 아니지만, 어쨌든 꾸준히 하긴 했다. 초등학교때 컴퓨터를 사자마자 베이직을 배우면서 코딩하고, 중학교때 간단한 퍼즐 게임 만든다고 코딩하고, 고등학교때 전산반 들어가서 코딩하고, 대학교때 전자공학부로 입학했지만 컴퓨터공학도 복수전공하면서 코딩하고, 게임제작동아리 들어가서 또 코딩하고, 군대갔을 때는 휴가나와서 … 코딩 20년 계속 읽기