Egloos | Log-in


nmap 7.70 update

최근에 nmap이 업데이트되었는데, 역시, ubuntu에서는 apt upgrade가 지원안되어서 source로 인스톨하였다.


혹시, 보안관련 체크일이 필요한 분들이라면, nmap을 업그레이드하기를 권한다.

nmap의 기본 기능만으로도 유익하기는 하지만, 다양한 nse script를 사용하는 편리함도 있는데, 

이전 nmap에서는 실행이 되지 않는 스크립트들이 있다.


찾아보니, 최신의 NSE(Nmap Script Engine) script에서 lua 5.3에서 부터 지원되는 operator('//')를 쓰는 경우가 있는데, 이게 old versin nmap에서는 안된다.

nmap은 lua interpreter를 nmap 내부에 내장한걸 쓰기 때문에, 시스템의 lua를 업데이트하는 것만으로는 적용이 되지 않기 때문이다.


http://seclists.org/nmap-announce/2018/0


by 코퍼스 | 2018/04/11 15:11 | IT | 트랙백 | 덧글(0)

Devel::REPL 환경 꾸미기

Devel::REPL은 Perl에서 인터렉티브한 쉘환경을 제공하기 위해 나온 모듈이다.

Lua, Python, Ruby 처럼 언어 자체에서 지원하는 것이 아닌, 외부 모듈로 제공되고 최근에 나온 것이지만,
그 만큼 여러 편리한 기능들이 제공되기도 한다.

관련 설명을 더 알고 싶으면, 걍 아래 링크를 참고.

쉽게 얘기하면, 관련 모듈을 불러서 자신만의 필요 설정을 추가한 작은 스크립트 파일
(보통 re.pl이라 불리며, 해당 모듈을을 인스톨하면 sample script도 같이 깔린다)을 실행해서
자신만의 interactive perl 개발/테스트 환경을 쓸 수 있다는 것.

여기서 쓸 내용은, 플러그인 외에, 자신만의 여러 설정을 추가하는 법이다.
(예를 들어, 기본적으로 V5.10으로 설정하거나, 특정 모듈을 미리 불러 놓는 등의)

이게, 예전의 Devel::REPL을 쓰는 것과, 이 환경을 더 편하게 쓰게 해준답시고(?) 나온 
Devel::REPL:Script 가 약간 다른 면이 있어서 이 부분을 기록해두려 함.

우선, 아래는 Devel::REPL 모듈을 불러서 만든  re.pl 스크립트.
내가 미리 불러쓰고 싶은 모듈을 아래처럼 셋팅할 수 있다.


아래는 Devel::REPL::Script를 불러 쓸 때의 경우는
개인 설정을 $HOME/.re.pl/repl.rc 라는 파일로 만들고, 그 안에 넣어두면 된다.
아래는 나의 개인 설정.
1177 $ pwd
/home/junhongk/.re.pl

junhongk@sw02.dasannetworks.com [ ~/.re.pl ]
1178 $ cat repl.rc 
use v5.10;
use Data::Dumper;

그리고, re.pl 은 아래처럼 짜두면 된다(확실히, 코드는 더 짧아짐)


그리고, 내 설정파일에서는 plugin이 생략되어 있는데, 
아래 깃헙이나 cpan 사이트 등의 내용을 참고하면 좋을 듯.
http://search.cpan.org/~garu/Devel-REPL-Plugin-DataPrinter-0.007/lib/Devel/REPL/Plugin/DataPrinter.pm
https://gist.github.com/diegok/1312892

by 코퍼스 | 2018/03/23 14:23 | IT | 트랙백 | 덧글(0)

modern perl 스타일로 한글 자르기

Perl Cookbook 2nd edition에서 유니코드 핸들링 참고

use v5.10;
use Encode;

my $kor = decode 'utf-8', "안녕하세요 Hello";
say encode 'utf-8', $kor;

my @lx = $kor =~ /(\X)/g;
say "length is " . scalar(@lx);
say encode 'utf-8', $lx[0] 

결과는 아래처럼
>>
안녕하세요 Hello
length is 11

by 코퍼스 | 2018/03/23 14:02 | 트랙백 | 덧글(2)

Lua 5.3.4 를 임베디드 시스템에 포팅하면서 느낀 점

최근에 문서작업을 많이 한 탓에 데어서 그런지, 나이 들수록 게을러 지는 건지.. 글 쓰기가 점점 더 싫어지지만,
뭔가 작업이 끝났을 때, 느낀 감상과 경험들을 글로 남겨두니 많은 도움이 되니.. 
귀찮음을 무릅쓰고 글로 남긴다.

. Lua 자체는 포팅이 매우 쉬운 언어이다.
 사이즈도 작고, 빌드 환경도 Makefile 밖에 없으니 더더욱 쉽다.

. 그런데, Lua 5.1 만 해도, Makefile에서 CC 를 target h/w에 맞는 컴파일러로만 맞춰주고, 
 make posix 해주면 되던데, 지금은 좀 까다로워졌다.
 터미널의 입력 키에 관해 편리한 기능(history 기능이 강화됨)이 들어갔는데, 이게 readline library를 이용하는 것이더라 
 그래서, target 머신에 맞게 미리 빌드된 readline library를 다시 링크시켜 주고, 또, ncurses 라이브러리를 링크시켜주어야 함.
 그리고, 'make linux' 해주면 된다.
 이게 귀찮으면, 'make posix'로 하면 되기는 한데, 막상, 타깃 장비에서 돌려보면, lua shell에서 backspace 조차 먹지 않는다.
 뭐, 스크립트 자체를 실행시키는데는 문제가 없기는 한데, 뭔가 묘하게 신경 쓰여서 시간을 들여 수정했다.

. 타겟 장비로 포팅할 때, 제일 중요한게 데이터 size 이다.
 기본 설정이 64bit 이기 때문에, 타깃 머신이 32bit 머신이라면 이걸 수정해주어야 함.
 (Makefile 내의 CFLAGS 에 '-DLUA_32BITS'를 넣어줘야 한다)
 아~ 그넘의 'readline' 라이브러리의 헤더화일 위치 이슈 때문에, 이것도 본인의 
 cross toolchain에 맞는 위치를 수정해주어야 한다.
  ==> lua.c 에서 기본이 '#include <readline/readline.h> ' 이기 때문.

. 이런 부분만 해결되고 나니, MIPS 용과 PPC 용으로의 빌드는 순조롭다.

. 다만, 이것만으로는 뭔가 부족하고, 좀 더 serious한 프로그래밍을 스크립트 기반으로 하려면, 
 posix 라이브러리도 포팅해야 한다(예를 들어, signal 처리를 하거나, sleep 함수를 쓰려면)
 lua용 posix 라이브러리를 따로 받은 다음에 아~주 약간의 touch를 해주어야함.
 
. 내 경우에는 'unistd' 부분 때문에 고생.
 타깃 머신용 toolchain이나 OS 레벨에서 지원안되는 건 과감히 주석처리해 버리니 pass.

. 이게 되고 나면, 각 arch(mips/ppc) 용 디렉토리 만들고 나서, 각각에 luarcoks를 인스톨하고, 
 luarocks의 설정파일에 환경(디렉토리 등)만 맞추어주면 이 외의 라이브러리들은 전부 자동으로 다운받고, 
빌드, 인스톨까지 되니 참 편하다
 
. 참고로, luarocks 는 Python의 pip, Perl의 cpan 같은 도구이자 repository 이름이다.

. 또 하나, 개발서버의 내 계정에 luarocks를 여러 환경에 맞추어 쓰려 했더니, 잘 안되더라.
  특히, 5.2 버전은 뭐가 문제인지 계속 실패가 되던데,
  5.3.4 에서는 오히려 그냥 되버림.
  그리고, 옵션에 따라, 설정 파일들을 여러 벌을 쓰게 하기에는 오히려 복잡해져서, 
  각 타겟디렉토리( mips 환경, ppc 환경)에 별도로 각각 luarocks를 인스톨해서 쓰는 방식을 취했다.
  이게 제일 속 편한 방식이더라.

. 그런데, 이 luarocks가 바보(?)처럼 CC 정보를 설정에서 읽어들이지 못하더라.
 그래서, luarocks를 실행 할 때, 환경변수로 CC를 각 타깃에 맞는 cross tool로 선언해 주어야 한다.

예를 들어, 난 mips_install/ 에 mips용 lua와 라이브러리 그리고 다른 모듈들이 인스톨되게 꾸며놨는데,
이때, luarocks를 아래처럼 wrapping한걸 만들어 썼다

1113 $ cat mips.luarocks 
#!/bin/bash
export CC="/opt/eldk_4.1/usr/bin/mips_4KC-gcc"
export LD=/opt/eldk_4.1/usr/bin/mips_4KC-ld

/home/junhongk/Work/Lua/mips_install/bin/luarocks $@

그 다음에, "mips.luarocks install lpty" 등으로 쓰면 된다.



  

by 코퍼스 | 2018/03/23 13:24 | IT | 트랙백 | 덧글(0)

15년여만의 Web Crawler(웹크롤러) 리뷰


요새 'crawler' 관련 강좌가 눈에 많이 띄기도 하고, 아주 가~끔 써먹기도 해서
요즘에 소개되는 웹크라울러 소개 내용이나 Tip들을 리뷰해보았다.

원래는 PPT 자료로 만들어서 slideshare 등에 올릴까 하다가, 주말지나고 나서 의욕이 사라졌지만,
최소한의 것 정도는 기록에 남기려고 적는다.
(웹.알.못인 주제에 아주 살짝 훑어보고, 테스트 해 본 거라 잘못된 것이 당연히 있을 수 있다.)

. 요즘에 소개되는 crawler 강좌 들은 엄밀히 말해서, crawler를 만든다기 보다는
 Web automation or web scraping 에 관련된 tip 들이더라. 
 제대로 된 웹크라울러를 만들려면, 하이퍼텍스트 다큐먼트들간의 네트워크 구조에 대한 고려(알고리즘 설계)와
 시스템 프로그래밍(분산처리 등) 스킬도 중요한 데, 그런건 없더라.
 굳이 말을 만들자면, 웹크라울러 기초 강좌 정도 되겠더라.


. Javascript에 의한 동적페이지 컨트롤 때문에, 보통 Selenium을 이용한 방법들이 많이 소개되는데,
  개인들이 특정한 목적에 사용하기에는 나쁘지 않은 방법이라 생각이 든다.
 

. Selenium을 쓰기 위해서, 예전에는 Selenium server를 가동시킨 뒤, 클라이언트를 만들어서 접속시켜
  웹브라우저를 제어하는 방법이 주로 쓰였는데, 
  요즘은 서버 없이 Chrom이나 Firefox를  직접 제어하는 모듈이 많은데, 이것도 개인들이 사용하기에는 오히려
  편리한 것 같다.
 

. 예제로 많이 쓰이는 것들이 Google이나 Naver로 접속해서 검색하고, 그 결과 가져오는게 많은데,
  사실 이런건, 예전의 웹접속 모듈써도 다된다.
  본인이 거의 17년(?)정도 전에 LWP로 만든 코드도 잘만 동작한다.  Python의 scrapy 같은 코드들도 잘 동작한다.
 

. 따라서, scraping만 할거라면, 그리고, 해당 작업이 이벤트 성이 아니라 주기적으로 많은 양을 스크래핑해야 한다면,
  시간이 걸려도, 웹문서를 파싱해서 처리하는게 나을 듯 하다.
 (뭐, 서버가 빵빵하면야..)


. Selenium 기반의 Chrom/firefox 제어 모듈을 사용하는 예제들은 Python이 제일 많던데, Perl 쪽 모듈도 나와있어서
  거의 동일하게 쓰일 수 있다. method들도 Selenium에서 제공하는 것들을 wrapping한 것이라 언어별 차이는 별로 없더라.
  (Javascript, Perl, Python, Ruby, autoit, Java,등등 본인 손에 익은 것 쓰면 되겠더라)


. 처음 프로토타입을 만들때는, 크롬이나 파폭, IE 등을 직접 띄운 다음에 디버깅하면서 만드는게 당연히 좋겠지만,
  코드가 완성된 다음에는 PhantomJS 같은 headless browser를 쓰는게 컴퓨터 리소스 활용 측면에서 낫겠더라.


. 외부 웹브라우저 종류(Chrom, Firefox, phantomJS 등)에 따라 약간씩 의도치 않은 결과를 내는 수가 있더라.
  이게, 개인별 설정, 외부 App을 추가하거나 등등의 이슈인 경우도 있기에 좀 신경쓰이는데, 이런것들은 그때그때 알아서 해야 할듯.
  오히려, PhantomJS가 이런면에서는 오동작이 적더라, 
  (다만, 초기 개발할 때 좀 번거로울 수 있더라)


. Selenium을 사용하는 건 메모리 자원이 많이 든다. 생각보다 많이 든다.
  VM에서 쓸거면, 메모리할당을 많이 해야 한다.
  개인PC에서라면, virtualbox 기반은 테스트 정도면 모르겠지만 본격 사용은 비추다. 
  

. 웹을 억세스하면서 어떤 동작을 취하고, 그 결과를 기다리는 일련의 과정이기 때문에, 꼭 timeout을 넉넉히 셋팅해야 함.


. 또다른 측며으로는, 너무 빠른 웹페이지 억세스는 상대측 서버에 부하를 주기도 하거니와 공격으로 오인받아 블럭당할 수 있기에,
  waiting time을 넉넉히 줘야 한다.
  

. 전반적으로 한글을 입력해야 할 일이 있을 때, 유니코드 핸들링 때문에 까다로울 수 있는데,
  Python은 그냥 Python3로, Perl을 쓸때는 'use utf8' 프라그마를 켜놓고 쓰는게 속편하다.


. 처음에는, 문자열 처리를 많이 할거면, 아무래도 Perl이 나으리라 생각했는데, 다시보니
  요즘에는 웹문서를 다 고유의 파싱모듈을 써서 처리한다.
  Perl이라면 HTML::TreeBuilder 등의 HTML 모듈, Python이라면 이름도 이쁜 BeautifulSoap 등등..
  그냥 손에 익은 언어에서, 사람들이 제일 많이 쓰는 모듈 쓰는게 속 편할 듯.


. 본인이 웹쪽 일을 안하기 때문에 인식을 못하고 있었는데, 
  십여년전과 달리, 웹페이지들이 요즘은 자동으로(그리고, 여러 목적으로 인해) 간단해 보이는 웹문서들도 내부 소스는 엄청 복잡하더라.
  더더욱 파싱모듈을 사용하는게 맞는 것 같다.
  

. 예전에는 몰랐는데, Xpath(XML Path Language)라는 게 있더라.. 
  요즘 복잡한 웹페이지에서 특정 element를 억세스하는데 있어서 Xpath를 쓰는게 제일 낫더라.
  그리고, xpath는 크롬/파폭에서 개발자도구('F12' 버튼)로 쉽게 확인이 가능하니, 이런식으로 접근하는게 나같은 웹알못에게는 제일 나은 듯.


. 정리하면, 개인이 작은 목적으로 웹스크래핑 등을 하기에는 참 좋은 환경이다.
  수 많은 모듈, 도구들이 지원되니까..
  반대로, 본격적인 웹크라울러를 만들기에는 예전보다 더 어려운 세상이 되었다. 투자리소스와 기간이 더 길어질 듯.
  아직도, 은근(?)히 웹크라울러에 대한 수요가 있으니까(자리는 적지만 pay는 쎄다. 기술장벽이 높기도 하고). 
  이쪽에 관심이 있으면 꾸준히 공부해 보는 것도 나쁘지 않을 듯.

by 코퍼스 | 2018/01/16 11:45 | IT | 트랙백 | 덧글(0)

의권의 '사여'


"참공에 의해 '몸이 쇠처럼, 몸에 납을 부은 것 처럼, 근육이 한 덩어리가 된 것처럼, 모발이 창 
이 된 것처럼(體整如鑄, 身如鉛灌, 肌肉如一, 毛髮如戟)'된 경지, 즉 사여(四如)의 경지에 도달해야 비 
로소 권법에 대해 이야기할 수 있다."

=========================================================
우선은 옮겨 놓고, 나중에 시간날때 글을 좀 달아야 되겠다.

10년간 운동을 안하다가,, 1년여 부터 다시 운동을 시작하면서 많은 깨달음(?)을 얻었다.
내가 배운게 부족했고, 나의 이해가 잘못된 면이 많았었다는 걸..
냉정하게 얘기하자면, 그때 가르쳐주셨던 분들이나 관련 글들을 썼던 분들도 이해가 좀 부족했던 면이 있다.
물론, 당시의 내 이해력과 훈련이 부족한게 제일 컸고.. ㅠㅠ

by 코퍼스 | 2017/06/15 11:17 | 몸공부/마음공부 | 트랙백 | 덧글(0)

왕향제 소년시절 일화

아래의 사이트에서 퍼왔습니다.
일화 자체 보다는, 아래에 나와 있는 '오행'에 대한 설명이 마음에 들어서요
그런데, '조금만 움직이면 담뱃대로 후려쳤다'라는 얘기는, 의례 이런류의 정적 수련을 하는 일화에 따라붙는 과장법이죠.


http://soohyun.compuz.com/zboard/view.php?id=taijiboard1&page=3&sn1=&divpage=2&sn=off&ss=on&sc=on&select_arrange=hit&desc=desc&no=5181



곽운심은 말년에 자기 아들과 왕향제를 가까이하고 지냈다. 또한 가끔씩 와서 배우는 꽤 유명한 제자들도 있었다. 곽공의 아들 곽호 이분은 권법에 그렇게 열심이지 않았다. 어느날 왕향제가 오행권중 벽권을 연습하는데 전진력(삼체식에서 전진식)이 너무 강하여 천으로 만든 신발이 쫙 찢어졌다. 이에 나름대로 미립을 터득했다고 생각한 왕향제 소년이 곽호한테 "사형 내가 붕권을 연습하는데 기운을 얻어서 신발도 찢어졌어" 곽호가 "그럼 그걸로 나를 쳐봐라"

왕향제 소년이 돌진하여 붕권으로 곽호의 가슴을 쳤는데 곽호가 손을들어 왕향제의 손목을 탁 한대 치자 도리어 왕향제 소년이 어떻게 당한지도 모른채 바닥에 주저앉았다. 서 너번 덤벼서 똑같은 일을 당하자 "사형이 쓴 권법은 무슨 권법입니까?" 곽호는 웃으면서 "형의권 이야." 

여기서 이상하다고 느낀 왕향제는 사부님이 자기들한테는 형의권의 진수를 가르켜주지 않는다고 생각하게됐다. 왕향제는 제자들중에 나이도 제일 어리고 형의권을 연습하여 진도가 빨랐고 총명, 영리하여 곽공의 사랑을 받았다 한다. 곽공은 자신이 수련할때에는 동네 인적이 없는 묘지에서 깊은 밤중에 홀로 연습했고 제자들을 비롯하여 아무도 가까이 오지 못하게 하였고 동네 사람들도 곽공이 성격이 괴퍅하고 사람을 죽인적이 있다는 사실을 알기에 아무도 가까이 가려 하지 않았다. 

어느날 어린 왕향제가 사부님 생각이 나서 걸치는 옷 한벌을 들고 묘지로 갔다. 그런데 곽운심은 자기들이 배우던 형의권과는 다른 동작으로 서있지 않는가. 한참 지켜보다가 바스락 소리를 냈다. 곽공이 "누구냐!" 그래서 들켰는데 어린 왕향제가 추위때문에 콧물도 흘리고 얼굴도 빨갛게 언것을 보았고 또 손에 든 옷을 보자 사연을 짐작하였다. 그리고 말년에 얻은 아들도 낙마하여서 죽었을때 왕향제의 효심에 감동하여 그를 자기의 마지막 제자로 생각하여 자신의 비전절기를 전했다. 

왕향제가 묻기를 "왜 사부님이 하시는 권법은 저희랑 틀린것입니까?"
"오행권은 여러 사람들의 권유에 못이겨 만든것이고 원래는 형의의 오행의 힘에 근거하여서 만든것이다." 
"그러면 오행의 힘이라는것은 정확하게 어떤것입니까?" 

"木은 신체의 모든 관절이 항상 나무처럼 구부려지고 또 나무의 꿋꿋한 뻗음처럼 구부림속에 
내뻗음(내뻗음-신근발골)을 항상 간직하라는 이야기이다. "

"土는 찰흙처럼 방송하고 움직임과 정지함이 들뜨지 않고 가라않고 두껍고 무거운 힘이다." 

"金은 쇠의 뾰족함을 일컫는 말이다. 힘을 쓸때에 관절들이 튀여나가는것. 힘쓸때의 강함이다." 

"火는 불똥이 몸에 튀었을때의 반응처럼 급하고 빠른 힘이다." 

"水는 힘을 쓸때 끊김이 없어야 하고 동작에 형태를 지어놓지 말아야 한다."

" 이런 다섯가지 힘들이 상부상조하여 항상 같이 있어야 한다."
"5행 12형의 힘은 참장에서 얻으며 참장이야말로 형의권의 무상절학이다." 

이리하여 왕향제는 그때부터 참장하는 법과 다른 여러가지 단련법들은 6시간씩 배우고 
곽공은 마루에 앉아서 왕향제가 조금이라도 움직이면 담뱃대로 쳤다고 한다. 



출처 - 초당야화   글쓴이: Lich  

by 코퍼스 | 2017/06/15 11:09 | 몸공부/마음공부 | 트랙백 | 덧글(0)

파이썬으로 작은 프로젝트를 진행해 본 소감

예전에 페북에 올렸던 단상인데, 그냥 백업용으로 여기에 다시 적는다.

오래간만에 개발 관련 포스팅.
(쓰기 귀찮은 마음도 있지만, 필 받았을 때 무언가 글로 남겨두고 싶어서리)

회사 업무의 일환(?)으로 네트워크 단말기들을 에뮬레이팅 해주는 
프로그램을 구현해야 되었다.

즉, 개별 mac 주소를 가진 수백개의 단말기들의 서버와의 인증과정(EAP 기반)을 수행할 수 있어야 한다는 요건이었는데,,

일 자체가 맥주소 변조와 패킷 스니핑, 인증 과정과 해당 프로토콜 구현이라,
hacking이나 해킹탐지 관련 솔루션 중에서 도움 될 만한 넘을 찾다가..
scapy라는 Python 기반 tool/library를 찾게 되었고,
이번 참에 파이썬도 한번 익혀보고자 해당 모듈로 업무를 진행했다.
(테스트로 2K개의 단말까지 커버하는 걸 보고, 순간 놀랐다
내가 짠게 이렇게 잘 돌아갈리가 ??, 
아직도 최대 성능은 잘 모르겠다.)

오랜시절 골수 Perl빠인 사람으로서 파이썬으로 실무를 해보면서 느낀 점들도 있지만,
트롤링될만한 요소들은 되도록 pass하려 한다.

다만, 몇 가지 느낀 점들을 적어보면,

. 파이썬도 쓸만하더라.. ㅋㅋ 이건 골수 Perl 팬으로서의 입장이니, 파이썬 애호가분들은 
괜히 눈 치켜 뜨지 마시길,,
확실히, 학습곡선은 Perl보다 낮은 것은 사실인 것 같다.
다만, 기존 모듈을 이용해 문제를 해결하는 수준을 얘기하는 것이지, 본인만의 잘 구현된 모듈 등을
만들기 위한 학습량은 결코 작지 않다는 것. 예전에 들었던 것보다, 언어의 스펙자체가 꽤 크다는 생각이 들었다.

. 다만, 텍스트 프로세싱 만큼은 Perl에 비해 뭔가 번잡스러운 느낌이 들었다.
앞으로도 텍스트처리는 Perl로 계속하게 될 터이지만, 이건 어디까지나 상대적인 것이다.

. 파이썬의 스레드는 GIL 기반이라 태생적인 성능 한계가 있지만, 반면에, 서너개의 스레드를 만들어 처리하는 것은
그만큼 쉽게 처리할 수 있다. 내 경우에는 처리하는 방식의 설계를 많이 고민하기는 했는데, 
메인스레드 3개로 일을 나누어서 처리했는데, 예상(워낙 안좋은 말이 많아서리) 보다는 쓸만하더라는..것.

. scapy라는 모듈은 굉장히 훌륭한 툴이자 개발프레임워크이긴 한데, 막상 내 입맛에 맞게 하는 것은
예상만큼은 쉽지 않았다. 일종의 허들 같은 진입장벽이 되는 부분이 좀 있다는 것.

. scapy는 파이썬 2.7 기반이라는 것, 현재 파이썬 3.x 대로 다시 개발되고 있는 것 같은데,, 
앞으로 1~2년은 좀 더 기다려야 되지 않을까 싶다.

. 파이썬 2.7의 print 를 쓰면서, 그 어색한 용법을 느끼며, 왜 귀도 아저씨가 기어코 버전 3에서 함수형식으로 바꿨는지 이해가 가더라.

. 사실, scapy 같은 환경을 Perl로 능히 할 수 있긴 하다.
좀 부실해보이지만 진짜 필요한 건 다있는, scaperl이라는 넘도 있고, 
기존의 REPL(인터렉티브쉘) 환경에서 Net, pcap 모듈을 연동해도 될 것으로 보였으니까.. 
이 부분은 언제 한번 개인적으로 시도해 보고 따로 포스팅하고 싶다.

. 지금 시대에 어느 언어가 좋으니, 나쁘니 하는 건 별 의미없는 것 같기도 하다
나름 다 장/단점이 있고, 어느정도 성숙된 결과, 거의 비슷한 성능과 생산성을 가졌으니,,
결국, 각자의 스타일대로, 처한 환경(협업 등)에 따라 쓰면 되는 것일 뿐

. 여러개의 프로그래밍 언어를 일정 수준 이상으로 익히는 것은, 단지 쓸 수 있는 연장의 숫자가 늘어나는 것이 
아니라 일종의 안목과 생각하는 깊이를 성장시키는 것 같더라는..

. 그럼에도, 불구하고 나이가 들어서인가? 예전처럼 새언어와 기술을 공부하는게 마냥 즐겁지는 않고,
뭔가 덤덩하고, 이슈가 생기면 기계적으로 분석해서 처리해 나갔다. 
아.. 옛날처럼 뭔가 막 흥분되고 재미있지가 않아..

by 코퍼스 | 2016/06/28 17:29 | IT | 트랙백 | 덧글(1)

개성공단 북측 근로자 임금 흐름도

개성공단의 북한 근로자 임금의 대부분이 북 노동당으로 흘러들어가서 핵이 되었고, 미사일이 되었고 어쩌고 하는데..

참,, 다 떠나서,,매년 600억 내외의 돈으로 몇 년 동안 알뜰살뜰 모아서 북쪽 애들은 잘도 만들었구나.. .

이미, 이 사항은 십 여년전에 논파된 사항인데도 '아님 말고 식'으로 또 떠들어대는구나..

그리고, 보수를 표방(자기들이 보수인줄 아는)하는 인간들도 무엇이 핵심인지 놓치고 있는 것 같다. 참, 답답하고, 한 치 앞을 안보는 
헛똑똑이들이 참 많은 것 같다.





아~~ 이글루스 살벌해졌네..^^

by 코퍼스 | 2016/02/16 11:18 | 이것저것 | 트랙백 | 덧글(6)

펄 크리스마스 캘린더에 기사 실음


드디어 나두 펄크리스마스 달력에 기사를 실었다.   Perl을 이용한 Excel 자동화에 관련된 기사로.
그간,  Perl 커뮤니티의 컨퍼런스나 세미나 등에서는 빠지지 않고 발표도 하고 그랬는데, 희한하게도 펄 크리스마스 달력에는
글을 싣지 못하였는데 이번에 소원 풀이 함.

특히, 편집해주신 Keedi님의 세밀함에 감동 먹음.


다른 재미난 기사들도 많으니 참고바람.
http://advent.perl.kr/2014/2014-12-04.html


by 코퍼스 | 2014/12/04 13:58 | IT | 트랙백 | 덧글(1)

◀ 이전 페이지          다음 페이지 ▶