重振已有16年历史的Mac应用程序

2020-05-06 05:20:08

今天我们发布了WISK2.0:这是一个轻量级的网页编辑器,具有实时预览功能,可以根据你的输入进行更新。这个名字可能是新的,但Mac应用程序的起源是我16年前上大学时开始使用的名为HyperEdit的共享软件。很难相信我曾经开发过一款老到可以拿到驾照的应用程序!

我不禁回想起--触摸这样一个古老的代码库,让我回到了过去。2003年,苹果发布了第三代iPod,MacOSX10.2Jaguar,并首次发布了Safari。那一年的电影和音乐是令人难忘的,谢天谢地,没有“黑客帝国”的续集问世。

HyperEdit的诞生始于那一年我参加苹果全球开发者大会(又名WWDC)的一次会议。Gramps公布了将Safari的WebKit引擎嵌入任何应用程序的能力。苹果的市场营销过度吹捧其渲染速度,这是相对于现有IE浏览器的主要竞争优势。

我决定通过在征用的白色iBook上启动Xcode1.0测试版来检验他们的说法。我在Safari WebView旁边放置了一个文本视图,看看它是否能跟上我的输入。果不其然,它可以!坐在我旁边的朋友们想出了各种各样的其他压力测试,比如尝试JavaScript或嵌入图像和视频文件。它不仅很好地处理了这些问题,而且很快就发现这种带有实时预览的编辑形式是编写网页的一种很棒的方式。

我喜欢能够尝试使用HTML片段,并且认为其他人可能也会发现它很有用。从那时起,我努力让它成为一个更易用的编辑器,并在几个月后发布了第一个HyperEdit测试版。

在VersionTracker(当时的产品猎头)上投放软件就足以赢得用户和媒体的关注。一位早期的用户和记者查尔斯·阿瑟(Charles Arthur)在“独立报”(The Independent)上写了一篇关于我努力的报道。作为一个21岁的年轻人,知道我制作的一款应用程序值得报道,我的世界观受到了影响。他用以下几句话结束了这篇文章:

[乔纳森]希望这笔捐款能为购买一台“廉价笔记本电脑”提供资金,这样他就可以致力于他的下一个更大的共享软件想法。我很期待。

我确实买了那台笔记本电脑(一台iBook G4),但下一个共享软件的想法要等到我在苹果工作了八年之后。查尔斯后来成为“卫报”的技术编辑一段时间,现在继续报道技术。我知道他还在用超级编辑。

在那群热情的测试员的鼓励下,我在不到一年的时间里就推出了1.0版。随后进行了一些更新。然而,HyperEdit经常被放在次要位置,而我则专注于我的公司工作,随后又开始大肆炒作。HyperEdit的一些代码驻留在那里:两个应用程序中的源代码编辑器是相同的。我个人一直在使用HyperEdit,它仍然有专门的用户群要求更新。Whisk2.0是一项热爱的劳动,意味着实现了为这些用户提供更新的承诺。

Whisk的大部分开发工作都是对源代码进行现代化。2020年,Mac应用程序开发有很多新的选择,比如Swift、SwiftUI和Catalyst,但Whisk仍然是老式的Objective-C和Cocoa。因此,很多工作都是在替换过时的API,或者将现代应用程序的功能从HYPE复制到WISK中。用户界面进行了彻底改造,现在看起来它们都是由同一家公司开发的。抽屉不见了。

从用户的角度来看,自2003年以来,Mac应用程序分发的某些领域发生了惊人的变化:

互联网分发很常见,但杂志光盘仍然是获得这些共享软件应用程序的精心挑选的一个很好的方式来尝试。直到2005年,有人与我接洽,让我在一本杂志的封面CD上加入“超级编辑”(HyperEdit)。随着订阅软件和服务器支持应用的兴起,“免费增值”取代了“免费增值”,取而代之的是把应用称为“共享软件”。(就此而言,在iPhone问世之前,“应用程序”不会成为通用语言。)。像HyperEdit这样的应用程序通常会附带一个“Read me First.rtfd”文件;这是在用户在互联网上找到软件之前的几天里从经典的Mac电脑上保留下来的,因此文档需要放在应用程序旁边。磁盘映像(.dmg)文件和“拖动到应用程序文件夹”流并不常见。这些变得更加流行,因为应用程序文件夹由于Launchpad等功能而变得越来越重要,并成为避免对未签名的zip文件施加MacOS安全限制的最佳选择。应用程序自我更新没有通用的方法!Sparkle框架直到2006年才面世。事实上,只有最后一个版本的HyperEdit集成了Sparkle,这意味着它从未被使用过(直到现在)。一些应用程序创建了自己的机制,但除此之外,这就是为什么像VersionTracker这样的网站是必不可少的。Mac应用商店于2011年1月推出。人们希望它能成为优秀应用程序的权威来源,但外部分发在许多重要的应用程序中是常见的(要么是因为沙盒,要么是为了避免苹果的分成)。

从开发人员的角度来看,分发软件要困难得多。在2003年,您可以将配置切换为Release,点击Build,压缩应用程序,然后放到Web服务器上。在2020年,分发需要学习证书、代码签名、配置配置文件、强化、公证、.dmg创建、网守以及支付每年99美元的费用等错综复杂的内容。从Mac技术的角度来看,可以毫不夸张地说,学习分发软件所需的数量超过了我编写HyperEdit的第一个测试版所需知道的数量!我想知道如果我今天开始的话会不会开始。

把HyperEdit从阁楼上拿出来创建Whisk是一件很有趣的事情。我此时此刻正在用它来撰写这篇文章,我仍然喜欢Mac原生应用程序中的实时预览工作流程。考虑到我们所处的是一个孤立的冠状病毒世界,时间旅行回到2003年更简单的时候是一种令人愉快的分心。

HyperEdit1.x版本经受住了16年的时间考验,我希望Whisk也能经久耐用。