发芽网(fayaa.com) – 代码无需标题、聊天窗口改进、新增开局

作者:半瓶墨水   链接:http://www.2maomao.com/blog/fayaa-codee-update-and-other/

code_new
(代码发芽网贴代码的新界面,比原来的简洁很多)

最近公司事情忙,租的房子房东给卖了,又要搬家,头大如斗

上次趁五一节宝宝睡觉的功夫,终于把代码发芽网的发帖机制给改了

修改前:贴代码必须填标题,未登录用户贴的代码不保存,登录用户也可以选择发不保存

背后的想法:我最初的设想里,代码发芽网的代码都会是一些不错的代码片段,能够对来到这些页面的人有所帮助,所以标题是必填的,标题是代码内容的浓缩。代码不保存也是基于这个考虑,如果不值得分享的代码,用户就自己高亮就行了。

问题:有很多,下面列的是其中几个
1. 现状是“多数用户”只是为了高亮,而不是为了分享代码的。尝试过分享代码的也没有继续下去的动力。不能形成良性循环
2. 带来的问题就是标题随便拼凑
3. 用户会觉得发代码太麻烦而放弃,而且为了高亮代码,还要求必须加标题也让人困惑

仔细思考过以后,我决定放弃“强制加标题”的做法,随之而来的就是发帖页面的简化与便捷。

现在的做法
1. 代码高亮只需要选择语言、粘贴代码,然后提交就行了
2. 如果用户想对代码进行描述(我自己倾向于这样做,以后看代码的时候也会方便理解),可以点击高级选项
3. 为了便捷的贴代码,也做了几个小改进,包括:
  3.a 登陆后代码发芽网地址自动打开贴代码页面
  3.b 贴代码的时候会记住最近5次选择的语言,并默认选中上次的选择
  3.c 贴代码的时候可以直接Ctrl+Enter快捷键发帖

带来的问题: 直接后果就是代码的总体可读性下降、分享价值降低

一些改进的想法(还没做,先观察一段时间,再等到下次有时间…):
1. RSS只收录填了标题的代码
2. 代码搜索上的改进
3. 和题库子站(构思半年多,刚刚做好)结合

技术问题
代码类里面的“用户”属性原来是Required ForeignKey,匿名用户提交就成问题了
后来发现Django本身就支持可以为空的ForeignKey,方法如下:

Python语言: How to make a Django ForeignKey optional
#相关Blog:http://www.2maomao.com/blog/fayaa-codee-update-and-other/

#1. 修改models.py:
user = models.ForeignKey(User, verbose_name="用户名", blank=True, null=True)
#2. 修改数据库,SQL语句:
alter table coding_codee change user_id user_id integer NULL;

参考


其他更新
1. 聊天窗口用颜色区分了自己的发芽网、系统信息和别人的发言
在非IE浏览器下,比如Firefox,表现更好

2. 新增了许多的数独开局,大部分都是kk加的

3. 新增了许多华容道开局,都是艾恩加的

4. 新增了两个华容道分类七步布局素数布局,很多新布局在里面,欢迎来玩

上图
1. 新增的部分华容道关卡,by艾恩
艾恩的关卡

2. 一些有意思的数独布局,by kk,我建立了一个形趣分类:
sudoku_interesting_gates

2 条评论 发表在“发芽网(fayaa.com) – 代码无需标题、聊天窗口改进、新增开局”上

  1. winxos说道:

    站长这个网站做的效果很好,那些游戏也比较有意思。
    辛苦了。
    ps:在百度空间贴代码的时候好像自动缩进会无效,不知道这是百度的问题还是什么?能否解决?

留下回复