如何在云端搭建反社交APP
世界变化太快,我们总在担心错过。关注的人越来越多,订阅的RSS泛滥成灾。相反,身边朋友无话可说,创作能力大幅退化。错过的原来是时光,最美好的年华,浪费在别人的家长里短、八卦横飞中。
是时候结束这种游戏了。在一个人的微博中,分享了相关理念。现在,让我们动起手来,在云端搭建反社交APP:一个人的RSS阅读器、一个人的微博、一个人的维基、一个人的科学笔记…
何谓反社交APP
反社交并不意味反人类,而是将关注点从输入转为输出;行为模式从转发到创作。
- 无需将原本用于创作的时间再去过滤噪音
- 隐私的APP,仅向特定好友开放
- 数据完全由自己掌握的APP
如何选择恰到好处的反社交APP?我的挑选标准如下:
- 代码开源
- 代码简洁、简洁、简洁
- 代码基于Ruby、Python等运行,能够直接发布在heroku上
- 代码库在Github上关注人上千,持续维护与更新
- 没有明显错误
- 移动端支持优良或者修改容易
本文前提条件
假设你已熟悉:
- Git与Github操作
- 已安装heroku Toolbelt
- 已拥有Github与heroku账号
RSS阅读器
安装
首选介绍的是RSS阅读器stringer。搭建无需特殊方法,直接按照官方教程处理即可。
cd ~/dev/antisocial
git clone git://github.com/swanson/stringer.git
cd stringer
heroku create
git push heroku master
然后配置即可。
heroku config:set SECRET_TOKEN=`openssl rand -hex 20`
heroku run rake db:migrate
heroku restart
在heroku添加信用卡信息,以获得免费调度插件shceduler的使用权限。
heroku addons:add scheduler
heroku addons:open scheduler
Google Reader导入
请特别注意,stringer目前尚在开发中,不建议直接将大量rss导入,先手动添加一两条RSS,测试效果。等全部完工后,大量导入。移动端配置,同样请参考官方文档。
更新代码库
由于stringer尚在急剧开发中,需要经常更新代码库,按照官方介绍,命令如下:
git pull
git push heroku master
heroku run rake db:migrate
heroku restart
搭建完后效果如图:
微博
在一个人的微博旧文中,介绍过一些实践与开源库。事实上,推荐使用flask官方实例中的minitwit,简洁优雅,改动、新增功能容易。
将flask的Git 库 clone下来之后,请不要直接在flask目录下面进行操作,以避免冲突,将minitwit文件复制到一个目录下面。假设是:miniweibo。在miniweibo目录下面新增文件:.gitignore
,内容如下:
venv
*.pyc
再删掉原来minitwit目录下的minitwit.pyc
文件,新增Procfile
文件,内容如下:
web: gunicorn minitwit:app
继续新增requirements.txt
文件,内容为:
flask
将minitwit.py
的数据库地址改为:
DATABASE = 'minitwit.db'
并运行目录下的相应sql文件,生成保存微博用的sqlite数据库。
然后对本目录运行:
git inti # 初始化git库
git add . # 初始化git库
git commit -am"first commit" # 初始化git库
再提交到heroku上即可。
heroku create
git push heroku master
事实上,这么多小修改,如果不熟悉,容易出错,你可以采取更简单的办法,git clone 我们练习时已经做了上述修改之后的库。
git clone git://github.com/ouyangzhiping/miniweibo.git
然后直接推送到heroku上去即可。此时,只需要运行:
heroku create
git push heroku master
搭建完后效果如图:
维基
请参考前文: 基于Git的维基管理:gollum。需要特别提醒的是,gollum新版已支持多级版本嵌套。更优雅的管理方式是,每个学习主题是一个目录,比如,假设近期在学习Python
,那么,在维基的Home
页中这么写:
`[[python/home]]`
当你点击它并保存新创建的页面后,gollum会自动在wiki根目录下创建一个名为Python的二级根目录。
如果希望生成在线网站的维基形式,参见gollum-site
搭建完后效果如图:
用gollum写作也是一种享受:
博客
无需多言,请参见:理想的写作环境:Git+Github+Markdown+Jekyll
科学笔记
Markx是一个基于Pandoc的Flask应用,它的优点非常明显,并可直接支持推送到Github上。
云端搭建流程仍然是:
git clone
库- 推送到heroku
相应命令仍然为:
第一步:复制
cd ~/dev/antisocial
git clone git://github.com/yoavram/markx.git
第二步:推送
cd markx
heroku create
git push heroku master
搭建完后,比如,写数学公式的效果如图:
更多效果可在线访问:Pandoc Markdown
区分度
以上各个应用的区别在哪?最佳使用流程与实践怎样?
- RSS阅读器: 用于收藏一些高质量信息来源,可参见:认知科学与心理科学优质资源索引
- 微博:用于收录平时零散想法,想到什么,就记下什么
- 维基:用于收藏非正式论文的网页资料、零散知识点,将其整理出来,同时写书、写长文档用维基也非常合适
- 博客:用于输出
- 科学笔记:用于较正式的论文、科技笔记、算法笔记
所有上述一切!都保存在你的Git库中!也就意味着你同时可以拥有Git带来的一切好处:
- 不再担心写废与写错,任意版本更迭均有记录
- 测试新分支的成本低廉到不可思议地步
- 离线工作与在线工作自然融合,当脱机时,保存到本地;联机时,推送即可
小结
正如在一个人的微博中所言:
总会有一些人,需要的是一个安静、内向与创作的互联网。