computer programming for everyone
DESCRIPTION
How Python Helps You? A Talk at TSLC 2014.TRANSCRIPT
Can We Have
a Computeron Every
Desk?
In the 70s,
Take It or Not?
不管你是否喜歡這個數位世界它都已經全面影響你的工作和生活
What will Happenif Users can
Program their own Computer?
A Follow-up Question:
What will Happenif We have More
Hackers ?
A Follow-up Question:
人們可以有更多機會
實現自己的
夢想
我看到的是…
真正的窮不是沒有錢,
而是沒有能力去付出
是滿腔袂爽的自主貢獻者 不是佛心志工
夢想,不分大小實踐,贏得掌聲天賦,有所不同機會,應該相同
我相信…
程式語言一定要夠簡單
才能讓人快速上手
三歲小孩也會 Python 嗎 ?
互動 Interactivity
直譯 vs 編譯素描 vs 油畫
修訂詞句 vs 批改作文
History ofProgramming
Languages2,500+ for 50 years
FortranCOBOL
1968
CPascal
1978
C++BASIC
1988
JavaPerlPHP
1998 2008
PythonJavascript
IBM PC Internet
History of Pythonvs Diffusion of Innovation
多數的學習與進步
依賴既有經驗
做為基礎以 數學 , 語言 為例
def F(n): if n <= 2: return 1 else: return F(n-1) + F(n-2)
Fibonacci Numbers
def F(n): if n <= 2: return 1 else: return F(n-1) + F(n-2)
縮排 Indentation
視覺式辨識 程式區塊 Block
Code is Read more thanit is Written
Readability counts.
學習語言是怎樣的
歷程 ?
口語前期口語期精熟期
1. 開始出現字彙2. 累積達 50 字彙並組
合 ( 電報句 )3. 開始使用關連詞
( 而且 , 可是 )
聽 說讀寫
口語前期口語期精熟期
剪下 貼上有意識地拷貝 對常見錯誤能夠反應
有意識地使用成語 能夠重構
Code is Copied and Pasted more thanit is Written
Repository counts.
關鍵字 Keywords
def F(n): if n <= 2: return 1 else: return F(n-1) + F(n-2)
Python Ruby PHP Java
~ 30 ~ 40 ~ 50 ~ 50
簡單的東西搬不上檯面吧 ?NASA
GoogleDropbox
MIT
表面上簡單內涵並不簡單
不斷演進的動力來自
社群參與形成
最佳典範或慣例
客製化運算資料要在異質系統之間互通
資訊要在操作環境之間同步行動要在群組之間協調
DarkAge
1968
PC
1978
Net
1988
Web
1998 2008
Cloud
通用語言 Lingua Franca
A language that is adopted as a common
language between speakers whose native
languages are different.
語言有什麼用途 ?
數位世界的語言需求
探索大師腳步
Pythonic Thinking
Graphical ProgrammingBlocky
Programming Riddles
The Python Challenge Project Euler
Community ProjectsKivy, Pandas, iPython Notebook,
Pygame, OpenStack
IPython Notebook
Code DemoPresentation Mode
LaTeX, Plot
IntegrationArcGIS, GAE, Blender, Bonhamizer
線上課程1. Codecademy
2. Treehouse3. Udemy
4. Coursera5. Udacity
社群聚會 / 付費課程
1. Taipei.py, PyHUG, Hualien.py, Tainan.py, Kaohsiung.py, Taichung.py, Taoyuan.py
2. PyLadies, Django Girls3. KidsCoding, CodeKoala4. RaspberryPi, BananaPi5. HackerSpace, MakerBar, Maker
Faire
一見如故Python folks around the world share the same culture.
實踐夢想的過程
能讓我們體驗
所有的美好
我相信… Python Inspired
Find Your Dream