Profil de 页希I am who I amPhotosBlogListesPlus ![]() | Aide |
|
30 avril 前世谁埋的你(转) 从前有个书生,和未婚妻约好在某年某月某日结婚。到那一天,未婚妻却嫁给了别人。 27 avril 偷懒发一首歌当你在穿山越岭的另一边 16 avril 写在23岁生日之时 12点了,也就是说我的23岁生日就要到了。刚把一段困扰我几天的程序写完,一个人坐在实验室里在这里随便写些东 西,顺便做一些回顾。 这一年也算是经历了一些事情,好的坏的都有,但总的来说坏的居多。手术,毕业,入学,申请,拿到ad,拿到offer,失恋,拿到rej,据掉offer,第一次给别人上课,看第一篇paper,改第一篇paper,发第一篇paper...感觉比以前很多年得经历都多。无论是好是坏,总归让我有所历练。其实也不能说是坏的,有些看似坏的事情往往能够更加锻炼人使人更加成熟起来。没有坏得一塌糊涂得事正如没有好的完美无缺得事,至少我是这么想。想想这一年里,自己的进步还是不小的。与人沟通得能力变强了,不再像以前那样交往贫瘠,成为边缘人。自信心也有一定得增强,敢于表现自己,这得益于实验室的报告制度以及讨论班制度,上一门课,讲一篇论文,每个人都需要做报告,把自己的所学以及心得体会讲给大家听,这样才能够真正检验自己是否学到。理论上有所提升,学习得效率有所提高,以往看一篇论文至少要3天才能懂一个大概,现在半天能搞定一个general idea,再看半天就基本把detail弄懂了(比较变态的文章除外),如果需要写程序把论文中的思路实现的话,还是需要好几天的时间才行。专业基本功也有所提升,现在看看一年前写的那些code,感觉很naive,就如同一年前看再以前的code一样,这个现象很好,我很喜欢~ 对于未来,在最低潮的时候我很迷茫。其实现在也不是很明确,我以后到底干什么呢,是毕业了直接工作还是继续读phd呢?两条路我都有一定的兴趣,选择任何一种都会失去另一种得乐趣。其实我感兴趣的东西很多,就学科来说,除了政治文学医学不感冒以外其他都还行。在这两年里,我希望能够搞清楚这个问题。时常和老爸email通信,询问关于美国学习的种种问题,同时他也给我介绍了一些UNC的学生让我与他们交流。我总觉得读phd是个不错的选择,但是想想还要读那么多年,读完就成了大龄青年了...人生的最好时光全部在学校度过这点让我有所顾忌。不过做研究确实能够让人很有成就感,特别是计算机这种非纯理论的研究成果可以很容易的在实际生活中用上。也许这就是为什么面对如此高的代价很多人还对此乐此不疲吧。 太晚了,再不回去寝室就关门了。对于以后,也许没法确定,但是我们可以从现在就做起,也许将来的结果不是我们所期望的,但是我们努力了,所以也会无悔的。努力把握现在,不要让将来后悔。 27 mars A new start begins when the offer is declined写在MySpace上面的,懒得再用中文写了。 I have just declined the offer with the scholarship of National University of Singapore (NUS), department of Information System. However, I haven't received the scholarship from any other universities from the U.S.
26 mars 每天都应抽出时间思考最近几个星期每周在实验室呆的时间大概都是70-80小时,做了很多的事情,看了很多的材料。《Gene Expression Programming》、《c++ code standard》、了解CUDA、看模式识别、帮师兄写试验程序、写数据预处理程序、改论文、做实验,还有一堆琐事,总之事情一大堆,每天忙得不可开交。 但是我感觉,这一段时间的收获并不大,做的很多的事情都是机械性的工作,没有什么创造力。相反,正式因为这些事情做多了,导致思考的时间大大减少了。我想,如果一直这样持续下去的话,我会慢慢沦为一个没有思想的人,这样是很可怕的。想想要是整天忙得昏天暗地,但是没有一点成就感,一天下来,拖着疲惫的身体回到寝室回想不起这一天到底做了什么事情,那是相当的令人沮丧的。 有的人很辛苦,天天起早贪黑忙于工作但是却没什么成就,这是为什么呢?因为他们没有创造了,他做的事情不难找一个替代者。相反,有的人相对不是整天忙里忙外,但是却成就显赫,这又是为什么呢?抛开非预见性因素外,他们都有一个共同点,那就是他们所做的事情几乎是独一无二的,没有多少人能够轻易的顶替。他们所做的工作都是需要大量的思考才能够完成,而这些思考工作并不能由其他人轻易复制。 想想自己,愿意做哪一种人呢,虽然我并不害怕很辛苦,但是我不喜欢没有成就感。自己这一段时间,几乎没有思考过什么问题,有也是非创造性的思考,而且是在零散的时间。以前看过一篇文章,《勤奋不代表一切》,当时只是一知半解,但随着后来的一些了解,觉得这是相当对的。单纯的勤奋是苦力活,真正的勤奋是有创造力的基础上的勤奋。盲目的勤奋的作用只有10%的效果,这就是为什么很多人都很努力但就是没有成效,因为他们的脑袋里面没有一个清晰的思路,明确的目标。 对于思考,我们应该把它提升为每天都必须做的一件事情。也许我们确实很忙,但也应该能够抽出半个小时的时间,什么也不做,就是拿来思考。这样看起来似乎有些浪费时间,然而,这样做是有潜在的好处的。它能够让我们避免很多不必要的事情而把主要精力集中在最能够发挥效用的地方。 人生如同爬山,每个人的精力或许都差不多,如何爬得更高取决于选择什么样的路,如果停下来思考并找到了当前所在位置的梯度,那么无疑可以比别人爬得更高。虽然停下来思考消耗了时间,这段时间也许别人也在爬山,但是思考过后所选择的路径会使得事半功倍,后发先至,远远的甩开别人与身后。 每天都专门抽出时间思考吧! 20 mars 纯流水账感觉这一周的效率比较低,以前一天可以做的事情现在要拖到两天才能完成,不知道为什么过得有些稀里糊涂的。时间花得一样多,但是效率千差万别。 今天上午上了数学课过后就一直待在实验室到现在,按理说也有7,8个小时了,但是却没有做多少事情,无非就是把上次模式识别的课程复习了一下(准确说是后预习...讲得比我看得快,而且难度又大)然后把通用计算的环境配好,然后看了点点《C++ Coding Standard》。 想想真是效率低,可能主要是在模式识别上花得时间太多了。没办法,悟性低,看了半天也是一知半解,只是把书上看懂了真正用起来还是不会。下次去参观一下别人是怎么利用一天的时间的... 19 mars 最近的生活应肖哥的要求,要多写写自己的生活情况。其实我自己也有这个想法,以后把专业方面的文章全部贴在另一个blog里面(http://hi.csdn.net/yxjiang)。这样子就免得这个地方显得太沉闷了。 关于最近的生活,其实挺单调的,无非就是天天呆在实验室里面,看书,看论文,写程序。简直可以说是两耳不闻窗外事的生活。这样的生活既有好处也有坏处,好处就是可以在短时间内迅速提高专业能力,坏处就是这样的提高是以很多其他方面的损失作为代价的。现在越来越感觉到这样的生活弊大于利,学出来的人就像机器一样,功能极为单一,出了狭窄的领域一无所知。于是自己一直想着怎么改变。 对于以后我要过什么样的生活,我自己也没有把握,不过毫无以为,大家都想过好生活。但是什么样的生活才较好的生活呢,我想一千个人有一千个不同的答案。就我而言,这个概念比较模糊。模糊的原因是之前几乎没有认真思考过这方面的问题,一直过着一种机械化式的生活,日复一日,月复一月。现在突然考虑起这个问题来,难免有些摸不清方向。 跟一些朋友就这个问题谈了一下,不过别人的看法终究不能取代自己的想法,于是借了一本书,爱默生的《生活的准则》来自我启发一下,希望能够有所帮助。都这么大了,这个问题还没有开始考虑确实有些不应该。 最后感谢肖哥的建议让我一个尚未行动的想法产生推动作用,以后不出意外这里不会出现过于专业的让人生厌的文章了。 13 mars 解决关于DLL一些疑惑通过询问sandro师兄和Forrest,解决了一个关于DLL中类的疑惑,非常感谢这两位不厌其烦的解答! 要引入一个库,有三样相关的东西,dll文件,lib文件以及头文件。这里的lib文件不是单纯的lib文件,而是dll的lib文件,与通常的lib文件不同的是相对于一般的包含obj的lib文件它里面只包含有符号表。 如果我们要在一个工程中使用dll库,可以有几种方法。(以visual stuidio 2008为例)
把库的头文件和lib文件放到工程目录里面,放在什么地方自己定,然后在工程属性的C/C++->Additional Include Directories里面设置头文件的存放目录以及在Linker->Input里面的Additional Dependences里面设置lib文件的位置。注意dll文件要放在exe同一个文件夹里面(或者%windows%\system32下面或者PATH路径指定的地方),否则程序会因为找不到dll文件而出错。当然,在vs环境下因为当前目录是工程目录,所以dll文件即使放在工程目录里这个问题还不会体现出来,一旦程序release过后,没有了工程文件,自然就找不到dll文件了。
用动态方法lib就是多余的了,与(二)的方法一样,但是想用动态方法得到类是比较困难的。而且操作比较麻烦。一般不提倡这样用。具体方法可以参看: (Using classes exported from a DLL using LoadLibrary,http://www.codeproject.com/KB/DLL/classesexportedusingLL.aspx) 它的中文翻译可以在这里找到http://waterlin78.gjjblog.com/archives/1053556/。 如果没有使用lib二直接根据头文件的信息来生成类的话,那么会出现这个链接错误。 unresolved external symbol "public: int __thiscall TestClass::add(int,int)" (?add@TestClass@@QAEHHH@Z) referenced in function _main
二、如果只用头文件和dll文件,那么就只有动态方法了。 使用动态方法不需要lib文件,程序直接通过LoadLibrary来加载动态链接库,然后通过GetProcAddress来获取函数入口地址,进行操作。比如dll文件中有一个int add(int a, int b)这样的函数,那么我们可以定义一个这样的函数指针类型typedef int(*func)(int, int)来获取函数。func addFunc = (func)GetProcAddress(hInst, "add"),其中hInst是实例句柄,add是dll中函数的名字。之后我们通过addFunc(int, int)来操作了。 参考文献: (Using classes exported from a DLL using LoadLibrary,http://www.codeproject.com/KB/DLL/classesexportedusingLL.aspx)。 使用LoadLibrary调用DLL中输出的class,http://waterlin78.gjjblog.com/archives/1053556/。 如何做才能从dll中导出类,http://magichere.bokee.com/viewdiary.13373439.html。 VC++中Dll的调用与Dll的调试, http://www.mxjava.com/blog/article.asp?id=223 4 février 编程能力有待进一步加强无意间访问了一位从UESTC出去的仁兄的blog,发现这位仁兄正在学校饱受由于编程能力有限而无法很好完成project之苦,不管是做学术还是做工程这项能力都是必不可少的啊,无论在纸上推公式推得多么优美,最终还是要验证的。希望他通过这几个月的奋起能够大大提升实力。 想到自己,不免倒吸一口凉气。赶快继续加油吧,和这位仁兄一同进步。
1 février 由搭建Infrastructure of Machine Learning所想到的这一段时间和唐良师兄一起做一些Machine Learning的基础工作,准备把目前一些最基本的算法用C++实现做成库,方便以后实验室做实验。同时他的观点和我一直所想的一些观点一致,现在正好借此机会写出来。 这个工作看起来非常的没意思,只是做一些前人早就已经完成的工作,相当的没有创造性,也不能够有所成果。其实不然,这样做是有很多好处的。而且对于实验室对于个人来说都有好处。 首先对于实验室。我想做过论文实验的人很多都有这样的体会,那就是做一个对比试验需要做很多重复性的工作,把别人的文章中的数据结构和算法重新实现一遍,然后和自己的做比较。这样是很耗费精力的,因为每次做实验都要多写很多的重复性程序,其实真正有价值的只是自己那个,其他的只是“绿叶”而已。可是不这样做不行,因为在很多情况下对比实验是必须的,没有的话自己的数据结构或者算法会显得相当没有说服力。因此大家通常有两条途径获得对比程序,第一是直接找原作者找现成的代码,第二是自己实现,两种方法各有利弊。 对于第一种而言,这种方法很省力,而且得到的代码也是由原作者亲自写的,既能够完全反映原作者的想法又有权威性。但是它有一个缺点,那就是当时的程序所处的环境也许和你现在的环境不一样,或者使用的程序语言不一样,和自己的程序不具有可比性,不能够拿来做对比试验。另外,原作者的测试数据与自己的测试数据也可能类型不同,这样原作者的程序也不能拿来直接用。总而言之,使用原作者现成的程序的局限性很大。 对于第二种方法来说,自己写程序确实能够完全满足自己订立的规约,能够很好的用到自己设计的实验当中,而且自己写的程序具有很好的可比性,能够做到各个程序在完全相同的环境下运行,做出的实验比较公正真实。然而这样做的时间成本很高,而且经常是做的重复性工作,往往做一个对比实验需要若干个其他同类型的程序,全部自己从头一个个写相当耗费时间,而且一些程序还需要其他的基础,比如使用其他的更基础的数据结构和算法,这样下来我们又需要实现那些程序,这样是相当漫长而痛苦的一个过程。 因此,如果对自己所有的实验订立一个统一的标准的话,那么以往做实验时做过的工作就可以重用,从而大大减少实验准备时间。当然,对于一个实验室或者一个group而言,大家可以共同订立一个规约,从而可以共享以往的实验资源,这样对大家都有好处。国外很多的实验室都有自己的一套体系,都具有积累了多年的实验资源。这样,如果需要做一个新的实验,只需要简单的使用以前的资源,节省了大量的时间,同时减少了出现错误的几率。然而国内的情况并不是这么理想,有相当大一部分实验室是单兵作战,或者是一个非延续性的团体。大家做实验都是“自己做原材料,从原始社会开始工作”,这样是很难达到很高的水平的,这不是因为我们达不到高水平,而是因为从最基础的开始做起达到高水平时间成本太高了,一般人承受不了。我们国人的科研能力应该说是相当强的,不然顶级会议上不会出现这么多华裔人的面孔。 现在来说说对于个人的好处,这个就不细讲了。无非就是可以让自己快速的熟悉这个领域,其次就是提高自己的动手能力。对于前者,有些人会说,看专著读综述可以更快的了解。这个确实没错,但是这样只是被动的接收知识,很难以牢固的掌握。俗话说百闻不如一见,同样,百见不如一练,只有自己亲手做过的事情自己才有印象。也许有人有这个经历,上课总觉得不如自己看书效果来得好,一上课就犯困,但是自己看书就不会困。这是因为我们的注意力没法集中的原因,主动接收信息和被动接收信息无论从强度还是持续性来说差别都是很大的。可能大家也有这样的感觉,那就是看过的书学过的内容过了一段时间就会遗忘。这是很正常的现象,而且印象越浅的东西遗忘得越快,另外就是别人的东西比自己的东西遗忘的快,这些都是客观规律。如果我们要想遗忘的慢些,那么自己动手重复前人的最基础的工作就是一种很好的方法了。这样学到的知识是扎扎实实的,而不是仅仅浮于纸面上。纸面上的东西学的再好,即使倒背如流,那始终是别人的东西,只是能够用来考考试。只有把纸面上的东西消化了,那才能够真正达到融会贯通的程度,才能源于他人,超越他人,也才能算得上是熟悉了这个领域,如果自己不投身进来,那永远是个门外汉。 对于提高动手能力这一点,这一点也显而易见。对于我们这个以应试教育为主的国家来说,现在有很多学生具有很强的考试能力,然而在真正决定生产力的实际动手能力上来说是欠缺很多的。虽然这个问题在近几年开始有所改善,但是依然问题严重。总体来说,我们学生的实际动手能力普遍不足,能力高的人可谓凤毛麟角,而理论与实践能力均强者更是寥寥无几。这种情况与国外有着很大的差距,据我所知,国外CS本科生的很多课都有课程设计,比如如果学数据库的话就很可能把所有选课的人分成若干小组,每个小组独立开发出一个具有基本功能的小型数据库来,然后再进行评比。当然,我们也有课程设计课,但是含金量怎么样呢,这个我们就心知肚明了,似乎写一个B树或者B+树的就算很好的了,写一个独立存在的数据库就不用考虑了。也许有人会认为这些都是别人已经做过的事情,我们不用去重做。那好,这个观点很正确,前面我也提过,重复工作不用去做。但是有一个前提,那就是如果让我们去实现一个很基础的东西,比如B树,我们能够很容易的搞定,那么我们就确实不需要考虑这些基础的东西了。但是如果我们连基础都不能够深入理解的话就不要去架构空中楼阁了。那是不牢靠的。总而言之,无论是做工程还是做理论(做纯计算理论者除外),动手能力都必不可少。做工程的不必多说,动手能力不强没法做出来。对于做理论的来说,没有扎实的功底来实现实验,那么再绝妙的idea都是没有说服力的。 以上就是我的一些看法,可能不完全正确,不对之处请提出。 27 janvier 学术界的四种鸡偶然在网上看到一篇帖子,是将学术界的,感觉其中有些说法挺有趣也挺有道理,将此写下来。
16 janvier (转)Harvard自习室警句难得这次又转贴,不过一是由于太久没写了,二是转的内容确实有价值。 本来今天状态不大好,放松一下看看别人的博客,在加内特同学那里看到了这个。以前在《爱在哈佛》里面见到了Harvard的图书馆,当时就觉得很有去学习的想法,现在看了这些警句,更是向往。真是智慧的结晶啊。 1.此刻打盹,你将做梦;而此刻学习,你将圆梦。 附上英文版: 1. This moment will nap, you will have a dream; But this moment study,you will interpret a dream. 2. I leave uncultivated today, was precisely yesterday perishestomorrow which person of the body implored. 3. Thought is already is late, exactly is the earliest time. 4. Not matter of the today will drag tomorrow. 5. Time the study pain is temporary, has not learned the pain islife-long. 6. Studies this matter, lacks the time, but is lacks diligently. 7. Perhaps happiness does not arrange the position, but succeeds mustarrange the position. 8. The study certainly is not the life complete. But, sincecontinually life part of - studies also is unable to conquer, what butalso can make? 9. Please enjoy the pain which is unable to avoid. 10. Only has compared to the others early, diligently diligently, canfeel the successful taste. 11. Nobody can casually succeed, it comes from the thoroughself-control and the will. 12. The time is passing. 13. Now drips the saliva, will become tomorrow the tear. 14. The dog equally study, the gentleman equally plays. 15. Today does not walk, will have to run tomorrow. 16. The investment future person will be, will be loyal to the realityperson. 17. The education level represents the income. 18. One day, has not been able again to come. 19. Even if the present, the match does not stop changes the page. 20. Has not been difficult, then does not have attains 21 décembre 学术牛人的讲座 这周数据库界的牛人在唐老师的邀请下来学院做讲座了,这下有幸一睹了世界级的数据库专家的风采。这次邀请来的是NUS计算机学院的院长Beng Chin Ooi教授,一起来的还有Anthony. K. H. Tung以及复旦大学的周傲英教授。作为SIGMOD07的Program Chair,Beng Chin Ooi教授在世界数据库届的地位自然是不用说。Tung教授是韩家炜以前的学生,年轻有为,刚进来的时候看样子我还以为是Ooi教授的一个学生,因为看起来太年轻了,穿着又和我们差不多...没想到介绍的时候说这个就是Anthony Tung...上周讨论班才讲了一篇他发表在SIGMOD上的文章...没想到过了一周这篇文章的作者就坐在我前面...真是一件很奇妙的事。至于周傲英教授,也算是国内数据库届的领军人物了,当年在川大读硕士的时候由于获得了两次NDBC的优秀论文,被唐老师推荐到复旦免试读博了,现在已经是复旦计算机系主任以及两个研究所的所长了。 7 septembre 用C++新编译器遇到的问题 直到最近我都还一直用的VC++6.0,这两天觉得新学期应该有新气象,决定安装个VS2005来适应新时代。折腾了一天后(下载,清理硬盘空间-_-b,安装),一个崭新的界面终于呈现在我眼前。恩,看起来是不错,界面感觉比6.0的现代化多了。 随即打开以前写的一个工程看看运行效果,谁知弹出一堆编译错误。不对啊,以前这个程序明明是调试通过了的,怎么可能...不会是RPWT吧.TT。没办法,一个个改吧... 看了看第一个错误是“warning C4346: 'BinSearchTree<T>::tree_node' : dependent name is not a type”。报错的地方是在27行,而我之前定义了个tree_node结构。 19 struct tree_node 20 { 21 T item; 22 tree_node *parent, *left, *right; 23 bool isHeader; 24 tree_node(){} 25 //tree_node(Iterator it){} 26 }; 27 typedef BinSearchTree<T>::tree_node* Link; 这里看起来没有任何错误 ,而且 错误确实只是针对这一行的,没有涉及后面的地方。这个错误也是我以前没有碰到过的,至少6.0没有报过这种错误。于是在网上查了一下。这一查也增长了见 识,原来这一句话是有歧义的。因为对于编译器来说,它并不知道什么是BinSearchTree<T>::tree_node,事实上 tree_node是一个嵌套依赖名字(nested dependent name),更准确的说是一个涉及到type类型的 嵌套依赖名字。也许现在说得还不是很明白,但看了下面一个例子就会知道了。 假设我们这样定义两个类: class Dummy { public: static int subOne; struct subIterator { T item; ……blablabla…… }; }; //另一个文件 template<class C> class Another { public: C& container; ……blablabla…… void visitDummy(const C& co); }; void Another<C>::visitDummy(const C& co) { C::subIterator *c; ……blablabla…… } 第一个类里面有两个成员,一个静态成员变量subOne,一个嵌套的结构体subIterator,其中包含一个成员变量。如果这时我们要在 visitDummy方法中得到subIterator,我们可能会采取上面看到的方法"C::subIterator *c;",咋一看,合情合理,在VC++6.0里面确实也没有问题,然而在2005里面这个会被看成是模棱两可的代码。这是为什么呢?因为我们编程的时候 总是按照自己的思路去思考,而不是按照编译器的方式去解释代码。对于人来说,这句话显而易见的变量申明。但是对编译器来说,它要考虑的问题就不仅仅是这点 代码了,它必须考虑到所有的情况。 而一种可能的情况就是,如果subIterator是一个静态数据成员,而恰巧c是一个全局变量,那么这行代码就表示的是乘法运算!这样,在单个文件中, 编译器就没法排除这样的可能性,它不知道C类型的具体情况,也就是说编译器不能区分这个是一个变量申明还是一个单纯的乘法问题!这看起来是一个愚蠢的问 题,但是编译器必须要考虑到所有的情况,哪怕是荒谬的,这就是它的严密性(可见2005的编译器比6.0严密)。 现在问题是发现了,怎么解决呢?当然是消除这种模棱两可的状况,我们要明确的告诉编译器这是一个类型而不是一个变量,这里我们就要把typename这个关键词紧挨着放在类型前面。 void Another<C>::visitDummy(const C& co) { typename C::subIterator *c; ……blablabla…… } 这样问题就消除了。同理,在返回值,typedef定义时也需要这个关键词。比如在我的代码中: 27 typedef typename BinSearchTree<T>::tree_node* Link; 522 typename BinSearchTree<T>::Iterator BinSearchTree<T>::Iterator::operator--() 523 { 524 ……blablabla…… 525 } 当然,这个规则也有例外。那就是typename不必前置于一个基类列表(list of base classes)中或者在一个成员初始化列表(member initialization)中作为一个基类标识符(base classes identifier)的嵌套依赖类型名(nested dependent type name)。比如 : tamplate<typename T> class Derived: public Base<T>::Nested //基类列表不需要typename { public: explicit Derived(int x) :Base<T>::Nested(x) //成员初始化列表不需要typename { typename Base<T>::Nested temp; //变量申明需要typename ……blablabla…… } }; 一些编译器接受必需 typename 时它却缺失的代码;一些编译器接受不许 typename 时它却存在的代码;还有少数的(通常是老旧的)会拒绝 typename 出现在它必需出现的地方。这就意味着 typename 和 nested dependent type names(嵌套依赖类型名)的交互作用会导致一些轻微的可移植性问题。 解决了第一个问题后,后面的相关问题也就自动消失了。 参考网页: http://blog.csdn.net/fatalerror99/archive/2005/12/04/543630.aspx 5 septembre 开学前总结整个暑假由于眼睛做手术很多计划都搁浅了,荒废了不少时间。由于不能多用眼睛,电脑不能多用,书也不能多看,加之没怎么锻炼,感觉整个暑假过得很无 聊。从去年十月份决定保研到今年九月这一段时间,除了中途两个月做毕业设计基本上就是在低效率中度过.想想前年这个时间段曾经用17天背了7遍GRE单词 真是有天壤之别. 看来对我来说,只有心中有明确的目标,才能够勤奋起来,否则就像现在一天到晚懒洋洋的,或者努力的程度很低.从大一大二的对未来的一无所知,到大三确 定目标的奋起,不过可惜的是,大学期间仅靠1年的努力是有限的,因此我的梦想还是搁浅了,为求稳妥继续留在了这里.目标的搁浅是很痛苦的,我又进入了漫长 的低效率时期. 眼看新学期开始了,各个学校都已开学,昔日的同学都开始了新的生活,曾经一起奋斗的朋友们不少已经踏上大洋彼岸,开始了新的奋斗.虽然很累,很苦,但 很满足.就连老爸也要到北卡和杜克做访问学者,一圆他青年时代的梦想(拿到的明尼苏达大学的offer,但当时单位不放人).好一个奋斗与圆梦的时代. 今天上网碰到到去港科的同学在群里,一来就问我一个公式的问题(差距啊,别人都在勤奋了我还在虚度).乍一看和物理有关,再一查是和fermat's principle有关,觉得比较棘手(我对物理兴趣不大),只好叫他把ppt传过来看完整的,看后觉得其实后面的公式变化是纯数学问题,这下觉得有点把 握了,但是变来变去总得不到末尾的等式.过了大概20分钟,终于灵光闪现,发现这不过是一个先通过一个三角变换后由泰勒公式展开.我晕,这样一个东西居然 想了这么久,看来数学是废掉了.最后我们得出一致结论,去补补数学吧,免得读研究生时丢人现眼. 还有几天就开学了,下半年的事情还不少,论文修改,青年创新工程,口语学习,貌似还有十一五项目,当然个人提升是少不了的.感觉每天的时间都会被榨干,还好,我喜欢充实的生活.为了不被其他人远远的抛在后面,该好好准备准备,重新瞄准目标,蓄势待发了. 1 août 好久没更新了前一段时间眼睛作了手术,很久没有更新博客了,看这里都感觉很萧条了。 ---------------------------------------------------------------------------------------------------------------------- 这几天听到师兄说的一些内幕以及自己一直以来的看法,很是悲观了一阵,害得睡觉都不得安宁,噩梦连连,醒来也是头痛不已,觉得前途一下子迷茫了起来。人也同时变得六神无主,抱怨不断。想想自己所付出的努力和自己的收获不成正比,觉得事事不公,上天不眷顾。 好在我是一个不服输的人,不愿顺其自然,也不愿自暴自弃。当然,我承认我还是相当的郁闷,郁闷到什么事情都不想做;郁闷到漫无目的上了一上午的网;郁闷到像个懦夫一样在梦中哭泣。郁闷归郁闷,终究不是个办法,我们不能遇到什么问题自己不能没有对策,否则就算是认输就是屈服。至少这不是我的风格。 其实转念一想,一切的不利因素也不一定就是很坏。什么不实干也好,学术造假也好,只不过是一个大的氛围,与自己没有必然的关系,只是会产生一定的影响。至于要受多大的影响就要看自己的定力了,定力越强越坚韧就越能抵抗外界的负面影响。至于我定力有多强,这个说不准,但不管怎样,将来要面对的环境逼迫我必须能够排除干扰,否则就会随大流,很不好的学术风气的大流。背水一战吧。 修学储能,先博后渊。从注重基础原理开始,戒骄戒躁,不能好高骛远。把所有基础的数学原理弄懂,把所有基础的算法一个一个实现,把算法的原理捉摸清楚,再考虑下一步的深度问题。也许这是一个比较枯燥不能立即见效的方法,但我想这是最扎实的做法。
----------------------------------------------------------------------------------------------------------------------
很多人说我每天都只知道看书,其他事情看似都没有兴趣。表面看上去是这样的,不喜欢散步,不喜欢出游,不喜欢逛街,不喜欢看电影,这样不喜欢,那样不喜欢。这样的人是多么的无趣啊,任何人与之相处都会乏味无比。也许我从表面上看也是这样的,但这并不是我所希望的。谁不希望在傍晚散散步,去欣赏美丽的夜景;谁不希望在假期出游,去感受自然的风光;又有谁不希望高兴时唱唱歌,逛逛街,看看电影。这样丰富多彩的生活我想没人不喜欢,没人不向往。 我也很希望过这样的生活,清晨跑跑步看看书下下棋,下午钓钓鱼唱唱歌,晚上散散步看看电影。这是多么美妙,多么丰富多彩的生活!可是,我现在还没法过这样的生活。当一个人物质层面的问题还没有解决的时候是没有办法解决精神层面的问题的。就如同一个处于温饱线以下的人是不会想今天晚上看什么电影的。当然,这里我只是打一个比方,我现在还没有遭遇到温饱相关问题。然而,当现实与理想差距得太大也使得我不得不放弃大部分精神层次的追求,而把绝大部分精力放在对这种差距的弥补上。这就是为什么我每天都在看书学习,其实这是我在弥补差距。在基本弥补了过后我也就自然而然的回复到正常的状态。好日子谁不想过,但是好日子要过得长远才行。看着高中那帮海外军团回来把麻将搓得昏天暗地,腐败的过着假期,那是别人有资本,别人耗得起,别人在学期里足够勤奋,足够优秀。就拿肖哥来说,靠着前1%的排名到了University of Sydney,在回国前的假期里也是全天候学习,回来随便玩自然是理所当然。而我就不一样了,我还差得远,要弥补的还多。现在还不是那样做的时候。 我之所以写这个,就是想澄清一下大家对我的看法,我并不是沉闷,我有很多兴趣爱好,我也想做很多的事情,只是不是不为,尚不能为。
PS:断断续续写出来的,可能逻辑不连贯。还请各位看官谅解。
10 juillet 中国少年说节选故今日之责任,不在他人,而全在我少年。少年智则国智,少年富则国富;少年强则国强,少年独立则国独立;少年自由则国自由,少年进步则国进步;少年胜于欧
洲则国胜于欧洲,少年雄于地球则国雄于地球。红日初升,其道大光。河出伏流,一泻汪洋。潜龙腾渊,鳞爪飞扬。乳虎啸谷,百兽震惶。鹰隼试翼,风尘吸张。奇
花初胎,矞矞皇皇。干将发硎,有作其芒。天戴其苍,地履其黄。纵有千古,横有八荒。前途似海,来日方长。美哉我少年中国,与天不老!壮哉我中国少年,与国
无疆! 8 juin 答辩结束 其实前天答辩对我来说就已经结束了,只比不过一直没有上来写,今天收到了邮件,答辩结果已经出来了,按理来说应该很高兴的,但不知道为什么没有什么感觉。可能原因是多方面的吧,不过这里我只想到了两个。 1.就设计以及论文本身来说没有什么创新性,充其量来说就是对一些技术的灵活运用与综合。而且最终系统的效果也没有理想中的那么完美。工作量也不是很大, 一个5,6千行的程序(包括测试程序)就能够换取94分的成绩从性价比来说也许是过高了(注意,其中没有什么独创之处)。也许很多人会觉得较少的代价换取 较多的成绩是一件很好的事情,这完全符合正常思维,不过在我眼中来看就有些名不符实了,我觉得靠实打实的努力换取应有的成绩才算比较圆满,也许我太苛求了 吧。 2.仅仅是毕业设计得分高说明不了任何问题,自己目前的前途才能说明一切,望着一个个插上翅膀飞跃重洋满怀斗志的人们,我也不知道自己有什么感想。我甚至 连失败都说不上,如果真是失败了我倒可以欣然接受,因为失败了就说明自己确确实实不行,还需大大加强。然而我连失败的经历都没有。 发觉不论什么事情都扯到这个上面来了,真是让自己都很反感。本来说好答辩完了好好给自己放几天假的,结果又不自觉地看起书来。明明知道这样不好,自己却在这样做,真是不知道自己心里怎么想的。 看来还是心态问题啊。不成熟,不成熟。 革命尚未成功,同志尚需努力。 31 mai 老爸的“offer” 今天老爸递给我一张纸,仔细一看,是MSU的邀请信。看来老爸是尘埃落定了,就等着其他更好的学校了。 年轻时老爸的出国梦因为一个很无奈的原因而搁浅,过了二十几年,他的梦想终于实现了。看他现在的兴奋样,就像一个小孩子得到了梦想多年的玩具,现在这个梦想终于实现了。虽然这么多年过去了,但还为时不晚。虽然只是访问学者,但也算弥补了。替他感到高兴。 我的梦想何时才能实现呢?我想就在不远的将来。 |
|
|