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
Finding a Way Out
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
evandrix
March 28, 2014
Programming
51
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Finding a Way Out
Chris Granger @ StrangeLoop 2013
evandrix
March 28, 2014
More Decks by evandrix
See All by evandrix
Floating Point Consistency
evandrix
1
50
Splat
evandrix
1
100
Other Decks in Programming
See All in Programming
AI 輔助遺留系統現代化的經驗分享
jame2408
1
980
Webフレームワークの ベンチマークについて
yusukebe
0
180
ふつうのFeature Flag実践入門
irof
8
4.2k
The NotImplementedError Problem in Ruby
koic
1
920
TAKTでAI駆動開発の品質を設計する
j5ik2o
7
1.5k
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
12
6.4k
Observability in Practice:Grafana 與 Edge Device SRE 的那些事
blueswen
0
170
Skillsは効率化、Agentsは"自分の拡張"——Builder時代のエージェント編成(CC Night 2026)
wemra
1
160
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
280
JavaDoc 再入門
nagise
1
410
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.5k
LaravelLive Japan の裏方のすべて — 第188回 PHP勉強会@東京 (2026-06-24)
suguruooki
2
120
Featured
See All Featured
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
A Modern Web Designer's Workflow
chriscoyier
698
190k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
170
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
123
22k
ラッコキーワード サービス紹介資料
rakko
1
3.7M
WCS-LA-2024
lcolladotor
0
650
Designing Powerful Visuals for Engaging Learning
tmiket
1
420
Tips & Tricks on How to Get Your First Job In Tech
honzajavorek
1
540
Un-Boring Meetings
codingconduct
0
320
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.2k
How to make the Groovebox
asonas
2
2.2k
Statistics for Hackers
jakevdp
799
230k
Transcript
Finding a way out Chris Granger 8/20/13
How do we make programming better?
2004 - 2009
2009 - 2011
2011 - 2013
Still broken.
How do we make programming better?
What is programming? And what’s wrong with it?
Programming is unobservable
person.walk()
Programming is unobservable
Programming is indirect
#include <algorithm>! #include <iostream>! #include <iterator>! #include <cmath>! #include <vector>!
#include <iterator>! #include <numeric>! ! template <typename Iterator>! double standard_dev( Iterator begin , Iterator end ) {! double mean = std::accumulate( begin , end , 0 ) / std::distance( begin , end ) ;! std::vector<double> squares ;! for( Iterator vdi = begin ; vdi != end ; vdi++ ) ! squares.push_back( std::pow( *vdi - mean , 2 ) ) ;! return std::sqrt( std::accumulate( squares.begin( ) , squares.end( ) , 0 ) / squares.size( ) ) ;! }! ! int main( ) {! double demoset[] = { 2 , 4 , 4 , 4 , 5 , 5 , 7 , 9 } ;! int demosize = sizeof demoset / sizeof *demoset ;! std::cout << "The standard deviation of\n" ;! std::copy( demoset , demoset + demosize , std::ostream_iterator<double>( std::cout, " " ) ) ; ! std::cout << "\nis " << standard_dev( demoset , demoset + demosize ) << " !\n" ;! return 0 ;! }!
None
Programming is indirect
cards[0][12]
None
Programming is indirect
Programming is incidentally complex
unobservable ! indirect ! incidentally complex
teacup teacup teacup teacup teacup teacup teacup teacup teacup teacup
teacup teacup teacup
Data transformation.
observable, direct, simple
medium an agency or means of doing something.
None