2015年11周 周记
haskell和sumpocket,还有其他的小工具.
haskell
本周看了关于haksell的不少东西.主要是阅读了下面的书:
- real world haskell 前几章
- learn you haskell for great good 中文版
从前到后基本看完了.主干还有3章. - seven languages in seven weeks 的 haskell 的章节
习题做了Haskell 99的大概有30题的样子.
在这里H99
7周7语言这本书自己还是2012年样子看的吧,现在翻一翻还是挺有意思的.
建议没有看过的同学可以看下.
real world 这本书看起来略微吃力一些.我也不知道自己怎么半路就转换到learn you haskell
这本书的.相比来说,这个就易懂一些.至少学习曲线没有那么陡峭.
看了haskell,印象最深刻就是它的类型系统.
一般来说,像C语言之类是静态,弱类型的系统,从而不方便写出抽象性更高的代码.如果都用
void*,也是可以的,但是又需要在类型之间强制转换,从而失去了编译器静态检查的好处.
python之类的动态语言,就非常方便,但是随着代码的膨胀,不能进行有效的检查便是问题.
lisp之类的,也可以做到动态.也是类似的.
haskell则是静态类型的,但是有类型推断系统,从而可以更智能的检查出类型不匹配之类的问题.而且类型之上也可以进行抽象的.
可以想象C++的auto,到处都支持.
sumpocket
因为自己的日常的强烈应用之一就是pocket.
就非常想做一个统计的功能,从而促进自己进一步来消灭自己在pocket中沉淀的文章.
现在终于可以着手进行了.
目前还在实验中. 代码在sumpocket.
后续自己会尝试作出一个动态统计图表出来.
这个过程中比较麻烦的就是授权过程,因为自己之前没有接触过,还是有点意思的.
(其实之前block就是因为这个问题,当时虽然已经有解决方案了,但是一时又不想做了)
tool
input字体
这个编程字体,可以自己定义.还有意思,对自己现有编程字体不是很满意的可以尝试下.
github pulse
一个chrome小插件,可以统计自己public的repo上commit的历史信息,从而督促自己每天写代码.
也可以直接到github下载,然后自己切换到chrome的extension页面,拖过去安装.
另外,统计自己2015年过去工作之外的代码和笔记累计已经达到了8k行,突然觉得100k行代码不算什么啊.
好好努力吧.
trello
自己之前发了一个关于gtd工具的帖子,发现在web端/桌面端,trello还是非常舒服的.
关键是scrum这种方式,自己的TODO/Doing/DONE非常清晰,看到自己的DONE的列表也比较有成就感啊,从而激励自己继续工作啊.
Dell LT-100
换了一个键盘,手感还可以.