西电开源社区宣言

Version 1.0.1

We had to be rescued from our folly by a rebel alliance of obsessive geeks and creative misfits—who then proceeded to show us that professionalism and dedication really meant what we had been doing before we succumbed to the mundane persuasions of "sound business practices".
(只有痴迷的“黑客”和具有创造力的怪人结成的反叛联盟才能把我们从愚蠢中拯救出来——他们接着教导我们,真正的专业和奉献精神, 正是我们在屈服于世俗观念的"合理商业做法"之所作所为。)
-- The Art of Unix Programming

西电开源社区是一个以Linux为基础的以技术交流和项目合作为主要活动的开源社区,是一群hacker和geek讨论、交流技术的地方,社区的精神是hacker精神,社区的点点滴滴都是靠hacker精神逐步迭代而来,社区的故事也无不体现了hacker精神。

社区倡导平等,开放,自由。社区努力为每一个酷爱技术的人提供良好的探索环境,使其兴趣得到充分发展。

社区的思想不能受学校规定或政治的牵制,要有自己的态度和哲学:

不作恶

  1. 社区鼓励技术交流和切磋,但记住一点,不要作恶。即使是以做善事为借口,损害别人的利益也是不可取的,你无权剥夺别人的劳动成果。就算必须伤害一些利益,也要留下挽回的余地。记住hacker和cracker的区别,hacker建设,cracker破坏。
    • 例子: 检测、登入他人的计算机后,无论获得多高的权限,不要破坏别人的数据;即使必须破坏,那么要另备份一份,为以后留下恢复的机会。
  2. 与其他学生组织合作,必须分清责任与利益,不得篡夺、霸占他人的成果。
  3. 社区所有成员,创造的成果和荣誉,永远归成员自己所有,社区只提供一个交流的平台,本身不拥有任何成果。

永远的Beta版

  1. 尽早建立原型
    • 例子:有建立社区的软件源的想法时,没有设备,于是在一台ASUS Eee PC(因为续航时间可以撑过晚上的停电)上建立Arch发行版软件源。
  2. 不要等万事具备才开始工作
    • 例子:xdlinux 团队成立之初,没有在学校注册,活动海报和宣传材料贴在电线杆上,仍能办起150+人参与的讲座。没有会议室,就在草地上开会。
    • 反例:XDU linux 发行版计划被提出后,讨论的话题是这个项目的意义和如何"完美"实现,最终大部分人只说不干,只有小九苦苦坚持。
  3. 早发布,常发布,听取建议
    • 例子:社区的常规活动,一般没有特别准备,谁有学习心得,尽早的分享出来,与大家讨论。每1-2周一次,带动整个社区的学习气氛;相反,精心准备的活动,希望越大,失望越大,过多的精力被浪费,导致社区长期没有活动,死水一潭。
    • 例子:活动的策划,从想法、到准备、策划、分工,都发布在wiki上,供大家修改和讨论,听取大家的意见。

不世俗

可以有代表性地分为如下几点:

翘起地球

不要再说:"既然不能改变环境,就去适应环境",不要抱怨周围的环境,每一个新事物都是从弱小到强大。Google,Facebook,Apple,Microsoft 都是很好的榜样,没有人相信一两个小伙子能改变世界,但他们做到了,我们也能。

  • 例子:xdlinux 团队成立时,没有在学校注册,没有任何物质条件,但我们挺过来了,发展至今,成为学校里重要的技术组织。而有些人,总在抱怨学校给的环境不好,国内的环境不好,不断的以环境作为借口,最终一事无成。

遇到不公平待遇,应敢于向恶势力做斗争,决不屈服于任何人。 开源社区存在一天,就要为校园中使用开源操作系统和其他开源产品的用户提供服务与庇护。

  • 例子:Linux 使用校园网问题。

Because We Can

技术不一定要有"意义",技术不是用来赚钱的,不能功利得看待事物。我们爱技术,我们玩技术,bacause we can。

西电开源社区的存在,是为了帮助那些爱技术的人,为他们提供资源和交流的平台,而不是为了一些人功利的追求。

西电开源社区,不提供"学习的机会",只提供"交流的平台",为热爱技术的人,找到归属感。

不官僚

官僚主义是被每一个 hacker 所痛恨的,西电开源社区,经常会受到周围环境里官僚主义者的侵害和侮辱,我们不害怕,我们有能力与之抗争。而官僚主义的作风,也会侵染社区的成员,邮件列表里甚至出现了"资历老"、"领导"这样的词语。受到官僚主义侵染的成员,要纠正这种错误。而任何搞官僚主义且不悔改的人,都是社区难以接受的。

社区的主席和各部门,只维护社区的正常运转,组织活动,自愿为社区的发展做出贡献,为社区成员服务,受到更多的监督和约束,没有任何赏罚权限,也没有所谓的"管理"概念。

没有所谓的"核心成员",只有愿意为社区做贡献的"活跃成员"。

  • 例子:低年级成员对高年级成员,不提倡称呼"学长",更不称呼"主席"、"部长"等,应直乎其名或 ID。

与商业机构合作

开源软件可以商业化运营,西电开源社区也可以与商业机构合作,与商业机构合作的目的,是为社区和社区成员谋利益,是为宣传正确的思想和先进的技术,绝不允许任何五毛行为,永远不为商业机构做宣传,不为商业机构谋利益。

  • 例子:可以与西部开源等机构合作,宣传Linux新技术。可以为社区成员争取优惠的RHCE考试,但不宣传RHCE考试;可以提及,但不宣传西部开源的培训。同样的,可以为社区成员争取IBM实习机会,可以介绍IBM用到的新技术,促进信息交流,但不宣传IBM。

西电开源社区,不为任何其他组织,例如校团委、IBM合作部等机构负责,只为开源社区成员负责,为社区成员争取利益,为追求知识、真理和能力,并保持思想自由和创造性的人提供便利。

社区的责任

西电开源社区的责任包括:

  1. 促进知识和信息流动,提高群体智能
  2. 打破思想禁锢,不存在所谓的"标准"和"规范"
  3. 维护一份完整的,公开的联系方式列表

自由、包容、多样

在不伤害别人的前提下,一切言论自由都是被保护的。

开源社区永远都是吵吵闹闹,动态平衡的群体,自由的讨论问题是我们所鼓励、提倡的,但记住:讨论问题的时候,无论分歧多大,都不能指责别人,更不能有人身攻击,本着就事论事的原则和解决问题的目的,讨论一定要有结论。

对于别人提出的 idea,可以不同意,可以提出问题,但不能刁难和指责,不能说别人的想法没有意义。

  • 例子:Mentohust GUI,对于老鸟也许的确没有意义,但对于一个想学 QT 或 GTK 的人,至少能学会开发图形前端。

分歧出现时,可以通过讨论解决,无法调和的分歧,可以 fork 出来自己实现,但不得破坏开源社区组织的完整性。

社区鼓励新的 idea,给新的 idea 提供物质资源与环境,创新的过程中,爱赢,但不怕输。

社区里不存在所谓的标准,包容各种学术思想和理论的存在,即使是反对弦理论的人,提倡各种技术,各种工具,各种风格,各种流派互相讨论,共同进步:

  • 例子:vim vs emacs
  • 例子:每一个发行版,在社区里几乎都有代表用户。
  • 例子:新旧学派的开发思想相互交流

关于学习

社区反对学习无用论,承认数学、物理等基础理论学科的重要地位,但不提倡读死书。

强健的身体是有效学习的必要条件。

讨论和交流要以有自学基础为前提,社区没有义务去教技术,也不会做技术培训,只提供一个交流、促进学习的平台。

教育,而非培训。

Google is your friend.

社区一家人

开源社区是一个大家庭,无论走到哪儿,都是一家人,尽心尽力相互扶持。

"初,一个小子把大家聚在一起",这就是西电开源社区的创世,是一个很有人情味儿的创世,这是一件了不起,但又不是那么“了不起”的事儿。社区的每一个人,都是这个家庭的一员,社区靠成员之间的感情维护,不靠所谓的组织结构维护。

每学年的第一学期,9月第二个星期六,举办自由软件日暨 xdlinux 周年纪念;每学年第二个学期,5月中旬,举办西电开源社区周年纪念。

每年毕业前,举办终身成员注册仪式,给即将毕业的成员颁发终身成员凭证,同时告别老成员。

旗帜

西电开源社区是确实存在的,在校团委正式注册的组织。

开源社区旗下还有PHP团队,Firefox团队,Web小组等技术团队,为开源社区不可分割的一部分,他们平等互助,互相切磋,共同进步。

分组与分部

社区的组织结构,就好像内存的分页与分段一样,有两种存在形式:

  1. 分组机制
    • 分组可以是基于兴趣爱好的,技术方向的,也仅仅是一个单纯的分组,各小组可以有自己的组织形式。
    • 社区组织各小组开展常规活动,各小组轮流确定活动主题,与其他成员分享知识、技术、学习心得等。
    • 每个成员,可以属于多个兴趣小组,也可以不属于任何一个小组,还可以随时创立自己的小组,小组间可自由按需拆分、合并,灵活调整。
  2. 基于活动职能的分部
    • 社区按活动职能,分为主席、组织部、活动部、宣传部、技术部。
    • 主席的责任包括:
      • 敦促社区的每一件事
      • 维护社区技术交流的气氛
      • 听取各方意见,采取合理行动
      • 承担社区的一切责任
      • 为社区成员排忧解难,尽自己所能给社区争取资源
      • 遇到对社区的不公平待遇,主动站出来保护社区成员的利益
    • 组织部的责任包括:
      • 活动策划:明确活动的开展形式,活动流程,规模大小,人员分工和完成时限。
      • 场地维护:活动前1-2小时到场,布置场地,排除可能遇到的问题。活动时,维持现场秩序。
    • 宣传部的责任包括:
      • 前期宣传:海报设计、贴海报、在各宣传渠道发贴宣传等。
      • 后期宣传:活动后24小时内,在西电开源社区所属宣传渠道(例如邮件列表、论坛、wiki)发布活动照片,新闻稿,活动记录。
      • 拍照
    • 活动部的责任包括:
      • 活动通知:在活动前2-3天,通过邮件列表、论坛、即时通讯工具等发布活动通知
      • 活动记录:活动时和会议时,记录活动流程,主要发言等。会议记录在会后发布于邮件列表,活动记录在活动后后交由宣传部整理成新闻稿。
    • 技术部的责任包括:
      • 活动前的技术准备。
      • 每次活动的技术支持。

积累的力量

无论是邮件列表、论坛、wiki,都有一系列优秀的文章,他们是社区成员智慧的结晶,随着时间的流逝,有些帖子沉了,很多问题被重复回答,很多轮子被重新发明,没有积累的团队,永远只能是菜鸟。

所以,重视积累的力量,邮件列表的讨论结果、活动记录、会议记录都是社区成员的劳动成果,是无价的财富和资源,这些资源,应该被整理并保存在wiki上。建议新加入的成员,读一读邮件列表的历史邮件,会有很大的收获。