[讨论]CODE的下一步
dongweiming opened this issue · comments
三位老师~~
CODE现在已经放出来95%以上的功能了. 下一步怎么走还请大家给建议, 来讨论, 当然还是希望大家一起写下去
现在问题
- 维护的力量不足, 涛涛新入职, 需要熟悉新环境; 我在条目组被各种产品需求淹没. 只能利用下班做.
- 我们欠缺一个整体的规划, 清风老师和邢老师都有经验, 不如来做点项目管理? 我对CODE熟悉程度还远不够 🐳
下一步需要做的
我觉得目前应该首要做的是完善现在CODE相关功能, 完善文档, 合适的provisioning等基础设施这些工作. 让用户可以在测试环境中用起来, 甚至可以线上环境用起来. 我列一下我想到的还需要做的事情.
- CODE还有一些点没有拆的很清楚
- douvatar的头像服务, 还没有完全拆出来
- #12 说的问题还存在, 我在拆和dae环境登陆相关事情的时候选择了quixote提供的session实现
- mq相关我换成了celery, 还没有测试
- codelive还没有加进来.
- 注册一个code的docker源, 现在只有vagrant的源. 提供给更多选择, 环境配置过程可以和vagrant一样
- provisioning工具, 我准备给vagrant添加provisioning工具, shire-in-vagrant用的是puppet, 我想用ansible. #23 也提到了
- 使用云主机或者vps搭建一个demo. 有一个测试账号体验过程. 但是权限上可以hack一些代码, 不让测试账号做删除之类的操作. 或者一个 http://try.douban.code 给想用的用户提供试用机会
- 添加符合travis-ci最新趋势的技术 - 国外同仁评判一个开源项目, 测试是一个关键点
- 给测试环境添加测试样例, 比如用户跑起来就可以使用test用户登录, 已经有一些默认项目, 有默认的team等.
- 邢老师说的很对. 良好的引导. 无论是安装, 配置, 以及使用指南. 我们现在很欠缺. 我想完整的介绍CODE都有哪些feature, 怎么用, 怎么配置, 场景等. 这个也应该放在README或者WIKI里面, 不需要用户很费劲的跑起来才能看到, 能预览
- 文档. 豆瓣所有开源项目最大的问题就是没有文档...
- 国际化. 开源, 只靠国内的支持是远远不够的. 我指的是让国外同仁很容易的了解, 使用CODE. 我英语能力有限, 还靠大家了~
协作方式
我想的是
- trello建card做任务安排
- slack(好吧, 自从邢老师离职大家就都不用了~)用来沟通, 讨论.
- 使用github提pr, 代码review(就是有点怪怪的感觉, 自己都不用CODE服务, 来用github会不会是一个槽点, 所以我想和上面提的, 自己用CODE搭建一个服务器, CODE托管到上面, 也做类似github一样的托管服务, 让其他人使用)
新人要求
有点没想到词儿. CODE肯定需要越来越多的人参与进来, 那肯定会有人可以被拉入我们组织. 还请清风老师邢老师联系下CODE贡献者们, 看看有没有兴趣继续.
还有一点就是入CODE团队的要求. 清风老师和邢老师要有经验的多: 什么样的人我们就可以拉入组织, 拉入slack, 和我们一样接受日常任务等等
遥远的想法:
- 去 quixote,转 django
- 去 oz,统一前端
我觉得可行的工作:
- douvatar的头像服务, 还没有完全拆出来
- 使用云主机或者vps搭建一个demo. 有一个测试账号体验过程. 但是权限上可以hack一些代码, 不让测试账号做删除之类的操作. 或者一个 http://try.douban.code 给想用的用户提供试用机会
- ci
从代码组织以及迁移维护这一点我觉得应该学习 Sentry。
GitHub Enterprise 我也使用维护过一段时间,我觉得也值得学习。
GitLab 在避讳 GitHub,而 CODE 是完全再模仿 GitHub,我觉得慢慢改就好。
ansible 没有问题,我现在也在用他。。。
我觉得一个目标是做一个可维护的版本,可维护的定义:
- 数据能够同步升级(MySQL 目前只有这部分需要持久化存储),Git 仓库的修改比较少,基本可以忽略(即使修改,也可以写个检查脚本来做迁移,相比数据库的简单一点),数据库表结构会随着功能的升级/修改变动比较大,如果本地使用过程中好久没有升级,那么会比较复杂,这一点,我觉得 django 的 migration 做的比较好。
- CI 能够覆盖大部分功能。
- 对外稳定的 API 接口。
大概总结了一下 CODE 的现有功能 http://www.douban.com/photos/photo/2292916165/large
手抖。。。
我先仔细思考一下,再来回答这个Issue
我前两天想了想,大体有一个思路,但在阐述前我想先问2个问题:
- CODE是什么?(这个问题对于熟悉的工程师们可能觉得有些奇怪,但请试着用最简洁的语言尝试描述一下,明确定义是解决很多问题的关键)
- 开源在这里的Code,和豆瓣的关系是什么?
- 你希望的Code的发展方向,或说是一个可预期的未来是什么样的?
这两个问题的答案是回答更多问题的基准,所以想听听大家的意见
我先来简单回答一下:
- CODE 有 2 方面的功能,一个是类似 GitHub/GitLab 的代码托管/写作的工具,另一个是工程师内部沟通的工具(PR以外的徽章/表扬)
- 豆厂内部已经转向 GitHub Ent 了,CODE 在厂内的维护者只剩下 dongweiming 和 lihan 了。代码版本上应该已经不是同一个仓库了,所以应该算是独立的关系了。
- 一种是为造轮子的人提供一个参考/示例,另外一种是像 Sentry/GitLab 一样的,一个可以内部部署使用的代码协作工具。说是工具其实有点不够,因为涉及了太多用户,组织等应用特性的功能,是一个大而全的东西,所以简单说工具可能不能体现一些方面。
@CNBorn 我这么看:
- CODE是什么? CODE是一个代码托管, 团队协作沟通, 发现问题反馈问题工具. 它可以方便的集成第三方的开源项目和公司自有的服务(通过合理规范的api格式, 插件模式等). 有齐备的管理后台和权限控制方式.
- 希望让豆瓣内部已经用到功能都能在外部看到, 其他的不怎么需要和豆瓣产生关系. 包含用到的框架, 各个依赖库
- CODE可以作为对Python系的或者倾向Python的公司的首选, 达到和其他同类产品的性能效率, 功能, 有自己的一些理解看法和实现. 不必赶着github风. 聊起来这样的话题, CODE也在讨论范围内. 就酱
我在非常早的时候关注到CODE,当时bitnami还没有支持gitlab。
非常想在工程师内部慢慢从svn迁移到git,然后把徽章这么有特色的东西用起来。
再后面CODE没啥声音了。
再后面bitnami出了gitlab的版本,于是就转向了gitlab。目前用得也还好。
再后面比如coding.net/git@osc,然后teambition/tower等系统的出现就让这个市场变得更有趣了。
CODE加油。
挺想帮点啥的,但如果和豆瓣内部系统绑太紧很局限。
如果只需要redis/mysql之类的就可以很快搭建起来,我想还是有些市场的。
我是关注了xtao,然后看到douban把他加入了一堆项目,才知道CODE又有动静了:)
现在 quixote 准备转 Django了么
@motecshine 参考 #113 已经完成了 60% 的 view 迁移