Hanury.NET Widget

June 30th, 2006 View Comments

HanuryWidget

디카 리뷰 사이트로 유명한 dpReview의 RSS Viewer 위젯을 손봐서,
Hanury.NET 전용 위젯을 만들었다.


주의: 매킨토시 대시보드 전용이므로, 다른 오에스 사람은 받아가지 마세요!!!

근데 내 블로그를 맥으로 접속해서 다운로드 받은 사람이 과연 몇명이나 될까???

참고로 앞면은 RSS를 짧은 텍스트로 보여주고, 뒷면은 카테고리를 선택해, 글을 필터링해서 볼수 있다.

Host 이전 완료.

June 29th, 2006 View Comments

1달에 몇천원씩 해서 그냥 집에 컴터를 쓰고 있었는데, 요즘은 1달에 250원짜리가 있는게 아닌가?

기존에 집에 컴터로 hosting 하다가 왠지 전기세가 아깝다는 생각이 들어서 이번 참에 hosting 업체에 맞기었다.
네임서버 변경으로 전세계 네임서버 동기화 까지 1일동안 페이지가 뜨다 말다하고, 한글도 엉망이었다.

250원짜리 쓸려다가 좀더 큰맘 먹고 cafe24란 호스팅 업체에 [64bit UTF-8 광절약형]이란 상품으로 무려 배가 비싼 월 500짜리 호스팅 업체에 맞기었다.(첨엔 설치비 5000원이 있음) 

속도도 불만없고, 트래픽이야 개인 홈페이지에 뭐 사람이 얼마나 찾으랴?
용량이 좀 적은데, 앞으로 사진은 Flicker 이용해야 겠다. 맥이라면 Flicker 위젯이 있어 드래그 한방으로 업로드 되니까..

문제는 db 업로드 땜에 하루 동안 한글이 죄다 깨지고 말았다.

mysqldump -u user -p dbname --default-character-set=latin1 > backup.sql

mysql 기본언어설정이 latin1이여서, 위 옵션을 안주면, 백업 파일은 utf8으로 생성하는데, 이미 깨져버린다. 이것도 모르고 깨진 파일을 온갖 en/decoding 하면서 고생했다.

또 다른 문제가 호스팅 업체의 php버전이 낮아 DomDocument를 지원하지 않는것이다.
그래서 astro 페이지의 apod 와 messier 페이지가 안뜨고,
url을 파일로 open하는게 서버 셋팅에 막혀 있어서 기상청 구름 사진 가져오는 것도 막혀 버리고 말았다.

다른 방법을 찾아야 한다.
 

alexken의 정치적 성향

June 28th, 2006 View Comments

Ryan님 블로그에 정치성향 테스트에 응했더니,
예상대로, 빨갱이 자유주의자 로 판명…

ㅋㅋㅋ…

정치성향 그래프

나랑 가장 비슷한 사람으로 넬슨 만델라가 있네.
결과 리포트: PoliticalCompass.pdf

새벽이 오면, 별이 지고 욕심도 별처럼 진다

June 28th, 2006 View Comments

미즈엔 2004년 6월호(통권 181호)에 우리부부가 실린 적이 있다.
벌써 2년 지났네…

기사의 위치는 여기인데, 아무래도 로그인 해야 보이는 듯…

그래서 미즈엔 잡지에 실린 글을 pdf로 만들어서 게시한다.

표준 vs. 기술 규격

June 28th, 2006 View Comments

이전글에 이어서…

durumee님이 뉴스 원본을 올려주셔서

네이버 뉴스 ― 휴대폰 표준충전단자 19핀 통합단자로 변경…TTA
네이버 뉴스 ― 휴대폰 표준화 이번엔 잘될까

본인도 햇갈리던 부분의 많은 정리가 되었습니다.
이전글에 제가 잘못 알고 있었던 부분도 있고, 약간의 거짓말도 포함되어 있어서, 여기서 정리해 봅니다.

Continue reading »

표준은 누가 만드는가?

June 27th, 2006 View Comments

durumee님의 충전기 단자 표준에 대한글에 대한글에 대해, 약간의 오해의 소지가 있는것 같아서,댓글로 쓸려다가 트랙백 받아 새글로 작성합니다.

단 본인은 현재 TTA에 있을뿐, 이동통신쪽이나, 표준화 업무와는 상관없는 일을 합니다. 하지만, 약간의 의무감 비스므리 한 생각이 들어 표준화에 대해 정리해 봅니다.
Continue reading »

하늘이 태어난지 몇일 째인지 표시

June 26th, 2006 View Comments

header.png
그림과 같이 하늘이가 태어난 지 몇일 지났는지 블로그 헤더에 붙였다.

echo(time()-date("U",mktime(date("H"),date("i"),date("s"),2,21,2006)))/60/60/24+1;

다소 지저분해 보이긴 하지만, 헤더에 그냥 붙일꺼라서…
끝에 +1 한 이유는 우리나라에서는 태어난날을 1일로 친다고해서, +1일 해줌.

하늘이 이빨 나다.

June 26th, 2006 View Comments

요즘 들어 혀로 입맛을 다시는 듯이 보였는데, 이빨이 나기 시작해서 가려워서 그랬나 보다.
6월26일 첨으로 확인.

이 사진을 찍기 위해 결국은 애 울리고야 말았다.

tooth

하늘이 세상을 뒤집다.

June 26th, 2006 View Comments

4개월하고 하루 지난 6월 22일 드디어 뒤집기 한판 성공….

hanuryturn

 

Flock 설치 기념 블로그 포스팅.

June 23rd, 2006 View Comments

예전에도 깔았다가 본 가치를 모르고 바로 지워버렸는데….

블로그를 사용하는 지금으로서는 엄청난 브라우저???(차라리 요즘 잘나가는 웹 기술 3종 세트가 정확할듯)가 아닐수 없다.

개발자용 폰트

June 23rd, 2006 View Comments

Gnome에서 배포하는 Vera라는 폰트이다.(zeph님 사이트에서 봄)
Bitstream-vera라고 적혀 있는거 봐서는 일찌기 부터 unicode 폰트를 개발해 왔던 BitStream사의 폰트인가 보지?
확인은 안해봤다.

0과O의 구분이나 1, I, |의 구분이 명확히 두드러져 개발자 폰트라 하나 보다.

bold, italic등 다양한 폰트셋으로 구성되어 있고, 무엇보다도, 폰트는 공짜란 인식이 많은 한국에서 별 의미 없는 일이지만, 공개 폰트라 맘 놓고 써도 되는 폰트이다.

기존에 Mac에서 제공하는 기본 고정폭 폰트인 Monaco와 비교 사진을 올린다.
근데, 원래 Monaco도 훌륭했던 지라, 크게 나아진점은 모르겠고,
Monaco에 비해 높이가 작아, 더 많은 줄을 표시할수 있는게 가장 두드러진 장점인듯….

기존의 모나코 폰트
monaco.png

새로 설치한 베라 폰트
vera.png

Bitstream Vera Sans Mono 다운받기 : http://www.gnome.org/fonts/

현재 한반도 구름 사진

June 22nd, 2006 View Comments


장마라, 별 볼일 없지만, 날씨 좋은날 주말이 다가오면 자주 찾아가는 곳 중의 하나가 기상청 위성 사진 페이지이다.
그래서 기상청에서 현재 위성 이미지를 가져와서 보여주는 페이지를 astro 메뉴 밑에 작성하려고 짜 보았다.
php에서 httprequest 같은거 없나 하고 한참을 찾았는데, 그냥 파일처럼 처리하면 되네…
역시 모르면 고생…

$url = 'http://www.kma.go.kr/kor/weather/picture/picture_01.jsp'$base_url = 'http://www.kma.go.kr';   
$fp = fopen($url, 'r')$str = stream_get_contents($fp);   

if ( ereg ( "(/kma_sat/DATA/MTSAT/GPL/wli[0-9]+\.gif)" , $str, $reg)){   
	echo "< img src='http://www.kma.go.kr$reg[0]' / >"}else{   
	echo "fail to get image";
}

xml로 제공해주면 좋으련만….

Astronomy Picture of the Day 페이지 추가

June 22nd, 2006 View Comments

이전 글에 이어서 계속….
바로 밑에 Ajax가 어쩌구 XMLHttpRequest가 저쩌구 했는데,
브라우저간 약간 씩 서로 다른 동작이나, IE인 경우엔 ActiveX 경고창이 뜨고해서,

서버에서 렌더링 해서 내리기로 변경….

코드도 의외로 간단.

$xml = new DomDocument;
$xml->load("http://www.jwz.org/cheesegrater/RSS/apod.rss");

$xsl = new DomDocument;
$xsl->load("apod.xsl");

$proc = new xsltprocessor;
$proc->importStyleSheet($xsl);
echo $proc->transformToXML($xml);

apod.rss와 apod.xsl을 읽어와서
apos.rss를 apod.xsl을 이용해서 렌더링 해서 그냥 화면에 뿌려줌. 끝

apod.xsl파일

<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
	<xsl:output method="html"/>
	
	<xsl:template match="/rss/channel">
		<xsl:value-of select="pubDate"/> by NASA
		<xsl:value-of select="item/description"
				disable-output-escaping = "yes" />
	</xsl:template>
	
</xsl:stylesheet>

/rss/item/description의 내용이 escape처리된 html 소스인데, 그냥 처리하면 화면에 html 소스가 출력된다.
value-of의 disable-output-escaping 속성 “yes”로 해주어야 한다.(이거 몰라서 한참을 찾았음)

나의 첫번째 Ajax 프로그램

June 21st, 2006 View Comments

요즘 Web2.0이니, Ajax니 무척이나 시끄럽다.
MS에 있었을 때 부터 MsXml은 워낙이나 친숙했던 터라, 그리 새삼스럽지 않았지만,
최근 구글에서 선보이고 있는 새로운 User Experience들(ActiveX 없이도 충분히 interactive하게 만들어 낸 구글맵이나 Gmail)을 보자면, MS는 같은 걸 가지고도 참 본 가치를 못 이용한다는 걸 느낀다.
(게다가 XmlHttpRequest는 MS가 얼마나 일찍부터 표준화 하고, 선도하고, 마케팅에도 얼마나 읅어 먹었던가? – 앞으로 다 이렇게 개발해야 한다고…)

정작 주인은 따로 있나 보다.

잡소리 그만하고,

오늘 문득 NASA가 제공하는 Astronomy Picture of the Day(오늘의 천체 사진) 페이지를 붙이고 싶었다.

운 좋게도 누군가가 RSS로 제공하는 것도 알았다. 이를 이용하면

XmlHttpRequest로 apod.rss를 가져와서, DOM 객체 돌아댕기며, 필요한 Element만 끄집어 내서 페이지를 완성...

var isIE = false;
var req;
function loadXMLDoc(url) {
	// branch for native XMLHttpRequest object
	if (window.XMLHttpRequest) {
		req = new XMLHttpRequest();
		req.onreadystatechange = processReqChange;
		req.open("GET", url, true);
		req.send(null);
	// branch for IE/Windows ActiveX version
	} else if (window.ActiveXObject) {
		isIE = true;
		req = new ActiveXObject("Microsoft.XMLHTTP");
		if (req) {
			req.onreadystatechange = processReqChange;
			req.open("GET", url, true);
			req.send();
		}
	}
}
function processReqChange() {
	// only if req shows "loaded"
	if (req.readyState == 4) {
		// only if "OK"
		if (req.status == 200) {
			//req.responseXML 을 가지고 원하는 페이지를 구성
		} else {
			alert("There was a problem retrieving the XML data:\n" +
			req.statusText);
		}
	}
}

이 소스는 developer.apple.com에서 참조했고,
예전엔 당연히 new ActiveXObject(“Microsoft.XMLHTTP”);
만 사용했는데, 어느덧, Safari나, Firefox가 XmlHttpRequest 객체를 내장하게 되었고, 요즘 탈 Active X 분위기 이므로(IE 7.0에서는 MS도 XMLHttpRequest를 내장 할 계획이라니), MSXML만 고려한 코딩은 피해야 겠다.

req.onreadystatechange = processReqChange;

에서 XMLHttpRequest의 onreadystatechange 상태 시 Callback 함수로 processReqChange 함수가 비 동기적으로 처리하게 하는 부분이 보이니, <- 이게 맨 첨부터 요란히 말했던 아약스의 실체 아님감.
아약스가 뭔지 아직까지 정확한 정의는 모르지만
그까이꺼 대충 client단에서 XMLHttpRequest로 비동기 적으로 서버랑 통신 하면서 사용자에게 좀더 interactive한 환경을 제공하믄 아약스 아닌가???


결국은 포기했다…
일단 IE에서는 SP2이후에 살벌해진 보안 분위기에 ActiveX 경고창이 뜨고, OS에 따라 브라우저에 따라 각기 다른 결과를 보여서
서버에서 처리하기로 했다.
클라이언트 CPU좀 슬쩍 사용해 보려고 했는데….이어서….

CapsLock을 Ctrl로…

June 21st, 2006 View Comments

키보드 키중에 유난히 사용하지 않는 키가 CapsLock이 아닐까 싶다.
그래서 난 이 키를 Ctrl로 사용한다.
내가 유별나서라기 보다는 unix사용자라면 ctrl이 capslock위치에 있어야 한다.

내가 이 capslock을 컨트롤을 ctrl로 사용하게 된 동기는 일본 유학시절 완전 유닉스 환경이었던 탓에 모든걸 Emacs로 해야 했다.
Emacs를 PC용 키보드로 사용하면 새끼 손가락이 뿌러진다.
새끼 손가락을 ctrl키 위에 올려놓고 사용해야만 한다.

역사적으로는 SUN type의 키보드가 Ctrl이 그 위치에 있으며, 내가 지금 사용하는 HHK 키보드가 그렇다.
그리고 지금 내가 사용하는 맥 역시 Unix인지라, ctrl이 capslock 위치에 있어야 편하다.
윈도우 사용할때는 그럭저럭 사용하지만, OS를 왔다갔다 하면 햇갈리는 관계로 PC에서도 바꿔서 사용하고, 이때 사용하는 reg 파일을 올린다.

Perl에 Hash는 없다???

June 20th, 2006 View Comments

Perl에서 array는

my @array = (1,2,3,4,5,6);

과 같이 정의하고 @를 앞에 붙여준다.
반면 hash는

my %capitals= ('china' => 'beijing', 'england' => 'london', 'france' => 'paris');

과 같이 정의하고 %를 붙여준다.

그리고 사용법은

my $a = $capitals{'china'};

$key로 $value 값을 읽어오는 문법이니, 영락없이 Java의 Hash Class같은 놈으로 생각하고 만 있었다…..
(array of ($key -> $val )) : 즉 각각의 $val을 refer하는 $key의 array

하지만 오늘 회사에서 perl로 hash를 함수의 인자로 넘기는데, 안넘어 가는 것이었다.

sub getHash(%){
	my %hash = %_;
	while ( my ($key, $val) = each (%hash)){}
}

가 안되는 것이다.
책을 뒤져봤는데도 없었다.

왜일까???

정답은 모든 Array와 Hash를 출력하는 두개의 함수를 보면 알수 있다.

use strict;

sub printHash(@){
	my %h = @_;

	while ( my ($key, $val) = each (%h))
	{
		print $key, " => ", $val, "\n";
	}
}

sub printArray(@){
	my @a = @_;
	
	print join("\n" , @a);
	print "\n";
}

그랬다. Perl에서 Hash는 Arrary 그 자체였다.

my %capitals= ('china' => 'beijing', 'england' => 'london', 'france' => 'paris');

my @capitals= ('china' , 'beijing' , 'england' , 'london' , 'france' , 'paris');

즉 둘중 아무렇게나 선언한뒤
%capitals라 선언하고 @captitals처럼 사용해도 되고,
반대로 @captitals로 선언하고, 이후에 %capitals처럼 써도 된다.

하지만 후자처럼 사용할 경우, 홀수개의 인자를 가진 array를 hash처럼 사용했을때 어떤 sideeffect 가 있는지 알수 없음.

Perl하는 사람중에서 나만 몰랐던 내용인가???
넘 당연한 거였나???
암튼 재미난거 하나 알았다.

100만원 어치 책

June 19th, 2006 View Comments

개당 3만원으로 치고 총 33권이니까 딱 만원이 모라란 99만원 어치 오라일리 책을 내손안에….
가끔 나한테 유용할 것 같아서 링크 달아봄?
주의 : 이 사이트는 본 사이트랑 아무 상관도 없고, 언제 없어질지 장담 못함.

O’Reilly’s CD bookshelf
O'Reilly BookShelf

소개:Central DS

June 19th, 2006 View Comments

아직 wordpress설정중이라 그런지, 컴터와 wordpress 관련글로만 도배되어 있는거 같아서, 천문 관련글 하나 올린다.
centralds-g.jpg NadA 회원인 이윤님께서 드디어 회사를 하나 차리고야 말았다.
본인이 NadA 회원이시면 이글 읽지 마세요.(다 아는 내용 일테니…)
Central DS라는 이름으로 주 종목은 일반 DSLR(주로 캐논 바디)을 냉각 기능이 가능하도록 개조해서 천체 사진용 카메라로 판매하는 사업이다.

0camera3.jpg
오른쪽 옆에 컴터에나 쓰는 쿨러가 붙어 있음을 알수 있다.

천체 사진용 카메라를 왜 냉각을 하는 걸까?
안그래도 노이즈가 없다고 정평이 난 캐논 바디를???

결론만 간단히 쓰면

  • 천체사진은 대상이 워낙 어두어 보통 사진보다 긴 노출(10분~1시간)을 줘야한다.
  • 장시간 노출은 가대의 정확도, 가이드 장치 사용등 비용이 든다.
  • 단위 노출을 많이 줄수록 노이즈도 같이 증가한다.(즉 노출만 무한정 늘린다고 해결될 문제가 아니다.)
  • 디지털 촬상 소자는 -7도씩 내려갈수록 노이즈는 1/2씩 준다고 한다.
  • 즉 냉각 촬영은 같은 시간에 더 많은 정보를 기록을 가져다 준다.

과거에 나다 질문란에 합성을 왜 하는지에 대한 나의 답변이다.
즉 노이즈를 희석하기 위해서인데, 냉각이 노이즈와 밀접한 관계가 있으므로 첨부한다.

Continue reading »

Macoshints의 힌트 모음 하나

June 19th, 2006 View Comments

내가 작성한 글이 아니고 내게 도움이 될거 같아서 어디서 퍼왔다. (이러믄 안되는데….)


이곳에 적혀 있는 모든 내용들은 Macoshints사이트에 있는 내용들입니다. 이해를 돕기 위해 단순한 번역보다는 글을 풀어서 쓰는 방향으로 번역했습니다. 아무쪼록 도움이 되었으면 합니다. 여유로운 시간이 있을때마다 10개 정도의 팁을 올려 보도록 하겠습니다.1. iTune에서 가운데 마우스 Scroll버튼으로 볼륨 조절하기. Continue reading »

시스템 재 설치

June 19th, 2006 View Comments

전직 MS 직원인 나랑, Ahn 랩 출신인 와이프의 컴터가 보안에 뚤려 컴터를 새로 밀고 다시 깔았다.

나름대로 보안에 열심이었다고 했지만, 방심이 문제였다.
회사에서 집컴터로 쉽게 접속하려고, VNC 깔아놓고, 귀찮다고
패스워드도 걸어 놓지 않고,
설마 누가 내 컴터에 VNC로 들어오겠냐 생각했지만,
갑자기 컴터 마우스가 움직이는게 아닌가?

부랴부랴 VNC 서비스를 죽였지만, 이후에 Windows/System32밑에 내가 모르는 이상한 파일이 몇개 생겨있고, Anti-Virus 프로그램이 disable 되어 있어서,

영 찝찝한 맘에 OS를 엎고야 말았다.
새로 설치한 머신에는 VNC 서비스를 방화벽에서 특정 아이피(집+회사)에서만 접속 가능하게 설정.