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
Reframing The Problem - TrueNorthPHP 2014
Search
Daniel Cousineau
November 08, 2014
Technology
0
200
Reframing The Problem - TrueNorthPHP 2014
https://joind.in/talk/view/12724
Daniel Cousineau
November 08, 2014
Tweet
Share
More Decks by Daniel Cousineau
See All by Daniel Cousineau
Time is a Social Construct
dcousineau
1
580
React @ Scale
dcousineau
0
180
Frontend Performance & You
dcousineau
0
290
Feature Flags & You
dcousineau
2
96
React+Redux @ Scale
dcousineau
1
330
Reframing The Problem - DCJS July 2016
dcousineau
0
130
YAFT
dcousineau
2
150
Queues and the beanstalkd
dcousineau
1
660
How Not Writing PHP Makes You Better At PHP
dcousineau
0
380
Other Decks in Technology
See All in Technology
AI時代におけるデータの重要性 ~データマネジメントの第一歩~
ryoichi_ota
0
710
Data Hubグループ 紹介資料
sansan33
PRO
0
2.2k
ヘンリー会社紹介資料(エンジニア向け) / company deck for engineer
henryofficial
0
330
「魔法少女まどか☆マギカ Magia Exedra」の多様なバトルの開発を柔軟かつ効率的に実現するためのPure C#とUnityの分離について
gree_tech
PRO
0
250
あなたの知らない Linuxカーネル脆弱性の世界
recruitengineers
PRO
3
150
旅で応援する✈️ NEWTが目指すコミュニティ支援とあたらしい旅行 / New Travel: Supporting by NEWT on Your Journey
mii3king
0
140
MCP ✖️ Apps SDKを触ってみた
hisuzuya
0
300
「魔法少女まどか☆マギカ Magia Exedra」におけるバックエンドの技術選定
gree_tech
PRO
0
110
Okta Identity Governanceで実現する最小権限の原則 / Implementing the Principle of Least Privilege with Okta Identity Governance
tatsumin39
0
160
Dylib Hijacking on macOS: Dead or Alive?
patrickwardle
0
450
[VPoE Global Summit] サービスレベル目標による信頼性への投資最適化
satos
0
220
現場データから見える、開発生産性の変化コード生成AI導入・運用のリアル〜 / Changes in Development Productivity and Operational Challenges Following the Introduction of Code Generation AI
nttcom
1
450
Featured
See All Featured
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.1k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
37
2.6k
Faster Mobile Websites
deanohume
310
31k
Producing Creativity
orderedlist
PRO
347
40k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
10
610
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3k
For a Future-Friendly Web
brad_frost
180
10k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
What's in a price? How to price your products and services
michaelherold
246
12k
Facilitating Awesome Meetings
lara
57
6.6k
Embracing the Ebb and Flow
colly
88
4.9k
A designer walks into a library…
pauljervisheath
209
24k
Transcript
reframing the problem
how to think like a computer scientist
how to think
None
None
None
None
None
None
please rate me on joind.in https://joind.in/12724
how to think like a computer scientist
to solve our problem, we must first invent the universe
None
None
None
None
None
None
None
None
None
None
mental set
None
functional fixedness
None
reduction
None
go rubber duck yourself
4 1 2 6 3 7 5 8
4 1 2 6 3 7 5 8 1 2
4 6 3 7 5 8 up
4 1 2 6 3 7 5 8 1 2
4 6 3 7 5 8 up 1 2 4 6 3 7 5 8 right
4 1 2 6 3 7 5 8 1 2
4 6 3 7 5 8 up 1 2 4 6 3 7 5 8 right 4 1 2 6 3 7 5 8 right
None
None
None
None
A* -> queue = expand(initial) while queue is not empty:
dequeue move from queue if move is solution: return move concat expand(move) to queue sort queue by heuristic
expand(state) -> moves = [] if left valid move: add
state.move(left) to moves if right valid move: add state.move(left) to moves if up valid move: add state.move(left) to moves if down valid move: add state.move(left) to moves return moves
4 1 2 6 3 7 5 8
4 1 2 6 3 7 5 8 4 2
6 1 3 7 5 8 4 1 2 6 3 7 5 8 4 1 2 6 5 3 7 8 4 1 2 6 3 7 5 8
heuristic(state) -> manhattan(state) + outofplace(state)
heuristic
None
None
None
so what did we learn?
don’t fixate
pull back, abstract
write down everything you know
if all else fails, google.
please rate ALL talks https://joind.in/12724