那些ioi教我的事以及沒教的事 (高中資訊科教師增能研討會 2014)

Post on 17-Aug-2014

288 Views

Category:

Education

5 Downloads

Preview:

Click to see full reader

DESCRIPTION

茶敘話虎爛時間

TRANSCRIPT

那些 IOI 教我的事

台⼤大資⼯工 賴宇宣

那些 IOI 教我的事

台⼤大資⼯工 賴宇宣

以及沒教的事

Agenda

• 我從 IOI 學到的

!

!

Agenda

• 我從 IOI 學到的

• 我沒學到的

!

Agenda

• 我從 IOI 學到的

• 我沒學到的

• 怎麼教新⼿手寫程式

Agenda

• 我從 IOI 學到的

• 我沒學到的

• 怎麼教新⼿手寫程式

• ⾼高中⽣生真正該會的

Agenda

• 我從 IOI 學到的

• 我沒學到的

• 怎麼教新⼿手寫程式

• ⾼高中⽣生真正該會的Just my two cents!

• 台中⼀一中

!

!

• 台中⼀一中

• 不會寫程式

• 都是靠學⻑⾧長罩

• 台中⼀一中

• 不會寫程式

• 都是靠學⻑⾧長罩

• 台中⼀一中

• 不會寫程式

• 都是靠學⻑⾧長罩

• 「負⾯面教材」

IOI

!

!

IOI

• 演算法解謎競賽

IOI

• 演算法解謎競賽

• 跟電腦其實關係不⼤大

IOI

• 演算法解謎競賽

• 跟電腦其實關係不⼤大

• 甚⾄至跟寫程式也沒什麼關係

IOI

• 演算法解謎競賽

• 跟電腦其實關係不⼤大

• 甚⾄至跟寫程式也沒什麼關係

• e.g. IOI 2013 “Door”

學到的東⻄西

• 資料結構與演算法

!

!

學到的東⻄西

• 資料結構與演算法

• C/C++

!

學到的東⻄西

• 資料結構與演算法

• C/C++

• 英⽂文/簡體中⽂文

沒學到的東⻄西

•    資料結構與演算法

!

!

沒學到的東⻄西

• 嚴謹的資料結構與演算法

• e.g. how to prove the complexity of randomized Quicksort?

沒學到的東⻄西

•     C/C++

!

!

沒學到的東⻄西

• 正確的 C/C++

• e.g. (bad ones)i = i++;int a = 60000;

沒學到的東⻄西

• Literally everything I need to know before starting to write code…

!

!

沒學到的東⻄西

• Literally everything I need to know before starting to write code…

• e.g. Unicode, HTTP, TCP/IP, Unix pipe, event-driven, OOP, functional programming, building tool, version control system, etc

學到的東⻄西

• 資料結構與演算法

• C/C++

• 英⽂文/簡體中⽂文

• 「學習」

教寫程式?

教寫程式?• Learnable Programming

(http://worrydream.com/LearnableProgramming)

!

!

教寫程式?

• 「從頭寫起」的困難

!

!

教寫程式?

• 「從頭寫起」的困難

• “Computers are willing to sit there patiently while you define the terms that you want to use later. But humans won't understand what you're talking about unless you motivate it first.” — Joel Spolsky

教寫程式?

• 填空取代填鴨

教寫程式?

• 填空取代填鴨

• 圖形取代⽂文字

教寫程式?

• 填空取代填鴨

• 圖形取代⽂文字

• 靜態取代動態

學⽣生該會的

學⽣生該會的

學⽣生該會的

學⽣生該會的

學⽣生該會的

• ⾃自動化⼯工具

!

!

⾃自動化⼯工具

!

!

!

⾃自動化⼯工具

!

!

!

⾃自動化⼯工具

!

!

!

學⽣生該會的

• ⾃自動化⼯工具

• 資訊安全

!

資訊安全(常識)

資訊安全(常識)

資訊安全(常識)

學⽣生該會的

• ⾃自動化⼯工具

• 資訊安全

• 「學習」

「學習」

「學習」

「學習」

「學習」

「學習」

Question?

Thank you!

References• http://venturebeat.com/2014/06/09/linux-creator-linus-torvalds-i-do-not-believe-

everybody-should-learn-to-code/

• http://venturebeat.com/2013/12/08/president-obama-kicks-off-cs-education-week-with-code-org-dont-just-play-on-your-phone-program-it

• https://elearning.taipei.gov.tw/

• http://worrydream.com/LearnableProgramming/

• http://www.joelonsoftware.com/articles/fog0000000033.html

• http://commons.wikimedia.org/wiki/File:Correlogram_Analysis_in_Excel.png

• http://www.deviantart.com/resources/applications/psactions/?q=HDR

top related