博客的二次提升

今天晚上我在rss上花费了不少时间,由于效率不高,算是娱乐了一下吧。 标记语言考察 markdown现有的一些python-parser,比如python-markdown虽然已经做得很好了,但是对于todo等我想要的需求还没有支持,因此想要考虑使用其他的标记语言,比如restructedtext,这个用于sphinx这个用于构建文档框架中的标记语言。 于是,简单查看了docutils的文档,发觉其对于我想要的特性支持也并不是十分优秀,准确讲,只有一个暴露在外的接口,并无其他。这个接口的例子: >>> from docutils.core import publish_parts >>> print publish_parts("*anurag*", writer_name='html')['html_body'] <p><em>anurag</em></p> 自然,目的是文档,标记语言只不过其中的产物,也没有必要做多余的事情。倒是我想的简单了。 在搜索了许多材料之后,发现IBM的开发中心很不错,有很多有意思的东西,文章也写得深入浅出。也算是意外收获。 最后还是放弃了对于markdown的更新,还是按照老路子,如果有时间,就给[python-markdown]()提一个pull request自己造轮子。 rss相关研究 我的博客rss常年挂出500,其中主要原因是内容中编码出错的问题。我一直没有定位到这个bug的出处,可能是SQLite的bug或者django-form的bug?文章中总是会混入\\x08这种类似的xml无法编码的数据。有时间仔细排查一下。这个问题才是主要问题,不过我的精力主要放在下面这个问题上了。 为了解决rss渲染的时候,description的问题,我引入了safe希望不要把<div>类似于这种标签进行转义,不过我失败了。我查询了关于django的safe过滤器,其中safe过滤器可以通过一个函数来搞定,就是这个: This ought to do it: from django.utils.safestring import mark_safe foo = mark_safe(foo) 引入之后依然进行了转义。于是我决定暂时进行一次清除,用一篇博文来替代所有的description。如果后面有时间看看rss,把这个功能做完。最好还可以自己写一个rss阅读器,来方便自己进行博客订阅。 在网络上一个不错的教程,来自自强学堂。看完这个rss以后,可以考虑从官方文档入手。 也不能老换 因为看到大家都用node来搭建博客,又一次简单的翻阅了一下ghost——一个基于nodejs开发的文档,我感觉效果不大。一方面,学习nodejs于我而言,可能是一个比较高的学习成本,我没有多余的时间进行nodejs学习。对于nodejs,我仅仅是了解一部分的皮毛知识。 在查询之后,判定切换成本比较高。如果要直接用博客系统,考虑使用Zinna,以及Mezzanine进行二次开发。 当然,使用hexo也是一个非常不错的选择。可以使用跨域来解决访问量统计不准确的问题。 总结 整个娱乐过程没有比较好的产出,主要原因可能是没有在做事之前,简单规划一下。试想,如果规划的比较优秀,可能时间上节省大半吧。因此强势安利一波trello,和国内的teambition相似,不过UI设计上更加简洁明快一些。 参考资料 未列出

Read More

博客重新开始更新

{% blockquote 本文出自 http://svtter.com svtter.com %} 本文可以随意转载,但是转载请保留本信息. 重新开始更新自己的blog了,之前一段时间的文章都在 http://segmentfault.com/blog/svtter segmentfault感觉着实不错= = 以后blog中各种发解题报告各种发思路各种发知识。 坦白说之前的blog真心是懒得更新= =

Read More

博客随想

前几天向英明要了他的博客地址,学习了一番。看其博客内容充实,再看自己现在博客的空虚,遂感觉应该把之前的博客内容重新发布到自己的新博客中。如果自己有一定的能力,务必要让自己展现出来。 看阮一峰的博客,其中说的三个阶段都已经经历了——虽然技术似乎没有到达那个层次,但是阶段着实经历了——使用hexo,虽然不能在自己的站的基础上做提升,但是简便性方面,实在优势是太大了。因此,博客就作为一个写文章的地方,如果需要,在js的层面上做做拓展——如果不需要,任它去吧,自己还有几个不错的想法想要去实现。通过那些想法来做实践,比博客似乎更加贴近工业。 还有九日的博客。看了看未来游戏大拿最近的书单——真是一个踏实的男人,向他学习。自己也应该继续从书单上斩书了,且过了这个阶段,有时间再做吧。 斩书,是真的从本质上对自己作一个提升——私以为造轮子的人,总比用轮子的人高超一些。这句话说出来又感觉好像哪里不对(笑),以后探讨一番。 如何放松 前几天萌生这么一个想法,在休息,娱乐的时间学习技术,放松脑袋,岂不是一个双赢的策略?——后来看,似乎实践起来有难度。学习技术(新的语言,新的概念)并不能使我放松下来(笑,还是参与到健康向上的集体活动中去,才是有裨益的放松方式。 父母所认为的高学历的大牛们都是不玩游戏的,不知不觉被这个思想所影响了(笑。通过观察几个大牛,发现人家根本不是不打游戏的好么!每个人会有娱乐方式,只会工作不打游戏,不作休闲,我的天,那得是多么无趣的人啊——想必这样的人也不会成功到哪里去,至少我是这么认为的。笑,联想到父母看到这篇文章时,一定会补充一句,关键是控制好时间。 动辄写好多字的博主真是厉害 写了简单几个字,感觉把自己的意思说完了(笑,是个优势,问题说的简单明了;也是个缺点,似乎写不了很多东西,没有特别多的想法,或许是年龄不够,没有那么多的积累,也或许是没有其他博主对文章投入的心血多。 写到这里,觉得这篇博文是值得我以后再来自己读一读的,因此,在tags中标注出star,让自己以后也方便寻找这些自己觉得不错的文章。 友情链接以及观摩 学习他人先进的学习经验是非常有必要的。通过浏览冰河先生的博客,心生敬佩。向优秀的人学习,这是十分有必要的——我不认为自己无法成为大牛,成为一个成功的人,因此,向厉害的人学习,这是十分有必要的——连想都不敢想,凭什么能成功呢?这个时候看客可能笑了,怎么还写起鸡汤文章了——我认为这不算鸡汤文章,生活中存在太多不敢想的人了,也存在太多敢想不敢干的人了。道理都懂,那就再说一遍。 说了很多,甚是愉快,这篇随想似乎也是总结了不少自己之前的想法,行文过程中,也解开了自己的心结,快哉!

Read More

在jade的加入google-analytics

许多hexo文件都是使用jade来进行书写的,因此,在这里简单介绍一下如何在jade中插入javascript,使其正确的渲染。 // refer: http://stackoverflow.com/questions/5858218/how-can-i-render-inline-javascript-with-jade 在主题中找到layout.jade这种类似的,每一个静态页面渲染都需要的jade文件,加入google-analytics的代码即可。记得删除google analytics中所带的<script>标签,使用script.来代替它。 例如: // <script> script. (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){ (i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o), ... // </script>

Read More

塞尔网吐槽

说真的,我真是有些受够了这该死的赛尔网了。 —— 沃·兹基硕德 要知道windows的cmd何其难用,就算是安装了cmder也是难逃大量环境配置问题,脚本执行问题。该死的赛尔网没有Linux版的客户端,何其尴尬。以我个人认为,开发一个Linux的客户端,并不是难事 —— 有人说有啊的确有Linux版的客户端啊。但是请问能用吗。压根不能用。 这就不得不讨论到今年提速降费的问题上了。终于不绑定ip了,所谓提速就是从2M提高到了3M,降费就是从40降到30。但是很明显这依然满足不了需求不是吗?

Read More

备份自己的博客内容

由于博客经常更换,好的坏的文章,无意中丢失了不少。打算以后好好备份自己的博客文件,设置一下备份频率。

考虑一下,需要备份的文件主要是post。行文至此,猛然想到其实可以直接用git实现,但是既然已经配置了邮件服务,那么就这样吧。

Read More

大白刷题录

UVa 11729 #include <cstdio> #include <cmath> #include <iostream> #include <algorithm> using namespace std; struct Ant { int id; int p; int d; bool operator < (const Ant& a) const { return p < a.p; } }; const int MAXN = 10010; const char dirName[][10] = {"L", "Turning", "R"}; Ant before[MAXN], after[MAXN]; int order[MAXN]; int main(int argc, const char *argv[]) { freopen("input", "r", stdin); int t; int L, T, n; int p, d; char c; scanf("

Read More

如何更新自己的主题

在使用hexo的主题的时候,许多人经常把主题fork到自己的repo,对我而言,这是没有必要的。

一般情况下,我不需要修改很多关于主题的内容,只需要改改配置文件就可以了,但是每次

更新,git pull的时候都提示需要提交自己的修改,这个时候应该怎么做呢?

Read More