在线等,挺急的!!!c++程序报错图片老是报错!!!

基于野火F429开发板,用STM32Cube生成代码,全面详细的教程

最终示例是通过ESP32,在F429上实时显示天气



问题1: 打印正常,但是加入接收中断后,开始出bug,最后锁定接收中断挂掉了。 原因: HAL库的串口接收发送函数有bug,就是收发同时进行的时候,会出现锁死的现象。 解决: 需要注释掉 HAL_UART_Receive_IT 和 HAL_UART_Transmit_IT 中的 __HAL_LOCK(huart) 函数。或者不要在接收里面,每接收到一个字符就printf一下。

解决: sdio和sddma的中断优先级要小于freertos的最小优先级

使用STM32CubeMX代码生成工具,不用关注底层配置的细节,真舒服。

虽然Cube+HAL很舒服,但新手不建议用。最好还是先去学一下标准库怎么用,有个大致概念后,再来学这一套。

自动化的东西虽好,但一旦出了问题,解决起来也是挺头疼的。



  • 函数形式:均以HAL_开头
  • 寻找过程:在驱动文件stm32f4xx_hal_XXX.c或其.h文件中找函数定义,一般在靠后位置
    • HAL库并没有把所有的操作都封装成凼数。
    • 对于底层的寄存器操作(如读取捕获/比较寄存器),还有修改外设的某个配置参数(如改变输入捕获的极性),HAL库会使用宏定义来实现。而且会用__HAL_作为这类宏定义的前缀
    • 获取某个参数,宏定义中一般会有_GET;而设置某个参数的,宏定义中就会有_SET
    • 在开发过程中,如果遇到寄存器级别或者更小范围的操作时,可以到该外设的头文件中查找,一般都能找到相应的宏定义。
    • HAL库函数第一个参数一般都是句柄(一个包含了当前对象绝大部分状态的结构体),虽然增加了开销,但是用起来便捷了非常多。


  1. 随便进入一个外设初始化函数,如MX_GPIO_Init()
  • 如果配置过程中,参数不知道怎么设置,可以去标准库例程(如野火、正点原子)中看对应的参数是什么

  • Cube软件只是帮你配置了底层,一些初始化代码还是需要自己手动加的,如SDRAM充电初始化、读写函数等

  • 以下内容都是基于**“野火F429IGT6挑战者V2开发板”**,其他板子按照原理图改改引脚都能用的


详细教程网上挺多,配置也简单,只要勾选一下USARTx,再开一下中断就行。

在Keil就比较要注意了。

由于每次接收完,程序内部自动把接收中断关了,所以每次要手动打开。

总的来说,加这几部分:

// 使能串口中断接收
 
  • 任意位置添加printf重定向函数
  • 任意位置添加中断回调函数
// 使能串口中断接收


    Configuration,SDIO模块输入要求为48MHz,系统提示可以自动设置时钟问题,选择Yes。SDIO时钟分频系数CLKDIV,计算公式为SDIO_CK=48MHz/(CLKDIV+2)也可手动修改时钟配置。如果遇到读写问题,可以试着调整到24MHz
  1. 如果要支持长文件名,则要使能USE_LEN

**紧急避坑!!!如果没有用freertos,那中断优先级设置没啥关系。但如果用了freertos,那SDIO的优先级必须要注意跟freertos区分开来,不能高过他!不然就是mout正常,read等其他操作都返回错误3 not

  1. 堆栈设置,Progect Manager -> Project -> Linker Settings,加大堆栈大小(注意:由于刚才设置长文件名动态缓存存储在堆中,故需要增大堆大小,如果不修改则程序运行时堆会生成溢出,程序进入硬件错误中断(HardFault),死循环)。
  1. 注意这里要找一个闲置的GPIO用作SD卡的检测脚,并拉低。不然open时候可能会一直失败
  1. 注意,如果是野火的F429开发板,还需要禁用WIFI引脚才行!!!

各个选项的配置(只做解释,不对应上图):

  • Exit self-refresh delay 从发出自刷新命令到发出激活命令之间的延迟,按存储器时钟周期数计查数据手册知道其最小值为70ns,由于我们每个时钟周期为9.25ns,所以设为8 (70÷9.25,向上取整)
  • SDRAM common row cycle delay刷新命令和激活命令之间的延迟,以及两个相邻刷新命令之间的延迟, 以存储器时钟周期数表示

    查数据手册知道其最小值为63ns,由于我们每个时钟周期为9.25ns,所以设为7 (63÷9.25,向上取整)

  • Write recovery time写命令和预充电命令之间的延迟,按存储器时钟周期数计
  • 查数据手册知道其最小值为15ns,由于我们每个时钟周期为9.25ns,所以设为2 (15÷9.25,向上取整)

  • Row to column delay激活命令与读/写命令之间的延迟,按存储器时钟周期数计

    查数据手册知道其最小值为15ns,由于我们每个时钟周期为9.25ns,所以这里本应该设为2 (15÷9.25,向上取整)

    但要注意,时序必须满足以下式子:

  1. 到这里只是借助Cube完成了引脚配置,还需要SDRAM初始化操作和读写函数,可从官方例程里获取,路径:

添加到工程Core路径下,然后在KEIL中初始化操作:


务必在上面SDRAM配置成功后,再来搞这个!!!

但他给的源码还有点问题,运行处理没效果。

  • 我跟他的配置有点不一样,我的是:

  • DMA2D要开一下中断,等级可以不用很高。如果不开的话,有可能会传图时候卡住。

后面要上TouchGFX,这里先加操作系统。

针对初学者,使用STM32CubeMX配置FreeRTOS时,大部分参数默认即可

  1. 由于freertos工作时会调用systick,为了防止其他进程干扰系统,所以当使用RTOS时,强烈建议使用HAL时基源而不是Systick。HAL时基源可以从SYS下的Pinout选项卡更改。因此更改系统时基源,这里选TIM6
  1. 如使用了FreeRTOS,会要求强制使用DMA模板的Fatfs,所以打开DMA通道开中断,以及开SDIO中断是必须的,否则后面配置FATFS无法运行。

    使能SDIO中断,这里的中断优先级默认不是5的,而FreeRTOS要求优先级从5开始

  1. 当配置完发现无法mout SD卡,可以尝试加大CLKDIV值
  1. FreeRTOS基本都是使用默认值,需要增大MINIMAL_STACK_SIZE,默认值是128,使用默认值会造成f_mount直接卡死在内部,这里使用256
  1. 由于SD卡初始化时有检测读写是否在task任务中,所以SD读写测试代码需要放到defaultTask()

  1. 由于任务调度启动后就不再往下执行,所以把之前的LTDC显示测试代码也可以放到task中,或往前挪一挪
  1. 其他的无需改动,运行即可!

  2. 发现它创建任务用的是osThreadNew,对xTaskCreate又进行了封装,省去了繁琐

  3. 网上有人说要“在TIM6中断中,加入临界段保护(或进入中断保护)”,不知真假,没试


虽然方便,但它是用C++开发的,所以不是特别友好...说白了就是看不懂,不知道怎么去改

  1. 开启TouchGFX包,并配置如下
  1. 生成工程,但先别用keil打开!!!
  1. 安装完成后,回到Cube工程目录,会发现多了一个TouchGFX文件夹,打开其中的.touchgfx文件,绘制界面
  1. 然后就可以打开keil,添加以下内容
  1. 这里要注意!由于MicroLib不支持C++,所以需要在keil里取消勾选!!!
  1. printf函数又需要MicroLib支持,所以需要添加以下函数,否则会开机无法运行!!!
//标准库需要的支持函数
  1. 完成以上内容后,编译、烧录即可

奈何不会C++,只能另谋出路,LittltVGL设计的界面似乎还挺好看的,而且用C编写,兼容C++,更新很活跃。EMWIN风格类似window XP ,littlevGL风格类似android 。移植很简单(并没有多简单)。

官方推荐方法学习路线:

  • 点击在线演示以查看LVGL的运行情况(3分钟)
  • 阅读文档的介绍页面(5分钟)
  • 设置模拟器(10分钟)
  • 移植LVGL到一个板子。请参阅移植指南或准备使用项目
  • 阅读概述页,更好地了解库(2-3小时)
  • 查看小部件的文档,了解它们的特性和用法
  • 如果你有问题可以去论坛
  • 阅读贡献指南,了解如何帮助改进LVGL(15分钟)

1、 教程可交叉参考以下这几篇,取长补短吧:

2、在Cube里开一个MTM的DMA(或者不开它,直接用DMA2D)

微雪这个函数有点问题,如果遇到显示不正确的时候,建议改成以下这个试试:

4、按着上面教程,把littlvgl的显存地址改为SDRAM的

5、由于用作时基的TIM6的中断时间是100ms,所以我们可以新开一个定时器如TIM7,设置它的中断时间为1~5ms。但好像是需要手动启动定时器的:

当然,我的源码链接(只有显示部分,触摸目前没用到):

注意!!!: 一定要先执行初始化lv_init(); lv_port_disp_init();,再做其他ui操作,不然会死活不显示出来!!!

  • display是buff区,screen是一整个界面,界面里可以放控件和窗口win,窗口里还能放控件,一个控件可能有多个part
  • 首先我们需要将文件加入到我们的工程树中
  • 然后在需要的地方声明一下就可以了,可以用下面两种方式:
  • 我们再来看看转换出来的图片文件的一些信息,包括宽度,高度,大小等。就在我们的刚下载的文件最后就可以看到一个结构体,如下:
// 先声明一下外部图片结构体
 
// 这里的x,y都是相对父元素而言
  1. 下载以下链接中的几个文件:

  2. 将下载的.c/.h添加到工程中

  1. 通过将'\0'更改为要用于该驱动器的字母来启用所需的接口。如'S'表示FATFS的SD卡

  2. 初始化图像,需要以下回调:

// SD卡文件绑定到图像

注意keil工程必须是UTF8编码!

这时,串口输出中文可能是乱码。没关系,lvgl显示正常就行。或者用SwitchToGbk函数将utf8转成Unicode,这样串口就是正常的了。该函数可以到工程目录的User/SXF下找:

生成的myFont.c下,有个函数需要替换一下(读SD卡方式):


大学生计算机专业的实习周记(精选9篇)

  时光匆匆,一个星期已经结束了,想必大家都有了很深的感触吧,是时候好好地记录在周记中了。那么写周记需要注意哪些问题呢?下面是小编精心整理的大学生计算机专业的实习周记,仅供参考,大家一起来看看吧。

  大学生计算机专业的实习周记 篇1

  第1周:日期:12月1日~12月7日

  随着短暂的三年大学生涯的结束,我也要跨出迈向社会的第一步了,这今后的一段时间里,我将会在公司进行为期6周的实习,职位是硬件工程师。实习是在盼望中的, 但当它真正到来的时候又令我有些不知所措。在学校里的学习和生活都是悠闲而又快乐, 我希望在实习中也可以有幸福与快乐的萦绕与眷顾。相信在接下来的一段时间里,我一定会获益匪浅。

  刚刚到公司我很是迷茫,对于初入社会的我对于周围的一切还是那么的陌生。不过很快我也就适应了,就是那句:既来之则安之。到了实习单位,上级让同事带着我去了学校的机房教师办公室等,同事告诉我这些都是我们工作的地方,以后就要做这些。这几天一直跟同事熟悉着学校的情况和工作的环境以及他们的一些经验,同时同事也告诉我到这个部门该做什么。比如:要做维修电脑,维护电脑,维修打印机,复印机,网络布线等等。一周下来我就了解了我该做什么,我也有了自己的目标。

  现在到了单位只是做一些简单的事情,给电脑做系统和维修电脑。同时我也在学习修理打印机,因为在学校的时候我没有接触过这个,还要跟同事学习了画布线图。有时候我也自己上网查找资料,学习别人的做法,让自己很快的成熟起来。看着同事的工作效率,我想我以后也应该会这样的,我也能够独当一面。

  为了能够真正的学到知识,我很严格的要求自己去做好每一件事情,即使再简单的事情我都会认真考虑几遍,因此,虽然做得不算快,但能够保证让同事们满意。同事通常也不催促,都把任务安排好,然后便交给我自己去处理,同时还不时提供一些帮助。等慢慢熟悉起来,做起事情也越来越顺手了。 第一个礼拜的实习,我可以简单的总结为几个字,那就是:多看,多问,多观察,多思考! 一方面要发扬自主思考问题的能力,在碰到问题的事情,自觉努力去独立解决,这样对问题便能够有一个更深刻的了解,当然解决的时候也会获益良多。 另一方面,要发扬团队精神。单位是一个整体,每个人都需要跟其他人更好的沟通和交流,互相帮助,合力完成共同的目标,团结众人的智慧才能够发挥最大的效能这周在单位我学到很多,既要努力学习,还要仔细工作,更要有团队的精神,这些都是我应该努力的,我相信我可以做的更好。

  第2周:日期:12月8日~12月14日

  实习第二周开始,我已经逐渐进入状态。通过上一周我已经了解了单位的运行制度和工作环境,所以这周开始领导让我独立接触一些任务,领导也知道我会一些简单的组装电脑和维修,所以放心的让我一些简单的电脑问题,比如给单位办公室计算机检查一下硬件,并安装一些必要的软件,满足每个办公室老师的需要和一切要求,让他们满意,这也是我所期待的。所以每天上班我都会很认真的为老师们服务,尽量满足他们的要求,适当给他们说说怎么样保养,闲暇的时候上网查看网友出现的电脑问题以及一些答案,每天的坚持学习让我更加懂得了电脑的故障所出和处理办法,也更能很好的为老师们服务了。 现在我很满意自己的表现,来公司两周工作态度还是比较好的,同事之间也相处的挺好。

  工作进行的还是比较顺利的,通常每天都要接受好几个任务,每个任务都是比较简单的,同时也要学习如何维修打印机、复印机,明白它们的工作原理以及一些重要的部件。虽然自认为口才并不好,但我能够把事情描述的比较清晰,如此也令领导满意。所以每次老师们满意的表情时,自己心里都会觉得很踏实,虽然已经满头虚汗了,但一想,我是自己独立完成,这完全是我自己的功劳,也是我努力的结果。工作都是辛苦的,每当任务多的时候就感觉到烦躁,所以经常要安慰自己,慢慢完成任务现在只要保证质量就行,不求速度,心情慢慢就变好了。这周的任务对于我来说还是比较多的,每天都要检查差不多20台电脑,还要换电脑的一些硬件,另外自己还要抽出时间学习其他的东西的维修和护理,每天都是比较忙碌的。有时候都忙到很晚才能下班,对于第一次接触工作的我来说,无疑是非常大的考验,不过这样也好,起码我每天过的还是很充足,不像在学校是的颓废,我喜欢现在的生活。不过我刚刚进入这行不久,很多方面还是需要锻炼的还很多,不能因为有了工作就开始懈怠。

  第3周:日期:12月15日~12月21日

  半个月的时间过的很快,每天这样起床、上班、下班,再上班、再下班、然后睡觉;虽然每天觉得比较累,不过我觉得这段时间过得比在学校的时候有意义。在单位每天都可以学到更多的知识,可是在上学的时候只有上课,吃饭,上网,睡觉,这样的日子很是颓废与无聊。经过一周的锻炼我已经能够非常熟练的组装电脑硬件并且安装需要的软件,满足领导的要求。

  我现在慢慢的开始更加忙碌了,现在可以跟着同事维修电脑,学习更多的技术,一天天任务量不是那么大。现在已经开始步入正轨,正式的接受了所有该做的和需要做的工作内容了。其实学校里的工作真的很简单,就是机房的学生用机,老师办公计算机和打印机等,只要涉及到计算机方面的所有事物都得去了解和掌握,包括维修电脑、装打印机、传真机……;以前对于什么是打印机、传真机、复印机也都只是知道有什么用而已,至于怎么用也不是很清楚,更别说是里面的组件了,什么是鼓组件、什么是传感器等等,经过一周的学习我已经能够熟练说出它们的名字,并且能够组装完成。还有一些各种高科技产品的配件也是闻所未闻的。在这里工作以后也不得不逼迫自己尽最大的努力去弄清这些东西的名称和作用,这样一来,真的也见识到了很多。

  在上学的时候从来都没有想过自己有一天会修打印机,可是社会是容不得你说不会的,当把打印机打开,真的不知道该从何开始,仔细的看着别人是怎么做的,然后在借助网络,慢慢的了解有关硬件维修的所有常用的方法。这几天学校有一个机房的坏机子要维修,因为我已经有了一定的维修经验,所以我自然就可以跟着同事去了,但又为了不让自己在同事面前出丑,所以我工作格外的注意,尽量不让自己出现错误,最近过的很累,每天晚上都会抓紧时间去看有关的书籍,找朋友请教,不断的学习新的知识,然后白天去解决那些有故障的电脑。为了更方便的画布线图,我慢慢学会了微软的vision作图软件,虽说比CAD要简单方便的多,可是也是碰都没碰过的新概念,但是却也是工作中需要用的,所以也在空余时间抓紧多多练习。这周过的真的很辛苦,可是却不敢这样说,我怕这样想了以后就会让自己有了懒惰的心理。虽然常常很晚才休息,白天也弄得满身是灰,不过我想这才是工作的充实吧

  第4周:日期:12月22日~12月28日

  实习也快一个月的时间了,这周拿到了实习的第一个月的工资,虽然不多,勉强够了自己的生活费。但是也挺开心的,想想也是非常的开心,这是我的第一份工作,也是我的第一份工资,看着自己手里的钱有着莫名的高兴。本周终于见识到了实地布线路了,让我知道了布线路的大概要求和注意事项。学校别的学院要重新布置机房,要我们去帮忙,领导让我跟着帮忙,学习,虽然从来没有做过网络布线,不过对于网络方面在学校的实验让我还是知道一点的。室内的布线需要铺设线槽,给学校用的是铁皮打造的线槽,然后在每台电脑的对应位置穿根网线出来连接到主机上。这里的所有工程施工都是会用到配线架的,还有绕线环,绕线环也是听说的新名词,其实主要作用就是把机柜中层次不齐的线隐藏着绕线环里,那样可以使整个机柜看起来比较整洁、美观,打完配线架后还需要跳线将配线架与交换机连接。我也帮助同事做,实际的操作也提升了自己的实践经验,就像最简单的水晶头的制作,这次的布线结束后,自己的制作技术也提升了许多。不过工作中也因为自己的知识浅薄、经验缺乏而遇到了许多尴尬的事,到一个办公室去送打印机,然后领导让把它给装好。我很快就完成了,不过在试验的时候怎么都不能用,这让我很是尴尬。所以我只好对着说明书的安装步骤,一步步的检查自己的错误在那儿,组装、安装驱动,原来是在组装的时候出现了一个失误,然后我把速的修改过来,等到当看着打出来的测试页成功时,终于可以吐了口长气,虽然用了很长的时间,可是当最后还是可以完成时,还是挺有成就感的。

  不过这次的事情也让我明白了:不管做什么事情都要认真仔细的完成,不能一味的要求速度,同时也要注重质量。不过我要学习的东西还有很多,不能因为一次的成功就骄傲自满,自己仍然要谨慎严谨的对待工作。

  这周主要的就是学会了如何布线路,在学校,为了知道校园多媒体的概念和架设,我也在网上查了很多的资料看,可是觉得太繁琐,一直都没弄懂。可是当看到同事的施工以后,在实践中发觉其实也并不是太难,对于布线的规则也大体相同,只是线不同而已。还有电线的接线,若不是看的,我想我会一直弄不明白的。对于校园广播中最核心的就是工矿和播放主机的设置了,在校园多媒体中常用的设备还有音箱、音柱、话筒、投影、中控……。这让有了很好的学习环境,很容易让我掌握。

  第5周:日期:12日29日~1月4日

  工作的生活已渐渐适应甚至可以说是习惯了,每天的进进出出,在路上的奔跑常常感觉自己就像个搬运工,不过当听到别人的感谢时,心里也很开心,每天都有这样的感谢才可以让我觉得很有干劲。 和同事们也相处了一段时间了,渐渐的也熟悉了。在他们中,自己的年龄也不算太小了,可是却感觉比他们中的任何一个人都幼稚。在外工作时也是,一次在修电脑时,部门老师很不相信我是在学校的而不愿让我将主机带回维修室维修,这样的怀疑真的很让人心寒,可是却也没有辩解的。在工作中真的觉得经验的积累真的不可小觑,虽然会受到不小的打击,可是却没有打消我的积极性,对于工作的珍惜,我不会这样轻易的放弃。

  现在越来越发觉知识的重要,在实际的工作中常常会碰到涉及各方面的问题和知识,当不知道的时候真的感到很尴尬。这段时间每个地方的打印机好像商量好坏似的,都赶到一块了,我也开始学习修理打印机,认识什么是鼓组件,看着网上的图解似乎也不是很难,可是当真的下起零件来时,还是遇到了各种各样的问题,一个螺丝、一个弹簧,都很小心的拆下。虽然已经很小心了,但是前几次都是没法独自完成,到后来还是要找别人帮忙,感觉自己很失败。前几天在给一个办公室的打印机加墨时,自己花了很长的时间,最后终于很成功的将所有下下的零件装起来后,真的很高兴,把鼓组件上的打印机打测试时,心里都紧张死了,看着打出来的纸很完好时,终于长长的呼了口气,然后听到别人的一声谢谢,感觉这声谢谢真的是对我的肯定。现在同事在忙学校食堂的刷卡机,一直知道怎么去用卡花钱,可却没想过该怎么设定刷卡机来收钱,看的也挺感兴趣的。原来刷卡系统的安装也是依托于数据库的基础上,将刷卡机安装好后,需要用特定的卡,这卡也是需要得到厂家的认证才可以使用,认证卡需要先将卡的编号全部记录下,然后对应卡的编号对卡进行认证。 最近一段时间都在与数据库打交道,有点后悔没有把最后一个学期的课程学完了。

  庆幸的是把所有的课本都带了回来,现在得好好补习一下了。工作中的学习虽然深彻,可是却没有在学校的环境了,有点怀念上课的日子了,希望能够学到更多的知识。

  第6周:日期:1月5日~1月11日

  回想自己已经是实习时期的第6了时间过得飞快啊。实习的日子也接近尾声了。将要告别我的实习单位,同事们了,时心生不舍。但是天下没有不散的宴席。想想自己从刚来时的什么都不会到现在变化真是大啊,似乎变成熟、能干多了。

  从一个在学校懵懂的学生到现在的社会工作者。从学校到社会的变化让我慢慢读懂了社会这所大学。这几个月的实习时间让我获益匪浅。学到老不少在学校学不到的东西,更深的体会到了做人做事的原则,更加深刻的体会到了什么是责任,我学会了如何才能更好的与人相处,与人沟通。更好的把我大学三年来所学专业理论知识更好的与实际结合,让我掌握的更加牢固。也让我学会以前所不会也没有学过的知识,对我以后有更大的帮助。

  实习下来,总是有很多经验,有很多认识,自己总是有很多的感慨。也许在实习的这些天中,我也在逐渐的成长。在认识学习逐渐的成熟。每个人都会在时间潮流中不断认识自我,只不过是时间的长短的问题。因此待人要真诚,时时为人着想,处处为人行事。能够把自己溶入群体,而不耻向身边的人学习。要想在如今的社会中生存,就要吸收新的思想与知识,不断更新观念,趋于完善。这样才有利于思想与实际行动真正地结合,只有在思想演练,才能在最短的时间里把自己要从事的行业中处于领先的地位进而起着不可替代的作用,因为我将会为它比其他人付出更多创造更多价值。我也应该得到我应得到的报酬与珍贵的经验。

  有了自己的第一份工作,在除了不变的上班下班,其中还潜藏危机,要在实习中不断的学习,跟着节奏的发展,不能停滞在原地,要居安思危。要在实习中不断的进步,如果有能力的话,还要有超前意识,要把自己的潜在能力开掘出来,只有不断的开动自己的大脑,才能创造更好的物质生活。自己的命运掌握在自己的手里,需要去寻找,去探索。有些时候外部环境对于一个人的发展走向起到重要的影响,好的外部环境可以造就一个人,坏的环境也可以毁了一个人。所以不管在工作,或者以后在工作的时候就要考虑好这些方面的因素,只有在找工作前做一切准备才能把握自己的那块金。正所谓做到知己知彼才能在仗场上取得胜利,这样的道理同样适用于我们现在,这样也算在为自己适应复杂的环境奠定基础。这段的实习时间虽然暂时的告一个段落,但是它留在我的是宝贵的经验,而不是一个简单的实习而已。我也会深深的感谢学校能在毕业之前能够有一次这样的实习机会。

  大学生计算机专业的实习周记 篇2

  大学期间最后一学期,跟以往的不同,这学期我们离开学校,参加顶岗实习。虽然只是短短的几个月的时间,但是细细盘点下来,却也是收获颇多。当然期间也有不少无为人知的心酸。

  进入公司,我接到的第一个项目就是创建公司博客。随着互联网的发展,博客兴起了一股网络风。由于其沟通方式比电子邮件、群组更简单和容易,博客已成为家庭、公司、部门和团队之间越来越盛行的沟通工具,因此它也逐渐被应用在企业内部网络(intranet)。而我要做的任务就是在原有的公司网站的基础上建立一个公司博客,以供随时发布最新的供求信息。

  从选址,规划到取材,整合,上传,发布。看似简单的一个博客却花费了我不少心思。我还记第一天上班,我花了半天时间收集公司素材,又花了半天时间浏览网上优秀的公司博客。对着电脑一整天,下班回家累的不行。

  但是通过第一天的资料收集,第二天,我开始了博客的制作。第一步,选址。为了更好地凸显出公司博客的特点,我首选了为企业博客量身定做的企博网博客。通过注册,获得了相应的域名。第二步,规划。根据企博网博客的特点,结合公司素材,进行规划,分开不同的板块和模块,分别进行设置。同时根据模块的划分,对素材进行分类整理。第三步,整合。对图片和文本进行取舍选择,同时对所选择的图片和文本进行编辑和排序。第四步,上传发布。这是相对比较简单的步骤,把分类好的素材上传到网站上,根据其视觉效果进行适当的调整,确保页面排版的紧凑性和整体美观性。

  经过几天的努力,我提交了我的工作成果,同时获得老板的认可。时隔3周,当我再次登陆该博客后台时看到,博客的点击率已经达到1410次了。这让我感到非常高兴,看来我的努力并没有白费。

  通过企业博客的制作,我接触到了大量的公司资料,包括公司的简介,公司的业务简介,发展描述之类的。也让我对上海狮诚企业管理顾问有限公司有了一定的了解。

  在实习的第二周,我参与了公司与dairy farm公司合作的培训项目,在项目初期,我负责了课程ppt的制作。ppt制作对我来说是非常熟悉的了,由于软件工程专业,所以我对powerpoint、excel、word等软件接触很多。可是当我真正接手幻灯片制作时才发现,之前自己所接触到的不过是凤毛羚角。我看了之前的一系列培训ppt,发现里面设计了大量的3d动画制作、动态gif制作、遮罩、蒙版以及动画片头。而我对这些却是一窍不通,所以在接下来的一周,我是边制作边学习。

  虽说是制作ppt,可是要用到的软件绝不止microsoft powerpoint那么简单。在制作过程中,我接触到了photoshop、imageready、ulead videostudio、coreldraw、光影魔术手、logomaker以及3d max。有些软件我之前接触过,上手还比较容易,但是对于一些比较复杂的软件,如3d max,我至今都还太懂得怎么用,正在努力地学习中。

  在那一周中,我完成了ppt的片头动画制作,以及三个模块的版面制作,细数起来总共有20多张slide。由于后期合作公司提供的图片资料不全,所以幻灯片的制作暂时搁置。

  在这次项目中,我学到最多的就是各类设计软件的应用,包括图片设计和动画设计。现在我已经可以制作gif动画图片了,图片制作技巧有加深了一步。相信在今后的学习工作中,这些技巧可以给我很大的帮助。

  大学生计算机专业的实习周记 篇3

  光阴似箭,新年很快就过完了,现在开始要考虑工作的问题了。23号返校,在学校呆了几天,感觉很迷茫,不知道将来要做什么,做什么样的工作,感觉专业不是学的很精通,如果从事专业方面的工作,感到自己可能无从下手,不知道怎么做。之后听老师讲了些毕业实习的一些事宜后,就开始找工作了。

  新的一年要有个新气象,这学期开始要找自己相关专业的工作了,我想先找个工作做下吧,不能再无所事事了,看看对哪方面比较上手,在决定自己要往那方面发展。

  这段时间去杭州人才市场和高新人才市场的招聘会看了下。看见有好几家公司需要软件开发人员,于是就投了几份简历然后等电话通知面试。在此期间,2号我去了盟途贸易公司面试php开发岗位,面试的人问我有没有做过什么项目,于是我就把学习时做的一个文件管理系统给他看,他说还不错,但也指出了问题,比如用户密码在数据库中保存没有使用md5,这样就不安全,接着就问了我有关数据库方面的问题,可是过了寒假,这些东西都有些生疏了,他就让我去等通知了。看来是要好好复习下了,接下来这几天我就在寝室复习了以前的知识。

  这周又去了招聘会,投了几张简历。3月11号去了一个公司面试软件开发的职位,其实是到各医院推销医疗软件的。面试过程当中和技术部的吴经理交谈了许多内容,他说做推销之前要阅读大量的软件书籍,还要会编程。我一听,开始犹豫了。我不知道会不会适合做这行,后面吴经理问了我一些计算机软件方面的知识,我基本上答不出几句所以然。这份工作涉及到我的专业很少,如果录用了我就尝试着做,没被录用我就继续我的求职路程。在之后的几天我没接到电话,也知道我接下来该做什么了,没什么必要再等下去了,继续找工作当中,继续投我的简历。

  这些天又去了多家的招聘会,跑来跑去地很辛苦。看来看去,招聘的单位都是差不多相同的,而且几乎都是要有经验的,大多都是招本科生,很少有招应届专科毕业生的。后来觉得没必要,还不如在网上投简历会更好点。在网上投了几份简历,有投php开发的,.net开发,C++开发等。17号去了喜金刚网络科技去面试php开发,面试的时候做了份笔试题目,然后俞经理问了我一些php方面的问题。几天后他们打电话过来让我过去,但是我还没毕业,就让我下星期一先过去实习,这段时间是个双向选择的过程,公司看我的表现再决定是否录用,我也可以选择是否呆在喜金刚。于是我也就决定先去他们那实习看看,努力认真工作,并积累经验,增长见识吧。

  来到公司后,俞经理为我讲解了公司的,公司是一家刚刚成立的以婚庆为主题的社区网站,整合婚庆产业链为新人提供更时尚、更廉价、更低碳的婚礼。我是做程序员,说技术,其实主要是用PHP+MySQL来做网站。说实在的,PHP这个东西我仅仅是知道一个皮毛,知道基本语法,知道如何连接数据库并且处理数据。从来没有开发过大型网站系统。我在计算机方面唯一的优势在于:在学校学过n种语言。

  这次的挑战是:要在很短的时间内学会linux,更加掌握数据库,php。

  我们公司是融鼎科技下的刚成立的子公司,晚上我们去酒店开了公司成立庆祝大会。俞经理说了公司发展的愿景是传递情、分享爱,使得更多的人能够分享新人的快乐和幸福。我们是一家充满梦想与激情的创业企业、是一个全员持股人人平等的兄弟团队、是一个传递幸福制造快乐的开心乐园。同事们有说有笑,大家都对公司的未来充满了信心。

  早上来到公司,前台的陈红把我叫去和同事们一起读弟子规,这个对我来说还真新鲜,老总是想让我们知道为人处世的规范,养成良好的品德和习惯吧。我也就投入其中,认真朗读起来,这些使我对公司的文化也有所了解了。

  这周的这几天我主要是熟悉公司环境,主要了解一些公司的背景、业务、发展方向等。公司为我配备了电脑,我去网上去一些婚庆的社区网站看了下,大概了解了下婚庆行业的市场,以及这些网站如何做婚庆社区的,对这方面略微熟悉了下。

  星期二开全体员工的大会,然后我和伟峰就被带到了郑文斌的手下。星期三拿了一本《PHP与MYSQL5程序设计》给我读;当然没有读完,于是星期四早上也在读,下午就跟郑文斌拿了源代码来读。晚上郑文斌又拿了一本700页的《JS》让我读。文斌说要用symfony这个框架来做。框架我一直都不理解是什么东西,从struts开始。于是开始研究symfony的网上文档和API,于是第一个星期的最后几天都花在了研究symfony上。

  这周的实习主要还是学习,另外,尝试跟同事多沟通,从交谈中也能够学到不少东西。同事们都很热心,很照顾我。

  几天之后开始在同时的帮带下,学习linux的使用,以及在linux下搭建LAMP,因为linux系统是开源免费的,而且很安全,所以我们公司的网站选择搭建在linux下。

  我用虚拟机搭建了Ubuntu的linux系统,Ubuntu是一个以桌面应用为主的linux操作系统,Ubuntu为用户提供一个最新的、同时又相当稳定的主要由自由软件构建而成的操作系统。Ubuntu有庞大的社区力量,我们可以方便地从社区获得帮助。因为在学校里很少接触linux,所以对linux很陌生,只能从头学习,一步一步慢慢来。还好有同事带我,加上自己的努力,学linux也不那么吃力了。

  新的一周开始了,通过学习,我对linux有了一些了解,对php,mysql等的了解更进了一步。还学习了一些和婚庆社区网站的相关设计,借鉴他们的思想,方法,从而构建出自己的网站风格、样式。

  学习了一些知识后,向文斌请教了一些做网站的方法、问题。文斌讲解了做每一个网站的过程及所遇到的技术性的困难,以一个网站为例着重介绍了一些模块的具体实现方法及注意的问题。

  之后我做了一些动态页面,主要包括用户登录,用户注册,文章浏览,留言板等功能。本以为一个页面也没什么应该比较容易吧,可是做起来并非如此,我自己做的网站很粗糙,功能叶很简单,也不美观,知道了美工的重要性。经过自己耐心的设计一天的功夫几个页面的设计圆满结束。

  这是这个月实习的最后几天了,这个月的实习主要是学习和适应期。我可以简单的总结为几个字,那就是:多看,多问,多观察,多思考!

  经过一个月的实习,我学到了很多东西,以前的知识得到了复习和巩固,也加深了对婚庆社区的了解。

  学习上我也得到了些心得,一方面要发扬自主思考问题的能力,在碰到问题的事情,自觉努力去独立解决,这样对问题便能够有一个更深刻的了解,当解决的时候也会获益良多。 另一方面,要发扬团队精神。公司是一个整体,公司产品是团队的结晶,每个人都需要跟其他人更好的沟通和交流,尤其是软件网站开发更要多沟通,互相帮助,合力完成共同的目标,团结众人的智慧才能够发挥最大的作用。

  我们公司核心团队曾供职于阿里巴巴、浙大网新等大型IT企业集团,他们带着创业的激情来到了我们公司跟俞总他们一起致力于创业之中,他们拥有丰富的行业经验与资源。

  这几天曾供职于阿里巴巴的阮荣国,就做好了网站的一个雏形给我们,让我们添加一些简单的功能。由于我还是实习生,经验浅薄,我也就从事一些简单的工作,协助同事完成一些功能的添加,修改等。

  虽然工作很简单,但是越简单的事也要认真仔细的去完成,凡事都应该从底层做起,这样才能慢慢积累,慢慢进步,打好基础。为将来的发展奠定坚实的基础。相信只要自己这样一步一个脚印的走下去的话,将来也在网站开发方面成就一番事业,为公司的发展做出一些贡献。带着这样的思想,我快乐的跟同事们一起工作着,努力着,为这个网站添砖加瓦。

  经过五一节3天休息后,就又投入到了努力工作之中。

  上周初步来了解了网站的构架,各个模块,和具体实现后,这些天我对网站的各个模块实现的功能进行了进一步的了解。

  后面几天的任务是mysql的学习,在学校里我对mysql已有了初步的了解。文斌教我要灵活多变,什么时候要用到临时表,嵌套查询,存储过程用的地方等,叫我多看几个例子,并敲下代码运行下,体会里面的数据生成,查询出自己要的数据等。然后再根据这些数据写出语句,生成需要的流程,这就是数据挖掘的精髓!那么存储过程与一般的SQL语句有什么区别呢?

  1.存储过程只在创造时进行编译,以后每次执行存储过程都不需再重新编译,而一般sql语句每执行一次就编译一次,所以使用存储过程可提高数据库执行速度。

  2.当对数据库进行复杂操作时(如对多个表进行 Update,Insert,Query,Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。

  3.存储过程可以重复使用,可减少数据库开发人员的工作量

  从中我学到了:存储过程是数据在存储到数据库的过程中,可以对这些数据进行操作,不然数据就是直接从页面获取,直接原样存储。

  通过学习,我对PHP和mysql的理论知识有了一定的了解,今天我有针对性的浏览、学习了一些和本次设计相关的网站,借见他们的思想、方法,从而能构建出自己的网站的风格、样式。

  这几天对该网站所运行的环境有了确定,对网站的各个模块应实现的功能进行了具体的描述,对创建数据库时所需表的建立也有了一个具体规划,这样在真正的动手做网站时就有据可依,不会手忙脚乱。我把这几天所学的知识又系统的学了一遍,认识到自己不足的地方,我明白要想真正的掌握知识就必须一点一滴的积累,明白无论做什么事情只要自己肯努力,再加上信心、耐心、细心就一定能达到自己的目标,获得最终的成功。

  之后我在网站中加入了一些功能代码,连接了相应的数据库,一开始就把我给弄的一塌糊涂,根本一点思路也没有,盲目的连接了一个留言提交随之而来的是好几个连接错误。再次向文斌请教有关数据库连接的问题。在文斌的认识详细的指导下我成功的连接了数据库,修正了错误。

  各个模块实现的最基本的思想都是相通的,相信通过自己的细心工作,认真的钻研,一定会陆续实现其他模块的功能,完成自己的任务。

  这周我先去熟悉了下网站后台管理操作,及各功能模块的作用,公司网站已经搭建好了很完善的框架,设计好了各种功能模块。我尝试在后台进行了“添加公告”“添加问卷调查” “添加友情链接”等一系列操作。

  接着我继续去熟悉网站,熟悉各模块及各种管理操作,完成了添加栏目的操作。发表了文章,又上传了图片,并在后台对文章图片进行审核。但是出现了个问题,上传下载中心的软件时发现不能上传过大文件。于是通过探索查找,我发现能在后台对文件的最大值进行设置。

  之后几天我练习了为网站添加图片、修改logo等美化操。我修改了网站logo,添加频道图片后,发现在系统中添加的频道图片替换了导航栏文字的位置,图片对齐方式的问题使得网页并不美观。感觉到自己在网页设计方面还不是很熟练,对排版和设计等的操作不是游刃有余,通过我反复的修改,查找原因,终于解决了这个问题,为了精益求精,是网站更加美观,有时候细小的问题也要花费很多的时间,感觉到自己在美工方面还是有很大的欠缺的。接下来我就通过学习教程,了解了Dreamweaver的使用方法。熟悉了操作界面,创建了文档,进行了页面设置,尝试了页面内超链接与不同页面间的超链接,练习了用表格精确定位各个板块。

  这周我先对网站进行了seo优化,为使公司的网站和产品更容易被搜索引擎找到而需要对网站进行seo优化。我结合相关资料对seo优化进行了初步的学习。但是发现整个网站有的采用了php的动态页面,不如html页面容易被搜索引擎找到。网站内部的js连接对搜索引擎也不友好。还有标题结构不科学。我结合公司的最新说明及相关资料,在本机的虚拟站点上尝试改进。通过文斌的帮助与指导,我做了些小的改动,部分页面用.shtml及其相关的功能部件的链接代替php+js的链接。将页面标题倒序,采用“文章名――栏目名――网站名”的顺序。

  后面几天要对几个频道模板进行改动,使关键内容出现在左侧,方便客户浏览。可能由于系统不够完善,在后台直接改代码会出现问题,所以将代码粘贴到Dreamweaver中进行改动,网页采用表格定位,用Dreamweaver的编辑视图很方便的即可完成。

  接下来学习了flash的简单的一些操作,从而继续修改网站模板,是网站更加美观,我先了解了flash的操作界面,熟悉了一下各工具按钮的作用,充分利用各种工具绘制了一些平面图形,但是使用过程中并不熟练,毕竟我以前对flash也接触的很少,还需要在以后的学习和使用中进一步熟悉。

  最后总结一下我在实习过程中的收获,主要有四个方面:

  一是让我对网站开发理论知识有了一定的了解,学到了实践知识,同时进一步加深了对理论知识的理解,使理论与实践知识都有所提高。

  二是提高了实际工作能力,为就业和将来的工作取得了一些宝贵的实践经验。

  三是提高了我的动手能力,同时也让我了解到了自己的不足,也很好的了解了团队合作的重要性。

  四是学会了怎么样去处理事情,只有自己动手做过的东西才会铭记在心。也只有自己真正去努力过的事情才会记得很牢。只有自己真正面对过的困难下一次才不会犯同样的错误。然我会继续努力,完善自我,为社会主义现代化建设做贡献。

  大学生计算机专业的实习周记 篇4

  我工作实习的第一天,我怀着惴惴不安的心情,进入了公司。踏进办公室,只见几个陌生的面孔。我微笑着和他们打招呼。从那天起,我养成了一个习惯,每天早上见到他们都要微笑的说声早上好。仅仅几天的时间,我就和同事们打成一片。我想,应该是我的真诚,换取了同事的信任。他们把我当朋友,也愿意把工作分配给我。

  实习第一个礼拜,算是适应期。主要了解一些公司的背景、产品、发展方向等。另外,尝试更同事多沟通,从交谈中也能够学到不少东西。几天之后开始在同时的帮带下,做一些业务相关的活,主要是在一旁协助编辑一些简单的程序。也就是打基础。第一个礼拜的实习,我可以简单的总结为几个字,那就是:多看,多问,多观察,多思考。一方面要发扬自主思考问题的能力,在碰到问题的事情,自觉努力去独立解决。另一方面,要发扬团队精神,团结众人的智慧才能够发挥最大的效能。

  实习第二周开始,已经逐渐进入状态。开始独立接触一些业务,公司也知道对于编程软件,我是一个很新的新手,所以刚开始让我做的,主要是让我熟悉编程环境和编程工具。因为公司想让我更快的进入工作状态。这就要求我对公司本身的一些编程流程和软件特点有相当的熟悉。于是每天上班我都会比同事去的早一些,准备一些资料在身边已被随时查阅。工作进行的还是比较顺利的,通常每天同事和领导的悉心指导和自己不懈的努力,终于一点一点的熟悉了工作要点,以及编程的技巧和编程的流程。

  当你可以选择的时候,把主动权握在自己手中。我想很多人和我一样,刚进实习单位的时候,都会觉得心中没底,不知道你能做什么。但我决定改变自己的想法,我坚信只要勤问、勤学、勤做,就会有意想不到的收获。

  经过两个礼拜的锻炼,发现自己进步还挺快的,即使是之前从来没有接触过的软件编程这个岗位,同时也对软件开发这一行有了更深的认识,这一周仍然做一些关于软件开发的简单程序。

  由于自己向来比较内敛的缘故,首次和同事一起编程软件时还是比较紧张,也不大顺利,不过有了一次经历之后,进步了不少,再加上领导和同事的鼓励,自己尝试大胆的去操作,慢慢的熟练了许多。人往往都是这样,没有经历过的话,永远都不知道事情到底是怎么一个样子,是真的那么难,还是并非如此,所以,不管怎么样,即使是自己完全陌生的事情,只要有机会,都一定要去尝试,努力去做好。另外就是不要害怕失败,只要用心去做就可以了。等到熟练了,那么成功将是水到渠成的事情。

  不知不觉的,就发现原来我短暂的一个月的事情就快要过去了。慢慢的,我已经熟悉了编程环境,也能很好的融入到公司里,和同事们有了默契的配合。虽然我还不能一个人独自地完成软件编程,但是编程的所有程序以及流程和方法,我都牢牢地记在心里。

  现在想想,和刚踏入公司的时候相比,我简直就是芷若两人。改变是实实在在的,就感觉自己每天都在进步,每天都能够接触新的事物,一点一点的吸收进去。一个月的时间,虽然短,但学到的东西可不少,如何快速的适应公司的环境,融入企业的团体,如何更好的跟同事沟通,更好的完成既定的任务。这些都不是信手拈来的。都需要一个逐步的从点到面的认识,今天我学到的所有这些都必将是我未来成功的基石,我相信我会通过自己的努力,走向那个成功的彼岸!

  大学生计算机专业的实习周记 篇5

  实习第一个礼拜,算是适应期。主要了解一些公司的背景、产品、发展方向等。刚到实习公司,不是像学校里的朝九晚五,而是朝八晚九。 我们不可能简单的了解一些企业文化,简单的学学新的知识就可以了,我们的这个实习必将是一个繁忙的实习,也必将是一个充实的,进步的实习。来到这里,我们要忘掉大学里自由的作息时间,克服困难,养成良好的工作生活习惯 。基于各方面的原因,虽然在去之前我们做了比较充足的准备,但还是遇到了一些困难,例如学习时间长,实战比较繁多,但时间又比较的短,难以保证按时按质按量完成。下午下了班,员工们都回去了,我还在那儿练习,一直到晚上9点,才能回住处休息。中午也没有休息的地方,只能趴在电脑前休息一会,一两周下来,相当地疲惫。但我们都明白自己来实习的任务,都坚持着完成自己的任务和使命。这个星期熟悉了工作环境、java编程的环境配

王垠[yín],四川大学97级本科毕业,保送到清华大学计算机系直博。期间曾在清华大学计算机系软件工程专业就读,主要进行集成电路布线算法的研究。在此期间,他因《完全用GNU/Linux工作》一文和对TeX的推广等“非研究成果的业余东西”而出名。在只剩一年就要博士毕业的时候,他申请退学,并将1万7千余字的“退学申请书”(题为清华梦的粉碎)公布在网上,引起舆论界一时对教育体制、理想主义等的热议。


1997年,考入四川大学计算机系97级。

2001年,保送清华大学计算机系软件所硕博连读,主要进行集成电路布线算法的研究。

2003年发表《完全用Linux 工作》、《写给支持和反对<完全用Linux工作>的人们》,痛斥windows弊端、宣扬linux。

2004年8月,发表网络文摘《完全用linux工作》、《写给支持和反对<完全用Linux工作>的人们》,痛斥windows弊端、宣扬linux,文章在中国的计算机和linux阵营引起极大轰动效应,成为水木清华linuxapp版和中国多个linux社区的偶像级人物。

2005年9月22日在水木社区BLOG上发表了《清华梦的粉碎--写给清华大学的退学申请》明确要求退学,痛斥国内高等教育弊端。

2006年8月,从清华退学后考GRE出国到了康奈尔大学计算机系,康奈尔大学计算机系全美排名第六名 。

2008年发表《Cornell 感受》并从康奈尔大学退学,到印第安纳大学伯明顿分校(IUB)计算机继续攻读博士学位,印第安纳大学伯明顿分校(IUB)计算机专业排名全美50名之外 。

2012年,以一篇文章《对博士学位说永别》再次退学,至此王垠分别于2005年、2008年、2012年分别从清华大学、康奈尔大学和印第安纳大学伯明顿分校退学。他认为他的“博士生涯”已经帮助他找到了比博士学位更重要的东西 。

2012年结束在Google的实习后发表《王垠:我和Google的故事》。

2012年冬季,加入Coverity,职业软件工程师。

2013年03月发表《谈“P=NP?”》 ,并表示“这个问题其实是不存在的,它根本不需要解决。” 。

2014年02月发表《程序员的心理疾病》,认为程序员群体存在心理疾患。

小时候,妈妈给我一个梦。她指着一个大哥哥的照片对我说,这是爸爸的学生,他考上了清华大学,他是我们中学的骄傲。长大后,你也要进入清华大学读书,为我们家争光。我不知道清华是什么样子,但是我知道爱迪生和牛顿的故事。清华,大概就是可以把我造就成他们这种人的地方吧。我幼小的脑海里就想象出我 能在清华做的事情……我的脸上浮现出笑容。我说我要实现这个“清华梦”。这就是清华梦的诞生。

我相信每个人在小时候都跟我差不多,对这个世界充满了好奇。

鲁迅有他的百草园,我也有我自己的"实验田"。如果说小时候的鲁迅是一个艺术家,那么小时候的我就是一个科学家。这么说可能有人要说我口气 太大,张口闭口就是这家那家。然而在我的字典里,"艺术家"和"科学家"并不是什么了不起的人,它们只是贴在人内心的一个标签。如果一个小孩专注于内心对 世界的感觉,那么他就是一个艺术家。而我不是。我的大部分兴趣是在了解世界是怎样运转,甚至不惜代价。也许大部分男孩子都是这样。

我小时候住在父母执教的中学里。两间平房,门口有一小块地,妈妈在里面种了一些菜。我们一家三口虽然穷,但是过着宁静舒适的生活。我们在这个地方一直住到上初中的时候。这些房屋记录着一个年幼的科学家的探索和实验,直到它们被夷为平地。

妈妈拒绝让我养猫狗,她说凡是会拉屎的都不养---除了我。所以我小时候就喜欢与蚂蚁作伴。我总是试图用各种各样的办法去了解蚂蚁的生活习 性。我可以一整天的观察我家屋檐下的蚂蚁来来去去。看见他们用触须碰一碰,然后各自分头走开,我就会想它们到底说了什么。我在想,能不能用一种方法解开蚂 蚁语言的密码。我从书中得知蚂蚁洞里有蚁后,她有很大的肚子。为了一睹芳容,我开始试图水漫金山,把水往蚂蚁洞里灌。我有时一个下午就干这种事情,却没有 一次成功看到蚁后。后来才知道蚂蚁是如此精明的下水道工程师,水大部分都渗到地底下去了。可是我不甘心,我开始试用别的办法。比如在洞口放一块糖。可是蚁 后架子太大,终究不肯出来,让别人帮她送饭进去。

有人说,这个世界最后不是毁在疯子手上,就是毁在科学家手上。世界上如果只有科学家是很可怕的,比如他们会发明高效的杀人武器。我发现疏松 的棉絮可以迅速的燃烧,就想出一种惨绝蚁寰的大屠杀实验。我先把糖水滴在地上,等蚂蚁把那个地方围个水泄不通的时候,铺上棉花,点火……现在想起那些勤劳 的小黑头都变成灰烬,我仍然心惊肉跳。他们的灵魂会来找我报复吗?后来这个实验有一个升级的版本用的是浸泡过一种化学药品溶液的纸,文火燃烧,由于燃烧速 度慢,杀伤力不大,这个实验可以测试蚂蚁的逃跑路线。我还用活蚂蚁进行过心理实验。首先用破袜子摩擦塑料尺产生静电,然后放在一只正在行走的蚂蚁身后不远 处。蚂蚁走不动了,我就开始推测它在想什么,它感觉到什么。它可能会觉得有外星人?但是由于尺子拿开以后,它若无其事继续走,我猜它只是有点纳闷,而不惊 慌。但是反反复复几次之后,它明显有罢工的意思,似乎忘了自己要去干什么。后来我又发现蚂蚁被吸到塑料尺上之后会由于带上相同的电荷而被"发射"出去,就 像人间大炮一样。注:"人间大炮"是日本电视剧《恐龙特急克塞号》里的一种可以把人当作炮弹发射的威力很大的电磁装置。

一点微小的发现,就可以引发大量的探索和实验。这就是我在那个年代的特点。虽然妈妈也逼着我练习书法,绘画,还多次获奖,但我不喜欢这些东 西。我似乎生下来就是科学家,不是搞艺术的,不过也许只是妈妈的强迫让我反感了艺术而已。物理是我最喜欢的,因为它让我了解到世界的奥秘。我一般开学前几 天就会把物理书上的实验都挑出来,费尽辛苦找到材料实践一番,心里美滋滋的。上学真是快乐!

上了高中,由于课业的压力,我的生活逐渐改变了。为了考上清华大学,我努力的学习。抛下我的毛笔,抛下我用来做实验的蚂蚁,电池和线圈,抛下除了考 试科目的一切。在老师眼里我是一个听话的好学生,在妈妈眼里我是一个听话的好孩子。每天早上按时起床,吃一大碗妈妈做的面(为了补充一上午学习需要的体 力),然后冲进教室,按照预设的程序开始读书,做练习题。似乎一切都有条不紊,顺利进行。可是……

忽然有一天我发现,我的一切活动都是在纸上进行的,看书,做习题。试卷和复习书让我变得变得麻木。我想这样下去我就不再像爱迪生和牛顿了。于是我开始调皮起来。我不但要做考试的题目,还要做更难的题目。做了物理奥林匹克的题目,接着就想看大学的物理书,接着就想恢复我小时候的实验的爱好。老 师辅导自习时经常被我缠住问一些不着边际的问题,那其实是我在实验中发现的问题。终于有一天,在我要求他跟我合作制造一个磁悬浮陀螺的时候,他显示出了不 耐烦:“王垠,你让我先回答别的同学的问题好不好?你的问题对考试没有好处。” 我呆住了,启发我让我爱上物理的人,尽然对我说出这样的话。后来想一想,他也是无奈啊,不过我从此再也不想问他任何“超纲”的问题。

高二的时候妈妈就拿回一份前一届的高考题让我做,我随手一做就得了一个当时可以考上清华的成绩。我的心里想,清华我来了。明年的这个时候, 我就会拿到录取通知书了!从此我就不再把高考放在眼里。我开始钻研越来越难的题目,进行越来越离谱的实验。我想,清华里面应该都是我这样的学生吧,我会有 很多志同道合的朋友。

可是我的行为总是受到老师的压制,他们要把我们变成考试的机器。他们告诉我,沉下心来做习题,考试才能有把握。妈妈也帮着老师劝导我。看, 一班的某某某这次模拟考试数学成绩比你高,多努力一下吧。我哪里听得进去,我才不在乎这点分数,我能解决更难的问题,老师都没法解决的问题。我开始有了逆 反心理,开始早上懒床,装病请假不去上课。班主任,校长多次找我谈话,说我要沉下心来准备考试云云。但是我根本就听不进去,我讨厌高考,觉得他们这样出题 不合理。然后我就有了心理疾病,大概是强迫症。高考语文的时候我居然怀疑监考老师认为自己在作弊,接着好像真的怕被抓住了一样,手发抖,头冒汗。然后我又 想要是考不好,以前的优秀会不会也被人怀疑?他们会不会以为我以前的成绩全都是作弊得来的?手就抖得更厉害了。这时候,监考老师可能发现了我的情况,真的 走了过来,站在我身后。害得我好几分钟不敢写一个字,因为手已经完全不听使唤。不过他还是走开了,这可怕的高考终于结束了。

我们是考试前填的志愿,我根本不考虑其他学校就只填了清华。后来妈妈研究了一下,帮我添了一个天津大学在第二志愿。以下的志愿全部空白。大 家觉得我真够大胆,可是我的心理状态让我发挥完全失常,比清华的最低分数线还差两分。特别是语文,才96分。天津大学第一志愿收满不要我。昔日的好学生, 居然到了落榜的下场。我真的那么好吗?我问自己。我太骄傲,才落到如此地步吧。我开始怀疑自己是否应该那样瞧不起高考。看着爸爸的愁眉苦脸,妈妈的唠唠叨 叨,真是生不如死。复读吗?那会是噩梦的继续。我不能再在这个学校待下去。再面对题海,我的心理疾病会让我自杀的。碰巧四川大学来招收高分落榜的学生,还 给了我随便选择专业的机会。妈妈说,计算机现在很火热,出来好找工作。我虽然对工作不感兴趣,但是我比较喜欢写程序,于是就进了川大计算机系。

不能不说进川大是个没有选择中的好选择。大学生活自由一些,我至少不会走上自杀的道路。可是我的毛病仍然在继续,我永远不满足学校里能学到的那么点东西。老师基本是照本宣科,我逐渐不再满足这种知识灌输式的教育。

川大的环境我实在无法忍受。军训的时候就发现很多同学是靠关系进来混的,同宿舍还有人自称黑社会。我觉得来错了地方,就想退学。我们的军训 是在一个戒备森严的炮兵基地里,心里的苦向谁说啊!有一天我们正在路上齐步走的时候,我忽然看到一个女人挽着一个军官走了过来。那个军官的老婆怎么长的这 么像我妈妈!要是妈妈来到我身边该多好!没想到回到营地,团长说有人来探访。我走过去,居然发现是妈妈!因为听说我想退学,她急忙向学校打听了军训的地 点,几经周折跑过来,是那个军官带着她混进来的。我想我妈妈要是转行当间谍一定会很出色。她说已经帮我办了退学,学校同意了,回去好好复习,准备考上清 华…… “好好复习,好好复习”……我的脑海里又浮现出高三的情景。脑子一阵疼痛之后,我说:“妈妈,我不想退学了。”

可是军训回到学校,发现宿舍如此差劲,后来还有人惹了外面黑道的人,别人找上门来打架。我又想退学。妈妈又来帮我办理手续,可是结果我还是 由于懦弱反悔了。害得学校办事的老师都骂我:“你这个人简直神经病!” 对啊,我确实是有病,不过我的是精神病,不是神经病。我恨我的高中,我恨我的大学,我恨高考,我恨中国的教育!是你们让我生病的。可是妈妈,她为了我已经 费尽了辛苦。我不能再这样周折下去。我自己在学校里好好努力,准备考上清华的研究生吧。

又经过好多麻烦事,我终于决定在校外去租房子住。后来我开始玩滑板,它让我变得勇敢。我心里逐渐平静下来,可以用心看书了。大二以后,我的学习生活才逐渐进入正常,自信开始恢复。

记得川大教Pascal语言的老师第一堂课就对我们说:“我们学校就是落后啊。外面公司里都用C, C++了,我们还在教Pascal。你们以后要出去工作恐怕还是得学学VC什么的。” 于是有的同学开始抱起一本本像“XXX圣经”之类的书开始学习,上数学课也在看这些东西。我当时自愧不如啊。自己就是小学的时候玩过一下学习机,可以说没 有任何计算机基础。辅导员也经常夸他们几个动手能力强,以后公司就需要这样的人。他们出口就是Bill Gates, 世界首富……军训的时候听着他们说什么DOS, 温95,我就只有张着嘴崇拜的份了。才想起我高中计算机竞赛的时候一道有关DOS命令的题没有做出来,现在听他们说才知道原来DOS是个“操作系统"。那 操作系统又是什么,他们说每个电脑上都必须有一个操作系统……我真是愧不如人 -_-!

正在我决定鼓起勇气后来跟上,准备拿起一本DOS大全从头啃起的时候,一次偶然的机会我接触到了Linux。后来又因为The Art of Computer Programming,接触到了Knuth。我才发现,好多课程上讲的那些东西原来如此低级。有些东西学了就过时,学它干吗?我并不比别人落后多少。我 一再的思考,什么是计算机科学?是什么让我们计算机系的人不同于其他系的。我有时候认为有了答案,但是后来答案又被我自己推翻。在思想的混乱中,我发现我 逐渐摆脱了旁人的标准。我自己学会了Linux,学会很多种当时别人听都没听说过的计算机语言。我开始发现学习再多的语言也没有意义,我应该想办法发现它 们本质的共同点,想设计一种完美的简单的语言。我学会了LaTeX,用来排版我的作业和本科论文,还设计了一个标记语言和一个程序,帮我爸爸自动排版出非 常漂亮的英语试卷。我接触到MMIX这种先进而漂亮的处理器,还因为找出Knuth书里的错误得到两张支票和一些礼物。这并不是什么值得炫耀的,但是这给 我对计算机的兴趣很大鼓舞。

我开始发现学校的课程是僵化的,过分重视知识的学习,而没有从一个创造者的角度来看问题。有些东西,比如8086汇编语言,完全没有必要学 习,那是设计很糟糕的处理器,后来我才知道很多德国大学已经用MMIX取而代之。有些同学说你别在意这些,哪种处理器汇编语言都差不多,Intel也是有 历史包袱。既然是历史包袱,我们学它干什么?我那时总是从一个处理器设计者的角度来看问题,想改变我认为不合理的东西。我喜欢简单又漂亮的东西,它们给我 美感。我学程序语言的时候就觉得C语言,C++里面包含太多没有必要的复杂,就想自己设计一种语言;学操作系统的时候就觉得UNIX还不够一致和完美,就 想自己设计一种操作系统。但是老师总是要把一些不合理的东西当作真理一样放在试卷里,不答对就不能得分。所以我上课要不就逃掉,背地里拿着大部头的“龙 书”之类的原版英语书啃。要不就看我打印出来的网上的一些资料,几乎不听老师讲。期末划重点的时候也不去,考试就考个八九十分,总有几个女生排名在我上 面。不过我不在乎这点分数,考试和分数不再能评价我。同学们大概都觉得我是一个怪人,后来毕业了我才听他们说,他们管我叫“怪才”。我如此努力的学习着, 对别的事情充耳不闻。我只有一个目的,就是毕业就离开这个鬼地方,进入清华大学上研究生。虽然大家不理解我在干什么,清华的老师应该挺在乎我学的东西吧。

可是我没有想到,在我死啃书本的时候,我的创造力正在离我远去。在我盲目接受貌似高深的材料的时候,我失去了自己的创造。我成了比别人稍微 好一点的技术工人,不再跟爱迪生和牛顿是一类人了。我高中的时候拼命想保存的创造力已经在苦读之下消失殆尽。我看书的方式变得顺序化,总想从头看到尾。中 国教育的目的,终于快达到了。

大三的暑假,我来到清华想拿一些考研的资料。这是我梦中的地方呀,美丽的校园,比川大要大上好多倍吧,脚都走痛了才走到招待所。去系办,一个办事员态度很不好的给我一份资料。哎,学校好,人脾气就该大啊。忍了吧,要是真能考进来就好了。

后来听一个老师说清华有一种学生叫“直博”,可以硕博连读,五年拿到博士学位。只要面试通过就可以进来学习。我心想这种方式好啊,我平生最 讨厌的就是考试了。出高考题的那帮人,他们有什么资格考我!考研资料也是遍地飞。写了几本复习材料就自称什么“一代名师”,我最看不起这种人了,就会赚 钱。我如果可以获得“直博”的名额,就可以永远摆脱他们了。想一想,要是硕士三年,博士三年,就要六年。现在五年就可以拿到博士学位,还不用考试,真是太 好了。可是我又有什么资格获得清华的直博?我在川大从来没听说过这种东西。

于是我就开始打电话联系老师,跟他们谈谈。面对他们的眉头,面对他们的笑脸却无可奈何的说“没有名额”,我都感觉没什么希望了。一个院士甚 至对我说:“你们四川大学是什么学校?二流都算不上,最多算个三流大学。你怎么能来我这里!” 我深受打击,可是我还是没有放弃。最后我找到了一个老师,我们一开始就谈的挺投机。他听说我喜欢Knuth的书,挺高兴的说,哦我知道他,好多年前来我们 这里做过报告呢。我终于觉得找到了知音,于是决定就跟着他学习。老师找好了之后还有一个面试,是别的老师参加的,我说什么他们似乎没有认真听,就一个劲看 我的考试成绩。

最后老师只开玩笑似的对我的体育成绩提出了疑问,说你怎么才80多分?你的身体能不能胜任繁重的学习任务啊?我笑着回答,我每天还跑5000米呢。面试就这样通过了。

面试通过后回到学校还要办一些手续。成绩单,推荐信等等,跟申请外国大学研究生院差不多,让我感觉挺正规的。院长对我挺好的,同意帮我签推荐信。可 是签完字之后他对我说:“你别以为他们觉得你是个人才。他们是根本招不到人!他们那里像你这样的学生都出国了。谁想读博士啊?你别太高兴了。” 我笑着应付这突如其来的打击,在心里却不断为自己的选择辩护。清华一定是好样的,不会让我失望。它是我的梦啊。

很多麻烦的手续之后,终于拿到了我梦想的大学的录取通知书,可以离开川大这个鬼地方了。毕业的散伙饭上,我默默地想象着即将到来的清华的快 乐生活,暗自庆幸。散伙饭到了尾声的时候,一个平时不太熟悉的同学拿着一杯啤酒走过来。我挺紧张,我最不喜欢别人给我敬酒了,说是客气,其实很虚伪。没想 到他说:“我敬你一杯,大牛人。听说你被清华大学录取作了博士。我干了,你随意。” 我不知如何回答,我一向不知如何应付别人的恭维。还好他没有让我也干杯,我觉得他够朋友。没想到喝完他接着说:“我知道你是怎样的人。我很仰慕你,你是真 正喜欢研究的人。可是我要告诉你,清华的人并不会比我们好多少。大部分人也只是想混一个学位,将来找个好工作。没有多少人可以跟你一起研究的,你去了必定 很孤独。我就很奇怪你这样的人怎么不出国呢!你会后悔的。”

我虽然佩服他直言不讳,但还是有点不高兴了。一个人说你的选择是错误的,你的反应是什么呢?反正我当时为我的“清华梦”作了一番辩护,说我进去自己好好研究,应该还是能够很好的,毕竟这是我从小的梦啊。可是没想到,他说的居然是对的,我现在开始感谢他了。

计算几何,创造力的复苏

清华还是一样的上课方式,大部分课也是很多人一起上,一起打瞌睡。老师也是照本宣科,我居然发现他们其实跟川大的老师没什么区别。我从本科师弟那里 了解到,计算机系本科的课程设置还是一样有好多没必要学的东西。清华的不同之处就是,一到考试的时候原来进行的娱乐活动都不见了人影。原本每天晚上都有人 一起玩轮滑,考试的时候就只剩下我孤零零的一个人。因为大家都怕考试,开始熬夜复习了。上课也不容易逃课了,有些老师会突然点名,缺席会严重影响最后的成 绩。

对于博士生,传说还有一个规定,那就是后10%淘汰。也就是说,不管你成绩如何,如果成绩排名在课程的后10%,那么就要重修。而如果两门 功课重修,就会被开除。面对如此残酷的规定,很多同学都惶惶不可终日。我就是在隔壁同学的唠叨声中度过了第一期。不过我还是没有把考试当回事,所以我也没 有去验证这个说法的官方真实性。我仍然不去听老师划重点,我仍然不觉得老师出的题目有什么好,我仍然讨厌有人让我们用手算矩阵。可能觉得太残酷,还是觉得 要是开除了博士生谁来干活,这条规定后来改成了如果博士生上了80分就可以不重修。

但是我的生命中出现了这样一门课程。它改变了我对老师的看法,让我觉得上课原来也可以如此有趣。这就是计算几何。上课的人很少,只有十来个 人。因为听说这门课很难,很多同学都没有选,但是我就是那种知难而进的人。老师上课的方式跟别的课程很不一样,大家坐在一个小教室里,老师有精美的幻灯 片,有动画,不时还插入一段大科学家,大哲学家的名言。有一次老师讲前美国数学会长 Graham 的故事,他居然同时也是国际杂耍联合会主席,我才发现一个科学家也可以那么有趣。上课时老师会停下来很多次让学生提问题,下课大家都积极踊跃的讨论新奇的 问题。课程的评分方法也很特别,平时成绩占到30%的分量,作业分为几种分值,可以自己选择做不做,作业的总分数乘以30%,加上最后大作业的分数乘以 70%,就是最后的得分。我有一次因为没来得及按时交作业,后来发现作业的题目很有趣,就对作业要求的算法写了一个详细的分析,还花了一整夜写了一个算法 演示程序交上去,老师也接受了这个迟来的作业。后来我的作业分数就大大超出了所要求的30分。说真的,这门课太有趣了,我就只逃过一次课。但是还是有时候 人数不到一半,因为其他课程压力太大,有人都去复习别的课程了。但是老师从来不点名,还对逃课的同学表示同情。还问我们在座的有没有其他课特别紧张的,下 次课可以不来。真是让人感动。

我就是在这门课上认识了王益,我们亲密无间的合作,让我领略到了什么叫做研究。大作业的时候我们在一个小组,其实是三人一组,但是那第三个 人其实什么也没干。我和王益决定写一个3D的Voronoi图扫描算法演示程序。王益的3D图形编程能力很强,所以他做界面,由我负责算法生成数据作为后 端。我们分别在自己的机器上编写程序,不时的打电话讨论接口的设计问题。我找到了Bell labs 的 Steven Fortune 的算法程序,决定看懂它,然后改造成演示需要的分部运行的算法。但是 Fortune 的程序几乎没有注释,而且使用了一种奇怪的数据结构,很难理解。Fortune 还在程序里说到,这个算法虽然有效,但是对于程序员来说是一个挑战。所以我email请他给我一份算法论文的拷贝,他同意了。但是一个月之后,信才到我手 里,那时我们已经完成了作业。因为我花了一个星期看懂了他的程序,还换掉了他的麻烦又低效的数据结构。随后成功的把后端与王益的前端设计好接口联合。等我 看到 Fortune 的论文,发现程序里面其实已经改进了论文的核心内容。其中的parabolic transformation其实完全没有必要实现。我深深体会到实践的重要性,也许先有了他的论文我反而会被误导,写不出实际可以运行的程序。

由于我们的团结努力,老师对我们的大作业非常满意,他给了我们最高的分数 100。由于我们两个都在课下超额完成作业,所以总的分数我们两个都是满分。这是我阔别已久的100分。只有在小学我才拿到过这种分数啊!对于一个对考试 成绩满不在乎的人,100 又意味着什么?如果是别的课程我会毫不在乎,就像我得了80分一样。可是这个100分是我们团结研究而来的,它包含了对我们的合作意识,对我们的友谊,对 我们的热情的肯定。虽然我觉得我们的东西还有改进的余地,但是我接受这个100分!也只有这样的课程,我才可能得100分。

从此我感觉到了什么叫做研究。这跟我小时候干的那些事情没有什么两样。你在身边发现一个问题,想知道为什么。然后你就想去获得解决这个问题 的知识。你去看书,你去问专家,你上网去搜索。如果没有发现答案,那么好啦,你就可以自己试图去发现为什么,这是最有趣的部分。知道了为什么,就想让这个 东西有用处,对人们的生活产生好处。这就是研究。

我们也有讨论,原来是这个样子

上完课,就该开始搞研究啦。可是研究什么呢?老师给我几篇论文看,意思是让我看看有没有什么想法。

我开始感觉没有头绪,就跟导师说能不能找师兄师姐跟我讨论讨论,还有别的人在做这个吗?他说,就你一个人做这个,每个人做一个题目,独立思 考,这就是研究。我觉得是啊,我应该独立思考。可是过了一段时间发现不行啊,虽然自己实践很重要,可是讨论是发现和产生问题的关键。没有讨论,连什么问题 值得解决可能都搞不清楚。有一个Princeton的博士生在做完报告时说:“我很幸运。我的老师是一个很好的导师。我上次拿了两个问题,不知道该做哪一 个。他指着其中一个说,你就做这个,我感觉这个能很快做出来。最后证明他是正确的,另一个是块难啃的骨头,没有价值。在研究初期,这种指点是非常重要的。我逐渐也有了这种直觉,能够找到有价值的问题了。”

后来我就经常上网看看国外的大学怎么搞研究,发现他们都有 seminar,讨论组。他们经常在一个地方喝茶,讨论问题,争得面红耳赤,回家分头思考,做实验,第二天喝茶时再讨论。那就是我从小梦寐以求的生活啊!计算几何课已经让我爱上了与人合作和讨论的方式,现在却孤零零一个人了。我必须告诉导师,合作和讨论是非常重要的。在我据理陈述之后,他说:“好吧。反正 师兄师姐各自有自己的事,你要讨论什么就跟我和你副导师讨论吧。” 于是我就开始了跟他们两个星期一次的见面讨论。每次讨论都感觉他们不知道我在说什么,他们心里想的都只是这个能比别人的好多少呢?能不能投到这个会议呢?如此宏观。我觉得跟他们讨论完全是浪费时间。

后来课题逐渐有了新的同学加入,导师决定跟中科院数学所的人一起申请一个项目来研究。于是我们每两个星期去中科院讨论。中科院的老师觉得他 们的研究太理论,期望我们能给他们带去一点实际的东西。可是我们也没有什么实际的东西,所有的问题都是从别人的paper里看到的。副导师就开始跟他们说 这个问题有多么多么重要…… 他们也借此机会开始研究以前放下的一些问题。总之讨论的感觉就是没有目的,没有主题。很多时候就是一个人看了一篇别人的paper之后做一个感想。有一次 副导师不明白一个很基础的东西,我们耐心的给他讲。过了几个星期,他又在讨论上对同样的问题搞不明白。我觉得跟他解释那些完全就是浪费时间,他的心思不在 那上面,他只是告诉中科院的老师我们这个领域那些会议要开始投稿了,你们是不是准备一些论文?中科院的老师也很诧异,我们这领域的会议的费用比他们的会议 高很多,他们不大愿意投稿。当一个师弟讲的我们昏昏欲睡时,我坐在那里就在想,我们到底在干什么?我们讨论了这么久都不知道什么东西值得研究,还研究什 么?后来师弟师妹们就开始考虑把问题变一变,看看能不能产生新的问题。他们的做法,我跟他们开玩笑说就是“有问题也要解决;没有问题,制造问题也要解 决!” 他们笑着点点头,“本来就是这样嘛,没办法啊。混毕业了出国我们就不搞这个了。”

博士生论坛的时候,同学们都觉得有类似的问题,讨论不足,交流不足。所以我提议成立一个类似国外大学的 Common Room,用来讨论问题。可是大部分老师说:“这样一个房间,天天都要有那么多人在里面待着。谁来出这个钱?” 是啊,老师自己的办公室都要钱,哪里可能有什么 Common Room?就算有了 Common Room,在里面讨论的无非还是文章发到哪里的问题。制度决定了行为,我的设想太理想化了。

分析一下,为什么很多老师不提倡讨论呢?因为问题是有限的。老师辛辛苦苦这么多年搞来搞去都在搞这些问题,分配给你们每人一个,互不冲突。要是两个人都搞一个问题,这下好了。出了成果论文归谁?学校要求必须第一作者才算论文数。要是两个人都写论文,那么投到同一个会议肯定有一个要被 reject。这样对集体发展不利嘛,大家不就是发几篇论文混毕业吗?何苦?

说到paper我就痛心。我的方向上我至今还没有看到几篇我觉得像样的文章。我主要进行集成电路布线算法的研究。看起来高深,其实是很简单的问题, 一个平面上有一些点是电路里的电极,现在需要用铜线把它们连起来,怎么样让连线的长度或者时延最短?这个问题跟几何上一个有名的问题 Steiner 树问题有关系。

我的导师就是以前写了一篇有关这个的paper发到IEEE transactions。我觉得这篇论文还算有一定价值,但是年代已久。已经毕业的一个师兄就在他的论文基础上修改来修改去,发了好几篇paper。英 文的不够还翻译成中文,投到国内的期刊。后来一个师姐又在这个师兄的基础上进行修改,又发了好多篇。可是在我看来,他们的论文纯粹就是炒冷饭,没有什么创 新,很多时候就是加速一下。学过算法基础的人都知道,把NP-Hard问题分解成几个小部分,每一部分用一个别人的精确算法解决,然后再连接起来,就可以 得到一个近似解。这种做法在解决具体问题时只需要一句话就能说明白了,可是他们却对每一个具体问题写了论文,而且一写就是好几篇。要是每一个问题经过这样 的加速都写一篇文章,那文章数就可以成倍增长了!我们领域的很多问题形式化成一个规划问题就解决了,可是每次形式化一个问题就发一篇paper,而对方法 完全没有改进,对于我来说是没有价值的,就像做小学应用题一样。虽然没有创新,还是可以发paper。主要是你怎样把你的 Introduction 写好?可以让别人觉得你的工作有意义?这就是功夫,作家的功夫。我有一次面见INRIA的头目

现在清华研究生做的事情无非就是,拼命写paper,然后找个地方投出去。SCI,EI 的最好,偏僻的没人看的杂志也没关系,交钱也没关系。我就知道日本的一个SCI索引的期刊收1000美元的版面费。导师出钱,不投白不投,投了好毕业呵!你不知道在比较穷的学校,有多少人投中了都没钱去开会啊!很多人羡慕清华,就是这个原因。

现在我也被“分配”来做这个问题。虽然说是一个“有名”的问题,但是它已经被研究了好几十年了。有很多挺厉害的人做出了很重要的贡献,但那 已经是几十年前的事情了。我们为什么研究这个问题?我至今没有搞懂。开头导师只是给了我有关这个问题的两篇paper。我对其中一篇的一个说法产生了怀 疑,所以我决定写一个程序来验证谁对谁错。这本身不是什么创新的工作,可是我却从这个程序改进得到一个新的算法来构造布线用的 Steiner 树,实验表明我的算法比以前的算法要快几倍。

这是不是说我的算法是一个值得写paper的东西呢?导师说我应该写一篇,但是我认为我只是在挑别人的毛病时意外想出了一个改进的算法,并 不会对将来的研究有什么启发。虽然程序快了一些,但是很少有那么大的线网需要这么快的算法。几倍的提高不算是一个理论上的改进,而且这个算法实现复杂,还 不能推广到其他距离空间,可扩展性很低。所以我觉得这个结果不令我兴奋,不想写论文,我想进行新的题目。但是在老师的一再要求下,我居然把这个结果写成了 两篇paper。按照他的说法:“应该分阶段总结你的成果。”

起初投出去的时候评委总是说这个东西不实用,导师说这是评委的问题,他们觉得不实用我们就投到理论一点的会议。经过几次投稿,还是失败了。我终于忍不住了,对副导师说出我的想法,我说:“看一个作家的水平,是看他扔在垃圾筐里的纸。就让我把这篇paper永远藏在我的垃圾筐里吧。” 但是他不甘心,说你要相信自己的实力,然后把我的算法夸奖了一番,说我的算法有理论价值。其实我很清楚,它没有什么理论在里面。我说我不管了,随便你怎么 办。我就开始研究我自己喜欢的东西去了。之后他居然真的投中一个欧洲的会议,是被 LNCS 收录的,LNCS 是 SCI 索引的,所以我居然有了一篇 SCI 文章!我自己不喜欢的文章也是 SCI 了!

第二篇论文就更传奇了。几投不中,就其原因,评委说是没有和现在“最先进”的算法程序实验比较。我本来就觉得那个“最先进”的算法没什么理 论价值,所以才没有找他要代码。没办法,还是求他给我代码。比了一下,确实比他快。不过我估计他程序写的有毛病,从实验数据来看,运行时间增长的速度不符 合他论文里声称的时间复杂度。所以我怀疑有可能是实现上的问题,而不是我的算法更好。我的一个师兄以前就把他自己的算法戏称为“基于bug的优化”。我觉 得这样比较对那个算法的作者不公平,而且速度提高几倍,没有什么意义,我觉得没有发表的价值了。但是导师说,虽然速度只提高了几倍,在巨大的线网上时间就 会就会短很多。我说实际上没有那么大的线网,对于一般的线网,原来的算法时间本来就很短了,再快几倍也只能快几秒钟。他说那就考虑很多的小线网总可以吧, 电路里总会有很多很多线网的。可是有NP理论基础的人都知道,小规模的问题完全就没必要用近似算法了,再多的小规模问题加起来还是小规模问题。总之,他其 实只是要我找一个理由让人觉得我的算法有实际的价值。没办法,我就记录下数据,添到论文上,然后在介绍里写上:“由于电路的发展,线网肯定会越变越 大……” 其实我知道,即使线网大小成为天文数字,也只能让我的算法比别人快几分钟而已。不过这下子论文一投就中,得了一个最佳论文奖。然后就有一篇校内新闻宣传:“我校王垠同学获得XXX会议最佳论文奖。这是大陆学者首次在如此高级别的会议上获得如此高的奖项。” 这个“高级别”的会议,在我看来就是个垃圾。美国人都把最差的论文投到这里,就是为了来旅游一圈而已。会议开完,我就把两块大砖头一样的论文集悄悄放在宾 馆的书架上走掉了,因为太重了。

论文被接受之后,导师和副导师就在讨论时商量怎么写作者列表。我一个人写出来的论文,最后作者列表里有6个人。除了导师,副导师,还有一个 并未参与讨论的师妹和另外两个老师。我也不知道这三个人知不知道我写了他们的名字,不过后来我发现我的名字也不知不觉出现在我师妹的两篇论文里。接着他们 又跟我商量,想在论文末尾加入对我们组几篇论文的引用。我根本没有参考过他们的论文,为什么要引用啊?不就是为了增加引用数嘛!我就被有些人论文里引用无 关的论文坑害过,搜索了半天搞来的论文,居然跟研究的东西毫不相关,这对读者是非常不负责的。我很反感这种做法,但是没办法啊,我只好把他们的文章都引用 了。我觉得这简直就是一个游戏,在论文之间制造一个网络,让读者在其中迷路。

第一篇投中了会议之后,副导师就继续要我为算法申请一个专利。写这个论文我都已经焦头烂额了,一点都不感兴趣。现在还要写专利,“要像教小学生做这 件事一样,一步一步的把算法写清楚,举出实例”。我觉得快不行了,再这样折腾下去,我到博士毕业也许也就只搞出这些小儿科东西吧!我终于小规模爆发了一 次。我坦荡的告诉了副导师我的想法,我觉得做学问应该是什么样,我觉得这么点东西不值得申请专利。我还告诉他我对国内的研究环境很失望。

他赶忙找我谈谈。对我说,我知道你心中有很大抱负。所以这次就不写专利了。我知道你想有更好的研究环境,但是不踏踏实实做好现在的工作,又 怎么能有大的创造呢?然后就开始举爱因斯坦,居里夫人的例子…… 然后说,其实你在这里好好努力,将来出国的机会多的是,你想去Harvard也行,你想去Princeton,都行啊!

你说行就行?你去去给我看看?我们实验室从来就没有去这些地方的。踏踏实实的意思难道就是一直研究这些我认为不值得研究的东西?这叫不求上进。一天到晚考虑这些低级陈旧的问题,就永远也只能研究这些问题。继续这样做下去,以后哪个真正的科学家还会要我?

默默求索,转向计算几何失败

我对自己的做法产生了深深的负罪感,觉得自己正在进入这团混沌,正在被同化。我于是决定一定要换一个题目研究,我就开始考虑zero skew tree。找了20多篇paper来看,发现他们没有什么本质的进步。我的计算几何知识告诉我,有些论文里的内容,其实可以用一句话说清楚。它们只是在某 一篇论文基础上改了一点点,但是却要写成另一篇论文。最让人惊讶的是,对于问题本身的价值,他们完全就不清楚。有的作者后来甚至说,其实以前他们考虑的问 题是没有必要解决的,因为实际应用中不可能遇到,我们其实可以把问题变成这样……你们费那么大工夫写了那么多论文,我花了那么多工夫看,到头来你们又跟我 说以前的问题没必要解决!

说到这些,有人总是跟我说“失败是成功之母,很多时候研究就是要搞清楚什么问题重要啊!” 但是我真的觉得,如果他们不是论文机器的话,这个领域的人就是缺乏预见力。他们总是在没有搞清楚问题的重要性之前就开始解决问题,然后写出很多论文之后, 才告诉读者,这个问题其实没有实际意义。当我给Andy Yao的学生提出这些问题,想跟他们讨论时,他们摇摇头,觉得太麻烦了,没有价值。他们研究美好新颖的问题去了,而我就这样陷落在充满陈旧问题的垃圾论文 的海洋中。我觉得我研究的问题不能再从论文里来了!

当我提出我们方向的研究应该是实用研究,需要从实际中来的问题时,导师总是告诉我"不要拘泥于现实,你研究的比较理论,理论的东西将来才会 有用"。“理论的东西将来才会有用",这是一句很有用的借口,几乎可以掩盖所有的失败和没用的论文。这句话已经被滥用了,只有具备天才的直觉和预见力的 人,才有资格说一个理论在遥远的将来会有用。我不是天才,导师也不是。我们不是Riemann,不能提出一个hypothesis让大家感觉到美,觉得多 年以后肯定会有用,那么就老老实实解决实际中来的问题吧!我于是决定停止研究我们领域的东西,转而研究我喜欢已久的计算几何。

在我多次请求之下,导师终于同意我专心研究计算几何。不过由于我的前两篇论文是受到计算几何启发而来的,他总是想希望我能够再把计算几何的 方法用到布线算法上。他请我的计算几何老师来实验室作了一次报告,介绍一些基础的算法。之后我就试图专心研究计算几何。可是同样的问题产生了。我废寝忘食 的看了一篇篇的计算几何论文,却发现别人的问题也是从实际中来的,是图形学,医学成像,生物信息等应用的需要。他们的作者都是跟相关学科的专家有密切接 触。他们的算法并不难想出来,但是我却没法得到最原始的实际问题。我觉得搞不下去了,就找计算几何老师谈,他说:“计算几何这个学科发展了这么久,理论的 东西已经几乎全部解决了,现在已经到了跟实际结合的阶段。我们这里没有人一起讨论,很难能有什么值得研究的问题。你看我,搞了六七年,什么也没有搞出来, 原因就是没有实际的问题。我有一个学生在这边的时候不怎么样的,可能还不如你,可是到美国去了之后就出了很多成果。因为那里有很多人一起激烈的讨论,讨论 就是产生问题的时候。” 后来我又去跟来访的计算几何专家滕尚华说我想研究计算几何,请他指点。他说:“我不认为你能在这里搞好计算几何。我的问题都是从实际中来的。比如一个物理 学家跟我聊天,他就会告诉我什么问题需要解决。或者一个网络专家,也向我描述有关的问题。你这样空看论文是做不出什么东西的!”

讨论,激烈的讨论,可是我们这里没有。我如果只看论文就只有捡别人做过的二手问题!

机器学习,“我们不能支持你了”

计算几何让我再一次失望了,原因还是没有讨论。我有点灰心丧气的时候,王益从深圳研究院给我打来一个热情洋溢的电话,说他在香港城市大学时合作过的 一个老师要来清华讲“机器学习”,他马上就要特地回到清华来给他当助教。他说这个老师很好,把深奥的数学也能讲的生动活泼,浅显易懂。在他的鼓动下,我就 决定去试一试,看看能不能在这个方面有一些发展。

老师讲的确实精辟,而且这个课程很重视“研究”。每堂课几乎都是讨论,老师经常要求学生上台自己讲,而且要提出自己的想法,不只是复述别人 做过的东西。机器学习跟人的思维和很多哲学原理都有关系,这些是我一直以来都好奇的东西啊!我忽然对这个学科焕发了十八分的热情。因为我完全没有基础,我 就开始就一整天一整天的看机器学习的书,期望能够短期之内能够与王益和老师进行比较深入的讨论。我后来成为了小组长,组织我的小组进行讨论。大家都很热 心,提出了很多新的思路。我在讨论时还给他们糖吃,大家都很开心。啊,我梦寐以求的研究的感觉又回来了!

可是这个时候,导师叫我去谈话。他说让我准备把以前那两篇论文改一下投到期刊。啊!垃圾一样的论文,现在还要投到期刊,成为永恒的垃圾!我 的反感情绪爆发了。我直接告诉导师,我不打算做这个方向的任何事情了,我要去试试在机器学习上有没有可能有所建树。导师似乎有点恼火,对我说:“上次同意 你搞计算几何,你搞了一整子又放弃了。现在又要搞机器学习。计算几何对我们的领域还有所帮助,可是机器学习就跟我们完全没有关系了。如果你执意要研究那 个,我们可就不能支持你了。你已经4年了,换个方向不可能了。如果你执意要这么做,你将面临退学。” 我有点生气了,说:“我不在乎这个学位。我只要做真正的研究!” 他说:“你好好考虑一下吧。退了学,清华的资源你都利用不到了。清华的网络,图书馆…… 你有没有考虑过你父母?人不是靠理想活着。你有没有考虑过我们教研组为你付出的心血?……”

心血?你们对我没有任何有益的指导,却只有误导。每个月给我那点钱吊着一条命而已。而我的论文却可以为你们申请多少钱的973项目!我够对得起你们了。我不要再给你们做论文机器!

我当时没有说出这些心里话,面对导师的威严,我深深吸了一口气,说:“好吧。我再考虑一下。” 谈话就这样不了了之,但是我仍然背地里活跃在机器学习的课程上。

机器学习的课程持续了一个月就结束了,接着就放暑假了。我决定换一种生活,就去了西藏旅游。虽然路途艰险,但是我包揽了美景,长了很多见识,认识了 很多朋友。本来8月4号就出发回来,不巧回来的路上遇上了泥石流和塌方,两次改道。路上又由于缺氧致使坐车时经常出现手脚严重麻木,甚至失去活动能力的问 题。我经历辛苦之后,回到眉山家里休养了一段时间,又到成都作了身体检查。

回到学校早已经开学了。去实验室拿两个月的助学金,却发现已经被实验室的管理老师扣留。他说导师有话,这些钱暂时扣留,等他发话才能给我。我心里一沉,不给我算了,我继续搞我喜欢的研究。没过两天就接到副导师的电话,让我去实验室谈话。他们两个用永远不变的笑脸面对着我,说“想清楚了吗?” 我冷静的说:“我想清楚了。我们的研究存在严重的问题。我不能再继续下去。如果必须研究这些东西,我就准备退学。” 导师经过一番举例爱因斯坦,居里夫人,叫我踏踏实实的说教无效之后,严厉的批评了我只顾自己,不顾及教研组为我付出的心血。然后说:“要是你不能再为实验 室作研究,我们就不能支持你了,前两个月实验室发的钱我收回。你可以马上写退学申请,我们实验室没有什么损失,我们有的是人干你的事情。不过我要告诉你, 你一旦退学,连学校的住宿都要被收回!”

副导师也收起他永恒的即使在生气时都保持的笑脸,开始咆哮:“是啊,你瞧不起我们。我们是没有你聪明,可是我们勤勤恳恳……你知道你得的那个best paper award,我们付出了多少努力吗?你认为这么容易拿到吗?那是多少国外专家鉴定……”

我安静的等他说完。他平息下来之后,我说了一声“再见”,然后默默地走出了办公室。

晚上收到副导师的email说:“还有一件事需要向你说一下:你在学校学习期间所取得的成绩包含你的努力、导师的指导帮助、同学们的帮助,还有学校和国家的支持。你作为博士生学习阶段取得的成果属于教研组、学校和国家。正如同我们作为职务发明的专利属于学校一样。

你在MST、SMT等方面取得了结果,它属于教研组、学校和国家。单位有责任进行合理的应用,为国家建设、国家荣誉服务。有责任进行进一步 的整理丰富、向高水平的刊物投送。这里我们想说明一下上述的情况,同时,也告诉你一下:你若愿意将这些成果进行进一步的整理、我们已经给你提出了具体的修 改意见,欢迎你按照进行修改。你若放弃,我们将进行具体的改进、投递。我们将尊重你的意见。谢谢。”

最后还是没有忘了paper的剩余价值。进一步验证了我的判断,他们在乎我吗?不。他们只在乎paper。至于我流离失所,又有何相干?我不知道有多少不知情的弟弟妹妹又会把他们的研究建立在我不屑一顾的paper之上。

醒悟,paper的奥秘

清华研究生谈论的重点是什么?是 paper。吃饭的时候谈,喝茶的时候谈,睡觉的时候也谈。隔壁的同学在进校第一年就为paper惶惶不可终日,说:“你知道吗,他们要求我们发SCI, 怎么办呢?我几个师兄都是因为没有paper延期毕业的。” 他的老师是个院士,可是他在手下就干一些写word文档之类的杂活还忙得要命,根本没有时间思考问题。

学校有规定,博士生必须发4篇paper才能毕业,其中必须有一篇是SCI索引,或者两篇EI索引。看上去冠冕堂皇的SCI, EI,不就是跟 google 差不多的东西吗?被它索引了怎么样了?对文章的篇数作要求,而对质量没有判断。投一个SCI太容易了,只是很多人不知道门路。能力一般的人也能很容易的投 够论文,然后就可以不思进取的等着毕业。但是不知门路或者被老板(一般研究生对导师的称呼)压迫干活的人就惨了,不知道怎么才能发论文,拖个六七年毕业是 常有的。这样的学校又怎么可能有讨论,怎么可能有创造力?SCI=Silly Chinese Index。

学校没有能力评价学生的水平,就拿文章数来衡量。这样的毕业标准造就的是怎样的学生,怎样的实验室呢?难道导师真的没有能力判断paper 的好坏吗?有些是,但是有些不是。即使他知道你的论文没什么价值,也会叫你发表。国家看什么来拨款研究?看paper。看什么来评价一个学校的水平,也是 paper。国家没有能力评价你的能力,当然只有看你有多少paper。所以有了paper就有了钱。只要你能写paper,培不培养你,你将来的发展, 关我们什么相干?你写的paper别人能不能看懂,能不能转化成生产力,管我们什么相干?怪不得有的院士想尽办法也要多收学生,宁愿自己帮学生出学费也要 他进来,因为学生就是财源。paper可以带来基金,可以在美国买小车洋房,没有基金就让学生干活吧。一个月几百块钱吊着一条命在那里为你拼命,谁叫他们 想要那个博士学位呢!学生毕业出国了,对他好一点就可以形成良好的关系网,互相引用paper,互相夸奖。只要你说得到“国外专家”的肯定,别人还能说你 什么?开会审论文时就放水,看到某篇paper的话题似乎是熟人的就录取。写论文时就把跟自己有关系的人的名字都挂到作者里面,不管参考了与否,引用自己 人的论文,增加他的引用数。如果用图论的方法把文献的作者,参考过的文献做成关系图,合作过的作者之间都有边,A参考B,那么从A到B有一条边。那么中国 人正在这个巨大的图上不断制造和扩大强连通分量(clique)。不断的破坏正确的学术规则。

现在我已经厌烦了国内所谓的“学术”。我准备放弃清华的博士学位,出国找个好老师,进行真正的研究。博士第4年了,做出这样的决定真是不容易。有人告诉我不要放弃,你知道有多少人正在羡慕你?你知道一个清华的博士学位有多么值钱吗?但是我不能这么沉默下去了!

博士学位,累坏了多少年轻的中国人!我不再为它浪费我的青春。我知道国外大部分研究也不是那么好,如果国外也找不到好的老师,我就永远离开 学术界,找一个简单的工作,和我心爱的人一起生活。有人说这是浪费人才?在清华混沌的过日子才是浪费呢!当一个侍者至少也让我感到对社会有贡献,看着顾客 满意,我会露出笑容。可是做一个博士却没有。我感觉自己是个没用的人。

我已经完全看透了中国教育的失败。我高中的时候就受到它的伤害,这种伤害延续到现在。中国教育已经成为埋没人才的祸首。留在这个圈子里就是屈服,我不出声,大家都不出声,这个世界就会继续这样郁闷的运转下去。我今天要对这个系统大声地说一声“不!”

我离开了。可是中国永远也不缺少为清华拼命的人!因为他们的妈妈会告诉他们,清华是全中国最好的学校。你要考上清华,为我们光宗耀祖……

我不是一个中国教育操作系统下优良的程序。我在系统里运行了将近20年,快到最后的时候才喧闹的退出,Dump出这么大一个core file。我知道优秀的程序很早就退出了,我自愧不如他们。但是有的程序一声不响就退出了,还有很多的程序成为了zombie,永远的驻留在系统中成了系 统的负担,在这一点上我又比他们好一些。至少我让程序员有机会用调试器检查core文件,调查这个程序运行中哪里出了问题。

“你退学就退学,干吗大惊小怪,牢骚满腹的?” 如果只是有牢骚,我就把隔壁同学拉过来一起发发牢骚就完事了。可是我虽然不是优秀的程序,我觉得应该为修复这个系统,修复自己做点什么。我希望国家的教育 和研究环境好起来,这样大家就安心的生活,不用出国搞得奔波流离。有多少恋人由于一个人出国了而痛苦的分手,有多少父母在盼望海外游子的归来?我不能像很 多人那样申请了国外的学校,拍拍屁股就走人。我一年前就考GRE想出国,可是我总是自欺欺人的幻想国内的境况会好起来,有时我觉得看到希望,可是马上希望 又破灭了。一个个大师来了,让我一次次燃起希望,可是发现他们对环境的作用也不大。一些大师不满意,又走了。我自己也想尽力改造环境,结果经过多次努力无 效,自认能力不够,终于放弃了。

在发现大家都忙着发表paper而没有讨论时,我曾经建议设立一个清华的THU-Technical Report。我的想法是:最差的草稿扔在垃圾堆里;可能有用但是还不值得向所有人公开的东西发到THU-TR,供系内查阅;如果发现THU-TR的东西 会有用,再好好修改了转投会议或者期刊。系学术助理王磊很高兴的采纳了我的建议,并且自愿维护一个THU-TR的编号。可是根本没有人愿意把自己好不容易 写出来的但是确实又不值得发表的东西投到这里,因为世界上总有地方可以把这个东西投出去,还是SCI和EI,而这个THU-TR连正式刊物都不算。后来有 人告诉我,如果学生都把东西投到我们这里,不知道有多少导师会跟我们急。所以THU-TR的计划就这么告罢。

我写信给Knuth,这个我相信是真正的大师。我说我想退学,想请他推荐一些真正的研究者给我做老师。他回信说“你先找精通中国文化的长者 谈谈”。我意识到他可能觉得这是一个文化的问题。我于是想知道中国的科技为什么搞不好,就开始看一些有关文化的东西。后来居然跑到中国社会科学院去听新竹 清华大学人文学院的院长讲座,后来又在清华参加了人文学院的研讨会。会上一个老师说的好,当一个制度没法衡量学术水平本身,它就会用一个似乎等价的标准, 比如paper数或者高考分数。但是一旦这个标准被确立,人们就会向着这个标准努力,而不是向学术水平本身。他们总会发现制度的很多问题,找出破绽,去达 到这个标准,而不是提高自己的学术水平。最后,这个标准已经完全不能反映水平本身。我就在想,这个问题大了,这不仅是环境,制度,而且还是长久以来的文化 造成的。从新竹清华大学院长的讲座里,我发现英国人是怎样用科学技术打开了中国的大门,而乾隆皇帝是如何对科学不感兴趣。中国似乎从古到今就不重视科学技 术的,中国有自己的优势,自己的文化。对啊,科学技术是个双刃剑,如果照美国那样发展下去也不知道会怎么样。我们中国的文化是瑰宝,但是它已经被外国的坚 船大炮打得遍体鳞伤。这不是我们的错,但是我们要努力恢复自己的文化,不能总是怨天尤人。我就开始看道德经之类的东西,还去西麓学社参加古代文化讨论活 动,后来又开始打太极拳。

在对清华的研究完全失望了之后。我就准备考GRE,TOEFL出国了。我去上了一个新东方的班,没学到什么英语方面的东西,倒是接触了很多 新的思想。罗永浩的言论特别有趣。虽然我不是完全赞同他的意见,他说的很多话改变了我的思维定势。写GRE作文特别培养思维能力。我为了写GRE作文,常 常为了一个不明白的问题到图书馆翻阅英文的哲学书籍,有关教育的书籍…… 对于很多问题我得到了完全不同的观点。大学的目的是什么?人的价值观是由理性决定的吗?等等等等。我读到了亚里士多德,柏拉图,康德等人的言论。甚至有个 哲学家说 "All Animals Are Equal". 我看了他的文章觉得有很多可以批驳的观点。我看到迪卡尔的文章,说“要掌握科学就要掌握它的全部”,这句话真合我心意,我就是想做一个懂很多东西的人啊。我想结合艺术与科学。虽然我这个观点得到一些人的批判,但是我仍然相信迪卡尔。

从这些互相矛盾的观点中,我有了自己的判断力。我开始能够揭开从小蒙在我眼睛上的有色眼镜看问题。我开始检查我自己的思维,我以前的观点。看看它们是否是未经判断就盲目放进去的。我检查到很多很多的错误。我的待人接物,我对他人的理解上,都有不足之处。我还检查到妈妈传递给我的一些有色眼 镜,小学课本给我们的有色眼镜。我开始学会用自己新的方式对待他人,看待事物。我不再盲目相信权威,哪怕他是诺贝尔奖得主,图灵奖得主。我有了自己的自由 思维。

在那段时间,我感觉我的心智大门被开启了。我开始尝试从来没有做过的事情,以及从来不认为我能做好的事情。我一次又一次的相信我能。我能学 会画画,我能打好太极拳,我能理解古典音乐…… 世界还有那么多美好的事情等着我去学习去开发啊!可是,我们却像囚犯一样被判了5年在清华。博士学位就是我们的枷锁。

在学习上,我永远是个吃不饱的人。选不了课,我就去旁听。旁听后觉得老师讲的不好,我就自学。在我有空的时候,我就会去图书馆借书看。在我 本科的时候,我就已经发现自己的一个特点,我会很快发现新的东西,并且学会使用它。虽然这些东西并不是创新,但是它们丰富了我的技能,让我有更大的能力去 进行创新。我经常顺藤摸瓜似的从一个问题搜索出一大串我想知道的东西。然后借一大堆书回来,每本看一点点,只为找到我需要的答案。

计算几何课的一次作业,我为了写一个算法的演示程序,花了3天时间学了一点Java语言,正好能够完成那个程序。我开始接触到TeX的底层 细节,看完了The TeXbook,并且找出一道练习题答案的错误。开始移植gbkfonts程序,作为我的CWEB语言的练习。看完了几乎所有 Xlib 的手册,了解了 XWindow 的工作原理。我接触到 Scheme,并且做完了 SICP 的大部分习题,还自己想出好多问题用Scheme实现算法。后来花了好几个晚上,把MIT课程6.001的录像下载回来。我才发现教授上课可以如此搞笑有 趣,上课时戴上巫师的帽子,做一些滑稽的表演。我终于明白,有的计算机科学家居然可以去好莱坞演电影 :) 这个课程让我领会到 LISP 的强大,改变了多年以来对这种古老语言的误解。它让我感觉到在看似纷繁复杂,不断更新的计算机语言的世界,还有那么一种永恒的美!我开始发现TeX语言过 于复杂,想设计一种利用Scheme语言来排版的系统。接着我又学会了 Common LISP,并且开始用它来设计研究计算几何的一个函数库。另外还找了一些希奇古怪的程序来玩,写了一些心得体会放在网上给别人看。无可否认,这些都是工程 技术的东西,不是科研。但是看到很多“计算机科学家” 写的程序一团糟,我才发现程序设计是一门艺术,而不是科学。我的心里对“程序员”这个词有了新的定义,在这种定义下,Don Knuth, Don Woods都是优秀的程序员。只要是有益的创造,就没有必要去在乎是不是科学。

虽然每一本都没有看完,但是我逐渐相信自己的数学能力,发现数学原来如此有趣,并不是做习题那么枯燥,也不像一辈子就拼命证明一个定理那么清高。才发现国 内很多数学书用难看的符号把学生吓倒了,其实想通了就是很直观的原理。

我看了电影 A Beautiful Mind 之后深受感动,就去买了一本原著的书,它是数学天才John Nash的传记。它描写了20世纪初的Princeton,一群科学家生活的情景。我眼前浮现出在一个房间里,一群人在喝茶聊天下棋讨论问题激烈争论。我 发现我从小内心向往的,就是那样的地方。我看到Nash是如何用“头脑暴力”解决一个他没有任何基础知识的问题。原来只要有了问题和探索的精神,就会有动 力去获得解决它所需要的知识,最后将问题解决。发现有用的,重要的问题,而不只是寻找困难的问题,这样才会对人类有价值,才会有动力。我还看到一个数学天 才是怎样的喜欢恶作剧,又怎样因为过度的傲慢狂妄,想向世人证明自己的天才而发疯。我发现世界上有远比科学更宝贵的东西。我不是一个天才,但是我要做一个 好人。

但是我的研究却没有多少进展,至少我自己这么认为。我发现问题的根源,就是没有真正的讨论,没有真正的问题。

我觉得再没有从实际出发的目标,我的研究就会完全变成纸张了,就像我高中感觉到的一样。所以后来我就自己设立了一个研究方向,我把自己称为 “研究博士生”,我要去了解博士生都是怎么样生活的。我就想知道有多少学生有跟我类似的困境。我跟很多朋友谈过,去了解他们的苦衷,研究生也有,本科的也 有。我觉得我还应该了解更多的人,就试图到研究生通讯社做记者,心想挂一个记者证,就好跟人套磁问一些问题了。结果他们说我口才不好,所以做了一个秘书。后来记者们告诉我,他们是由上级分配任务的,根本不可能让你去报道学生真正的想法。我为了多多接触外国文化,比较中西文化的不同,又加入了学生对外交流协 会(ASIC),我在ASIC有了很多好朋友。博士生论坛的时候也有很多同学跟我反映研究上的问题。讨论成立特别兴趣小组(SIGs)的时候,我就提议成 立一个Common Room,一个同学说她去 Stanford 的时候那里就有很好的 Common Room,很多人在一起讨论,这是国外大学斯通见惯的东西。我告诉Oxford的朋友我的想法,他很惊奇地说:“你们居然没有 Common Room?” 后来吃饭时我又找一些老师谈话,发现他们也对这个事情无可奈何。老师自己的办公室都要自己出钱,谁还能支持你们有这么大一个房间?而且即使有了房间,谁来 讨论?还不就是拿着别人的paper,试图找点可以改进的地方,或者就讨论哪个会议好发paper。Common Room只是一个形式,只要有人感兴趣,随便找个茶馆也能讨论。问题就在于没有人有精力有心情进行真正的讨论,制度决定一切。我们无能为力。我觉得自己一 个学生力量太小,曾经试图找大师帮忙。我找到Andy Yao,述说我的苦衷。结果他对我说:“别试图去改造环境!你没有这个能力。改造好你自己就不错了。" 改造好我自己,可是怎么改?所以我决定先换一个环境,到一个真正搞研究的地方去体会,去学习。

其实我不后悔进入川大,不后悔来到清华,珍惜一切的历史,因为没有它们,我也许就不是现在的我,有着自己想法的我。我也许就在安逸的生活中 变得堕落。它们不完美甚至给我痛苦,但是我还是珍惜,珍惜这里的朋友,这里的一草一木。也许这就是爱。我会变得更好,我会挂念我的满目苍夷的祖国母亲。我 会回来告诉你我学到的一切,我会给你和其他儿女真正的幸福,一定的!


学业不理想,职场也情况类似。

王垠在Google做过两次、每次4个月的实习生。其中一次他参与了一个重要项目——跨语言的「服务式」编程工具,是一个Google内部检索所有项目代码的工具,王垠负责Python检索部分。据称,今天的谷歌还运行着这个项目。



然而,孤傲是刻在骨子里的。

狠起来连博士都不读的王垠,与谷歌内部的管理人员闹得不可开交,最终离职。

离开谷歌之后他又去了微软,结果离职时又闹得满城风雨,气得微软下了「封杀令」,禁止所有子公司同王垠合作。

2019年,王垠也曾应聘过英特尔,也有消息称,他回国后曾去面试过阿里,但最终也都是音讯寥寥。

日前,“计算机天才”王垠发表一篇博文《对爱因斯坦和相对论的怀疑》,文章开篇写道,“最近研究了一些历史,忽然对爱因斯坦和相对论产生了怀疑,结果昨天就有人告诉我,有中国学者声称“推翻”了相对论。我的直觉是,这值得大家重视。不管这个中国学者是对还是错,总的说来,对爱因斯坦和相对论的怀疑值得重视,而不应该盲目否定和嘲笑。”

文中所提的“中国学者”大概就是前阵子闹得沸沸扬扬的李子丰了,这是暗指自己比李子丰还要早怀疑相对论吗?整篇文章读下来,大概可以总结为,爱因斯坦论文是天书,不知所云;论文没有任何应用,还有抄袭嫌疑;相对论的实际作用难以体现,甚至还称爱因斯坦为“民科”。



以下群组凡有发广告者立即请出群组,永远不得进入

考法学博士,进入法学考博交流群;考医学、工学、理学等等的进入非法学考博交流群!

▼以下为2022年非法学考博交流群▼

▼以下为2022年法学考博交流群▼

凡有发广告者立即请出群组,永远不得进入。

我要回帖

更多关于 c++怎么看错误 的文章

 

随机推荐