Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
(RubyConf 2016) Computer Science: The Good Parts
Search
Jeff Cohen
November 09, 2016
Programming
360
0
Share
(RubyConf 2016) Computer Science: The Good Parts
My keynote talk from RubyConf 2016 in Cincinnati.
Jeff Cohen
November 09, 2016
More Decks by Jeff Cohen
See All by Jeff Cohen
Modern Cryptography for Absolute Beginner
jeffcohen
0
190
Computer Science: The Good Parts
jeffcohen
0
150
Computer Science: The Good Parts (2016)
jeffcohen
3
230
Computer Science: The Good Parts
jeffcohen
1
210
Secrets Revealed: Web Development is for Everyone
jeffcohen
0
460
Coding for MBA's
jeffcohen
0
99
Other Decks in Programming
See All in Programming
AI-DLC Deep Dive
yuukiyo
9
4.6k
Server-Side Kotlin LT大会 vol.18 [Kotlin-lspの最新情報と Neovimのlsp設定例]
yasunori0418
1
170
YJITとZJITにはイカなる違いがあるのか?
nakiym
0
240
事業会社でのセキュリティ長期インターンについて
masachikaura
0
260
Claude Codeをカスタムして自分だけのClaude Codeを作ろう
terisuke
0
140
Going Multiplatform with Your Android App (Android Makers 2026)
zsmb
2
450
iOS機能開発のAI環境と起きた変化
ryunakayama
0
190
의존성 주입과 모듈화
fornewid
0
150
Vibe NLP for Applied NLP
inesmontani
PRO
0
450
UIの境界線をデザインする | React Tokyo #15 メイントーク
sasagar
2
380
第3木曜LT会 #28
tinykitten
PRO
0
110
From Formal Specification to Property Based Test
ohbarye
0
190
Featured
See All Featured
Building Adaptive Systems
keathley
44
3k
Designing Powerful Visuals for Engaging Learning
tmiket
1
350
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.5k
Paper Plane
katiecoart
PRO
1
49k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
160
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
410
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
0
1.2k
Rails Girls Zürich Keynote
gr2m
96
14k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.7k
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
770
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Balancing Empowerment & Direction
lara
6
1.1k
Transcript
Computer Science: The Good Parts Jeffrey Cohen @jeffcohen jeffcohenonline.com
None
Data Structures
Data Structures
Linked List
60 31 5 45 80 70 74 99 87 68
Binary Tree
Data Structures
Graph
None
None
None
None
None
None
Algorithms
Babbage and Lovelace
Apollo 11
Margaret Hamilton Source code of the Apollo Guidance Computer
Complexity A "green" test suite is not an indicator of
sustainability. Some implementations are more complex than others. • Time • Space
O(n) def exists?(name_to_find, names) names.each do |name| return true if
name == name_to_find end return false end
def exists?(name_to_find, names) names.each do |name| return true if name
== name_to_find end return false end O(n) 0 100 200 300 O(n)
O(log n) def exists?(name_to_find, sorted_names) midpoint = sorted_names.length
/ 2 return true if sorted_names[midpoint].name == name_to_find if name < sorted_names[midpoint].name search(name_to_find, sorted_names[0, midpoint]) else search(name_to_find, sorted_names[midpoint, -1]) end return false end
def exists?(name_to_find, sorted_names) midpoint = sorted_names.length / 2
return true if sorted_names[midpoint].name == name_to_find if name < sorted_names[midpoint].name search(name_to_find, sorted_names[0, midpoint]) else search(name_to_find, sorted_names[midpoint, -1]) end return false end O(log n) 0 100 200 300 O(log n) O(n)
Atom.io blog post
O(n2) def make_combinations(items) items.map do |item| items.map { |inner_item| [item,
inner_item] } end end [1,2,3] => [[1,1], [1,2], [1,3], [2, 1], [2, 2], [2, 3], [3, 1], [3, 2], [3, 3]]
O(n2) def make_combinations(items) items.map do |item| items.map { |inner_item| [item,
inner_item] } end end 0 100 200 300 O(n2) O(n) O(log n)
The Future
Alan Turing
Alan Turing Computer science is not computer programming
Alan Turing It's a way of thinking
Grace Hopper
Grace Hopper
Grace Hopper Humans are allergic to change. They love to
say, "We've always done it this way." I try to fight that. That's why I have a clock on my wall that runs counter-clockwise.
Grace Hopper A ship in port is safe; but that
is not what ships are built for. Sail out to sea and do new things.
Questions? Thoughts? Find me on twitter @jeffcohen jeffcohenonline.com