星期四, 7月 27, 2023

老人講古之一

 颱風假

今天因為今年第五號颱風「杜蘇芮」放了颱風假


因為昨天回家時沒有想到真的會放颱風假,也沒有帶太多的東西回家。
所以來

講古之一

我從大學以來還滿喜歡程式,從大三修了Fortran 。接著系上買了一堆與Apple II相容的電腦Commodoer PET 在吳瑞屯老師帶領下一堆宅男,開始玩起 BASIC 。後來那一些宅男朋友們都回家的暑假,躱在出國進修的導師的辦公室,還偷偷學組合語言 。
上了研究所,因為各種需求,改學個人電腦上的C語言。自己學這些,除了Fortran以外都是自學,買書、問比較會的人、偷看別人的程式碼...。基本上都是土法錬鋼的方式走到博班,還用C寫了模擬程式。
C除了模擬以外,也可以搭配組合語言,控制PC(當時所謂的IBM相容機)硬體指令。因為當初的PC系統時鐘無法到達一般實驗心理學需要的千分之一秒的準確度。但內部有些計時器是可以用的

這一論文就是教我們使用內部的計時器,利用PC做為心理實驗的計時、控制裝置的方法。來高醫以後,也開課教同學C語言,最後都要請同學寫實驗程式。也一定得用到這一篇論文的方式,直接利用內部計時器。
順道題外一下,就是,開課,不能像自己自學,高興從什麼地方開始都可以。一定得按步就班,從最基本的電腦結構講起。但是當時,1990年代,電腦是少數人接觸過的東西。所以,一開始需要講一堆,我個人覺得很入門的東西,但是,就有不少同學一開始就出問題。那時還沒有圖形界面,文字界面通常也是一行一行處理的,過水,即已經到下一行,就不能回頭的(當然有些編輯器是可以)。她們常指令都下下去了,打錯字說要回頭再修(重打一次是可以),然後說電腦為什麼不給她修改字!

會電腦

其他人,看我們這些宅男,在此是指玩一些電腦的,覺得我們「會電腦」。但這個「會」,有時造成很多誤會。我自己來說,這個會電腦一詞,改變了我原來的很多計畫。也開發了另外的不同世界與後來的...

以後的部分,有空、我有心情再跟大家分享 :p

7 則留言:

  1. 讓我想到上瑞屯老師的心實時,實驗數據都是用他以前自己的軟體來跑,該不會有些就是櫻井老師跟同屆一起寫的吧XD

    回覆刪除
  2. 謝謝分享故事

    回覆刪除
  3. 謝謝老師分享

    回覆刪除
  4. 感謝老師分享~

    回覆刪除
  5. 我跟長男說 大學C 語言拿 100分,他還不相信...我根本就是天花板的存在😁

    回覆刪除
  6. 現在世界的A.I崛起,改變了很多人原來的計畫,也開發了另外的不同世界與後來..........。 老師的"會電腦" 是那個時代,前衛的A.I崛起概念。

    回覆刪除
  7. PSY 91 崇宇6:39 下午

    看到老師寫的文章,因為跟"寫程式"有關,就一直很想分享自己的經驗。
    因為大約小五的時候去外面上了電腦補習班之類的,學了DOS的操作跟簡單的指令,
    之後就一直對電腦很有興趣,一路走來,到現在快40歲,雖然不是資工相關科系,卻一直都跟程式脫不了關係:
    大三系會時,用Moveable Type的類似HTML的標籤語法,架了一個方便維護的系站,雖然最後並沒有使用,但寫完其實很有成就感。

    大四修中平老師的課時,用Visual Basic 寫了一個簡單的Perceptron程式,發表了一篇心理學會的壁報論文。

    研究所時期,因為論文題目是類神經網路在分類的應用,用MatLab寫了3個不同,已經發表的類神經網路,模擬指導教授過往的實驗數據,完成了論文。

    同樣是研究所時期,幫教授打工,用MatLab 的PsychtoolBox,寫了兩個實驗用的程式,一個是跟工作記憶有關,在N*N的方格內,要受試者學習與記憶一系列的圓點圖,並要求受試者用滑鼠在螢幕上重新點出刺激圖片,並且計算每一次回答的分數。我還記得計算分數的部分,為了正確計算所有可能,寫了多層迴圈以確保所有排列組合都被納入計算,最後這個實驗也有發表Paper(當然作者不是我)。

    另一個是知覺相關實驗,必須要呈現一系列的刺激圖片,然後讓受試者操縱滑鼠,完成指令,過程中必須記錄滑鼠的軌跡。

    研究所畢業後,到第一份工作前,接了一個心理實驗的案子,要寫用在fMRI實驗的程式,受試者是躺在fMRI裡面,呈現一連串刺激,受試者必須依指令需按下按鈕,程式必須在特定時期,呼叫fMRI運作取圖。

    工作後,雖然工作內容並不是 IT或MIS之類,與程式有直接相關,但會"一點"程式,還是可以給工作不少的幫助。

    在全球維修管理部門時,寫過一個Excel搭配VBA的程式,目的是用來分配公司全球各地的維修中心零件庫存,零件種類有數百種不等,到一樣是數百隻不同的產品上,目的是確保維修資源不會短缺或過多浪費。過往都是需要一個個不同工程師在Excel上面手動核對數天,現在只要把新的BOM表放到Excel sheet,就可以在數分鐘內完成。

    或是現在的工作,主要是X-Ray檢測平板的開發PM,為了節省技術人員的時間成本,就去研究用Octave (Free的Matlab),批次性的導入X-Ray影像做快速處理分析,減少過往必須讓工程師一張一張開圖核對的時間。

    接觸這麼多的語言,最享受的其實是寫程式的過程、像是:
    在DeBug的過程中,看到自己預期的結果跑出來,成功抓到錯誤。
    發現某個寫法可以更精簡,測試成功後帶來的成就感。
    接觸新的軟體,學習新語法,並使用的新鮮感。

    不知不覺竟然寫了這麼多自己的經歷,希望老師不要介意,主要是看到老師的文章後,不由自主地想分享,會"一點"程式的好處,以及寫程式的樂趣

    回覆刪除

感謝給我回饋,現在不作審查,但請填「字詞驗證」。對於各位的意見我會每天來拜讀,但回覆難免有時慢了一些,還請大家原諒。

我的日曆