一个全新的Blog
一个理想
从上大学开始用的第一个Blog程序是PJBlog,到后来的wordpress,其实一直想有一套自己的Blog程序,大学的时候最拿手的后端语言是ASP,当时做了一个简洁版的,一直也没有上线,后来想用PHP重新写一套,奈何一直没有时间也没有毅力坚持写下来,想要的功能太多,能力和时间却又有限。这个想法就一直挂起状态了。
机遇
从毕业到现在,我一直在做前端的工作,平时用到的语言就是Javascript,以前JS也是可以写后端的,有微软的JScript,但是性能上一直是一个问题。自从V8出现,nodejs出现,这一切都发生了翻天覆地的变化,在浏览器端常用的语言Javascript直接杀入后端开发中,这个时候我想写自己的Blog程序的想法又越来越强烈了,nodejs经过这一两年的发展,各种模块已经很多,基本上可以满足很多日常开发的需要(虽然模块质量不太好),是时候完成我的Blog程序了。
折腾
写这个Blog确实折腾了好多东西,你现在看到的这一版程序是第四版,完完全全的第四版。我来说说这个折腾的过程吧
- 想的太大,想做一个像wordpress一样强大的Blog程序,同时能兼容wordpress的数据库,能直接用wordpress的数据库,不需要转换数据,这个直接导致了我看了很多wordpress的源码,耽误的时间太长。
- 感觉折腾有点累,换个orm框架,把wordpress的数据用了一个导入脚本解决,当时用了这个框架sequelizejs, 我用的时候这个东西还只支持mysql,还有一些Bug,当时不太会用pull reuqest,就给作者发邮件说的问题及解决方式。前端上用了twitter的bootstrap,页面长得跟现在很多开源项目非常非常像,哈哈
- 期间开始接触key-value数据库,挑了redis玩,于是就把整个数据库换成了redis的,写了一段时间,基本完工,后来搞别的事情了,一直没有上线
- 终于我觉得我已经很久很久没有写Blog了,我对线上的那个wordpress非常不满意,觉得它是一个大而且笨重的家伙,另外书写方式也非常的不友好,于是。。。于是我决定推翻之前的所有想法,重新写了一套,之前的那个redis版的从前端到后端完全重写了。就是你现在看到的这个,下面详细介绍一下这一版
用到的东西
我想实现的是一个让我写起来和管理起来都很开心舒服的东西,于是我选择了markdown语法,下面详细列出来用了哪些东西
- nodejs 不用说了,大英雄
- mongodb 没错,又换数据库了。。。
- express 目前nodejs社区里最好用的web框架,用的是2.xx版,3.0这两天发布的,api改变貌似有点多
- marked 非常好用的markdown解析器
- jqtpl 没有用express默认jade的原因是我感觉这个开发起来更快
- hibot 这是我弄的一个纯js的代码高亮器,是从一个开源的项目移植来的,不久会放到github上去
- jquery 前端用的是jquery,开发起来很高效
功能
- 文章的增删改查
- 用户的注册,封禁,删除,目前只开放给我自己注册,嘿嘿
- 草稿功能
- 附件上传
- rss输出
- markdown语法
- 评论
在保证我用的开心和简单的前提下,更多功能添加中…
不开心的事情
- 有评论框的开放平台都不够给力
- 我所在的人人的评论框,居然必须网站有人人连接,才可以审核通过,已经发邮件询问了,等待结果中
- 新浪微博国内网站必须备案,但是我域名和服务器都在国外,它说需要证明,但我不知道证明是什么
- express 3.0的api变化有点大,完全改成3.0的还得看看
- 服务器在国外,连接有点慢,这也是被逼的
一些总结
- 个人的小项目不要想得太大太全,可以一点一点完善,千万不可像我这样一遍一遍的重新来过
- 不要过多的接触新技术,把老技术老东西研究清楚再说
- 做一个专业的Bloger,多写文章,多帮助别人