必威体育下载克里斯蒂安·海尔曼

贴有“外展”标签的帖子

英国政府拒绝升级IE6——谁该负责?

星期四,8月5日,2010

早在今年6月,Inigo Media Ltd .的丹向英国政府请愿,鼓励政府部门从IE66223人签字。

不久前我们女王政府的答复当然,这是个禁忌。

政府拒绝了

无视可怕的公关胡言乱语,再次向我们保证政府严肃对待安全问题(其实他们并不严肃)将个人数据文件留在火车上)它实际上很有趣:

复杂的软件总是会有漏洞,有动机的对手总是努力发现并利用它们。 没有证据表明,从最新的完全补丁版本的Internet Explorer升级到其他浏览器将使用户更安全。.定期的软件补丁和更新将有助于抵御最新的威胁。

当然,这是一个很好的例子,说明出血明显,但有趣的是,没有证据表明IE6使计算机更安全”。我想知道为什么是微软然后继续宣传IE8更安全吗?真的,IE6可以获得所有的补丁大规模攻击,但钓鱼警告和其他界面变化在最新的浏览器没有添加。因此,我们保护用户在引擎盖下,但我们仍然让谷仓的门敞开,以防社会工程攻击。像火狐这样的恶意软件警告,铬合金或更现代的IES会有帮助(除非它影响广告时删除)如果没有证据证明这对苹果来说是个好机会,谷歌和Mozilla收集一些数字并发布它们——不是在博客或其他“大众”媒体上发布,而是在为政府和大公司做IT决策的人阅读的杂志上发布。

安全修补不是问题?

随后,政府声明继续强调他们与雷德蒙德在安全相关事宜上的良好关系:

政府继续与微软和其他互联网浏览器供应商合作,以了解 HMG,包括Internet Explorer,我们欢迎微软继续为所有Internet Explorer用户提供最快部署的安全解决方案。

对于他们是什么,有一个明显的缺乏信息-其他供应商或措施。我猜测,谷歌正开始通过Chrome和在线办公套件与各国政府接洽。让我们记下这里的一件事:很快地向所有IE用户部署修复程序是没有问题的——我们将回到这一点。

没有集中的安全授权?

各部门负责根据政府信息保障政策和技术咨询管理其IT系统的风险。 塞斯格,国家信息保障技术局。这个建议的一部分是,定期的软件补丁和更新将有助于抵御最新的威胁。应该由各个部门根据这一明确的指导来决定如何最好地管理风险。

所以,等等——在此之前,我们被告知,由于微软提供了很多帮助,补丁可以很容易地持续修补,现在我们知道,真正遵循这些建议是由部门决定的。必威体育下载这不是授权,但只是一个指导。这意味着实际上可能有非常过时的IE6当人们在候诊室抱怨时,IT基础设施的使用在很多部门的优先级列表中是很低的。这意味着,如果升级和补丁不是中央强制要求的,我们就不可能在政府机构中拥有安全的、同质的IT环境。

一个部门的决定?

公共部门组织可以自由识别支持其业务需求的软件,只要它符合适当的标准。也,系统升级的成本效益取决于各个部门需求的具体情况。

这意味着一个部门可以切换到其他软件,特别是当他们可以省钱的时候?这里的重点是“适当的标准”,这可能意味着EULA.或者什么,确切地?另一个大的"哦,好吧,我们真的不能那样做,我们能不能“这里是系统升级的成本效益。在许多Microsoft系统中,这可能意味着所使用的硬件不足以支持Windows 2000或XP1.

升级是个问题?

这不是简单的 HMG部门在其系统上升级IE版本。将这些系统升级至 IE8可能是一个非常大的操作,花了几周时间测试并向所有用户推广。

所以如何?早些时候我们听说修补IE不是问题,那么替换IE是一个怎样的问题呢?当然,除非我们在这里承认它是基础设施和硬件,在千禧年左右被定义和设置在石头上,当时所有人都害怕Y2K并相信IE6/XP套件永远不需要升级。

没有时间测试?

另一个问题似乎是测试我们的系统很困难:

测试当前使用的所有Web应用程序 HMG政府部门可能要花费数月时间,纳税人可能为此付出巨大代价。因此,在许多情况下,继续使用更具成本效益 IE6依靠其他措施,例如防火墙和恶意软件扫描软件,进一步保护公共部门互联网用户。

对我来说,有一些系统是很久以前以短视的方式构建的,因为IE6当windows 2000成为新的黑色系统时每个咨询师都接受了微软认证培训突然间成为了真正的专家能够预测未来10年的发展。因此,我们没有修复和更换这个系统腐朽的核心,而是用闪亮的铰链和前面的保安增加了新的门,一切都会很好。这就像为一个人们在舞池里打架的俱乐部雇佣保镖。

防火墙和恶意软件扫描软件的迷人之处在于,它使最终用户的生活比冲浪更糟糕。IE6已经是。当我切换到Mac/Linux时,我最喜欢的事情之一是我的处理器现在可以处理我想做的事情,而不是分析我的流量和传入的请求,并且我可以在不被“扫描所有文件”打断的情况下工作。两小时后再来。

该怪谁?

政府的回答不仅是可以预测的,但(在一个非常短视和有限的观点)也可以理解。没有人愿意承认自己受骗了。咨询师告诉人们,网络永远不需要改变,但要欺骗人们——没有软件是100%的未来证据,如果不升级10年前的硬件,你就不能在上面运行办公室。我们这些天所遇到的创新速度和丰富的信息在拥有100kb容量的系统上是不容易消耗的。JPG在主页上是一个巨大的决定,意味着你失去了三分之一的访问者。

有趣的是,在这个问题上,最容易也是最受欢迎的网络极客目标——微软——不应该受到指责。他们提供一种简单的方法来支持他们的新软件IE6使用元标记或(更合适的是)服务器发送的头(在本例中是IIS)。因此,软件为IE6每个部门都要进行测试吗IE8微软为我们解决了这个问题。政府可能甚至不知道这一选择,这正是它变得有趣的地方:

这种对明显升级的反应是我们的错

在某种程度上,我不得不说,作为一名开发人员,我在网络上工作了这么多年,作家,博客作者和编辑,我们是第一个被指责在大公司和政府中没有运动的人。

当Web设计和Web开发界的显赫人物只展示使用某种新技术而不是真实世界的例子时,为政府机构工作的开发人员不会被派去参加会议或得到他们的书籍也就不足为奇了。

当著名的设计师们说为一家大公司或政府工作是“无聊的工作”,“一个有创造力的人在公司里处理政治是没有意义的”时,我真的想知道我们是否已经变得自立和自满了。我们从动摇网络发展的基础开始,让人们理解网络作为媒介的巨大机遇,以及开放式网络技术作为工具代表为我们自己而不是为最终用户创造的巨大机遇。当某些事情不起作用时,会有更多的用户更沮丧,这是什么?知名设计博客的读者,还是必须在网上缴纳议会税的人?

当工业级研究来自雅虎等公司的信息和工具时,谷歌和微软从来没有被一人陆军公司阅读过,甚至更糟的是,他们以更明亮但不太一致的方式复制,并且被认为是更好的(直到一人陆军一个月后厌倦了它,并且从未更新),那么其他公司也不相信这些解决方案也就不足为奇了。此外,这意味着这些公司——正如我们现在所知道的,真正形成和运营互联网的公司——将停止分享他们的诀窍,或者不再花费时间和金钱,以一种对不在公司内部的人有意义的方式将其记下。

转移我们的注意力

我认为,唯一能够阻止英国政府未来做出类似反应的方法,就是转移我们的注意力:

  • 不是设计原型和虚构的网站来展示某种技术,而是让我们需要实际的生产案例研究及其效果(我记得有一个@media展示了blogger的重新设计,以及有多少流量转移到CSS拯救了公司——更多的是,请)。
  • 请微软邀请专家,通过现代解决方案主持专家视频和教程,并将其分发到客户网络上
  • 对政府网站进行大规模比较,并赞扬一些网站做得很好(没有什么比竞争力更好的了)
  • 收集转换到开源解决方案的成功案例,以及它如何节省金钱和时间
  • 把一个可怕的IE6只有解决方案,并显示它的外观和工作方式,如果HTML5CSS3得到支持
  • 停止在画布元素上绘制闪亮的像素,称之为酷HTML5解决方案,而是使用HTML5
  • 不要再为人们重新设计他们的博客而鼓掌了,相反,要把那些在大型金融系统或地方政府等环境中发挥了重要作用的人变成公众关注的焦点

我已经在1:1的讨论中讨论了这些和其他观点很多年了,我还没有看到这些领域的运动。马上,我们很高兴地认为,我们在创新,并推动极限,在现实中,我们让彼此去“呜,呜,呜”,而大量的观众,可以受益于我们的知识是卡在网上的经验真的很糟糕。我想在我的手机浏览器上支付我的市政税,并且在我需要的时候得到通知——现在没有办法做到这一点。

向开发商伸出援手——伦敦天空电视台(Sky)的一场“棕色包袱”演讲

星期一,6月15日,二千零九

上周,我在午餐时间参观了伦敦天空广播公司(Sky)的“棕色包”(brown bag)节目。他们的创新主管,保罗·凯恩让我过来谈谈API设计,的历史钇铝石榴石以及如何让创新和开发人员拓展在公司和媒体中发挥作用的一般技巧和技巧。演讲的一部分是下面的演讲。

以下是详细说明:

伸出手

策略和想法

  • 第三方开发人员使您的产品更好
  • 接触他们可能很困难
  • 以下是一些过去行之有效的想法和策略

第三方开发人员是一股神奇的力量,可以使您的产品更好地与您想要联系的用户更相关。要达到这些目标可能有点令人头痛,今天我将谈谈过去行之有效的一些想法和策略,其中一些我希望能得到更一致的遵循。

开放的重要性

  • 开放您的数据和服务可以扩大您的覆盖范围
  • 开发人员很乐意同时使用和测试您的产品
  • 您不能测试所有环境,别人可以

首先要注意的是,对开发人员开放会增加你的影响力,使你更容易创建一个可靠的产品。使用您的API或数据源的每个开发人员都能接触到您无法访问的访问群体,并让另一个开发人员查看您的产品。

开发人员很乐意指出问题,并且实际上也会报告问题——用户对这些问题并不那么直言不讳。这意味着许多公司在没有意识到这一点的情况下,很高兴地用非常不可用的产品污染了网络。您不能预期所有要测试的环境和用例——如果您向全世界开放您的数据,那么使用它的开发人员可以为您做到这一点。

用于Web的建筑

  • 独立于平台
  • 皇家经济学会Tful
  • 以可移植格式发布所有文档和代码示例

首先要确保的是,要实现最终的目标,您应该集中精力构建用于web的系统。这意味着首先您的web服务应该是平台独立的。

休息为你做这个。如果你建立了一个系统,它可以返回数据超文本传输协议实施者可以使用浏览器,在命令行或任何他们想要获得您的信息的框架上卷曲。

你的文档,关于API代码示例应该以可移植且独立于平台的尽可能简单的格式提供。HTML,PDF和压缩代码可以做到这一切——您不能期望人们下载并安装一个SDK就像一个软件——我们是忙碌的开发人员,憎恨用不必要的装置污染我们的机器。

思考终结点

  • 统一资源定位地址结构
  • 易于理解的方法名称和参数
  • API的版本控制

A的成功休息基于API起落落与终点的质量有关。确保您的URL是人类可读的,并且有意义。一个好的web服务应该可以在浏览器栏中导航,而且我不需要阅读文档来理解我想要去哪里。

保持你的方法名和参数短小精悍——没有人喜欢长url,因为浏览器栏中还没有标签完成(还没有)。

一件非常重要的事情是API统一资源定位地址.如果您发现了一个bug,或者在新的依赖关系出现时需要在新版本中重命名某个东西,那么您不希望破坏基于旧版本的实现。A v2 v3 v4在统一资源定位地址不会很长,但会阻止这种情况的发生。

考虑输出

  • 提供人们需要的数据——大量的数据是好的,但不要添加只在内部有意义的信息。
  • 提供人们可以使用的数据格式:XML,RSSjson
  • 允许JSON的回调参数用作杰森- p
  • 可能允许对象传输/ID杰森p调用
  • 允许人们关闭诊断并根据特定需要进行过滤

这些是非常重要的一点。一般来说,最好在API中提供尽可能多的数据。但是,如果该数据对第三方开发人员没有用处,或者根本没有数据文档,那么它不应该在其中,因为它只是分散了必要信息的注意力。雅虎音乐API例如结果中有一个catzilla和hotzilla id–我不知道那是什么。

数据格式问题很简单,XML对于一个全脂的结果,RSS为了方便人们使用数据杰森对于像我这样不喜欢涉水的人XML与名称空间。

杰森-P是杰森通过一个回调参数,最终用户可以在JavaScript中立即使用数据,而不必使用代理来访问内容。回调ID是一个主意我前面提到的.使用的问题杰森-P和生成的脚本节点是您永远无法确定几个调用的返回顺序。因此,最好允许在调用中发送和返回一个ID,这样我就可以在回调方法中将数据与请求匹配起来。这可以简单到在结果集中重复请求项,但真正的事务ID会使它更加方便。

诊断部分API打电话可以帮助我找出出了什么问题或发生了什么事,但如果你能关掉它,那就好了。钇铝石榴石举个例子,检查这个电话VS这一个–区别在于诊断= false参数。一般来说,允许开发人员过滤返回的数据量是一个好主意(F.E.用一个数量参数),因为在某些环境中,每个字节都是计数的。

提供简单的访问

  • 对于只读的数据API,不必费心验证——只需使用开发人员密钥
  • 有沙箱,开发者可以玩而不需要注册

没有什么比在查看您可以访问的内容之前必须进行身份验证更烦人的了API.因此,最好尽量减少身份验证的痛苦。

一个好主意是将对不同开发人员的访问进行集群化,或者使用一个简单的访问版本。Vimeo非常擅长提供不同的API所以雅虎地图.弗里克提供一个API资源管理器还有监护人API还有一个控制台,用于运行和过滤请求。劳斯莱斯当然是钇铝石榴石慰问.

文档

  • 提供正确的文档,便于阅读和导航
  • 提供小测验和快速介绍
  • 拥有一个文档团队——开发人员不是编写人员,他们与产品的距离太近,无法真正编写可读的文档

这些都不需要更多的解释。简单地说,当开发人员遇到困难、遇到更多挫折和难以理解的信息时,您不应该轻视文档。

就个人而言,我认为您不应该费心本地化文档,除非您需要向不同的市场提供不同的内容,并且必须向开发人员解释为什么有些内容对他们不可用。让博客为你在当地市场做广告。

演示代码

  • 提供演示代码和sdk(如果您确实需要)
  • 具有出色的演示代码-‘看,只有两行代码'
  • 提供不同的语言演示

演示代码是一个非常强大的工具,它展示了开发团队的质量。当然,每个开发人员都可以快速地将代码组合起来并完成一些工作,但是您的代码应该能够吸引开发人员使用您的系统并创建优秀的解决方案。

您的演示代码不应该有任何安全漏洞,可访问性遗漏或只是糟糕的代码实践。这段代码是您向其他开发人员发布的广告——它应该很容易复制和粘贴,并且可以快速运行,但是您不应该留下安全问题和全局变量的痕迹。

如果您提供了复制和粘贴示例,请确保它们在您的环境之外工作—所有到依赖项的链接都应该是绝对的,而不是相对的(最多从http开始),这样您就不会收到关于代码不能工作的抱怨。我发现最好是列出一个完整的例子,然后一段段地解释到底发生了什么。

一致性是这里的关键——保持一致的代码标准,您不会混淆实现者。除此之外,您的代码应该尽可能容易地定制——使用config对象来实现这一点。

能够响应

  • 是否有一个被监控的邮件列表/论坛
  • 注意人们对你的代码所做的事情(blogsearch,推特)

开发人员会为您做很多事情,没有什么比让专家解答他们的问题更让他们满意的了。与你的专家开发人员或者至少是可以问对人的人建立一个邮件列表或者论坛。监控正在发生的嗡嗡声,然后插话给予表扬或把事情理顺。没有什么比看到你的tweet关于你用一个特定的实现构建的更酷的了API从官方账号或相关专家那里转发API.

另一方面,没有什么比一个真正的实现问题在几天内得不到解决更致命的了。可见,为人们服务,你将拥有快乐的用户。

邀请人们来玩

  • 邀请选定的人参加一个私人测试-这是惊人的强大,因为人们的诚信将为你工作-或者你会得到很好的反馈什么要改变。
  • 让人们有机会在发布之前构建“官方mashup”,以便在站点和新闻发布会上展示。
  • 可能在开发者日发布

这很重要。释放一个API是一回事,让全场观众都信任的其他人支持你的决定,会产生更大的影响。事先向一些人开放beta,吃一把API人们可以在Twitter或他们的博客上预先使用并拥有可以发布的密钥——所有这些都将产生相当大的影响。

卫报在发布他们的API时做的很好。它也适用于产品发布,如Spotify所示。让人们建立官方博客报道的官方混搭也可以让这些人写一些“制作”的文章和博客文章,这些文章和博客文章展示了你以前可能没有想到的技巧和窍门。

你可以更进一步——每隔几周左右就有一些没有文档记录但很酷的新特性(或即将发布的特性的预览),并将它们发布到twitter或开发人员列表中。很多开发人员都很高兴成为第一个向世界展示API正在开发一些新东西,并将通过编写自己的文档来解决不支持的问题。

与其他人协作API提供者。

  • 向其他人伸出援手API提供者
  • 参加讨论相同话题的小组
  • 创建一个开放的钇铝石榴石表,将您的数据添加到gnip

最后但并非最不重要的是,记住你并不孤单。我们都发布API,可以从彼此的错误和收益中学习。必威体育下载这个演示是活生生的证据,我并不是唯一一个想接触那些想加入数据网络建设和维护者行列的公司的人。一个开放的钇铝石榴石表的编写速度非常快,可以让开发人员在不必担心限制和缓存的情况下使用您的数据。钇铝石榴石访问限制和服务器为您做这些。

翻译或本地化文档?

星期五,12月19日,二千零八

我们刚刚在这里开了一个有趣的会议,讨论如何用不同语言翻译文档的计划。我是文档的超级粉丝,已经做过几次演讲,讨论优秀文档的原因和方式。从本质上讲,“好的准则解释了它自己”,这是一个巨大而傲慢的谎言。您不应该期望使用您的代码的人与您处于同一级别——这会破坏编写代码的目的。

事实上,太多的软件根本没有合适的文档,更不用说翻译成不同的语言了。这是因为翻译文档时存在一些问题:

  • 价格–翻译成本很高,这就是公司开始众包的原因。
  • 质量-众包意味着你需要信任你的社区-很多(看看Facebook的翻译应用在评论中显示了很多翻译机构的垃圾信息-这不是一个好的开始)
  • 更新问题本质上,你试图翻译一个移动目标。有书,课程和大型企业级软件的文档在一定时间内是固定的。使用较小的软件和API,文档更改非常频繁,您需要找到一种方法来提醒翻译人员更改。如果您的翻译是众包的,这是另一个请求之上的请求!
  • 保持同步–不同的翻译需要不同的时间。把英语翻译成德语是相当直截了当的,而把英语翻译成印地语或普通话则有点难。这意味着,当主要文档发生变化时,翻译工作可能只完成了一半——这对于那些花时间翻译过时材料的人来说是非常令人沮丧的。
  • 关联性–您的文档通常涵盖您的完整报价–但是在不同的市场,您的产品的某些部分可能不可用或没有任何意义。翻译这些部分毫无意义,但这也意味着,跟踪翻译的整体进度变得相当困难。

所有这些都是需要考虑的事情,而且不容易得到。坦率地说,很容易浪费很多时间,翻译的努力和金钱。它让我想知道是否有真的?是需要翻译还是投资本地化框架没有多大意义。你要让你的英语产品在其他地方的人都能买到,你真正需要的是:

  • 地方专家–这可能是为你工作的人,或者是一群志愿者,他们看到了你的产品对他们市场的价值。
  • 轻松访问协作工具–这可能是一个wiki,邮件列表或论坛。任何能让人们用自己的语言和对世界的看法做出贡献的东西。如果这些工具使协作变得简单而不需要跨越障碍,人们将帮助您使您的产品在他们的地区更容易理解。
  • 局部参考点–这可以是一个博客,或者是你公司用当地语言的小规模存在,或者是与已经建立的当地合作伙伴或集团的合作。
  • 鼹鼠-大多数国际开发者社区已经有了他们最喜欢的地方。与其建立一个可能不会被使用的频道(并不是每个国家在美国公司为他们提供新频道时都会发出“wahey”的声音),还不如让说那种语言并且你信任的人出现在这些频道上,倾听人们的需求,并针对您的文档提供正确的建议。

你怎么认为?你有没有这样的例子:哪些地方做得很好,哪些地方起作用了,哪些地方不起作用了?我发现了两个: