« Previous : 1 : ... 100 : 101 : 102 : 103 : 104 : 105 : 106 : 107 : 108 : ... 221 : Next »

1.
고속도로 포함 자동차 전용 도로의 1차로는 상시 점유해서는 안 된다. 뒤에서 추월 차량이 오면 비켜 줘야 한다. (모든 차로가 막히는 정체 상황이라면 예외) 원활한 차량 흐름과 교통 안전을 위해서는 추월은 언제나 좌측으로 할 수 있게 해야 한다.
그러나 시내 도로 맨 구석의 직· 우 겸용 차선이라면, 내가 직진이어서 빨간불 때 멈춰 섰고 뒤에서 우회전 차량이 지나가려고 빵빵거린다 해도 미안해하거나 일부러 비켜 줄 필요가 전혀 없다. 뒷차가 무슨 출동 중인 구급차· 소방차가 아닌 한.

이것은 반드시 비켜 줘야 하는 경우와 그럴 필요가 없는 경우의 대표적인 예인데, 이 둘을 반대로 잘못 아는 운전자도 있는가 보다.

2.
한적한 도로에서 건너는 사람이 아무도 없는데 횡단보도가 파란불이 되고 차도는 빨간불이 되는 경우가 있다. 인간적인 심정에서야 경찰이나 단속 카메라만 없다면 이런 신호는 무시하고 눈치껏 그냥 가 버리고 싶다.

주변에 다른 차가 없다면 나 혼자서야 종종 재량껏 그럴 수도 있다. 그런데.. 앞차가 신호를 지키기 위해서 비록 무의미하게나마 횡단보도 앞에 정지했는데 뒷차가 앞차를 향해 그냥 무시하고 가라고 빵빵거리는 경우가 있다. 그건 좀 심하게 몰상식하고 개념 없는 짓이 아닐 수 없다. "호의(횡단보도 신호 무시를 묵인)가 계속되면 권리인 줄 안다"와 같은 급이다. 무시하더라도 원래는 해서는 안 된다는 걸 알고서 무시해야 한다. 남한테까지 자기 습관을 강요하지는 말아야지?

바쁜데 에스컬레이터의 왼쪽 레인의 전방에서 혼자 떡 멈춰 서서 길막 하는 사람이 있으면(오른쪽 레인은 사람들로 이미 꽉 찼고) 나라도 답답해서 그 사람 바로 뒤에서 헛기침 하면서 눈치 주고, 심하면 "실례합니다" 이러면서 비집고 걸어 올라갈 수 있다.
하지만 빈 횡단보도에서 빨간불 때문에 서 있는 앞차에게 신호위반을 강요해서는 안 될 것이다. 이 둘은 서로 상황이 완전히 다르니까 말이다.

3.
견인차는 제아무리 싸제 사이렌을 울리고 불빛을 요란하게 반짝여서 소방차 코스프레를 해 봤자 법적으로 긴급자동차가 전혀 아니다. 저 아저씨들도 먹고 살기 빠듯한 걸 이해 못 하는 건 아니지만, 그렇다고 대놓고 교통법규를 위반하는 것을 받아 주고 이해해야 할 필요는 없다. 무리해서(특히 신호 위반/정지선 위반 같은 걸 감수까지 하면서) 비켜 준다거나 할 필요 따윈 전혀 없다.

4.
전방의 교차로의 신호등이 파란불에서 노란불로 바뀌었을 때.. 정작 앞차는 서려고 마음먹었는데 뒷차는 "이 정도 타이밍이면 앞차도 그냥 건너가겠지"라고 생각하고 가속을 하는 바람에 뒷차가 앞차를 들이받는 사고가 가끔 나곤 한다. 그럼 물론 뒷차의 100% 과실로 찍힌다. 한 차선에 양쪽의 차가 동시에 진입하려다가 서로 상대방을 피하느라 휘청대다 사고 나는 것과 비슷한 상황이다. 그건 좌우 버전이고, 저건 앞뒤 버전 되겠다.

이런 사고는 비록 과실 판정을 받지 않더라도 앞차의 입장에서도 좋을 게 없다. 이런 사고를 예방하려면, 노란불 때 급히 정지를 할 것 같으면 비상등을 잠시 깜빡여서 "난 설 거다"라고 뒷차에게 알려 주는 게 좋을 것이다. 단순히 브레이크 경고등만으로는 충분치 않다. 고속도로에서 전방에 갑자기 정체 구간이 나타날 때 비상등을 켜 주는 것과 같은 이치이다(이것도 완전 지뢰임..).

정말, 비행기가 이륙을 중단할 수 없는 속도만큼이나, 자동차에도 이 정도로 가속이 됐고 교차로와 가까워졌다면 이제 노란불이 되더라도 교차로에서 설 게 아니라 빨리 통과해야 한다는.. 무슨 한계 속도 같은 개념이 있어야 할 것 같다. 자동차에 내비게이션과 연계하여 그런 걸 안내하는 시스템이 있으면 좋지 않을까? 이건 무인 운전 시스템을 구현할 때도 필요한 알고리즘이어 보이는데?

5.
좌회전 신호가 거의 끝나 갈 때, 아니면 비보호 좌회전인 곳에서 앞차만 믿고 따라 좌회전을 하다가 맞은편의 직진 차량과 충돌하는 사고가 종종 난다. 이런 건 좌회전한 쪽이 신호 위반에 준하는 굉장히 불리한 판정이 나므로 조심하는 수밖에 없겠다.

그 밖에, 파란불이 돼서 직진을 하는데, 내 옆에는 탑차 같은 큰 차가 있어서 딱히 시야가 확보돼 있지 않다. 그런데.. 무단횡단자나 꼬리물기 차량이 쌩 가로질러 지나가서 옆의 차는 멈췄는데, 나는 그런 게 있는 줄 모르고 계속 직진하다가 그 무단횡단자나 차량과 충돌하는 사고도 난다.
이런 건 정말 운이 나빴다고밖에 볼 수 없겠다. 과실이야 부딪친 놈에게 더 크게 잡히겠지만, 무단횡단자는 그저 답이 없다.

6.
예전에도 한번 글로 쓴 적이 있듯이, <블랙박스로 본 세상> 동영상들을 쭈욱 보고 있으면 교통사고라는 게 어쩌다가 나는지 유형, 공통점, 패턴이 쫙 분류된다. 이와 관련하여 본인이 또 느낀 게 있다.

"내가 왼쪽 차로/1차로로 갔던 것은 우회전 할 반경을 얻기 위함이었다! 페이크다 이 병신들아!"
이러다 사고 나는 게 참 많다는 거.
자매품으로는, "내가 우측 차로로 갔던 것은 유턴 할 공간을 얻기 위함이었다!"도 있다.

나름 버스나 트럭 같은 큰 차를 몰고 있거나, 혹은 승용차라도 도로가 폭이 4차선(편도 2차선) 이하의 좁은 곳이어서 후진 없이 한 번에 돌려고 저런 행동을 했을지 모르지만 저건 뒷차 운전자를 헷갈리게 하며 사고의 위험이 높은 행동이다. 현실에서는 상대방이 병신이 되는 게 아니라, 자기가 매우 높은 과실이 잡혀서 교통사고 가해자가 되며, 차후 자동차 보험료가 오르는 등 대가를 치른다.

자동차에는 평범한 좌우 회전용 깜빡이만 있지, 유턴이나 고반경 회전을 예고하는 깜빡이는 없다는 걸 명심하자. 또한 우리나라 도로교통법은 헷갈릴 것 없이 우회전은 최고 구석 차로에서만 가능하며 유턴은 1차로에서만 가능하다고 규정한다.

7.
우리나라에서 자전거는 일단 법적으로는 차도에서 달리는 것이 맞지만 현실에서는 어쩔 수 없이 인도 주행도 하며, 운전자의 습성에 따라서는 자전거에서 내린 상태가 아닌 탄 채로 횡단보도를 건너기도 한다. 일부 지역은 횡단보도와 인도에 대놓고 자전거 진행로를 나타내는 차선이 그어지고 전용 포장이 만들어져 있기도 하다.

자전거의 진행로는 인도나 차도 하나로 강제할 것이 아니라 자전거 운전자가 유도리 있게 취사선택 가능하게 하는 게 가장 합리적이어 보인다. 우리나라가 베트남처럼 자전거가 무슨 떼거지처럼 많이 다니는 것도 아니니.
횡단보도 신호를 따라 천천히 갈 것이고 사고가 났을 때 보행자보다 더 불리하게 처분되는 것에 이의가 없다면 인도로 가고, 횡단보도가 빨간불이더라도 자동차처럼 같이 직진하고 싶으며, 위험하지만 그래도 자동차에 비해서 약자로 대접받는 게 낫다 싶으면 차도로 가게 말이다.

단, 차도로 갈 경우 역주행은 절대 하지 말아야 한다. 그건 법으로 막아야 한다. 역주행을 할 거면 무조건 인도로 가야 한다.
특히 최악인 것은 역주행인 주제에 교차로에서 코너링까지 하는 거.. 자동차 운전자를 정말 놀라게 한다. 이 상태로 충돌 사고라도 나면 자전거 운전자 과실로 몰빵을 시킬 수 있어야 한다.

아예 엔진이 달린 오토바이라면 선택의 여지 없이 차도로만 달려야 할 것이고 근처의 횡단보도나 교차로까지 주차· 출차를 위해 불가피한 초단거리 주행을 제외하고는 인도 주행은 금지다. 그리고 차도라 하더라도 최우측 차선에서 자동차의 틈새로 달리는 것도 금지다. 그건 자전거에게만 허용돼 있다. 그 상태로 차량의 도어가 갑자기 확 열려서 개문사고라도 나면 정말 골치 아파진다.

8.
운전자에게 '전방 주시 의무'가 있는 것처럼, 보행자도 차도에 발을 디딜 때면, 동급의 강한 의무까지는 아니어도 '측면 주시'를 강력한 권장 사항으로 시행할 필요가 있다. 스마트폰에서 눈을 떼고 이어폰도 잠시 빼고 말이다.
길 건너편에 목적지 또는 합류할 일행, 탑승할 차가 있을 때 그것만 보고 쪼르르 달려가다가 사고 난다.

한 차선은 직진 차로인데 신호가 빨간불이어서 차들이 서 있다. 한 보행자가 이 틈을 이용해 무단횡단을 한다. 그런데 그 차선의 옆 차선은 좌회전 차선이어서 차들이 달려올 수 있는데 그걸 모르고 지금 당장 텅 빈 것만 보고 건너다가 사고가 난다. 아까 운전자의 경우와 마찬가지로 큰차에 가려져서 옆 차로에서 달려오는 차를 못 봐서 그 차에 치이기도 한다.

운전자와 마찬가지로 보행자도 당장 지나가는 차가 없는 도로에서 무단횡단의 충동을 얼마든지 느낀다. 그런데 그럴 거면 좌우 측면을 충분히 주시하고 정말 at your own risk로 잽싸게 민폐 안 끼치고 빨리 건너가야 한다. "불륜 저지를 거면 내가 모르게 하고 나한테 걸리지만 마라. 걸리면 뒈진다" 같은 마인드로 말이다. 그럴 자신 없으면 마음 가라앉히고 다음 신호를 기다렸다 가야 하지 않겠는가.

9.
그리고 시내버스가 기사 아저씨의 귀차니즘 같은 이유 때문에 인도에 바싹 붙어 정지하지 않고 승객을 하차시키는 바람에 사고가 나는 경우가 있다. 앞만 보고 쪼르르 내린 승객이 시내버스의 옆 여백으로 지나가는(특히 우회전) 자동차 내지 이륜차와 부딪치는 거다.

물론 이건 버스 기사의 과실이 최소 70% 이상은 먹고 들어간다. 하지만 멈춰 설 기미가 보이는 버스 뒤에서 다른 차량 운전자도 좀 조심해야 하고, 승객도 발이 차도에 닿을 것 같으면 좌우, 아니 차가 오는 오른쪽 방향을 주시하는 센스가 필요해 보인다. 밖에 도대체 무슨 일이 벌어지는지 알 수 없기 때문이다.
그나저나 버스는 문이 열릴 때 밖으로 돌출되지 않기 때문에 택시· 승용차와 같은 급의 개문 사고가 나지는 않는다.

10.
끝으로.. 교통사고라는 건 내지도 당하지도 않아야겠지만, 일단 그런 불행한 이벤트에 말려 버렸다면 상황이 최소한 지금보다 더 나빠지는 일은 없게 사후 대처도 침착하게 잘해야 한다.
고속도로 한복판 같은 곳에서 사고를 당했을 때 무엇보다 중요한 건 2차 사고를 당하지 않는 것이다. 자기 자신도 아니고 남이 당한 사고의 수습을 돕다가 사고 현장으로 그대로 돌진해 온 다른 차에 치여서 중상· 사망을 당한 의인의 안타까운 사연이 적지 않다.

"이 정도면 뒷차도 충분히 인지하고서 속도 줄이고 서겠지" 이렇게 안일하게 생각해서는 안 된다. 고속도로에서는 어떤 막장 차량이 달려와서 교통사고 현장에 그대로 꼬라박을지 알 수 없다. 그게 운동 에너지에서 질량이 왕창 큰 졸음운전 대형 트럭이 될 수도 있고, v가 왕창 큰 과속 승용차가 될 수도 있다.
차를 최대한 갓길로 빼고, 그럴 수 없으면 사람이라도 차를 벗어나서 도로 밖으로 멀리 대피해야 한다. 차 안에 그대로 남아 있는 건 완전 자살행위다.

움직일 수 없는 고장· 사고 차량이 불가피하게 도로를 틀어막게 됐으면 비상등을 켜는 건 말할 것도 없고 트렁크도 열고 차량의 존재감을 최대한 알려야 한다. 사람이 200미터 후방까지 가서 삼각대를 설치하고 오는 건 현실적으로 매우 위험하니 삼각대 자체에 무슨 원격조종 동력 같은 거라도 있으면 좋을 것 같다. 밤에는 스스로 터지는 불빛이 가시성이 좋다고 하는데 화약이 들어간 물건이어서 유통과 소지에 제약이 걸려 있다고 한다. 비현실적인 법률에 대한 개선이 필요해 보인다.

Posted by 사무엘

2017/01/20 08:37 2017/01/20 08:37
, , ,
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/1318

※ 국민 의식의 변화

1980년대 말, 한강 고수부지에 가기 위해 사람들이 무려 올림픽대로를 무단횡단으로 건너고.. 아예 자전거를 몰고 역주행까지 한다.

사용자 삽입 이미지사용자 삽입 이미지

1990년, 수도권 전철 1호선 신도림 역에서 내린 시민들이 한두 명도 아니고 패거리로.. 개집표기를 통과하지 않고 그냥 울타리를 넘어서 지상으로 나간다.

사용자 삽입 이미지

저거 다 옛날에 9시 뉴스 카메라 출동 같은 데서 소개된 아이템들이다.
우리나라가 국민 의식이라는 게 저 정도로 무지하고 미개하던 시절이 있었다.

그리고 저런 걸 고발하는 방송계도 남말 할 처지는 아닌 게.. 지금 같은 저작권 의식이 없어서 일본 TV의 시그널송이나 드라마 같은 거 무단으로 베껴 오는 건 예사였다.
지금 같은 초상권 보호나 개인정보 보호 그딴 관념도 없음. 저 부끄러운 짓을 하는 사람들을 그 어떤 보호 처리 없이 대뜸 인터뷰 해서 쌩얼을 내보냈다. 신기하지 않은가?

그런데 그렇다고 해서 2, 30년 전 사람들이 지금 세대보다 특별히 더 사악한 게 아니다. 그냥 하는 짓도 수위가 세고, 그걸 통제하고 계도하는 방식도 수위가 셌을 뿐이다.
단군의 후손들이 역사상 피똥 싸는 가난을 떨쳐낸 지 얼마나 됐다고, 법과 질서와 시스템과 국제 매너라는 걸 접한 게 얼마나 됐다고 지금 같은 의식 수준을 기대할 수 있었겠는가?

그 시절에 올림픽대로의 경우는 도로 크기 대비 차도 지금보다 훨씬 덜 다녔으니 무단횡단이 가능했던 측면도 있을 것이다.
경부 고속도로가 갓 만들어진 시절에도 마찬가지다. 자동차 전용 도로라는 개념이 존재한 적이 없었고, 지금처럼 자동차가 넘쳐나는 때도 아니었으니.. 그때는 "고속도로에 보행자는 제발 얼씬도 하지 마세요. 제발 무단횡단 하지 마세요. 소 끌고 다니지 마세요"라고 지겹도록 계도와 홍보를 해 댔다.
게다가 일부 비상활주로 구간을 정기적으로 틀어막고 아예 전투기 이착륙 훈련도 할 정도로 고속도로가 널널했다. 지금은? 그랬다가는 작살나지..

(그리고 전철역의 경우도, 저 많은 사람들이 불법 무임승차를 했다는 소리는 아니므로 오해 말 것. 그때는 지금 같은 교통 카드가 없었다. 출발역에서 승차권을 선불로 끊은 뒤 도착역에서 그 승차권을 넣고 나가야 하는데, 나가는 절차만을 생략한 것일 수 있다. 그 시절의 마분지 승차권이야 어차피 재사용하는 것도 아니었으니까.. 물론, 집표를 안 했으니 2구간 이상 장거리를 이용하고도 1구간 요금만 지불한 뒤 쓰윽 나갔을 가능성은 있음.)

뭐, 1970년대에 서울 지하철이 처음 개통했을 때는 "지하철 열차 안에는 화장실이 없습니다."(통상적인 여객 열차와는 달리) 이런 것도 차내 안내방송으로 나왔을 정도였다.

그로부터 세월이 흘러 198~90년대에 우리나라에 마이카 + 너도 나도 해외여행 풍조가 막 생겨났다. 그때는 인구당 교통사고 발생 세계 1위에, 외국 나가서 진상과 추태 부리는 어글리 코리안 이러면서 각성하자는 공익 광고 + 교통 안전 캠페인도 엄청 많았다.

이거도 무슨 조센징들만 국민성이 유전자 차원에서 문제가 있다거나, 이 엽전노무 새끼들이 노예근성 쩔어서 그런 것이 아니다. 보릿고개 이러다가 겨우 30년 남짓 만에 자동차라는 문명의 이기와 외국 여행이라는 걸 난생 처음 접해서 그런 것일 뿐이다.

난 어렸을 땐 우리나라 국민성에 뭔가 진짜 심각한 문제가 있는 줄 알았다.. 근데 이거 뭐 해외여행 전면자유화가 된 게 무려 1989년부터이고 그 전엔 외국행 어학연수와 신혼여행, 배낭여행 자체가 없었더구만, 지금까지 개같이 일하고 돈 버는 것밖에 안 해 본 집단한테서 하루아침에 뭘 선한 게 나오길 기대하겠는가?

지금이야 많이 고쳐졌다. 뭐, 레알 선진국 수준으로 고상해졌는지는 모르겠지만.. 그래도 지금은 이웃집 '대륙'에서 우리나라의 전철을 밟고 따라오고 있을 뿐이다. 걔들도 국력 대비 외국 나가기 굉장히 어려운 곳에서 사는 사람들이며, 그나마 제일 만만하게 갈 수 있는 외국이 제주도이니 거기에 왕창 몰리는 것이다.
'대륙의 기상' 이러면서 유커들의 미개한 짓을 보면서 비웃는다면, 과거에 한국인들도 외국에서 그렇게 비웃음 받았을 거라는 점을 생각해야 할 것이며 왜 일본인이 선진국들에서 한국인보다 더 높은 대접을 받는지도 같이 생각해야 한다.

자동차에 이어 1990년대 말엔 국민 의식 관련 최대의 이슈는 응당 "공공장소에서는 휴대전화 제발 진동 모드로 해 놓으세요"였다. 기억나시는지? 그게 세뇌 수준으로 정착하고 공감대가 형성된 덕분에 지금은 그래도 이 정도로 괜찮아졌다.

이런 역사 선례들을 감안할 때 본인은 필요 이상의 '국까'나 "민중은 개돼지" 이런 식의 비하의식에 공감하지 않는다.
그러나 한편으로도 미개하던 옛날에 바랄 걸 바라야지, 모 대통령이 경제는 살렸지만 민주주의는 죽였네 뭐네 하는 배부르고 비현실적인 불평불만 피해의식에도 동의하지 않는다. 195, 60년대에 애초에 무슨 성숙한 민주주의 같은 게 있었다고 개수작을. 어유;;; ㅉㅉㅉ

※ 우리는 할 수 있는가?

우리나라가 지금 같은 사회 구조와 분위기에서 예측 가능한 미래에 과학 분야의 노벨 상 수상자가 나올 거라고 생각하는 사람은? 아마 거의 없을 것이다. 도대체 뭐가 잘못됐고 무엇부터 바로잡아야 할지 난 모르겠다. 그렇다고 그저 사회 탓, 제도 탓, 우리 모두의 잘못 이런 식으로 어물쩡 넘어가서도 안 될 문제인데도 말이다.

그리고 분야를 막론하고 '한국형'이라는 이름을 달고 시작했던 무슨 프로젝트들이 잘되고 성공하고 지금까지 이어진 예가 있나? 이 역시 거의 없다시피할 것이다.
냉정하게 말하면 우리나라는 점점 성장 동력이 멈추고 있다. 제발 내 느낌일 뿐이었으면 좋겠지만, 옛날, 특히 서울 올림픽을 준비하던 시절 같은 팀웍과 화합이 다시 이뤄지지 못하고 뭔가 국운이 다한 것 같은 불길한 느낌이 든다. 지금까지 해 놓은 것, 벌어 놓은 게 적지 않으니 당장 몇 년간은 먹고 살겠지만 중국이 추격하고 일본· 미국이 더 격차를 벌리면 건축· 전자· 기계· 컴터· 항공우주 등 분야들이 미래에 어떻게 도태하고 뒤쳐질지 모른다.

지금만 해도 "우린 안 될 거야 아마", 그저 오로지 돈, 돈, 돈, "스펙 아무리 좋아 봤자 부모 재력 절대 못 이김", "금수저 흙수저 헬조선 계급론" 같은 인식이 팽배한 지경인데 우리나라가 지금보다 훨씬 더 못살던 시절에는 도대체 무슨 일말의 희망이 있었을까 싶다.
그러니 옛날에는 나라에서 앞장서서 단순무식 반공뿐만 아니라 국뽕 주입도 정말 많이 했다. 엽전의식 노예근성을 없애려고 도로를 하나 닦고 지하철 노선을 하나 개통해도 현수막에 "선진조국 창조", "우리는 할 수 있다" 프로파간다를 집어넣었다. 그 시절 기록 영상을 보면 알 수 있다.

지금이야 옛날 같은 그저 "국산품 애용, 과소비 추방, 닥치고 저축" 같은 국뽕스러운 경제 이념은 의미가 많이 퇴색했다. 그러나 애국심 마케팅이 필요없어진 것 자체도 알고 보면 그 전에 한창 애국심 마케팅 하에서 육성된 국내 기업들이 세계적으로 꿀리지 않는 경쟁력을 갖춰서 외제품 수입하는 것만치 수출과 국부 창출도 대등하게 가능해진 덕분에 이뤄진 것이다.

그런 거 못 하면? 우리나라도 그저 다국적 기업들에게 원자재 싸게 공급하는 셔틀 국가밖에 못 된다. 아니, 우리나라는 애초에 1차 산업만으로 먹고 살 수 있는 처지도 아니지. 외국에 기술 식민지, 경제 식민지가 돼 버리면 국산품과 수입품 한가하게 골라서 사는 사치를 누리는 시절도 다 끝난다.

이런 와중에 다시 나라의 기운이랄까, 성장 동력을 재충전할 만한 이벤트가 있으면 좋겠다. 올해는 안 그래도 대선도 있는 해인데.. 군인으로 치면 "이 지휘관 휘하에라면 내가 기꺼이 믿고 나라를 위해 목숨 바칠 수 있겠구나!"처럼, 자기 나라를 사랑하고 자기 분야에서 열심히 일하고 연구할 만한 동기를 제공하는 지도자가 나왔으면 좋겠다.

※ 물가 등 추가 회상

국민의식이고 뭐고 하는 골치아픈 얘기는 마치고, 이제부터는 순수하게 옛날 모습 회상만 더 하고자 한다.
내가 여기저기서 모은 자료들을 종합하자면,
1899년 9월에 경인선 개통했던 당시에 인천-노량진간 경인선 열차의 운임은 상등(퍼스트?) 1원 50전, 중등(비즈니스?) 80전, 하등(이코노미?) 40전이었다. 쌀 한 가마의 가격이 4원 정도 하던 시절이니 저기에다 0이 4개 정도 더 붙어야 지금 가격과 비슷할 것이다.

일제 강점기 때 한반도의 철도는 지금의 일본처럼 사철 위주로 굴러갔으며, 물가 대비 운임은 지금보다 더 비쌌다. 지금 일본의 철도 운임이 매우 높은 것처럼 말이다. 실제로 일제 강점기 때 한반도에서 돌아갔던 철도 회사들은 대체로 수지가 잘 맞았으며 흑자를 많이 냈다는 통계가 전해진다.

그러니 그 시절에 기차를 타고 장거리 여행을 가는 것은 지금으로 치면 비행기를 타는 것과 비슷한 위상으로 생각해야 했다. 그것도 저가항공도 아니고 대한항공 급 비행기 말이다.
1899년 철도가 갓 개통한 직후의 얘기이긴 하지만, 그 시절의 느린 증기 기관차로도 최대 100분 남짓이면 갔을 서울-인천 거리에 무슨 장거리 여객기처럼 좌석이 3등급이나 존재했던 이유도 이런 맥락에서 설명 가능할 것이다. 경인선에 첫 도입되었던 증기 기관차는 탄수차가 별도로 있지 않았고 그리 큰 열차도 아니었는데 말이다. 신분제가 지금보다 더 고착화했던 시절임을 감안하더라도 많이 삽질스럽다.

그로부터 반세기쯤 뒤, 지금 "문화역 서울 294"로 바뀐 옛 서울 역 건물은 1925년에 완공됐으며 그 시절 물가로 건설비가 94만 5천원이 들었다고 전해진다. 이것도 지금 물가라면 '만'이 '억~십억'급은 돼야 할 것이다. KTX 광명 역을 건설하는 데도 3천억이 넘는 비용이 들었다고 하니 말이다.
강 우규 의사가 이 역 광장 근처 위치에서 사이토 마코토 총독의 저격을 시도하긴 했지만, 시기가 1919년이기 때문에 이 건물이 있던 때는 아니었다.

그 다음 1935년, 소설가 심 훈이 잘 알다시피 소설 <상록수>를 집필해서 동아일보 발간 15주년 기념 소설 공모에서 당선되었다. 그때 상금이 500원이었던 걸로 유명하다. 소 한 마리의 가격이 60원 정도라고 하니 1900년대 초의 쌀 한 가마 4원과 대조해 보시길.
그 500원은 지금 물가로 최하 수천만~억대로 생각해야 할 것이다. 심 훈은 상금의 일부를 떼어서(아마 100원) 장학 재단을 만들었다고 한다.

1935년과 그리 멀지도 않은 1937년도 노래 중에는 놀랍게도 <백만원이 생긴다면>이라는 곡이 있다.
가사는 검색해 보면 나온다. 금비녀 보석 반지 살 거고 그랜드 피아노에.. 자동차도 아니고 비행기를 살 거라고 한다. 지금 100만원이면 당연히 택도 없는 소리지..

저때 100만원은 지금의 100억~1000억 원에 가깝다고 봐야 한다. 1960년대도 아니고 1937년에 저런 문명의 이기들은 서민들이 상상도 할 수 없는 사치품이었음은 주지의 사실이고.

가사가 1960년대에 한번 리메이크가 됐는데, 이때는 그 시대 상황을 감안해서 TV를 장만하고 3절에 아예 "로케트 타고 달나라 가지"라는 가사가 등장한다. 1930년대에는 비행기가 각광받던 시절이었고 1960년대는 우주 시대가 관심사여서 그랬던 것이지 싶다. 참고로 지금도 혼자서 우주 정거장 정도까지 갔다오는 데 저 몇백~천억 가까이 돈이 든다.

사실, 일제 강점기와 그 이후 대한민국 사이에는 워낙 격변이 심하고 화폐 단위도 여러 번 바뀌긴 했다. 그걸 감안하고 계속 살펴보면,
1968년에 금성사에서 최초로 내놓은 국산 텔레비전의 가격이 68000원이었다. 그 당시 제조업 생산직 근로자의 1년 연봉에 맞먹는 가격이었으며 굳이 우리나라뿐만 아니라 일본도 TV는 집집마다 들여 놓을 수 있는 물건이 아니었다.

이걸 감안하면 독일이 영상 기술이 아주 앞서 있긴 했다. 나치 치하에서 1936년에 베를린 올림픽을 하던 시절에 벌써 공공장소 곳곳에 TV를 비치해서 경기 장면을 중계할 생각을 했기 때문이다. '브라운관'의 원조 국가답다.

1976년 초부터 국내 판매가 개시된 현대 자동차 포니는 그 당시 대당 가격이 230만원 남짓이었다. 1974년에 개통한 서울 지하철이 기본 운임이 30원부터 시작했고 짜장면 한 그릇이 140원가량 했는데 비슷한 시기에 자동차 가격이 저러했다.

그 뒤, 1990년대 초로 가서 내가 직접 겪고 기억한 물가를 나열하자면, 봉지 라면과 200ml 우유가 전부 200원대이던 시절이 있었다. 포니 택시의 기본요금은 700원이었고, 버스비는 초딩 기준으로 80원으로 시작했다가 140원까지 올랐다. 그러다가 1995년에 광역시 등 행정구역 통합이 이뤄지고 본인이 중학생으로 업글하면서 버스비는 400원으로 폭증했다.

휘발유 가격은 리터당 600원대 이러던 걸 본 기억이 있다. 그러다가 나중에 IMF 외환위기 이후부터 주유소마다 가격이 들쭉날쭉이 되고 또 리터당 1000원대 이상으로 가격이 확 올랐다.

서울 택시의 기본요금은 2005년에 1600원다가 지금은 거의 3000원에 근접하는 수준으로 올랐다. 그래도 여전히 택시 뒤를 보면 "10년째 동결인 주행 요금 재조정하라" 이런 구호가 붙은 게 있는데, 당연히 기본요금이 아니라 임률을 말하는 것이다.

버스/지하철의 기본요금은 10여 년 전에 600원인 것부터 봤다가 700원으로 오르고, 2004년 대개편 때 800원이 된 후 900 (2009), 1050 (2012)을 거쳐서 지금은 1250 (2015)이 돼 있다. 이 요금이 지금까지 은근히 가파르게 많이 올라 왔다.
한 줄짜리 일반 김밥도 2000년대 초에 김밥천국이 처음 나타났을 때는 1000원에서 시작했다가 지금은 1500, 2000이 된 지 오래다. 식당에서 시켜 먹는 사이다 한 병도 1000이 유지되는 곳을 찾기가 점점 어려워지는 중.

그러고 보니 옛날에 지하철은 지금처럼 에어컨이 있는 것도 아니고(천장에 그냥 선풍기!) 열이 후끈후끈 올라오는 원시적인 저항 제어 방식인 데다, 기껏 직원용 사무실에 설치된 에어컨의 실외기가 승강장에 있는 무개념 구조이기도 했다. 그러니 승강장와 열차를 막론하고 여름에는 정말 찜통 불지옥이 따로 없었다.

옛날에는 유인 매표소가 있어서 "구로 하나요!" 이러면서 동전을 내밀면 직원이 마분지 승차권을 쓱 주곤 했었다. 요즘 시대엔 그건 인건비 투입하면서 하기에는 너무 단순하고 비생산적인 업무로 간주되어 다 무인화되고 없어졌음. 마치 버스 안내양이 없어지듯이 없어진 거다.
게다가 옛날에는 승차권을 개찰하는 직원도 있었다. 일반열차의 관행이 지하철에도 있었던 셈인데, 지금은 일반열차조차도 개찰이 없어진 지가 오래이니 생소하다.

1966년 서울 모습이 컬러 사진으로 담겨 있는 유튜브 링크를 소개하며 글을 맺겠다. 공교롭게도 서울 찬가(패티김)가 발표된 것도 1969으로, 내가 생각했던 것보다 꽤 옛날이다. 증기 기관차, 노면 전차 같은 게 싹 사라지던 시절. 또한, 산업화 전이라고 해서 마냥 환경이 깨끗하고 푸른 풀숲이 살아 있는 게 아니라는 걸 옛날 '컬러' 사진을 보면 알 수 있다.
뭐, 일본에도 <나 도쿄에 갈란다> 같은 노래가 있으니, 어디든 사람 많이 모여 사는 곳에 살고 싶어하는 사람들 심리는 변함없는 것 같다.

Posted by 사무엘

2017/01/17 08:38 2017/01/17 08:38
,
Response
No Trackback , 2 Comments
RSS :
http://moogi.new21.org/tc/rss/response/1317

이것도 지금까지 수집했던 것들을 나열해 보니 글 한 편 분량이 되는구나.

1. 이 순신과 이 완용

이 순신 장군이 동명이인이 있는 것처럼 친일파 이 완용도 "행적까지 비슷한" 동명이인이 있구나. 굉장히 대조적이다.
무의공 이 순신(1553-1611)은 충무공 이 순신(1545-1598)과 동시대를 살았던 무관 정도를 넘어서 아예 충무공의 부하, 부사수 겸 사적인 절친이었다. 기막힌 인연이 아닐 수 없다. 노량해전에서 충무공이 전사했을 때 응당 이 사람이 바통을 이어받아 전투를 승리로 이끌었다. 단, 두 이 순신은 이름에 한자는 완전히 다르다.

한편, 을사오적 정미칠적 경술국적 그랜드슬램을 모두 달성한 관료 출신의 매국노 1858년생 이 완용 말고, 1872년생 조선 황족 이 완용도 있다. 이 사람은 악행의 레벨이 비록 오리지널 이 완용보다는 못하지만, 역시나 일제로부터 훈1등 자작 작위를 받고 일제 강점기 내내 갑부로 왕창 잘 살았다. 친일 인명 사전 등 이 분야 문헌들에는 몽땅 논란의 여지 없이 이름이 수록됐다.
저 두 이 완용도 한자는 '용' 한 글자가 차이가 있다.

참고로, 내가 이 순신이라는 이름에 저런 동명이인이 있다는 것을 알게 건 철도 덕분이다. 지도를 펴서 KTX 광명 역 주변 지리를 공부하고 있었는데, 인근의 서독산에 '무의공 이 순신의 묘'가 있었기 때문이다. 광명 역 내지 이케아 광명점 바로 근처이다.

2. 1870년대 중반생의 유명인사들

우리나라 초대 대통령 이 승만과, 아프리카의 성자라 불리는 알베르트 슈바이처는 생년과 몰년이 완전히 같은 동시대 사람이다. (1875-1965)
영국의 윈스턴 처칠은 나이만 이 승만· 슈바이처보다 딱 한 살 더 많고(1874) 몰년은 동일하다.
이스라엘의 건국 대통령 겸 과학자인 하임 바이츠만은 1874년생이고, 김 구는 1876년생이다. 다 그렇게 동시대를 산 듯하다.

처칠과 슈바이처는 잘 알다시피 노벨 상 수상자이다. 그런데 나이가 1년 어린 슈바이처가 1952년에 평화상을 먼저 받았고, 처칠은 그 이듬해인 1953년에 '문학상'을 받았다는 것이 흥미롭다. 처칠은 "내가 노벨 상 당첨이라고? 난 2차 세계 대전을 승전으로 이끈 공도 있으니 그럼 평화상이겠지?"이라고 물었는데 "아니요, 문학상이랩니다."라는 대답을 듣고 좀 섭섭해(?)했다고 전해진다.

3. 이 희승과 이 병도

일석 이 희승은 우리나라의 저명한 국어학자이며, 특히 우리에게는 중등학교의 국어 교과서에 실린 수필 <딸깍발이>로 잘 알려져 있다. 호의 의미가 ‘아인슈타인’과 완전히 동일하다는 것도 재미있는 사실이다.
한편, 두계 이 병도는 우리나라의 저명한 역사학자(특별히 국사학자)이다.

국어학과 역사학은 비록 인문계라는 공통점은 있지만 다루는 내용이 서로 직접적인 관계가 있다고 보기는 어렵다. 굳이 공통분모를 접목하자면 역사 언어학 정도밖에 생각이 안 날 것 같다. 그런데 위의 내가 보기에 두 분은 느껴지는 이미지가 놀라울 정도로 비슷한 게 많다.

일단 저 두 분은 생년과 몰년이 정확하게 일치하는 동시대 사람이다. 똑같이 1896~1989이다. 그리고 모두 일본 유학 경험이 있으며 서울대 라인이라는 공통점이 있다.
그리고 각각 자기 분야에서 일부 계층--특히 서울대라든가 우리나라 기득권층을 싫어하고, 친일파에 대한 피해의식이 많은--으로부터 친일 어용학자라는 비판을 좀 집요하게 받고 있다는 것까지도 일치한다. 본인은 그런 비판이 왜 있는지 배경은 이해하지만 그 관점에 전적으로 동의하지는 않는다.

4. 1936년이 뭔 일이 있었나

1936년이라 하면 손 기정 선수가 베를린 올림픽에서 마라톤 금메달을 받은 게 이때이다. 2차 세계 대전 이전에 마지막으로 열렸던 올림픽이요, 개최 주체가 나치 독일인 덕분에 한국인이 히틀러를 구경할 수 있었던 매우 드문 기회였다.
학계에서는 이 해에 우 장춘이 종의 합성 논문으로 농학박사 학위를 받았고, 게다가 같은 해에 공 병우도 안과 의학박사 학위를 받았다. 나이는 다들 다르다.

서양으로 가면 영국의 앨런 튜링이 손 기정과 동갑인 1912년생이고 바로 저 때에 계산 가능한 문제와 튜링 기계라는 개념을 제안한 안드로메다급의 논문을 썼다.
한편, 찰리 채플린이 리즈 시절 작품인 '모던 타임즈'를 발표한 때도 1936년이다.
채플린은 1889년 4월생으로, 히틀러와 생일이 나흘밖에 차이가 안 나는 완전 동갑내기였다. 채플린은 그 콧수염 붙여서 히틀러를 풍자하는 연기를 하기도 했다.

하나 더.. 손 기정과 비슷한 연배인 우리나라의 문학가로는 황 순원과 서 정주가 있다. 두 분 다 공교롭게도 동일하게 1915년생, 2000년몰이다. 전공 실력에서는 둘 다 위대한 문인으로 칭송받고 있다. 하지만 황 순원은 일제와 독재를 거부한 깨끗한 이력 덕분에 더욱 칭송받는 반면, 서 정주는.. 그야말로 도를 넘어서고 실드 가능한 수준을 넘는 기회주의적인 행적 때문에 많은 비판을 받아서 서로 좋은 대조를 이룬다.

5. 비행기 관련 인물들

1901년이 역사에서 뭐가 특별한 계기가 있기라도 했는지, 한반도에 비행기 조종사들이 대거 이때 태어났다.

  • 안 창남(1901-1930, 남자, 항일): 1921년에 일본에서 최초로 치러진 비행사 자격 시험을 수석으로 합격. 일단 한반도 땅에서 최초로 비행기를 타고 날아다닌 최초의 한국인이다.
    훗날 중국으로 망명해서 항일 조직을 결성하고 독립 운동도 했는데 1930년에 비행기 추락 사고로 사망, 단명했다. 건국훈장 애국장 추서.
  • 권 기옥(1901-1988, 여자, 항일): 1925년에 중국에서 비행사 면허를 따서 중국 공군에서 복무했다. 3·1 운동 참가로 인한 체포, 임시정부 요원 활동 등, 안창남보다도 더 열혈 독립운동을 했다. 천수를 누렸으며, 건국훈장 독립장이 추서됐다.
  • 신 용욱(1901-1961, 남자, 친일): 예전 글에서 소개한 바 있다. 사업을 하려고 일제 부역은 좀 했음. 자살로 생을 마감함.
  • 박 경원(1901-1933, 여자, 친일): 권 기옥과는 달리 민간 라인에서 비행사 면허를 딴 최초의 여성 파일럿이다. 하지만 신사 참배, 황군 위문 비행 등 유명인사 민간인으로서 친일 행위 저지를 건 다 저질렀기 때문에 오늘날의 평가는 다소 박하다.

박 경원의 경우 생애가 영화 <청연>으로 만들어지기도 했지만, 실존 인물의 친일 행적 때문에 이미지를 말아먹어서 영화는 작품성에 비해 별로 흥행을 못 했다. 그 옛날에 그것도 여자가 비행기를 몰고 하늘을 날았다는 건 요즘으로 치면 한국인 최초의 우주인 이 소연 박사에 맞먹는 쇼킹 뉴스였을 텐데, 그런 급의 엘리트 유명인사가 전국을 돌면서 대동아 공영권 징병 권유 강연을 하고 얼굴마담 역할을 한 거라고 생각하면 된다.

아, 박 경원도 비행기 추락 사고를 당해 안 창남과 비슷하게 단명했다. 근데 태평양 전쟁이 벌어지기도 한참 전에 죽었는데 막 심하게 친일 할 거리가 있긴 했나? 그건 좀 의문이다.

6. 허 현회와 김 기종

허 현회 씨는 현대 의학, 백신 등에 대해 병적인 수준의 불신과 음모론을 제기하고 검증되지 않은 자연 치료를 고집하면서 책도 쓰고 많이 유명해졌던 사람이다. 그러던 와중에 '헬쓰 카레' 같은 어처구니없는 실수를 저질러서 더욱 비웃음을 사기도 했고 말이다. 하지만 그는 지난 여름에 자기가 걸린 병을 못 고치고 결국 중년의 나이로 세상을 떠났다.

한편, 김 기종 씨는 개량 한복+수염 차림으로 종북 성향 통일 운동을 많이 벌이다가 결정타로 주한 미국 대사에게 살인미수 테러를 저질러서 중형을 선고받은 범죄자이다.
진작부터 사상과는 별개로 성질· 인격도 이상해서 동일한 좌파 성향의 다른 사람들하고도 못 어울렸으며, 그렇다고 변변한 직업을 가진 것도 아니어서 굉장한 생활고에 시달렸다고 한다.

이 두 사람은 성균관 대학교 법대 출신이라는 공통점이 있다. 나이도 비슷하고(각각 1961, 1959년생?) 80년대 초반이라는 학번도 비슷하다. 그 시절에 저 학교에서 무슨 마가 씌이기라도 해서 비슷한 시기에 갑자기 저런 동문이 배출됐는지는 모르겠다.

7. 임 백준과 최 백준

우리나라에 임 백준이라는 분은 미국에서 소프트웨어 개발자로 취업해서 잘나가면서 IT 칼럼니스트로 활동하고 있다. 책도 썼고.
그리고 최 백준이라는 분은 국내에서 코딩· 알고리즘 및 정보 올림피아드 계열 강의를 뛰면서 학원을 운영하고 있다.
후자의 관심사가 알고리즘 설계, 최적해, 문제 풀이 같은 좁은 분야라면, 전자의 관심사는 컴터 업계의 변화 동향 빨리 빨리 받아들이고 예측하기, 다양한 프로그래밍 언어 익히기, 좋은 직장 들어가서 몸값 비싼 개발자가 되기 위해 필요한 자기계발 같은 더 넓은 분야이다.

8. 우리나라 전직 대통령들

우리나라는 전직 대통령들이 퇴임 후에 후폭풍 없이 좋게 곱게 잘 지내는 경우가 잘 없었다. 군인 출신으로서 퇴임 후에 (형식적으로나마) 사형 선고 받고 교도소까지 갔다 온 전직 대통령도 있고, 결국은 비리 수사 받다가 돌연 자살을 선택한 전직 대통령도 있다. 현직인 박 근혜 대통령은 퇴임 후 어찌 될지 모르겠다. 아니, 퇴임 후는커녕 임기를 제대로 마칠 수 있을지도 아직 불투명한 상황이 됐구나.
정치 문화가 성숙하지 못해서 비리 없이는 도저히 지지 기반을 모으고 정치를 제대로 할 수가 없어서 그런 것 같다. 그러니 이런 풍조는 그저 정치인 욕만 한다고 해결될 문제가 아니다. 무식하지만 “그럼 니가 직접 해 보든가” 논리가 아직은 통용되는 분야인 것 같다.

현재 전직 대통령들 중에 살아 있는 사람은 전 두환과 노 태우, 이 명박이다. 그런데 전과 노는 전직 대통령 예우가 박탈돼서 경호만 받고 있으며, 노는 특히 건강도 좋지 않은 상태라고 전해진다. 그러니 100% 완전한 예우를 받고 있는 사람은 후자 한 명뿐이다.
전땅크만큼이나 2MB 아저씨도.. 이념과는 별개로 좀 대기업 경영자 출신답게 좋게 말하면 노련하고, 나쁘게 말하면 교활한 구석이 있다. 재임 중에 광우뻥 촛불 때문에 고생 많았고 좌좀들이 선동하는 것만치 나라 망치고 나쁜 통치를 한 건 물론 아니지만, 그렇다고 비리가 없는 것도 아니고 막 잘한 것도 아니다. 진짜 청렴하고 순진해 빠진 후임 여성 대통령을 접해 보니 저 특성이 더욱 두드러져 보인다. 청렴하기만 한 건 안타깝지만 무능을 수반할 가능성도 높으니 말이다.

전직 대통령이 후임에 의해서 뭔가 문전박대 당한 사례가 있다. 이 승만이야 한번 하와이로 요양 갔다가 박 정희로부터 국민 정서상 입국을 냉정하게 거부 당하는 바람에 타지에서 세상을 떠났다. 자기가 천신만고 끝에 세워 놓은 나라 땅에서 죽지를 못했다.
한편, 전 두환은 자기 때 올림픽 유치를 다 시켜 놨지만 정작 올림픽 개막식 때는 역시 국민 정서상 노 태우 정부로부터 입장을 거부 당해서 개막식을 자택에서 TV로만 봐야 하는 신세가 됐다. 물론 그 뒤로도 백담사로 피신하는 일도 벌어졌으니 육사 후배이자 부사수인 노 태우와 사이는 더욱 불편해졌다. 대머리 할아버지의 입장에서는 후배가 자기를 기대한 것만치 못 챙겨 주고 내팽개친 셈이니까. 헐~ 이런 일도 있었다.

9. 유럽의 공무원 출신의 과학자

뉴턴, 라부아지에, 아인슈타인은 전· 현직 공무원 출신의 과학자라는 공통점이 있다. 어째 영· 프· 독일계가 나란히 한데 모였네.
뉴턴은 조폐국에서 근무하면서 자기 과학 지식을 동원하여 위폐를 판별하고, 화폐 위배범을 잡아서 사형 시키는 걸 즐겼다. 아인슈타인은 특허청에서 근무하면서 개인 시간에 연구를 계속한 끝에 노벨 상까지 받게 됐다. 과학자로서의 명성과 공무원으로서의 안정성을 둘 다 잡은 똑똑하고 부러운 사람 되겠다.

라부아지에는 세리로 있으면서 돈깨나 모아서 다이아몬드를 태워 보는 실험까지 했으나.. 프랑스 대혁명 때 인민의 적 브루주아 계급으로 찍혀서 단두대의 이슬로 사라졌다. 저런 유능한 과학자를 죽게 해서는 안 된다고 국제적으로 구명 운동이 벌어지기도 했으나 광기를 막지는 못했다. 실제로 이 사람은 과학자로서가 아니라 관리로서는 좀 부정축재도 한 사람이었다.

10. 예능인 출신의 발명가

공무원이 아니라 예체능 분야에 종사하면서 과학..이라기보다는 발명을 한 공학자가 있었다. 물론, 이공계 출신 중에도 음악 같은 예체능에 천재적인 소질을 보인 사람이 있긴 한데 그보다는 예체능이 더 주업인 경우 말이다.

헤디 라마르(1914-2000)라는 여인은 배우인데 2차 세계 대전 중에 자국 미국의 전쟁 승리를 위해 통신 기술을 연구하던 중에 오늘날 패킷 기반 무선 통신 기술인 CDMA(코드 분할 다중 접속)의 근간 기술을 개발했다. 그 어려운 전자공학은 또 언제 공부하셨나..;; 남편이 이공계였냐 하면 그것도 아니고 그냥 작곡가였다니 더욱 경이롭다.

그리고 요제프 호프만(1876-1957)이라는 사람은 피아니스트인데 실용적인 자동차 와이퍼를 발명했다. 주기적으로 왔다갔다 움직이는 메트로놈의 동작에 착안해서 발명했댄다.. 피아노 실력도 괴수급이었다는데 완전 천재다.. ㅠㅠㅠ

Posted by 사무엘

2017/01/14 08:32 2017/01/14 08:32
Response
No Trackback , 4 Comments
RSS :
http://moogi.new21.org/tc/rss/response/1316

11. 필요악

  • 살인 범죄를 방지하기 위해서는 "살인을 저지른 자를 반드시 죽여라"라는 역설적인 법이 필요하다.
  • 민주주의 체제를 지키기 위해서는 역설적으로 군대라는 대단히 비민주적인 조직이 필요하다.
  • 어린애를 남을 배려할 줄 아는(폭력을 행사하지 않는 것 포함) 사람으로 키우기 위해서는 역설적으로 애가 잘못했을 때는 정도와 수위의 조절이 필요할지언정 체벌 자체는 행하면서 키워야 한다.

필요악이라는 건 성경이 매우 적극적으로 지지할 뿐만 아니라, 이런 게 없이는 인간 사회가 돌아가고 유지될 수 없다는 걸 굳이 신앙의 힘을 동원하지 않더라도 인간의 본성과 양심이 인지하고 있으며 역사가 입증하고 있다.

정치· 비정치 분야를 막론하고 그 너무 당연한 필요악들을 말 같지도 않은 인권과 진보의 이름으로 일부 예외적인 부작용 사례만 부각시키면서 부정하는 애들은 세상을 더욱 망가뜨리고 혼란에 빠뜨리고 있으며, 더 나쁘게 말하면 국가 체제 전복까지 조장하고 있음을 난 확실하게 입증· 폭로할 수 있다.

군대를 예로 들면.. 누구 말마따나 군대는 민주주의를 '지키는' 조직이지, 민주주의를 실행하는 조직이 아니다.
군대에서 계급을 없애 보는 삽질은 이미 FM 공산주의 국가이던 소련이 1920~40년대에 두루 실험해 보고는 절대 유지 불가능하다는 걸 친히 입증해 줬다.

말이 나왔으니 말인데, 교회도 마찬가지이다. 뭐 니골라 당 운운하면서 개인별 영적 접근성을 제멋대로 차별하는 성직 계급에 대한 비판까지는 좋다. 허나, 아예 일체의 호칭과 직분까지 부정하면서 "사람 위에 사람 없다", "목사만 강단에서 설교하는 건 잘못됐다", "불신자를 대상으로 하는 복음 설교 외에 다른 설교는 필요하지 않다" 이런 데에 혹한 사람들이 좋은 교회 세워서 성도들을 훌륭하게 양육해 냈다는 소리는 내가 들은 적이 없다.
사역자에 의한 체계적인 말씀 선포와 성경 강해 없이 '교제'만 하는 건 교회가 아니며 신자가 제대로 자랄 수가 없기 때문이다. 아, 그렇다고 교회에서 직분이 무슨 필요악이기라도 하다는 건 아니니 이건 성격이 좀 다른 얘기지만.

12. 최대와 최저

사회나 자연에서 어떤 현상을 측정하는 잣대는 최대와 최저가 있는데, 최대의 이익을 추구하기 위해서는 최대 만만찮게 최소를 중요하게 따져야 하는 경우가 있다.

  • 교통수단의 경우, 순간 최대 속도보다 전체 표정 속도가 더 중요하다.
  • 건강에서 최고 혈압이 높은 것보다 최저 혈압이 높은 게 더 위험하다고 여겨진다.
  • 10년 이하의 징역보다 2년 이상의 징역이 대개 더 무거운 형벌이다.
  • 낮 최고 기온 38도보다, 밤 최저 기온 28도가 체감상 더 끔찍한 무더위이다.
  • 정치인 선거만 해도.. 최선을 뽑는 것보다는 최악을 피하는 게 더 중요하다.
  • 친구의 결혼식이나 돌잔치 같은 데는 사정상 불참하더라도, 친구의 친인척 장례식 문상에는 어지간해서는 가는 게 좋다. 결혼식은 일시가 딱 정해져 있지만 장례식은 그래도 기간 range가 있는 편이어서 부담이 더 적기도 하다.

이런 것들..
그러니, 배우자처럼 평생 함께할 사람을 고를 때도, 좋아하는 것이 일치하는 것보다 싫어하는 것이 일치하는 게 더 중요할 수 있다.
본인의 경우를 예로 들자면, 상대방이 굳이 나처럼 철도를 좋아하거나 세벌식을 쓰지는 않아도 된다. 굳이 컴공과 출신이거나 언어학에 관심이 있지 않아도 된다. 그런 것들은 액세서리 옵션일 뿐이다.

허나, 굳이 그런 게 일치하지 않더라도 북괴 정권에 대한 생각이 일치하고 종북개빨들을 혐오하는 게 일치한다면 그거 하나만으로도 본인과 장벽이 크게 허물어지고 금세 가까워질 수 있을 것이다. 반대로 이런 밑바닥에서 자꾸 부딪치면 다른 전공이나 취미가 일치하더라도 내 경험상 사람이 하나가 되기 굉장히 난감하고 불편해지더라.

13. 전화위복

예전에 인터넷에서 무슨 신문 기사를 봤다. 외국에서 있었던 일인데, 어떤 집에 딸이 다운 증후군에다 지능도 딸리는지 문맹이었다. 정상적인 사회 생활을 할 수 없는 지경이었지만 그 아이의 어머니는 그래도 얘에게 딱 맞는 역할이 사회 어딘가에 있을 거라고 생각하고 희망을 놓지 않았다.

그래서 여기저기 수소문을 하고 여러 회사들에다 편지를 넣은 끝에 소원을 이뤘다. 어느 기업의 보안팀에서 기밀 문서들을 파기하는 업무용으로 딸을 취업시킨 것이다.
다운 증후군의 특성상 기계적인 단순노동에 싫증 내지 않고 집중 잘하고(포레스트 검프??), 결정적으로 문맹인지라 기밀 문서를 봐도 뭔 말인지 모르니 저런 일에는 쟤만 한 적임자가 없었다고 한다. 세상에~!

하긴, 맹인이 안마사 일을 하는 것도 저것과 동일한 맥락에서 적절한 거다. 안마사는 사람 알몸을 만지는 직업이니까.
또한, 왕조 시대엔 '내시'(환관)가 괜히 있었던 게 아니지.
장애(disability)가 오히려 필요하고 도움이 되는 경우라 하겠다.

과수원에 태풍이 불어서 낙과가 왕창 발생해 버렸는데..

  • 어디서는 어려운 농가를 돕자는 차원에서 그나마 손상 정도가 덜한 낙과들을 반값만 매겨서 "상품성이 좀 떨어지지만 사 주세요" 운동을 벌이는 식으로 난관을 극복했다.
  • 한편, 일본 어디에서는 떨어지지 않은 소수의 과일들을 "혹독한 태풍도 견뎌 낸 특급 과일" 이렇게 오히려 프리미엄을 붙여서 비싸게 파는 마케팅이 성공하기도 했댄다.

발상의 전환이 필요하다.
본인도 한글(과 한국어)을 굳이 알파벳처럼 만들려는 연구를 하지는 않는다. 한글이니까, 발상을 달리하여 타 언어· 문자와 구조적으로 다른 대신에 이런 완전히 새로운 활용이 가능하다는 걸 입증하는 연구를 하고 있다.

14. 침

국어에서 '침'이라는 단어는 순우리말로는 입 속의 타액을 뜻한다. 그러나 한자어로는 길쭉하고 끝이 뾰족한 바늘을 뜻한다(針). 사실, 한의학에서 꽂는 침도 이것과 비슷한 물건이지만 한자는 또 다르다(鍼).
타액과 바늘· 가시는 언어적으로 서로 전혀 관계가 없는 개념이며 소리만 우연히 일치할 뿐이다. 그러므로 순우리말 침과 한자어 침은 동음이의어 관계이다. 하지만 두 침이 같은 문맥에서 므흣하게 섞여 쓰이는 경우가 몇 가지 있다.

먼저 사람의 피를 빨아먹는 모기.
모기는 시각이 아닌 이산화탄소와 땀냄새로 사람을 찾아낸 뒤, 바늘 역할을 하는 뾰족한 주둥이를 피부 내부로 찔러 넣는다. 그 다음에는 흡혈 중에 혈액의 응고를 막기 위해서 진짜 자기 타액도 주입한다. 이게 인체와 이상한 반응을 일으키기 때문에 모기가 떠난 뒤부터 우리가 다 잘 아는 가려움과 붓기를 유발한다고 잘 알려져 있다.

그런데 이 모든 과정을 도대체 어떻게 하나도 안 아프게 감쪽같이 해치우는지 모르겠다. 하다못해 혈당 체크를 위해 눈꼽만치만 피를 뽑으려 해도 최소한의 따끔은 감수해야 하는데.. 무통 채혈 기술은 모기한테서 배워야 할 지경이다. 신묘막측한 기술로 통점을 감쪽같이 피해 간다고도 한다. 하긴, 모기가 피를 빨아먹는데 따끔거렸다간 모기는 절대 목숨을 부지할 수 없을 테니.

모기는 원래 식물의 체액만 빨아먹는 놈이었는데 인간의 타락 이후에 습성이 변태같이 바뀐 대표적인 해충일 것이다. 병원균까지 옮기는 아주 해로운 놈인데, 이런 놈이 파리보다 훨씬 둔하고 비행 능력이 떨어져서 그나마 잡기는 쉬운 게 다행이라 하겠다.

그 다음으로 스타크래프트 저그 유닛인 히드라리스크가 있다.
히드라의 공격은 설정상 등뼈에 붙은 가시를 날리는 것이다. 물론 종족 밸런스 때문에 무리해서 range 공격으로 만들어 준 것이지, 현실에서는 좀 무리가 있는 설정이다.

설정과는 달리, 게임상으로 보기에 히드라가 공격하는 모습은 영락없이 침을 뱉는 것 같다. -_-;;;
뭔가 초록색 체액이 날아가는 듯한 게 針이 아니라 '침'인 것이다. 뽀잉 뽀잉~ 소리도 퉤퉤 침뱉는 것처럼 보인다.
옛날에 스타를 빛낸 100명의 유닛들이라는 이상한 패러디 노래에서도 "가래침은 히드라 갑빠 울트라" 이런 가사가 있었다.

세상에, 저글링도 발톱으로 할퀴어 대는데 더 거대하고 흉포한 히드라리스크가 참 지저분하고 불결한 방식으로 공격한다는 생각이 든다.
그리고 개인적으로 느끼기엔 hydra-가 hydro-를 연상시켜서.. 역시나 뭔가 더욱 액체스러운 느낌이 들기도 했다. 비록 어원상으로는 아무 관계가 없지만.. 히드라 네놈은 여러 모로 공격 수단이 spitting으로 굳어져 가는구나. 뭐 이런 잡생각을 했다.

15. 총질

스포츠 사격과 군대 사격, 펜싱과 검도, 물감과 포스터칼라, 크레파스와 파스텔 등..
체육과 미술 분야에는 뭔가 서로 비슷해 보이는데 용도가 다른 것들이 있는 것 같다.
사격 같은 경우 스포츠 사격은 군대 사격보다 훨씬 더 가까이서 쏘고 표적도 더 작고, 총은 더 무겁고 반동이 적고 격발이 훨씬 더 쉽게 되는 걸 쓴다. 한쪽을 잘하는 감으로 다른 한쪽을 잘한다는 보장은 없다. 스포츠 사격 금메달리스트가 곧장 군대 특등사수 저격수와 호환되지는 않는다는 뜻이다.

총은 총알이 날아가는 궤적이 눈으로 안 보이니 궤적에 대해서 온갖 잘못된 오해가 나돌기도 하고, 실생활에서의 대미지가 너무 사기급이다 보니 각종 게임에서는 대미지가 너무 너프다운돼 있다.
많이 빗나갔다가 한번 명중해 버리면 그냥 '윽!' 즉사인데.. 그게 게임에서는 각각의 총알이 대미지를 찔끔찔끔 조금씩 주는 식으로 표현되곤 한다.

그런데 "총은 살살 쏘면 안(덜) 아파요. ^^" 이런 말은.. 참 귀엽게 들린다. 살살 쏘면 격발도 좀 덜 시끄럽게 할 수 있으려나? =_=;;;; 총을 일종의 냉병기 같은 관점에서 본 거 같다.
뽕 맞은 마린은 총을 세게 쏘니까 연사력과 단위 시간당 대미지가 올라가기라도 하는가 보다. ㅋㅋ

16. 청소

청소를 해 보면.. 뭔가 기하급수 스케일이 느껴진다. 치우고 없애고 제거해야 하는 물질의 스케일이 얼마인지에 따라서.. 동원하는 도구가 달라지기 때문이다.
엄청 큰 덩어리는 손으로 들어서 치우면 된다.
팔로 안아야 할 정도로 큰 놈이 아니라면 집게로 집어서 치울 수도 있다.

다음으로 일일이 손으로 집기에는 작고 많은 이물질은 빗자루로 쓸어 담는다.
빗자루 스케일보다 약간 더 작고 많은 이물질은 청소기를 돌려서 수월하게 제거할 수도 있다.
마지막으로, 빗자루 클래스도 감당할 수 없을 정도로 작은 먼지들은 걸레로 닦아서 제거하게 된다.

이렇게 청소 도구를 교체하게 하는 이물질의 크기 경계는 실제값으로 표현하는 것보다는 로그를 씌워서 표현하는 게 더 적절할지도 모르겠다. 반도체 공장 같은 데서 먼지 제거 청소를 하는 스케일은 더욱 작아질 테니까!!

17. 일광량과 하늘 색깔로부터 시간대 추정하기

동서남북 방향(= 그림자 방향)을 전혀 모른다고 가정할 때, 깜깜한 밤도, 벌건 대낮도 아닌 적당히 짙푸르거나 노을 낀 누런 하늘의 바깥 사진 한 컷만 보고 이게 해가 뜨는 중인지(새벽이나 아침), 해가 지는 중인지(저녁) 판별이 일반적으로 가능할까?

굉장히 알쏭달쏭한 질문인데.. 인터넷 검색을 해 보니 두 하늘은 날씨가 동일하다면 색깔 차원에서는 완전히 동일하다고 한다. 그러니 다른 단서가 전혀 없이 색깔만 봐서는 진~짜 원칙적으로는 시간대를 구분할 수 없다는 결론이 도출된다.
의외다. 하긴, f(x)의 값 하나만 달랑 보고는 변화량에 속하는 f'(x)의 값을 추론할 수는 없긴 하겠다.

이 말인즉슨, 영화나 드라마 찍을 때 저녁이나 새벽 씬을 편의상 그 반대 시간대에 촬영하는 것도 가능하다는 뜻이다.
영화업계에서는 가상의 선박을 찍을 때도 비용 절감을 위해 한쪽 현만 세트를 만들어 놓고는 좌우 미러링을 해서 좌현과 우현을 다 구현하는 게 관행이다(타이타닉, 연평해전..). 하물며 새벽과 저녁쯤은 손쉽게 바꿔치기 가능하겠다.

영화업계에서 온갖 꼼수를 써서 저비용 트릭을 구현하는 원리를 보면 마치 고도의 마술 테크닉 같기도 하고, 486급 컴퓨터에서 Doom 같은 게임을 돌리기 위해서 존 카맥이 고안해 낸 온갖 기상천외한 자료구조와 알고리즘을 보는 것 같다. 그.. 부동소수점의 특성을 이용해서 제곱근 역수(= 벡터 정규화를 위한 연산)를 굉장히 빠르고도 상당히 정확하게 구하는 알고리즘처럼 말이다.

18. 해발 고도의 기준

본인은 올해 등산 엄청 많이 다녀오면서 100~200m짜리 언덕부터 시작해 400m는 넘는 것까지 다양한 산을 올랐다.
산의 높이를 논할 때 통용되는 잣대는 해발 고도이다. 쉽게 말해 해수면으로부터의 높이이다. 에베레스트 8848, 백두산 2744, 한라산 1950 이런 것들도 해발 고도이다.

이것 말고, 해당 행성의 중심부로부터의 거리(!!)라든가, 바다가 없다고 치고 그 밑의 대륙 뿌리까지 다 쳤을 때의 높이 같은 꽤 마이너한 잣대도 있다. 그런 기준을 적용하면 지구상엔 에베레스트보다 더 높은 산도 있다.
또한, 바다가 존재하지 않는 다른 행성의 산의 높이를 논할 때는 선택의 여지 없이 저런 생소한 잣대가 적용되어야 할 것이다.

해발 고도는 직관적이라는 장점이 있지만 마냥 장땡이 아니다. 해수면의 높이는 시시각각 변할 뿐만 아니라 어느 바다의 해수면이냐에 따라서도 달라진다. 1m를 빛이 진공에서 진행한 거리가 아니라 미터 원기 내지 지구 자오선 길이를 기준으로 정의했던 것만큼이나 절대적이지 못하다.

우리나라의 경우 인천 앞바다에서 밀물 최대와 썰물 최소를 평균한 해수면 높이를 표준 높이로 규정하고, 이를 산의 높이를 재는 잣대로 사용한다. 백두산의 높이 2744는 일제 강점기 때 저 기준으로 측정되었으며, 우리나라와 일본은 지금도 저 해수면 높이를 사용한다. 그러나 중국과 북한은 평양에서 가까운 앞바다를 기준으로 삼아서 백두산 높이가 2750 정도로 미묘하게 더 높다고 본다.

사실, 2016년 10월인가 그때는 딱히 태풍· 폭우나 온실효과도 없었는데 태양과 달의 배치만으로 바다의 수위가 올라가서 인천과 목포 해안 저지대가 잠시 침수되기도 했다. 이런 게 과연 천체의 인력이구나 싶다.
마치 철도나 도로의 기점 표지판이 있고 산에도 "여기 위치 좌표가 xxx입니다" 표지판이 있는 것처럼.. "이 지대의 높이가 해발 몇 m입니다"이라는 해발고도 원점 표지판도 만들어진 게 있다.

그리고 지금은 그게 인하공전 캠퍼스 안에 보관되어 있다고 한다. 7호관과 도서관 사이이며, 인터넷 지도를 통해서도 확인 가능하다. 인하공전에는 보잉 727 실습기뿐만 아니라 레어템이 하나 더 있다는 걸 최근에 알게 됐다.

Posted by 사무엘

2017/01/11 08:29 2017/01/11 08:29
, , ,
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/1315

6.
운전자라면 이미 다 아실 것이고 예전에 이 블로그에서도 몇 차례 언급한 적이 있듯, 우리나라의 고속도로에는 하이패스라는 통행료 무인 자동 정산 시스템이 있다. 고속도로의 입출구에서 모든 차들을 강제로 잠시 세워서 현금으로 통행료를 걷는 시스템은 매우 불편하고 비효율적이며 운전자에게나 회사에게나 좋을 게 하나도 없었기 때문이다.

그래서 최소한 잔돈 취급을 없애서 톨비 결제 속도를 조금이라도 올리기 위해 먼저 과거에 있었던 고속도로 카드가 도입됐다 식당에서 현금 대신 식권, 버스에서 토큰이 도입된 것과 비슷한 이치다. 단, 신용카드는 안정성 문제 때문에 톨게이트에서는 취급을 전통적으로 거부해 왔다.

그 뒤, 통행료 결제를 원큐에 할 뿐만 아니라 차량을 정차시킬 필요도 없게 하기 위해 다음 세대 기술인 하이패스가 도입됐었으며, 종전의 고속도로 카드는 폐지됐다.
하이패스는 편리하기도 하고 2000년대 초에 도입되던 당시에는 나름 미래의 신기술을 염두에 둔 시스템이기도 했으나, 지금은 다소 아쉬움이 남는 물건으로 전락한 면모가 있다.

요즘은 하다못해 여느 건물의 지하 주차장에만 가도 차량 번호판이 자동으로 인식되고 따로 주차권이 발급되지도 않는다. 하지만 하이패스는 식별 태그나 카드 한 장만 구비한다고 끝나는 게 아니라 모든 차량들이 단말기를 사서 등록· 개통해야 하는 번거로운 체계이다.

이건 그 당시에 고려 대상이었던 보안 통신 방식과도 관계가 있으며, 또 단말기를 통해서 통행료 결제뿐만 아니라 도로 상태(정체 여부)와 기상 정보까지 중계하여 고속도로 종합 정보 시스템을 구축하겠다는 장기적인 계획을 보고 내린 결정이었다고 한다.
하지만 오늘날 교통 정보 시스템은 싸제 내비들에게 완전히 역할이 넘어갔으니 그 예상은 빗나갔다. 굳이 하이패스에서 그런 것까지 신경 쓸 필요는 없어진 것이다.

한국 도로 공사는 전국의 모든 차량들에 하루빨리 하이패스를 장착시키고 전국의 모든 고속도로에서 하루빨리 톨게이트들을 싹 없애고 싶어 안달이 나 있다. 그 취지와 심정은 이해하지만, 하이패스의 보급이 늦어지고 있고 당장 내 차에조차 아직 하이패스가 없는 이유는 모든 차량들에 일일이 단말기를 달아야 하는 그 불편한 구조 때문이다. 초기의 진입 장벽이 높으니 고속도로를 자주 이용하지 않는 운전자라면 별로 필요를 못 느끼는 것이다.

더구나 2000년대 이후로 전국의 수많은 고속도로들이 이 시스템 기반으로 거미줄처럼 개통돼 버렸으니 이제 와서 그걸 선뜻 고치지도 못한다.
물론 일개 건물의 간단한 무인 차량 인식 주차 시스템과, 전국에서 수십~수백만 대의 차량의 출입을 실시간으로 체크하고 금융거래를 안정적으로 수행해야 하는 고속도로 통행료 징수 시스템이 그 규모와 신뢰성이 서로 비할 바는 못 되는 것은 사실이다. 그래도 좀 더 가벼운 시스템이 초기에 도입됐으면 하는 아쉬움은 계속 남는다.

이건 마치.. 비슷한 1990년대 말에 고속철도를 건설하고 차량을 도입할 때.. "앞으로 뭐 서울-부산을 겨우 1시간 56분 만에 왕래할 텐데, 차내에 편의 시설 같은 건 별로 없어도 되겠지"라는 생각으로 객실에 콘센트를 전혀 설치하지 않은 것과 같은 급으로 예상이 빗나갔다.

2차 구간에 대전· 대구 도심 구간까지 이제 경부 고속철은 전구간이 완전 개통했음에도 불구하고 KTX는 그 정도로까지 빠르게 달리지는 못하고 있다. 그리고 철도 건설이 세월아 네월아 지연되는 동안 전국민에게는 스마트폰이 보급됐고 전기 충전 없이는 잠시도 견딜 수 없는 시대가 됐다. 그러니 새마을호에도 있는 콘센트가 KTX에 없는 것은 정서상 받아들여질 수 없었으며, KTX 산천에는 곧장 콘센트가 추가되었다.

서울 2기 지하철의 경우, 미래에 건설 예정인 3기 지하철과의 환승을 고려해서 나름 머리를 써서 여의도, 몽촌토성, 녹사평, 논현 등의 역을 만들었으나.. 몇 년 뒤 IMF 때문에 3기 지하철이 거의 다 파토 날 줄 그때 누가 예상했겠는가? 결국 기존 3· 7호선의 연장과 신규 9호선만이 예상대로 추진되었으며, 여러 역들 중에 여의도와 오금 역만이 미리 만들어 둔 확장 고려 설계의 수혜를 입었다.

이처럼 어떤 대규모 건축이나 공공재 시스템 구축 사업은 불과 10~20년 뒤의 미래도 예측하기 어려운 경우가 많다. 표준을 잘못 정해서 후손들이 대대로 고생하는 게 많다. 우리나라의 경우 한글 글자판도 이 범주에 속한다.
그럼에도 불구하고 우리나라의 경우 가정용 전기 전압 220V 승압과 철도 표준궤는 미래를 내다보고 적절한 타이밍에 밀어붙여서 표준이 다행히 잘 정착해 있다. 아직 1xx V의 굴레를 못 벗어나 있는 일본과 미국처럼 되지 않았다. 일본은 협궤까지 잔뜩 깔려서 인제 와서 이걸 어찌할 수도 없고 더 고생하고 있으니 말이다.

7.
2013년에는 베네딕트 교황이 몇백 년 만에 아주 이례적으로 재직 중에 자진 사임하더니만, 2016년엔 아키히토 일왕이 갑자기 생전퇴위를 선언했다. 어떤 조직의 최고 대빵을 종신직으로 수행하고 있던 사람이 갑자기 자기 지위를 내려놓아 버리면 전직 대빵에 대한 예우도 그렇고 그 아래에 있는 사람들이 여러 모로 난감해질 텐데.
이 방면으로도 자꾸 이변이 터지는 듯한 느낌이다. 특히 일본의 경우 일왕이 인간선언을 한 지 70년 만의 일이다.

일왕 중에는 전임인 히로히토, 교황 중에는 요한 바오로 2세가 재임 기간도 길었고 격변의 20세기 중후반 동안 엄청난 임팩트를 남겼다. 후임 중에 아직 이들만 한 행적을 남긴 사람은 없다. 물론 아직 시간이 충분히 흐르지도 않기도 했고.

그래도 재위 기간과 영향력으로 치면 이들조차도 영국의 엘리자베스 2세 여왕 앞에서는 다 버로우 타야 할 것이다. 자기 나라에서 올림픽이 두 번 열리는 걸 봤으며, 또한 국가 원수로서 2차 세계 대전과 유튜브, 트위터, 스마트폰 시대를 다 경험한 할머니이다.
자기 재임 기간 동안 미국 대통령을 도대체 몇 명이나 거쳐 갔는지도 모를 지경이고. -_- 무려 1920년대생으로, 우리나라로 치면 백 선엽 장군, 송 해 씨 같은 연배와 짬인데, 은퇴도 안 했다.

8.
(1) 주민등록증과 (2) 운전 면허증과 (3) 여권은 우리나라 어디에서나 개인을 법적으로 식별하는 데 완전히 동등한 효력을 가지는 신분증이다. 하지만 이들은 개인을 입증하는 관점 내지 목적이 다르기 때문에 서로 다른 특성과 장단점이 있다.
민증은 한번 만들어 놓으면 기본적으로 평생 가지만, 면허증은 소지자가 주기적으로 운전 능력을 입증하는 '갱신'을 해야 하며, 여권은 유효기간이 지나고 나면 재발급을 받아야 한다.

세 신분증들 중에 발급하는 데 금전적인 부담이 가장 많이 드는 것은 여권이다. 또한 여권은 신분증들 중 유일하게 카드가 아닌 수첩 형태이며, 소지자의 집 주소가 기재되어 있지 않다. 분실을 대비해 국내 거주지와 연락처를 기재하는 란이 있긴 하지만, 이건 optional한 정보이기 때문에 주민등록상의 소재지를 정확하게 담고 있지는 않다. 쉽게 말해 국내 거주지가 바뀌었다고 해서 여권을 업데이트하지는 않는다는 뜻이다.

과거에 자동차가 몹시 비싸고 귀하고 자동차 운전사가 완전 고소득 전문직이던 시절엔 면허증의 희소성이 매우 높았다. 그러던 것이 자동차가 넘쳐나고 개나 소나 운전을 하게 되면서 면허증이 거의 민증을 갈음하는 보편적인 신분증의 지위에 오른 것이다.
단, 면허증이 제아무리 흔해 빠진 신분증이 됐다지만 얘는 자동차를 몰 정도의 최소한의 신체· 정신 능력이 안 되는 사람은 소지할 수 없다.

군대를 예로 들어 보면, 정말 대한민국 남자라면 '개나 소나' 다 의무적으로 가는 곳이지만, 반대로 눈 하나 없거나 엄지손가락 하나만 없어도 결코 갈 수 없는 곳이 되지 않던가? 이와 비슷한 격이다. 면허증은 신분증들 중엔 능력에 의한 진입장벽이 가장 높다.

한편, 우리나라가 못살고 외국 여행을 함부로 할 수 없던 시절엔 여권도 면허증 만만찮게 능력 진입장벽이 높았다. 당장 비행기삯은 차치하고라도 유학, 이민, 사업 출장 같은 걸 아무나 할 수 있지는 않으니까. 하지만 이제는 여권 역시 아무나 언제든지 바로 만들 수 있게 된 지 오래다. 외국 나갈 일이 없는 사람들이 '안 만들' 뿐이지, 만들고 싶은데도 '못 만드는' 사람은 없다. (상습 여권 분실로 인한 페널티에 걸리지 않은 한)

이들에 비해 민증은 제일 범용적이고 원천적이다. 면허증은 do 지향인 반면, 민증은 순수하게 be 지향이기 때문이다. (뭐, 더 정확하게 쓰자면 면허증은 may do를 나타내고 자격증은 can do를 나타낸다는 차이도 있다.)
문득 신분증들 사이의 공통점과 차이점 생각이 나서 글을 써 봤다. 이를 영적으로 적용하면 구원받는 것도 자격증을 따는 게 아니라 순수 신분증을 획득하는 것이라고 풀이할 수 있겠다.

한 2000년대부터 국가 차원의 공신력이 있는 신분증에 들어가는 증명 사진은 당사자의 귀가 반드시 노출돼 있어야 하고, 배경은 어떻고 시선은 어떻고 옷차림은 어떻고... 같은 엄격한 가이드라인이 제정되어 적용되기 시작했다. 내 기억이 맞다면 이건 여권에서 처음으로 시작된 관행이다. 전자 여권의 도입 때문인지, 9· 11 테러 때문인지 무슨 계기로 이쪽 규정이 더 엄격해졌는지가 궁금하다.

9.
옛날에.. 사회 행정 금융 시스템이 몽땅 전산화되고 사회 곳곳에 CCTV 같은 게 생기기 전엔 나쁘게 말하면 온갖 편법과 비리가 횡행했다. 보는 눈이 없고 악행의 증거를 객관적으로 챙길 방법이 없어서 말이다.
단적인 예로, 세리들은 규정된 것보다 더 많은 세금을 걷어서 차액을 '삥땅'할 수 있었다. 그래서 걔들은 비록 부유할지언정 성경이 기록되던 시절부터 이미 민족의 반역자 취급을 받아 왔다.

그런데 세금을 걷는 관원의 입장에서 역으로 실드를 쳐 주자면.. 그렇게 백성들을 잠재적 탈세자로 악하게 보고 가혹하게 착취하지 않을 경우, 소수의 진짜 나쁜놈들이 실소득을 속이고 고의적인 탈세를 저지르는 걸 감지하고 예방할 방법도 없었다. 이러니 전근대 시절엔 농민과 관리 사이의 빈부격차가 넘사벽이고 백성들의 삶이 헬일 수밖에 없었다.

하지만 전산화라는 게 없던 시절에는 열악한 검증 능력과 느린 행정 속도를 교묘하게 역이용해서 Catch me if you can 같은 초대형 사기를 치는 괴수가 있을 수 있었으며, 또 나쁜 쪽뿐만 아니라 좋은 쪽으로 예외와 일탈도 존재 가능했다.
간단한 예로는 박카스 광고라든가 영화 <진주만>에서 나오는 것처럼 원래는 규정상 안 되는데 샤바샤바 해서 이름을 추가해 넣고 군대에 쓰윽 입대하는 거 말이다.
자서전을 보면 지 만원 박사도 어렸을 때 그런 편법 유도리 덕분에 육사 같은 상급 학교에 진학할 수 있었다고 그런다. 지금으로서는 불가능하다.

옛날엔 어느 인심 좋은 시골 의사가 환자에게 "님은 그냥 잘 챙겨 먹는 게 약입니다" 이러면서 아예 돈을 처방해 주기도 했다고 한다. 지금은 이랬다간 아마 의료법 위반으로 잡혀갈 것이다.
공항에서는 아무리 다 쓰러져 가는 허약한 노인이라 해도 모르는 사람의 짐을 들어 주면 안 됨. 마약 던지기 범죄에 연루될 수 있기 때문이다.

더 옛날에 1차 세계대전 시절에는 공중전이라는 게 처음 등장했는데 텅 빈 하늘에서 전투기 조종사들끼리 마치 중세 기사의 공중 버전마냥 기사도가 잠시 꽃폈다. 도전장을 공군 기지에다 떨어뜨리고 정정당당하게 기다리고 있다가 도그파이트가 벌어지고..;; 하긴 그때는 똑같이 사람을 죽이더라도 은폐 저격은 비열하고 치사한(!) 짓거리라는 참 순진 낭만하던 생각이 통용되던 시절이어서 그렇다. 그래서 그런지 지상에서는 지휘관들이 봤으면 뒷목 잡고 쓰러졌을 '크리스마스 휴전' 사건이 벌어지기도 했다(1914년, 개전 직후 첫 해 일회성으로 그쳤지만).

19세기 말 미국에서는 웬 노턴 1세 황제(1819?-1880)라고 미국의 황제를 자처한 기인 아저씨가 레알 기성 정치인들의 입지까지 위협할 정도로 인기를 얻으면서 자칭 황제 행세를 하다가 갔다. 이게 진지하다면 내란죄에 근접해 보이고, 개그라면 허 경영 같은 과대망상 병맛 느낌도 들지만, 그는 위험하지 않으면서 허 경영보다는 100배는 더 제정신이고 훌륭한 인품을 지닌 사람이었다. 요즘 시대라면 나타나기가 더욱 불가능에 가까웠을 것 같다.

지금 사회가 점점 더 자극적이고 관능적인 걸 쫓아가며 물질 황금만능주의로 치닫고는 있으나, 과거의 예외적인 깨알같은 인간미 추억에만 연연하느라 그 사회 시스템이 전산화 이전 시절로 되돌아갈 수는 없을 것이다. 과학 기술이 발달하면서 사회는 믿음과 양심이 필요한 형태가 아니라 법과 규정과 시스템대로만 돌아가는 형태로 바뀌는 게 불가피하기 때문이다. 과정이나 동기를 일일이 따질 시간은 없고 오로지 결과만이 중요하다.

10.
본인은 법학도가 아닌 관계로 잘은 모르겠지만.. 아래와 같은 개념은 마치 경제에서 성장과 분배 비율, 직접세와 간접세의 비율을 논하는 것만큼이나 딱 떨어지는 정답이 없고 사람 취향을 많이 타는 논쟁거리가 아닌가 생각된다.

  • 사법거래: 비록 쳐죽여도 시원찮을 큰 죄를 지었더라도, 여죄를 순순히 자백해서 행정력 낭비를 줄여 주고 공범 검거 같은 추후 수사에 큰 기여를 했다면 형량을 많이 줄여 준다. 전근대적인 고문이 말 그대로 채찍이라면, 사법거래는 당근에 해당되겠다.
  • 함정수사: 경찰 측이 용의자 내지 일반 시민에게 미끼를 던져서 일부러 죄를 짓도록 유도한 뒤, 누가 미끼에 걸리면 이때 뿅 나타나서 잡아 족친다. 암행 단속을 위해 단순히 사복 차림 내지 일반 차량으로 위장만 한 차원이 아니다.

사법거래는 공권력이 개인의 유죄를 입증하는 데 소요되는 공권력 행정력의 낭비를 줄여 준다는 점에서는 좋다. 억지로 옷을 벗기는 것보다는 당사자가 스스로 옷을 벗게 만드는 게 좋듯이 말이다. 하지만 절대적인 정의 구현이 핵심인 형사 사건에다가 "서로 좋은 게 좋은 거잖아" 식의 실용주의 경제 논리를 적용하는 것이라는 비판을 피하기 어렵다.

사법 제도와는 무관한 시스템이지만 비슷한 예로 '기여입학'이 있다. 얘는 당연히 학문의 전당에다가 실용주의 경제 논리를 적용한 거라는 비판이 있다(돈으로 해결 가능하지 않아야 하는 영역에 돈을??). 미국은 사법거래와 기여입학이 모두 활성화돼 있지만 우리나라처럼 아직 천민 자본주의의 때가 완전히 벗겨지지 않은 곳에다 이를 적용하는 건 좀 무리인 듯하다.

경찰이 하는 일은 창과 방패 중 거의 언제나 방패 역할에 국한돼 있다. 오목으로 치면 늘 흑이 아닌 백돌만 잡는 격이다. 하지만 어떤 범죄는 이런 불리한 위치에만 있어서는 증거를 확보하고 적발하고 뿌리뽑기가 대단히 힘들고 어렵다.
그렇기 때문에 이런 상황에서는 경찰이 불가피하게 좀 더 적극적이고 사악(?)하게 나간다. 개인 단위의 단순 잡범이나 흉악범을 잡는 것보다는, 마약이나 조직적인 위조지폐, 탈세, 간첩처럼 범죄 조직이 뿌리깊게 얽혀 있고 말단의 행동대원 한두 놈 잡는 걸로는 일망타진이 되지 않는 범죄가 그 대상이다. 이쪽으로 일이 더 전문화되면 그건 경찰이 아닌 방첩기관의 영역이 된다.

특히 마약은 굉장히 가혹하다. 거의 연좌제에 가까운 수준으로 조금이라도 관련된 사람은 진심· 본의 따위는 묻지 말고 몽땅 잡아 가두는 식으로 수사하지 않으면 조직을 송두리째 소탕할 수가 없는가 보다. 그러니 함정에 걸리지 말라는 차원에서, 공항에서 짐을 옮겨 달라는 부탁조차 절대로 들어 주지 말라고 나라에서 홍보를 하는 것이다. "니가 마약을 했느냐 안 했느냐"가 아니라 "마약이 결과론적으로 너를 통해서 옮겨졌느냐"가 문제가 되기 때문이다.

참 매정하고 비인간적으로 보이지만 공권력은 그 존재부터가 이미 필요악이다(세금을 안 내거나 지금보다 훨씬 더 적게 내는 꿈같은 세상이 상상이 되는가?). 그런 걔네들이 또 다른 필요악을 동원하는 것 자체는 그리 이상한 일이 아니어 보인다. 경찰은 존재감 없이 있는 증거만을 토대로 수사해야 하는데, 적극성이 너무 커져 버리면 없는 증거를 조작해서 만들어 내는 수준까지 갈 테니 그건 또 경계해야 할 사항이다.

끝으로, 우리나라는 정당방위에 굉장히 인색한 반면, 애초에 총 들고 자기 집 지킨다는 관념이 강한 미국은 그에 대한 판정이 매우 관대하다. 이것도 사법거래· 기여입학· 함정수사 등에 대한 인식만큼이나 문화적인 차이 되겠다. 그래도 미국 쪽이 전반적으로 개인의 자유와 책임과 자율을 더 강조하는 선진적인 체계인 것 같다.

Posted by 사무엘

2017/01/08 08:29 2017/01/08 08:29
, , , ,
Response
No Trackback , 2 Comments
RSS :
http://moogi.new21.org/tc/rss/response/1314

1.
영국은 섬나라이고 전통을 아주 좋아하며, 세계에서 보기 드물게 좌측통행을 하고 내부적으로 여러 왕국들로 갈라져 있어서 독립하네 마네 다투는 등, 유럽의 여느 나라와는 달리 독특한 점이 많다. 일찌감치 교황과 결별하여 정치· 종교적으로 내륙과는 별개노선을 갔으며, 리즈 시절에 그야말로 대영제국을 이뤘고 영어라는 자기네 언어와 킹 제임스라는 성경을 전세계에 퍼뜨린 것은 정말 비범한 면모가 아닐 수 없다.

그렇다 보니 영국은 역사적으로 볼 때 혼자 국제(= 유럽 대륙) 추세를 거스르면서 좀 고집 부리고 삽질한 사례도 있었다.
(1) 먼저 달력 얘기부터. 잉글랜드는 그레고리력의 도입 시기가 무려 1752년으로 유럽에서 압도적으로 제일 늦은 꼴찌였다(무려 100수십 년). 율리우스력보다 오차가 더 적고 정확한 역법임에도 불구하고 종교적인 원수지간인 교황이 만든 달력을 선뜻 받아들이고 싶지 않았기 때문이다.

로마 가톨릭이 워낙 절기를 많이 따지는 종교이기도 하고, 교황은 전세계에서 날고 기는 똘똘한 고위 성직자들 중에서 선출되기도 하니.. 천체의 운동을 계산하는 덴 머리가 비상하게 잘 돌아갔는가 보다.

영국의 대문호인 윌리엄 셰익스피어, 그리고 스페인의 대문호인 세르반테스는 동갑은 아니지만 공교롭게도 1616년 4월 23일, 같은 날에 세상을 떠난 걸로 알려져 있다. 하지만 세르반테스는 그레고리력 기준의 날짜이고 셰익스피어는 아직 율리우스력 기준의 날짜이기 때문에 두 사람이 실제로 같은 날에 24시간 이내의 시간차를 두고 죽은 건 아니라고 여겨진다. 뭐, 그래 봤자 기일의 차이는 2주를 넘지 않았을 것이고, 서로 다른 달력 체계에서 그렇게라도 날짜가 일치하는 것만 해도 용한 일이긴 하다.

돈키호테가 전편이 1604~05년에 출간됐고 후편은 1615년, 작가가 죽기 딱 1년 전에 완간되어 나왔다. KJV가 출간된 1611년과 동시대 되겠다.
단, 셰익스피어는 그 당시에 자국에서 출간되던 킹 제임스 성경과 관련해서 딱히 기여한 건 없는 걸로 여겨진다.

(2) 1749년엔 미국의 벤저민 프랭클린이 피뢰침을 발명했는데.. 피뢰침의 끝을 뾰족하게 만드느냐 뭉툭하게 만드느냐가 과학자들 사이에 논쟁거리가 되었다.
여기서 영국은 뭉툭한 피뢰침을 한동안 고집했다. 이유는.. 그게 과학적으로 옳아서가 아니라, 영국 황실에 반역하고 독립을 선언한 미국 식민지 역적놈이 뾰족한 걸 쓰기 때문이었다. 으음..

영국이 이런 사소한 데서 은근히 병맛스러운 고집을 많이 부렸구나. 무슨 에디슨과 테슬라의 교류 직류 논쟁도 아니고. 우리나라에만 당파 싸움이 있었던 게 아니다.
그러니 걸리버 여행기가 릴리풋 왕국(소인국) 편에서 계란 껍질을 어느 쪽부터 까는지를 갖고 대판 싸우는 풍자 장면을 넣었지 싶다. 그 당시 영국 상류층 사회라면 충분히 있을 수 있는 설정이다. 컴퓨터계에서 유명한 엔디언(비트 순서)이라는 단어가 여기에서 유래된 걸로 유명하다.

그런데, 나는 당연히 뾰족한 피뢰침이 과학적으로 집전 성능이 더 뛰어나고, 미국의 승리에 영국의 삽질로 알고 있었는데.. 영문 위키백과를 보니까 꼭 그렇지 않은 것 같다. 여전히 논쟁의 여지가 있다고 한다.

(3) 끝으로 20세기. 영국은 남극점 최초 정복 타이틀을 듣보잡 노르웨이 사람에게(로알 아문센) 빼앗긴 것을 도저히 견딜 수 없었다. 아문센에 대해서 대놓고 인신공격 음해 언플을 벌인 건 물론이고, 학교 교과서에다 자국의 스콧이 남극점에 먼저 도달했다고 대놓고 주작 왜곡 거짓말을 가르치기까지 했다. 그러다 이웃 나라들로부터 극심한 비웃음을 견디다 못해 슬쩍 고쳤다. 이 정도면 6· 25 북침 왜곡쯤은 약과인 거 같다.

그러니, 이런 영국은 자기들이 표준궤나 표준시 같은 세계 표준을 만들면 만들었지, 남이 만든 표준은 잘 안 쓴다. 도량형에 미터법도 안 쓰고, 화폐단위는 여전히 파운드를 고집하며 최근에는 유럽 연합에서 탈퇴까지 감행했다. 이런 조치에 대한 호불호 내지 정치적인 옳고 그름을 논할 생각은 없다. 단지, 쟤들이 그러고도 남을 친구들이라는 심정이 이해된다.

2.
영국 하면 왠지 빨강이 떠오른다. 레드 코트, 적기 조례 등등..
그래서 보너스로 red와 대응하는 다른 색들과 그 심상· 용도로는 어떤 게 있을까? 언어에도 유의어와 반의어라는 관계가 있는데 이런 거 찾아보니까 결과가 재미있다.

  • 황색: 주의와 경고(축구 반칙 카드)
  • 백색: 적혈구와 백혈구, 적색거성과 백색왜성(천문), 러시아 적백 내전, 전방과 후방에서 교통수단의 등화 차이(브레이크등/전조등· 후진등)
  • 흑색: 지나친 G로 인한 블랙아웃과 레드아웃(항공우주), 빨강-검정 나무 자료구조(전산), 홍차의 한국어와 영어 표현 차이. 비행기 블랙박스는 사실은 검정이 아니라 찾기 쉬우라고 고채도 홍/황색 계열 도색임.
  • 녹색: 적십자와 녹십자, 적록 색맹, 적조와 녹조, 횡단보도 신호등, 엘리베이터나 주식에서 상하 관계
  • 청색: 수도꼭지와 정수기에서 온수와 냉수, 각종 게임에서 양 진영의 깃발 색깔, 남녀(단, 성차별적이라고 요즘은 색깔 구분은 안 하는 듯), 헤모글로빈과 헤모시아닌 기반 혈액

3.
독자 여러분은 개를 식용하는 것에 대해 어찌 생각하시는가?
본인의 생각을 말하자면 개 역시 인간이 필요에 따라 키우는 여러 가축 중 하나이고, 동시에 필요한 경우 여러 단백질 공급원 중 하나일 뿐이다. 얘만 특별하게 취급돼야 할 필요는 없으며, 하물며 같은 개 중 일부 품종은 애완견용이고 일부는 식용으로 분류해야 할 필요조차 없다고 본다. 애완견이 특별히 영양학적으로 독이라도 들어있어서 못 먹는 건 아닐 테니 말이다.

개는 특별히 똑똑하고 충성심이 뛰어나고 인간과 닮았고 무슨 감정이 있고 어떻다고..? 그게 그렇게까지 특별한 메리트가 되지는 못한다는 뜻이다. 개가 아무리 사랑스러워 봤자 인간과는 달리 죽으면 완전히 소멸이며, 내세에서 다시 인격체로서 만나 보지도 못한다. 또한 잡아먹히는 개가 불쌍하면, 더 열악한 환경에서 인간에게 착취당하고 잡아먹히는 다른 동물들은 뭐가 되는가?

애견 동호인 분들께는 죄송한 얘기지만, 개만 유독 집 밖이 아닌 집 안에 들여놓고, 그걸로도 모자라 옷 입히고 고기까지 먹이면서 키우는 건 그거야말로 개를 잡아먹는 것보다 더 비인간적이고 비정상인 현상으로 보인다. 헐벗고 굶주리고 못사는 '사람'도 부지기수인데..! 애완견 키우는 분들이 다 그렇다는 얘기는 물론 아니지만 애완견에게 과도하게 집착하는 사람들이 다른 선과 악이나(절대악과 필요악) 생명 우선순위를 논하는 데서는 좀 이성이나 판단력이 이상하게 비성경적인 쪽으로 꼬이는 경향이 있다. 뭐, 브리짓 바르도 같은 아줌마는 그 중에서도 평균 이상 굉장히 막장으로 추해진 사례이고.

더구나 선진국들에서는 휴가철만 되면 유기견들 처리하느라 난리도 아닌데, 지금 시국에서는 개가 진정 불쌍하다면 애견인들이 "개 잡아먹지 말라"에 앞서 "개를 버리지나 마라/말자"부터 더 강조해야 하지 싶다. 식용으로 잡아먹히는 거나, 약물 주입으로 안락사 당하는 거나(주인을 못 찾아서, 혹은 주인이 고의로 인수를 거부해서) 죽는 건 똑같다.

무슨 성매매를 합리화하고 공창을 만들듯이 개 도축도 규격을 정하고 완전히 법의 양지로 끌어올리자는 얘기가 진작부터 있었다. 하지만 "대한민국은 이렇게 개도 FM에 규정된 대로 잡아먹는 나라요"라고 대외적으로 홍보를 하는 건 동네 창피한 일인 걸로 간주되는 듯하다. -_-;; 마치 눈치 보느라 흉악범 사형 집행조차 못 하듯이. 개 잡아먹는 게 그렇게도 부끄러운 일인가? 좀 민망한 현실이다. (난 개고기는 일부러 피하지는 않고 회식 자리에서 있으면 먹는 정도로 먹는다.)

4.
사람들이 자기가 실제로 소유한 것보다 더 많이 소유한 것처럼 남에게 허세 부리고 싶어하는 심정은 어디에나 있는 듯하다.
예비군들은 전투복에 자기가 이수하지 않은 온갖 특기 마크를 덕지덕지 붙여서 일명 전투복 튜닝을 하고.. 군 내부의 높으신 분들도 비슷한 맥락으로 온갖 훈장들을 제복에다 주렁주렁 붙인다.

이런 맥락으로, 자동차의 경우 엠블럼이나 머플러를 튜닝해서 실제 성능보다 더 고성능인 차인 것처럼 위장을 하는 경우가 많더라.
내 또래의 직딩이 어떻게 쏘나타 2400cc 내지 제네시스 쿠페 3800cc를 굴리나 궁금했는데, 알고 보니 머플러와 엠블럼만 교체해서 상위 사양인 것처럼 보이게 했을 뿐, 실제로는 2000cc 차였다.

지금까지 에쿠스 5000cc를 생각보다 자주 본 적이 있었다. 이것들 중에도 실제로는 기본 사양 3800cc이지만 엠블럼 위장을 한 놈이 있을지 모르겠다. 에쿠스는 제로백이 5~6초대인데, 성능이 성능이니만큼 3800cc와 5000cc는 제로백이 약 1초 가까이 차이가 난다고 한다. 길이가 5m가 넘는 거대한 차량이 밟으면 그렇게 쑥 가속을 받고 튀어나간다는 게 상상만 해도 신기하다. 괜히 고성능이 아니다.

자가용 승용차는 배기량이 높아질수록 성능은 좋아지지만 연료 소모량이 증가하여 연비도 떨어지며, 무엇보다도 자동차세도 왕창 붙어서 유지비가 증가한다. 아파트 모델하우스에 가서 크기가 3종류인 집을 구경하니 마치 2000cc, 2400cc, 3000cc 차급을 보는 것 같은 생각이 들었다.
그런데 차량의 배기량 위장은 당장 도로에서의 안전을 위협한다거나 무슨 계급 위조 및 사칭만치 해로운 짓은 아니기 때문에 딱히 법적으로 금지되어 있지는 않은 것 같다.

5.
옛날 자동차와 지금 자동차를 비교해 보면 엔진이 동일 배기량으로도 출력과 연비가 비약적으로 향상되고 승차감이 좋아졌으며, 그러고도 환경오염은 덜 시키는 쪽으로 발전해 왔다. 하지만 엔진의 구동 원리는 100여 년 전이나 지금이나 피스톤 왕복 형태를 크게 벗어나지 않아 있다. 또한 엔진의 회전력과 토크를 바퀴를 굴리는 데 적합한 형태로 변환해 주는 변속기도 수동은 톱니바퀴, 자동은 유압 토크 컨버터로 형태가 정착해 있다.

이런 관행을 바꾸려는 시도를 한 이의를 제기하는 대표적인 발명으로는 방켈/반켈(Wankel) 또는 로터리라고 불리는 엔진이 있다. 피스톤이 동그란 삼각형 모양으로 생겼고 얘가 두 바퀴가 아니라 한 바퀴를 돌면서 흡입-압축-폭발-배기 행정을 해치운다. 그건 좀 2행정 엔진을 닮았다.

로터리 엔진은 왕복 운동을 회전 운동으로 힘들게 변환하는 계층이 필요하지 않으며 연료의 폭발을 더 직관적으로 회전 운동으로 연결해 준다. 그래서 배기량 대비 엔진의 출력이 더욱 높다는 장점이 있으나.. 기계적으로 만들기가 더 어렵고 엔진 부품의 마모가 더 심하고 유지비가 많이 들어서 엔진의 주류로 등극하지는 못했다.
장점이 있긴 하지만 아직 단점이 더 커서 실용화되지 못하고 있는 기술이라는 점에서는 무탄피 총알과도 비슷해 보인다.

또한 변속기에도 일명 CVT라고 불리는 '무단 변속기'가 있다. 얘는 N개의 단을 나타내는 이산적인(discrete) 톱니바퀴로 변속을 하는 게 아니라, 일종의 원뿔대 모양의 체인에다가 벨트를 걸어서 최고단과 최저단 사이의 아무 동력비라도 표현할 수 있게 했다.
얘는 의도한 대로 잘만 만들 수 있다면 변속 충격 없이 자동 변속기처럼 부드러우면서, 연비는 수동 변속기처럼 좋은 이상적인 동력 변환 계통을 구현할 수 있다.

하지만 CVT 역시 변속기의 주류가 되지 못한 건 다 기술적인 한계가 있기 때문이다. 얘는 대형차의 고출력 엔진에 적용되기에는 아직 무리가 있으며, 여전히 경차· 소형차급에 머물러 있다. 자전거만 해도 체인이 견딜 수 있는 힘보다 너무 강한 힘으로 밟으면 체인이 미끄러지거나 심하면 파손되지 않던가? CVT는 그런 게 기존 변속기보다 더 취약하다는 뜻이다. 예전에 인천대교에서 퍼져서 대형 사고를 일으켰던 마티즈 CVT 때문에 CVT에 대한 더 나쁜 편견과 오해가 생기기도 했다.

아무튼, 내연기관에 왕복 운동이 아니라 회전 운동을 직통으로 만들어 내는 로터리 엔진이라는 게 있는데.. 전기 모터에는 회전 운동이 아니라 직선 운동을 직통으로 만들어 내는 모터가 있다. 바닥에 달린 유도 레일을 따라 출력을 발생시키는 이 모터를 '선형 유도 모터'라고 한다.

초전도 자기부상열차는 모두 선형 유도 모터(LIM) 기반이다. 하지만 그런 방식이 아닌 경전철도 LIM 기반인 경우가 있으며, 국내의 경우 용인 경전철이 대표적인 예이다.
일본에서는 L0계라고 불리는 '주오(중앙) 신칸센'이 개통하여 최고 시속이 무려 600km를 넘어섰다. 주행 속도가 너무 빠르기 때문에 안전을 위해 창문은 무슨 비행기 창문처럼 작아졌으며, 앞뒤로 운전실이 없지만 그래도 앞뒤 경치를 구경할 수 없다.

그리고 열차의 앞뒤는 비행기보다도 더할 정도로 극단적으로 납작하고 뾰족해졌다. 기계가 들어갈 공간, 승객이 탈 공간을 좀 뺏겨도 좋으니 어떻게든 공기 저항을 극단적으로 줄이려고 발악에 가깝게 노력한 흔적이 보인다.
그도 그럴 것이 공기 저항은 고속 주행 교통수단의 최악의 적이며, 속도가 올라갈수록 저항도 급격히 커지기 때문이다. 비행기는 그래도 대기가 상당히 희박해져 있는 고도에서 날지만 열차는 공기 농도가 제일 짙은 지표면을 달리지 않는가?

한때 우리나라 언론에서는 '리니어'가 선로가 커브가 전혀 없이 곧은 직선이라는 뜻이라고 아주 말도 안 되는 오보를 내보낸 적이 있었다. 10여 년 전에 <인천 관광 2009년부터 전차로>라는 기사를 내보내면서 군용 탱크 사진을 내보냈던 것과 같은 급의 병크이다!

Posted by 사무엘

2017/01/05 08:35 2017/01/05 08:35
, , , , ,
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/1313

<날개셋> 한글 입력기는 잘 알다시피 16년 전에 개발된 1.0과 지금의 8.6이 요구하는 운영체제 사양(그리고 사실상 하드웨어 사양도)에 차이가 전혀 없는 좀 사기급의 프로그램이다. 32비트 에디션은 Windows 95/NT4 이상에서도 돌아간다. Win95쯤은 안드로이드 스마트폰 내부에서 가상 머신으로도 돌리는 지경이 됐는데도 말이다. 뭐, 내 프로그램은 게임처럼 딱히 최신 사양빨을 타는 분야의 프로그램이 아니며, 한글이 무슨 한자처럼 처리하는 데 메모리가 엄청 많이 든다거나 아랍· 태국 문자처럼 내부 메커니즘이 복잡한 것도 아니기 때문이다.

Windows는 API 함수들이 유니코드를 표방하는 2바이트 문자열을 취급하는 버전(W 함수)과 비유니코드 일명 'ANSI 인코딩'을 표방하는 1바이트 문자열을 취급하는 버전(A 함수)으로 나뉘어 있다. 맥이나 리눅스 같은 타 운영체제에서는 찾을 수 없는 독특한 형태이다. 물론 문자 집합이라는 건 굳이 인코딩 단위에 얽매여 있지는 않으니, 1바이트라는 단위는 그대로 놔 두고 UTF-8만 사용해도 유니코드 지원은 가능했다. 하지만 Windows는 호환성 때문인지 문자 집합과 함께 인코딩까지 완전히 바꿔 버리는 방식을 채택했다. 그래서 wchar_t도 4가 아닌 2바이트이며, UTF-16을 유난히 좋아한다.

Windows NT는 W가 기본이고 A도 호환성 차원에서 지원하지만 Windows 9x는 메모리 부족 문제로 인해 A만 지원하고 W는 아예 제공하지 않았다. 그러니 일반적으로는 Windows 9x를 지원하려다 보면 유니코드를 지원할 수 없어서 깨진 문자 크리 때문에 프로그램의 국제화에 애로사항이 꽃폈으며, 반대로 W 함수만 사용하면 가정에 NT 계열보다 더 많이 보급돼 있던 9x 계열 운영체제를 지원할 수 없었다.

이 딜레마를 해소하는 방법은 일단 프로그램은 W 함수 기반으로 개발한 뒤, 9x에서는 특별히 W 함수 진입로에서 함수 argument를 변환하고 나서 A 함수를 호출하는 일종의 훅/thunk DLL을 구동하는 것이었다. <날개셋> 한글 입력기는 이 테크닉을 사용한다.
훅 DLL의 소스 코드는 동작 방식의 특성상, import table상의 함수 이름 문자열과 거기에 대응하는 훅킹 함수 포인터를 명시한 테이블을 갖고 있다. 또한 기존 Windows API 함수와 프로토타입이 동일하지만, 하는 일에는 살짝 차이가 있는 함수도 즐겨 사용한다.
이런 걸 구현할 때는 C/C++ 언어에 존재하는 다음과 같은 기능들이 유용하게 쓰였다.

1.
함수 훅킹 테이블을 만들 때 #define과 더불어 #(문자열화)와 ##(토큰 연결)라는 전처리기 연산자를 즐겨 썼다.
_FUNC(SetWindowTextW) 하나로 { "SetWindowTextW", (FARPROC)My_SetWindowTextW } 요걸 표현할 수 있으니 전처리기 연산자를 써서 매크로를 정의하는 게 완전 딱이지 않은가?
C언어는 전처리기의 단항 연산자는 # 1개로, 이항 연산자는 # 2개로 표현해서 나름 직관성을 추구했다. 그리고 안 그래도 전처리기 연산자는 C/C++의 고유한 연산자와는 섞여서는 안 되는데 굳이 # 말고 다른 기호를 끌어다 쓰지 않아서 형태 구분이 잘 되게 했다.

그런데 여기서 문제가 하나 있다.
문자열화 연산자는 매크로 전개를 한 놈을 문자열로 바꾸는지, 아니면 언제나 주어진 인자를 문자 그대로 문자열로 바꾸는지를 본인은 엄밀하게 생각을 하지 않고 지냈다. #define ToString(a) #a라고 정의해 주면, ToString(SetWindowText)은 "SetWindowText"로 바뀌는지, 혹은 "SetWindowTextW"나 "SetWindowTextA"로 바뀌는지 궁금했다.

이에 대한 정답을 먼저 말하자면, # 연산자는 그 자체로는 매크로 전개를 전혀 하지 않는다. 그렇기 때문에 저 문제의 정답은 "SetWindowText"이다.
만약 W/A가 붙은 놈을 얻고 싶으면 매크로를 한 단계 더 거쳐 줘야 한다. #define ToString_Expanded(a) ToString(a)를 선언한 뒤, ToString_Expanded(SetWindowText)라고 명령을 내리면 그제서야 "SetWindowTextW"(또는 A)가 얻어진다.

물론 딱히 매크로가 없는 인자를 넘기면 ToString_Expanded는 그냥 ToString과 동일한 결과가 나온다. 이런 차이가 있다는 걸 근래에 알게 됐다.

C/C++ 코드에는 검증과 디버깅을 위해 assert 부류의 매크로를 볼 수 있는데, C 언어 표준 매크로 상수와 연산자들은 상당수가 얘를 구현하기 위해 만들어진 게 아닐까 싶을 정도이다.
상식적으로 생각해 봐도, 실행 파일 내부에 "result > 0이라는 수식의 assertion이 실패했습니다. 아무개.cpp n째 줄입니다." 정도의 검증 명령이 삽입되려면 딱 봐도 __FILE__, __LINE__이 들어가야 했을 것이고 검증 대상 수식은 # 연산자에 의해 문자열로 바뀌었을 거라는 걸 알 수 있다.

파일명과 줄번호는 바이너리 형태의 디버그 심벌에도 포함되긴 하지만, result > 0처럼 대놓고 코드를 구성하는 문자열은 # 연산자 없이는 답이 없다. 이런 사기급의 전처리 기능은 C/C++ 외의 다른 언어에서는 유례를 거의 찾을 수 없지 싶다.

2.
또한 decltype이라는 연산자가 있는 줄을 난생 처음 알았다. 연산자이긴 하지만 되돌리는 게 어떤 값이 아니라 타입 그 자체이다. typeid처럼 RTTI와 관계 있는 기능도 아니며, 컴파일 타임 때 결정되는 고정 타입이다. 그래서

auto x=3.4f;
decltype(3.4f) x = 3.4f;
float x=3.4f;

는 의미가 모두 동일하다. auto와도 어떤 관계인지 바로 알 수 있을 것이다.
sizeof는 값 또는 타입을 모두 받아들여서 값(크기. 고정된 정수)을 되돌리는 반면, decltype은 값을 받아서 타입을 되돌린다는 차이가 있다. 또한 sizeof와 decltype 모두 그 값을 실제로 실행(evaluate)하지는 않는다.

auto는 타입과 동시에 변수값 초기화를 할 때 번거로운 타이핑을 줄여 준다. decltype은 값을 동반하지 않고 타입 자체만을 명시할 때 매우 유용하다. 템플릿 인자를 명시하거나 형변환을 할 때, 길고 복잡한 namespace나 함수 포인터의 프로토타입을 쓰는 수고를 덜어 준다. typedef를 하자니 번거로운 이름을 떠올려야 하는데.. 그럴 필요도 없어진다. 가령,

CAPIPtr<int (*)(int flags, WPARAM wParam)> pfnAbout(hNgsLib, "ngsAbout");

라고 쓸 것을

CAPIPtr<decltype(&::ngsAbout)> pfnAbout(hNgsLib, "ngsAbout");

로 간편하게 대체 가능하다. 함수의 이름만으로 그 함수의 포인터의 프로토타입을 간단히 명시할 수 있으니 얼마나 편리한가? API 훅킹 라이브러리를 만들 때도 이런 문법이 매우 유용할 수밖에 없다. 훅킹 대상인 Wndows API들이야 헤더 파일에 프로토타입이 다 선언돼 있으므로 그걸 decltype의 피연산자로 주면 되기 때문이다..

또한, 과거에는 클래스에서 함수 포인터 형변환 연산자 함수를 선언할 때는 C++ 문법의 한계 때문에 반드시 그 함수 프로토타입을 typedef부터 해야 했다. 하지만 decltype은 여기서도 그런 번거로움을 응당 없애 준다. 아래 코드를 보면 차이를 알 수 있다.

class CMyTable {
    static int _Func();
public:
    //과거
    typedef int (*PFN)();
    operator PFN() { return _Func; }

    //현재
    operator decltype(&CMyTable::_Func)() { return _Func; }
};

decltype 연산자는 Visual C++ 2010부터 지원됐다. 함수 포인터에다가 람다를 바로 대입하는 건 2010은 아니고 2012부터 지원되기 시작했다. 물론 캡처가 없는 람다에 한해서. 람다는 함수 포인터보다 더 추상적인 놈이기 때문에 calling convention은 컴파일러가 알아서 다 해결해 준다.

C++은 잘 알다시피 A *B와 A B(), (A)+B 같은 문장이 A와 B의 정체가 무엇인지에 따라(타입? 값?) 파싱 방식이 완전히 달라진다. 템플릿이 추가된 뒤부터는 <와 >조차도 이항 연산자 vs 타입 명시용의 여닫는 괄호처럼 해석이 달라질 수 있게 되었고, 21세기에 와서는 템플릿 인자를 이중으로 닫을 때 굳이 > > 안 하고 >>로 써도 되게 문법이 바뀌었다. 저게 제대로 돌아가려면 값과 타입의 구분이 더욱 절실히 필요하다.

이런 특성 때문에 템플릿의 컴파일 편의를 위해 typename이라는 힌트 키워드가 도입되었으며, auto와 decltype도 동일한 용도는 아니지만 비슷한 맥락에서 type과 관련된 기술을 돕기 위해 등장한 게 아닌가 싶다.

3.
유니코드 API 훅킹 DLL을 만든다면, SetWindowTextW라면 WCHAR 문자열 형태로 전달된 인자를 char 문자열로 바꾼 뒤 A 함수에다 전달하고, GetWindowTextW라면 먼저 내부적으로 char 버퍼를 준비해서 A 함수를 호출한 뒤, 그걸 WCHAR로 변환해서 사용자에게 되돌리는 형태로 전달한다.

물론 용례가 무궁무진한 메시지를 주고받는 함수라든가 GetOpenFileName처럼 입· 출력 겸용 복잡한 구조체를 운용하는 함수, SystemParametersInfo처럼 PVOID 하나에 온갖 종류의 데이터를 주고받는 함수라면 훅킹 함수를 만들기가 아주 까다로워진다. 하지만 그 함수가 제공하는 모든 기능에다 일일이 변환 기능을 넣을 필요는 없다. 다양한 플래그와 기능들 중에서 내 프로그램이 실제로 사용하는 것에 대해서만 변환을 하면 된다.

그런데 훅킹 함수 중에는 의외로 아무 변환 없이 인자를 그대로 A 함수로 넘기기만 하고 리턴값도 아무 보정 없이 그대로 되돌리는 것도 있다. 훅킹 함수 단계에서 딱히 할 게 없다고 말이다.

그 대표적인 예로는 리소스를 리소스 ID가 아니라 메모리 포인터 차원에서 저수준으로 읽어들이는 DialogBoxIndirect와 LoadMenuIndirect가 있다.
얘들이 인자로 받아들이는 DLGTEMPLATE와 MENUTEMPLATE 구조체는 내부에 PCTSTR 같은 게 없으며, 애초에 A/W 구분이 없다. 왜냐하면 저 구조체는 메모리가 아니라 디스크에 저장되는 리소스 데이터 포맷을 기술하기 때문이다. Windows 9x용이든 NT계열용이든 실행 파일이야 서로 완전히 동일한 포맷이며 리소스들은 모두 유니코드 형태로 저장된다. 그러니 인자가 동일한데 저 두 함수도 원론적으로는 굳이 W/A 구분을 할 필요가 없다.

그럼에도 불구하고 이런 함수에도 굳이 A/W 구분이 존재하는 이유는 얘들이 내부적으로 대화상자와 메뉴 윈도우를 생성할 때 사용하는 CreateWindowEx 함수가 A/W 구분이 존재하며, 9x에서는 W 버전이 존재하지 않기 때문이다. 비록 리소스 데이터 상으로는 원래의 언어 텍스트가 들어있지만, 운영체제가 관리하는 윈도우의 텍스트 버퍼는 ANSI 기반이니 그걸 운영체제의 표준 기능만으로 제대로 표시할 방법도 없다.

그렇다면.. Windows 9x에서는 DialogBoxIndirectW나 LoadMenuIndirectW가 호출 됐을 때,
SetLastError(ERROR_CALL_NOT_IMPLEMENTED); return FALSE / NULL; 을 하지 말고..
return DialogBoxIndirectA( ... ) / LoadMenuIndirectA( ... ); 를 해도 되지 않았나 하는 의문이 남는다. 직통으로 A로 포워딩하는 거 말이다.
그럼 9x에서는 현 ANSI 인코딩으로 표현되지 않는 문자들은 비록 깨져서 출력되겠지만 최소한 메뉴나 대화상자가 뜨고 동작은 하지 않겠는가?

하지만 그건 별 의미가 없다고 생각돼서 조치를 취하지 않은 것 같다. GetOpenFileNameW, CreateFileW, CreateWindowExW, GetMessageW, SendMessageW 등등.. Windows 프로그램의 근간을 이루는 함수들이 유니코드 버전은 몽땅 동작하지 않는데 저런 것만 살려 놔서 뭘 하겠나? Windows 9x에서는 최소한의 유니코드 문자를 찍는 GDI 함수만이 제 기능을 하며, MessageBoxW는 인자들을 char 형태로 변환해서 예외적으로 지원해 주고 있다. 최소한의 에러 메시지를 찍고 종료하는 기능만은 유니코드 API 직통으로 동작하게 말이다. =_=;;

Posted by 사무엘

2017/01/02 08:25 2017/01/02 08:25
, , ,
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/1312

<날개셋> 한글 입력기를 사용하는 프로그램들은 입력 설정을 바꾸는 UI인 '날개셋 제어판'을 꺼내는 기능이 들어있다. 그 프로그램으로는 편집기, 외부 모듈, 입력 패드, 그리고 타자연습 이렇게 4종류가 있는데, 제어판을 꺼내는 방법은 일반 메뉴, 입력 도구모음줄, 시스템 트레이 우클릭 메뉴, 대화상자의 버튼 이렇게 형태가 제각각 모두 다르다. 어째 이렇게 전부 다를 수 있는지도 궁금한 지경이다.

그런데 사실은 이 프로그램들이 내부적으로 제어판을 운용하는 방식도 전부 다르며, 미세한 차이가 존재한다. 본인은 이와 관련된 코드 리팩터링 작업을 하다가 차이점들을 글로 한데 정리해 보았다.

1. modality

중앙 집권적인 EXE 프로그램인 편집기와 입력 패드는 modeless 형태로 구동된다. 제어판 창을 띄워 놓은 채로 본문의 입력란으로 얼마든지 이동 가능하며, 제어판의 우측 하단에 '적용'이라는 버튼도 응당 존재한다.

그러나 외부 모듈과 타자연습은 modal이다. 외부 모듈의 경우 중앙 집권이 아니라 각각의 프로세스들에 붙어서 돌아가는 일종의 떨이이며, 제어판이 떠 있는 동안 자기가 담당하던 스레드가 없어지는 것을 포함해 갖가지 상황이 밖에서 벌어질 수 있다. 그렇기 때문에 상황 관리의 복잡도를 제어하기 위해서 제어판 창이 뜬 동안은 원래의 입력란으로 돌아갈 수 없게 했다.

타자연습은 외형은 중앙 집권이긴 하지만, 무슨 텍스트 에디터처럼 문자 입력이 상시 가동 중인 채로 제공되는 프로그램은 아니다. (타자 연습 화면은 메뉴에서 뭔가를 선택한 뒤에만 나타남) 그러니 제어판을 띄워 놓은 채로 타자 연습을 한다거나 메뉴로 돌아가는 상황은 생각하지 않으며, 자연스럽게 modal UI를 채택했다. 날개셋 제어판을 열었다면 이것부터 닫아야 이전 단계 화면으로 돌아갈 수 있다.

2. 입력 설정을 읽고 쓰는 방식

사실, 대화상자의 모달 여부나 다른 것보다도 이게 제일 중요하고 본질적인 차이점이다.

(1) 중앙 집권적인 편집기와 입력 패드는 형태가 제일 깔끔하고 단순하다. 그냥 공통 단일 입력 설정 하나만을 읽고 쓰는 걸로 끝이다.
공통 설정은 <날개셋> 한글 입력기 커널이 관리하며, 이걸 파일로 저장한 게 바로 imeconf.dat이다. 그러면 프로그램을 다음에 실행할 때도 예전의 입력 설정들이 고스란히 보존된다.

제어판을 '확인'으로 종료하면 메모리와 파일이 모두 업데이트된다. 그러나 '미저장 확인'이나 '적용'을 누르면 메모리만 업데이트된다. 이 두 버튼은 대화상자를 닫는지 여부의 차이만이 존재한다.

항목 미저장 확인 확인 취소 적용
설정을 메모리 default로 적용 O O X O
설정을 파일 default로 적용 X O X X
대화상자를 닫음 O O O X

(2) 위의 두 프로그램과는 달리 타자연습은 imeconf.dat를 읽거나 쓰지 않으며, 사용자 계정에 있는 자체적인 입력 설정을 사용한다. 그렇기 때문에 공통 설정이라는 개념을 사용하긴 하지만 메모리 수준에서만 사용하지 imeconf.dat를 다루는 파일 수준은 사용하지 않는다. '확인'과 '미저장 확인'의 구분이 존재하지도 않는다.

(3) 끝으로, 외부 모듈은 타자연습과는 또 정반대다. 외부 모듈은 타자연습 같은 독자적인 원천이 있는 건 아니며 필요하다면 imeconf.dat 파일을 읽고 쓰기도 한다. 하지만 그걸 메모리에 보관할 때는 공통 설정을 사용하는 게 아니라 스레드별로 자신만의 고유한 storage를 사용한다.

다시 말해 외부 모듈은 공통 설정 파일만 사용하지 메모리를 사용하지는 않는다. 이렇게 설계된 가장 큰 이유는 외부 모듈이 자신과 동일한 날개셋 커널을 사용하는 프로그램 밑에서 동작하더라도 EXE/DLL 모듈간에 입력 설정 충돌을 일으키지 않고 서로 입력 설정을 따로 관리할 수 있게 하기 위해서이다. 외부 모듈 혼자만 이렇게 남을 알아서 피해 가면 되며, 다른 프로그램들은 굳이 이렇게 동작해야 할 필요가 없다.

외부 모듈에서 연 제어판은 앞서 언급한 이유로 인해 '적용' 버튼은 사용할 수 없다. 하지만 '미저장 확인'은 있는데, 이걸 누르면 지금 맞춘 입력 설정이 외부 모듈을 사용하는 모든 프로그램들에서 한데 동기화되는 게 아니라 지금 실행 중인 프로그램/스레드에서만 잠깐 사용 가능하게 바뀐다. 한글 표현 방식 옵션도 레지스트리에 영구적으로 기록되는 게 아니라 지금 메모리에만 반영된다. 이런 것도 외부 모듈이 스레드별로 독립된 storage를 갖고 있기 때문에 구현 가능하다.

아, 하나 더.. '미저장 확인'은 제어판을 입력 도구모음줄을 통해서 열었을 때에만 나타난다. 운영체제의 제어판/설정이 제공하는 메뉴를 통해서 연 것은 문자 입력 문맥이 아니기 때문에 '미저장 확인'이 가능하지 않으며, '확인'을 눌러서 파일에 기록하는 영구적인 저장만이 제공된다.

3. 외부 모듈과 패드 공통

편집기와 타자연습은 자체 구현된 전용 에디트 컨트롤에다가만 글자를 생성한다. 하지만 외부 모듈과 입력 패드는 타 프로그램에다가 글자를 생성한다. 그렇기 때문에 이들 프로그램에서는 제어판의 시스템 계층에 '한글 표현 방식'이라는 탭이 존재하며, 빠른설정이나 낱자 결합에서 옛한글을 지정하면 "한글 표현 방식부터 맞춰야 옛한글이 실제로 나타납니다"라는 안내문이 나타난다.

또한 텍스트를 보낼 수만 있지 읽어 오고 고칠 수 없는 환경에서는 이런 동작과 관련된 기능과 옵션들이 몽땅 사용 불가 상태가 된다. 앞 글자로 달라붙는 bksp 옵션이나 단어 단위 한자 변환이 대표적인 예이다.
입력 패드는 이런 기능들이 무조건 사용 불가이고, 외부 모듈은 TSF A급 환경에 한해서 그런 기능들을 사용할 수 있다.

4. 외부 모듈 only

외부 모듈에서 제어판을 띄웠을 때는 유일하게 시스템 계층에 '외부 모듈 관리' 탭이 나타나지 않는다. 그 대신 '고급 시스템 옵션'을 갖고 있다.
또한, 구현체들 중 유일하게 외부 모듈만이 Alt가 섞인 단축글쇠를 전혀 인식할 수 없기 때문에 단축글쇠 대화상자에서 Alt를 나타내는 슬라이더가 사용 불가 상태로 바뀐다.

지금까지 논의한 사항들을 또 표로 깔끔하게 정리하면 다음과 같다. 아래의 4개 항목은 자료구조· 알고리즘의 차이가 아니라 그냥 UI 처리 차원에서의 차이일 뿐이다. 타자연습은 특이사항이 거의 존재하지 않아서 단순하고, 외부 모듈은 동작 환경이 변화무쌍하다 보니 조건부로 동작하는 게 굉장히 많음을 알 수 있다.

항목 편집기 외부 모듈 패드 타자연습
설정 data 저장소 공통 스레드별 따로 공통 계정별 따로
공통 설정(메모리) 조작 O X O O
공통 설정(imeconf.dat 파일) 조작 O O O X
'미저장 확인' 지원 O 입력 문맥일 때만 O X
modeless. '적용' 지원 O X O X
옛한글 설정 필요 안내문 X O O X
입력 기능 제약 처리(TSF A 미비) X IME/TSF B 한정 O X
Alt 단축키, 외부 모듈 관리 숨김 X O X X
2글자 이상 조합 제약 안내문 X TSF B 한정 X X

Posted by 사무엘

2016/12/30 19:35 2016/12/30 19:35
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/1311

1. 블레이크 스톤 (Blake Stone)

먼 옛날 기억을 되살려 보니, 본인은 1990년대 중반에 울펜슈타인이나 둠 같은 id 사의 게임 말고 다른 계열의 3D FPS 게임을 친구 집 컴퓨터에서 본 적이 있었다. Doom처럼 좀 SF스러운 분위기이지만 Doom은 아니고 그것보다는 기술 수준이 뒤떨어졌다. 열쇠가 없는 상태로 잠긴 문을 열려고 하면 깜찍한 소리로 문이 열리지 않는다는 피드백이 왔다. (울프와 둠에는 청각 피드백이 없음)

그리고 제일 결정적인 단서로는.. 체력이 막대기나 숫자나 주인공의 얼굴 상태로 표시되는 게 아니라 검은 배경에 초록색 파형인 심전도 그래프로 나타났다. 완전히 죽어 버리면 물론 심장 박동이 없어진다.
이 모든 조건을 만족하는 게임을 검색해 보니.. Blake Stone이다.

사용자 삽입 이미지

기술적으로는 얘는 울펜슈타인 3D 엔진을 기반으로 개발되었다. 그렇기 때문에 높이를 표현할 수 없으며 레벨 배경은 여전히 건물 안으로 제한된다. 그러나 얘는 울프와는 달리 (1) 바닥과 천장에도 텍스처를 얹어서 그래픽을 고급화했으며, (2) 시점에서 먼 곳은 살짝 더 어둡게 표시되는 걸 구현했다. 게다가 얘도 미래가 배경이기 때문에 높이가 없다는 것만 빼면 전반적으로 둠과 분위기가 비슷해 보인다.

얘는 분명 나쁘지는 않은 게임이었으나, 스케일과 기술 수준 등에서 둠의 적수가 될 수는 없었다. 게다가 너무 늦게 나왔다. 출시일이 1993년 12월. 얘가 발매되고 나서 겨우 1주일 뒤에 Doom이 출시되는 바람에 블레이크 스톤은 존재감이 싹 묻혀 버렸다.

2. 퀘이크 1의 베타 3

본인은 중학교 말년에 어느 이웃집 형이 가져온 불법복제 백업CD를 통해서 퀘이크라고 둠의 다음 세대 게임을 처음으로 접했다. 그때는 지금 같은 고속 인터넷망이 없었으니 어둠의 경로에서 소프트웨어 불법복제를 책임지던 매체는 CD였다.
요즘은 아무 컴퓨터에나 당연하게 달려 있는 CD 쓰기/굽기 기능도 그때는 고가의 기계를 따로 돌려야 할 수 있는 첨단 기능이었다. 어디 그 뿐이랴? 요즘은 인터넷, USB 메모리, 외장 하드의 발달로 인해 광학 드라이브의 필요 자체가 극도로 줄어들어 있으니 격세지감이 아닐 수 없다.

그렇게 본인은 오랫동안 도스용 퀘이크 1을 즐겼다. 486 66MHz짜리 컴퓨터로는 퀘이크는 기본 최저 해상도인 320*200/240대에서나 제대로 프레임이 나왔지 640*480으로는 도저히 제대로 할 수 없었다. 그러고 보니 동일한 영어 이니셜을 갖고 "그 FPS(1인칭 슈팅) 게임은 이런 사양의 컴터에서 FPS(초당 프레임 수)가 얼마나 나오냐?" 이런 드립을 치는 게 가능하구나.;;

세월이 흘러 2000년대 중반이 되었고, 본인의 컴퓨터는 퀘이크를 처음 접하던 시절보다 당연히 성능이 월등히 더 향상된 걸로 바뀌었다. 본인은 옛날 생각에 Windows용으로 포팅된 퀘이크를 고전 게임 사이트에서 구해서 돌려 봤다.
그런데 이 퀘이크는 내가 옛날에 하던 퀘이크와는 미묘하게 다른 게 많았다. 정자체에 가깝던 화면 글꼴은 bloody한 분위기를 내려는 듯 좀 흘리고 날린 형태로 바뀌었다. 메뉴를 꺼내면 뒤의 게임 배경이 단순히 팔레트만 바뀌는 게 아니라 시꺼먼 하프톤 점이 쫙 깔렸다.

사용자 삽입 이미지사용자 삽입 이미지

각 에피소드별로 모아야 하는 아이템의 이름을 본인은 10여 년 가까이 sigil이라고 알고 있었는데 이 게임은 rune이라고 표현했다.
그 이름도 유명한 무기 파워업 아이템은 quake power이라고 알고 있었는데 그게 이 퀘이크에서는 quad damage였다.
새로 구한 퀘이크는 에피소드 2의 마지막 레벨은(비밀 레벨 말고) 물웅덩이를 중심으로 사방으로 이동해서 다리를 내는 형태였는데 내가 기억하는 맵이 아니었다. 또한 에피소드 3의 마지막 레벨의 끝부분에서 Vore 두 놈은 높은 곳에서 튀어나왔으나, 이 게임은 다리 아래 용암 바닥에서 튀어나왔다.

차이점은 이 뿐만이 아니다. 에피소드 1의 보스인 Chthon의 생김새도 내가 기억하던 모양이 아니었다. 내가 하던 퀘이크는 얼굴도 몸통과 비슷한 색깔이고 눈이 있었던 반면, 이 퀘이크는 딱히 눈 같은 게 없고 얼굴 전체가 세로로 난 입의 이빨 같은 것으로 둘러져 있었다.

사용자 삽입 이미지사용자 삽입 이미지

결정적으로 게임 전체의 최종 보스인 Shub-Niggurath와 싸우는 마지막 레벨은 완전히 다른 맵으로 바뀌어 있었다.
내가 기억하는 마지막 맵은 요렇게 뭔가 에피소드 4의 비밀 레벨과 비슷한 분위기였다. 나중에는 천장이 청록색인 거대한 필드에 도달하고, Shub-Niggurath가 있는 곳까지도 갈 수는 있지만 여기서 더 보스를 죽이거나 게임을 진행해서 엔딩을 볼 수는 없었다. 적을 다 죽인 뒤에 어떻게 해야 할지를 몰랐다.
(그나저나 퀘이크는 다 뭘 참고해서 몬스터들의 이름을 지었는지, 스펠링이 다 읽기 힘든 형태이다.)

사용자 삽입 이미지사용자 삽입 이미지

이렇게 내가 경험했던 퀘이크에 차이가 존재했던 이유는 이미 제목에 쓰여 있다. 내가 중딩 시절 옛날에 했던 퀘이크는.. 바로 퀘이크 정식 버전이 발매되기 불과 2주 남짓 전에 유출된 '0.8 베타 3 버전'이었기 때문이다. 그게 어째 어떤 복돌이가 만든 백업 CD에 포함되었던 것이다. 난 10년이 넘게 베타 버전 퀘이크가 정식 퀘이크인 줄로 알고 있었다.
그래도 이런 것도 이제 검색해 보면 구체적인 출시 내역을 다~ 알 수 있고.. 옛날 기억도 어지간한 건 다 복원 가능한 세상이 됐으니 참 대단하다.

beta 3 구버전의 구동 및 플레이 동영상을 짤막하게나마 유튜브로 다시 보니 감회가 새롭다. 구버전은 마지막 레벨을 클리어 하는 엔딩이 원래 존재하지 않았던 게 맞았다. 미완성이었다.
그에 반해 정식 버전은 적절한 타이밍에 순간이동 장치로 들어가서 Shub-Niggurath의 몸 속으로 '텔레프래깅'을 하는 방식으로 적을 죽여서 엔딩을 볼 수 있다.

더 생각나는 걸 열거하자면, 몬스터 Ogre가 톱질 하는 소리가 구버전 것은 정식 버전의 것보다 피치가 좀 더 낮았다. Vore가 쏘는 탄환이 구버전은 그냥 용암 fireball과 동일했지만 정식 버전은 보라색 공으로 바뀌었다.

또한, 주인공이 뭔가에 깔려 죽었을 때 구버전은 be crushed라는 말을 썼지만 정식 버전은 be squished라고 말을 바꿨더라. 본인은 crush라는 단어를 둠과 퀘이크를 통해서 알게 됐다. Doom 2에서도 레벨 6이 The crusher이기도 하고 말이다. 끝으로, 구버전에서는 Ogre 이상 몬스터들은 로켓 같은 무기로 오버킬을 당해도 결코 육편 피떡으로(gibbed) 변하지는 않았던 걸로 기억한다.

id에서 1990년대 중반에 개발했던 Doom과 Quake들은 묘사가 잔혹할 뿐만 아니라 오각형, 염소 뿔 등 의도적으로 오컬트나 사탄 숭배교를 표방하는 듯한 비주얼이 많이 들어가 있었다.
그래서 자국 내에서도 이런 비판을 많이 받았는가 보다. 파일로 제공되는 도움말 문서를 보면, FAQ 중 하나로 "Are you guys Satan-worshipers?"가 있고, 이에 대한 답변은 No 한 마디로 간단히 일축해 놓았다.

그런데, 이것도 구버전의 도움말 문서는 간단히 No만 있는 게 아니라.. "아니요, 우리는 그냥 오각형과 666을 좋아할 뿐입니다."라는 부연 설명도 들어있었다. 중고딩 시절에 분명히 읽었던 기억이 있다.
id는 전통적으로 종료 확인 메시지도 그렇고 말을 전반적으로 익살스러운 농담조로 하는 걸 좋아하긴 한데, 이 질문에다가도 답변을 그런 식으로 하면 기독교 단체 같은 데에다가 더 큰 논란과 어그로를 일으킬 것 같으니 저 말을 삭제한 듯하다.

3. 기타

10대 중반의 나이로 접했던 FPS들은 나의 가치관 형성에 많은 영향을 줬다.

사용자 삽입 이미지

요렇게 거의 270도 턴을 해서 미로처럼 꼬불꼬불 들어가게 돼 있는 건물 화장실을 이용한 적이 있었다.
벽면 텍스처도 규칙적인 형태인 게 무슨 둠 맵 같다. 문은 좌우로 열리는 게 아니라 셔터처럼 위로 열릴 것 같다.
이런 모양의 맵을 설계하면 bsp 파일이 어떤 형태로 만들어질까 이런 게 머리에 어른거린다. -_-;;

정확하게 1인칭 시점인 건 아니지만 툼 레이더도 있다.
선유도 공원을 가 보면 거긴 잡초가 낀 야외 콘크리트 구조물이 영락없이 툼 레이더 1 맵 같다.
손에 쌍권총 쥐고 옆으로 점프라도 하고 싶은데.. 그랬다가는 다치겠지.

말이 나왔으니 말인데, 내 생각에 적당히 스토리만 잘 짜 놓으면 우리나라 DMZ를 배경으로 툼 레이더 커스텀 레벨 얼마든지 만들 수 있다고 본다. GP에 들어가서 아이템 먹고 북한군을 때려잡는 식으로 진행될 것이다.
Demilitarized Zone 이름도 얼마나 근사하냐? ㅋㅋ

Posted by 사무엘

2016/12/28 08:35 2016/12/28 08:35
,
Response
No Trackback , 4 Comments
RSS :
http://moogi.new21.org/tc/rss/response/1310

다음 버전 개발 근황 2

이번 8.8은 이례적으로 다음 버전 개발 근황을 두 차례나 올리게 됐다. 분량을 나눠야 할만큼 작업이 활발하게 진행 중이라는 뜻이다. 번호를 9부터 시작해야 하나 싶은데.. 첫 근황을 올린 지 시간이 몇 주 정도 지났으니 다시 1로 리셋하도록 하겠다.
난 정말 날개셋 한글 입력기 코딩을 할 때가 제일 즐겁고 행복하다.

1. 사용자 정의 조합 편집 관련 기능 개선

10여 년 전 3.9 버전에서 '고급 입력기'가 첫 도입되었다. 원래 있던 '기본 입력기'의 지원 범위는 한글 한 글자의 조합인데(지금은 방점을 임시로 같이 묶어서 표현하는 것까지만 추가로 더 포함), 고급 입력기는 그 한계를 넘어서 한글이 아닌 글자의 조합도 표현하거나, 한글 하나를 여러 글자(한글 또는 비한글 모두)로 풀어서 표현하는 것을 지원한다. 전자를 위해서 '사용자 정의 조합'이 도입되었고, 후자를 위해서 '한글 출력 치환' 기능이 추가되었다. 이로써 조합 상태와 관련된 추상화 계층이 그럭저럭 완성됐다.

이번 버전에서는 그 중 '사용자 정의 조합' 쪽에 편의 기능이 추가되었다. 먼저, 제어판에서 사용자 정의 조합만 단독으로 파일로 저장하고 불러올 수 있게 했다. 바이너리 형태로 저장하는 것은 별 의미가 없다고 여겨져서 XML 형태만 지원한다.

그러니 이제 글쇠배열은 영문 쿼티로 그대로 두고, 알파벳을 기반으로 여러 방식으로 특수문자들을 입력하고 싶을 때 사용자 정의 조합 로직만 교체해서 문자 입력을 할 수 있게 됐다. 이 달 초에 소개했던 새 기능 중, 글쇠배열 이름뿐만 아니라 입력 스키마의 자체적인 이름을 부여하는 기능도 이런 맥락에서 도입된 것이다.

단, 비슷한 기능을 하는 한글 출력 치환은 여전히 단독 저장을 지원하지 않기 때문에 이건 형평성 문제가 될 수 있다. 그럼에도 불구하고 사용자 정의 조합에만 단독 저장과 불러오기 기능이 추가된 이유는.. 불러오기와 관련하여 큰 개선 사항이 또 생겼기 때문이다.

지금까지 사용자 정의 조합 로직을 설계하기 위해서는 w를 눌렀을 때 분기할 상태, 그 뒤에 a를 눌렀을 때 분기할 상태 등등을 숫자를 생각하면서 사용자가 일일이 설계해야 했다. 이런 불편을 덜기 위해 이번 버전에서는 이 프로그램이 내부적으로 사용하는 자료 구조를 그대로 노출하는 XML 스키마 말고, 사용자 친화적인 일명 '쉬운 문법' 스키마도 추가했다.

"wa = わ" 이런 쌍만 쭉 지정해 주면 w와 wa를 입력했을 때의 중간 과정과 상태 번호를 자동으로 매겨 준다는 것이다. 입력 파일 포맷을 구체적으로 어떤 형식으로 짜면 되는지는 물론 예제에다 소개해 놨다. 쉽게 말해 아래 그림에서 왼쪽처럼 만들어 놓으면 자동으로 오른쪽으로 만들어 준다는 뜻이다.

사용자 삽입 이미지

사실, 현재 예제로 제공되는 일본 문자 입력 로직은 히라가나/가타카나 테이블로부터 로직을 자동으로 짜 주는 툴을 내부적으로 돌려서 생성한 것이다. 사람의 손으로 60개가 넘는 state들을 알파벳 순으로 노가다로 생성한 건 물론 아니니까. 그 툴을 <날개셋> 한글 입력기 내부에 정식으로 포함시킨 거라고 생각하면 된다.

물론, 쉬운 문법은 내 프로그램이 인식하고 변환하는 걸 지원한다는 뜻이지, 프로그램이 내부적으로 사용하는 자료구조는 아니다. 그렇기 때문에 불러오기만 지원되지 저장은 안 된다. 쉬운 문법 원본은 사람이 따로 관리하고 갖고 있어야 한다.

또한 제어판 대화상자에서도 어떤 상태에 대해서 'called from 링크'를 찾아서 보여주는 기능을 추가했다. 30이라는 상태가 있으면 그 30이라는 상태로 분기하는 예전 상태.. 가령, 25번 상태에서 a를 누르면 30으로 간다는 걸 보여준다. 현재는 선택막대를 더블 클릭하면 앞으로 나아가는 calls to 링크만 지원되고, 뒤로 돌아갈 수는 없어서 불편했는데 이것 역시 개선됐다.

2. 단어 단위로 한자 변환

단어 단위로 한자 변환을 할 때 지금처럼 '뒤에서 앞으로 탐색'뿐만 아니라 '앞에서 뒤로 탐색'도 가능하게 옵션을 추가했다(제어판 - 편집기 계층). 예를 들어, '토선생'이라는 신조어에 대해서 한자 변환을 하면 '선생'이 아니라 '토선'이 블록이 잡힌 상태가 되며, '토선'을 변환한 뒤에 cursor는 다시 '생' 뒤로 되돌아온다.

지금까지는 조합 중인 글자나 cursor 바로 앞에 있는 글자가 반드시 단어의 마지막 글자에 포함돼 있어야 했지만 이제 그런 제약이 없어진 것이다. MS IME 내지 아래아한글이 동작하는 방식을 내 프로그램도 드디어 제대로 지원하게 됐다.

사용자 삽입 이미지

단어 단위로 한자를 변환하는 기능은 2012년에 나온 6.7 버전에서 '시범적으로' 추가되었다. 어차피 TSF A급 프로그램에서나 제공 가능한 기능이고(이건 MS IME도 마찬가지임), 그저 없는 것보다는 낫다는 차원에서 추가된 액세서리 기능일 뿐이기 때문에 동작 방식이 기존의 한 글자씩 변환하는 기능의 연장선 수준을 벗어나지 못했다. 저렇게 cursor가 통째로 앞으로 갔다가 변환 후에 되돌아오는 것은 <날개셋> 한글 입력기의 기존 프로토콜로 표현할 수가 없었다.

그러다가 그 내부적인 한계는 수 년 뒤, 작년에 나온 8.2에서 프로토콜을 확장함으로써 극복되었다. 입력 패드 구현체에다가도 한자 변환 기능을 구현하면서 작업을 싹 다시 했기 때문이다. 이때 테스트 차원에서 한자어가 굳이 cursor 바로 옆에 있지 않은 변환도 구현 가능한 것까지 확인했다.

하지만 이 코드는 말 그대로 테스트 코드일 뿐, 기존 한자 변환 코드와 융합 가능한 형태가 아니었기 때문에 조건부 컴파일로 기존 코드와 테스트 코드 둘 중 하나만 적용 가능했다. 게다가 테스트 코드는 중간에 ESC를 눌러서 한자 변환을 취소했을 때에도 cursor만 곱게 이동하는 게 아니라 변환 대상 텍스트를 불필요하게 덮어쓰는 등 한계도 있었다.

그러다가 8.8 버전에 와서야 오랜 숙제로 남아 있던 한자 후보 변환 관련 코드를 완전히 다시 작성했다. 한글 조합 상태일 때와 그렇지 않을 때를 불문하고 동일한 로직이 동작하게 했으며, 한 글자 한 글자 답답하게 앞으로 탐색하던 것을, 쿨하게 처음부터 맨 앞 글자들을 최대 30자 가까이 가져온 뒤 후처리를 하는 걸로 과정을 단순화했다. 그러면서 기존의 뒤-앞 탐색 부분에다가 옵션으로 seamless하게 병행하는 차원에서 앞-뒤 검색도 구현해 넣었다.
'초성 지향 도깨비불'(예: '간'을 '가ㄴ'으로)이나 호환용 낱자 변환으로 인해 당장 화면에 보이는 글자와 후보 변환 때 사용되는 글자가 서로 같지 않을 때의 보정 처리도 이 기회에 별도의 추상화 계층으로 싹 분리했다.

앞-뒤로 탐색했을 때 단어 단위 한글-한자 변환이 가능하지 않으면 그냥 지금 조합 중이거나 cursor 앞에 있는 한자 한 글자에 대한 한자 변환이 시도된다. 한글을 조합하던 중에 앞-뒤로 탐색하면 뒤-앞 방식으로 동작할 때와는 달리 지금 조합이 종료된다. 왜냐하면 cursor가 잠시 앞으로 이동해 버릴 수도 있으니 지금 조합 상태가 더 유지될 수 없기 때문이다. 그래도 한자로 변환될 예정인 부분이 블록으로 잠시 highlight가 되기 때문에(외부 모듈) 이 방식이 시각 피드백은 더 우수하다.

이런 뜻깊은 기능의 구현과 리팩터링 작업이 왜 이제 와서야 행해졌는지 모르겠다. 작업에 개인적으로 큰 보람을 느낀다.
그리고 이 작업을 하는 과정에서 덤으로 외부 모듈의 버그도 하나 발견해서 수정했다. TSF A급 프로그램에서 한글을 조합하지 않은 상태에서 한글 뒤에서 도구모음줄의 한자 버튼을 눌렀을 때.. 편집기와 같은 저런 한자 변환이 케바케로 되지 않는 문제가 있었다. 적어도 8.x 버전 내내 존재했으리라 여겨지는 문제이다.

3. 비주얼 관련

깨알같은 사소한 변화이긴 하다만, 지난 8.6에서 외부 모듈에서 추가되었던 '키보드 드라이버 변경' UI에다가 방패 아이콘을 추가했다. 이건 변경을 위해 관리자 권한이 필요하다는 걸 강조하기 위해서이다.
버튼에다가는 옵션 하나만 추가하면 문구 옆에다 방패 아이콘을 간단히 넣을 수 있지만, 콤보박스나 static 컨트롤에다가 방패 아이콘을 넣는 기능은 없는 것 같다. picture 컨트롤을 하나 더 집어넣어야 했다.

사용자 삽입 이미지

Windows는 IDI_ERROR, IDI_QUESTION 같은 몇 가지 기성 아이콘을 제공하기 때문에 응용 프로그램에서는 LoadIcon이나 LoadImage 함수를 통해 이것들을 가져올 수 있다. 메시지 박스에다가는 MB_ICON* 형태의 플래그를 지정해서 집어넣을 수도 있다.
그리고 Vista부터는 사용자 계정 컨트롤에 대한 시각 피드백을 제공하라는 취지로 방패 아이콘도 IDI_SHIELD라는 명칭으로 제공한다. 이들은 모두 내부적으로는 user32.dll의 리소스 형태로 존재한다.

IDI_SHIELD는 그 성격상 32*32 이상의 크기보다는 글자와 어울리는 16*16, 20*20 같은 아담한 형태로 훨씬 더 많이 쓰인다. 그런데 문제는 얘는 LoadIcon이나 LoadImage 같은 재래식 함수로는 제대로 그릴 수 없다는 것이다.

옛날부터 있었던 IDI_ERROR 같은 메시지박스 아이콘들은 최대 크기가 끽해야 48*48이 고작인 반면, 21세기에 추가된 IDI_SHIELD는 무려 256*256 크기까지 존재한다. 구조가 특이해서 그런지 LoadIcon은 물론이고 LoadImage로 크기를 지정해 줘도 작은 크기가 로딩되지 않고 제일 큰 놈으로만 그려진다. 큰 그림을 16*16, 20*20으로 강제로 줄이면 보기가 아주 흉측해진다.

그래서 방패 아이콘은 내 경험상 Vista에서부터 추가된 LoadIconMetric이라는 특수한 함수를 써야만 작은 크기로 보기 좋은 HICON을 가져와서 그릴 수 있다. 이 함수는 user32도 아니고 생뚱맞게 comctl32.dll에 있다. 세월이 흐르면서 API 설계의 일관성이 좀 깨지고 뒤죽박죽이 된 것 같다.

게다가 리소스에 있는 아이콘을 있는 그대로 read-only 공유 형태로 가져오기만 했다면 대개는 DestroyIcon을 할 필요가 없는데 저 함수의 리턴값은 언제나 소멸 처리도 해야 해서 더 불편하다. 뭐, Windows 프로그래밍에는 아이콘 나부랭이 하나 찍는 일에도 이런 복잡한 사정이 있더라.

그리고.. 진짜 사소한 거다만, 도움말에 있는 프로그램 스크린샷들을 드디어 Windows 10 기준으로 다 교체했다.

4. 옛한글 입력 설정이 되지 않았을 때의 알림 메시지

이제 더 고칠 게 없을 것 같은 입력 패드에도 improvement가 있었다.
트레이에 있는 입력 패드 아이콘을 마우스로 가리키고 있으면 현재 선택돼 있는 글자판의 이름이 툴팁으로 뜨는데, 이게 제어판의 실행으로 인해 글자판의 이름이 변경된 것은 같이 업데이트 되지 않는 걸 뒤늦게 발견하여 수정했다.

그리고 외부 모듈과 입력 패드는 옛한글을 입력하기 위해서는 제어판 시스템 계층의 '한글 표현 옵션'부터 먼저 설정해 줘야 한다는 공통점이 있다. 비트맵 자체 글꼴 전용 환경인 편집기와는 달리, 밖에서는 사용자가 옛한글을 지원하지 않는 글꼴을 사용하고 있을 수 있으며, 또 옛한글을 표현하는 방식도 역사적인 이유로 인해 여러가지가 존재하기 때문이다.

하지만 이런 사정을 모르는 사용자의 입장에서는 분명히 옛한글 입력으로 설정을 했는데 옛한글이 찍히지 않는다면 프로그램의 이상이라고 생각할 수 있다. 물론 제어판도 편집기가 아닌 타 환경에서 동작할 때는, 사용자가 빠른설정이나 낱자 결합 규칙을 옛한글과 관련된 것으로 변경할 때 "옛한글을 사용하려면 한글 표현 방식도 맞춰 주세요"라고 짤막한 메시지를 출력하긴 하지만 이것만으로는 좀 부족한 감이 있다.

입력 패드는 키보드 포커스를 건드리지 않고 시스템 트레이에다 말풍선 형태로 메시지를 찍는 아주 편리한 UI를 갖추고 있으니 이런 기능을 추가하는 게 아주 용이하다.

사용자 삽입 이미지

(layered window든 동영상이든 화면에 보이는 건 무엇이건 print screen으로 간단히 캡처하는 시대가 된 지 오래인데, 시스템 트레이의 말풍선 윈도우는 의외로 고전 테마에서는 print screen 캡처가 안 되더라..! DWM이 동작하는 AERO 테마를 띄워야 캡처가 됐음..)

참고로 지금까지 입력 패드는 입력과 관련된 기술적인 에러 메시지를 찍는 기능만 있었다. 권한 차이로 인해서 입력 패드가 메시지를 보낼 수 없는 윈도우일 때, 그리고 해당 윈도우가 IME 컨텍스트가 존재하지 않아서 문자 입력이 가능하지 않을 때 말이다.

다 외부 모듈/IME 말고 입력 패드에서만 존재하는 상황을 가리킨다. 외부 모듈은 애시당초 로그인 화면에서도 동작할 정도로 권한 걱정 따위는 할 필요가 없으며, IME 컨텍스트가 존재하지 않는 윈도우에서는 처음부터 버튼들이 다 흐리게 바뀌고 입력이 차단되기 때문에 사후에야 이런 상황을 알아채고 에러 메시지 처리를 할 일도 없기 때문이다.

사용자 삽입 이미지

다만, 옛한글 설정을 해 달라는 메시지는 입력 패드와 외부 모듈이 공통으로 출력할 명분이 있는 것들이다.
외부 모듈은 어떤 경우에도 시스템 트레이를 건드리지 않고 동작하기 때문에 다소 투박하긴 해도 그냥 메시지 박스를 이용한다.

사용자 삽입 이미지

외부 모듈은 TSF B급 프로그램에서 어쩔 수 없는 기술 한계로 인해 조합이 튕긴 것을 감지해서 메시지 박스를 찍어 주는 게 있었다(처음에 2글자 이상 길이의 조합을 만들 수 없음). 히스토리 문서를 보니 저건 그리 오래 되지도 않은 8.5 버전에서 추가된 기능이다. 이건 IME가 아닌 TSF 프로토콜을 취급하는 외부 모듈에서만 유일하게 발생하는 현상이다. 그런데 이제 이런 식으로 메시지를 찍어 주는 상황이 하나 더 추가된 것이다.

사용자 삽입 이미지

이런 식으로 예전에 만들어 뒀던 체계를 확장하여 유용한 UI가 간단하게 추가되는 건 참 뜻깊은 일이다.

Posted by 사무엘

2016/12/25 19:35 2016/12/25 19:35
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/1309

« Previous : 1 : ... 100 : 101 : 102 : 103 : 104 : 105 : 106 : 107 : 108 : ... 221 : Next »

블로그 이미지

그런즉 이제 애호박, 단호박, 늙은호박 이 셋은 항상 있으나, 그 중에 제일은 늙은호박이니라.

- 사무엘

Archives

Authors

  1. 사무엘

Calendar

«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        

Site Stats

Total hits:
3053578
Today:
1885
Yesterday:
2713