我目前使用的同步工具
笔记:印象笔记,剪藏功能很不错。最大缺点:不支持markdown,我现在配合马克飞象写md文件之后同步到印象,但是之后不打算续费,感觉写笔记功能太过分离。之后可能用sublime写。还有这个chrome app:Minimalist Markdown Editor也不错,只能保存到本地。印象笔记标准账户12元/月,马克飞象好像是79元/年。听说印象之后要把笔记内容开放给内部员工看了?观察一下,印象笔记的竞争对手不少,不过剪藏功能难以割舍。 代码:github,现在有教育账户,可以拥有private repo。即使到期也可以github+bitbucket同时使用。 文档:数量不多的文件直接用坚果云,同步盘很方便。后期如果有需求可以考虑升级账户,每个月二十元左右。内网间的同歩,使用在实验室server上搭的samba服务器,空间、速度无忧。 图片:目前需求不多。ins不够私密性,访问限制,小图可以存存。对于体积较大的图片,是不是可以上cloud service。
关于编程
这几周在项目中很闲,论文的脑洞又开不动,趁机读了几个小项目的源码,补了些基础知识,顺便练了练手。我看的几个项目都是基于python的,写python稍稍多一点之后,真的有些过度依赖于这个语言的第三方库,不需要自己实现底层的乱七八糟的功能 ,这当然很方便,但我其实也是比较惶恐的,虽然我现在的初级阶段还完全没必要担心后续python对求职的影响,但是记得之前在leetcode上跑过某道题,同样的算法,C++和Java稳过,python一直fail;同时看到最近Java真的很火,一方面它是编译型语言, 基本无需担心其性能问题,另一方面它比C++又高级一些,写个简单的网站啥的也是很轻松的事情。不过我不希望这个担忧成为阻碍我学习python的理由,毕竟,我还很初级…还有另外一个惶恐就是最近听/看到周围很多非CS专业的人开始学python拿它写点脚本什么的小东西了,难道python如此easy to get on? 作为CS出身的(学渣),还是想坚持下编译型语言的阵营,主要是打牢下基础。 但是近两个月我会focus on Python,目前只是用框架照猫画虎的阶段,对于真正理解还有些距离。 最近看python,总结了目前认知中这门语言的特点: all things are objects, 我想这导致了变量的dynamic type class中的self,这好像不算特点,php好像也有? magic methods,对override方法实现自己的需求很方便 @decoration, wrapper用来加个日志什么的很方便,大概是属于高级用法了 coroutine,好像是python3中新加入的特性,在同一个线程内部做异步,性能提升很多,这种基于yield和生成器的用法,看皮毛还可以看懂,深入理解就比较费脑筋了 如果是做web应用,那么几乎无一例外的绕不开Django, Flask, Tornado, web.py等框架,在实验室的小项目中我用web.py做了一个请求API的web应用,当时考虑的是,没什么需求,越简单越容易上手即可,所以web.py这个小框架脱颖而出, 虽然小,但是基本上web框架的一切都涵盖了,WSGI、路由处理、数据库交互、模板引擎,再配合上从某API请求来的数据,这就是我的第一个web应用。后来浏览到Flask,应该是众多框架里top2的选择,还没来得及细看,不过对于只是简单 应用的人来说大同小异,了解到用法基本就可以轻松架起来一个应用了。接触Tornado是因为项目中其实是有实时刷新的需求,这个除了定期轮询外,不知道有什么现成的好方法去实现,搜到Tornado是一个高性能异步I/O框架,看了几个demo, 稍稍有一点理解,仍然远远不足够,毕竟我现在仍不知道处理实时刷新的具体方法,按照理论可能long...
RunningRecord
晚上在笔记本装Proxifier安装失败,顺便把网络设置全搞脏了,各种解决方案无果,正在重装系统中,心情有点烦躁,先平复下。 今天用一天时间写了个记录跑步的小东西,用python练练手,我本意是想做一个第三方登录,但看下来都需要申请审核,当然可以放在google cloud platform上,但是因为我使用到了数据库,感到限制,最终放弃了第三方登录。 虽然耗时一天,但很多时间用来熟悉google cloud platform,其实真正的代码量和耗时并不多。 登录。没打算给注册入口,本意是想第三方登录的,小玩意不想弄的太复杂; 跑步记录。我这里是存到MySQL数据库,其实可能不需要如此,每个用户一个文件记录应该也行; 展示跑步记录。 每周六给用户发邮件,告诉这周的跑量。 我目前没有访问比较流畅的VPS,可能看看国内有没有免费的app engine可以蹭,不然就先放到我本地计算机上了。 最近几个小东西都是用python写的,python也是非常火热(虽然可能处在语言鄙视链的底端),但它确实很容易上手,所写即所得。 本科学C、C++水深火热的时候,我也曾经好奇过,这样一个网站、这么一个小游戏,怎么可能用C写出来?那需要多复杂?最简单的计算器功能都需要用stack处理,更不要说我想得到一个可视化界面… 那时候写过简单的C#,觉得这个语言不得了,竟然有图形界面。毕竟两年时间都在console黑框框中得到各种printf的结果,从未想过如何才能用C实现一个图形界面。 那时候还很羡慕隔壁软件学院,java学一年就可以写出手机上的app,成就感自然不同。 现在自己写python,第三方库、高级的封装使得这个语言很容易让你实现一个在外行人看起来很厉害的东西,这也是他最大的魅力。 如果本科从python学起,会不会让学生感觉编程的技术门槛低很多、会不会更容易接受编程这种行为,不会产生惧怕心里?这我不清楚。但我比较确定的是我开始习惯写python后就再也回不去写C的时代了… 庆幸曾经先学过C,不然没有什么动力能推动我去研究底层的实现,不然和非计算机专业的人也没啥差别。当然我也忘得差不多了 希望enjoy这个周末。
阶段运动成果
自从上个寒假(没啥问题的话应该是人生中倒数第二个寒假)开始打算坚持规律运动后,我的本子上是从02.15号开始记录。前半个月时间是在家里用小哑铃做些很零散的动作,到3月开始进北区健身房使用固定器械和自由器械进行训练,到现在现在有8个月时间了。期间都没有很系统的训练,只是一周基本可以保证胸背腿的一次循环,现在来汇报下成果。 卧推:30kg+,极限没测过,但不会超过35。 高位下拉:全部小片+1大片。(我对重量绝对数值还没有概念) 坐姿划船:同上。 深蹲:60kg+,以目前的水平,目测可以勉强65。 硬拉:从未练过,腰椎不直,不建议练。 实力举:25kg。 整体来看,力量有所提升,速度我也没强求,毕竟练得少也不够系统。身材方面,变壮了,但是穿上衣服看不出啥变化。体重,增长了3kg+。 当然,不止于练力量,期间还学会了游泳,不过就50m左右的量;参加了上马的两次活动,13公里和10公里,但是跑步废弃的太多,有氧耐力没什么提升。前段时间看到BBC关于锻炼的纪录片,貌似有氧耐力是镌刻在基因上的,不会有什么改善?Anyway,还是打算后期多加入些跑量。 在2017年夏天结束时,最好能够: 科学锻炼,不受伤 卧推到40kg 深蹲到75kg 解锁反手引体 跑进6min/km 不知道目标是不是定的有点多,尝试下。 艾瑞巴蒂,就是干。:simple_smile:
让物理服务器变成OvS
OpenvSwitch是个虚拟服务,但是可以通过将OvS与Host上的物理网卡绑定以获得一个搭载openvswitch功能的物理“交换机”。 创建bridge. ovs-vsctl add-bridge br0 添加Host上的物理网卡到br0. ovs-vsctl add-bridge br0 eth0 注意,这一步会导致本来与IP stack连接的eth0现在连接到br0上,暂时失去与outer world的联系。 ovs-vsctl add-bridge br0 eth1如果br0需要连接不止一个物理网卡,则需要开启STP 清空eth0的配置. ifconfig eth0 0 配置br0的ip/netmask, gateway。 修改eth0 & eth1所连host的default gateway。 这时候,就可以给ovs设定controller了。