这两天被Google Code Jam的Falling Diamonds折腾的死去活来,坚持不看官方的Analysis,总算把small data给过了。
慢慢地我体会到了,只有自己想出来的东西才属于自己。
在Think、Do、Feel和Reflect的学习模型中,我属于Reflect,也就是学习型。我倾向于先学习别人的思路,然后举一反三,推陈出新。但是,这也是一种局限,特别是写代码的时候,有的东西只有自己写了实践了才会有深刻的体会。这2个月,我一直在挑战自己,我要求自己先写,哪怕是一个糟糕的解决方案。
Google Code Jam对我来说是一个机会。我喜欢这种挑战,时间是有限制的,然后,有点临场发挥的意思,和HTML5 Code Jam有某方面的相似。
我解的几道题思想很简单,二分搜索、贪婪算法、动态规划。主要是用c和python来解题。一开始是用传统的c,后来懒得开IDE,就用python了。对于python是越用越喜欢,可以不用编译了,不用写类型了,写的代码比较简洁易懂。解完题后,我也看了一些别人的解题代码,总的来说,python的解题代码要比c和c++的简单易懂。
当Content系统显示Correct的时候,总是很激动,很开心,“看,我又搞定了!”
5、6月份没有参加什么社区活动、也没有写一篇blog,不过,github上倒是时常有更新,看着Your Contributions一点点变绿,我告诉自己这是我想做的。
对于github上的Dicom Web Viewer小有兴趣,一个javascript写的dicom viewer,简单好用。整个项目处在初级阶段,我在想是不是要引入一些requirejs之类的库,管理开始慢慢变复杂的项目,或者用Bootstrap把界面弄的好看点。不过,我不是这个项目的创始人,这完全是我的空想。和项目创始人ivmartel有过简单的交流:他们的窗宽窗位调节起来特别慢,所以,我有chrome 的timeline分析了一下,发现他们用的一个二值化库很慢,ivmartel很高兴发现了这个问题。
5、6月份我与Code就这几件事:)