跳到主要內容

通往專家心智之路

Scientic American雜誌中,有一篇文章『通往專家心智之路』。這篇文章是科學家研究何以西洋棋大師的思路可以如此敏捷與遼闊,進而研究專家的心智活動與一般人不同之處。
這篇文章點出了一個重點,所謂的專家對於特定領域在心中建構的能力遠遠超過一般人。舉例來說,西洋棋大師可以在短短幾秒鐘內,將整個棋盤記下來。而普通人就算花上數小時的時間也不見得能夠記得完整。但是,如果以隨機的方式將棋子擺在棋盤上面,則西洋棋大師就無法發揮前述的神奇記憶能力。我想這其中的關鍵在於專家真正的能力是對於脈絡的掌握度遠高於普通人。所以,他所記憶的是組織與脈絡。而不是死記硬背的方式。
同樣的道理亦適用於程式設計師。要成為程式設計師的專家,自然是要對整個程式的架構與脈絡能夠了然於胸。所以,如果連自己寫的程式架構都不清楚的話,是不能成為一個好的程式設計專家的。
另外,文章中亦提到了一個所謂的『十年法則』。簡單的說,要成為真正的專家,沒有十年是辦不到的。所以說,專家亦是要下苦功才能所有成的。但是,所謂的天才又是怎麼一回事呢?我想這可能跟效率有關係。所謂的天才也許是因為他能夠專心致意且心無旁騖的學習。所以,他的效率遠高於一般人。因此,天才比一般人更容易在某些領域得到成就。

留言

這個網誌中的熱門文章

Portable Python

我常常需要把Python寫的script帶到其他電腦使用,因此,一個免安裝,可攜帶的Python就顯得十分重要。最近看過了幾個可攜式Python的方案,下面這個PortablePython是我覺得最合我意的方案。因為它提供了大部分會用到的Python module及工具,甚至連wxPython及PyGame也有。同時也有好用的Python編輯器PyScripter。所有開發Python所需的開發工具都一應俱全了!把它放到隨身碟中,就不用到處幫人安裝Python了。 PortablePython : http://www.portablepython.com/

一個Python程式可幫檔名加上日期與時間

很多時候,我們希望能夠將檔案或是目錄名稱加上一個時間及日期,以便release。所以,我就寫了一個小小的程式來達到這個目的。我把這個程式貼上來,讓有興趣的人可以拿去使用。 -- #!/usr/bin/env python # -*- coding: ascii -*- """ Usage: cfgfn.py [filename or directory list] """ import sys import os import time import re import glob ro = re.compile(r'(?P<FN> .*)-[0-9]{8}-[0-9]{4}(?P<EXT> .*)') for fnl in sys.argv[1:]: for fn in glob.glob(fnl): mo = ro.match(fn) if mo: pre = mo.group('FN') ext = mo.group('EXT') else: pre, ext = os.path.splitext(fn) newFn = pre + time.strftime('-%Y%m%d-%H%M') + ext os.rename(fn, newFn) print 'Rename %s -> %s' % (fn, newFn)