« Previous : 1 : 2 : 3 : 4 : 5 : 6 : ... 13 : Next »

Microsoft Office는 Windows와 더불어 지금까지도 마소를 먹여 살리고 있는 주요 밥줄이다. 출시된 지 어언 30년이 돼 가는데.. 가만히 생각해 보면 2000년을 전후한 97부터 XP 사이의 시기에 유독 자연어 처리 기술이 들어간 기능이 많이 도입됐었다. 그게 그 시절에 잠시 유행이었던 것 같다.

1. Office 길잡이

지금으로부터 20여 년 전엔 워드나 엑셀 같은 제품을 다루다 보면, 이런 강아지 내지 클립 귀요미들을 볼 수 있었다.
바로, MS Office 97에서 처음 도입돼서 2000과 XP 시절까지 명맥을 유지했던 Office 길잡이이다..;;

사용자 삽입 이미지

마소에서는 진작부터 HCI (사람-컴퓨터 간 인터페이스)에 굉장한 관심을 갖고 있었고, 컴퓨터를 어린이와 노인까지 누구나 겁먹지 않고 쉽게 다룰 수 있는 '친숙한' 물건으로 만들려고 애썼다. 그래야 자기들 장사도 되니까 말이다.

그래서 프로그램의 성능이나 기능과 직접적인 관계가 없음에도 불구하고, 많은 자금을 들여서 강아지나 클립 등의 캐릭터 애니메이션이 들어간 Office 길잡이라는 걸 만들고 집어넣었다.

얘들은 귀요미 애니메이션만 있는 게 아니라, 프로그램 사용 중에 잘 모르는 게 있으면 "질문을 직접 입력하세요"라는 파격적인 기능까지 제공했다. 이게 일종의 자연어 처리 기능인 셈이다.
워드에서 Dear XXX, 이라고 첫 줄을 입력하면 길잡이가 "편지를 쓰시는 것 같네요. 뭐 좀 도와드릴까요?" 이러기도 했던 건 유명한 일화이다.

1990년대 중반에 마소에서 Microsoft Bob이라든가 저런 Clippy 길잡이 같은 물건을 만들었던 걸 생각해 보면.. 그 시절에 빌 아저씨는 컴퓨터를 대중화시키기 위해서 귀요미 캐릭터가 필요하다고 생각했던 것 같다.
그러나 들인 노력에 비해 이런 UI들에 대한 사용자의 반응은 냉담했다.

괜히 문서 화면을 차지하고 걸기적거리면서 컴터의 성능과 메모리만 잡아먹고, 결정적으로 자연어 처리 AI가 그리 똑똑하지 못해서 사람 말귀를 잘 알아들으면서 도움을 잘 주는 것도 아니었다. 색인 기반으로 도움말 본문 검색 정도에나 적합한 엔진이 무슨 사람의 질문을 정확히 이해할 수 있었겠는가?

이러니 Office 길잡이는 2003에서는 기본적으로 설치되지 않는 물건이 됐다가 2007에서부터 완전히 삭제됐다. 메뉴에서 일부 항목이 생략되던 2000년대 초의 personalized menu와 비슷한 격으로 한때의 반짝 유행으로 끝나고 역사 속으로 사라졌다. 그래도 그 열악하던 옛날에 마소의 Office 제품이 '챗봇' 비슷한 걸 시도한 적이 있었다는 건 AI 역사의 관점에서는 의미심장한 사건이었던 것 같다~!

2. Word에 자동 요약(Auto Summarize)

0부터 100까지 백분율을 지정하면, 이 문서에서 분량 대비 중요도가 상위 그 비율에 든다고 여겨지는 문장을 프로그램이 자동으로 따로 강조해서 표시해 주는 대단히 획기적인 기능이다.
길고 빽빽한 문서를 빨리 읽을 일이 있을 때 엄청난 도움이 될 것이다. Word에 이런 기능도 있었다는 걸 기억하는 분이 계시려나..??

사용자 삽입 이미지

하지만 1990년대 겨우 펜티엄 급의 PC에다 1990년대의 NLP 기술만으로 문서 자동 요약이 정말로 똑똑하게 정확하게 수행되는 건 아니었다. 그저 표면적으로 자주 등장하는 단어만을 고려해서 밑줄을 칠 뿐, 글의 의미를 실제로 파악하고서 핵심 요점을 추려내지는 못했다.

이 기능은 한번 도입된 뒤에 이렇다 할 성능 개선이 없이 잉여로 전락했다. 그래서 Word 2007에서는 리본의 아무 탭에도 소속되지 못하고 누락됐다. 즉, 리본을 통해서 접근할 수 없고, Undo나 Save 같은 기능만 있는 quick access 툴바에다가 버튼을 추가하는 수고를 해야만 이 명령을 실행할 수 있다.
그러다 2010부터는 이 기능이 완전히 삭제되어 버리고 없어졌다. 그러니 지금도 구글에서 Microsoft Word Auto Summarize라고 검색해 보면 XP 내지 2003, 2007 시절의 스크린샷밖에 없다.

다음은 더글러스 맥아더 원수의 퇴역 연설문을 25%로 자동 요약시킨 결과 화면의 일부이다.
"저는 이제 52년 만에 군문을 떠납니다"라는 문장은 분량 비율을 10%로 줄여도 계속해서 포함된다. 이건 글의 핵심을 제대로 파악한 것 같다. 하지만 곁의 "노병은 죽지 않고 그저 사라질 뿐입니다"는 비율을 35% 정도로 올려야 포함되더라.

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

1950년대의 얘기이다 보니 북괴 얘기도 나오고 중공 얘기도 나오는데.. 문장들이 많이 수집된 곳과 듬성듬성 수집된 곳의 차이를 난 잘 모르겠다. 이런 요약은 그냥 없는 것보다 나은 정도의 참고용으로만 사용하면 될 듯하다.

3. 필기· 음성 인식 기능

2001년 말에는 Windows와 Office 모두 XP라는 브랜드를 달고 새 버전이 출시됐다.
IE 웹브라우저가 세기말(1997)에 버전 4~5이던 시절엔 운영체제 셸을 멋대로 마개조 했었는데.. 신세기(2001)에 출시됐던 Office XP는 운영체제의 IME 계층을 마개조 해서 TSF라는 문자 입력 인터페이스를 도입했다.

이건 정말 파격적인 새로운 기능이었다. 한중일은 문자의 구조가 복잡해서 처음부터 별도의 입력기가 필요하지만, 영문도 키보드가 아닌 필기· 음성 인식 방식으로 입력하기 위해서는 보조 도구 명목으로 IME 비스무리한 서비스가 필요하다.
거기에다 마침 자국어가 아닌 임의의 외국어 다국어를 입력하기 위해 Global IME니 하는 중간 과도기 제품이 돌아다니기도 했었으니.. TSF는 이 모든 것들을 기술적으로 통합하는 솔루션 역할을 했던 것이다.

사용자 삽입 이미지

Windows XP에다 Office XP 영문판의 모든 기능을 설치하면 영문의 필기· 음성 인식 기능을 사용할 수 있었다.
한글· 한자는 한 글자씩 인식을 하지만 영문은 단어 단위로 획을 끊지 않고 한붓그리기 필기체를 날려 쓰면 아주 잘 인식된다. 사실, 영문 필기체는 압도적인 수요 덕분에 세계에서 제일 많이 연구됐고 제일 기막히게 잘 인식되는 글자이기도 하다..;; 한자 따위와는 급이 다르다.

게다가 태블릿 PC를 의식해서인지, 비좁은 사각형 안이 아니라 화면 전체에다가 글자를 쓱쓱 그려서 인식시켜 넣을 수도 있다. Write anywhere를 고르면 된다. 아래의 드로잉쯤은 당연히 kill이라고 바로 인식된다.

사용자 삽입 이미지

그리고 음성도 본문에다가 받아쓰기를 할지, 명령 수행을 시킬지 선택할 수 있으며, 정확도 향상을 위해 미리 정해진 예문을 쭉 읽으면서 나름 학습을 시키는 절차도 있다. 학습을 시킬 때 단어들을 어색하게 딱딱 끊지 말고 반드시 평소처럼 자연스럽게 이어서 읽으라고 부탁하는 메시지가 뜬다.

무려 20여 년 전의 Office 제품에 벌써 이런 기능이 있었다는 게 놀랍지 않은가?
그랬는데 후대 버전의 Windows와 Office는 영문판을 찾아봐도 그런 필기· 음성 인식 기능이 오히려 없어진 것 같다. 성능이 시원찮고 시대에 뒤떨어지니 도로 없앤 건가 싶다.
고급 필기 인식 기능은 IME보다는 메모 전문 앱인 OneNote에 몰빵돼 들어갔다. 처음엔 Office 2003의 제품군 소속으로 개발됐었지만 지금은 독립한 물건이다.

Office 제품들은 운영체제의 공용 대화상자들을 생까고 자체 구현한 대화상자로 문서 열기/저장 기능을 제공해 왔는데, 지난 2007 버전부터는 그 전통을 깨고 운영체제 대화상자로 돌아왔다.

운영체제의 IME와 Office의 IME가 따로 놀던 관행도 2007? 2010?쯤부터 없어져서 현재에 이르고 있다.

입력과 직접적인 관계는 없는 기능이다만, Word의 경우 한국어로 텍스트를 입력하다 보면 인명 고유명사를 얼추 인식해서 파란 점선을 쳐 주고 주소록에 추가한다거나 다른 부가작업을 선택하는 게 있었다.
내 기억이 맞다면 smart tag라는 기능인데, 이게 최초로 추가된 것도 XP였다. 허나, 이 역시 오히려 후대 버전에서는 이게 없어지거나 기본적으로 꺼진 것 같다.

NLP 기능이 과거에 있었다가 나중에 도로 없어진 건.. 마치 21세기에 초음속 여객기나 우주왕복선이 오히려 없어진 것과 비슷한 맥락의 현상으로 느껴진다.
컴퓨팅 성능과 AI 기술이 훨씬 더 향상된 2020년대엔 오피스 제품에 더 똑똑해진 필기· 음성 인식과 문서 자동 요약과 번역, 도움말 안내 기능이 다시 부활해 들어가지 않으려나 기대를 해 본다.

Posted by 사무엘

2022/06/19 08:35 2022/06/19 08:35
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/2033

1. 존재를 부정 당하고 있는 IE 브라우저

지난 2010년대 초는 IE6을 작정하고 퇴출시키려던 시기였다. 그 뒤, 2020년대 초는 IE를 통째로 퇴출시키려는 시기가 됐다. 그 전에 플래시와 ActiveX부터 먼저 퇴출됐고 말이다.
그럼 지금은 키보드 보안이나 특수한 암호화 같은 게 필요하면 DLL 형태인 ActiveX 대신, EXE 실행 파일로 다 바뀐 건지? 그럼 요즘은 크롬에서도 인터넷 뱅킹이 가능한 건지?? 잘 모르겠다. 내 개인적으로는 여전히 뭔가 잘 안 돼서 PC에서 금융 거래를 할 때는 아직 "Edge + IE 모드"에 의존한다.

Media Player는 더 업데이트를 하지 않는 레거시로 남았을지언정 일부러 없애지는 않는 물건이다. 그러나 IE는 하루가 다르게 바뀌는 웹 프로그래밍 플랫폼이며 보안에 민감한 놈이다. 그래서 마소에서도 매우 적극적으로 존재 자체를 부정하고 없애려는 중이다.

그래서 작년 하반기쯤이었나? Windows 10의 어느 버전인가 업데이트를 설치한 뒤부터는 이제 Internet Explorer가 대놓고 실행되지 않게 됐다. 그냥 꺼져 버리고 Edge가 대신 뜬다.
과거 Windows Me가 여전히 도스를 완전히 벗어나지 못한 9x 커널 기반이었음에도 불구하고, 겉으로만 도스로 부팅하거나 도스로 돌아가는 기능을 없애 버린 것과 비슷한 조치 같다.

그러나 IE라는 껍데기 말고, IE가 사용하는 그 트라이던트 웹 렌더링 엔진과 윈도우 컨트롤은 사실상 Windows 운영체제의 일부나 마찬가지이다. 얘에 의존해서 돌아가는 기존 프로그램도 있기 때문에 그걸 통째로 없앨 수는 없다.
마치 Visual Basic 6처럼 말이다. 얘는 마소에서 21세기 이래로 줄기차게 없애고 .NET으로 대체하려 애썼지만 끝내 그러지 못했다. 게다가 Office 제품군의 매크로 언어인 VBA가 여전히 재래식 VB 기반이니.. 이것 때문에라도 완전히 없애는 건 불가능하다.

IE 엔진이 여전히 쓰이는 대표적인 분야는 도움말이지 싶다. 특히 HTML 도움말(*.chm) 말이다. 얘는 이미 10년 이상 전부터 추가적인 개발과 지원이 끊겼으며, 마소로부터 사실상 완전히 버려진 자식 신세이다.
그런데 마소에서 지난 2010년대부터는 '로컬 오프라인 환경에서 열람하는 도움말/문서'라는 개념 자체를 완전히 송두리째 폐기한 것 같다. IE나 HTML 도움말만 없앤 게 아니라는 뜻이다.

그러니 이제 메모장을 띄웠을 때 F1을 누르면.. '메모장 도움말'을 Bing에서 검색한 결과가 뜬다.;;; 이렇게 무심할 데가..
정말 믿어지지 않지만, 현재의 Windows 10/11은 로컬 도움말이란 게 사실상 존재하지 않는 것 같다. 오죽했으면 이젠 Windows\help 디렉터리가 거의 텅 비어 있다. 거기 그나마 들어가 있는 건 뭐 nvidia 제어판이나 개발 관련 듣보잡 문서이지, Windows 자체에 대한 일반 사용자용 도움말이 아니다.

개발툴도 예외가 아니어서 Visual Studio 2010/2012를 즈음해서는 10여 년의 역사를 자랑하던 msdn Document Explorer가 없어졌고.. 이제 내장 도움말 컨텐츠 다운로드 같은 것도 없어졌다.
이런 게 완전히 없어지기 전에는 chm이 아니어도 자기들만 쓰는 html + IE 엔진 기반의 개발 문서 조회 시스템이 있었는데.. 요즘은 그런 것 자체가 없다는 것이다. 걍 단순 정보 조회는 구글로, 문제 해결 정보는 Stack overflow를 뒤지라는 뜻인 듯..

안 그랬으면 HTML 도움말을 IE 대신 크로뮴 엔진 기반으로 다시 만드는 지원이라도 할 텐데 그런 것조차 없다.
근데 현실적으로는 다른 대안이 있나? Windows용 앱 내부에서 뭐 최신 반응형 웹 따위 바라지도 않고, 간단히 html 렌더링해서 표시하고 싶은데 IE ActiveX 컨트롤보다 더 간편한 방법이 있을까? 그건 의문이 든다.
아무리 웹이 기존 앱의 영역을 많이 잠식하긴 했어도, 그래도 앱 내부에서 웹페이지를 표시할 일도 있을 텐데 말이다.

그리고 또 하나 생각할 점은 웹페이지의 인쇄이다.
내 경험상.. 당장 이 블로그 웹페이지를 같은 pdf 드라이버로 인쇄해 보면 IE는 그럭저럭 최적화된 형태의 pdf가 만들어진다. 그 반면, 크롬은 훨씬 더 bloat된 이상한 형태로 pdf가 생성되며, 인쇄하는 데 시간도 더 오래 걸린다.
무작정 IE를 없애 버리기에는 제대로 된 대안· 대체제가 여전히 존재하지 않는 것 같다.

2. 이상하게 바뀐 메모장

올해 초쯤에 Windows 11의 업데이트를 설치하고 나자.. 프로그램 창의 ‘최대화’ 버튼의 동작이 살짝 달라졌다. 마우스로 얘를 가리키면 고전적인 전체 최대화 외에, 좌우 1:1:1 등 어느 레이아웃으로 최대화할지 고르는 타일 메뉴가 나타나기 시작했다.
Windows 7에서 창을 마우스로 화면 좌우상하 구석으로 끌었을 때 그렇게 배치하는 기능이 처음 추가되긴 했는데, 그게 13년쯤 뒤에 저렇게 강화됐다. 요건 뭐.. 나쁘지 않아 보이네.

그런데 그것 말고도 마소가 꽤 큰 사고를 쳤더라. 세상에.. 메모장이 메트로 UI 형태로 다시 만들어졌다.
본문이 운영체제 기본 에디트 컨트롤이 아니라.. 워드패드와 동일한 리치 에디트 기반으로 바뀌었다.
개인적으로 이거 완전 비호감이더라. 메모장은 단순한 앱의 상징 마지노 선으로 봉인 좀 시켜 놓지, 왜 저런 짓을 했나 모르겠다. 사람들이 메모장이 기능이 많아서 애용하는 줄 아는가??

그런 주제에 UTF-16랑 KS X 1001 인코딩의 파일이 열리지 않고, 우클릭 컨텍스트 메뉴에 알파벳 단축키가 먹히지 않는다. 예전에 되던 것이 안 되니 새 버전을 사용하기가 매우 꺼려지게 된다.
저런 쓸데없는 걸 건드리지 말고, sihost.exe가 CPU 다 쳐먹으면서 폭주하는 버그나 좀 고칠 것이지.. 그 문제는 여전한 걸 보고는 더 좌절했다.

난 지금까지도 솔직히 Win10이랑 11의 차이를 모르겠다. 업데이트 해야 할 필요를 느끼지 못한다.
10에서는 작업 표시줄을 우클릭해서 바로 작업 관리자에 들어갈 수 있었는데 11에서는 못 하고..
정말 필요한 기능이 아니라 그냥 괜히 바꾸기 위해서 바꾼 게 많다. 이럴 거면 걍 10의 업데이트나 낼 것이지 왜 11이라고 차별화를 한 걸까?

난 멀쩡히 잘 돌아가는 기능들에다가 쓸데없이 자꾸 메트로 UI를 도입하는 것도 근본적으로 마음에 안 든다. 현실에서 멀쩡한 길거리 인도 보도블럭을 쓸데없이 교체하는 것과 비슷한 느낌이 든다.
아 그래, 25년쯤 전에 마소에서 Windows UI 셸을 전부 IE4 Active desktop으로 도배하려는 것과 비슷하게 느껴지기도 한다.

Posted by 사무엘

2022/06/11 08:36 2022/06/11 08:36
,
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/2030

1. 증기 기관과 컴퓨터

20세기 중반에 전자식 컴퓨터나 그 전신뻘의 물건이 최초로 개발되어서 수행했던 임무는 탄도 계산이나 암호 해독 같은 군사 관련 일이었다. 게임이나 무슨 수학자 덕질 같은 용도가 아니었다. 인터넷도 맨 처음엔 생각보다 굉장히 군사· 안보 상의 목적과 필요 때문에 개발되었다는 것을 알 만한 분은 아실 것이다.

그리고 옛날에 증기 기관이란 게 최초로 개발되어서 투입된 용도는.. 기억하시는가? 무슨 군사나 교통수단이나 면직물 가공 기계가 아니라, 탄광 내부에 찬 지하수를 빼내는 펌프의 가동이었다. 즉, 자신이 석탄을 소모하면서 역으로 석탄을 캐는 일을 도와줬던 것이다. (물론 자기가 소모하는 것보다 훨씬 더 많은 석탄을 캐는 걸..)
그렇게 태동했던 기계가 하나는 산업 혁명을 견인했고 다른 하나는 정보화 시대라는 걸 만들었다니 참 격세지감이다.

2. 도트 프린터와 비트맵 폰트

21세기, 2020년대를 찍고 있는 요즘은 자그마한 종이 쪼가리에 찍혀 나오는 영수증이나 카드 명세서, 승차권/탑승권, 주문 번호표, 관공서 차례 대기 번호표조차도 다 열전사 같은 비충격식 프린터로 인쇄되는 세상이다.
하지만 쌍팔년도의 잔재인 찌익~ 찍 도트 프린터의 출력 결과물을 아직까지 생생히 볼 수 있는 곳은 단연 은행이라 하겠다. 독보적이고 유일하다. 이게 개인적으로 매우 매우 흥미롭고 신기하게 느껴진다~!

사용자 삽입 이미지

통장의 책장을 넘겨가며 거래 내용을 인쇄한다거나, 혹은 이미 만들어져 있는 은행 특유의 각종 양식 문서의 일부란에 문자와 숫자를 찍는 용도로는 재래식 도트 프린터가 여전히 유용한가 보다. 물론 전자 통장, 전자 문서 때문에 예전에 비해서 필요성이나 활용 빈도가 많이 줄어들긴 했지만 말이다.

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

도트 프린터가 독특한 이유는 찍혀 나온 글자의 자형, 즉 폰트부터가 독특하기 때문이다.
이런 도트 프린터는 해상도가 그리 높지 않았기 때문에 겨우 본문용 크기에서 산돌이니 윤디자인이니 하는 상업용 폰트를 보기 좋은 퀄리티로 찍을 수 없다. 그 대신 그 저해상도에서 그럭저럭 보기 좋게 특화된 전용 비트맵 명조/고딕 같은 폰트가 쓰인다.

지금 Windows의 굴림/바탕/돋움 같은 폰트만 봐도, 대략 19포인트까지는 이런 비트맵 버전이 쓰이다가 20포인트부터는 일반적인 윤곽선 버전이 투입되는 걸 확인할 수 있다. 이런 게 저해상도 프린터에서는 인쇄용으로도 쓰인다는 것이다.

저해상도 비트맵 폰트를 종이 인쇄를 통해 볼 수 있는 곳은 은행이고, 화면 형태로 볼 수 있는 곳은 단연 각종 LED 전광판일 것이다. 하지만, 이 분야도 해상도와 색상이 증가하면서 윤곽선 폰트(= 출판물용 고퀄 폰트)로 대체돼 가고 있다.

아날로그 숫자 카운터가 원래 주유소 주유기, 테이프 재생기의 구간, 자동차 계기판의 거리계 등 여러 곳에서 볼 수 있다가 지금은 싹 다 사라지고 수도· 전기· 가스 검침기에서나 볼 수 있는 것과 비슷한 현상 같다.
많이 없어지긴 했지만, 완전히 멸종 급으로 자취를 감춘 건 아니라는 것이다. 공중 전화처럼 말이다.

나 역시 비트맵 폰트의 끝물 마지노 선을 지키는 프로그램을(날개셋 편집기..) 보유하고 있는 관계로.. 이런 비트맵 폰트를 주위에서 보면 괜히 반갑다. 컴퓨터라는 게 처음 등장하던 시절에 쓰였던 투박한 추억의 폰트들을 최대한 복원해서 내 프로그램에서 재생해 보고 싶다.

그나저나, 요즘은 민증이나 면허증 같은 신분증들도 온통 전산화됐기 때문에 실물의 필요성이 많이 없어졌다. 잃어버렸을 때의 타격도 많이 덜하다.
하지만 현물 실물의 중요성이 여전히 가장 크고 절대로 잃어버려서는 안 되는 개인 증서는 아무래도 여권이지 싶다. 당연히 외국 나가 있는 중에 말이다. 신원 조회라는 게 전국구 급으로는 수월하게 되지만 그게 세계구 급으로 되는 건 아니기 때문일 것이다. 세계가 무슨 음모론자들의 주장처럼 세계 단일 정부로 가는 건 말처럼 호락호락 쉽게 가능하지 않다.;;

여권도 카드가 아니라 통장 같은 수첩 형태이고, 도트 프린터로 찍은 기록들이 덕지덕지 추가될 것 같은데 그래도 얘는 통장보다는 인쇄 스타일이 옛날식이 아닌 것 같다.

3. 일반인 소비자가 보는 것만이 전부가 아님

(1) 증기 같은 외연 기관은 교통수단의 동력원으로는 진작에 퇴출됐다. 허나, 외연 기관 자체는 증기 터빈의 형태로 지금까지도 엄연히 현역이다. 지금 세계에서 생산되는 전기의 압도다수는 증기 터빈 발전기를 돌려서 생산된 것이다. 화력이든, 원자력이든.

(2) 선박은 비행기에 밀려서 대륙 간 장거리 여객 교통수단으로는 완전히 퇴출됐다. 그러나 화물을 살펴보면?? 선박이 없이는 세계 물류가 돌아갈 수 없다. 운하가 하나 틀어막히기만 해도 어떤 일이 벌어지는지를 우리는 얼마 전에 목격한 바 있다.

(3) 인터넷을 통해 지구 반대편으로 정보 전송이 가능한 것은 압도다수가 인공위성이 아니라 해저 케이블 덕분이다.

(4) 8비트 CPU는 성능이 너무 떨어지기 때문에 사람이 직접 다루는 PC나 게임기용으로는 수십 년 전에 진작에 퇴출됐다. 그러나 그 정도로 높은 성능이 필요하지 않고 최소한의 제어만 하면 되는 기기들.. 밥솥, 자판기, 전광판 이런 데서는 저렴한 가격에 낮은 전력 소모 등 유용한 구석이 많다.
그렇기 때문에 임베디드용으로 세계에서 여전히 수십억 개씩 생산되고 있다~! 다른 분야에다 비유해 보면 거의 척추동물(PC)과 무척추동물(임베디드..)의 개체수 차이와 비슷할 정도이다.;; 오히려 이도 저도 아니고 어중간한 16비트가 콩라인이 됐을 뿐..

(5) 오늘날 카세트 테이프는 컴퓨터에서나 오디오에서나 모두 한물 가고 퇴출됐다. 그러나 테라/페타바이트 급의 초 거대 용량의 백업 보관용으로 가장 우월한 저장 매체는 여전히 자기 테이프이다. 물론 이런 건 일반인이 가정에서 취급하는 급의 물건은 아니다.

(6) 컴퓨터의 통신 수단으로서 구닥다리 전화선과 모뎀은 진작에 퇴출되었다. 하지만 서류를 주고 받는 용도로 전화선 기반의 팩시밀리는 여전히 건재하다.
디지털이나 인터넷과 동떨어져 있지만 고유한 쓸모가 있기 때문이다. 어떤 가게가 지금 영업을 하는 중인지 알아보는 제일 쉽고 확실한 방법은 카톡이고 이메일이고 나발이고 필요 없이, 그냥 전화를 걸어 보는 것이듯이 말이다.;;
복사기, 스캐너, 팩스, 프린터는 종이를 다루는 복합기로 싹 통합해 버리기에 딱 좋아 보인다.

4. 저렴해지는 것, 비싸지는 것

사용자 삽입 이미지

그랜저가 30년 전이나 지금이나 똑같이 3~4천만 원대인 걸 아시는가..??
배기량과 가격만 비슷하지 엔진 성능이나 효율, 편의 시설은 30년 전과 지금이 쨉이 안 될 것이고, 물가 상승도 쨉이 안 될 것이다.
하지만 어떻게 지내냐고 누가 물었을 때 그랜저로 답하기가 지금이 훨씬 더 쉬워진 셈이다. 물론 그 대신, 그랜저보다 더 비싼 고급차가 나오기도 했고 말이다.

1990년대 초엔 486 컴터 한 대가 3백~5백만 원이었다. 당연히 그 시절 물가 기준으로. -_-
버스비, 우유· 라면처럼 원래부터 소액이던 것은 가격이 몇 배로 무섭게 뛰었지만, 옛날에 왕창 비쌌던 고급 기계는 가격이 놀라울 정도로 변하지 않거나 더 싸졌다.

컴퓨터는 CPU뿐만 아니라 메모리도 Windows 95가 처음 나왔던 시절에 4MB를 추가로 장착하는 데 십몇만 원 이랬었다.
이러니 PC 환경에서 16비트 도스를 좀체 졸업할 수 없었다. 가상 메모리를 구현하고 현대적인 32비트 운영체제를 돌리려면 메모리를 관리하는 데 드는 메모리도 필요하고 도스보다 훨씬 고사양의 컴터가 필요하기 때문이다. x86이 구닥다리 비효율을 감수하고라도 조밀조밀 CISC 방식으로 만들어진 건 메모리를 조금이라도 더 아끼기 위해서였다.

그런데 1990년대 말~2000년대 초 사이에 메모리가 갑자기 64, 128, 256MB 이렇게 순식간에 뻥튀기 되기 시작했다. CPU 클럭 속도만 뻥튀기 된 게 아니었던 거다. 이렇게 메모리가 값싸고 풍족해진 덕분에 그 당시 Windows 9x 계열의 퇴출이 더욱 앞당겨지고 2000/XP 같은 NT 계열이 대세가 될 수 있었다!
메모리 반도체의 본좌인 삼성 전자에서 그 당시에 갑자기 외계인 고문과 공밀레를 열나게 시전해서 기술 혁신을 이뤄낸 건지는 잘 모르겠다. 무어의 법칙뿐만 아니라 황의 법칙도 거론될 정도였으니까..

세월이 지나도 변하지 않는 동안 외모처럼, 어떤 분야엔 세월이 지나도 변하지 않는 가격이라는 것도 있는가 보다. 이런 변화가 무엇을 의미하는지 한 번쯤 곱씹어 볼 필요가 있다.

5. 멀티미디어 기능

옛날에 PC가 성능이 뛰어나지 못했을 때는.. 텍스트 모드에서 한글· 한자를 찍기 위해서(!!!), 부동소수점 연산을 더 빠르게 하기 위해서, '삑삑'이 아닌 레알 사운드를 듣기 위해서 별도의 카드를 꽂고 애드온을 컴퓨터에다 장착해야 했다. 뭐, 상당수는 쌍팔년도 얘기이지만 1990년대 초중까지만 해도 동영상 재생 정도는 별도의 MPEG 카드를 꽂아서 해야 했다. 그러나 지금은..

  • 그래픽과 사운드는 기본적인 수준이야 CPU 메인보드에 이미 다 기본 내장됐다. 저 분야에서도 SoundMAX인지 인텔 비디오인지 하면서 Intel이라는 단어가 슬금슬금 보이기 시작했다.
  • 이제는 동영상 재생이 아니라 컴퓨터 화면을 실시간으로 부드럽게 녹화할 때에나 캡처보드 같은 별도의 카드가 필요한 듯하다. 물론, 평범하게 컴터를 다루는 모습이 아니라 복잡한 게임 장면을 녹화하는 것 말이다.
  • 아니면 GPU까지 빡빡 혹사시키는 high-end급 온라인 게임을 할 때, 머신러닝을 시킬 때..

  • TV 수신 카드는 요즘도 수요가 있는지 모르겠다.
  • 모니터와 텔레비전이 모두 디지털에 LCD 기반으로 바뀌다 보니, 오랫만에 켰을 때 과거의 브라운관 수상기처럼 화면이 서서히 밝아지고 상이 커지는 모습도 볼 일이 없어져 있다. 이런 모션은 이제 프로젝터를 켤 때에나 가끔 보는 것 같다.

Posted by 사무엘

2022/06/08 08:35 2022/06/08 08:35
Response
No Trackback , 4 Comments
RSS :
http://moogi.new21.org/tc/rss/response/2029

페르시아의 왕자와 황금도끼는 1989년에 처음으로 출시됐고 그 이듬해에 PC용도 나온 유명한 아케이드/액션 게임이다. 비슷한 시기에 출시됐고 본인도 30여 년 전의 초딩 시절에 재미있게 했던 게임이다.

전자는 미국산이지만 후자는 일본산이다.
전자는 뭔가 아크로바틱한 파쿠르 퍼즐 액션에다가 칼싸움이 보조로 가미된 정도이지만, 후자는 지형은 단순하면서 그냥 적들을 다양한 공격 기술로 죽여 없애는 전투 위주이다.

둘 다 굉장히 다양한 플랫폼으로 이식됐으며, 2편 같은 속편도 출시됐다.
그 당시의 흔한 관행이었겠지만, 둘 다 영화에서 리소스를 따 온 장면도 있다. (로빈 후드 칼싸움 / 악당들이 죽는 소리)
오늘은 이 두 게임을 나란히 비교해 보고 싶은 생각이 문득 들었다.

1. 원작 제작자

(1) 페르시아의 왕자: 잘 알다시피 Jordan Mechner라는 미국 뉴요커이다(1964년생). 어느 엄친아 영화학도가 갑자기 컴퓨터에 꽂혀서는 '아라비안 나이트'에서 모티브를 따 이런 게임을 혼자 뚝딱 만든 것이다. 그리고 제품의 유통사를 찾다 보니 브로더번드 소프트웨어와 계약을 맺었다.

사용자 삽입 이미지

단, 주인공의 동작 모션을 자기 남동생한테 연기시킨 뒤, 그걸 촬영해서 한땀 한땀 도트 노가다로 입력했다는 것,
그리고 음악 작곡은 심리학자이던 아버지가 했다는 건 유명한 일화이다. 그야말로 가족이 게임 개발에 참여한 셈이다.

(2) 황금도끼: SEGA에서 게임 개발자로 정식으로 근무하던 Uchida Makoto (마코토 우치다, 1955년생)라는 일본인이 프로젝트를 기획하고, 대여섯 명 남짓한 팀을 이끌며 개발한 게임이다. 세계관이 '코난 더 바바리안'(1982)이라는 영화의 영향을 많이 받았다.

사용자 삽입 이미지

저 사람은 현재까지도 SEGA의 중역으로 근무하고 있는 모양이다. 닛산 자동차의 CEO라 하는 1966년생 동명이인과 혼동하지 말 것.

2. 원작의 개발 플랫폼

(1) 페르시아의 왕자: 잘 알다시피 8비트 Apple II였다. 열악한 8비트 컴터에서 뭘 바라겠는가..? 화면 해상도는 320*200이 채 되지 않았고, 색깔도 끽해야 최대 4색이었다. 1980년대 말이라는 당대 기준으로도 하드웨어 환경이 후져 있었다.
그러니 얘는 원판이 아니라 후대의 이식작에서 그래픽이 훨씬 더 개선되면서 인기를 끌게 되었다.

(2) 황금도끼: 페르시아의 왕자는 태생이 PC인 반면, 황금도끼는 태생이 오락실 오락기였다. SEGA System 16이라는 1985년작 오락기 전용 16비트 CPU를 기준으로 개발됐다.
8비트 대비 16비트라는 우월한 체급에다, 아마추어 프로그래머가 아닌 전문 개발자가 만들었지, 오락기 CPU는 PC보다 그래픽도 더 특화돼 있다 보니 황금도끼는 모든 여건이 페르시아..를 능가했다. 원작부터가 PC의 VGA를 능가하는 수백~수천 컬러 그래픽을 지원했다. 이식작들은 원판에 비하면 그래픽이 퇴보하면 퇴보했지, 더 나아진 경우는 별로 없었다.

페르시아의 왕자를 오락실에서 동전 넣고 플레이 했다는 사람은 없을 것이다. ㅎㅎ
그게 오락실용이었으면 마릿수 잔기와 컨티뉴가 존재해서 죽을 때마다 press key to continue가 아니라 insert coin to continue가 됐을 것이고.. 애초에 "1시간 동안 무한대 잔기" 같은 시스템 자체가 생기지 않았을 것이다. 아니면 동전을 넣을 때마다 시간이 10분 더 추가된다거나..;;

3. PC (MS-DOS) 버전 포팅

(1) 페르시아의 왕자: Lance Groody라는 미국인 프로그래머가 작업했다. PC의 화려한 256색 VGA 그래픽은 게임의 가치를 한층 끌어올려 줬다.
타 플랫폼 중에서 SNES용은 게임 스케일이 리메이크· 마개조에 가깝게 커졌으며.. 매킨토시용은 색깔뿐만 아니라 그래픽의 해상도도 크게 향상되었다.

(2) 황금도끼: John & Ken Sanderson라는 미국인 친형제 프로그래머 2인이 작업했다. 하지만 그래픽이 단조로워진 건 그렇다 쳐도, 각종 공격 동작도 많이 삭제되고 단순화되어서 오락실 원판에 비해서 게임성과 재미가 많이 깎였다.
얘는 오락기 지향적이어서 그런지, 매킨토시용으로 포팅되지는 않았다.

한편, 저 사람들 모두 1980년대 8비트 어셈블리어 시절부터 현재의 모바일 시대에 이르기까지 3~40년째 컴터 프로그래머로 쌩쌩히 현역을 뛰고 있는 걸출한 엔지니어인 것 같다. 검색해서 사진을 보니 서로 좀 비슷하게 생겼다..;;

도스용 페르시아의 왕자는 실행 파일이 C 컴파일러로 만들어진 흔적이 보인다. 그러나 황금도끼는 내 기억이 맞다면 딱히 그런 정황이 없고 여전히 근성의 어셈블리어가 사용된 것 같다.
저 때는 16비트 컴만 해도 엄청 비싼 고급 기종이고 C 컴파일러조차 사치였으며, 메모리를 겨우 몇천~몇만 바이트를 할당하는 것에도 실패할 가능성을 따지면서 전전긍긍해야 했던 시절임을 기억하도록 하자.;;

4. 후속작

(1) 페르시아의 왕자: 2편이 나왔다. 원판 특유의 그 2D 방 기반의 진행 시스템은 2편이 마지막이었으며, 그 뒤부터는 3D로 바뀐 후속편이 더 만들어져 나왔다.

(2) 황금도끼: 2편과 3편이 나오고 3D 리메이크 및 대전 액션 에디션(duel)도 나왔다. 하지만 후속작들은 원판에 비해 그리 좋은 평을 못 들었다. 얘들은 PC와도 연을 끊었기 때문에 컴터로 즐기려면 MAME를 돌리는 수밖에 없다.

5. 여담: 페르시아의 왕자 제작자의 주변 인물들

조던 메크너가 이 게임을 만들던 당시에 그와 오랫동안 동업하면서 그에게 많은 영감을 준 지인 중 하나로는 Tomi Pierce (1953~2010)라는 일본계 미국인도 있었다. 여자이고, 조던 메크너보다 나이도 띠동갑에 가깝게 더 많았던 사람인데..
일례로, 이 누님이 그 당시 개발 중이던 페르시아의 왕자를 찬찬히 뜯어보더니 이렇게 말했다.

“이 게임은 퍼즐만 있어서는 안 될 거 같아. 더 재미있어지려면 전투가 꼭 있어야겠다. 네가 예전에 만들었던 가라테카처럼 말이야.”
“헐?? 난 그 정도로 폭력적인 건 좀.. 게다가 이제 그런 기능을 집어넣기에는 애플2에 메모리도 얼마 안 남았는걸..”
“아 됐고, 꼭 명심해~ combat, combat, combat!! ^^

조던 메크너의 회고에 따르면, 토미 누님은 그야말로 combat 노이로제에 걸릴 정도로 얼굴 마주칠 때마다 전투를 꼭 넣으라고 압박을 넣었다고 한다. (☞ 관련 동영상 링크 10분 45초 ~ 11분 사이 지점)

사용자 삽입 이미지

그렇다. 칼싸움은 원래 계획에 없다가 뒤늦게 추가된 것이었다. 이때는 동생도 멀리 떨어져 있어서 모션 촬영을 할 수 없었던지라, 로빈 후드 영화에 나오는 칼싸움 장면을 따서 스프라이트를 만들었다.
이런 일화가 있었고, 나중에 1996년경인가, 조던 메크너가 Last Express라는 대작 게임을 만들 때는 아예 저 누님과 공동으로 시나리오를 쓰기도 했다.

그랬는데 Tomi Pierce 누님은 지병이 있었는지 어쨌는지.. 2010년, 50대 중반의 나이로 세상을 떠났다.
조던 메크너의 개인 블로그를 보니.. 그 당시에 하늘이 무너지는 듯한 슬픔을 억누르며 정말 엄청난 장문의 추모글을 올렸었다. (☞ 링크)

고인은 그야말로 어린 시절부터 천재 엄친딸이었고 SAT 만점에 아이비리그 자유이용권을 끊었었는데 자기가 하고 싶은 일을 하느라 자유분방하게 살았고, 비록 문과 출신이지만 컴퓨터 게임 사업에 눈독을 들였고 어쩌구저쩌구..
투병 중에도 늘 쾌활하고 긍정적이고 유머와 위트와 센스가 넘쳤고, 나도 살아 생전에 이분과 더 오래 있으면서 지혜를 나눠 받지 못해서 아쉽다고.. 구구절절 애도의 글을 써 놨더라.

게다가 더 찾아보니 Tomi Pierce는 브로더번드 소프트웨어의 창립자인 더글러스 칼스턴(Douglas C. Carlston 1947~)이라는 사람과 결혼까지 한 사람이었다.

더글러스는 하버드 학부 출신에 모교의 로스쿨도 졸업한 수재였다. 빌 게이츠는 하버드 중퇴이지만 저 사람은 하버드 졸업생.. 그리고 조던 메크너는 예일대 졸업생..ㄷㄷㄷㄷ
그랬는데 컴퓨터라는 기계에 꽂혀서 안정된 진로를 그만두고 사업을 시작했고.. 혼자만 한 게 아니라 자기 남동생 Gary Carlston 및 여동생까지 끌어들여서 삼남매가 나란히 동업을 했다. 그래서 회사 이름도 band of brothers을 살짝 바꿔서 broderbund라고 지은 것이었다..;;

사용자 삽입 이미지

다 이런 식으로 연결되는구나.
참고로 Tomi Pierce의 여동생은 Naomi Pierce (1954~)인데.. 이 사람은 하버드 대학교의 동물학과 교수가 돼 있다.
우리나라의 옛날 석 주명 박사처럼 나비 연구 쪽으로 세계구급 전문가라고 한다.
그리고 Tomi건 Naomi건 저분들은 딱 정확하게 본인의 부모님 연배이다.. ㅎㅎ

이렇게 Tomi가 세상을 떠난 뒤, 조던 메크너는 2011인가 2012년쯤에 페르시아의 왕자 애플 2 소스를 공개했었다. 휴~
그 반면, 황금도끼는 개인이 아닌 상업용 게임 개발사의 프로젝트로 처음부터 진행돼서 그런지.. 이런 정도의 재미있는 개발 에피소드가 있는지 잘 모르겠다. 소스가 공개된 적도 물론 없었다. 아케이드 원판의 롬 파일이 돌아다니는 것만으로도 감지덕지해야 할 듯..

그래도 페르시아의 왕자 게임을 만든 조던 메크너의 동생 데이비드 메크너.. 황금도끼의 도스판을 이식한 존과 켄 샌더슨.. 그리고 브로더번드 소프트웨어를 창립한 더글러스와 개리 칼스턴.
형제지간인 사람이 이 글에서 세 쌍이나 언급된 것이 의미심장하게 느껴진다. ^^

Posted by 사무엘

2022/04/21 08:35 2022/04/21 08:35
,
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/2011

1. 디지털 카메라

요즘은 아시다시피 스마트폰에 카메라 렌즈도 하나로 모자라서 둘 이상이 달리며, 이걸로 사람 눈과 뇌가 하는 것처럼 원근감까지 기계가 인지하는 지경에 도달했다.
하긴, 모니터와 TV는 종횡비가 진작에 다 와이드로 바뀌었는데 카메라로 찍는 사진의 종횡비는 여전히 4:3이 기본인 게 좀 답답하게 느껴진다. 카메라 렌즈의 화각이 커지고 렌즈가 여러 개 달리기까지 한다면 한번에 더 넓은 풍경을 길쭉하게 사진에 담을 수 있을 것이다.

화소 수나 후보정 기능뿐만 아니라 본인이 정말 신기하게 생각하는 기능은.. 사진의 흔들리는 걸 걱정할 일이 예전에 비해 매우 줄어들었다는 것이다. 이건 소프트웨어적인 흔들림 보정 알고리즘의 산물이다.

옛날에 덜 스마트하던 디카는 사진이 흔들려서 망치는 일이 흔했을 뿐만 아니라, 그 자그마한 화면으로는 찍었던 사진이 흔들렸다는 걸 인지하는 것조차 쉽지 않았다.
사진을 찍은 현장에서 흔들림을 감지했으면 곧장 다시 찍기라도 했을 텐데.. 여행을 마치고 돌아와서 사진을 PC로 옮겨서 큰 모니터 화면으로 본 뒤에야 흔들리는 걸 알게 됐다면 허탈함 그 자체이다. 위조지폐를 현장에서 바로 적발하지 못하고 은행에 입금할 때에야 뒤늦게 알아챈 것과도 비슷한 상황이다.

그나마 재래식 디카가 스마트폰보다 나은 점은 배터리 용량이 더 많고, 안 쓸 때는 꺼 놨다가 나중에 켤 때 부팅이 필요 없이 즉시 켜져서 ready 상태가 된다는 점, 비슷한 체급일 때 zoom 성능이 더 뛰어나다는 점 정도를 꼽을 수 있겠다.

앞으로 영상뿐만 아니라 음성도.. PC에서 마이크 꽂아서 2채널 스테레오 음향을 한번에 입력해 넣는 방법은 생길 기미가 없는지 궁금하다.

2. 휴대전화

라떼는 말이야..

  • 체크카드: 신용카드 = 피처폰: 스마트폰 과 비슷한 관계인 것 같다. 특히 둘 다 왼쪽에 비해 오른쪽(신용, 스마트..)은 영업사원들이 기를 쓰고 팔려고 안달 나 있다는 공통점이 있기도 하다.
  • 인류 역사상 전화기가 크기가 가장 작던 때는 폴더폰 시절일 것이다. 그러다가 요즘 스마트폰은 화면과 배터리 때문에 어쩔 수 없이 다시 좀 커져 있다.
  • 폴더폰 시절에는 전화기를 통째로 거치대에 꽂아서 배터리 충전을 하던 시절이 있었다~!! ㄷㄷㄷ 기억하시는가? 그리고 2000년대엔 충전 단자를 통일한답시고 한때 24핀짜리 표준 단자가 제정되기도 했었다.
  • 그렇게 전화기가 자그맣고 별 기능이 없던 시절에는 배터리를 한번 충전해서 2~3일은 기본으로 썼다. 통화를 안 하고 있으면 무려 1주일 가까이 가는 물건도 있었다.

먼 옛날에 사람들이 뭔가 자원이 남은 비율 퍼센티지를 신경 쓰던 것이 30여 년 전엔 Windows 3.x/9x의 시스템 리소스 퍼센티지였다. 그러나 지금 사람들의 최고 관심사는 폰의 배터리 퍼센티지일 것이다.;;
그 밖에..

(1) 전화기에서 스피커폰은 귀를 송수화기에다 대지 않아도 통화를 들을 수 있게 하는 무척 편리한 기능이다. 하지만 이때 기기에서 내는 수신음이 또 마이크를 통해서 송신되고, 그게 또 수신되어 스피커폰으로 들리는 현상이 무한 반복되면서 소리가 울리는 문제가 발생할 수 있다.

이건 통신 기기에서 굉장히 고전적으로 유명한 문제이다. 자기가 받은 소리가 중복 송신되어서 울리지 않게 하는 건 echo 제거(echo cancelling) 기술이라고 따로 있다. 보통은 받는 쪽에서 echo 제거를 적용해야 보내는 쪽에서 echo를 듣지 않게된다.
뭔가.. 헬리콥터에서 로터가 돌면서 동체까지 돌아가는 현상을 상쇄하는 것과 비슷해 보인다. (꼬리날개, 반대 방향 로터 등..)

(2) 내가 말하지 않고 듣고 있을 때는 내 쪽의 불필요한 소음이 상대방에게 전혀 송신되지 않게 하는 일종의 mute(마이크 끄기) 기능이 있으면 좋겠다. 내 쪽에도 상대방에게 들리기를 원하지 않는 배경 소리 같은 게 있기 때문이다. 뭔가 전화기를 무전기에 가깝게 사용하게 되는 듯하네..

(3) 자동차 번호판이 공간이 부족해서 자릿수가 하나 확장됐고, 인터넷 주소도 공간이 부족해서 IPv6가 등장했는데.. 휴대전화 번호도 마찬가지다. 010 다음의 8자리는 좀 간당간당해 보이는데 이건 어째 공간을 확장한다는 말이 없는 것 같다.

(4) 스마트폰은 앞서 언급했던 디지털 카메라뿐만 아니라 다른 여러 휴대용 전자기기들의 역할을 흡수하고 대체했다. mp3 플레이어, 전자 사전, 계산기 따위는 얄짤없지만, 그나마 독자적인 역할이 있어서 완전한 상위 호환 대체가 어려운 건 손목시계이다.
스마트폰은 이것저것 기능이 많아지다 보니 보다시피 옛날 폴더폰이나 어설픈 피처폰 시절에 비해 덩치가 꽤 커졌기 때문이다. 그러니 얘는 과거의 회중시계의 대체제이지, 이대로 손목시계를 대체하기는 난감하다. 그 분야는 스마트워치라는 물건이 따로 만들어져 나오게 됐다.

3. 소프트웨어

  • 지난 2009년은 코드소프트와 티맥스 윈도우,
    2016년은 서든어택 2 (온라인 게임), 그리고 갤럭시 노트 7 (스마트폰)이 업계 최악의 굴욕 흑역사로 기록됐다.
  • 2021년은 LG전자가 스마트폰 사업을 완전히 접고 철수한 해, 인텔에서 비운의 IA64 프로세서를 드디어 20여 년 만에 완전히 단종시킨 해, 그리고 30여 년을 존속했던 경상용차 다마스와 라보가 단종된 해가 되었다.
  • 또한, 2020년대가 되니 애플에서는 PowerPC, x86에 이어 CPU 이주를 또 시도하고 있고.. Windows와 macOS 모두 메이저 버전이 10에서 11로 올라갔다.;;

2010년대 중후반에 컴터 소프트웨어 세계에서 개인적으로 굉장히 인상깊게 느낀 변화는 다음과 같다.

  1. 플래시가 순식간에 웹에서 싹 퇴출되고 사라짐. 브라우저들에서 지원도 끊김.
  2. 왕년에 스타와 워3, 디아블로를 만들었던 그 천하무적 제작사가 정말 급속히 몰락하고 망조가 듦.
  3.  IE 브라우저가 이제 완전 퇴출 직전임. 얘 없어진 뒤에도 공인인증서 로그인과 은행 돈거래가 가능하려나..??

(1) 플래시 액션스크립트는 전부 천하무적 html5 자바스크립트로 바뀌어서 오늘날까지 건재한다. 이젠 웹브라우저가 그 자체만으로 가상 머신에 반쯤 운영체제처럼 돼 버렸다.
플래시에서 원래 주전공이던 벡터 애니메이션 대신 웬 동영상(flv)을 지원하기 시작한 것, 그리고 유튜브가 플래시 없이 html5 기반으로 바뀐 것, 인터넷 지도와 구글 어쓰가 아무런 플러그인 없이 브라우저에서 바로 구동되기 시작한 것.. 모두 굉장히 충격적이었다. 플래시는 vb6에 대응하고, html5는 vb.net에 대응하는 것 같다.

(2) 게임 업계는 정말 영원한 강자란 없는 것 같다. 이드 소프트, 세가의 스즈키 유, 오리진의 울티마 만들었던 그 우주먹튀 뭐시기.. (아! 리처드 개리엇) 등등.. 한때의 스타 개발자가 언제까지나 계속 스타이지는 못한 것 같다.
지금은 FPS고 RTS고 나올 거 다 나오고 나서 새로운 게 뭐가 있을까? 이젠 현질 아이템 장사 말고 다른 돈 버는 방법이 남아 있을까..?? 궁금하다.
뭐 몇 년 전에 리니지 M은 돈을 빗자루로 긁어모으면서 그렇게도 성공했다고는 하더라;;

(3) 20여 년 전엔 마소 IE의 독점 불공정 끼워넣기 때문에.. 수장인 빌 아저씨는 평생 먹을 욕을 이 시기에 다 쳐먹었다. 카피레프트 안티 마소 진영으로부터는 완전 뿔 달린 악마 취급까지 받았다.
사실 더 옛날에, 1994~95년경엔 빌 아저씨가 msn으로 세계를 정복할 생각까지 했었다. 하지만 어림없는 얘기. 인터넷의 물결을 막을 수 없으니 다음으로 브라우저 독점을 생각했었으나 그 계획은 2004년 파이어폭스 0.8, 2008년 크롬과 함께 완전히 물 건너갔다. 넷스케이프가 이루지 못한 일을 쟤들이 대신 해냈다.

그리고 지금이야.. 웹브라우저 점유율을 제일 많이 떼어간 건 모바일이다. 마소가 범접하지 못한 완전히 다른 플랫폼..

Posted by 사무엘

2021/12/03 08:34 2021/12/03 08:34
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/1960

바야흐로 2021년에 또 30여 년 전의 고전 게임인 페르시아의 왕자를 소재로 글을 써 올리게 되다니.. 감격스럽기 그지없다.
이번에는 이 게임에서 주인공의 적으로 등장하는 검객, 경비병들에 대해 외국 사이트에서 분석한 데이터를 본인의 경험과 곁들여서 소개하고자 한다. 갑자기 이 주제로 글을 쓰고 싶어졌다.

페르시아의 왕자 게임에는 가시, 칼날, 절벽처럼 주인공의 체력을 깎아먹거나 주인공을 즉사시키는 트랩들이 여럿 존재한다. 검객은 그런 트랩들과 달리 유일하게 생명체이다.
조던 메크너가 열심히 코딩을 하다가.. 게임이 더 다이나믹하고 재미있기 위해서는 '전투'라는 요소가 필요하다는 걸 뒤늦게 깨닫고 검객을 구현했다고 한다. 이건 유명한 일화이다.

본인은 어린 시절에 이들을 knight를 연상시키는 기사라고 부르곤 했다. 하지만 얘들에 대한 공식 명칭은 guard(s), 즉 경비병에 가깝다. 검객이라고 하니까 무슨 일본 시노비나 암살 자객 같은 느낌이 들고.. 앞으로는 그냥 간단하게 적병이라고 부르도록 하겠다.

페르시아의 왕자 게임은 칼싸움 동작을 "휘둘러 찌르는 공격 아니면 막기"라는 두 종류로 극도로 단순화시켰다. 남의 공격을 평범하게 막으면 대미지를 입지 않는 대신, 찌르는 사정거리 밖으로 살짝 후퇴도 하게 된다. 물론 칼빵을 맞아도 후퇴..

막으면서 잽싸게 공격을 시도하면 뒤로 밀려나지 않으면서 적에게 반격을 할 수도 있다. 그런데 적도 그걸 막으면서 반격하고 나도 또 막고 반격하면.. 뭔가 그럴싸한 칼싸움이 연출된다. 자신과 상대방이 거리가 어느 정도 되는지도 이 싸움의 진행에 영향을 끼친다.
그렇게 공격과 방어를 반복하다 보면 언젠가 컴퓨터 적병이 반드시 맞고 뒤로 밀려나는 것으로 순환이 끝난다. 재미를 위해 알고리즘이 주인공의 필승으로 귀결되게 구현돼 있는 것 같다.

이 게임이 무슨 대전 액션 시뮬레이션은 아니니, 현실의 칼싸움처럼 이동과 공격을 동시에 한다거나, 상하 좌우 다양한 방향으로 칼을 휘두르고 기상천외한 부위를 찌르고 서로 칼날을 부딪친 채로 힘싸움을 하는 건 존재하지 않는다.
하지만 그 시절에 칼싸움이라는 걸 이렇게 단순화된 형태로 구현한 것만으로도 굉장히 참신한 시도가 아닐 수 없다. 플랫폼 아케이드 장르의 게임에 공격뿐만 아니라 '방어'라는 기동이 존재하는 물건 자체가 매우 드무니까 말이다.

게다가 이 게임은 적병들의 AI를 나름 다양한 난이도로 구현하는 섬세함까지 보였다.
1편에서 레벨 1에 나오는 적병, 그리고 2편에서도 레벨 1, 궁전 옥상에서 마주치는 적병은 난이도가 최하이다. 칼을 휘둘러 찌르는 것만 반복하고 있으면 알아서 다가와서 칼 맞고 꽥~ 죽어 준다. 그러나 이렇게 너무 쉬운 적병은 그 다음 레벨부터는 결코 다시 등장하지 않는다.

그 다음 레벨부터 나오는 적병들은 내가 칼을 쉬지 않고 휘두르는 동안에는 나에게 다가오지 않는다. 조금 뜸을 들여야만 접근하며, 그렇게 다가올 때 공격을 몇 번 성공시키면 적병이 죽는다. 페르시아의 왕자 1편은 대부분의 적들을 이 테크닉만으로 해치울 수 있다.

그런데 레벨 4쯤 되면 적이 약간은 더 똑똑해진 것 같다. 내 공격을 호락호락 맞아 주지 않고 막는 빈도가 유의미하게 높아져 있다. 그리고 아주 가끔은 막고 나서 내게 반격도 한다.
게다가 레벨 6에 나오는 그 '뚱보', 그리고 최종 보스인 Jafar는 공격 키만 사용해서는 해치우기가 거의 불가능하다. 내 공격을 90% 이상의 확률로 막고는 반격을 하기 때문이다. 나도 '막기'와 '공격'을 뒤섞으면서 난전을 벌여야만 놈을 때릴 수 있다.

이런 것들이 내부적으로는 어떻게 구현돼 있을까?
페르시아의 왕자 게임은 소스가 공개되어 있다지만 너무 옛날 애플 II 어셈블리어여서 분석이 상당히 난감하다.
하지만 제작자가 이것 말고도, 타 플랫폼 포팅 작업 때 참고하라고 내부 알고리즘 기술 문서를 만들었던 것도 공개한 게 있어서 큰 도움이 된다. 얘는 2000년대 이후부터는 이미 레벨 에디터까지 다 만들어져 있다.

이것들을 분석한 자료에 따르면 적병들의 AI는 다음과 같은 형태라고 한다. (☞ 문서)

사용자 삽입 이미지

  • 레벨 1에만 나오는 제일 쉬운 적병의 skill은 0
  • 나머지 레벨 2에서 11 사이에 나오는 일반적인 적병들의 skill은 1부터 4까지 4등급으로 나뉜다. 참고로 레벨 3에서 등장하는 해골의 skill은 2로, 그냥 평범한 편이다.
  • 레벨 6에 나오는 뚱보의 skill은 5이다.
  • 레벨 8의 첫 부분에만 나오는.. 스스로 공격을 절대로 하지 않는 특이한 적병의 skill은 7이다.
  • 레벨 12에서 등장하는 그림자 인간/도플갱어의 skill은 3이다.
  • 그리고 최종 보스인 쟈파의 skill은 9이다.
  • 0부터 11 사이의 skill 코드 12개 중, 나머지 값들은 쓰이지 않았다. (6, 8, 10, 11)

저 문서에서는 게임의 인트로 화면을 가만히 지켜보고 있을 때 잠깐 등장하는 데모 플레이의 칼싸움도 5, 즉 레벨 6 뚱보의 skill이라고 말한다. (무슨 근거로?)
하지만 내 생각은 다르다. 데모에서 왕자(주인공)와 적병의 스킬이 각각 10과 11, 또는 11과 10이 아닐까 생각한다.
왜냐하면 일단 페르시아의 왕자 원판 소스에서 "10: kid (demo) / 11: enemy (demo)"라는 문자열을 볼 수 있기 때문이다. 저 10과 11이 AI 인덱스를 가리키는 게 아닐까..?

또한, 데모를 오랫동안 지켜보고 있으면 주인공과 적병의 칼싸움 결과는 그때 그때 다르다(난수를 잘 사용하는군!!). 하지만 주인공은 이길 때보다는 질 때가 훨씬 더 많다. 주인공은 적병보다 반격을 당해 칼빵을 맞는 경우가 더 잦으며, 심지어 계속 뒤로 밀려나다가 절벽에서 떨어져 처참하게 죽기도 한다. 최소한 이 두 사람의 skill이 동일해 보이지는 않는다.

이런 이유로 인해 본인은 skill 테이블에서 정말로 미사용인 것은 6과 8 둘뿐이라고 생각한다만.. 이 역시 추측일 뿐이다.

적병의 AI를 결정하는 변수들은 다음과 같다. 어떤 건 직관적으로 이해가 되지만 어떤 건 제대로 문서화돼 있지 않아서 알기가 어렵다. 제일 이해하기 쉬운 방어 관련 변수부터 소개하면 다음과 같다.

  • 방어 확률(blockprob): 주인공의 공격에 얻어맞기만 하는 게 아니라 막을 확률. 레벨 1의 적병은 그런 게 전혀 없어서 우리의 공격에 반드시 당한다. skill 1,2에서는 150/255(대략 60%), 3,4는 200/255(78%)이라고 한다.
    뚱보와 쟈파는 100%로 무조건 막는다. 그래도 가끔은 쟤들에게 막기 없이 공격을 성공시키는 경우도 있는데, 그건 살짝 멀리 떨어진 상태에서 쟤들이 이동이 덜 끝나고 미처 방어 기동을 하기 전에 찌르기가 먹혔기 때문에 그렇다.

  • 방어 후의 재반격(restrikeprob) 확률: 우리 역시 막기 기동을 쓰지 않을 수 없게 하고 칼싸움의 체감 난이도를 크게 끌어올리는 변수이다. skill 0~2의 적병은 재반격을 전혀 하지 않으며, 3,4는 극히 드문 빈도로 재반격을 한다. 그 반면, 뚱보와 쟈파는 매우 높은 확률로 재반격을 하며, 쟈파는 100% 반드시 반격한다.

다음으로 공격 관련 변수이다.

  • 공격 영역에 들어올 확률(advprob): 주인공을 향해 사정거리 안으로 진격해 올 확률..이라기보다는 속도이다. 이건 적병들의 난이도별로 딱히 유의미한 차이가 없는데, 딱 하나 튀는 놈은 바로 레벨 8에 유일하게 등장하는 그놈이다. 얘는 확률이 0이기 때문에 절대로 먼저 들어오지를 않는다. 주인공이 칼을 완전히 집어넣어야만 들어오기 때문에 이때 다시 칼을 꺼내서 공격하거나, 아니면 우리가 치고 들어가서 공격을 막고 반격해야 한다.

  • 공격 확률(strikeprob): 주인공이 사정거리 안으로 가까이 들어왔을 때 공격을 할 확률 내지 속도이다. 이것도 딴 적병들은 비슷한 반면, 레벨 8의 그 특이한 적병만이 이번엔 반대로 유난히 높은 값을 갖고 있다. 이 값이 높은 적병하고는 앞으로 돌진해서 좌우 자리를 교체하거나 가까이에서 2연타 콤보 공격을 하기 몹시 어려울 것이다.

그 외에도 이런 게 있다.

  • 칼 맞은 뒤의 refractory 시간(refract timer): 공격을 당하고 나서 움찔 하는 시간으로, 얘 역시 그렇게 유의미한 동작 차이를 만들지는 않는다. 얘가 10으로 설정된 적병은 20으로 설정된 적병보다 칼에 맞은 뒤에도 좀 더 빨리 앞으로(하지만 주인공의 칼에 맞지는 않는 거리로) 다가온다.

  • 방어가 impair되는 확률(impblockprob ??): 제일 미스터리한 놈이다. 심지어 기술 문서나 소스 코드에 설명도 전혀 되어 있지 않고 대놓고 존재감이 없다. 상급 몬스터로 갈수록 값이 커지는 걸 보니 뭔가 좋은 속성 같은데, impaired block이라는 말은 핸디캡을 나타내는 부정적인 의미인 것도 이해되지 않는다.

아까도 얘기했다시피 제일 쉬운 skill 0짜리 적병은 주인공이 제자리에서 방어 없이 칼을 휘두르고만 있어도 알아서 달려와서 칼 맞고 죽어 주는 유일한 놈이다. 언뜻 보기에 여기에 해당하는 듯한 특성은 advprob이 최대치인 255인 것이다. 그런데 얘는 뚱보, 쟈파 등 다른 악당들의 AI도 최대치 255이기 때문에 유일한 변별 요소가 되지 못한다. 쟤만 blockprob이 완전히 0인데 여기에 그 동작 특성도 포함돼 있는 건가 궁금해진다.

아 그리고 impblockprob 말이다. 문득 드는 생각은.. 주인공과 적병이 계속 막고 치고 난전을 반복하고 있다가 결국 적병이 힘이 밀려서 맞고 나가떨어질 확률과 관계가 있어 보인다. 값이 클수록 오래 버티는 걸까..?? 즉, 쟈파나 뚱보 정도는 돼야 의미를 지니는 변수라 하겠다. 이건 외국의 페르시아의 왕자 해킹 커뮤니티에도 나와 있지 않는 내 추측이다.

게임에 칼싸움도 모자라서 이 정도로 다양한 적병 skill을 대여섯 개 남짓한 변수값의 조절만으로 구현한 거라면 정말 대단하지 않을 수 없다.

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

(페르시아의 왕자 1의 데모 진행 장면. 이 데모 레벨은 실제 게임에서는 존재하지 않는다.
한편, 2편도 게임 실행 후 키를 누르지 않고 스토리를 끝까지 지켜보고 있으면 플레이 데모가 나오기는 한다. 얘는 실제 게임의 레벨 1에서 시작하는데, 왕자는 얼마 가지도 못하고 그 쉬운 적에게도 거의 자살 급으로 칼에 맞아 허무하게 죽어 버린다. 2편이 데모의 퀄리티가 1편의 것보다 더 부실하다.)

페르시아의 왕자 1편은 보스급 몬스터인 뚱보와 쟈파만이 막고 치는 고급(?) 스킬이 필요한 반면, 2편은 빨간 궁전에 나오는 새대가리 적병들이 모두 그 정도 스킬을 보유하고 있다.
2편은 한 화면에 적병이 여러 명 한꺼번에 등장할 수도 있고, 싸우다가 자리를 바꿔서 회피하는 게 거의 불가능해졌고, 막고 치면서 싸우다 보면 서로 가까워지다가 좌우 자리를 바꾸기도 하는 등.. 전투 요소가 1편보다 훨씬 더 강화되었다. 그리고 최종 보스는 칼싸움이 아니라 장풍을 맞혀서 죽이는 것으로 게임 진행 방식이 달라졌다.

끝으로, 저 문서에서 special color와 one extra health는 칼싸움 skill과 무관한 boolean 값이며 큰 의미는 없다.
페르시아의 왕자 1편의 경우, 각 레벨별로 모든 적병들의 기본 HP가 정해져 있어서 동일한데, one extra health가 true인 skill이 지정된 적병은 HP가 그 기본값보다 1 더 많게 된다.
이 비트가 true인 skill은 4가 유일하다. 즉, 보스가 아닌 졸개 중에서 칼싸움을 약간 잘하는 놈이 HP도 1 더 많은 것이다.

그래서 레벨 4에서는 후반부에 HP가 4인 적병이 처음으로 등장하며(기본값 3), 레벨 5에서는 HP가 4부터 시작했다가 나중에 5로 늘어난다.
skill 4인 적병은 던전 레벨에서는 전혀 존재하지 않고 궁궐 레벨에만 존재한다는 것이 흥미로운 점이다. 레벨 4~5, 10~11 말이다.

Posted by 사무엘

2021/11/07 08:35 2021/11/07 08:35
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/1951

1. open이라는 타이틀이 붙은 유명 라이브러리들

  • OpenGL: 3차원 그래픽. (DirectX만이 직접적인 경쟁자로 남아 있는 듯..)
  • OpenCV: 2차원 래스터 그래픽에서의 영상 처리. 뽀샵질 보정, 사물 윤곽 인식 따위
  • OpenMP: 병렬처리 프로그래밍. 단순히 함수· 클래스만 제공하는 게 아니라 프로그래밍 언어 자체의 확장까지 수반한다.
  • OpenSSL: 각종 보안/암호 키 교환 프로토콜 구현, 해시· 암호화 함수들과 제반 연산 기능(큰 정수) 컬렉션

또 뭐가 있을까?
얘들은 각자 자기 분야에서 유구한 역사와 압도적인 인지도를 자랑하는 데다, 엄청 방대한 기능들을 무료로 덥석 제공한다. 다양한 언어와 플랫폼을 지원할 뿐만 아니라 최신 알고리즘이 수시로 반영되어 추가되고, 최신 하드웨어의 명령어에 맞게 최적화와 검증도 잘 돼 있다. 그야말로 더 바랄 게 없는 상태이다.

그렇기 때문에 개인적으로 내부 동작 원리를 공부를 하는 게 아닌 이상, 누군가가 현업에서 저런 기능들을 굳이 처음부터 다시 구현할 필요는 없다. 방대한 라이브러리의 사용법을 익혀야 한다는 최소한의 부담만이 있을 뿐.

유닉스에 대해서 누가 말했던가..? "유닉스를 쓸 줄 모르는 사람은(grep 등의 각종 명령어와 유틸리티, 정규 표현식 따위..), 유닉스가 제공하는 기능을 결국은 스스로 직접 또 만들게 될 것이다"라고..;; (reinvent the wheel) 그런 것처럼 말이다.

다만, Open이라는 단어가 붙었고 사용이 무료라고 해서 반드시 오픈소스이기까지 하지는 않은 것 같다. 가령, OpenGL이 오픈소스이고 git 저장소가 있다는 얘기는 난 못 들었다.
그리고 폰트 렌더링 분야의 본좌 라이브러리는 이름이 FreeType이다. OpenType은 라이브러리가 아니라 폰트 파일 포맷 규격의 명칭이다.

지금 국내의 오픈소스 진영엔 libhangul이라고 한글 입력 오토마타를 구현해 놓은 라이브러리가 있고 그걸 유수의 공개 한글 IME들이 사용하고 있다. 얘들은 초창기에 이름이 '열린 한글 프로젝트'였던 것 같은데 지금도 그러한지 궁금하다.

한때 '열린 한글'은 1990년대 말에 아래아한글이 개발 중단 위기에 처했을 때 "우리 다같이 힘을 합쳐서 아래아한글의 클론을 오픈소스 형태로 밑바닥부터 만들어 봅시다~!!" 이런 프로젝트의 명칭으로 쓰이기도 했었다..;; 거의 IMF 금 모으기 운동 같은 발상이었다.

이제는 마소에서 개발한 제품조차도 about이나 acknowledgement 화면에.. 제품 내부에 사용된 각종 오픈소스 프로젝트들 목록이 뜨는 날이 올 것 같은데... 격세지감이다. (하지만 나는.. 정작 내 한글 입력기부터가 오픈소스가 아니며 기존 오픈소스를 사용하는 것도 전혀 없다..;; )

2. GWBASIC 소스 공개!!

작년에는 마소에서 GWBASIC의 원본 소스 코드를 공개했다. 오오 +_+ (☞ 링크)
마소에서는 진작부터 MS-DOS와 Word의 옛날 초창기 버전의 소스를 공개한 바 있다. 하지만 그것들은 본인이 직접 써 본 기억이 없는 너무 옛날 버전이어서 그다지 감흥이나 공감이 없다.

그에 비해 GWBASIC은 본인의 어린 시절의 경험이 잔뜩 깃든 물건이고, 프로그램을 만들어 돌리는 프로그램이다 보니 접하는 느낌이 다른 제품들의 소스와는 사뭇 다르다.

  • Syntax error, Missing operand, Illegal function call, FOR Without NEXT (한글판은 "문법이 틀렸읍니다, 피연산자가 없읍니다, 기능호출 사용이 잘못되었읍니다" 등등..) 같은 친숙한 에러 메시지 문자열들은 GWDATA.ASM에 있다. 전설적인 Ok 프롬프트 값도 저기에 정의돼 있다.
  • 그래픽 모드에서 이차차분 알고리즘으로 원을 그리는 함수, 재귀호출로 flood fill을 수행하는(PAINT 문) 함수는 ADVGRP.ASM에 구현돼 있다.
  • MOTOR문은 하는 일 없이 에러만 내뱉는 것 같았는데, GIOCAS.ASM을 보니 실제로도 그러하다. 저건 카세트 테이프의 잔재일 뿐, 16비트 PC용인 GWBASIC에서는 하는 일이 원래 없다.

  • F1에 LIST부터 시작해 TRON, TROFF, KEY, SCREEN 0,0,0을 기본 배당하는 테이블은 GWRAM.ASM에 있고..
    Alt+A에 AUTO부터 시작해 BSAVE, COLOR, ... 등을 배당하는 테이블은 IBMRES.ASM에 있다.
  • 소스를 저장할 때 SAVE에다가 P 옵션을 줘서 어설프게 암호화 프로텍션을 거는 부분은 GIODSK.ASM, DISKCOM.ASM을 참고하면 될 듯하다.
    암호화된 파일과 그렇지 않은 파일이 첫 바이트 0xFE 또는 0xFF로 구분된다는 것을 확인 가능하다.
  • PLAY문에서 A~G 등 각종 문자열들을 해석하는 부분은 GWSTS.ASM을 보라. "MUSIC MACRO LANGUAGE"라고 주석이 돼 있다.

  • 부동소수점 연산?? 요즘처럼 전용 CPU 명령어 한 방으로 끝나는 시절이 아니었으니 전부 자체 구현이다.
    빌 게이츠가 왕년에 직접 고안했다는 MBF 부동소수점의 구현부가 바로 MATH1/2.ASM에 있다. 삼각함수, 로그도 내부적으로 테이블을 내장해서 소프트웨어적으로 직접 계산한다.
  • 난수를 생성하는 RND 함수의 공식은 MATH1/2.ASM에 있다. 그 유명한 Donald Knuth 아재의 책을 참고해서 구현했다고 주석에 적혀 있다.

아아.. 옛날 추억이 새록새록~~~
어셈블리어 코드를 읽을 수 있다면 흥미로운 유물들이 넘쳐날 것이며 아는 만큼 보일 것이다. 내가 읽을 수 있다는 뜻은 아님..;;
GWBASIC은 아무래도 정상적인 소프트웨어 개발 도구와는 좀 동떨어진 구석이 있지만, 그 옛날에 대화식 프로그래밍 환경이라는 걸 만들 생각을 한 건 충분히 참신하다고 볼 수 있다.

2000년대 이후에 태어난 뉴비 프로그래머들을 위해서 FAQ를 아주 자상하게 써 놨다. 이런 질문의 답변까지..;;

  • 아니, 오픈소스라면서 확장자가 C/CPP인 파일이 왜 하나도 안 보이나요?
  • C 파스칼 놔두고 왜 이렇게 알아보기 어려운 언어로 코딩을 했나요?

저 때는 고급 언어 컴파일러들이 엄청나게 비쌌고, 생성하는 코드의 성능이 좋지 못했다.
빌 게이츠와 그 일당들은 20대 나이 때, 지금보다 컴퓨터가 훨씬 더 열악하고 비싼 기계이던 시절에 여느 평범한 프로그램이 아니라 딴 프로그램을 만들고 돌리는 가상 머신급의 프로그램을 한땀 한땀 어셈블리어로 코딩해서 돌리고 납품하고 팔아먹었다는 거다.
그리고 한 언어의 인터프리터로서의 기능이 다 들어있던 GWBASIC.EXE의 크기는 실행 파일 압축 따위 없이도 겨우 6만 바이트 남짓밖에 안 했다는 거다.

이건 16비트 x86이 다른 CPU 아키텍처와 비교해 봐도 명령어 배치가 이례적으로 굉장히 조밀하기도 했기 때문에 가능한 일이다. 메모리 아끼기 위한 CISC 방식의 승리인 셈이다.

Posted by 사무엘

2021/07/27 19:36 2021/07/27 19:36
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/1914

1. 90년대 중반의 제품 데모: 3D Studio R3, Windows 95

인터넷이란 게 없던(= 가정용으로 널리 보급되지 않은) 시절에 컴퓨터로 바깥의 최신 문물을 접하는 방법은 기껏해야 PC 통신, 아니면 컴퓨터 잡지와 함께 배포되던 부록 CD였다.
그런데 모뎀으로 접속하던 PC 통신은 접속 시간에 비례해서 부과되는 전화비의 압박이 심했으며, 전송 속도도 지금의 인터넷 전용선과는 비교조차 할 수 없을 정도로 느렸다. 그렇기 때문에 수십~수백 MB 이상의 대용량 자료를 배포하는 수단으로는 CD 같은 물리적인 매체가 여전히 의미가 있었다.

PC 통신 자료실이건, 잡지 부록 CD건, 이런 매체에는 유명 소프트웨어의 무료 체험판과 데모가 많이 포함돼 있었다. 유료로 판매되는 제품에서 일부 기능만 사용할 수 있거나 사용 기간이 제한된 것 말이다. 아니면 애초에 사용자가 조작해 볼 수 있는 기능은 없고 파워포인트 프레젠테이션처럼 일방적인 기능 소개와 화면 시연만 들어있는 데모 프로그램도 있었다.

그 중 본인이 인상깊게 봤던 것은 3D Studio R3.. 3DS에 MAX라는 이름이 붙기도 전, 게다가 도스용이 존재하던 시절 버전의 데모이다. 이거 화면을 유튜브에서 다시 보는 날이 오게 될 줄은 몰랐다. 정말 유튜브에 별별 것들이 다 올라온다..;; (☞ 링크)

요즘 같으면 파워포인트.. 하다못해 플래시로도 만들 수 있을 것 같은데.. 몇몇 화면 전환이나 프로그램 실제 화면 애니메이션 같은 건 난이도의 압박이 있을 것 같다.
1994년에는 아직 플래시도 없었기 때문에 도스에서 exe 형태로 저런 프레젠테이션 데모만 제작하는 전문 업체가 있었던 모양이다.

그리고 다음으로 소개하고 싶은 것은.. 국내에서 제작됐던 Windows 95의 데모 겸 기초 기능 튜토리얼이다. 95~96년 사이에 이거 보신 분 계신가..?? (☞ 링크)

"윈도우즈 구십오", "엠에스 더~스" 라고 또박또박 말하는 여성 나레이터 목소리가 찰지게 느껴진다.;;
도스와 Windows 3.1의 타성에 젖어 있던 사람들한테 시작 메뉴와 바탕 화면, 탐색기, 단축 아이콘(현재 명칭은 '바로가기') 개념을 처음으로 가르치고 홍보하느라 마소에서 그 당시에 돈 엄청 많이 쓰긴 했다.

이 데모 프로그램은 Windows 95 한글판의 CD에 포함된 프로그램은 아니었는데 어느 경로로 유포되었는지 궁금하다. 그냥 PC 통신이나 잡지 부록 CD였는지..?

2. 게임 데모

예전에도 한번 언급한 적이 있지 싶은데.. 과거에 스티브 잡스는 소수의 추종자 매니아를 양성하는 식으로 제품을 판매한 반면, 빌 게이츠는 정말 통 크게 남녀노소 가릴 것 없이 전세계에 컴퓨터를 보급해서 세계인들의 생활을 확 바꿔 놓고, 그 컴퓨터라는 기계에 우리 회사의 운영체제를 몽땅 뿌려 버리겠다는 심보로 장사를 했다.

그래서 Windows 95에서 드디어 32비트로 체제를 바꾸기도 했으니.. 얘를 본격적으로 게임용 홈 엔터테인먼트 플랫폼으로 만드는 일에 가히 사운을 걸었다. 그래서 거의 곧장 DirectX를 만들었으며, 특히 세계적인 히트를 치고 있던 Doom 2 게임 정말 0순위로 Windows용으로 포팅을 지원해 줬다.

PC에서, 그것도 DOS가 아닌 Windows에서 텍스처 매핑이 적용된 실시간 3D 게임이 돌아간다는 건 굉장히 획기적인 일이었다. Windows는 그저 지뢰찾기나 카드 게임 같은 가벼운 게임만 하는 플랫폼이라는 고정관념이 드디어 깨지기 시작했다.

애초에 Windows 95 원본 CD에는 Hover!이라고.. 범퍼카를 몰고 맵을 돌아다니며 깃발을 상대방보다 먼저 뺏는 게임이 있었다. 마소가 게임 전문 개발 업체는 아니지만, 이건 외주가 아니라 마소에서 직접 개발했던 듯하다.

사용자 삽입 이미지

얘는 비록 세계적인 명작인 Doom만치 막 박진감 넘치는 요소까지는 없지만, 그래도 그래픽은 Doom과 비슷한 수준이었다. 그리고 초보적이나마 1층 공간 위에 2층이 구현돼 있기도 했다는 점에서 Doom 엔진과 결정적인 차이가 있었다.

그리고 내 기억이 맞다면 Windows 95와 거의 동시에 Fury라고.. Hover의 공중 버전 내지 윙 커맨더의 축소판 같아 보이는 게임도 개발돼 나왔다. 얘는 외부 개발사와 합작 내지 외주 형태로 개발됐고 Windows 95에 포함돼 있지는 않았다.

사용자 삽입 이미지

게임 진행은.. 뭐 공중을 날아다니면서 총 쏘고 부수는 것 정도만 기억에 남아 있다.
마소는 Fury니, Hover!이니 하는 아기자기한 게임들을 같이 내놓으면서 우리 Windows 95는 저런 화려한 3D 그래픽이 가능한 게임용 플랫폼이라는 걸 기를 쓰고 내세웠던 듯하다.

그러고 보니 Win95의 발매 직후에는 DirectX라는 것도 아직 완전 듣보잡이거나, 버전이 2~3 이러던 시절이었을 텐데.. 3D 그래픽 가속이라는 건 퀘이크도 나오고 최소한 96~97년, Voodoo니 뭐니 하던 게 나온 시절부터 주목 받았을 텐데 저런 게임들은 CPU빨만으로 3D 그래픽 애니메이션을 구현했던 건지 궁금해진다.

끝으로, 비록 저렇게 1인칭 3D는 아니지만 3D 핀볼이라는 유명한 번들 게임도 있었다. 얘는 나름 Windows 3.1 + win32s에서도 돌아갔던 까마득한 옛날 프로그램이다.
마소에서 외부 업체로부터 소스 코드를 구입해서 자사 제품에다 포함시켰는데.. the old new thing 블로그에서의 회고에 따르면 코드가 주석 한 줄 없이 도저히 유지보수 가능한 상태가 아니었다고 한다.

훗날 Windows가 32비트에 이어 64비트로 갈아탈 때가 임박했는데, 얘는 내부적으로 오프셋 계산에 문제가 있었는지 64비트에서는 제대로 동작하지 않았다. 그런데 문제의 원인이 무엇이고 어디를 고쳐야 할지를 알 길이 없었고, 그렇다고 얘는 오픈소스화가 가능한 물건도 아니다 보니 64비트에서는 핀볼이 결국 짤리게 되었다.
그 외부 업체가 코드를 컴파일만 가능하고 유지 보수는 도저히 가능하지 않은 형태로 일부러 변조해서 줬던 것 같다.

3. 왓콤 win386

1990년대에 왓콤(Watcom)이라는 컴파일러 제조사는 PC의 도스 환경에서 32비트 프로그램의 개발 환경을 시세 대비 매우 저렴하게 제공한 일등공신으로 칭송받았다.

그 시절에는 아직 386/486급 PC의 가격도 아주 비쌌고, 32비트 코드 생성을 지원하는 컴파일러도 비쌌고, 특히 도스에서 이런 프로그램을 돌아가게 해 주는 DOS Extender도 아주 고가였다. 그런데 왓콤은 32비트 컴파일러와 무료 번들용 DOS extender까지 아주 파격적인 가격에 보급했던 것이다. 그러니 아주 전문적인 대형 고급 소프트웨어를 개발하는 분야에서 수요와 고객을 확보할 수 있었다. 볼랜드나 마소 같은 주류 컴파일러 제조사들은 그저 16비트에 안주하고 있었기 때문이다.

그런데 왓콤의 무서운 면모는 도스용 32비트 개발툴만 만든 게 아니었다는 점이다. 1990년대 초, 아직 Windows NT 3.1이 정식으로 나오기도 전에 멀쩡한 Windows 3.0/3.1를 마개조해서 32비트 코드를 구동해 주는 win386 Extender를 개발했다~! 그리고 이 시스템을 기반으로 돌아가는 32비트 코드를 생성하는 Windows 타겟용 컴파일러를 덤으로 보급했다. 기존의 16비트짜리 도스/Windows API를 호출할 때는 물론 입출력값을 변환할 테고 말이다. (☞ 더 자세한 소개)

이게 내부적으로 어떤 원리로 동작했는지는 잘 모르겠다. 오늘날의 Windows NT처럼 PE 포맷을 사용하지도 않았을 텐데..
하긴, 16비트 시절에는 Windows용 한글 바이오스(한메한글~!!)도 있었으니, 뭔가 시스템 내부를 마개조하기가 더 쉬웠던 것 같다.
당장 마소에서 옛날에 개발했던 FoxPro 2.5~2.6이 왓콤 win386을 기반으로 개발됐다고 한다.

그로부터 몇 년 뒤에 마소 본가에서 Windows NT를 출시해서 32비트 Windows API가 제대로 정립되고, 32비트용 Visual C++ 1.0과 win32s 같은 게 줄줄이 나오면서 왓콤 win386의 시대는 막을 내리게 됐다.
Windows의 32비트화 내력을 요약하면 다음과 같다.

  • real 모드: 1.0~3.0 (1985~1990) 사실상 640KB 기본 메모리밖에 사용하지 못하는 초 열악 모드.
  • 286 standard: 2.0~3.1 (1987~1993) real보다는 나은 것 같지만 정확하게 언제 처음으로 등장했고 차이점이 뭔지 존재감이 매우 없음.
  • 386 enhanced: 3.0~ (1990~??) 아직 32비트 코드를 시행하는 건 아니지만 도스창을 완전히 가상화할 수 있고 확장 메모리를 더 사용 가능함.
  • Win32s: 3.1 (1992~1996) 딱 32비트 코드 실행만 가능한 최소한의 모드
  • Windows 9x: 95~ME (1995~2000) 프로세스 별 주소 공간이 독립하고, 멀티스레드가 가능해짐
  • Windows NT: 3.1~10 (1993~현재) 유니코드 기반, 온전한 메모리 보호, 16비트 코드의 완전 가상화까지 실현

사실 386 enhanced mode라는 건 Windows 3.0 이전에 2.x의 386 에디션에서 최초로 도입되긴 했다. 하지만 이건 마치 Windows XP의 x64 에디션만큼이나 존재감이 없다.

4. 오 성식 생활 영어 SOS

우와~~ 이거 정말.. 추억의 멀티미디어 CD 타이틀이었다. (☞ 링크)
그 시절에 ToolBook이라고 CBT 멀티미디어 교육용 소프트웨어 저작도구가 있었는데..
쟤도 바로 툴북을 기반으로 만들어졌었다.
컴터에서 avi 허접 동영상이 재생된다는 것만으로도 왕창 신기하던 시절에 나왔던 물건이다.
저 타이틀에서는 도움말 나레이션만 낭독한 이 보영 씨 역시 현재까지 현역으로 뛰고 있는 유명 영어 강사이다.

그 뒤 저런 멀티미디어 컨텐츠를 만드는 플랫폼은 플래시로 넘어갔다가..
요즘은 플래시를 쓸 필요도 없이 저런 건 그냥 웹에서 HTML5 자바스크립트만으로 다 처리 가능하게 된 지 오래다.

쟤는 프로그램을 바로 종료하려 하면.. "공부라는 건 최소한 50분은 넘게 집중해서 해야 효과가 납니다. 그래도 지금 바로 종료하시겠습니까..."라는 확인 질문이 떴다. 내가 태어나서 지금까지 접했던 소프트웨어들 중 가장 훈계조로 종료를 저지하는 물건이었다.
반대로 Doom 2 게임은 온갖 농담 조크를 날리면서 종료를 저지했던 프로그램이고..

인트로 화면 보소..
딱 미리내 소프트웨어 "그 날이 오면 3" 게임의 인트로와 비슷한 환상적이고 몽환적인 느낌이 들지 않는가..??

레 솔솔 라 레레 솔 라시 레 시라솔 라~~
25년 가까이 지난 지금도 나는 멜로디를 정~확하게 녹음기로 틀어 놓은 듯이 기억하고 있다. 초딩 나이로 워낙 환상적인 경험이어서...

Credits를 보니.. 요 아름다운 인트로 음악을 작곡한 사람이 이 영수 교수(1951-2018. 영남 대학교 음대 작곡과)였다고 나온다.
어머니의 마음 "낳실제 괴로움 다 잊으시고..."의 멜로디를 만든 작곡가 이 흥렬의 아들이다.

Posted by 사무엘

2021/06/10 08:36 2021/06/10 08:36
, ,
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/1897

2021년이 된 와중에 문득 생각을 해 보니.. Windows 8과 8.1은 정말 존재감 없이 소리소문 없이 싹 묻히고 사라진 것 같다.
XP, 7 다음에 바로 10이다. 8 계열은 20년 전의 ME만치 망한 건 아니지만 Vista보다는 더 흑역사이다.

사실 난 개인적으로는 옛날에 XP 다음의 Vista는 그 정도로 욕 먹을 퀄리티는 아니었으며, 일부는 오해와 누명을 쓴 것도 있다고 생각한다. 5년 만에 출시됐다 보니 갑자기 시스템 요구 사항이 너무 높아지고 일부 하드웨어와 호환이 깨지고, 사용자 계정 컨트롤이 도입된 게 반발을 일으켰을 뿐.. 그건 시간이 해결해 줄 수 있고 사후 재평가의 여지가 있는 이질감이었다. 7이라도 XP 다음에 바로 갑툭튀였다면 맞았을 질타를 미리 맞아 준 것의 비중이 크다.

그럼 8 계열은 사정이 어땠을까? 잠시 10여 년 전 당시 상황으로 되돌아가 보자.
이때는 나름 격변기였다. 아이폰이니 안드로이드니 하면서 본격적으로 스마트폰이라는 새로운 컴퓨팅 생태계가 조성되고 있었으며, 마소에서도 초대 원로 경영진(빌 게이츠, 스티브 발머)이 대거 은퇴하고 세대가 교체되고 있었다. 사내 분위기가 크게 요동칠 수밖에 없었을 것이다.

이 와중에 얼리어답터들은 “Windows가 7 이후로 2010년대엔 도대체 어디까지 변모할까? 마소는 이 시점에서 어떤 결정을 내릴 것이며 PC와 모바일과의 접목은 어떻게 이룰까?”라고 기대와 주목을 잔뜩 하고 있었다. 그때는 다음 버전이 심지어 재래식 NT 커널을 버리고 처음부터 다시 개발된다는 루머까지 나돌았다. (실제로는 그럴 리가.. NT 커널은 지금 Windows 10에서도 건재함! 없어질 수가 없다)

그랬는데.. Windows 7의 차기 버전인 8은 결과적으로 뭔가 구심점 없고 나사 빠진 듯한 망작이 되었다.
비주얼이 다시 심플해진 것은 그렇다 친다만, 갑자기 시작 메뉴가 없어지고 전체 화면으로 바뀐 것은.. PC와 스마트폰의 크기와 용도의 차이에 대한 고찰이 결여된 자충수였다. 게다가 8은 시작 메뉴 버튼 자체가 없었다~! 이런 제품이 어째 QA나 사용성 테스트를 통과하고 출시됐는지 모르겠다.

더 옛날인 2000년대엔 새 밀레니엄 컴퓨팅을 표방하면서 인텔 Itanium이라는 64비트 프로세서가 출시되었고 Windows는 2000뿐만 아니라 ME도 나왔었는데.. 아시다시피 Itanium과 ME는 대차게 망했다. 그런 것처럼 2010년대를 개막했던 Windows 8은 사용성 면에서 큰 혹평을 받으면서 XP와 7의 아성을 넘지 못했다.

그리고 사실은 스마트폰 OS의 쟁탈전도 매우 싱겁게 끝났다. 지금 다들 경험하시는 바와 같이 안드로이드 아니면 iOS로 양분되었고, 마소는 이 바닥에서의 주도권을 완전히 빼앗겼다. 심지어 웹 브라우저마저 IE 독점은 진작에 물 건너갔고 Edge 브라우저도 자체 개발을 포기하고 크로뮴 엔진에 흡수되지 않았는가?
국내로 치면 모바일에서 주도권을 완전히 주도권을 빼앗기고 삼성 전자와는 정반대의 처지가 된 LG 전자와 비슷하다고 하겠다..;

그러니 8 시절부터 Windows에 도입된 Metro 앱이니 하는 것 역시 폰에서는 볼 일이 없어졌다. Universal이라는 수식어가 무색해졌고 지금은 그냥 스마트폰 같은 큼직한 글자의 UI 엔진이 제공되는 특이한 프로그래밍 플랫폼? 가상 머신?처럼 됐을 뿐이다. NT 커널 없이 새로 개발된다는 엔진이 이런 곳에 적용된 거라고 보면 되겠다.

그렇게 결판이 난 뒤 마소에서는 스마트폰용 OS가 아니라 그냥 기존의 데스크톱용 Windows 10을 스마트폰용 CPU인 ARM64에다가 포팅하는 식으로.. 즉, 자기 정체성을 유지하면서 모바일 환경에다 손을 내민 상태이다. 요즘 PC와 스마트폰의 경계가 많이 모호해지긴 했지만 그래도 PC는 안 쓸 때도 24시간 내내 켜 놓는 물건은 아니며, 떨어뜨려도 될 정도로 튼튼한 물건도 아니라고 여겨진다. 그리고 스마트폰은 프린터나 재래식 하드디스크 같은 장치와는 여전히 친숙하지 않다.

그렇게 Windows 8 내지 8.1은 2010년대 초반 마소의 시행착오가 깃들어 있는 비운의 작품이 됐다.
개인적으로는 Windows 제어판이 Metro 기반인 ‘설정’으로 야금야금 대체된 건 글쎄.. 그냥 reinvent the wheel 삽질 같고 멀쩡한 인도 보도블록을 교체하는 듯한 느낌이다. 기존 제어판에 익숙한 사용자를 괜히 헷갈리게만 하고 말이다.
지금도 키보드의 반복 속도를 최대로 조절하는 것만 해도 설정에서 가능하지 않기 때문에 재래식 제어판으로 가야 한다.

그리고 프로그램의 제목 표시줄에 제목이 가운데 정렬로 표시되었던 Windows는 과거의 16비트 시절 1~3.x 아니면 후대의 8/8.1밖에 없다~!! 거기 말고는 MS Office가 뜬금없이 2007부터 현재까지 가운데 정렬을 하며 따로 노는 중이다.

나머지 Windows 95, NT4부터 7, 그리고 지금의 Windows 10은 다 왼쪽 정렬이다.
Windows의 역사상 32/64비트 시대에 프로그램 제목을 가운데에다 표시했던 버전, 그리고 시작 버튼이 없던 버전이 있었다는 걸 기억하는 사람이 얼마나 있을까? 문득 궁금해진다.

한글 IME의 개발이라는 관점에서 보면 Windows 8 계열은 메트로 앱에 대해서는 키보드 포커스를 얻었을 때 가/A 한영 상태를 IME가 근처에다 팝업 창으로 수동으로 잠깐 띄워주고, 상태가 바뀌었을 때도 그걸 띄우는 수고를 해 줘야 하는.. 약간 원시적인 조치가 필요하던 유일한 운영체제였다.
메트로 앱은 전체 화면에서 실행되는 관계로, 운영체제의 기존 도구모음줄(language bar)의 보조를 전혀 받을 수 없기 때문이다.

이것도 아무리 생각해 봐도 뻘짓이었다. 도구모음줄을 IME가 제각각으로 구현해야 했던 1990년대도 아니고.. Windows 10부터는 메트로 앱도 창 모드로 실행 가능하고, 입력기의 상태를 작업 표시줄(task bar)에서 확인 가능하기 때문에 저렇게 할 필요가 없어졌다. 즉, 저 관행 역시 일회적인 이벤트로 끝났다는 것이다.

이상. 이 글에서는 Windows 8 계열에 대해 주로 다뤘지만, 걔네 말고 Windows라는 운영체제 제품에 대해서 개인적으로 의아하거나 궁금한 점을 더 꼽자면 다음과 같다.

1. 비현실적인 권장 사양

마소에서는 Windows 7 64비트 정도의 시점을 마지막으로.. 자기 운영체제의 동작을 위한 최소 PC 사양과 권장 사양을 더 올려서 기재하지 않고 있다.
7이 램 최소 1GB 이상, 권장 2GB 이상인데.. 이게 Windows 8과 10까지 동일하다. 하지만 이건 개인적으로 생각하기에 완벽한 허위· 과장 광고라고 여겨진다.

도대체 어느 정도 돌아가는 게 최소 사양이고 어느 정도로 여유가 남는 게 권장인지 정확한 정의는 잘 모르겠다만.. 요즘 Windows 10은 램 8GB에서 돌려도 부팅 직후에 크롬 브라우저 창 몇 개나 MS Office 프로그램, Visual Studio 같은 걸 열면 메모리가 거덜난다. 정말 못 해도 16GB는 돼야 넉넉하다는 느낌이 든다.

Windows 7에서야 최소 1GB, 권장 2GB는 수긍할 만하며 램 8GB는 펄펄 날아다니는 용량이다. 하지만 10은 절대 그렇지 않다. 아무리 못 해도 최소 2, 권장 4 이상으로는 수정돼야 하리라 여겨진다. 그리고 요즘도 32비트 에디션이 나오고 있나 모르겠는데.. 걔는 이제 단종시켜도 될 것이다.

2. 서버 제품군의 존재감

Windows의 개인 사용자용 제품군은 아시다시피 2015년부터 10이라는 단일 브랜드 하에서 주기적인 업데이트를 통해 프로그램을 진화(?)시키는 형태로 바뀌었다. 하지만 서버 제품군은 여전히 2008, 2012, 2016 등의 연도 브랜드를 쓰고 있어서 다소 이질적이다. 이런 이원화된 버전 넘버링이 언제까지 계속될지.. 마치 Office 365와 기존 Office 20xx 패키지의 관계만큼이나 궁금해진다.

그리고 더 결정적으로는 기업 같은 데서 서버 제품군을 쓰는 곳이 있긴 한지..?? 이건 마치 Itanium 컴퓨터만큼이나 본인이 태어나서 지금까지 한 번도 구경해 보지 못했다.
왜냐하면 서버 제품군을 쓸 정도의 컴퓨터라면 차라리 유닉스 터미널이 내장돼 있는 리눅스나 맥OS를 쓰고 말지 Windows를 쓰지는 않기 때문이다.

서버 에디션은 원래 Windows NT나 2000까지는 동일 버전의 바리에이션 형태로만 존재해 왔다. 그랬는데 XP 때는 웬일인지 Server 2003이라고 제품명은 물론 내부 버전 번호까지 다르게 붙일 정도로(5.1 vs 5.2) 차별화를 했었다. 그 대신 XP는 개인용 에디션이 홈 vs 프로로 더 세분화됐다.
그 뒤로 서버 제품군은 버전 번호는 클라이언트와 동일하지만 제품명은 저렇게 Server 20xx 식으로 나가고 있다.

3. 자잘한 UI 버그

  • 가끔씩 재래식 TSF 입력 도구모음줄과, 작업 표시줄 쪽의 Windows 10 스타일 입력 상태 아이콘이 동시에 나타나는 버그는 꽤 유명했는데 19xx나 20xx 사이에서 드디어 고쳐진 것 같다. 요즘은 눈에 띄지 않는다.
    하지만 caret (cursor)이 여섯 번 정도 깜빡이다가 깜빡임이 중단되는 버그는 여전히 건재한 듯하다. Windows 3.1 이래로 이런 특이한 현상은 처음이다.

  • 가~~~끔. 컴을 절전 모드에서 꺼냈을 때나 프로그램 창을 전환했을 때.. 이미 띄워져 있는 프로그램 창들이 부르르 다시 그려지면서 깜빡이고 떨리는 현상.
    내 개인용 컴과 회사 컴이 모두 그러는데 좀 보기 거슬린다.
    윈10 초창기에는 이런 현상이 없었고, 특정 컴에서만 그러는 것 같지는 않은데 왜 그러나 모르겠다. (2004대 버전 기준)

  • 컴퓨터에 따라서 케바케이긴 하지만.. 메뉴가 '파일, 편집' 같은 라벨의 우측 하단 ┗ 모양이 아니라 ┛ 왼쪽으로 펼쳐지는 기괴한 현상이 왜 발생하는지 모르겠다. 아랍권도 아닌 멀쩡한 한국어/영어에서 말이다.
    로컬라이즈나 사용 접근성을 위해 필요한 옵션이라면 제어판에라도 옵션을 정식으로 갖다 놓든지..? 저런 동작이 왜 존재하는지도 모르겠고, 또 사용자의 동의 없이 불쑥 바꿔 놓고는 원상복구를 왜 레지스트리 수정을 통해서 해야 하는지 모르겠다.

Posted by 사무엘

2021/06/02 08:36 2021/06/02 08:36
,
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/1894

1. 압축 유틸

요즘은 Adobe Reader 같은 거 설치할 필요 없이 크롬이나 Edge 같은 브라우저만으로도 자체적으로 pdf 문서를 바로 열어 볼 수 있다.
압축 유틸리티에서 광학 디스크 이미지 파일의 내용을 바로 볼 수 있게 된 것과 비슷해 보인다. 한 분야의 프로그램이 비슷한 다른 분야의 프로그램의 역할을 일부 흡수해 버렸다.

물론 이미지 파일을 새로운 드라이브로 mount 시키는 것까지 압축 유틸이 지원하지는 않는다. 그것까지 지원하면 압축 유틸의 기능이 옛날 도스 시절의 Double Space 같은 디스크 압축 유틸 급으로 커지는데.. 요즘은 그런 기능이 필요할 정도로 디스크의 용량이 부족한 시절이 아니기 때문에 유행이 지났다. 그리고 결정적으로 드라이브 mount는 이제 운영체제(Windows 10)가 자체적으로 제공해 주는 기능으로 흡수되기도 했다;;

국내의 경우 20여 년 전, 이 바닥이 WinZip, WinRAR 같은 외국산 압축 유틸리티 일색이던 시절에 이스트소프트의 '알집'이 처음에 적절한 마케팅 덕분에 시장 선점을 잘 해서 폭발적인 인기를 누렸다. 그러나 버그· 안정성 문제에 적절히 대처하지 못해서 2000년대 말쯤에 컴덕들 사이에 욕을 엄청 먹었으며, 그 와중에 기업 대상 유료화까지 선언하는 바람에 입지를 더욱 잃게 됐다.

그 와중에 개인 개발자 1인의 작품인 '빵집'이 알집의 대체제로 각광 받아서 2000년대 후반에 큰 인기를 끌었다.. 하지만 빵집은 개발자의 개인 취미 생활이다 보니 유지보수에 한계가 있었고, 결국 개발이 중단되어 역사 속으로 사라졌다.
그리고 오늘날이야.. 그 틈새를 저격한 반디소프트의 '반디집'이 탁월한 완성도로 천하를 평정했다.

압축 유틸의 역사를 읽어 보노라면, 소프트웨어는 모름지기 수요와 타이밍, 시장 공략을 잘 해야겠다는 걸 느낀다.
zip은 압축 해제뿐만 아니라 생성까지 소스가 완전히 공개돼 있고 그 다음부터 7z, ace, rar 등 압축 알고리즘들의 압축률은 이론적인 정보량 한계에 근접해서 거기서 거기이다 보니.. 알고리즘은 zip 하나만 있으면 되고 그 뒤 멀티코어, 64비트, 유니코드, 기본적인 보안, 운영체제 셸과 잘 연계하는 UI...

이것만 제공되면 그 다음부터 굳이 유료 유틸을 쓸 필요가 크게 줄어드는 것 같다. 실제로 본인도 '-집' 계열 유틸을 사용하기 시작한 뒤부터는 Windows에서 zip 말고 rar 등 다른 압축 파일을 '생성'해 본 적이라고는 전혀 없는 것 같다.

2. 유튜브

(1) 유튜브 동영상에 광고가 5~10여 년 전에 비해 굉장히 많이 늘어난 게 느껴진다.
뭐, 쟤들도 흙 파서 먹고 사는 건 아닐 테니, 오랫동안 무료로 잔뜩 뿌리고 투자했던 것을 회수할 때가 됐다. 전세계에서 발생하는 천문학적인 수의 동영상들을 저장하고 전송 트래픽을 감당할.. 서버 유지비가 장난 아니게 깨질 것이며.. 몸값 비싼 엔지니어들을 고용하는 인건비도 상상을 초월할 것이다. 서버 관리자, 웹 UI 디자이너 및 개발자, 동영상 코덱 전문가, 동영상 컨텐츠들의 검색과 분류 알고리즘 전문가 등..

그러니 동영상 포털이 사용자에게 거부감을 제일 덜 주면서 수익을 내는 건 광고 또는 사용자에게 "광고 안 뜨는 기간제 유료 계정" 판매로 자연스럽게 귀착될 것이다. 나도 광고가 너무 잦아지니 잠시 동안만이라도 광고 없는 유튜브 프리미엄 유료 계정을 써 보고 싶다는 생각이 종종 든다. 유튜브도 사용자를 이렇게 적당히만 귀찮게 하는 걸 목표로 하지 싶다.

요즘 친구들끼리 생일 선물로 카카오톡으로 이모티콘이라든가 커피 상품권을 주고 받는 게 있다. 그런 것처럼 몇천 내지 1~2만원대의 유튜브 프리미엄 n개월 이용권이 온라인/모바일 생일 선물로 오가는 건 어떨까 싶다.

여담이지만, 유튜브뿐만 아니라 평소에 위키백과를 지식 습득용으로 유용하게 사용해 온 사람이라면 거기에도 후원금을 소액이나마 내는 게 좋을 것이다. 특정 기업의 입맛에 휘둘리지 않고 상업 광고도 없는 개방된 지식 저장소는 컴퓨터와 인터넷을 지금 같이 누구에게나 평등하고 투명하게 개방된 정보의 바다로 만드는 데 절대적인 기여를 했기 때문이다.

(2) 다음으로, 돈이나 광고와 별개로 본인이 요 근래에 유튜브에 대해서 느끼는 굉장히 큰 불만이 하나 있다.
HD급 이상의 무거운 고화질 동영상일수록 더 두드러지는 것 같은데.. 슬라이더에서 좌우 화살표를 눌러서 앞뒤 5초 남짓 단위로 seek를 한번 하는 데 걸리는 딜레이가 너무 길다는 것이다. 동일 화질 기준으로 그냥 하드에 저장된 동영상을 데스크톱용 플레이어 앱에서 seek하는 것만치 빨리 즉시는 절대 못 한다. 답답하지 않으신가?

옛날 저화질 동영상은 이렇지 않다. 이건 다운로드 자체는 이미 다 된 구간을 돌아다니는 것만 말한다. 그러니 네트워크 상태하고도 무관하다.
기술적인 한계 때문에 느린 건지 아니면 이것도 설마 현질 유도를 위해 고의로 들어간 핸디캡인지는 잘 모르겠다.

(3) 끝으로, 유튜브 유료 계정에 제공되는 서비스로는 광고 제거뿐만 아니라 동영상을 아예 로컬에다 다운로드하는 것도 있었다.
하지만 그건 별도의 서비스가 없더라도 뒷구멍을 통한 다운로드 서비스가 넘쳐나다 보니 유튜브에서도 단속을 포기한 것 같다. 별도의 앱이던 게 더 간편한 웹으로 바뀌기까지 하고 말이다. 사실 이건 기술적으로, 근본적으로 막을 수 있어 보이지는 않는다.

3. 이메일: 대용량 파일 첨부, 발송 확인 및 취소 기능

15년쯤 전에 구글 gmail이 최초로 1GB짜리 웹 기반 무료 이메일을 개설한 이래로 요즘은 어디건 이메일 서비스는 기본이고 용량이 기가바이트급이다. 하지만 이메일은 편지함 용량과 컴퓨터의 하드 용량이 증가한 것에 ‘비하면’, 무슨 영화 파일 급의 대용량 첨부 파일을 주고 받기에는 여전히 좀 버거운 수단이다. 기껏해야 수~수십 MB 정도가 한계?

초대용량 파일은 메일에다가 직접 붙이는 게 아니라 다른 클라우드/웹하드에다 올리고 나서 그거 링크만 메일에다 넣는 형태로 대체되는 게 요즘 추세이다.
수신 확인 및 오발신 취소 같은 것도 이메일의 정식 프로토콜/스펙에 규정된 기능이 아니라 각 웹메일 서비스 사이트에서 자기 계정간 이메일에 한해서만 제공되는 비표준 편의 기능인데.. 이것도 좀 표준으로 승격됐으면 하는 바람이 있다.

4. 크롬 브라우저로 네이버 블로그 첨부 파일 다운로드

크롬 브라우저로는 네이버 블로그 기반의 사이트에서 첨부 파일 다운로드가 잘 되지 않는 문제가 있다.
나만 겪는 현상인 줄 알았는데 아니었구나..

검색을 해 보니, 네이버 블로그는 https 기반인데 다운로드 링크는 보안이 취약한 http 기반이어서 크롬이 의심스럽다는 이유로 다운로드를 차단한 것이었다.
즉, 네트워크 구조에 문제가 있어서이지, 첨부 파일의 내용에 문제가 있어서가 아니었다.

이렇게 웹페이지의 구성요소에 https와 http가 뒤섞여 있으면 브라우저가 의심스럽고 불안하다고, 그래도 내용을 다 보고 싶냐고 온갖 귀찮은 확인 메시지를 사용자에게 띄운다. 다들 한 번쯤은 그 모습을 본 적이 있을 것이다.

그런데 크롬의 경우, 그 어떤 에러 메시지도 없이 그냥 일방적으로 네이버 블로그로부터의 다운로드를 씹어 버리니 당혹스러웠다. 은행 ActiveX도 아니고 파일 다운로드를 위해서 구닥다리 IE를 끄집어내는 촌극이 벌어지기도 했다.
뭐, 궁극적으로는 천하의 네이버가 이 문제를 해결하고 네트워크 구조를 불안 요소가 없게 어서 고쳤으면 좋겠다.

크롬은 이제 올해부터 플래시조차 지원을 완전히 끊었다. 아직도 메뉴가 플래시 기반인 웹사이트는 한 몇 년은 관리를 안 한 완전 구닥다리.. "1024*768 해상도에서 IE 6 브라우저에서 가장 잘 보입니다" 이러면서 제로보드 게시판까지 같이 붙어 있는 사이트일 가능성이 높을 것이다.
세월이 참 많이도 흘렀다. 플래시, 제로보드, Visual Basic 6, 재래식 hlp.. 이런 것들이 역사 속으로 사라졌다.

5. 마이너한 검색들

일반적으로 널리 쓰이는 기능은 아닐 테니 유료 서비스 형태로 제공되더라도..

(1) 많고 많은 웹툰들은 그림 파일뿐만 아니라 말풍선 안의 대사들도 색인화돼서 대사로 해당 컷의 검색이 됐으면 좋겠다.
짤방으로 써먹고 싶은데 그 그림이 긴 웹툰 시리즈의 어느 화에 있었는지 기억을 못 할 때가 많다.
물론 "이 학교의 주인은 이사장인 나예요."(사립정글고), "네놈을 살려 두긴 쌀이 아까워!"(이말년), "선 넘네"(엉덩국 애기공룡 둘리) 같은 거야 너무 강렬하고 유명하니 일반 검색 엔진으로도 대사와 컷 이미지가 개념적으로 연결돼 버렸지만.. 그렇지 않은 컷도 많다.

(2) 주선율 음표 표기로 음악 검색. 밖에서 재생되는 음원을 들려줘서 비슷한 음반의 노래를 찾는 건 이미 서비스 되는 게 있지만.. 그건 음원이 없고 사람의 오랜 기억 속에만 존재하는 음악을 찾아 주지는 못한다. 내가 말하는 건 음악들의 주선율 악보를 색인화해서 검색하는 것이다. 다만, 이걸로 검색하려면 사용자도 최소한의 채보· 기보 능력이 있어야 한다.

검색 엔진이란 게 처음에는 같은 웹에서 텍스트 위주로만 검색을 지원했다. 그러나 요즘은 웹뿐만 아니라 종이책, 잡지, 옛 신문들과 방송 자료, 논문 같은 오프라인 매체로 범위가 확장되었으며, 정보의 형태도 텍스트에 국한되지 않고 그림과 동영상까지 취급한다.

그러니 이게 앞으로는 텍스트뿐만 아니라 사람이 마우스로 얼추 끄적인 스케치와 비슷하게 생긴 그림이나 실제 로고타입을 찾아 주고, 콩나물 배열만으로 음악을 찾아 주는 경지에 도달하지 않을까 싶다. 그야말로 사람의 기억을 보조해 주는 도구가 되는 것이다. 그리고 국내 웹툰뿐만 아니라 과거의 뉴스 보도, 특히 대한뉴스들도 다 색인화되면 엄청난 도움이 될 것이다.

Posted by 사무엘

2021/04/16 08:33 2021/04/16 08:33
, , , ,
Response
No Trackback , No Comment
RSS :
http://moogi.new21.org/tc/rss/response/1877

« Previous : 1 : 2 : 3 : 4 : 5 : 6 : ... 13 : Next »

블로그 이미지

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

- 사무엘

Archives

Authors

  1. 사무엘

Calendar

«   2024/04   »
  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        

Site Stats

Total hits:
2679105
Today:
1189
Yesterday:
2484