对于五个问题的思考与感想
问题一:关于当初
在专业的选择上,我是被乔布斯所影响,正是他传奇般的经历让我深深地被计算机这个学科所吸引,在《乔布斯传》这本书里,我意识到,原来利用计算机,我们真的可以改变世界,让这个世界变得更好。回想自己过去这两年半,自己的确也学习了不少语言,看了不少专业相关地书籍。由于自己大一加入了学校社团联合会思存工作室,负责学校社团联合会官网的开发与维护,自己开始对于web方面的学习,从HTML,CSS,JavaScript等前端开发语言到PHP,python等后台开发语言,从《深入理解JavaScript》到《Python权威指南》,从开始的技术小白到后来和团队成员一起参与学校社团联合会官网的开发,主要负责前端部分,用代码完成设计人员的产品原型,与后台同学进行交互。另一方面,在学院的课程中,我学习了C,C++,Java等语言,并参与了课程设计提高编程能力。要说难度最大的项目,就是学校社团联合会官网了,其中前后端的合并最为困难。
虽然学了这么多知识,但自己还是感觉没有将所学融汇贯通,而且大部分自己看的专业书内容都忘掉了,还有一部分并不知道如何应用。究其原因,我感觉我之前的学习过程只是单纯知识的灌输,没有经过自己的独立思考将其转化为自己的能力。博客B[1]的作者认为“我们必须在年轻的时候有意地培养自己独立思考的能力,经常想一想,我要的是什么、为什么要做这件事、做这件事有什么好方法、这样做有什么好处和坏处、如何改进等,也要与人交流、沟通,讲出自己的想法,请别人指正。我们需要培养的是自己的思考方式,而不是简单地获取知识。”我非常同意这位博主的观点,作为一个大学生,如果我们没有养成独立思考的习惯,陷入机械记忆的沼泽,那我们将会沦为学习机器。而作为一名程序员,若没有培养自己独立思考的能力,将会沦为代码的搬运工。
笛卡尔曾言:“人是一棵会思考的芦苇。”在我看来正是这种独立思考的能力使人成为万物之灵。作者在自己的经历中坦言,“也许是我觉得时间太宝贵,也许是真的连思考的时间都没有了,我每看到一个题目,总是会先看答案,让答案来指引我的思路,而不是用自己的脑子想问题。”而回头看看我自己,又何尝不是如此,每次看到一个题目,不是去抱着解决难题的决心,而是往往浅尝辄止,利用答案来帮助理解题目。而我在自己学习的道路上,的确深受其害。
在大一学习微积分的过程中,自己利用这用机械死板的学习方式,虽然在微积分的学习中也投入了很多时间,但是效果却远远达不到自己的理想情况,直接翻看答案,当时凭借自己的记忆可以记住该题目的解题方法,但由于解题方法并不是自己思考得到,往往题目稍微变化,自己便无从入手。在编程上也是如此,如果自己没有想通各个算法的要点,去网上翻看别人的代码,并不能真正提高自己的编程能力。我往往抱怨自己的效率不够高,为何?只因自己没有养成良好的学习思考习惯。
在我看来,为了培养自己独立思考的能力,我必须要在以下方面做出改变和提升。
- 对于课本上给出的知识,多去想为什么,而不是死记硬背。
- 对于学到的各种算法,尽量去独立编程实现。
- 对于一些常见题目,多去思考能不能独辟蹊径,寻求新的解决方案。
- 在小组合作过程中,多去提出自己的想法与见解。
## 问题2:关于未来
在阅读了学长们的经历后,我对自己未来的规划是选择读研,首先争取能够保送研究生,所以我必须要努力提高自己的加权成绩,要养成良好的学习习惯,对于现在的每个课程都要做到尽心尽力,正所谓精诚所至,金石为开。自己既然已经确定了这个目标,那么只有在接下来的日子里,充分利用每一刻的时间。在我看来,现在的自己对于计算机学科的基础知识并没有说很熟练地掌握了,自己希望能在这专业上更深入地学习。关于自己的选择,我感觉自己的优势在于自己比较擅长逻辑思维,很有助于接下来的学习。但是自己的动手编程能力并不是很理想,还需要得到进一步的提高。博客D[2]的作者说到“其实我前面一直在提自学的重要性,我本科四年大部分时候也都是靠自学过来的。如果你打算靠老师跟你讲“异步编程”、“如何解决TCP传输数据时的沾包问题”等等,那么你可能等到研究生毕业了,老师还没打算跟你讲,因为这些课本上根本就没有(大部分老师不会讲除了课本以外的知识)”对此我的问题是,我们计算机学科的学生是不是应该把重点放在自学上而不是课程中?
关于自学这个问题,自己在这两年半的学习过程中也意识到了自学的重要性,学科内的领域和知识实在是太多了,老师实在没有那么多时间在有限的课程中教授给我们所有的知识。虽然我们的确是应该自己在课下不断的学习新知识和课堂上没有的知识,但是这并不意味着我们就可以轻视课程中老师所教授的知识,反而,我们应该在深入理解课程知识的基础上再根据自己的兴趣与技术方向进行进一步的学习。课程中的知识正是我们知识的基础,没有基础,自学来的能力也必不会牢固。
## 问题3:关于当下
当理想照进现实,自己对于乔布斯的钦佩转化为动力,自己真正成为软件工程专业的一名学生时,我发现自己对于这个学科的热爱并没有消失,反而更加热烈,而就专业技能与能力而言,我感觉自己更像是卢克天行者这样的人,我感觉自己很有潜力,但是目前自己的潜能并没有被完全地开发出来,但我相信,凭借自己的坚持与恒心,一步一步,自己的梦想终将会有实现的一天。
目前我掌握的知识有数据结构与算法,web编程,数据库构建技术等,但是这还是远远不够的,当看到自己与别人的差距时,我常常会陷入自卑之中,怀疑自己,但是博客C[3]的作者告诉我们,“踏实和勤奋这两个从我叔叔和获鼎身上借来的优秀品质,加上取之不尽的TP312书架和背不完的单词,使我没有再一次被深度迷茫拉入自信和自卑的反复中,相反,随着这些积累越来越多,我变得越来越自信了,虽然这种对积累的自信尚未被现实验证过。”自信从何来,从实力而来,我只有努力地提高自己的能力,才能使自己更加自信。对比一名合格的专业毕业生,我感觉自己在专业知识积累方面做的很不够,难以胜任工作岗位的要求。技能上不能熟练使用各种框架,团队协作经验不足。
## 问题4:关于课程
在两年半的大学生活中,我遇到了很多良师,在我的学习与生活中给我非常多的支持与帮助,其中有几位对我的影响特别大,第一位便是教授我们C语言的万琳老师,当时我刚刚接触编程,感觉很难理解书本上的一些知识,万琳老师深入浅出的对书本上的各种知识点进行讲解,其中穿插着很多数据结构,算法和计算机组成原理的知识,在我心中种下了编程的种子,而且万琳老师给我们布置的课设非常有趣,贪吃蛇,既用到了学到的知识,还让我们提高自己的编程能力。另一位就是沈刚老师,上过他《数据结构》的课我才发现原来编程是一件非常有艺术性的事,代码的简洁性也这么重要。而至于速成的培训班和打基础的大学教育,我认为大学教育更注重培养学生完整的人格与思考与科研能力,可能那些速成班的学生也能够有一定的编程能力,但是他们只知其可以然却不知其原理,正如博客E[4]的博主所说:“我觉得一个正常的程序员,是不应该去参加培训的。更何况,培训真的没有什么用。 多半都是想走捷径,不劳而获。 而若要好好走好职业道路。 在走出大学校门的那一刻,应该学会自我成长,自我完善。”作为程序员,我们必须要有不断学习的意识,而不是走所谓的捷径。
## 问题5:关于师生
在我看来,师生之间比较好的状态应该是良性的,是互动的,正如邹欣老师在博文N[5]中所说:“很显然,教练/学员的关系是最有希望撞击出火星的,老师和学生之间要有足够的工作量,足够的张力,有冲突,有鼓励,有质疑,才会出现火花。”老师要采取循循善诱的教育方式,不断地激发学生地学习积极性与学习热情,而作为学生,要及时积极地参与到与老师之间地互动中去,勇敢地回答老师提出的问题,勇敢地向老师提出自己的疑问与意见。对于学生提出的意见,老师也要及时地给予反馈,不要打击学生的积极性。
那新的问题便出现了,老师该如何提高学生的课堂的参与度呢?在我看来,老师应该拉近与学生间的距离感,师生关系有时候也像朋友关系,亦师亦友,唯其如此,学生才会感觉自己与老师更加亲近,更愿意与老师交流,从而课堂的效率更高。
[1] https://book.douban.com/subject/4006425/discussion/22803961/
[2] https://www.cnblogs.com/xiaozhi_5638/p/4485805.html
[3] https://book.douban.com/subject/4006425/discussion/22802960/
[4] https://www.cnblogs.com/geniusalex/p/4928713.html
[5] http://www.cnblogs.com/xinz/archive/2011/05/16/2048044.html