学习,只有勤奋是不够的……

学习,只有勤奋是不够的……


在完成了一个学期的Java课程讲授任务之后,我设计了一套Java试题,并于2011年11月22日让它与学生们“见面”。与往届Java考试相比,这次我在考试改良之路上走得更远一些,不仅是开卷,还允许学生带计算机入场,甚至允许学生上网。不出我所之料,考试完毕之后,就有学生给我发来邮件,叙述其困惑,我觉得学生邮件中所谈到的一些问题是比较普遍存在的,所以就将我给两名学生邮件的回复汇总了一下,希望能对在校的学生有所帮助。

学生邮件中除了有些错别子字或不通顺的地方我略作改动之外,基本上保持原貌。

学生一:

考完Java后,想了很久!还是有没有想明白,为什么会这样?我真的很认真的去学了(至少比大多数人认真),因为我额外的看了很多书,做线性方程组软件过程中,我认认真真编程,一步一步实现每个功能模块,为了做好软件,我复习了线性代数、数值分析,收获很多,感触也很多,在这个过程中,我是快乐的,因为每天我都有进步,我把以往学过的知识做成了实体(虽然做得不是很好,但在这段时间里我尽力了)。我上网,查阅资料,感觉自己不知道的太多了,也感觉了网上学习的快乐和那份带给我的新奇(一直在接触新东西)。我觉得我喜欢上了这么语言,也决定学好这门语言,今后走开发路线,靠这个吃饭。课件上的大多数例子我都认真运行,修改后再运行,有时还反汇编一下。
可为什么结果是这样?没复习的同学做的比我好,答的比我多。我做生产者和消费者花了很多时间,最后只做成了形如你上课说的主线程运行50次,子线程运行100次,如此循环的效果。而别人上网或者摘抄一下就搞定了,留下时间做后面的题。
其实这里我一直很困惑,我也感觉我被现实打败了。为什么我一直和别人想的不一样,你告诉我们网上没有答案,所以我没上网,自己做(结果发现很多在网上都有,那些没复习,没努力的经过互相讨论,摘抄完成得比我好)。为什么别人就能够想到上网,讨论,而我只会乖乖的听话,毫不怀疑?是我做人的方式出了问题吗?
虽然说靠投机取巧取得的成果只是暂时的,我也想坚持一些东西。可许多时候我收获的是“失败”,我承认我的临时发挥和理解力不如别人,可我从未放弃过(虽然有时我想过放弃)。我相信学习意味着改变,所以我尽量做的好些。上大学两年了,我深深体会到分数真的对学生很重要,没有分数,一切都没有了(奖学金、入党、评优),还增加一些无形的心理压力。我不知道这样做对不对,我大一的时候挂过一科,经历了很多心酸的事,从那以后我就回到了三点一线的生活,学习也在一直进步。这次是我没把握好,如果我差及格线不多的话,恳请老师给我一次机会,我保证下学期和大四上你的课时不会再出现这样的情况,我会努力去改变!

回复:

等你毕业之后,随着工作年限的增加,你会发现学校里的考试分数真的不重要,另外一些东西的重要性则日益突显。时间就象风,风会吹去浮沙,留下的就是真正重要的东西
我说网上没有“现成”的答案,是因为许多题是我直接设计的,并非来自于网上,而且题量比较大,如果上网花太多时间,反而影响成绩。其实只要有我讲课的幻灯片,一个Eclipse,再配合上比较扎实的编程基本功,不上网也能完成这次考试。
做事情仅仅靠勤奋是不够的,还要多动脑筋,要不断地寻找更高效的方法,才能在有限的时间内跑得更远,而人生就是比在几十年中谁跑得更远,登得更高。所以勤奋是基础,但多思可能会发现做事更有效率的方法,两者结合,才能让你更为优秀。就这次考试而言,上网搜索就是一个很高效的方法,这些同学很聪明灵活,在这点上你要向他们学习,取长补短,相信最终你不会比他们差的。

学生二:

想了很久还是决定写这封“求过”邮件,我想老师一定很不喜欢这种行为,但我实在是很恐惧这门课会考砸了。这次考试我花很多时间在前面的题上,有些题虽然我知道大概,但总想着上网找到更完整的说法,等我开始做编程题时发现只有半个多小时,我就彻底慌了,六神无主地看题、答题,最后的卷面让自己都惊讶了,考完后就差没哭了,我害怕以后我再努力学习也都失去了保研的机会,害怕给大学的学习抹上黑点..我也知道我应该平时多花时间学习,而不是考完才担心,可其实我花了不少时间在学习java,老师讲的很多理论知识我也认真去理解,只是考完才发现自己平常练得太少了,我都是直接编译运行老师给的代码,去理解其中的用法和原理,自己动手编的程序很少,这次的考试大多是编程的实践题,我就有些傻眼了,以后我应该要努力去提高自己的编程能力,这次考试能不能先请老师高抬贵手让我通过了T.T。。

惭愧的学生

回复:

对你“网开一面”,就是对其他也付出努力的同学的不公平。所以,我会严格按照试卷判分,不特殊对待任何一个同学。
我觉得你努力是努力了,但学习方法不得当,其实在第一节课我就讲了学习编程技术的方法,而我设计的考试试题,也是力图将大家向这个方向引导。

学生再发邮件:
金老师,谢谢您对我努力的肯定,这对我来说很重要。老师能不能对大家都网开一面,改松一些呢,这样说会不会冒犯老师了,额。。觉得大家这学期选的课都挺多,有些超负荷,望老师谅解。

回复:
在公平的前提之下,我打分是很松的。
(附:现在大学里分数对学生还是很重要的,所以我基本上是这个观点:给学生判分尽量往高里判,这样不会影响学生出国或保研,更有利于在中国这个大环境下实现教育的最终目标。 其他老师可能会同意或不同意我的这种做法,没关系,我觉得只要公平就好)


以下是另一个学生的邮件,不是上面谈到的本科生,而是旁听我上学期OOAD课程的一名研究生的邮件:

尊敬的金老师:

您好

感谢您在帮忙之中能够查阅我的这封邮件,我是宇航学院研二的学生,在研一的第二学期我旁听过您的《面向对象技术与方法》课程,您的这门课很精彩,您饱含激情的授课方式也让我甘之如饴,让我学到了专业外的很多知识。

我之前有过.net的一点点基础,也非常爱好这门技术,所以我想在这个方面进一步的深入学习,由于我是非计算机专业的学生,没有足够的时间与精力来学习.Net。在最近的两个月中,我使用Wpf框架构建了一个《论文管理系统》软件,每当我在编写这个软件的时候,我发现我的思路根本停不下来,不由自主的想随着自己的想法将软件一步一步的编写下去,但是我知道自己专业的重要性,所以主要的时间都放在了自己的专业学习上,但是在学习自己专业知识的过程中,会突然蹦出一个想法来改善自己的软件,这样就导致了学习效率比较低下,有点像玩电脑游戏上瘾了的感觉,呵呵。

我知道自己专业的重要性,也希望在.Net这个框架中有所建树,至少在这个框架中达到一定的专业水平。但是精力又限制了我的想法,所以在万分迷茫之际,不得不叨扰您,向您请教几个问题,以期在您这样的高度能够解决我心中的问题。

1,您觉得非计算机专业学习.Net的前途光明吗?

2,您觉得.Net的发展前景是怎么样的呢?与JAVA竞争能成为主流吗?

3,您觉得非计算机专业的人学习数据库还是学习网络更要有竞争力呢?

4,您觉得我应该怎么对待我的业余爱好与专业之间的关系呢?

5,您觉得我应该或者是能够利用业余爱好创造点经济效益吗?这个问题比较功利,您可以直接无视之

PS: 我的专业是导航方向,也就是关于GPS导航、惯性导航。附件中有我最近编写的《论文管理系统》软件,是基于.NET3.5框架编写的,需要至少offce2007以上版本的支持。



我针对他提出的5个问题的回复:
(1)只要真正学好了.NET,前途是光明的,跟你是不是计算机专业毕业的没有太多关系
(2).NET与Java基本上处于这种情形:各有生存空间,谁也吃不掉谁。 微软的世界里, .NET是最主要的应用程序开发与运行平台,即使是在微软的“云”Azure中,你也会有一台跑着.NET的Windows虚拟机可用,另外,有了.NET基础,开发Windows Phone和XBox应用也很容易,你会发现它们使用相同的编程语言和开发工具,拥有高度一致的基类库和编程风范……,除非你跳出微软平台,否则.NET还是必须要掌握好的。
(3)数据库和网络学精了都能很牛,但如果两者都只是掌握皮毛那就杯具了
(4)如果你真心喜爱软件开发,或者是很不喜欢现有专业,请在研究生毕业时义无反顾地进入IT行业,现在就业形势还不错,相信你能如愿的。如果你不讨厌你的现有专业,对软件开发的兴趣又不是非常强烈,那么我建议你还是以你专业为主线,以软件开发技术学习为副线,副线为主线服务。具体地说,你要看看你的专业与哪个计算机开发领域技术最相关(比如你可以看看你们导航领域最牛的软件系统是用什么开发出来的),就抽时间去学习它。我相信你是一定能找到与你专业最相关的这个技术的,因为现在我还真没有发现能不用计算机技术的行业
(5)如果有可能,一定要创造点经济效益,这不仅能改善生活,更能极大地增强你的自信心,并敦促你进一步学习,也许一不小心,你就成了某领域中介于牛A与牛C之间的人物,作用太大了 :)

============================================================
希望我的这些建议能对所有想努力学习的学生有所帮助。如有不妥之处,敬请其他老师、学生或业界同行指正。


                                                     金旭亮
                                       2011年11月23日




你可能感兴趣的:(java,编程,.net,windows,框架,语言,phone)