`
mmdev
  • 浏览: 13245541 次
  • 性别: Icon_minigender_1
  • 来自: 大连
文章分类
社区版块
存档分类
最新评论

每当用到ZIP就想起他

 
阅读更多
Philip Katz



英年早逝惨淡一生的自由程序员,缔造了ZIP压缩文件格式和算法


简要介绍

Philip Katz出生于1962年4月14日。在1988年为了对抗高额收费的ARC软件,他很快开发了只需注册费的PKARC程序供大众使用,当时提供ARC程序的SEA公司对他起诉,法院判决Katz停止PKARC程序的一切活动。
Katz进而推出了全新的PKZIP压缩算法和工具,供大众免费使用。从而以一人之力,用自己开发的自由软件击败了商业软件公司产品。这一传奇故事使他成为众多程序员顶礼膜拜的偶像。
此后Philip一直坚定不移地进行PKZIP的开发和维护工作。随着PKZIP以燎原的速度被广泛使用,ZIP这种压缩文件格式最终建立并成为DOS时代的压缩标准。直到Windows的诞生,使用Philip创造的压缩算法的软件WinZip更使ZIP格式成为Internet的传输标准,最终ZIP 压缩格式成为所有压缩文档的事实标准。这些成就给这个天才程序员又增加了许多耀眼的光环。
然而,光环的背后总会有阴影的存在。这位天才程序员一直恪守自由软件的信念,长期在巨大的压力下编写软件,加之Philip的个人生活一直非常不顺利,为了释放这些压力和缓解精神上的痛楚,他没有选择合适的方式,却不正确地选择了不良的生活习惯,沾染上了许多恶习。最终长期无节制地酗酒摧毁了他的健康,也带走了他宝贵而短暂的生命。2000年4月14日,在一家汽车旅馆里,身边陪伴他的只有几个空酒瓶,就这样年仅37岁的天才程序员Philip Katz永远离开了我们。
在下载量高达到1亿4000万次、成为压缩文件标准的ZIP格式的文档开头,都嵌有Philip姓名的字头缩写字母“PK”。也许,我们可以用这种方式永远记住这个自由软件的勇士。


其它照片



2000年4月14日,年仅37岁的菲利普·卡兹被人发现倒毙在美国威斯康星州密尔沃基的一家汽车旅馆里,据说死因是慢性酒精中毒引起的并发症。被人发现时卡兹的手中仍握着一个烈性酒的酒瓶,在同一个房间里还发现了另外5个空酒瓶。这位天才程序员从未在 ZIP身上得到半点好处,坚持信念的结果是潦倒的生活。他为世界贡献了一个伟大的免费软件,更为重要的是他缔造了一种大众化的压缩格式,然而却过早的离开了这个世界。仅仅两年后,PKWare和WinZip为了商业利益开始分道扬镳。用ULTRAEDIT打开任意一个ZIP文件,都可以看到嵌有菲利普·卡兹姓名字头缩写字母PK,每个ZIP文件都将永远记载着菲利普·卡兹,因此菲利普·卡兹和他的ZIP压缩格式也必将得到永生。不知为什么对于菲利普·卡兹的记忆,在我脑海中浮现出的是华莱士的那声呐喊:“Free!”


如果他生在中国……不敢想象……
分享到:
评论

相关推荐

    zip.h zip库要用到

    zip.h zip库要用到zip.h zip库要用到zip.h zip库要用到zip.h zip库要用到

    zip4j--Java操作zip压缩文件接口

    不过需要使用代理访问,如果读者嫌麻烦那就从这里下载吧,虽然收取3个CSDN积分,但您评论后一般就可以返还积分了,我也需要积分去下载别人的资源,请谅解! 资源包括:jar包、文档、源码和一些官方示例 该项目的...

    zip4j.jar包下载 包含zip4j-2.10.0版本

    Zip4j是一个强大的Java库,专门用于处理ZIP文件。它提供了广泛的API,使得在Java应用程序中创建、读取、修改和解压缩ZIP文件变得非常容易。这个库特别有用,因为它支持加密,包括AES-256,这在处理敏感数据时是必需...

    rpm zip和unzip.zip

    一旦你有了ZIP和UNZIP的RPM包文件,例如“zip.rpm”和“unzip.rpm”,你就可以使用RPM命令分别安装它们: ```bash sudo rpm -ivh zip.rpm sudo rpm -ivh unzip.rpm ``` 安装完成后,你就可以在Linux系统中使用`zip...

    Ionic.Zip文件

    Ionic.Zip是一个用于.NET框架的开源库,主要用于处理ZIP文件的压缩和解压缩操作。这个库提供了丰富的API,使得开发者能够方便地在C#、VB.NET或其他.NET语言中集成ZIP文件的功能。下面将详细介绍Ionic.Zip库及其核心...

    C语言实现Zip压缩解压.rar

    实现ZIP压缩,我们需要用到以下步骤: 1. **读取源文件**:遍历需要压缩的文件或目录,获取文件内容。 2. **选择压缩方法**:ZIP支持多种压缩方法,如DEFLATE(最常用)、STORE(不压缩)等。DEFLATE使用LZ77压缩...

    7zip 7zip 7zip

    7zip 7zip 7zip

    oracle12c用到的jar包.zip

    本压缩包“oracle12c用到的jar包.zip”包含了与Oracle 12c数据库配合使用的几个关键JAR文件,主要用于Kettle工具的数据集成工作。 Kettle,也称为Pentaho Data Integration(PDI),是一款强大的ETL(Extract, ...

    zip密码破解工具ZIP Password Unlocker

    zip密码破解工具ZIP Password Unlocker,仅供学习

    java Zip压缩解压

    这样,多个文件就可以被合并到一个ZIP文件中。 例如,创建一个包含两个文件的ZIP文件的代码可能如下: ```java File file1 = new File("file1.txt"); File file2 = new File("file2.txt"); try ...

    windows linux zip命令

    如果未自动添加,你可以手动将安装路径(例如7-Zip的`/bin`目录)添加到系统环境变量的`Path`中,或者简单地将`zip`可执行文件复制到`C:\Windows\System32`目录,这样在命令行中就可以直接使用`zip`了。 在Linux...

    Zip忘记密码处理.zip

    一款非常好用的ZIP密码破解工具,支持解密由WinZIP、PKZIP以及其它兼容ZIP格式的软件加密的ZIP压缩包和ZIP自解压的EXE文件,ZIP密码破解工具支持双重模式破解:暴力/字典,也具备断点续破、掩码破解等高级特性,帮你...

    linux安装oracle可能需要用到的包.zip

    本人亲测Centos7 + Oracle11g安装,缺少的包都在里面,有多余的,不过不影响,如果有提示系统已经安装比较新的包而不是依赖关系,请换包,不要强制更新,否则很可能造成命令失效,依赖关系可以强制安装

    小草小草.zip小草.zip小草.zip小草.zip.zip

    小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip小草.zip...

    JDK7安装包.zip

    JDK7安装包.zip\JDK7安装包.zip\JDK7安装包.zip\JDK7安装包.zip\JDK7安装包.zip JDK7安装包.zip\JDK7安装包.zip\JDK7安装包.zip\JDK7安装包.zip\JDK7安装包.zip JDK7安装包.zip\JDK7安装包.zip\JDK7安装包.zip\JDK7...

    C++开源zip压缩库文件原码,可直接引用

    在`zip.h`中,你可能会找到如`create_zip_file`、`add_to_zip`、`extract_from_zip`等函数声明,它们分别用于创建ZIP文件、添加文件到ZIP和从ZIP中提取文件。 在`zip.cpp`中,实际的压缩和解压缩逻辑会被实现。`...

    ORL人脸识别不同算法的实现源码+项目说明(用到了scikit-learn,tensorflow等).zip

    【资源说明】 1、该资源包括项目的全部源码,下载可以直接使用! 2、本项目适合作为计算机、数学、电子信息等专业的课程设计、期末...ORL人脸识别不同算法的实现源码+项目说明(用到了scikit-learn,tensorflow等).zip

    VB6.0调用 DLL版ZIP压缩文件夹目录和解压ZIP文件

    VB6.0调用 DLL版ZIP压缩文件夹目录和解压ZIP文件,网上很多源码不好用,所以就自己做了一个。原始代码是VC++的用VS2019编译了一个,DLL封装了下。调用很简单 '调用方法如下: 'CreateZipFileA "C:\123", "C:\123.zip...

    AndroidZip4j-master_java_android_zip_Compression_

    开发者常常需要处理大量的文件,例如资源包、更新包或者用户数据备份等,这时就需要用到文件压缩技术。AndroidZip4j是一个专门为Android平台设计的Java库,它提供了强大的zip文件操作功能,包括创建、读取、修改、...

    Windows终端配置zip、unzip命令

    将zip.exe 、unzip.exe放到Git的bin目录下,就可以在Git终端(Git Bash Here)中使用 二、CMD终端 将zip.exe 、unzip.exe的路径追加到环境变量Path中(也可以直接将程序放到C:\Windows目录下) 三、使用方法 解...

Global site tag (gtag.js) - Google Analytics