MIKE VIZARD: 大家好,欢迎收听由内容保护、软件许可和安装以及数字版权管理技术领域的领先供应商 Macrovision 赞助的 cast 高级版。我是您的主持人 Mike Vizard,今天加入我的是 Macrovision 全球产品营销高级经理 Bob Corrigan;以及 Macrovision 首席培训师 Robert Dickau。今天的主题是 Vista,以及围绕 Vista 的安装程序以及为开发人员带来的机会。
两位,欢迎来到节目。很高兴邀请到你们。
BOB CORRIGAN: 嘿,谢谢邀请我们。
ROBERT DICKAU: 谢谢。
MV: 我想现在大多数开发人员都在考虑如何处理 Vista。我的意思是,围绕 Vista 的噪音现在几乎达到了高潮,人们开始想知道作为 Vista 上的开发人员意味着什么,特别是 Vista 对他们的软件安装意味着什么?那么两位能否为一些人阐明一下围绕整个安装过程的 Vista 将会发生什么?
BC: 这是一个很好的问题。Vista 在后视镜中已经存在很长时间了,开发人员一直在思考它,就像现在它就在我们眼前一样。在 Vista 带来的所有东西中,它带来了许多新技术,这些技术将对最终用户安装从软件生产商处获得的程序时的安装体验产生非常有意义的影响。
因此,我们认为软件生产商和开发人员会想要了解的事情是那些能够使安装体验尽可能好的事情,而这些都是我们花费大量时间的事情。InstallShield 团队一直在努力优化,以便最终用户的安装体验尽可能好,安装开发体验也尽可能好。Robert,您对您从开发社区,从您一直在培训的人员那里看到的情况有什么看法吗?
RD: 嗯,没错。这个想法就像从 Windows 98 到基于 Windows NT 的系统和 NT Fords 2000 等的转变一样。在整个开发和安装体验中有很多变化,因此我们试图尽可能轻松地解决 Vista 将提供的新功能。
BC: 因此,我有五件事,我认为如果我们今天谈论它们,我们将为任何正在收听的开发人员提供服务。第一件事是软件开发人员不可避免地会有他们为以前版本的 Windows 创建的旧安装程序,他们会有一个问题,“嗯,这在 Vista 上会表现如何?” 来自微软的好消息是,他们做了大量工作来确保以前版本的 MSI 或 Microsoft Windows Installer 在 Vista 上运行良好。问题是这些旧版本的 MSI 与 Vista 的一些新功能兼容性如何?
因此,当谈到了解您的差距时,作为开发人员,能够以自动化的方式扫描您的旧安装程序以查看它们在 Vista 上的表现如何,然后在您进一步操作之前指出其中的一些缺陷,以便您可以查看您需要更改的内容,这将很有帮助。
因此,我们在 InstallShield 12 中交付了,特别是在 Premier 版本中,几乎可以将其视为一个验证扫描器,它将采用您的 MSI,无论是来自旧版本的 InstallShield,还是您自己从头构建的,还是您使用 InstallShield 12 构建的,并将进行扫描并应用一些我们从 Vista 质量计划的安装要求中得出的测试。它将逐步突出显示您安装的那些方面,这些方面在 Vista 上表现不佳,并且它将为您提供一些关于如何修复它们的建议。
其中之一就是,例如,您如何利用重启管理器。重启管理器是微软提供的,旨在通过努力消除最终用户认为不必要的许多不必要的重启来使安装体验我认为对最终用户来说更可接受,但 Windows 肯定认为这些重启是必要的。因此,我们提供了将一些对话框集成到安装程序中的能力,以利用重启管理器,以便应用程序可以有机会优雅地关闭,然后避免重启的要求。Rob,您是否看到一些最终用户谈论过这个问题?
RD: 最终用户最大的抱怨之一是他们不希望安装程序打断他们的工作或他们的一天或任何事情,因此在早期版本的 MSI 中,您可能知道,有一个对话框会告诉用户他们需要关闭程序,但是如果他们选择忽略它,它仍然会在最后重启。因此,对于 Vista 的新版本 MSI,有这个新功能和新的对话框,它不仅允许安装程序关闭它需要更新的应用程序,而且还可以在安装完成后重新启动它们,五分钟后他们就可以忘记他们必须安装任何东西,而不必等待。
BC: 这是一个针对一个真正痛苦的问题的简单、优雅的解决方案的示例。但我认为微软已经通过 Vista 解决了一个真正有意义的普遍性问题,那就是用户帐户控制问题,以及如何帮助最终用户在日常工作中以更安全的方式操作。不可避免地,当您去安装程序时,许多程序需要提升的权限才能执行它们所做的一些事情,无论是写入文件、写入注册表,还是开发人员内置的其他魔法。
我们在 InstallShield 12 中所做的是,使安装开发人员可以创建更礼貌的安装程序,因为如果您在整个安装过程中需要多次授予管理员权限,而不是看到该对话框弹出 12、15、20 次,无论需要多少次,这是一个非常优雅的解决方案。我们将提示并让您能够提示一次这些权限,然后它将在整个会话中应用它们。
Robert,我知道在处理用户帐户控制功能时,这似乎是会对最终用户体验质量产生真正影响的领域之一。
RD: 是的。我的意思是,Vista 的主题之一是对实际安装在用户机器上的东西负责,因此无论您是否需要,您都可以免费获得用户帐户提示。因此,虽然从技术上讲,反复提示以询问是否应允许安装程序执行某些操作是可以接受的,但我们使其尽可能容易,并尽可能少地提出问题。因此,正如您所说,它使安装体验尽可能顺畅。
BC: 您知道,与此相关的是,我们认为真正会在开发人员考虑 Vista 时,特别是从安装角度考虑的列表中的第四件事是,微软更加关注确保开发人员签署他们的安装程序并将这些签名放入 MSI 中。Robert,在过去,人们是否做得很好?
RD: 他们做得不太好。我的意思是,部分原因是很难集成到开发过程和安装开发过程中,因此我们使其更容易,并且验证使安装的哪些部分需要签名更加清晰,无论是 set-up.Exe 本身还是他们正在安装的实际可执行文件,现在都容易得多。
BC: 是的。我认为我们刚才谈到的这两件事是相辅相成的,确保我们以一种对最终用户来说容易且开发人员能够很好地理解的方式处理围绕用户帐户控制的授权,同时也使将这些签名放入 MSI 中变得容易,以便最终用户毫无疑问地知道他们收到的东西是真实的,并且他们可以对其高度信任。
信任问题不仅在日常操作 Windows Vista 时有意义,而且当有人将新东西带入他们的 Vista 环境时,这尤其令人担忧,而 InstallShield 12 在使开发人员可以帮助实现这种信任方面发挥着重要作用。
现在,我们想要讨论的第五件事——坦率地说,这在软件开发领域还没有得到广泛实施——是人们如何测试。开发人员构建他们的代码并从每晚构建版本进行测试并不少见,但是当我与我们的一些客户交谈时,我越来越多地发现他们对按部署进行测试非常感兴趣,因此构建和构建您的代码,然后从中自动构建安装程序,然后测试最终用户体验到的产品的挑战是一种最佳实践,我认为围绕 Windows Vista 将在质量方面产生巨大的收益,特别是对于首批推出的应用程序。Robert,在您的一些经验中,您会赞同这一点吗?
RD: 哦,当然。我的意思是,我们一直看到的是,人们将安装视为事后才考虑的事情,因此通过将整个产品开发过程与安装开发过程相结合,我认为人们会更快乐,特别是对于 Vista 中引入的新规则。
BC: 我们在很久以前就开始关注 Vista,并与我们在微软的合作伙伴合作,以更好地了解这对安装意味着什么。无论是用户帐户控制,无论是重启管理器中的一些创新,无论是他们对将签名和证书放入安装程序的新关注,无论是他们对更严格的质量计划的关注,该计划涵盖了整个开发连续体,包括安装,我们清楚地看到,有许多重要的接触点可以让开发人员不仅与 Windows Vista 兼容,而且可以真正利用并真正利用这些新功能,以非常有意义的方式改善用户体验。
我们每隔几年才获得这样的机会。当 Microsoft Windows 操作系统发生转变时,安装世界也会随之转变。而这一次,安装方面发生了很多非常有意义的变化。对于应用程序开发人员和安装开发人员而言,InstallShield 12 的可用性来支持和利用这些 Windows Vista 特定的功能,我认为将是一个真正的优势,并有助于提高 Vista 的总体接受率。Robert,您同意还是不同意?
RD: 哦,当然我同意。
BC: 就是这样。这些是我们认为围绕安装很重要的前五件事,以及您可以使用 InstallShield 12 和从流程角度可以做的,以创建更好的安装程序并为最终用户创建更好的整体安装体验。
MV: 鉴于 Vista 是如此重要,为什么有人会考虑编写自己的安装例程?考虑到开发人员必须做的所有事情,是什么过程让他们走上了这条道路;在我看来,这似乎不是他们想要花费时间的事情。
BC: 这是一个公平的问题。我们在 Macrovision 的所有产品线中面临的挑战之一是,我们正在向非常聪明的人销售解决方案,他们习惯于自己构建软件解决方案。因此,当您想到安装在最基本的层面上是什么时,它只不过是将文件解压缩到目录中并开始使用它。但是,当您开始查看与将程序置于最终用户机器上的一致可用状态相关的所有复杂性时,很明显,自己做这件事,虽然对于第一代解决方案可能有用,但随着您的应用程序变得越来越复杂,随着您的客户数量的增长,以及当您开始考虑支持所有这些客户将面临的挑战时,它很快变得不可接受。Robert,从您的角度来看,您认为是什么驱动人们从编写自己的工具转向使用像 InstallShield 这样的工具?
RD: 嗯,我认为很多都是惯性。他们一直以来的方式是手工完成的。但我的意思是,这有点像我可以在我自己的打字机上键入所有字母,或者我可以使用带有拼写检查器和所有内置功能的文字处理器之间的区别。因此,我认为这只是习惯。但是,随着越来越多的要求,手工完成变得越来越不可行或越来越不是对人们时间的良好利用。因此,我们希望通过使用带有内置 Vista 规则的 InstallShield 12,带有所有最新单词的拼写检查器等等,他们将节省大量时间。
MV: 我看到的几乎每个应用程序都使用 InstallShield 包裹着它的安装过程。也许这对于公司应用程序本身来说并非如此,但我想知道,作为开发人员,我将使用与其他开发人员相同的安装例程,以便用户在部署多个应用程序时获得共同的体验,这是否有价值主张?
BC: 我认为对于整个软件开发社区,尤其是在 Windows 世界中,一个非常强大的吸引力是,最终用户对体验将是什么有一定的期望,并且由于 InstallShield 在市场上存在的时间有多长,以及我们在支持新的 Microsoft 技术方面一直保持一致,因此最终用户看到了 InstallShield,并且他们会获得一定程度的信心,知道“好吧,我有一个专业的安装和卸载体验。我知道当我完成此操作后,我的软件将处于我可以使用的状态”,并且开发人员在使用 InstallShield 时,随着他们从一个工作转移到另一个工作,他们会将这些技能带在身上,并将他们构建安装程序的特定方式带在身上。
随着时间的推移,这变成了一个良性循环,专业的应用程序和安装开发团队希望他们的产品交付方式保持一致。应用程序开发经理希望加快完成开发周期最后步骤所需的时间。支持经理希望产品安装方式保持一致,这样他们就不会接到很多支持电话。最终,运行组织的人员非常关注获得最高的客户满意度。
当您将所有这些归结起来时,其中很大一部分不仅取决于交付和销售的解决方案的质量,还取决于最终用户获得的第一个体验的质量。而第一个体验就是安装体验。所以,是的,我认为在整个软件生产商组织中,它背后都有一个非常强大的价值主张。
MV: 对于何时是开始为 Vista 开发的正确时间的先有鸡还是先有蛋的问题,您有什么看法?因为您会听到很多开发人员说,“嗯,当有很多平台时,我才会为 Vista 开发。” 您会听到买家说,“当有很多应用程序时,我才会购买 Vista。” 而且,您知道,如果我们让这种情况永远持续下去,什么都不会发生。
RD: 嗯,我的意思是,无论何时发生,开始为此进行计划都不会太早。当它的某种临界质量发生时,您不想措手不及。
BC: 嗯,我可以给您一些我们看到的指标。我们在 2006 年初就推出了 InstallShield 12 进行销售。仅从客观的角度来看,如果整个市场对 Vista 不感兴趣,我认为我们不会看到围绕 InstallShield 12 的普及程度,该产品的关键信息是“为 Windows Vista 做好准备”。因此,像许多事情一样,我认为有思想的应用程序开发人员认识到,虽然它可能今天还不存在,但他们需要将其纳入他们的视野——他们的计划视野不是两周的视野;而是六个月、一年的视野。
因此,从我们的角度来看,我们的目标是帮助人们创建针对当今技术优化的安装程序,以便当他们需要将曾经交付给 XP 的同一应用程序交付给 Windows Vista 时,他们可以获得针对 Vista 优化的用户体验,无论它占他们目标受众的 2%,还是 50%,还是最终达到 100%。
MV: 您是否洞察到人们是将他们的 XP 应用程序迁移到 Vista,还是他们正在构建真正利用 Vista 全部功能的新应用程序,还是介于两者之间?
BC: 我认为介于两者之间。我认为再一次,您有微软成千上万非常聪明的人多年来努力工作,以确保旧版应用程序能够良好运行。您可以将旧事物呈现为新事物的一个领域是围绕安装。因此,为 Windows XP 编写的东西,但您想要创建一个与 Vista 高度集成的安装体验,他们要做的第一件事是,他们会接受它,他们将运行 InstallShield 12 验证检查器。他们会看到他们离目标有多远,可能会实施一些我们之前谈到的针对 Vista 的技巧,然后将其推出。
因此,从我们所看到的,我们看到很多人正在重新打包他们现有的应用程序,以便它们不仅可以在 Vista 上运行,而且他们将能够利用 Windows Vista 的一些特定于安装的功能。因此,最终用户获得的第一个体验,无论是他们只是在试用 Windows Vista,还是他们正在进行更积极的推广,第一个体验都将是好的,他们会回到供应商那里并说些高兴的话。
MV: 好的。最后一个问题,两位。我认为大多数人可能在某种程度上熟悉 InstallShield,但是人们应该特别关注 Version 12 中的哪些内容?
BC: 嗯,我认为我们几分钟前谈到过。在我们完成 InstallShield 12 开发过程时,我们非常努力地做了几件事。其中之一是与微软合作,在市场面前领先一步,帮助人们开始为 Windows Vista 做好准备。因此,该产品在市场上出现时,Vista 还在测试版中,我们一直与开发社区密切合作,帮助他们了解 Vista 的影响,我们在围绕 Windows Vista 的安装市场中真正占据了领导地位,我认为鉴于现在是 2006 年 11 月,并且在未来三个月内 Vista 将开始发生神奇的事情,我认为这是我最关心的事情。
我们认为我们的产品(软件开发人员和安装开发人员)的最终用户想要注意的第二个要素是,InstallShield 12 也与过去几个月内出现的大量新的 Microsoft 技术保持同步。Robert,您是否能想到一些您想提及的内容?
RD: 哦,嗯,总是会有新版本的 MDAC 和 XML 处理器等等,所以我们确实会努力跟上这些变化。
BC: 因此,对我们来说非常有意义的第三个领域是,在过去两年中,我们一直在快速推进新版本的 InstallShield,从 10 到 10.5、11、11.5 和 12,而这仅仅是从 2004 年 5 月开始的。因此,到 2006 年,InstallShield 12 推出时,我们投入了大量精力来解决客户报告的问题队列,围绕可用性和健壮性的增强以及一些——您知道,您获得的所有不可避免的市场反馈。
因此,到目前为止,产品上市的前四到五个月的最终用户体验对于 InstallShield 12 来说非常积极。因此,如果人们对多年前的 InstallShield 版本有过体验,并且他们想知道,“嗯,Macrovision 团队为使 InstallShield 在 2006 年真正焕发活力做了什么?” 我们投入了大量精力,并且在我们的社区中花费的任何时间都将显示一个最终用户群体对这个新版本非常满意。我们为我们在支持 Windows Vista 方面所做的工作感到特别自豪,以努力跟上微软推出的新技术,并为应用程序开发人员提供我们认为可以为他们准备的最高质量的安装开发工具。
MV: 先生们,感谢今天分享您的见解,我们期待在 2007 年看到您在大量 Vista 应用程序上的工作成果。
BC: 谢谢。
RD: 谢谢,Michael。
MV: Macrovision 全力帮助数字内容制作商保护、增强和交付他们的内容。有关更多信息,请访问 www.macrovision.com。
最初发表于 Queue vol. 5, no. 1—
在 数字图书馆 中评论本文
Catherine Hayes, David Malone - 质疑评估非密码哈希函数的标准
虽然密码哈希函数和非密码哈希函数无处不在,但在它们的设计方式上似乎存在差距。存在许多针对各种安全需求而提出的密码哈希标准,但在非密码方面,存在一定的民间传说,尽管哈希函数历史悠久,但尚未得到充分探索。虽然针对真实世界数据集的均匀分布非常有意义,但在面对具有特定模式的数据集时,这可能是一个挑战。
Nicole Forsgren, Eirini Kalliamvakou, Abi Noda, Michaela Greiler, Brian Houck, Margaret-Anne Storey - DevEx 在行动
随着领导者寻求在财政紧缩和人工智能等变革性技术的背景下优化软件交付,DevEx(开发者体验)在许多软件组织中越来越受到关注。技术领导者凭直觉接受良好的开发者体验可以实现更有效的软件交付和开发者幸福感。然而,在许多组织中,为改善 DevEx 而提出的倡议和投资难以获得支持,因为业务利益相关者质疑改进的价值主张。
João Varajão, António Trigo, Miguel Almeida - 低代码开发效率
本文旨在通过展示使用基于代码、低代码和极端低代码技术进行的实验室实验结果来研究生产力差异,从而为该主题提供新的见解。低代码技术已清楚地显示出更高的生产力水平,为低代码在短期/中期内主导软件开发主流提供了强有力的论据。本文报告了程序和协议、结果、局限性和未来研究的机会。
Ivar Jacobson, Alistair Cockburn - 用例至关重要
虽然软件行业是一个快节奏且令人兴奋的世界,其中不断开发新的工具、技术和技巧来为商业和社会服务,但它也很健忘。在快速前进的匆忙中,它容易受到时尚的异想天开的影响,并且可能会忘记或忽略针对它面临的一些永恒问题的经过验证的解决方案。用例于 1986 年首次引入,后来普及,是这些经过验证的解决方案之一。