08 2012 档案
摘要:ASE的个人项目刚刚结束。布置作业的时候交了一个预报告,大概估计了一下所需时间和代码数量等情况。现在做完之后翻出来那时做的计划,发现与实际相差甚远:原以为是一个比较简单的题目,布置下来之后没花多长时间就把算法想好了,我也仿佛看到了那一行行写完的代码。而且在第二天就能够实现单个文件的统计了,期望小改动一下就可以完成任务,结果……几个问题吧:1、 时间问题:最初想的数据结构是最简单的线性链表,当时的想法是“先把简单的实现出来,有一个结果之后再往下做”,这样的后果就是——慢!一个小文件根本体现不出运行时间,到最后不得不改进数据结构。本想自己实现一个Hash函数,结果花了一天时间,程序还是有错,就放弃
阅读全文
摘要:这是一本很短的书,只有区区120页,然而却完整涵盖了一位斯坦福博士的六年“职业生涯”,把作者六年里各个时期的工作,状态及心理记录的十分清楚。完整读下来,我随着作者的心情起起伏伏,当作者痛苦的度过当苦力的第一年时,我喟叹读博的艰辛;当作者的研究收到来自世界各地的感谢时,我能深刻的体会到作者的喜悦。这本书很真实,经历真实,感情真实,虽然这只是某一所学校的某一个学生,虽然只是计算机这一个学科,虽然就像作者所说的每个博士的读博经历都各不相同,但是我们还是能从这本书中一探读博的生活到底是怎样的,以至于学术研究到底是怎样的一个”Game”。Ph.D.到底是什么?在很多人的印象里,高学历意味着高待遇的工作,
阅读全文
摘要:三周前按照邹欣老师的要求,我开始这本114页长的The Ph.D. Grind。一个CS博士的回忆录。他在书中向我们完整的展示了一个Ph.D.学生在六年中经历的事情。这本书最大的特点就是真实,真实的让我感觉阅读时仿佛我就成为了那个MIT的博士,体验着整日整夜调试程序的折磨,感受着维护那个不怎么“Academic”的工具时的乐趣,最后在答辩通过时一起欢呼。同时,这本书并不是简单的叙述当时发生的事,而是总会以过来人的视角重新审视当时的做法,这种回顾对我们这些没有经历过的人来说是最宝贵的财富,因为以后我们面对相似的状况时有了一个参考,可以不必重复那些愚蠢的错误了。这本书用“折磨”(Grind)这个词
阅读全文
摘要:《The PhD Grind》这篇文章讲述了作者——一个Stanford的博士生——在读博阶段的经历。我将以时间为顺序,重述作者在不同时间段面对的机遇与挑战并加入我个人的观点和感想。前三年对于作者来说是“在徘徊中度过的”。刚进入博士第一年的作者感觉不适应:本科和硕士阶段的研究是其他人曾经做过的或者相关的,而博士阶段则是前人未曾进入过的领域;更加令作者苦恼的是,他把大多数时间花在调试Klee上(Klee是一个能够帮助其他软件找出bug的软件)而不是使用Klee上(而这正是他的导师给他的任务)。他感觉自己不像在做研究,而是在做一些基本的、不需要花时间思考新想法的事情。之后作者获得了NDSEG的奖学
阅读全文
摘要:花了将近两周的时间,断断续续,时快时慢终于读完了这本《The Ph.D. Grind》,体验了一位普通而又不同寻常的博士生的博士研究生涯。说作者不同寻常,是因为作者Philip大学生活全部是在名校中度过的(本科和硕士在MIT,PhD在standford),名校的生活给作者的是不同寻常的难忘的经历。说作者普通,是因为作者也经历了每个普通的学生一样的内心的波动起伏和为了赶deadline的忙碌。可能我们大多数人没有像Philip一样的经历,但是他的经历或多或少会和我们的将来的生活有相似之处。 读过之后首先觉得家庭背景的重要性。所谓家庭背景的重要,是一个家庭的氛围对下一代人成长的重要性。父母的品质会
阅读全文
摘要:经过一个中午的激烈讨论,我们全体CodeRepublicers终于制定出了team contribution score的评分标准,具体的内容如下: 1.评分采取互评的机制,每个人给除自己以外的组内成员评分。每个人的最后得分为其他四个人打分的平均分。2. 评分标准分成完成数量、完成质量、工作态度和创新想法四个部分。具体评分时,评分人根据实际的情况酌情给分。 完成数量:主要看每个人是否按时完成了组内安排的任务,大体上分成未按时完成、按时完成和超额完成。 完成质量:主要看每个人是否高质量完成了自己的任务。比如说代码书写是否有过多的BUG,还有在博客上发表的文章的数目和质量等等。 工作态度:主要..
阅读全文
摘要:作为ASE的第一次作业,我选择了看以前学长的博客。记得招生宣传的时候,SouthSeven队的Kongfu Stonie给了我很深的印象。于是我用半天的时间看过了去年SouthSeven队的工程博客,从中体会最深就是:写出一个高质量的软件真的很不容易。做一个实际的project设想SouthSeven队成功的因素之一,在于最开始的设想新颖(声控+音乐游戏),而又没有太高的知识要求。回想我做过的机器人,10届师兄的真人拳皇都没有做成或没有完全达到预想,原因就是最初提出了太高的预期而中间又碰到了知识和能力准备不足的问题。所以这次要摒弃那种空想式的设想,拿出一个靠谱的project。做一个好的计划S
阅读全文
摘要:这两天按要求陆陆续续地读了几篇08学长的博客,看了他们从刚开始,到pair work,到team work,从一行行代码到alpha版本beta版本,对软件工程这门课有了新一层的认识。在技术层面上来说,我得到的是方法上的指导。作为一个数学专业的学生,我之前没有上过类似的课,甚至没有上过几门跟计算机相关的课。我之前也曾经写过一些小程序,但是从来没有真正写过一个能实现很多功能的大型程序,而且就在我写小程序的过程中也经常出现写了后面忘了前面,变量名混乱等等的情况。同时,我对项目管理的概念也非常模糊。这次软件工程课对我来说的确是一个非常好的机会来锻炼自己的编程水平和全局掌控力。我在学长的博客里看到了非
阅读全文
摘要:由于我们哈工大的六位同学是第一批参加联合培养班的HITer,导致我们没有可以交流经验的学长。不过通过看往届科大班学长们的blog,加上在学校上的软件工程的课程以及之前做软件开发的一些经历,我还是有一些想法的。首先说说在学校上的软件工程的课。我们这门课分为两部分,一部分是理论学习,就是正常的老师授课的形式,把软件开发的每个阶段都要做什么,怎么做大概讲一讲,只有非常少量的作业,而且仅仅停留在理论阶段,这个理论课要上半学期。另一部分是软件开发实践,几个人一个组开发一个软件,在开发的各个时期要给出需求分析报告,系统设计报告等等,最后也要做出一个成品来。看起来非常合理的课程设计,但是实际操作起来就没有看
阅读全文
摘要:在阅读了“SouthSeven”的博客之后,我充分感受到了开发一套软件是一个很艰难的过程,平时使用时看起来平淡无奇的软件居然需要如此繁杂的开发过程。我把难点分成了三点,希望我们在这个过程中能够克服困难,最大程度上解决这些难题。最直接的是技术方面:一方面是如何写出高效的代码。这不仅需要良好的编程能力,还需要好的编程习惯:如何能提供好的接口供其它人使用?能否提供清晰有效的算法?等等。另一方面是美工:这涉及到用户界面、美术、音乐、视频等等。如果开发的是一款游戏的话,上述因素都是至关重要的,如何利用有限的资源做出尽量令人满意的成果是我们应该着重考虑的问题。之后是组内协调方面:我们需要组内成员各司其职、
阅读全文
摘要:今天花了一个上午的时间阅读08级MSRA_USTC联合培养实验班的“meng-meng”组的师兄师姐写的博客,从他们的文字中感悟了上微软班的高级软件工程课程的整个历程。下面写的是我的一些感想和总结,既是自勉,也是学长们的一些经验和大家分享:1.关于团队合作这个小组中的每个人要尽量发挥自己的长处。我们是一个整体,需要每一个人的力量。队友之间最重要的是互相协作,成功的项目都不是靠一个人完成的。每个人的特点不同,所以大家的想法也不同。合作的过程中难免会有意见冲突,这时大家需要的是多交流。通过交流让每个人都得到提高,通过交流让困难得以解决。2.关于时间安排因为做这个项目的时间相对来说比较短,而且在做这
阅读全文
摘要:Hi,我们是来自MSRA联合培养班的五名同学,在未来的3个月里我们将与殷秋丰老师以及虽然去了STC但仍然阴魂不散的邹欣老师一起学习高级软件工程这门课。我们组的组名是CodeRepublic,多么顺口而又毫无意义的名字呀。以下是我们组员的基本信息:吴畏,来自中国科学技术大学少年班学院,现在MSRA的CV组,南京出产;夏应策,来自中国科学技术大学信息安全专业,现在MSRA的CV组,沈阳出产;顾雨鹏,来自中国科学技术大学少年班学院应用数学专业,现在MSRA的CV组,沈阳出产;姚宏毅,来自中国科学技术大学计算机科学与技术专业,现在MSRA的W&N组,哈尔滨出产;胡越,来自哈尔滨工业大学计算机科
阅读全文