分享

不加修饰的拿来主义

用Tiny Tiny RSS搭建属于自己的rss阅读器

写在前面

曾经盛极一时的Rss技术,已经很少有人用到了。它逐渐演化成了一个极客、小众的技术。然而,直到现在,老派还固执的认为,Rss的易用性和开放精神比当前那些自我封闭,整天想着拉用户、涨流量的XX号、XX平台要强太多了。

从这一点上来讲,我并不觉得互联网这些年有了多大的进步,开放性这个东西早已被大家抛之脑后。不开放的互联网只是资本的游乐场而已,根本没有表面那么繁荣。这一点从近年来最火爆的编程语言来看也是成立的,最受欢迎的语言排行逐渐被开源社区强大的Python、JS等新兴语言所占据。自我封闭并不是互联网的未来。

当然,rss这个东西的消亡也有其原因,那就是替代品太多,互联网平台化发展使得大家获取信息的渠道逐渐单一化。可对于有特殊需求的人来说,rss还是有不可替代的作用。例如,老派我就是信息流的洁癖患者,我非常不喜欢公众号、微博、朋友圈的氛围和那些恶心app的垃圾推送。我想看的东西,不是你们说给就给的!

什么是TinyTinyRSS?

用官网上的话说:

Tiny Tiny RSS is a free and open source web-based news feed (RSS/Atom) reader and aggregator

它是一个开源的新闻阅读器(RSS/ATOM)和聚合器。

其功能类似于之前已经关闭了的Google Reader服务,国内的鲜果等rss订阅服务。 Google reader已经阵亡,国内的rss服务现状也惨不忍睹。圈内比较流行的是国外的inoreader服务,奈何免费版限制太多,专业版每年几十$的费用也不是谁都愿意出的。

对于熟悉web开源程序,或者喜欢建站的朋友们,与其花费大量的金钱购买服务,还不如自己搭建一个平台来的划算。对于有自己服务器的朋友,还能够借此充分利用服务器资源,避免浪费。

准备工作

有一台自己的服务器,aliyun、腾讯云或者什么其他的什么云,或者国外的什么vps都可以;到官网上下载tt-rss安装包

然后,深吸一口气,准备遇到各种坑……

步骤

  1. 在宝塔面板里新建一个网站;同时自动新建一个数据库和ftp账号;记录号这些账号密码。
  2. 绑定一个域名,或者二级域名也可以。
  3. ftp连接网站空间,上传解压tt-rss文件。
  4. 直接访问域名,自动跳转/install访问页面。
  5. 填写页面所要求的信息,包括数据库用户名、密码等等。
  6. 安装完成,登录界面,新建订阅源,或者导入opml文件。

好了,休息一下!是不是感觉已经大功告成了? Too Young !

不出意外的话,这时候你试一下,会发现

根!本!用!不!了!

这就是tt-rss不太方便的地方,如果不进行设置,tt-rss是默认不自动更新的。按照官网的说法:

You will also need to decide on the method tt-rss uses to update feeds. This is a separate topic, outlined in UpdatingFeeds.

好的,很多好学的同学都会点开那个链接,然后一脸蒙圈。弄啥嘞这是!

好吧,简单解释一下就是,你需要通过服务器的命令行添加一个守护进程,来定时运行tt-rss的自动更新程序。啥是守护进程?管他呢,想试一下的朋友可以尝试一下在非root用户下执行crontab -e命令,然后在打开的配置文件中加入类似这样的代码:

*/30 * * * * /usr/bin/php /path/to/tt-rss/update.php --feeds --quiet

里面的时间、php命令目录、update文件目录都要自己确定。而且最崩溃的是,这个过程要用到vim编辑器,反正我是不想学也不想用。

其实,如果用宝塔面板,就不用这么麻烦。宝塔面板自带定时执行任务的功能:计划任务。只要在宝塔面板里新建计划任务,然后shell代码里输入类似如下代码就可以:

su -m www -c "/usr/bin/php /www/wwwroot/fxrss.fxpai.com/update.php --feeds"

代码中的www你要替换成自己的服务器账户名称,注意,不能是root账户。后面引号中的代码分别替换为你自己服务器php目录和tt-rss update.php文件目录。这样设置以后,你的rss阅读器就可以按时自动更新了。

如果这个办法你也实在是搞不定,还有个更简单的办法,就是更改config.php文件中的SIMPLE_UPDATE_MODE常量为true,当你打开浏览器的时候,所有rss源就会自动更新,稍等一会儿就可以了。

需要注意的问题

一定要把config.php中的ENABLE_GZIP_OUTPUT常量改为true,改了这个以后,读取速度有肉眼可见的提升,非常明显。对服务器的消耗可以忽略,反正我的aliyun乞丐版没有什么负载增加。

另外,经过我的测试,不能够通过直接开启宝塔ssl证书的方法来开启全站https。会不停报错,自动更新功能也无法实现
是我域名设置的问题,不是tt-rss的问题。域名设置好就没问题了。可以正常使用全站https。

在为rss站点设置二级域名的时候,碰到了一点问题,不过这个和tt-rss没有什么关系。宝塔的二级域名绑定有点让我迷糊,如果有其他朋友遇到类似的问题,欢迎讨论。

拓展

tt-rss另一个吸引人的地方就是官方的Android应用(没有ISO系统的),可以从GooglePlay市场获得,专业版需要花3.9$买个unlocker。从网页后台打开偏好设置>>允许外部客户端通过 API 来访问该账户,打钩。手机端app输入用户名密码即可连接。使用起来速度很快。总体感觉不错。

除此之外,tt-rss有不少插件和theme,使用方法也都很简单,再次不再赘述。

实在没时间截图。不好意思。

以上。

关于Google fonts、Gravatar、Fontawesome的那些事儿

WordPress爱好者们都知道,如果刚安装完wp代码,或者刚换了个新的theme,再或者安装了一些插件后,网站访问速度突然变慢了。那么一定是标题里这些个东西在搞事情。

这种情况出现的最主要的原因是google的字体服务器、gravatar的图片服务器、fontawesome文件服务器远在美利坚,访问速度或多或少会受到影响。

另外,你的网站使用到字体和图片的数量也有关系。引用越多,页面越卡。

其实,还有一种情况,就是当你第一次访问引用资源的页面时会比之后再次访问相比,肯定要慢一些,当然,是在不清空浏览器缓存的情况下。这也是缓存的好处,对于公共引用库,只要在某个网站加载一次,其他网站可以在缓存中共用。

前几年,老派为了保证访问速度,干脆安装disable google font插件,全局禁用了google font字体,再把fontawesome文件加载到本地服务器然后调用,gravatar换成duoshuo的api。这三大板斧下去,效果显著。

但是,全部禁用和本地化也不是没有缺点。没了google字体,后台英文显示惨不忍睹,后来wp官方在后台管理界面里禁用了外部字体,而是使用了优先使用系统自带字体的方法,这一做法收到了中国用户的好评,终于不用担心后台访问速度和英文显示效果了。

可好景不长,近期的wp更新了古腾堡编辑器,又把google字体给“请”了回来。不过,这时候就要区别看待了,因为有个好消息可能很多人都不知道,那就是google fonts的服务器已经迁址到北京海淀区了,国内服务器访问不成问题。利用外部加载反而在一定程度上缓解了服务器的压力。

相比较而言,gravatar和fontawesome就没那么幸运了。不过,也不是没有办法。

首先,经测试Gravatar不是不能访问,但是速度堪忧,常用的办法有禁用、替换国内api、缓存。前两个方法不推荐,因为禁用影响体验,国内api自己也挂了,剩下的办法就是利用wp的缓存插件,定时或者在加载网页的同时将gravatar头像图片存到本地服务器上,以便随时调用。

对于fontawesome图标库,我也有两个办法,到官网下载库文件放到本地服务器上,再用functions.php里面的代码调用。或者使用国内的fontawesome服务,以.cn为后缀网址的那一个,但是国内的版本是自发组织的,不保证以后会不会挂。除了这两个办法,还有个不是办法的办法,那就是使用wordpress自己的图标库,wp的图标库在后台界面已经广泛使用了,我们只需要在前段调用就行。常用图标的形状差不了太多,我觉得wp自带的就很不错了。

说了这么多,总结一下就是处理好这三个东西,你的网页才不会龟速。其实,对于一般访问量的网站,处理好他们就足够了,页面访问会很快。拥有更大访问量的网站速度优化,涉及到静态缓存和memchromed等等设置,不属于本文讨论范围。

最后,老派祝大家都能愉快的玩耍wordpress。

Word多级列表的标准用法

很多人都认为Word是一个简单的打字软件,其实,这种想法严重低估了Word的强大功能。Word的本质上是一个相当复杂专业的排版系统。只不过一般人用到的功能很少,或者一通乱用,虽然最后也做出效果了,但是可编辑性和通用性就不那么好了。

我在工作中写长篇报告的时候,最常用到的功能是多级列表功能。下面说一说我的通用做法。

第一步,打开一个默认文档,设置好相关样式:正文、无间隔、标题1、标题2、标题3……

第二步,点击“多级列表 ” 功能>>点击“定义新的多级列表 ” >>点击“更多 ” >>依次设置“级别 ” 和“将级别关联到的样式”,例如:级别1对应标题1,级别2对应标题2……>>设置其他格式,例如“位置”和“编号之后 ” 等等>>确定。返回主界面可以看到“样式” 里面的标题1等样式已经关联了标题列表,设置成功。

第三步,右键单击以上相应样式并编辑,给相应样式配置快捷键,我个人习惯设置为“标题1-ctrl+1 ” ,“标题2-ctrl+2 ” 等等。这样,可以快捷设置所有的多级列表标题,提高效率。

第四步,将当前文件另存为dotx格式,也就是word模板格式,并放置在软件设置中的个人模板文件夹中,这样,下次新建文件时,可以直接选择这个自定义个人模板进行撰写。所有的设置都同之前设置一样。

老派通过以上设置,基本可以实现专注内容写作,不用担心排版问题,写完了也就自然拍排完了。

同时,这个方法另一个最大的好处就是可以直接自动生成目录和大纲列表,对于长篇技术报告来说,简直是省时省力神器。

当然,最最厉害的是word模板功能的应用,不但可以使你一次性写出标准格式的文章,在多专业多人员配合的时候,可以直接到导入别人用此模板写的文章,基本可以不用重新排版,直接出活儿。这对汇总人来说,难道不是救命的方法之一吗!

珍惜生命,远离加班,老派祝大家永远健康!

最近写博客的方法论

繁忙的工作和生活之余,还要保持自己写博客的习惯,除了需要高昂的热情之外,一些“利器”也是必不可少的。好的工具可以节省大量的时间,打通博客写作流程,让写博客这件事更有快感,从而促使产出更多的优质内容。

我在写作过程中也积累了一些经验,分享给博友们。

wordpress手机app

移动时代,还会有多少人会专门抽时间打开电脑庄重的写篇blog?估计再过几年,这就要成为一种专门的仪式了。手机上的wordpress app是wordpress.com官方开发的app,兼容ios和android,随时随地更新wordpress博客,体验非常好。最良心的是,使用手机端的app不用安装jatpack插件,在这一点上,pc段的就差劲一些了

markdown写作

近两年非常火的纯打字写作方法,可以在双手不离开键盘的情况下,不打断写作思路地完成一篇排班规矩的文章。甚至还可以自定义css来找到适合自己的样式表。写数学公式不要太方便。简直好用到尖叫!当然,对多级列表的支持不是很好,不适合长篇报告。

双拼输入法

我花两个月左右的时间,一边练习一边熟悉了小鹤双拼的编码规则,一个汉字字音仅用两个字母打出,固定的打字节奏,配合智能输入法极高的计算能力,让打字充满了乐趣。效率得到了飞升。

云文档

在自建的wordpress上写博客,万一有人剽窃你的文章,如何拿出证据证明你是原创?我没有特别好的办法,但是,可以养成一个好习惯,每篇文章都把它存到云文档里,文档的创建时间是改不了的,而且每次修改都会有详细记录。如果有剽窃者和你叫板,拿出云文档记录,这无疑是一把惩恶扬善的杀手锏。

图片优化工具

吐槽一下现在手机拍得照片竟然都一二十兆一张了,胆敢把原图直接传到wordpress上,那你的服务器恐怕很快就吃不消了。我在手机上试了好几款图片处理软件,发现大多数都没有精确修改图片大小质量的方法,除了这一款:pixlr。真想不通这么基础的功能为啥多数app厂商都不做。

我希望的功能

我经常有离线写blog的需求,pc端的wordpress软件必须要安装jatpack插件才能使用,而且不能离线写作,实在想不通。希望以后能够支持。

由双拼输入法所想到的

最近,写作工作逐渐多了起来,打字速度就显得更加重要。虽然,当前的拼音输入法已经到了非常智能化的阶段,可以满足大多数情况下的高速输入,但这个前提是“大多数”场景下。

我开始思考这个问题,还要从阅读吴军老师的《数学之美》说起。吴军老师在书中简明而清晰的介绍了包括输入法、地图导航在内的概率模型应用问题。从样本获取、数学建模,到机器学习、神经网络。我从中认识到,打字的准确性其实就是一个概率问题,而较高的概率是由较好的样本和科学的计算提供的。理解了这个问题后就不难理解,为什么很多人在打字聊天的时候手速飞快,而写正式的公文或专业文章的时候,打字速度却慢了下来。

当然,一定有人会说,那是因为写上述两种文章的时候,思维的速度也会明显减慢,因而拖累了打字速度。这种想法是没错,可是,在实际工作中,我还遇到过要誊写公文的时候(这种情况一般不会出现,但毕竟存在),这样的情况下,打字速度的干扰因素就比较少了。我发现在这种情况下,即便是我很熟悉的内容,输入速度也会明显降低,甚至准确率都大打折扣。原因很容易找到,那就是输入法的词库或者说样本,已经不能很好的覆盖你的工作内容了。至少目前为止,我认为出现这种情况是很正常的。

于是,更多的选择就摆在了面前。五笔?还是双拼?——我还是推荐“双拼”输入。原因一,拼音输入法已经有了质的进步,而且作为大多数人都在用的输入法,未来的发展也值得期待。原因二,五笔的学习成本“略高”。之所以说略高,是因为双拼也需要一定的学习成本。但我觉得从上手难度方面来看,双拼还是简单得多。因为,它与拼音输入法类似,都比较符合人们的输入习惯,

目前,网络上能搜索到很多种双拼输入法,其中大多数是包含在拼音输入法中的。我在选用并学习之前,详细研究了各个输入法的键位图,发现有一款叫做“小鹤”的输入法,键位是被编为顺口溜来帮助记忆的。这大大降低了学习成本,令我喜出望外。经过了一段时间的熟悉和练习,我已经能用双拼比较熟练的输入了。个人感觉,除了因击键次数减少而直接提升了输入速度之外,节奏感的改善也起到了至关重要的作用(两次击键出一个字)。

那么,就一点问题都没有了么?这里不谈因使用者个体差异,只谈共性。我发现输入法在击键或处理双拼词频的时候(我也分不清实在哪个过程),会有明显卡顿,不知道是不是所有的输入法都有这个问题。我用的是手心输入法(小鹤模式),由于精力原因,没有做更多测试。

总之,我还是推荐大家使用双拼输入法,来提高工作效率。