2KB项目,专业的源码交易网站 帮助 收藏 每日签到

以开放的思路设计软件 —— 记 CKEditor 的设计历史

  • 时间:2019-01-23 18:29 编辑:2KB 来源:2KB.COM 阅读:361
  • 扫一扫,手机访问
  • 分享
摘要:
CKEditor 英文原文:Designing Software in the Open

去年,我介绍了我们新的内容编辑器CKEditor 5 的一些细节,将会在2016年面市。此后,我们在软件开发过程中取得了很好的进展。我们已经差不多完成了编辑器核心模块的基本组件的编码工作。

到目前为止还有一个方面没有重点强调,那就是(从一开始)我们一直秉承开放的原则在设计CKEditor 5,因此任何人都可以加入来帮助我们或者简单地分享他们的意见也可。下面让我来给大家分享更多关于CKEditor 5的细节。

历史背景

这是一个个人在"社区项目"中成长变化经历的故事.

初期: FCKeditor 0, 1 and 2


FCKeditor 的最初 logo

在CKEditor的初期(那时还叫做“FCKeditor”), 大约是2002和2003, JavaScript仍然是一门很神秘的语言. JS主要被用于验证表格和实现一些简单的UX技巧, 例如显示/隐藏网页的一部分. 那个年代, 实现大型JS项目是很疯狂想法, 尤其是考虑到那时候的主流浏览器是IE5.5和网景.

开源技术在那时也不像现在这样在开发者之间广泛使用. 不仅通过网络工作很慢, 而且那时也没有像GitHub这样的地方帮助人们在一起写代码. 不过那时候也有一些可以集中"免费分享软件"工作的架构,这些架构通常基于已经不复存在的Freshmeat或还奇迹般活着的SourceForge之上.

不管怎样,我一直在工作,通过我一个人的努力,CKEditor第一个版本诞生了。我决定将它开源并使用LGPL协议,并且将它最终发布到了SourceForge上。当时它是一个CVS项目,后来我将它迁移到了SVN上。

尽管我没有期望能从社区活动中获取很多,但是由于特别是来自浏览器编辑器的技术挑战立即带来了好处,这是开源带来的。除了能获得一个很大的用户群,我还可以获得很多反馈,这些都能使这个项目越来越好。

当FCKeditor 2开始时, 我已经从项目中积累了很多经验. 一个很棒的翻译团队出现, 帮忙对编辑器进行本地化工作.尽管我们没有一个很大的开发团队, 但是各地的很多人紧密的跟踪项目开发,这提供了很大帮助 - 例如 Alfonso, 他已经跟随这个项目十几年了 :)

很多迹象也表明我们正在做正确的事情. FCKeditor 达到了 100万下载量. 并被评为Sourceforge的月最佳项目. 一个为我购买Mac Mini来实现编辑器对Safari兼容的1000美元众筹项目2天就完成了...我们觉得很有乐趣.

CKEditor 3 and 4

新的CKEditor logo

对于第三版,我们决定让它更加开放。我们启动了一个名为“Open Development Effort”的项目,“试图让V3的开发在所有层面公开:讨论,研究,设计,编码,文档,集成还有赞助”。这是一个很有趣的方法,也势必能帮助项目更好的发展。即使现在我们不得不讨论对项目进行改名。

CKEditor3获得成功后的两年,我们开始了V4版本的编码。当时的竞争已经非常的激烈。很多项目打起了“让我们干掉CKeditor”的口号。所以我们开始不再大势宣传我们的计划,特别是我们开始进行内联编辑的开发,这个将会是我们的杀手锏。我非常后悔没有对社区开放我们新版本的更多细节,但是我们的V4版本最终被认可是一个很好地解决方案,甚至比以前的版本更加成功。

过去的经验:我们所学到的

使项目所有的内容都开源,而不仅仅是代码。把东西都记录下来,并邀请大家都来参与。

上面的经验关键的地方在于:

  • Open Source FTW:开源的回报。你将从一个很大的用户群中受益,用户都会主动来帮助你并提供反馈意见。我们会得到一个经过更好测试,更安全,更合理设计的软件。

  • 从第一阶段就开始开源:在项目的开始阶段就邀请更多的人参与。越多人参与设计,设计得就会更好。不要以为你懂得所有细节。

  • 用文档记录所有内容:很多时候,我们将很难做出一个正确地决定。很多在公共的场合的讨论将会帮助我们理解并判断当初的决定。

  • 注重质量:虽然做原型来“卖”想法很容易,但一旦出现第一个问题,往往人们会感到很失望。我们不应该追求数量,应该专注于做有价值高品质的项目。

  • 不要在意竞争对手:竞争对手经常复制你公开的项目信息的优点,来使他们自己受益。他们经常会这么做。这就是创新者和复制者的区别。

不要在意竞争对手。成为一个创新的人,让别人一直在后面追赶。

CKEditor 5:设计开源

我们将以往的设计和编码经验运用到开源的下一代编辑平台上。

铭记我们以前的经验教训,我们从去年开始了CKEditor 5的开发。在项目最开始阶段,我们围绕项目的各个方面在网上展开了讨论。一些关注者开始从各处给予了反馈,现在蔓延到我们社区了。

设计存放位置

为了将设计进行公开,寻找一个合适的设施(软件,服务器)是非常重要的。经常设计意味着原型,我们必须寻找一个地方既可以存放代码,又可以进行讨论,还可以存储过程文档。于是我们在GitHub上面建立了一个专用的仓库:

ckeditor5-design.

现在为止,主要讨论的问题发生在the issues pages of the design repo. 最近,许多CKEditor 5 UI和UX方面的工作已经完成。一些基础编码方面的讨论也在那里,例如是否使用ES6模块,或者代码风格等。如果你想参观我们的工作,或者参与这个项目(这是最重要的),你一定要在那里留下你的建议。

编码存放位置

也许现在还有点太早,但你也还是可以稍微看看我们的代码。现阶段虽然还没有可供演示的demo,但是很多关键性的代码我们已经完成。

CKEditor 5项目被分成了几个单独的仓库。为了帮助用户进行引导,你可以从GitHub上的 ckeditor5 仓库开始。这个仓库是主要用来编译和测试运行的,而且他集中了开发团队的工作流程。更多地说明可以在README 文件中找到。

接下来是什么?

CKEditor 5马上就要发布了!现在是共享你反馈的最佳时刻,加入我们吧!

我们正在完成CKEditor 5第一个阶段的开发。基础功能正在形成,我们很快将进行实用性的测试。现在整个团队都非常兴奋。

只要我们一旦有了实际东西进行展示,我们就可以进一步公开讨论CKEditor 5的代码以及基础方面的细节。这篇文章是证明任何人都可以参见,并帮助我们设计软件,这一举措将对人们在网络上分享他们的知识产生根本性变化。

从现在开始加入CKEditor 5(CKEditor 5 design repository)的设计吧。

本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接。 2KB翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。


2KB项目(www.2kb.com,源码交易平台),提供担保交易、源码交易、虚拟商品、在家创业、在线创业、任务交易、网站设计、软件设计、网络兼职、站长交易、域名交易、链接买卖、网站交易、广告买卖、站长培训、建站美工等服务

  • 全部评论(0)
资讯详情页最新发布上方横幅
最新发布的资讯信息
【计算机/互联网|】Nginx出现502错误(2020-01-20 21:02)
【计算机/互联网|】网站运营全智能软手V0.1版发布(2020-01-20 12:16)
【计算机/互联网|】淘宝这是怎么了?(2020-01-19 19:15)
【行业动态|】谷歌关闭小米智能摄像头,因为窃听器显示了陌生人家中的照片(2020-01-15 09:42)
【行业动态|】据报道谷歌新闻终止了数字杂志,退还主动订阅(2020-01-15 09:39)
【行业动态|】康佳将OLED电视带到美国与LG和索尼竞争(2020-01-15 09:38)
【行业动态|】2020年最佳AV接收机(2020-01-15 09:35)
【行业动态|】2020年最佳流媒体设备:Roku,Apple TV,Firebar,Chromecast等(2020-01-15 09:31)
【行业动态|】CES 2020预览:更多的流媒体服务和订阅即将到来(2020-01-08 21:41)
【行业动态|】从埃隆·马斯克到杰夫·贝佐斯,这30位人物定义了2010年代(2020-01-01 15:14)
联系我们

Q Q: 7090832

电话:400-0011-990

邮箱:7090832@qq.com

时间:9:00-23:00

联系客服
商家入住 服务咨询 投拆建议 联系客服
0577-67068160
手机版

扫一扫进手机版
返回顶部