推动Web向前发展

你可以让web变成你期望的那样。

喜欢web标准,也想要回馈社区,却不知道从哪儿下手? 让我们从这里开始吧。

不管你是一个天才web开发者、从table和font时代走过来的web老枪、还是一个骨灰级的电脑技术爱好者,都可以通过很多途径来回馈web平台,以下列出来的这些,任何人都可以去做。

我们的目标是让任何人都可以很容易的上手,开始为web这个平台做贡献,不管是去深入学习背后的工作原理、把经验分享给更多的人、还是编写具体的规范。web的成长源于你这样的贡献者,因此我们想让你们这些贡献者回馈的时候变得更加方便。

其他版本:Englishعربى

炼级

在处理工作相关的技术问题上你已经十分厉害了,接下来让我们投入到社区中去吧!

学习

不断变化是web的一个重要特点,当这些变化发生的时候,我们需要迎头赶上。以下是一些非常有用的资源,可以让你了解浏览器工作原理,掌握他们的最新动态和特性更新。

紧跟浏览器们的步伐

在Twitter上Follow这些帐号

@oDevRel (Opera developer relations), @ChromiumDev (Chrome developer relations), @mozhacks (Mozilla's web developer outpost) & @IE (Internet Explorer Team)。

了解浏览器的工作原理?

其他学习资源

参考文档/wikis

心痒了?

快速过一遍这些文章和tweets,你会发现有些东西和你理解的不一样!万事开头难,相信我们,只要你迈出了第一步,一切都会变得很容易。

我要参与!

下面是一些和你志同道合的开发者:

多接触志趣相同者

出席一些本地的专业会议是个不错的选择,可以与其他开发者的相互学习、共享资源、思想碰撞、建立合作关系。MeetupLanyrd 这些网站可以帮你找到你所在区域的会议。国内比较不错的有w3ctechwebrebuildd2论坛等。

寻求帮助

在IRC上问问题、参加讨论

如何使用freenode和irc

  • Freenode IRC 频道: #html5 / #css / #javascript / #whatwg / #jquery / #yui / #dojo / #web / #bbg (on irc.freenode.net)
  • Mozilla IRC 频道: #js (on irc.mozilla.org)

怎样寻求帮助

  1. 你需要先在jsfiddle上做一个可以共享的demo
  2. 做一个精简的测试用例
  3. 记住:问题一定要具体、详细!
  4. 在IRC上、StackOverflow(以及javascript的聊天室)上、朋友群(QQ群)上提问。

伸出援手

我们都是依靠他人的帮助成长起来的。不要害羞,只管提问就是!但是要先在jsfiddle上做好你的Demo。 =D

我要参与!

下面是一些和你志同道合的开发者:

入戏

熟悉了舞台之后,就轮到你上场了。

帮助他人

我们都是过来人,帮助他人可以巩固你的知识,扩散你所领悟的一些想法、观点。以下是一些很好的开源项目,他们一致在寻求帮助。每一个补丁都是不容忽视的,不积跬步,无以至千里;不积小流,无以成江海。

这些开源项目值得你为之付出。

  • HTML5 Boilerplate - 前端开发最佳实践交流
  • jQuery Learning Site - 学习jQuery的网站
  • jQuery Mobile - 手机端渐进增强最佳实践
  • Modernizr - 最好的特性检测库,可以用作各种HTML5和CSS3的渐进增强和低版本浏览器兼容
  • Bootstrap - 一个快速启动webapp开发的工具包,包括css和js
  • Normalize.css - 让标签在所有浏览器上表现一致
  • Dojo - 综合性的前端工具包,可用于网站、终端、桌面应用开发
  • Lazyweb requests - 为web开发者服务的,有创意、实用的工具和解决方案收集
  • jQuery standards project - 和jQuery相关web标准问题和讨论

和上面所说的 ‘如何寻求帮助’ 一样做, 同时去了解一下 Addy Osmani关于如何参与的podcast

分享、传播

多看好代码才能写出更NB的代码。深入研究下面这些项目,同时帮助她们不断成长,变得更好。

我要参与!

下面是一些和你志同道合的开发者:

为规范提供反馈

规范描绘出我们想要的特性。她们是工作组在邮件列表中,通过热烈的讨论发展而来。我们不能保证所有的浏览器都会遵循规范中阐述的规则,各个浏览器会给我们这些开发者提供一些和标准冲突的东西。

你为规范出力了吗?

我们是规范的使用者,为什么我们不帮助改善规范,让规范更合自己的胃口?支持标准,让规范越来越好!

我要参与!

下面是一些和你志同道合的开发者:

发掘前端特性

当你掌握了最基本的东西,就可以开始深入研究当前(和未来)的web标准了!好激动啊,因为我们这里有高级CSS、新的HTML特性/API、以及这些语言被期望的美好憧憬。有些新特性已经被一些浏览器支持,发掘这些新特性,会帮助我们推动web不断前行。

如何更好地发掘特性的例子

发掘更多的好特性(并写下来分享之)

浏览器总是在不断发布新的CSS特性。我们总是厌恶的浏览器的这些私有属性,但是这些私有属性已经存在,我们这些开发者能做的,是反馈给浏览器厂商,这些私有属性是否能满足我们的需求。如果这个属性是你需要的,主动去研究、应用! 这个 浏览器私有CSS属性纵览,是Peter Beverloo整理的,有许多实验性的东西;许多还没有被完全理解。可以写一写文中提到的属性还有下面这些:

探索未知的!

行动起来!推动web前行的唯一途径是发掘和使用各种高级特性和API。

我要参与!

下面是一些和你志同道合的开发者:

写文章

把你学到的东西写出来并发布在网上,不要害怕犯错。做一个你自己的博客,把你写的东西放上去,持续更新其内容。说出你自己的真实想法,不要人云亦云,这一点很重要。你的文章内容是不是绝对的正确、权威并不重要。保持提问、及时对话,世上没有错误的问题或者错误的答案。

教学相长,教是更有效的学习方法。即使只是初涉某个领域,写一些相关的文字也会对你自己有帮助。你可以请这方面的牛人或者朋友进行相关的技术评审。

你想写哪些方面的东西?

你可以分享一些东西给他人!下面是一些不错的主意:

  • <br><hr> (或其他任何元素)存在的原因?
  • 如何用最少的代码实现一个轮播?
  • DOM是什么?她为什么会存在?
  • 看看浏览器是是如何实现规范中的某个条款的,并与规范进行比较。
  • 分析某个流行的网站的首页(附上改进的建议)。
  • 你会如何去弥补某个流行网站的短板(加载时间过长、无效的js脚本等)
  • 分析一个流行的demo,用她做出另外的不一样的东西(或者在实际工作中应用她)。
  • 总结最近流行某个概念或理念。
  • 把你的经验贡献给某个开源项目。
  • CSS预处理(less、sass等)在管理不当的情况下是怎么造成不良后果的。
  • 如果英语不是你的母语:
    • 翻译时下流行的一些web开发相关的文章。
    • 详细说明规范中的某些特性。

写出来

不管你在twitter或者github有多少粉丝,把你学到的东西写出来!

我要参与!

下面是一些和你志同道合的开发者:

bugs归档

其实,所有的浏览器厂商都希望你帮她们做好bugs归档,而不是在twitter上报告bug。

杜绝bug

让浏览器变得更好的最快的方法,是给bug归档并解决这些bug。这只需要很少的时间,而且任何人都可以做。

我要参与!

下面是一些和你志同道合的开发者:

大家

你已经身经百战、经验丰富!我们能再给你一些建议吗?

Hack!

把web的潜能发挥到极限!研究CSS、高级HTML、JavaScript。研究浏览器渲染引擎。在github上fork项目、研究其源码、不断学习。让我们把web变得更帅,通过各种各样的途径:

为浏览器的发展贡献一己之力

贡献测试套件

测试用例是标准和浏览器的基础,他们确保各种特性在所有浏览器中表现一致。然而,W3C现在的测试套件还没有达到他们需要的量。这些测试用web开发者所属性的语言写的:HTML、CSS、JavaScript。

帮助完善规范

为验证做贡献

置身代码

书写你的代码。不断试验、在github上fork项目、深入源码。为浏览器、规范、验证或一些不错的开源项目提供帮助!

我要参与!

下面是一些和你志同道合的开发者: