很有一段时间没能找到自己的时间了。今天早上需要送车子去检修,我这才能在旁边的咖啡店里面坐着,拥有一点自己的时间和空间。

在正式开始读master之前,我强烈的感到自己需要进一步的学习,我觉得目的很明确,我需要了解设计,需要了解更多的数据结构,算法,编译器,操作系统这些东西。现在我已经在读设计的课了,却又感到很迷茫,觉得这些东西,至少从目前学到的东西来看,离我想知道的东西太远。我仍然一头雾水,没有太多的头绪。我总觉得我现在的老师有些混日子,没有真的水平。对于我问的一些问题,他也没有给出高屋建瓴的回答。这个学期开学到今天已经接近一个月半了,我感觉我还是没有学到太多的东西。我总是说我能够像古龙小说里面的郭大路一样,从最烂的师傅那里也能从他们的缺点里面学到东西,但是我觉得我还是有些错误。或者说,我把事情想得过于简单了?我有些想重新考虑我在sjsu读master的决定了。

当然,我也不是一点点的收获也没有。至少,我在被要求讲一节javascript的课的时候好好的读了书,了解了很多原来忽略的东西,总体上感觉受益颇深。而后是昨天晚上,老师要我们讨论CS-MVC-3Tier的关系和区别,我感觉上还是有些收获的—虽然我同时觉得如果能够结合一些更加实际的例子就更好了。

看过一个讨论如何学习软件设计的帖子,大意是说,设计是学不来的,只有自己动手做。等一个人做过一百个项目之后,大概就会知道如何设计了。我不反对这句话,但是这句话也不是绝对正确的。如果连设计的基础知识都没有,所谓自己的设计其实也仅仅是在黑暗中摸索的瞎胡闹。个人的能力不会有任何的增长。学习基础的设计理论,绝对是一个必要的开始。或者说,我选择读master的大方向并没有错,而读这门课也没有错。我也许还是要从自己身上找些原因。

又或者需要讨论一个更加本质的问题:什么是学习?读报不是学习,看书也不是学习,动手做些东西也不是学习。我回头想到别人问我的一个问题:如何学python。我当时的回答是,先看书,然后将每一个书上的例子敲到电脑里面,运行一番,而后做一些改动,而后开始做一些自己认为有意义的小程序,最后再做一个大一点的项目。如此循环往复,就有了基本的认识,可以算是初步学会了 —- 如果一定要从个经验讨论如何学习,什么是学习的话,我想学习至少包含了一个从了解,到理解,最后再到融汇贯通的过程。而每一个步骤之间,则是不断的联系实践的过程。如此,才是一个学习的过程。

思绪到此,也许我有了一个初步的答案?老师的好坏仍然是其次的,毕竟学习的主体仍然是自己。老师的作用,仍然是指明一个大的方向。在这个大的前提下,细节的部分还是需要我自己去思考,总结,最后逐步逐步的把握。我前面compliant的部分,也许更多的还是在细节的部分。只要大方向上没有错,我想我还是应该坚持下去。

从这个角度出发,我现在需要学的东西很多,首先是android这个系统,我需要更深入的了解,其次是pen-testing,我必须要成为expert,毕竟一脚踏入这个行业不容易。这个是立身之本。

看书–》动手实践,了解和掌握书本上的知识点 –》小改造,深入理解细节,–》再看书,融汇贯通 –》大改造,了解系统结构和建立全局观念 –》建立自己的系统,这个大概是今天的思考的结果了。

Advertisements