[ruby] ruby 몰입교육중…

May 14th, 2008 No Comments »

회사 업무에, 용도에 따라 주로 다양한 언어를 사용하지만,
한번 쓰고 말거나, 간단한 처리는 주로 perl을 이용한다.
주로 하는 일이 UI가 필요없고,
주로 Unix환경인데다가,
text처리가 대부분이라 regula expression 이 강력해서 perl이야 말로 아주 적격이다.

ruby란 언어를 처음 접한건 1999년도 일본서 공부할때다.
자연어처리 연구실이라 그곳 역서 text처리가 대부분이다.
ruby 공부하던 인간도 몇 있었지만, 그저 취미 일뿐,
실용적인 측면에서는 그 연구실 조차 perl이었다.

그래서 나도 perl을 그곳에서 배우기 시작했다.
Unix + Emacs + Perl.

그랬던 ruby가 몇년 전 부터 하도 유행이라, 나도 공부해 보고 업무에도 적용해 보고 싶었지만,
팀에 초 고수 perl 본좌가 2명이나(noise & gogma) 있는 바람에
혼자서만 ruby코드를 양산할 수 없어서, 나도 친숙하고 모두가 다 아는 perl 이 주종이었다.

최근에 이 둘을 꼬셔서 루비 공부 시작…

꼬시는데 뭐 어려운거 없었다.
황대산 님의 20분짜리 가이드한번 보여줬더니
바로 루비 광신도로 변신…

회사 도서관에 있는 ‘Programming Ruby’를 죄다 빌려다 모두 공부 중.

근데 도대체 대충 읽을 수가 없다.

한줄 한줄 의미를 곱씹으니 아주 오묘하다는 것.
특히 문법 설계가 아주 예술이다.

예전에 신군이랑 메신저로 잠깐 나눴던, Code Block이랑 Meta Programming이 왜 필요한지 왜 써야 하는지 이해가 가지 않았는데,
이것참 물건이다.

당분간 루비 얘기로 블로그가 도배될꺼 같다.

iCal 및 주소록 Sync 솔루션

April 8th, 2008 2 Comments »

logo.gif

얼마전에 iCal 파일 발행 및 구독란 글을 썼다.

그때는 그방법 밖에 몰랐었는데, 얼마후에 박동영 선배한테 Plaxo란 서비스를 소개 받았다.
양방향 싱크 서비스이기 때문에 WebDav로 발행하는거 보다 여러가지 잇점이 있다.

Box.net(WebDav)에 발행

여러 컴퓨터에서 같은 iCal을 볼 수 있지만, 편집은 한 컴퓨터에서만 해야 한다.
매킨토시, Windows Vista의 일정, Google 캘린더처럼 ical을 지원하는 프로그램에 한정.
주소록의 경우 내가 편집한 내용만 반영

Plaxo를 이용한 싱크

Plaxo를 설치한 여러 컴퓨터라면 어디서나 편집 가능하다.
Plaxo가 여러가지 plug-in을 지원해서 많은 플랫폼에서 가능하다.(Mac, 썬더버드, Outlook…)
Plaxo만의 매인 서비스 일 수 있는 , 자기 주소록은 자기가 관리한다. (즉, 내 주소록의 Plaxo를 사용하는 친구가 연락처가 바뀌었다면, 본인이 수정하면 내 주소록에도 자동반영)
단점이라면, 주소록 플러그인이 좀 튄다는 느낌.

내 연락처 중에서는 이건호씨가 이미 사용하고 있었다

iCal 파일 발행 및 구독

March 12th, 2008 1 Comment »

boxnet.png
컴퓨터는 여러대이고, 각각의 일정을 동기화 하기 위해서
주로 사용하는 MacBookPro에서 일정을 관리한다.
MacBookPro의 iCal 캘린더의 ics파일을 .Mac을 이용하면 좋으련만,
워낙 비싸므로, 개인 WebDav 서버가 있으면 이곳으로 발행할수 있지만,
WebDav 호스팅하는 업체는 거의 없는것 같고, 개인 서버로 하기도 그렇고….

해답은 box.net

  1. box.net 에 가입(내가 아는 거의 유일한 무료 WebDav 호스팅 업체)
  2. 일정을 관리하는 컴퓨터에서 ics파일을 https://www.box.net/dav에 발행
  3. 나머지 컴퓨터들은 http://www.box.net/dav/my_calendar.ics를 구독

이렇게 하면 한 컴퓨터에서 정리한 일정을 모든 컴퓨터에 자동 싱크되게 된다.

단점이라고는 구독 받는 컴퓨터에서 일정 편집이 불가능하다는거….

iCal ICS를 지원 하는 프로그램.

  1. Apple iCal
  2. Microsoft Windows Vista의 캘린더
  3. Google Calendar

Mac에서 시리얼 로그 보기

March 5th, 2008 No Comments »

21세기인 지금에도 많은 기계들이 시리얼 포트를 사용하고 있다.

TV나 STB같은 경우는, AS나 디버깅 용으로,
그리고 많은 천체장비들은 아직도 시리얼통신이 주가 아닌가 싶다.

업무상 TV의 시리얼 로그를 봐야하는 경우가 종종 있는데….

맥에서는 여태까지 어떤 프로그램으로 해야 하는지 몰랐는데.

일단
Windows에서는 TeraTerm을 많이 사용하는거 같은데
Mac용으로는 어떤프로그램으로 보는지 몰랐다.

시리얼 로그를 보는 프로그램으로는

  • Minicom
  • Zterm
  • Screen

이 있고

minicom이 가장 낳아 보였고, 간결함은 screen이 압도적인거 같다.
심지어 screen은 설치도 필요없이 기본 내장이다.

Mac에 시리얼 포트가 없으므로 USB2Serial 젠더로 연결하고 해당 드라이버를 설치하면
/dev/tty.usbserialXXXX 라는 디바이스가 보일 것이고

$screen /dev/tty.usbserialXXXX 9600

HDR Image - 한강2

January 29th, 2008 No Comments »

어제 올린 한강 HDR 사진을 올리다가 문득 똑딱이(Canon ixus960)으로 HDR을 해보면 어떨까 하는 호기심에서 도전….

어제 사진이 5D과 EF 24-70mm f/2.8L USM 의 합작품이라면,
지금 사진은 ixus 960 사진이다.
작게 리사이징 한 사진에선 ixus960도 뭐 충분히 쓸만하단 생각
comparison.jpg

잔인하게 디테일 사진을 보면, 물론 차이 많이 난다.
가격이 딱 10배 차이나는 시스템인거 고려하면, 이정도 쯤의 차이는 당연할지도.

안그려면, 5D가 서운해 할꺼기 땜시…

OpenSSL with SEED

January 9th, 2008 No Comments »

업무에 SEED가 적용된 OpenSSL이 필요해서 (TCommerce시험),
그동안 퍼키님이 만들어 주신 패치를 이용해서 너무나 감사히 잘 사용해 왔다.

하지만 특정버전에 의존관계가 생겨서 계속 openssl에 seed가 적용되길 늘 기다려 왔고,
seed 가 들어갔다는 글도 예전 부터 보아 왔지만,
오늘 드디어 0.9.8g 버전을 깔아보니 드디어 들어간 걸 내눈으로 확인 할 수 있었다.

그냥 make만 하면 안되고, 명시적으로 enable-seed라고 config 옵션에 넣어줘야 한다.

$./config enable-seed
$make
$sudo make install
$
$sudo mv /usr/bin/openssl /usr/bin/openssl.old
$sudo ln -s /usr/local/ssl/bin/openssl /usr/bin/openssl
$ openssl ciphers
DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:AES256-SHA:EDH-RSA-DES-CBC3-SHA:
EDH-DSS-DES-CBC3-SHA:DES-CBC3-SHA:DES-CBC3-MD5:DHE-RSA-AES128-SHA:
DHE-DSS-AES128-SHA:AES128-SHA:DHE-RSA-SEED-SHA:DHE-DSS-SEED-SHA:SEED-SHA:
IDEA-CBC-SHA:IDEA-CBC-MD5:RC2-CBC-MD5:RC4-SHA:RC4-MD5:RC4-MD5:
EDH-RSA-DES-CBC-SHA:EDH-DSS-DES-CBC-SHA:DES-CBC-SHA:DES-CBC-MD5:
EXP-EDH-RSA-DES-CBC-SHA:EXP-EDH-DSS-DES-CBC-SHA:EXP-DES-CBC-SHA:
EXP-RC2-CBC-MD5:EXP-RC2-CBC-MD5:EXP-RC4-MD5:EXP-RC4-MD5
Cipher commands (see the "enc" command for more details) 
aes-128-cbc aes-128-ecb aes-192-cbc aes-192-ecb aes-256-cbc aes-256-ecb 
base64 bf bf-cbc bf-cfb bf-ecb bf-ofb cast cast-cbc cast5-cbc cast5-cfb cast5-ecb 
cast5-ofb des des-cbc des-cfb des-ecb des-ede des-ede-cbc des-ede-cfb 
des-ede-ofb des-ede3 des-ede3-cbc   des-ede3-cfb des-ede3-ofb des-ofb des3 
desx idea idea-cbc idea-cfb idea-ecb idea-ofb rc2 rc2-40-cbc rc2-64-cbc rc2-cbc 
rc2-cfb rc2-ecb rc2-ofb rc4 rc4-40 seed seed-cbc seed-cfb seed-ecb seed-ofb

iPod touch 프로그램 설치 공간 확보

January 8th, 2008 3 Comments »

iPod touch를 jail break하고 난후 BSDSubsystem 만 달랑 깔고, ssh 로 접속후 df 해보니 담과 같다.

# df
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/disk0s1            307200    278396     25732  92% /
devfs                       15        15         0 100% /dev
/dev/disk0s2           7622368     28144   7594224   1% /private/var

즉 app + os 용으로 할당된 파티션은 벌써 92%나 차 있다.
그리고 perl등을 installer로 깔면 100% 설치가 안된다.

고로 해결책은

cd /
mv Applications /private/var
ln -s /private/var/Applications Applications

해줘야 touch 용 어플리케이션을 마음껏 사용할 수 있게 된다.
foo_1.png

여기(야옹이님)에서 좀 더 많은 공간을 확보할 수 있는 팁이 있다.

iPod touch 1.1.2 탈옥기

January 8th, 2008 2 Comments »

alexken의 새 장난감
지난 10월달 콜로라도 출장때 applestore에서 iPod touch를 샀다.
iPhone과 touch 사이에서 1시간을 넘게 고민하다가, 카메라는 별 필요가 없고, 전화는 무용지물이고, bluetooth 때문에 10만원이란 거액과 저울질 하다가 bluetooth가 되어도 keyboard는 사용할 수 없다는 이유로 touch로 결정.

사자마다 1.1.1 jailbreak 해서 재밌게 잘 사용하다가, 어느날 우연히 iTune가 1.1.2로 업글 하겠냐는 메시지에 무심고 OK.
바로 밋밋한 오리지널 touch로 복귀후 한달 이상을 처박아 놓고 사용않다가, 최근에 다시 이것저것 설치후 휴대용 웹브라우저+장난감으로 사용중…

웹에 글들이 Windows기준이라, 다시 정리.
1. iPod touch 종료
2. 슬립+홈 버튼을 누른채 10초후 슬립버튼만 해제
3. 복구 모드로 iTunes 실행
4. option + 복원 클릭(Windows는 shift + 복원 클릭)
5. ~/Libraries/iTunes/iPod Software Updates/에 백업되어 있는 1.1.1 이미지로 복원
6. iPod에서 safari 실행후 http://jailbreakme.com에서 Installer 설치
7. Installer 로 Tweaks(1.1.1)안에 있는 OktoPrep 설치
8. iTunes에서 1.1.2로 업데이트 후 iTunes 종료

9. 1.1.2용 jailbreak download 후 안에 있는 jailbreak.jar 더블클릭
(http://conceitedsoftware.com/iphone/site/112jb.html 에서 다운)
jail2.png
10. http://codedesign.tistory.com/16 에서 한글 입력기 설치
(두번의 재시동 꼭 지켜야 함 - 이거 땜에 복원만 두번함.)
10. http://repo.us.to에서 iPhone 용 프로그램 설치
11. Unix subsystem 설치
12. iPod touch 프로그램 설치 공간 확보 에 있는 글대로 설치 공간 확보
13. Perl설치
- Installer 로 perl 설치 (PATH에 대제로 추가되지 않는거 같음.)
- ssh 로 접속
- vi /etc/profile 에서 PATH opt/iphone/bin 추가

* 벽돌시 복구 방법 : http://blog.kimtree.net/19
Continue reading »

Windows Live 뭐시기들을 좌악 깔았다.

November 27th, 2007 No Comments »

write_01[1] 우연히 철수네 갔다가, Windows Live Suite beta 발표 소식을 들었는데,
한글 판에 그토록 원하던 Writer가 포함 되었다.

이전 영문 beta 2 때 한글 지원에 실망하고, 간혹 기존에 포스팅했던 글까지도 깨트려 먹어서 열받았던 차에, 한글로 제대로 지원하면 그 때 써야지 했는데, 그때가 지금인가 보다.

근데 trackback 은 메뉴에서 어떻게 거는건지???? 아직 못찾았다.

암튼 방갑다.


Writer.

[java] reflect on java

November 13th, 2007 No Comments »

회사서 Class를 조사할 일이 있는데 reflect를 까먹어서 한동안 googling 해서 다시 학습…

java.lang.String의 method를 출력하는 루틴의 골자만 요약하면….

import java.lang.reflect.*;

public class ClassExam{

    public void printClassInfo(String className){
        try{
            Class a = this.getClass().getClassLoader().loadClass(className);
            Method[] methods = a.getDeclaredMethods();
            for(int i=0; i<methods.length; i++){
                System.out.println(methods[i].toString());
            }		
        }catch(Exception e){
        }
    }

    public static void main(String[] args){
        ClassExam a = new ClassExam();
        a.printClassInfo("java.lang.String");
    }
}