2013年就这么过去了,基本上是风平浪静相安无事的一年。一整年都献给了实验室,献给了所谓的“学术”,有一些代码上的经历,但是成果没有被认可,没有外在的收获。于是,下面就是我的2013
专业篇
从专业储备上来讲,还是有很多收获的,一少部分来自实验室,大部分来自与上半年的课堂学习。
最让我记忆深刻的大概就是《面向对象程序分析与设计》了,邵老师虽然古板,照本宣科,但是字里行间里还是说出了这门课的精髓,合理的课程设计也让我能循序渐进地进行学习。首先对软件设计方法有了全新的认识,不管是面向对象设计方法还是数据流设计方法都有自己的一套理论方法,都有不同的使用范围。如果要用四个字对面向对象进行概括,那一定是“返璞归真”,说白了,面向对象就是想从现实社会汲取能力,用现实社会的逻辑关系来设计问题域。而面向对象就是研究在问题域设计时的一套理论方法,很多都是很实用的,框架性很强的东西,对理解程序设计有很大的帮助,感觉学完这门课就像是浴火重生,眼前开朗了许多。至于具体包含的内容大概就是OOA、OOD、OOP、问题域、数据接口、控制驱动和人机交互这几个大块吧,不过这本书侧重问题域的设计,也就是在OOA和OOD的类的设计上。
另一方面学习了并行程序设计,老实说余老师是有过实战经验的人,内容上有还有料,不过就是表达精准度和趣味性太低,很多知识点都没有搞懂,上课有点飘魂的感觉,余老师没有当好“推销员”,这门课一共介绍了3种并行技术,分别是openMP、pthread和MPI,这三种技术难度逐次递增,灵活性和能力也依次增加,openMP是无脑编译器并行优化,程序员对并行过程不可见,最多是能管一下变量的可见域;pthread是系统级API,可以任意新增线程,灵活性很大,不过不能跨平台;而MPI是一套有BSP模型衍生出来的并行程序语言,遵循每个超级步的“运行”,“通讯”和“同步”过程。跟着课堂习题写了一部分练习,记忆中包括一些矩阵运算,然后对数据的切割,将任务划分是其中最主要的工作,然后遵循BSP模型,一个合理的并行程序就这样出炉了,当然还有很多关于语言级别的事情需要处理(如同步、异步通行阿等等)。
关于实验室的工作安排,我确实无语到极点,不仅混乱无序,课堂学习的知识还没无情的轻视,长时间的被压迫在被随时逮住的状态,没有休假,过多不吐曹了。
这一年的后半年,开始接触网站设计,靠着个人的努力摸清了网站工作的模式(这里必须批评自己,认识的牛人那么多,随便联系几个都是牛的不行,为什么非要闭门造车!)。在我的工作中,我用了最典型的lamp结构。后台Mysql,通信用php和Ajax,前台用HTML和JavaScript。这个工作的主要时间是花在前台的代码编写上,当然用到了一些库,Boostrap用于网页风格,d3用来绘制基本图形,Jquery简化程序书写。
最后,应该是学习的重头,可是因为方向和实验室时间加自身的关系,没能吃透这方面内容。课程学习方面,还是只有上半年的学习,包括“计算智能“和“模式识别”,前面一个是水课,能学到的是思想和概念,不过可能足已;后面一个是不错的课,很多公式老师都会课堂推倒,也会有一些高度上的解释吧。在计算智能这门课上,听到了很多名词,这些名词都说是用来解决这样一类问题,这类问题是NP的,正常途径难以求最优解,于是人们利用观察一些自然现象概括出一些模式,用这些模式来解决人类领域的难解问题。这些名词包括:”蚁群算法“, ”粒子群算法“, ”神经网络“等。“模式识别”这门课似乎是数学学院开的课程,理论色彩浓一些,听着很舒服,一步一步安营扎寨式的推进,老师也很尽职尽责,只可惜我的基础知识不好,当线性代数的知识扩展到高维上时,很多时候就手足无措(需要补充一些关于高维上的线性代数知识)。知识方面,除了高级理论没有理解外,基本的概念和模型都已经知道。什么线性分类器、bayes模型、SVM、kernel density,不过这方面一直没有运用,特别是去年搞了好长一段时间的topic model一直都还停留在表层。
实战篇
实验室做的一些东西偏工程,之前做的几个都有些急功近利,没有设计好,接下来编程之前要好好的设计掌握编程模式。
大约是从暑假开始,莫名其妙的和实验室的同学搭上了写TC的车,写TC是非常费体力、脑力和时间的事情,不过我相信会越来越顺利的。小弱惭愧,至今还挣扎在“蓝”“绿”之间,在几次挣扎之后,终于回到了DIV 1。2014 Fighting!
技术上走过很多个年头,这些年断断续续一直痴迷于技术上的进步,积累的厚度已经到了,该是释放的时候了。去除急功近利的心态,从基本需求抓起,养成良好的文字梳理习惯,从基本规范做起,及时分析,及时总结,在加上高端”装逼“,事可成亦。
音乐篇
我的音乐引爆点就是一把吉他,这把吉他引起了我对音乐极大的兴趣,当然之前是有长期的心理准备期的。
第一把吉他来自于室友的“二手货”,不过很快自己有拥有了属于自己的新吉他,我的Dove。刚开始的时候,对音乐真的是一无所知,五音不全,记忆力差这些都是缺点,不过似乎这些都不是问题。底子差,要赶上平均水平,就要急功近利,爆发式的进步,于是我一开始就上和弦,从C、D、Am,Em、到最后的G,然后就学会了弹唱《童年》,《童年》是我用吉他弹唱最舒服的一首歌曲。接着除了学习吉他技术,开始接触乐理知识理解音程、调式和弦,旋律等基本知识。然后,就是看了一些书,了解了一些风格上的东西,如摇滚,灵魂乐,jazz等,这部分还是要去体会。
接下来,这一年没有在公开场合进行演奏,上半年买好新吉他,学一些基本的吉他弹奏知识,学会了扫弦、切弦、一些常用节奏型和和弦分解。买了一些书,学会的曲目有《童年》、《你知道我的迷茫》等。后半年开始努力弹奏潘尚文版的D调《卡农》,旋律基本可以弹下来,不过不够火候的演奏技巧上不能使我驾驭这个曲子,最近学习了大伟吉他的千与千寻片尾曲《永远同在》,这个旋律线比较适合初学者,所以我差不多可以演奏这个曲子。在回来说一些弹唱,今年大把的时间都在学习乐理知识,没有去专门学习弹唱的曲子,所以表演的机会并不多,接下来的事情就是要盘活这一块,在训练好听力和对记谱能力的基础上,让自己的弹唱更深刻。
最后,今年还参加了新秋合唱团,名义上的零基础还是超过了我的零,随着排练的进行,没能更上其他人的脚步,参加了四次排练后,无奈退出了跟团排练,不过今年会继续,不放弃。
个人问题
有尝试,没结果,2014 Fight!
阅读
小时候阅读的东西少,文字处理能力差,今年看了一些书,包括一些经典作品《活着》,《麦田守护者》,《黑客与画家》,《地下蓝调乡愁》,每读一次书都能在事后让自己开朗很多,也安静很多。所以,接下来要继续看书,看好书,跟着厉害的人看。
科研
暑假是这一年科研的分水领,前半年搞了Large Matrix和Edge Bundling的库实现,Large Matrix无疾而终;中间经历一次竞赛。暑假认认真真做了一回助教,还是挺开心的;后半年做Lab Comparison,把网站方面的东西搞通了一遍,做出一个基本能用的版本。发表成果0。