무료로 배포되는 수많은 프로그램중에서 가장 자주 그리고 가장 많이 사용하는 어플을 소개합니다.
압축 프로그램 하면 대부분 첫 생각이 "알집" 일텐데요.. 알집은 개인에게는 무료이지만 기업이나
관공서에서는 돈을 내고 써야하는 상용 프로그램입니다. 한 카피당 44,000원 으로 pc 대수가 늘어나면
늘어날수록 비용이 많이 늘어나는 형태입니다.. 알집의 가장 큰 업적이라고 하면 외산 압축유틸만 있던
국내 시장을 국산으로 바꾼것과 일반 사람들이 압축유틸은 몰라도 알집은 알게한 부분은 높이 평가 (제가 평가할 만한 위치는
아니지만..ㅠ.ㅠ) 합니다. 앞으로도 외산소프트웨어가 판을 치는 국내시장에 국산 어플들이 많아졌으면 하는 바램입니다. ^^
오늘 소개하는 프로그램은 그냥 프리라이센스 압축 프로그램으로 어플 이름은 빵집 입니다.
현재 버전 4가 최근에 공개되었는데. 그간 문제였던 egg 파일과의 호환성이 제공되네요.
원본출처는 : http://www.bkyang.com/ 이며 다운로드는 bz4setup.exe 여기를 클릭하시면 받으실수 있습니다.
빵집을 개발하신 분이 홈페이지게 게재한 글이 너무 좋아서 옮겨 봅니다.
-------------------------------------------------------
빵집을 만들게된 계기는?
빵집을 만들게 된 계기가 따로 있지는 않습니다.
그냥 델파이용 압축 콤포넌트가 나왔길래 그 라이브러리의 데모프로그램을 조금씩 수정하다보니...
빵집을 발표하게된 계기는?
솔직히 압축유틸리티를 발표하고 싶은 생각은 없었습니다.
알집이 상용화되면서 이때다하고 발표를 했는데..
그 이유는 좀 황당합니다.
그 당시에도, 그 전에도, 지금까지도...
새로운 운영체제를 만들고픈 욕심이 있었고...
그 프로젝트를 수행하기 위해서는 사람이 필요했고...
그 프로젝트를 많은 사람에게 알릴 필요가 있었습니다.
왜냐하면...
운영체제라는것이 몇사람이 모여서 뚝딱해서 나올수 있는것이 아니기때문에...
사무실에 쳐박혀서 열심히 일만하는 고급 개발자들에게 알릴필요가 있었고...
그 사람들의 귀까지 운영체제 프로젝트에 대한 소식을 전달하기 위해서는 일반인들까지도 충분히 대화의 주제가 될수 있을만한 매개체가 필요했습니다.
그것이 바로 빵집이었습니다.
다시말해서...
"어떤 사람이 운영체제 만들려고 한데드라...." 보다는...
"빵집 개발자가 운영체제 만들려고 한데드라..." 가 훨씬 설득력이 있어 보일것같아서..
그래서 빵집을 알려야겠다라는 생각을 했습니다.
그러면 지금도 빵집의 존재 목적은 거기에있나?
그렇지 않습니다.
그것은 단지 빵집을 발표해야겠다라는 마음을 먹게된 계기일 뿐이고...
현재는 이미 빵집 사용자가 너무 많아졌고 하루에도 팬레터성의 메일이 많이 오고 있어서 이젠 더 이상 빵집이 운영체제프로젝트를 알리기 위한 광고매체는 아닙니다.
빵집은 프리웨어 압축유틸리티일뿐입니다.
빵집의 이름은?
처음에는 떡집이었습니다.
물론 혼자쓰는 버전이었고 발표를 하면서 떡을 빵으로 바꿨습니다.
떡집, 빵집은 Bethlehem에서 따왔습니다.
ALZ포맷은 어떻게 구현할수 있었나
알집으로 1바이트짜리 파일을 압축해보고 핵사에디터로 들여다보고...
다시 2바이트짜리 파일을 압축해보고 또 들여다보고....
파일명을 바꿔서 압축해보고 또 들여다보고...
그런식으로 분석했습니다.
bz2의 변형 알고리즘이 제일 고생스러웠는데...
bz2가 비트단위 알고리즘이라서 애를 먹었습니다.
다른 프로그램에도 빵집의 ALZ모듈이 사용되고 있는데?
빵집이 정식으로 ALZ모듈을 지원하는 프로그램은 지팬놀뿐입니다.
XXX의 경우는 무단으로 사용하고 있으며 아직 법적으로 합의를 한바없습니다.
지팬놀의 경우는 제가 지팬놀개발자에게 ALZ소스를 전달했다고 했는데...
그냥 준것은 아니고 이미 오래전부터 주기로 거래가 됐었습니다.
단지 제가 바쁘다는 핑계로 미루어왔었습니다.
다집의 경우... 다집의 개발자가 저에게 ALZ에 관한 몇가지 질문을 했었고 제가 답변을 하는 정도의 도움을 주긴했지만 제가 만들어주거나 소스를 전달해 주지 않았습니다. 제가 몇가지 답변을 한것 외에는 모두 다집개발자가 만든것입니다. 물론 빵집처럼 bz2알고리름까지 완전하게 풀어내지는 못하고 있지만 아뭏든 다집은 자체 구현입니다.
앞으로도 빵집은 계속해서 프리웨어로 갈것인가?
그렇습니다. 제 손에 있는한 국내에서만큼은 프리웨어로 갈겁니다.
그럼 외국용은?
외국용은 아무것도 정해진 사항이 없습니다.
어바웃 박스의 어린이가 쓴듯한 글은?
큰 딸 나래가 6살때 크레파스로 쓴것입니다.
A4용지에 20장쯤 쓰게했고 스캔해서 그 중에 제일 나은 글자들을 모아서 편집한것입니다.
다시말해서 "빵"자하고 "집"자하고 한장에 써있는게 아니라 여러 용지에 써있는 글자들을 한글자씩..젤루 이쁜글자를 모아서 한장으로 합친겁니다. 왜냐면? 그당시 나래가 한번에 한 문장을 잘 쓸정도가 못 되었기때문입니다. ^^;;
국내 압축 유틸리티의 수준은 어떻다고 보는가?
제 자신이 개발자이지만... 한마디로 형편없습니다.
국산 압축 유틸리티와 미국산 압축유틸리티의 가장 큰 차이점은
국산은 모두가 외산 엔진을 구입해서 사용하고 미국산은 모두 자체 구현된 엔진을 사용한다는겁니다.
물론 압축유틸리티가 사용자 인터페이스도 매우 중요한데... 아무리 그렇다고해도 압축알고리즘보다 중요하진 않을것입니다.
그럼 우리나라의 소프트웨어 개발 수준이 미국보다 현저히 떨어지는것인가?
꼭 그렇지는 않습니다.
만약에 우리나라의 모든 컴퓨터에 깔려있는 압축유틸리티가 돈주고 구매한것이라면....
다시말해서 모든 사람들이 압축유틸리티를 구매해서 사용한다면...
아마도 우리나라에도 윈집이나 윈라르처럼 자체 구현된 엔진을 탑재한 압축유틸리티가 나올것이라고 확신합니다.
국산 압축유틸리티가 자체 엔진을 갖지 못하는것은 기술의 차이라기보다는 환경의 차이라고 할수 있습니다.
고로... 위에서 말한 "현편없습니다"라는 의미는 기술이 형편없다는 말이 아닙니다.
빵집의 미리보기나 빵폴더와 같은 아이디어는 어떻게 얻는가?
제가 다른 개발자들한테 강조하는것중에 하나가...
자기가 구현할 수 있는 범위내에서 아이디어가 나온다는겁니다.
기술없이 머리만 쥐어짜는것보다는 기술을 배워가면서 그것을 응용하는 습관을 들일때 아이디어가 나온다고 생각합니다.
빵폴더가 매우 독특한데?
처음에는 알집의 "새 폴더"를 흉내 냈었습니다.
꾀꼬리 종달새가 나오는것처럼 소보루 도너츠등이 나오게 했었습니다.
그랬더니 아내가 "쪽팔리게 남의거 따라하냐?"라는 말에 충격을 받아서 확 때려치우고...
그때부터 머리를 쥐어짜기 시작했습니다. 알집의 새 폴더 역할을 하면서도 그 보다 더 신선한것을 찾기위해서요..
그러던중 내 문서 폴더에 있는 My Picture폴더를 다른 곳으로 복사하게 되었는데 그 폴더의 아이콘이 그대로 복사가되길래 그 이유를 분석하던중 빵폴더의 힌트를 얻게 되었습니다.
빵폴더를 비롯해서 각종 아이콘들은 누가 그리나?
제가 페인트샵프로를 이용해서 일일이 다 그립니다.
보통 아이콘 하나 그리는데 하룻밤을 꼬박샙니다. 디자이너가 아니다보니.... 원....
도와주겠다는 디자이너는 없나?
몇 사람 있었는데 모두들 웹쪽에서 일하는 사람이라 그런지 프로그램의 특성을 살리기 보다는 무조건 이쁘고 튀게만 할려는 경향이 있어서 거절했습니다.
빵집같은 유틸리티를 만들고 싶어하는 개발자나 학생들에게 하고픈 말은?
현대의 프로그래밍은 객체지향적 프로그래밍이 절대적으로 필요합니다.
그 사실은 다들 잘 알면서도... 실제 프로젝트에는 잘 반영이 안됩니다.
여러가지 이유가 있지만 제가 생각하는 제일 중요한 이유를 하나 들자면...
예컨데 상속구조를 디자인할때 설계, 코딩을 할때는 항상 제일 위에 클래스부터 시작해서 아래로 내려가면서 구현을 합니다.
그러나 그것을 구상하는 단계에서는 위에서 밑으로 내려오는것이 아니라 최종 구현될 맨 아래 객체에서 시작해야합니다.
최종 구현 객체들의 공통점과 특성, 역할등을 분석해서 추상화하고 그것을 상위 클래스로 표현해야합니다.
우리나라 개발자들의 제일 못하는 부분이 그 점입니다.
항상 위에서 밑으로 내려올라고 하다보니 막막해지거나 아니면 논리적 객체 없이 물리적객체로만 프로젝트를 구성하게됩니다.
객체지향을 공부하되,
논리적 객체 구조를 만들기 위해서 노력을 해야합니다.
빵집에는 라이센스 안내가 없다?
빵집의 설치과정이나 어바웃박스등에 라이센스에 대해 명확히 밝히고 있지 않다는 점도 많이 말씀하시는대요.
밝히고 있지 않다고 해서 아무렇게나 써도 되는 것은 아닙니다. '빵집은 프리웨어입니다' 그거 하나로 다 정리됩니다.
프로그램들이나 제품등에서 밝히고 있는 라이센스등은 법보다 우선하지 않습니다.
예컨데 어떤 외산 압축 프로그램의 라이센스에서 밝히고 있는(지금도 있는지 모르겠습니다만) 'XXX 압축파일을 리버스엔지니어링하면 안된다.'라는 식의 조항은 위법입니다. 그러므로 그냥 무시하면 됩니다.
라이센스를 밝히는게 자신을 보호하는 것일 수도 있지만 반대로 법을 잘 알지 못하는 사람들에게 불법적인 내용으로 협박을 하는 것일 수도 있습니다. (물론 합법적인 내용만 쓰면 됩니다.) 빵집이 돈 받고 파는 것이라면 라이센스를 밝히는게 좋겠지만 프리웨어에서는 없는게 낫다고 생각합니다.(물론 저의 주관적인 생각일 뿐입니다. 알아서들 하면 됩니다.)
ALZ에 대해서 어떻게 생각하나
빵집은 알집과 비슷한 시기에 만들어졌습니다. 발표는 늦게 했지만요. 개발언어도 같은 언어이고, 당시 핵심 엔진도 같은 엔진을 썼습니다. 그래서 저는 알집의 입장을 잘 이해하는 편입니다. 심지어 현재 알집이 왜 그런 스킨을 쓰는지까지도 이해합니다. 사람들은 ALZ 포맷을 비지니스와 연관해서 생각하는데 제 생각은 그렇지 않습니다. 분할압축이나 4G이상등 여러가지 문제를 해결하기 위한 방안이었다고 생각합니다. 현재 빵집도 분할압축 문제를 해결해 달라고 요청들을 하고 있습니다만 빵집 입장으로써도 알집처럼 새로운 포맷을 만들던가 아니면 그냥 ALZ를 쓰던가 두 가지 외에는 좋은 아이디어가 떠오르지 않습니다.(그래서 못하고 있습니다. --; RAR를 쓰면 좋으련만..) Unalz를 공개하지 않은것은 잘한 일이 아니라고 생각은 하지만 그 또한 이해는 합니다. 그게 말처럼 쉬운게 아닙니다. 제가 일부러 이스트소프트의 편을 들려고 하는게 아니라 같은 일을 하는 사람으로써 충분히 이해가 되기 때문입니다.
빵집4를 느닷없이 갑자기 발표했는데?
빵집3를 비롯해서 국내의 몇몇 압축유틸리티의 보안 취약성이 발견 돼서 갑자기 발표하게 됐습니다.
사실은 유니코드 Zip 문제, 64비트 Windows 문제 등 여러가지 큼직한 문제들을 해결하기 위해서 Zip 엔진을 개발하고 있었습니다.
여러차례 밝힌 바와 같이 현재 빵집은 외산 엔진을 사용하고 있습니다. 프리웨어다보니 많은 시간과 노력을 투자하기에는 한계가 있습니다. 그러다보니 자연스럽게 압축엔진 라이브러리를 구입해서 사용할 수 밖에 없었구요.
남이 만든 엔진을 사서 쓰다보니 한계가 너무 많습니다. 압축하고 파일 목록을 보여주고 압축을 해제하는 일이 그리 복잡하지는 않지만 목록을 보여 준 후 바로 풀었을 때에 헤더를 다시 스캔할 것인지 이미 스캔한 헤더를 그대로 활용할 것인지 그런 방법들에 의해서 속도가 달라지는데 남이 만든 엔진을 사서 쓰다보면 그 엔진이 제공하는 방법외에 다른 방법을 이용하기가 거의 불가능합니다.
그래서 좋은 아이디어가 생각나도 엔진이 그것을 받아들이지 못하면 무용지물이 됩니다. 사실은... 빵집이 그 어떤 압축유틸리티보다 더 빠른 속도로 압축하고 풀어내고 목록을 보여주고 싶은데 남이 만든 엔진을 사용한다는 것이 한계로 다가옵니다.
언어호환성 문제도 그렇습니다. 현대들어서 상당히 다양한 언어체계가 생겼는데 그 많은 것들을 일일이 체크하고 구현하기 위해서는 무엇보다 자체엔진이 필요합니다.
그래서 언제부턴가 자체 엔진을 개발하고 있었고 그것이 어느 정도 완성되면 빵집4를 공개할 생각이었습니다.
여튼.. 어찌어찌해서 빵집4는 결국 유저인터페이스만 업그레이트 된 상태로 공개가 되었는데...
버그 수정도 좀 하고 몇 가지 기능들도 추가 수정해서 빵집4의 마이너버전을 한번 정도 업데이트하고 빵집5부터는 자체엔진을 탑재하고픈 욕망이 가득합니다.
물론 (당연하지만) 이것은 사용자하고의 약속은 절대 아닙니다. ^^ 장담 못합니다. 말로만 이러다가 결국 아무것도 못 할 수도 있습니다.
'주변이야기' 카테고리의 다른 글
운전자들의 양심이 필요한 곳. (0) | 2011.05.16 |
---|---|
당신의 이름으로 1억원이 기부됩니다 (0) | 2011.05.12 |
제24차 <아! 장준하 구국장정 6천리> 신규 참가자 모집 안내 (0) | 2011.04.29 |
[나무를 찾아서] 이순신 장군 탄신일에 바라보는 이순신 나무 (0) | 2011.04.28 |
지인 친환경 공간나눔 캠페인. (0) | 2011.04.19 |