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
evandrix
March 28, 2014
Programming
0
48
Finding a Way Out
Chris Granger @ StrangeLoop 2013
evandrix
March 28, 2014
Tweet
Share
More Decks by evandrix
See All by evandrix
Floating Point Consistency
evandrix
1
46
Splat
evandrix
1
100
Other Decks in Programming
See All in Programming
なるべく楽してバックエンドに型をつけたい!(楽とは言ってない)
hibiki_cube
0
130
Deno Tunnel を使ってみた話
kamekyame
0
350
クラウドに依存しないS3を使った開発術
simesaba80
0
230
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
340
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
120
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
510
Data-Centric Kaggle
isax1015
2
700
AtCoder Conference 2025「LLM時代のAHC」
imjk
2
710
HTTPプロトコル正しく理解していますか? 〜かわいい猫と共に学ぼう。ฅ^•ω•^ฅ ニャ〜
hekuchan
2
660
dchart: charts from deck markup
ajstarks
3
970
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.2k
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
1.9k
Featured
See All Featured
Designing for humans not robots
tammielis
254
26k
Making Projects Easy
brettharned
120
6.6k
[RailsConf 2023] Rails as a piece of cake
palkan
59
6.3k
Code Review Best Practice
trishagee
74
19k
The SEO identity crisis: Don't let AI make you average
varn
0
56
Context Engineering - Making Every Token Count
addyosmani
9
620
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1k
Color Theory Basics | Prateek | Gurzu
gurzu
0
180
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.5k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
16
1.8k
The agentic SEO stack - context over prompts
schlessera
0
600
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
0
1.8k
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