Upload
andrew-chuang
View
172
Download
1
Embed Size (px)
Citation preview
CS EducationAndrew Chuang
June, 2016
1
Outline
K-12
Computational Thinking Abstract Automation
WHAT TO LEARN ? CT/CSR/ST
2
CSE
CS Lagado 3
http://pioneer.k12cc.tw/modules/tadnews/index.php?nsn=1http://pioneer.k12cc.tw/modules/tadnews/index.php?nsn=1
CSE
CS Lagado 4
CSE
CS Lagado 5
CSE
CS Lagado 6
CSE
CS Lagado 7
CSE
CS Lagado 8
CSE
CS Lagado 9
CSE
CS Lagado
?
10
CSE
CS Lagado
1.
2.
3.
11
CSE
CS Lagado 12
CSE
CS Lagado
13
CSE
CS Lagado 14
CSE
CS Lagado 15
CSE
CS Lagado
16
CSE
CS Lagado
CS
17
CSE
CS Lagado
Age 5-7
18
CSE
CS Lagado
Age 7-11
19
CSE
CS Lagado
Age 11-14
20
CSE
CS Lagado
Age 14-16
21
CSE
CS Lagado
https://www.whitehouse.gov/blog/2016/01/30/computer-science-all
CS4O
22
CSE
CS Lagado
2010
Advanced Placement
23
http://www.washingtonpost.com/wp-dyn/content/story/2008/04/03/ST2008040303977.html
CSE
CS Lagado 24
CSE
CS Lagado
Computational Thinking?
25
Outline
K-12
Computational Thinking Abstract Automation
WHAT TO LEARN ? CT/CSR/ST
26
CSE
CS Lagado 27
CSE
CS Lagado http://www.msra.cn/zh-cn/about/leadership/jeannette-wing.aspx
Computational Thinking
28
CSE
CS Lagado
CT A
Abstractions
Automation
mental tools
metal tools
29
CSE
CS Lagado 30
CSE
CS Lagado
Examples of Computational Thinking
31
CSE
CS Lagado
Ways To Think Like A Computer Scientist
Thinking Abstractly Thinking Ahead (caching, pre-fetching) Thinking Procedurally Thinking Logically Thinking Concurrently Thinking without Rules Thinking Recursively
32
CSE
CS Lagado 33
CSE
CS Lagado
Data Abstraction and Representation
queue
tree
stack
34
CSE
CS Lagado
Graph
35
CSE
CS Lagado
Recursion
Towers of Hanoi
http://www.ustudy.in/node/697136
CSE
CS Lagado
Pipeline
37
https://en.wikipedia.org/wiki/Din_Tai_Fung#/media/File:Taiwan_2009_Taipei_DinTaiFung_Dumpling_House_at_Pacific_Sogo_ZhongXiao_Store_FRD_9000.jpg
CSE
CS Lagado
- - - + Charles Babbage (1791-1871) + Ada Lovelace (1815-1852) - The first programmer calculate the Bernoulli Numbers - 1938 Z1 by Konrad Zuse - 1943 (Vacuum Tube) - 1947 (Transistor) Bell Lab. - 1959 IC / VLSI
+ Transistor Integrated Circuit Noyce & Kilby + SoC / Embedded System + ESL Design Methodology
- 1994 DNA Computer + Leonard Adleman of USC + 1977, Rivest-Shamir-Adleman + 7-point Hamiltonian path problem
- Quantum Computer - ???
Automation
Solution of a 20-Variable 3-SAT Problem on a DNA Computer, Science, 2002 38
Outline
K-12
Computational Thinking Abstract Automation
WHAT TO LEARN ? CT/CSR/ST
39
CSE
CS Lagado
:
40
CSE
CS Lagado 41
http://cacm.acm.org/blogs/blog-cacm/176450-python-is-now-the-most-popular-introductory-teaching-language-at-top-us-universities/fulltext
CSE
CS Lagado
Python is Now the Most Popular Introductory Teaching Language
at Top U.S. Universities
42
CSE
CS Lagado
Formula translation
Algorithm
43
CSE
CS Lagado
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
ABC
Python
Smalltalk 80
Squeak
Ruby
AppleScript
F-Script
BETA
Objective-C
Self
Dylan
Io
ZonnonC# 2.0
C# 3.0
UniconCyclone 1.0
Algol 58
JOSS
Algol 60
Fortran II
Fortran IV
BasicPL/I
Fortran 77
Flow-matic
COBOL
Fortran I
Simula I
Simula 67
Snobol
Snobol4 Mumps
CPL
BCPL
Quick Basic
REXX
Pascal
Haskell
Mercury
Haskell 98
Gofer
Fortran 90
Fortran 2003
SML 90
SML 97
zsh
zsh 3.0
Ease C++ (ARM)
Pike
C++ (ISO)
Oak
Visual Basic
VB.NET
B
C
Prolog
Prolog ISO
Lambda Prolog
ErlangLife
CLIPS
Scheme R6RS D 1.0Fortress 1.0betaGroovy 1
Scheme
Algol W
Algol 68
APL
APL 2
COBOL-68
APL 96
J
Eiffel 3bash 2.0
bash 3.0
LimboPizzaOCaml
Scala
OCaml 3.0
Nice
C 99Oz 3 .NET
SML.NETF# J#
C#Mondrian
Boo
SQL-1999
SQL-2003
J++ 6.0 Tcl 8.1Python 1.5.2
Python 2.0
C99ECMAScript rel3
JavaScript 1.5
DelphiOz 1 Java JavaScript
J++
Java 2 (v1.2)
ECMAScript
Groovy
Ruby 1.8
Ada 95 PHP
PHP4
C 95
Cyclone
NewtonScriptKksh93
ksh98
zsh 4.0 XQueryGHC 5.00
GHC 6.0
NetREXX
Scheme R5RS
CAL (Open Quark)
Java 2 (v1.5 beta)
Perl 5.005
Perl 5.6.0
REBOL
ksh
bash
ksh88
occamAda 83
Eiffel
IconPascal AFNOR
Lua
Objective Pascal
csh awk C (K&R)
sh
Perl
Modula
CLU
Ada
Standard Mumps
Mumps 1984
SQL
ANSI SQL
Modula-2
Modula-3
Oberon
ML
SMLLazy ML
Hope
Miranda
Eiffel 2
Cecil
Scheme R3RS
Scheme R4RS
ISO SQL
A+
Caml
Lean
Scheme 84
Perl 4
SQL-92
Clean
Concurrent Clean
PHP5 Python 2.4
Python 2.5
Scheme MIT
C (ANSI)
Sather 0.1
CLOS
CLIPS 5.0
ANSI C
SEQUEL
SEQUEL/2
Smalltalk 74
Smalltalk 76
COBOL-74
COBOL-85
Oberon-2
Perl 5Sather 1.0
Python 2.2Perl 5.8.0
Nemerle
COBOL 2002
REXX 3.0
Object REXX
PostScript
PostScript level 2
ISWIM
SASL
QuiltLua 4.0
Lua 5.0
JavaScript 1.7
Lisp
Logo
Common Lisp
KRC
Beta
Smalltalk 78
tcsh
Smalltalk
Smalltalk 72
Forth
C++
Common Lisp (ANSI)
CSP
nawk
FP
FL
Tcl
sed
2007 44
CSE
CS Lagado 45
http://infolab.stanford.edu/~ullman/focs.html
Computer
(Abstract) Model Program = Data Structure + Algorithm
(Automated) Mechanization
(System Architecture) Computing is the automation of our abstractions
Computational Thinking
Systematically Thinking
46
CSE
CS Lagado
1900
Music box
(Orgel)
47
CSE
CS Lagado
Reproducing piano
(Orgel)
48
CSE
CS Lagado
Coding StyleLanguage Machine: Program
49
CSE
CS Lagado 50
Science
51
CSE
CS Lagado 52
http://spectrum.ieee.org/the-human-os/biomedical/diagnostics/mosquitos-have-brought-a-nasty-new-disease-to-the-americas-can-computer-models-predict-its-spread
CSE
CS Lagadohttps://www.technologyreview.com/s/601203/how-data-mining-reveals-the-hidden-evolution-of-american-automobiles/
53
CSE
CS Lagado 54
CSE
CS Lagado 55
CSE
CS Lagado
WHAT TO LEARN?CSE
Computer
- Computational Thinking
- Systematically Thinking
Science
- CS Research
56
CSE
CS Lagado
MOREabout
Computational Thinking
Systematically Thinking
CS Researchin Daily Life
57
CSE
CS Lagado 58
CSE
CS Lagadohttp://troy-halverson.appspot.com/Sci-Fi/PrimerTimeline.jpg
59
CSE
CS Lagado 60
https://www.technologyreview.com/s/600819/the-missing-link-of-artificial-intelligence/
CSE
CS Lagado
Supervised learning works so well when you have the right data set,
but ultimately unsupervised learning is going to be a really important component in building really intelligent systems
if you look at how humans learn, its almost entirely unsupervised.
61
CSE
CS Lagado 62
CSE
CS Lagado http://www.cs.umd.edu/~jonf/index.html
Design Probes in Fixture-Level Water Usage Data
63
http://www.cs.umd.edu/~jonf/index.html
CSE
CS Lagado
Problem to Solve :
WHAT CSE WE WANT
?
64