顯示具有 資訊課程 標籤的文章。 顯示所有文章
顯示具有 資訊課程 標籤的文章。 顯示所有文章

2025/05/10

哪些學生適合唸資訊系?

一部份的高三學生現在要到大學進行面試,高中部的輔導老師請我幫一些有意申請資訊、電機科系的同學進行模擬面試。

看了他們的書面資料後,覺得學生對於他自己要申請的科系完全不瞭解,貼了幾個範例程式碼就要說自己對資訊科系有興趣……所以我有一些話想對他們說。


很多同學提到在開學前這段時間想加強程式語言的練習,特別是 Python。熟悉語法當然是好事,但其實程式語言的學習在整個資訊或資工領域中只佔了極小的一部分。

你去看看各大學資工系的課程就會發現,真正學習「程式語言」的課,大多只出現在大一上學期,而且通常只有一門。後續雖然會有像組合語言這類的課程,但數量不多,有些甚至是選修。

學習 Python 的過程中,你學到了什麼?可能就是變數、陣列、條件判斷(if)、迴圈(for)、檔案讀寫等內容而已。這些內容換成 C 或 C++ 語言學習也差不多,甚至在國小、國一學習 Scratch 積木語言時,學的也是這些基本概念。所以,關鍵其實不在「語法」,而在於「背後的邏輯思維」

資訊系在唸什麼

如果資訊系重點不是在學程式語法,那資訊系在研究什麼呢?

不論是資訊工程系還是資訊管理系都面臨了一個問題:「如果沒有念資訊的人也能寫程式,那我們資訊人的價值在哪裡?」

答案是:資訊系訓練出來的人,能寫出效能更高、結構更嚴謹的程式——往往是他人的 10 倍、甚至 100 倍。

換句話說,資訊系的畢業生擅長用更有系統、更高效率的方式來解決問題。

2019/09/22

演算法是什麼?

在資訊領域常常會聽到『演算法 Algorithm』這個詞,到底演算法是什麼意思呢?我們用數學家高斯在小學四年級的時候提出來的一個解題方法來做例子,說明何謂演算法。

2019/09/14

副檔名

副檔名可以幫忙判斷一個檔案是什麼類型,是一個很有用的訊息。但是現在 Windows 預設不顯示常見格式的副檔名,我們可以手動讓它呈現。

瞭解副檔名的重要性了嗎?來回答以下的問題吧!

2019/09/08

Google 搜尋精進

這個星期我們來學學如何進行資料搜尋,我們要講的是 Google 的技巧。

有些同學可能會說:『我們國小早就教過 Google 的使用了啊!!』不過,Google 有很多好用的功能,可能你都還不太清楚,我們就先講 3 個可能比較常用的進階技巧。

已經聽完影片解說,也自己試著操作過了吧?那來考一下試,看看是不是都記得了。

2019/08/13

利用 PotPlayer 進行聽力練習

可能有些人為了要練習外語聽力而找過許多軟體,其實,我們常用的 PotPlayer 就提供了聽力練習的功能,祇要影片具有字幕,不用做任何設定,PotPlayer 就能依據字幕的時間軌自動重覆區段。

現在你可以試播一段有字幕檔的影片,按 Ctrl-\ 立即開啟 AB repeat 功能。要取消 AB repeat 功能也很簡單,按下斜線鍵 \ 就可以取消 AB repeat 功能,繼續播放影片。

現在你已經有聽力訓練軟體了,但是我們可以再調整一下 PotPlayer ,讓它變得更方便:

  1. 設置額外兩個快速鍵
  2. 修改字幕顏色

2019/08/10

如何撰寫讀書報告、小論文?

因為要教我的國中部學生寫讀書報告,另外有升上高中部的學生說她們想要參加小論文比賽,所以錄影片跟她們說一些重點。

如果有人也要寫報告/參加小論文比賽/寫碩士論文,希望這個能幫上忙。 :)

2019/07/28

如何在文章中正確引用電子書 (APA 格式)?

我們在寫比較正式的文章的時候都會列出參考資料,如 APA 格式要引用書時就有固定的格式,比方說 (林小明,民 108,頁 32) 就是中文引用的例子。剛剛忽然想到:那電子書怎麼辦呢?

The Internet as an egg (free egg image from www.clker.com
圖、The Internet as an egg (from www.clker.com)

我現在都習慣看電子書,電子書的字體大小、行距是可調的,所以沒有固定的頁碼,那要引用時該怎麼表達?剛剛調字體大小時忽然想到電子書引用的問題,搜尋一下,發現人家在 10 年前就已經寫好答案了。

書末參考文獻

在書末的參考文獻比較簡單,直接寫從哪裡取得 (如 Amazon.com),或是附上 DOI (digital object identifier, 數位物件識別碼) 即可。可以的話加上電子閱讀器的版本,因為 Kindle & Kindle DX 的頁碼就會有點不一樣。

(其實 Amazon 在 2011 年就已經讓 Kindle 中的頁碼與紙本書完全一致了,所以在 Kindle 這一點比較不是問題。)

2018/07/30

Arduino 無線電子鎖

昨天忽然想到,祇要利用 Arduino + 藍芽模組 + 馬達 + 齒輪 + 門閂就可以做一個簡易型的無線電子鎖了。

Arduino 無線電子鎖 圖、Arduino 無線電子鎖

利用這個電子鎖,門上連鑰匙孔都不需要,出門時用手機藍芽連上 Arduino,控制馬達將門閂帶上;回家時也是藍芽連上 Arduino 將門打開。小偷來到家門外,看到大門上連個鑰匙孔都沒有,完全不知道該怎麼下手,所以一開始想到時覺得這好像是個不錯的設計。

2018/07/28

人人寫程式是為補習班鋪路嗎?

教育部說 5 年內半數大學生需修過程式設計,想當然又引發不少爭論,很多人覺得文組學程式幹嘛啊?該不會是要為補習班鋪路吧?屆時滿街都是程式設計補習班,一堆在學校要被當掉的人趕快到補習班惡補以求期末不要被當。

是不是要為補習班鋪路我們暫且不論,但寫程式能夠大幅減少重覆的人工,其實是值得所有人學習的。以現在來說,學個 python 寫爬蟲抓資料應該是每個科系都用的到的技能,老貓在《文科生需要會寫程式嗎?》這篇文章裡也提到中文系的學生學會程式後,更容易去古文典籍裡面撈資料,所以我覺得讓所有人學寫程式是一個不錯的方向。

Coding 程式設計 圖、Coding 程式設計

但要怎麼對文組學生教程式設計呢?非資工科系的學生需要的應該是像《氣餒止步!該怎樣教文組的人寫程式?》這篇文章裡面提到以實務為主的程式教學。但是說真的,師資很難找,因為那是許多新聞界先行者嘗試許久之後才發現的實用路徑。

現在台灣有太多科系自己還不知道需要什麼樣的程式教育,祇能請外系教授從 Hello World 開始教,但這樣的教學方式讓學生完全不知道學完程式語言能做什麼?要怎麼應用在工作上?

在教程式語言之前,各科系可能要統計一下系友畢業後的出路,他們有哪些會耗費大量人工的工作是可以利用程式來取代的,再回推回來看看大學時期需要教什麼程式設計。

這些需求可能各個科系不同,但這才會是對文組學生真正有幫助的方式。

2018/07/08

1A2B 猜數字遊戲

我很喜歡 1A2B 這個遊戲,想要寫一個小程式讓電腦出題,平常無聊時就可以猜電腦出的數字。

1A2B 遊戲規則

1A2B 這個遊戲在國外叫 mastermind 或 cows and bulls,玩法是選個 4 位數的數字,這 4 位數中的數字不能重覆,比方說 1231 這樣是不行的,因為 1 重覆使用了。另外,我自己玩的時候最高位數不能為 0,比方說 0123 這樣是不行的,但我看其他人在玩的時候最高位數還是可以為 0。

假設我選的數字是 1234,對手猜 9801,那對手猜中 1 這個數字,但是位子不對,這樣的情況稱為 B。因為對手沒有猜中其他數字,所以總計起來就是 1 個 B 而已,所以我會回報對手 『0A1B』,告訴他:『你猜中了一個數字,但這數字不在正確的位子上。』

如果對手猜 1987,那麼 1 被它猜中了,而且位子也在正確的地方,這樣的情況稱為 A, 因為對手沒有猜中其他數字,所以總計起來就是 1 個 A 而已,所以我會回報 『1A0B』,告訴他:『你猜中了一個數字,而且這數字在正確的位子。』

下次對手猜 4201,4 這個數字猜中了,但位子不對,1 個 B;2 這個數字猜中了,而且位子也正確,1 個 A;1 這個數字猜中了,但位子不對,1 個 B,總計就是 1 個 A 還有 2 個 B,所以我回報給對手:『1A2B』,遊戲的目標就是要達到 4A -- 4 位數都猜中,而且數字都在正確的位置上。

2017/11/29

取 n 個亂數,總和為 100

現在在中興大學資工系修資訊第二專長,這學期資料結構的課程有個作業是要產生 5~10 個亂數來畫一個霍夫曼樹 (嗯,霍夫曼樹是什麼還是上網查才知道的,反正不是今天的重點),不過作業有個附加條件,就是這 5~10 個亂數的總和要為 100。

我還在頭痛這種亂數要怎麼得到咧?幾個同修第二專長的數學老師提出不同的方法來取總和 100 的亂數了。這還滿有趣的,光是取亂數就有這麼多種解法。

我怕以後忘了,所以把這些數學老師提出的方法記錄下來,也許以後用得到。為了方便說明,底下都以『取 5 個亂數,總和為 100』為例,比較統一,比較好說明。

水桶法

陳志峰老師提出一個方法,我把它稱為水桶法。先準備 5 個水桶,準備來取亂數。

準備 5 個水桶
圖、準備 5 個水桶

丟 5 面的骰子 10 次 (其實就是產生 1~5 的亂數,連續做 10 次)。

丟 5 面的骰子 10 次
圖、丟 5 面的骰子 10 次

骰子丟出 1,就在 1 號水桶上畫一筆做記號,丟出 2,就在 2 號水桶上畫一筆做記號,依此類推。

將骰子出現的點數分類計次
圖、將骰子出現的點數分類計次

2017/11/26

用 AutoHotkey 自動點擊網頁按鈕

最近要在某個網站上填報資料,填報資料不是問題,但是這個網站每隔幾分鐘就得存檔一次,否則會將你踢出網站,讓填報的資料全化為虛無 ── 這讓我滿困擾的,健忘的我常常忘了按存檔而讓努力化為流水。

為了解決這個問題,我打算用 AutoHotkey 幫我點擊存檔按鈕,讓 AutoHotkey 每隔 3 分鐘就去按畫面上的存檔按鈕,這樣就不怕忘記存檔了。

在 AutoHotkey 中讓按下滑鼠左鍵的指令是 Click,很直覺,所以就寫了一個小小的指令讓 AutoHotkey 執行,結果剛開始都按不到按鈕,明明已經用軟體測得螢幕座標了怎麼還是按不到?!後來才知道 AutoHotkey 預設是以活動視窗為基準點,以活動視窗的相對位置來移動滑鼠,我切換個視窗,那基準點數值就變了,難怪一直按錯地方。

2017/07/19

Markdown 的連結語法

Windows 內附一個『記事本』,可以用來編寫純文字檔案,這個內附的記事本功能較少,所以開啟速度很快,適合平常記點小事情時用。但『純文字檔案』沒有字體大小、粗體、斜體等變化,比較難在一堆文字中一眼看到重點。

使用 Word 雖然是個解決方法,但是有時候祇是要寫個簡單的備忘而已,Word 還沒開好可能我已經用記事本寫好備忘內容了,而且如果來到一台沒有 Word 的電腦,要開啟 Word 檔就要傷點腦筋了,所以 Word 也不是那麼萬能。

使用網頁語法 (HTML) 是一個不錯的解決方式,有一些特殊的指令可以告訴我們哪邊是標題,哪裡是粗體重點。不過 HTML 的指令太長了,功能也太豐富了些,有時候根本用不到這麼多功能,所以 John Gruber 將 HTML 指令簡化,創造出 Markdown 語法。

在 Markdown 中用 #(井字號) 代表標題,用 *(星號) 表示斜體字或粗體字,在一堆文字中看到一行文字是以 # 開頭的,就知道那是標題,看到有文字被兩個星號包圍起來,**像是這樣**,就知道這是重點。

a 圖、用 Windows 內附的記事本編寫 Markdown

使用 Markdown 語法後,即使是用記事本編寫純文字備忘,因為有 # 與 * 這些符號存在,我們還是很容易就能在一堆文字中找到重點。而且因為是純文字檔案,所以每一台電腦都能閱讀,不像 Word 檔,祇要電腦沒安裝 Word 就讀不到。

除了記事本外,網路上還有非常豐富的免費軟體或自由軟體能夠編寫 Markdown,它們提供了比 Windows 內附的記事本豐富的功能,比方說將標題用不同顏色區分出來,將粗體直接呈現出來等。

測試過幾十個軟體後,考量到中文使用的需求,我覺得 CuteMarkEd & MarkdownPad 是比較符合我們需要的軟體。CuteMarkEd 是自由軟體,任何人均可自由下載使用,雖然功能比 MarkdownPad 少一些,一次也祇能編輯一個檔案,但已經很夠用了。

從 CuteMarkEd 網頁下載 zip 壓縮檔回來,解壓縮後不需要安裝就能使用。它的畫面分左右兩邊,左邊是編輯區,右邊可以預覽結果,比方說有連結圖片就會在右方預覽區顯示出來,所以比記事本方便許多。

a 圖、CuteMarkEd 編輯 Markdown 檔案

有了自由使用的 markdown 編輯器 CuteMarkEd 之後,要怎麼開始撰寫含有 markdown 語法的文件呢?底下是 Markdown 常用的指令 (語法) 說明。

2016/09/01

文章重點在哪裡?

科學閱讀是我一直嘗試在生物課程中融入的一個教學重點,我希望學生能夠自己閱讀課文後找出課文重點,而不需再依賴老師幫忙畫重點。

2008 年教資訊課時嘗試把一些常見的重點整理成一個表格,直接把答案給學生,但我覺得這樣不對,這樣還是在填鴨。去年教生物課時就試著讓學生去畫課本重點,但學生畫來畫去找不到重點在哪邊,所以覺得效率不彰。

學生歸納哪些部份是重點

今年我讓學生先閱讀課本三分鐘,嘗試著自己畫重點,然後我們來討論有哪些部份是他們會想要畫起來的重點?這樣子一來,就算自己找不到重點在哪裡,至少聽聽其他同學怎麼說,以後就知道如何找重點。底下的圖就是學生討論的結果 (有兩個班尚未完成)。

101 班的一個小女生說:『很多頓號的地方是重點。』這是我沒有想過的,雖然那就是條列、序列的另一個表示法,但我真的沒想到頓號。 :) 所以我在 102、103 班也都會引導學生看一下『科學方法包含觀察、提出問題、參考文獻資料、提出假說、設計實驗、分析實驗數據、討論並提出結論』這段有很多頓號的地方。

101 班討論出的重點
圖、101 班討論出的重點

2013/09/29

在資訊課時做個糖心蛋吧!

前幾天用十分鐘讓學生在課堂上設計簡易機器人,設計完後抽籤選擇一、兩組讓學生上台報告。

學生報告完,我總結:『嗯,你們設計的很不錯!那現在換我給你們看看另一個機器人嘍!!噹噹,自然界的機器人,細胞出場!!信不信由你,你們剛剛提到的電力供應、工作指令,我們的細胞全都具備。』

『後,Yukie 老師你怎麼話峰一轉又能轉回生物課啊?』

『嘿啊,要不然你們以為在生物課讓你們設計機器人是要做什麼?你們認識我快一個月了,我有在課堂上講過廢話嗎?一定都是與課程相關的啊!讓你們設計機器人也是為了讓你們能夠理解細胞的每個構造的作用嘛!:)』

昨天我又想到一個『應該』是有助於學生理解的課程設計了。

2013/08/06

安全的使用電腦

某製藥公司的廣告說:『先講求不傷身體,再講求療效。』學電腦也應該這樣。

現在電腦、網路深入各個領域,幾乎每天都與之接觸,所以如何安全的使用電腦,不受其傷害也是很重要的一門學問。

在相關的電腦網路傷害中,最嚴重的或許可以算是『離家失蹤』吧?台南市警局的統計資料顯示,2007 年時,全台南市 0-18 歲的失蹤人口有 162 位 (主要是 13-18 歲的青少年),到了 2011 年,全台南市一年的 0-18 歲失蹤人口上昇到了 666 位。主要的失蹤原因『為見網友後失蹤』,而且女性失蹤人口是男性的兩倍多。

所以我覺得告訴學生如何安全的使用電腦是一門大學問,祇是要跟學生上這個主題的時候就很痛苦。

2013/07/25

保護你的 Facebook 帳號,也保護你的朋友

兩年多以前,我在 MSN 上被詐騙了 15000 元。

因為我表弟的 MSN 帳號被詐騙集團入侵,駭客接著用我表弟的名義傳訊息給我,要我去買遊戲點數給他。這在當時還算是新型的詐騙模式,所以我就中招了

詐騙集團利用社群朋友間相互信任的特質,駭進其中一個使用者的帳號,然後利用這個帳號向其他人進行詐騙。就像這一陣子 Facebook 上面又有許多人的帳號被詐騙集團攻破,成為僵屍帳戶,到處加人進入詐騙社團中。

所以,現在將自己的網路帳號 (Facebook、Gmail、Yahoo) 保護好,不祇是保護自己,還進一步保護你的朋友免受詐騙集團的傷害。

2013/03/08

在平板電腦上觀看攝影機的 MTS 檔:BSPlayer

學校在前一陣子買了幾台 Asus transformer 平板電腦運用在體育教學上,老師利用攝影機錄製學生的投籃動作,再把影片傳至平板電腦,讓學生帶著平板電腦到一旁自我練習、修正錯誤動作。

但是攝影機錄製下來的 Full HD 影片為 MTS 格式,為了能夠順暢的在平板上觀看 MTS 檔真是費煞苦心。

Asus transformer 四核心平板電腦,算是很高階的機型了。但是把攝影機拍的 MTS 檔傳到平板中,正常速度拍的影片都變成了超慢動作。

我原本以為是硬體效能不足的關係,心想四核心的平板都沒辦法正常觀看 MTS 檔了,那大概就是無解了,祇能期待硬體效能更高的機種推出來再試試。

不過基於好玩的心態下把同一個檔案放到自己的手機上觀看,很流暢啊,我的手機還祇是二核心耶,觀看 MTS 檔順暢的不得了。看來播放不順不是硬體效能的原因,問題應該是在播放器上。

之後就是不斷的下載影音播放程式與測試的過程。我們幾個老師在 Google play 下載了許多影音播放器,但測試的結果都沒辦法正常播放 MTS 檔,包含 VLC 都祇能對 MTS 雙手一攤放棄。

今天試了 BSPlayer Free,雖然是免費版軟體,但是可以順暢的播放 MTS 檔了,我的天啊,總算是解決了這個問題。

所以如果有播放 MTS 需求的朋友,可以試試這個界面簡單的播放軟體,它真的解決了我們的困擾,希望也能對你有幫助。;)

Technorati : , ,