변호사와의 법률 상담을 통해, 노래 가사를 인터넷에서 저작권자의 허락없이 제공하는 것은 저작권법에 저촉된다는 것을 확인하였습니다. 법을 준수하기 위해 팝송 가사 서비스를 중단하게 되었습니다. 그동안 이용해주셔서 감사드립니다.
Firefox용 Twitter 관련 플러그인 추천
Posted in Firefox on 2009/06/24 by terzeron트위터는 새로운 웹 애플리케이션이라기보다는 소셜 미디어 플랫폼(Social Media Platform)으로 봐야겠다.
자주 트위터 홈에 방문해야 하는 게 단점이긴 한데, Firefox에 Twitter 관련 플러그인이 여러가지 제공되므로 선택하여 편리하게 사용할 수 있다.
가장 많은 관심을 받고 있는 것이 바로 다음의 두 가지 플러그인이다.
1. TwitterFox
브라우저에 설치되는 트윗 리더(twitter reader)라고나 할까? 트위터 홈페이지로 이동할 필요 없이 브라우저에서 관심 트윗을 읽을 수 있다. 이거 하나면 트위터는 더 이상의 도구가 필요없다.
관련 글: LovedWeb님의 “트위터 파이어폭스 부가기능-TwitterFox”, 토이’s Firefox-inside님의 “파이어폭스에서 트위터를 즐기자(TwitterFox)”
2. TwitterBar
Firefox의 주소창에서 직접 트윗을 작성해서 글 말미에 –post라고 적으면 엔터를 치지 않아도 자동으로 포스팅이 된다는 편리함을 제공한다. –search로 검색도 가능하다. (주의사항! URL을 짧게 변환해주는 기능이 있는데 해당 서비스의 도메인 네임 서버가 멀리 있는지 응답이 굉장히 느리다.)
관련 글: Fantasy Amplifier님의 “파폭 주소표시줄에서 트위팅하세요, TwitterBar”
3. TwittyTunes
친구(@saxboy)가 추천해줬는데, …Tunes 계열의 플러그인이라서 그런지 음악 듣기와 공유가 편리하게 구성되어 있다.
Twitter for WordPress 플러그인의 한글 버그 수정
Posted in WordPress on 2009/06/23 by terzeron트위터(Twitter)를 WordPress와 연동해서 사용해보려고 Twitter for WordPress 플러그인을 설치했는데, 한글이 깨진다. 처음에는 UTF-8 인코딩을 사용하지 않아서 발생한 문제인가 싶었는데, 원인은 바로 WordPress의 라이브러리에 있었다.
트위터에서 발행하는 RSS 파일을 가져올 때 사용하는 함수가 fetch_rss()인데, 蛦와 같은 XML entity를 엉뚱한 로케일(locale)로 해석하여 ???와 같은 문자열로 반환하는 것이 문제의 원인이다.
이 플러그인의 PHP 스크립트 파일인 twitter.php를 열어보면 twitter_messages()라는 함수가 있는데, 이게 바로 화면 왼쪽에 보이는 트위터 위짓(widget)의 호출 함수이다.
이 함수 첫 부분은 다음과 같다.
-
function twitter_messages($username = ”, $num = 1, $list = false, $update = true, $linked = ‘#’, $hyperlinks = true, $twitter_users = true, $encode_utf8 = false) {
-
-
global $twitter_options;
-
include_once(ABSPATH . WPINC . ‘/rss.php’);
-
-
$messages = fetch_rss(’http://twitter.com/statuses/user_timeline/’.$username.’.rss’);
-
-
if ($list) echo ‘<ul class="twitter">’;
fetch_rss() 함수가 호출되고 있는 것을 확인할 수 있는데, 이것을 twitter_fetch_rss()로 대체한다. twitter_fetch_rss() 함수를 twitter_message() 함수 바로 위에 작성해 보자.
-
function twitter_fetch_rss($server, $url)
-
{
-
$data = new Message;
-
$is_in_item = false;
-
$message = array();
-
$fp = fsockopen($server, 80, $errno, $errstr, 10);
-
$request_string = "GET $url HTTP/1.0\n";
-
$request_string .= "\n";
-
if (fputs($fp, $request_string)) {
-
while (!feof($fp)) {
-
$line = fgets($fp);
-
if (preg_match("/^HTTP\/1\.\d \d+ OK/", $line)) {
-
continue;
-
} else if (preg_match("/^[A-Za-z\-]+: /", $line)) {
-
continue;
-
} else if (preg_match("/^HTTP\/1\.\d/", $line)) {
-
print $line . "\n";
-
}
-
-
if (preg_match("/^\s*<([^>]+)>\s*$/", $line, $matches)) {
-
$key = $matches[1];
-
$value = $matches[2];
-
if ($key == "item") {
-
$is_in_item = true;
-
reset($message);
-
} else if ($key == "/item") {
-
$is_in_item = false;
-
array_push($data->items, $message);
-
}
-
} else if (preg_match("/<([^>]+)>([^<]+)<[^>]+>/", $line, $matches)) {
-
$key = $matches[1];
-
$value = $matches[2];
-
if ($is_in_item == true) {
-
$message[strtolower($key)] = $value;
-
}
-
}
-
}
-
}
-
return $data;
-
}
이 함수는 XML 파싱(parsing)을 수행하도록 간단하게 작성된 것이다. 대충 만들었지만, 트위터에서 발생하고 있는 RSS는 이 정도로 간단한 파싱으로도 문제 없이 데이터를 수집할 수 있다.
호출 부분은 다음과 같이 변경한다.
-
$messages = twitter_fetch_rss("twitter.com", "http://twitter.com/statuses/user_timeline/" . $username . ".rss");
사이드바에 트위터 위짓을 설치하려면 다음 코드를 추가할 필요가 있다.
-
<li>
-
<h2>Twitter</h2>
-
<p><? twitter_messages(‘자기트위터아이디’, 5, true, true, ‘#’, true, true, false); ?></p>
-
</li>
물론 li나 h2, p와 같은 태그는 sidebar.php의 문맥에 따라 적당한 태그를 사용하면 되고, twitter_messages()함수를 적절히 선택하면 된다. 자세한 설명은 플러그인 홈페이지를 참고한다. 복잡하다면, 다음과 같이 호출해도 된다.
-
-
<? twitter_messages(‘자기트위터아이디’); ?>
트위터는 한 클라이언트에서 시간 당 100번 이상의 RSS 요청을 허용하지 않으므로 일시적으로 “HTTP/1.1 400 Bad Request” 에러 메시지가 표시될 수도 있다.
다음 압축 파일을 다운로드하여 워드프레스 디렉토리에 설치하면 된다.
twitter-for-wordpress-mod-ko
관련 글: FantasyAmplifier님의 “트위터 메시지만 간단히 보여주는, Twitter for Wordpress”
노무현 시절 부동산 정책에 대해
Posted in 정치 on 2009/06/05 by terzeron이상하게도 노무현 정권에 대한 평가 중에서 부동산 정책에 대한 것이 가장 먼저 손 꼽히는데, 없는 자들은 당시 정부가 부동산 가격을 잡지 못해서 널 뛰었다고 말하고, 가진 자들은 부동산으로 이익을 보지 못해서 노무현 정부가 좌파라고 한다.
당시의 부동산 정책에 대한 평가를 해놓은 글을 하나 소개한다.
정부는 미국의 서브 프라임 모기지 부실을 경계하면서 일본처럼 장기 불황의 늪에 빠져들 것을 걱정하여 연착륙을 의도했지만, 결국 착륙은 하지 못하고 국민들의 저항에 부딪혀 ‘한국부동산호’ 비행기의 고도를 살짝 높인 꼴이 되었다. 부동산 정책을 추진하는 것에 대해서 극렬 저항하다가 정책이 실패로 돌아가니 정부의 탓을 하니 참으로 양심이 없다.
노무현 정부는 원칙을 강조했기 때문에 시장에 대해 립 서비스도 없었고 협박과 회유를 적절히 구사하지 않았다고 할 수 있다. 하지만 정치란 게 여러 집단과 계층의 이익이 충돌하는 것을 제도적으로 해소시키는 장이기 때문에, 순진하게 또는 너무 원칙적으로 대응을 하면 여럿에 의해 휘둘리고 바보되기 쉽다. 노무현 정부에 대해 아쉬웠던 점이랄까. 하지만 야바위꾼같은 정치인들만 보다가 제대로 된 정치가를 볼 수 있었다는 게 어디인가.
하나의 국가 사회는 자동차와 같아서 한쪽 바퀴만으로는 주행에 어려움이 생긴다. 상황에 따라서 왼쪽으로 갈 때도 있고 오른쪽으로 갈 때도 있는 법이다. 하지만 우리나라는 너무 오른쪽 앞바퀴 마음대로라 오른쪽으로만 가고 있다. 왼쪽으로 가자는 것도 아니고 그저 균형을 잡아주는 운전자를 원하는 것 뿐인데, 현 운전자는 오른쪽으로만 가는 것에 대해서 불만을 드러내는 사람들을 걷어 차서 차에서 떨어뜨리고 있다.
에버랜드, 이건희 가문의 영원한 소유를 위한
Posted in 잡담, 정치 on 2009/06/01 by terzeron애들이 몸이 근질근질한지 짜증을 내고 거실에서 뛰어다니곤 하길래, 데리고 에버랜드에 놀러 가려고 금요일에 휴가를 냈다. 오전에 TV를 좀 봤는데, 영결식이 중계되고 있었다. 조금 보고 있자니 마음이 아파서 TV를 끌 수 밖에 없었다.
더위를 피해 오후 느지막이 에버랜드에 도착하니 국민장으로 인해서 불꽃놀이 행사를 하지 않는다고 하더라. 에버랜드, 노무현, 이건희, …!
잠시 잊고 있었지만 에버랜드는 삼성가의 재산 상속(경영권 승계)의 결정적인 통로가 아닌가. 드러내놓고 표현하진 못하겠지만, 이건희 회장은 노무현 전 대통령의 서거를 내심 반가워하고 있겠구나 싶었다. 그래도 불꽃놀이 같은 축제성 행사를 하지 않는다고 하니 최소한은 지키고 있구나 생각했다.
하지만, 혹시나 했더니 역시나였다. 집에 돌아와서 뉴스를 보니 에버랜드 전환사채 편법 증여에 대해 대법원이 무죄를 선고했다는 기사가 났더라. 신영철 대법관이 사퇴하지 않은 진짜 이유도 알 것 같다. 아마 사퇴하고 나면 삼성 계열사의 변호사로 영전하겠지.
하긴 애들 때문이라지만 에버랜드에 연간 회원으로 등록한 내가 무슨 말을 할 자격이 있겠나.
어제 썼던 글에 딱 어울리는 시
Posted in 정치 on 2009/05/26 by terzeron요즘 인터넷에 돌고 있는 시를 우연히 발견하게 되었는데, 어제 내가 썼던 글과 그 뜻이 통하는 것 같아서 옮겨 적어 본다.
偶吟
그냥 생각이 나서 읊어봄人之愛正士
사람들이 바른 선비를 아끼는 것은
好虎皮相似
호랑이 털가죽을 좋아함과 같다.
生則欲殺之
살았을 땐 잡아죽이려 하고
死後方稱美
죽은 뒤엔 아름답다 칭한다.- 조식(曺植)
남명 조식 선생은 종중(宗中)에서 가장 훌륭하신 조상님인데, 4,5백 년 전에 나보다 먼저 비슷한 생각을 하셨구나…