premature optimization 2.0 - intercon 2016
TRANSCRIPT
![Page 1: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/1.jpg)
PREMATUREOPTIMIZATION
The Root of ALL Evil
@akitaonrails
![Page 2: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/2.jpg)
PREMATUREOPTIMIZATION
The Root of ALL Evil
@akitaonrails
2.0
![Page 3: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/3.jpg)
@akitaonrails
![Page 4: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/4.jpg)
![Page 5: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/5.jpg)
![Page 6: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/6.jpg)
![Page 7: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/7.jpg)
![Page 8: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/8.jpg)
![Page 9: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/9.jpg)
![Page 10: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/10.jpg)
![Page 11: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/11.jpg)
Uber para segurança particular
Uber para advogados
Uber para maconha
Uber para massagem
Uber para álcool
Uber para lavanderia
Uber para passeio de cachorro
![Page 12: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/12.jpg)
![Page 13: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/13.jpg)
Airbnb para barcos
Airbnb para cachorros
Airbnb para equipamentos
Airbnb para acampamentos
Airbnb para banheiros (!!)
Airbnb para impressão 3D
Airbnb para cozinhas
![Page 14: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/14.jpg)
![Page 15: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/15.jpg)
Tinder para sapatos
Tinder para cachorros
Tinder para notícias
Tinder para networking
Tinder para empregos
Tinder para saias
![Page 16: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/16.jpg)
![Page 17: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/17.jpg)
![Page 18: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/18.jpg)
![Page 19: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/19.jpg)
![Page 20: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/20.jpg)
![Page 21: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/21.jpg)
![Page 22: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/22.jpg)
![Page 23: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/23.jpg)
![Page 24: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/24.jpg)
![Page 25: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/25.jpg)
![Page 28: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/28.jpg)
“The Social Network" (2010)
![Page 29: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/29.jpg)
“The Social Network" (2010)
![Page 30: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/30.jpg)
“The Social Network" (2010)
![Page 31: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/31.jpg)
“The Social Network" (2010)
![Page 32: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/32.jpg)
“The Social Network" (2010)
![Page 33: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/33.jpg)
“The Social Network" (2010)
![Page 34: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/34.jpg)
![Page 35: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/35.jpg)
![Page 36: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/36.jpg)
![Page 37: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/37.jpg)
Name Games Wins Loses Points Elo Rating
1 Kong 217 117 100 17 802
2 Samus 211 110 101 9 842
3 Wario 197 102 95 7 824
4 Luigi 186 95 91 4 841
5 Zelda 160 81 79 2 847
6 Pikachu 209 105 104 1 851
7 Yoshi 223 112 111 1 803
8 Mario 203 101 102 -1 820
9 Fox 208 95 113 -18 754
10 Bowser 186 82 104 -22 785
![Page 38: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/38.jpg)
Name Games Wins Loses Points Elo Rating
1 Kong 217 117 100 17 802
2 Samus 211 110 101 9 842
3 Wario 197 102 95 7 824
4 Luigi 186 95 91 4 841
5 Zelda 160 81 79 2 847
6 Pikachu 209 105 104 1 851
7 Yoshi 223 112 111 1 803
8 Mario 203 101 102 -1 820
9 Fox 208 95 113 -18 754
10 Bowser 186 82 104 -22 785
![Page 39: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/39.jpg)
Name Games Wins Loses Points Elo Rating
1 Kong 217 117 100 17 802
2 Samus 211 110 101 9 842
3 Wario 197 102 95 7 824
4 Luigi 186 95 91 4 841
5 Zelda 160 81 79 2 847
6 Pikachu 209 105 104 1 851
7 Yoshi 223 112 111 1 803
8 Mario 203 101 102 -1 820
9 Fox 208 95 113 -18 754
10 Bowser 186 82 104 -22 785
![Page 40: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/40.jpg)
Name Games Wins Loses Points Elo Rating
1 Samus 221 120 101 19 896
2 Kong 217 117 100 17 802
3 Luigi 186 95 91 4 841
4 Zelda 160 81 79 2 847
5 Pikachu 209 105 104 1 851
6 Yoshi 223 112 111 1 803
7 Mario 203 101 102 -1 820
8 Wario 207 102 105 -3 760
9 Fox 208 95 113 -18 754
10 Bowser 186 82 104 -22 785
Samus (2nd) wins from Wario (3rd) 10 times
![Page 41: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/41.jpg)
Name Games Wins Loses Points Elo Rating
1 Samus 221 120 101 19 896
2 Kong 217 117 100 17 802
3 Luigi 186 95 91 4 841
4 Zelda 160 81 79 2 847
5 Pikachu 209 105 104 1 851
6 Yoshi 223 112 111 1 803
7 Mario 203 101 102 -1 820
8 Wario 207 102 105 -3 760
9 Fox 208 95 113 -18 754
10 Bowser 186 82 104 -22 785
Samus (2nd) wins from Wario (3rd) 10 times
![Page 42: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/42.jpg)
Name Games Wins Loses Points Elo Rating
1 Samus 221 120 101 19 896
2 Kong 217 117 100 17 802
3 Luigi 186 95 91 4 841
4 Zelda 160 81 79 2 847
5 Pikachu 209 105 104 1 851
6 Yoshi 223 112 111 1 803
7 Mario 203 101 102 -1 820
8 Wario 207 102 105 -3 760
9 Fox 208 95 113 -18 754
10 Bowser 186 82 104 -22 785
Samus (2nd) wins from Wario (3rd) 10 times
![Page 43: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/43.jpg)
Name Games Wins Loses Points Elo Rating
1 Samus 221 120 101 19 896
2 Kong 227 117 110 7 732
3 Luigi 186 95 91 4 841
4 Zelda 160 81 79 2 847
5 Pikachu 209 105 104 1 851
6 Yoshi 223 112 111 1 803
7 Mario 203 101 102 -1 820
8 Wario 207 102 105 -3 760
9 Bowser 196 92 104 -12 845
10 Fox 208 95 113 -18 754
Kong (2nd) loses to Bowser (10th) 10 times
![Page 44: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/44.jpg)
![Page 45: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/45.jpg)
![Page 46: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/46.jpg)
Name Games Wins Loses Points Elo Rating
1 Kong 217 117 100 17 802
2 Samus 211 110 101 9 842
3 Wario 197 102 95 7 824
4 Luigi 186 95 91 4 841
5 Zelda 160 81 79 2 847
6 Pikachu 209 105 104 1 851
7 Yoshi 223 112 111 1 803
8 Mario 203 101 102 -1 820
9 Fox 208 95 113 -18 754
10 Bowser 186 82 104 -22 785
![Page 47: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/47.jpg)
Name Games Wins Loses Points Elo Rating
1 Kong 217 117 100 17 802
2 Samus 211 110 101 9 842
3 Wario 197 102 95 7 824
4 Luigi 186 95 91 4 841
5 Zelda 160 81 79 2 847
6 Pikachu 209 105 104 1 851
7 Yoshi 223 112 111 1 803
8 Mario 203 101 102 -1 820
9 Fox 208 95 113 -18 754
10 Bowser 186 82 104 -22 785
Name Games Wins Loses Points Elo Rating
1 Pikachu 209 105 104 1 851
2 Zelda 160 81 79 2 847
3 Samus 211 110 101 9 842
4 Luigi 186 95 91 4 841
5 Wario 197 102 95 7 824
6 Mario 203 101 102 -1 820
7 Yoshi 223 112 111 1 803
8 Kong 217 117 100 17 802
9 Bowser 186 82 104 -22 785
10 Fox 208 95 113 -18 754
![Page 48: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/48.jpg)
Name Games Wins Loses Points Elo Rating
1 Kong 217 117 100 17 802
2 Samus 211 110 101 9 842
3 Wario 197 102 95 7 824
4 Luigi 186 95 91 4 841
5 Zelda 160 81 79 2 847
6 Pikachu 209 105 104 1 851
7 Yoshi 223 112 111 1 803
8 Mario 203 101 102 -1 820
9 Fox 208 95 113 -18 754
10 Bowser 186 82 104 -22 785
Name Games Wins Loses Points Elo Rating
1 Pikachu 209 105 104 1 851
2 Zelda 160 81 79 2 847
3 Samus 211 110 101 9 842
4 Luigi 186 95 91 4 841
5 Wario 197 102 95 7 824
6 Mario 203 101 102 -1 820
7 Yoshi 223 112 111 1 803
8 Kong 217 117 100 17 802
9 Bowser 186 82 104 -22 785
10 Fox 208 95 113 -18 754
![Page 49: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/49.jpg)
Name Games Wins Loses Points Elo Rating
1 Pikachu 209 105 104 1 851
2 Zelda 160 81 79 2 847
3 Samus 211 110 101 9 842
4 Luigi 186 95 91 4 841
5 Wario 197 102 95 7 824
6 Mario 203 101 102 -1 820
7 Yoshi 223 112 111 1 803
8 Kong 217 117 100 17 802
9 Bowser 186 82 104 -22 785
10 Fox 208 95 113 -18 754
![Page 50: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/50.jpg)
Name Games Wins Loses Points Elo Rating
1 Pikachu 209 105 104 1 851
2 Zelda 160 81 79 2 847
3 Samus 211 110 101 9 842
4 Luigi 186 95 91 4 841
5 Wario 197 102 95 7 824
6 Mario 203 101 102 -1 820
7 Yoshi 223 112 111 1 803
8 Kong 217 117 100 17 802
9 Bowser 186 82 104 -22 785
10 Fox 208 95 113 -18 754
![Page 51: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/51.jpg)
Name Games Wins Loses Points Elo Rating
1 Pikachu 209 105 104 1 851
2 Zelda 160 81 79 2 847
3 Samus 211 110 101 9 842
4 Luigi 186 95 91 4 841
5 Wario 197 102 95 7 824
6 Mario 203 101 102 -1 820
7 Yoshi 223 112 111 1 803
8 Kong 217 117 100 17 802
9 Bowser 186 82 104 -22 785
10 Fox 208 95 113 -18 754
![Page 52: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/52.jpg)
Name Games Wins Loses Points Elo Rating
1 Zelda 170 91 79 12 904
2 Pikachu 209 105 104 1 851
3 Luigi 186 95 91 4 841
4 Wario 197 102 95 7 824
5 Mario 203 101 102 -1 820
6 Yoshi 223 112 111 1 803
7 Kong 217 117 100 17 802
8 Bowser 186 82 104 -22 785
9 Samus 221 110 111 -1 775
10 Fox 208 95 113 -18 754
Zelda (2nd) wins from Samus (3rd) 10 times
![Page 53: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/53.jpg)
Name Games Wins Loses Points Elo Rating
1 Zelda 170 91 79 12 904
2 Pikachu 209 105 104 1 851
3 Luigi 186 95 91 4 841
4 Wario 197 102 95 7 824
5 Mario 203 101 102 -1 820
6 Yoshi 223 112 111 1 803
7 Kong 217 117 100 17 802
8 Bowser 186 82 104 -22 785
9 Samus 221 110 111 -1 775
10 Fox 208 95 113 -18 754
Zelda (2nd) wins from Samus (3rd) 10 times
![Page 54: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/54.jpg)
Name Games Wins Loses Points Elo Rating
1 Zelda 170 91 79 12 904
2 Pikachu 209 105 104 1 851
3 Luigi 186 95 91 4 841
4 Wario 197 102 95 7 824
5 Mario 203 101 102 -1 820
6 Yoshi 223 112 111 1 803
7 Kong 217 117 100 17 802
8 Bowser 186 82 104 -22 785
9 Samus 221 110 111 -1 775
10 Fox 208 95 113 -18 754
Zelda (2nd) wins from Samus (3rd) 10 times
![Page 55: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/55.jpg)
Name Games Wins Loses Points Elo Rating
1 Zelda 170 91 79 12 904
2 Luigi 186 95 91 4 841
3 Fox 218 105 113 -8 829
4 Wario 197 102 95 7 824
5 Mario 203 101 102 -1 820
6 Yoshi 223 112 111 1 803
7 Kong 217 117 100 17 802
8 Bowser 186 82 104 -22 785
9 Samus 221 110 111 -1 775
10 Pikachu 219 105 114 -9 766
Pikachu (2nd) loses to Fox (10th) 10 times
![Page 56: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/56.jpg)
ELO Rating System
Microsoft TrueSkill Rating System
Google PageRank
Facebook EdgeRank
![Page 57: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/57.jpg)
![Page 58: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/58.jpg)
![Page 59: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/59.jpg)
.NETC
CoffeeScriptElixir
F#
Groovy
Java
JavaScriptObjective-C
PHP
Perl PythonRuby
Swift
Visual Basic .NET
![Page 60: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/60.jpg)
.NET
C
CoffeeScript
ElixirF#
Groovy
Java JavaScript
Objective-C
PHPPerl
Python
Ruby
Swift
Visual Basic .NET
![Page 61: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/61.jpg)
![Page 62: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/62.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
![Page 63: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/63.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
Speedcode (1953) John Backus
- interpreter took 310 memory words, about 30% of the memory available on a 701
- twenty times that of machine code
![Page 64: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/64.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
Fortran (1957) John Backus
- first optimizing compiler - complex number types/
electric engineering
![Page 65: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/65.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
CPL (1963) Christopher Strachey
- Combined/Cambridge/Combined Programming Language
- low and high level
![Page 66: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/66.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
BCPL (1966) Martin Richards
- Basic CPL - Bootstrap CPL - popular choice
for bootstrapping a system
![Page 67: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/67.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
occam (1983) INMOS
- concurrent programming language - Bootstrap CPL - communication between processes
work through named channels
![Page 68: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/68.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
![Page 69: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/69.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
![Page 70: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/70.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
Algol (1958) ETH Zürich committee
- Algol 58, Algol 60, Algol 68, Algol W - Context-free Grammars (Backus-Naur Form/BNF) - "ALGOL 68 was the first (and possibly one of the last)
major language for which a full formal definition was made before it was implemented”
- “ALGOL 68 has been criticized, most prominently by some members of its design committee such as Hoare and Dijkstra, for abandoning the simplicity of ALGOL 60”
- "Steve Bourne, who was on the Algol 68 revision committee, took some of its ideas to his Bourne shell (and thereby, to descendant shells such as Bash) and to C (and thereby to descendants such as C++)."
![Page 71: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/71.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
Modula (1960) Niklaus Wirth
- "One of the first languages designed from the start for modular programming"
![Page 72: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/72.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
MUMPS (1966) Neil Pappalardo
- "Massachusetts General Hospital Utility Multi-Programming System”
- hierarchical ACID built-in database - InterSystems Caché (SQL driver)
![Page 73: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/73.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
ADA (1966) MIL-STD
- strong typing, generics - modularity mechanisms (packages) - run-time checking
- access to unallocated memory, buffer overflow errors, range violations, off-by-one errors, array access errors, and other detectable bugs
- parallel processing (tasks, synchronous message passing, protected objects, and
- nondeterministic select statements) - exception handling - widely used in critical systems, where any anomaly might
lead to very serious consequences, e.g., accidental death, injury or severe financial loss. Examples of systems where Ada is used include avionics,ATC, railways, banking, military and space technology
![Page 74: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/74.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
Hope (1970s) Edinburgh University
- NPL and Hope: first languages with call-by-pattern evaluation
- influenced Standard ML, Haskell
![Page 75: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/75.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
![Page 76: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/76.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
![Page 77: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/77.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
SNOBOL (1962) AT&T Bell Labs
- patterns as a first-class data type - operators for pattern
concatenation and alternation - early regular expressions/pattern
matching
![Page 78: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/78.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
FLOW-MATIC (1955) Grace Hopper
- 1952 - A0 compiler - 1959 - COBOL - English-like high level
language
![Page 79: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/79.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
Simula (1967) Ole-Johan Dahl, Kristen Nygaard
- object-oriented programming - inheritance and subclasses - virtual methods, coroutines - Garbage Collector
![Page 80: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/80.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
CLU (1974) Barbara Liskov
- early object-oriented programming - classes with constructors and methods,
without inheritance - iterators, abstract data types, type-safe
parameterized/variant types - multiple return values (parallel
assignment)
![Page 81: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/81.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
![Page 82: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/82.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
![Page 83: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/83.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
ISWIM (1965) Peter J. Landin
- "If you See What I Mean" - functional programming
(SASL, Miranda, ML, Haskell) - lazy evaluation
(SASL, KRC, Hope, Miranda, Haskell,
![Page 84: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/84.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
Miranda (1985) David Turner
- lazy, purely functional programming - list comprehensions (Haskell)
![Page 85: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/85.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
Clean (1987) Radboud University Nijmegen
- mutable state and I/O is done through a uniqueness typing system (Haskell Monads)
- performance comparable to Haskell
![Page 86: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/86.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
Self (1987) David Ungar, Randall Smith
- dialect of Smalltalk (OOP) - prototype-based (Javascript) - Just in time Compiling (JVM)
![Page 87: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/87.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
Prolog (1972) Alain Colmerauer
- logic programming (influenced Erlang) - natural language processing - relations, represented as facts and rules
- running a query over these relations
![Page 88: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/88.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
![Page 89: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/89.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
![Page 90: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/90.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
Erlang (1986) Joe Armstrong, Robert Virding and Mike Williams
- distributed, fault-tolerant, soft-real-time, non-stop applications. It supports hot swapping
- processes communicate using message passing
![Page 91: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/91.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
ML (1973) Robin Milner/University of Edinburgh
- Hindley–Milner type system - parametric polymorphism - “Type Inference”
- ML Family (Standard ML, OCaml), Clean, Haskell
![Page 92: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/92.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
REBOL (1997) Carl Sassenrath
- "Relative Expression Based Object Language"
- dialecting: small, optimized, Domain-Specific Language (DSL) for code and data
- influenced JSON
![Page 93: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/93.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
![Page 94: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/94.jpg)
![Page 95: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/95.jpg)
• APL (1964) introduced: array programming, influenced: functional programming
• ALGOL (1958) refined both structured procedural programming and the discipline of language specification.
• Simula (1967) first language designed to support object-oriented programming; Smalltalk (1972) followed with the first "purely" object-oriented language.
• C (1969 - 1973) popular system programming language
• Prolog (1972), first logic programming language. • ML (1978) built a polymorphic type system on top of
Lisp, pioneering statically typed functional programming languages.
![Page 96: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/96.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
2015
![Page 97: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/97.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
2015FORTRAN (1957) John Backus
- FORTRAN 2015
![Page 98: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/98.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
2015
COBOL (1959) Conference on Data Systems Languages (CODASYL)
- COBOL 2014
![Page 99: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/99.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
2015
![Page 100: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/100.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
2015
![Page 101: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/101.jpg)
1960
1965
1970
1975
1980
1985
1990
1995
2000
2005
2010
2015
![Page 102: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/102.jpg)
![Page 103: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/103.jpg)
![Page 104: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/104.jpg)
23%
32%
45%
Python Fortran C
500k LOC
![Page 105: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/105.jpg)
![Page 106: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/106.jpg)
![Page 107: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/107.jpg)
![Page 108: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/108.jpg)
Gordon Moore - Intel co-founder
![Page 109: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/109.jpg)
![Page 110: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/110.jpg)
![Page 111: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/111.jpg)
0
1,000,000,000
2,000,000,000
3,000,000,000
4,000,000,000
5,000,000,000
6,000,000,000
7,000,000,000
8,000,000,000
1965 1970 1975 1980 1985 1990 1995 2000 2005 2010 2015 2020
Intel1Processors1Transistor1Count
![Page 112: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/112.jpg)
0
1,000,000,000
2,000,000,000
3,000,000,000
4,000,000,000
5,000,000,000
6,000,000,000
7,000,000,000
8,000,000,000
1965 1970 1975 1980 1985 1990 1995 2000 2005 2010 2015 2020
Intel1Processors1Transistor1Count
Intel 400410 µm Intel 80386 Pentium
0.8 µm
Itanium 2
Six-core Xeon 7400
8-core Itanium Poulson32 nm
18-core Xeon Haswell-E522 nm
15-core Xeon Ivy Bridge-EX
Duo-core + GPU Core i7 Broadwell-U14 nm
![Page 113: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/113.jpg)
0
1,000,000,000
2,000,000,000
3,000,000,000
4,000,000,000
5,000,000,000
6,000,000,000
7,000,000,000
8,000,000,000
1965 1970 1975 1980 1985 1990 1995 2000 2005 2010 2015 2020
Intel1Processors1Transistor1Count
Intel 400410 µm Intel 80386 Pentium
0.8 µm
Itanium 2
Six-core Xeon 7400
8-core Itanium Poulson32 nm
18-core Xeon Haswell-E522 nm
15-core Xeon Ivy Bridge-EX
Duo-core + GPU Core i7 Broadwell-U14 nm
Apple A7
Apple A8
Apple A8X20 nm
![Page 114: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/114.jpg)
![Page 115: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/115.jpg)
![Page 116: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/116.jpg)
![Page 117: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/117.jpg)
Gordon Bell - DEC early employee
![Page 118: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/118.jpg)
$100M
$10M
$1M
$100K
$10k
$1k
$100
$10
1940 1960 1970 1980 1990 2000 2010
![Page 119: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/119.jpg)
$100M
$10M
$1M
$100K
$10k
$1k
$100
$10
1940 1960 1970 1980 1990 2000 2010
Supercomputadores
![Page 120: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/120.jpg)
$100M
$10M
$1M
$100K
$10k
$1k
$100
$10
1940 1960 1970 1980 1990 2000 2010
Supercomputadores
Minicomputadores
![Page 121: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/121.jpg)
$100M
$10M
$1M
$100K
$10k
$1k
$100
$10
1940 1960 1970 1980 1990 2000 2010
Supercomputadores
Minicomputadores
Workstations
![Page 122: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/122.jpg)
$100M
$10M
$1M
$100K
$10k
$1k
$100
$10
1940 1960 1970 1980 1990 2000 2010
Supercomputadores
Minicomputadores
Workstations
PersonalComputers
![Page 123: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/123.jpg)
$100M
$10M
$1M
$100K
$10k
$1k
$100
$10
1940 1960 1970 1980 1990 2000 2010
Supercomputadores
Minicomputadores
Workstations
PersonalComputers
ScalableClusters
![Page 124: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/124.jpg)
$100M
$10M
$1M
$100K
$10k
$1k
$100
$10
1940 1960 1970 1980 1990 2000 2010
Supercomputadores
Minicomputadores
Workstations
PersonalComputers
Small Devices
ScalableClusters
![Page 125: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/125.jpg)
$100M
$10M
$1M
$100K
$10k
$1k
$100
$10
1940 1960 1970 1980 1990 2000 2010
Supercomputadores
Minicomputadores
Workstations
PersonalComputers
Small Devices
ScalableClusters
![Page 126: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/126.jpg)
Vaticano 2005
![Page 127: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/127.jpg)
Vaticano 2013
![Page 128: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/128.jpg)
![Page 129: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/129.jpg)
![Page 130: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/130.jpg)
![Page 131: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/131.jpg)
![Page 132: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/132.jpg)
![Page 133: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/133.jpg)
![Page 134: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/134.jpg)
2010 2011 2012 2013 20142006 2007 2008 2009
![Page 135: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/135.jpg)
2010 2011 2012 2013 20142006 2007 2008 2009
![Page 136: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/136.jpg)
2010 2011 2012 2013 20142006 2007 2008 2009
![Page 137: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/137.jpg)
![Page 138: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/138.jpg)
![Page 139: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/139.jpg)
2017 60 anos de FORTRAN
![Page 140: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/140.jpg)
2017 60 anos de FORTRAN
2014 55 anos de COBOL
![Page 141: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/141.jpg)
2017 60 anos de FORTRAN
2014 55 anos de COBOL
2013 55 anos de LISP
![Page 142: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/142.jpg)
2017 60 anos de FORTRAN
2014 55 anos de COBOL
2013 55 anos de LISP
2012 40 anos de Smalltalk
![Page 143: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/143.jpg)
2017 60 anos de FORTRAN
2014 55 anos de COBOL
2013 55 anos de LISP
2012 40 anos de Smalltalk
2015 35 anos de ADA
![Page 144: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/144.jpg)
![Page 145: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/145.jpg)
Séc XVII Cálculo Newton/Leibniz
![Page 146: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/146.jpg)
Séc XVII Cálculo Newton/Leibniz
1930's Lambda Calculus Alonzo Church
![Page 147: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/147.jpg)
Séc XVII Cálculo Newton/Leibniz
1930's Lambda Calculus Alonzo Church
1939 Elo Rating System Arpad Elo
![Page 148: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/148.jpg)
Séc XVII Cálculo Newton/Leibniz
1930's Lambda Calculus Alonzo Church
1939 Elo Rating System Arpad Elo
1975 Vector Space Model Gerald Salton
![Page 149: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/149.jpg)
![Page 150: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/150.jpg)
SPA e-commerce
![Page 151: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/151.jpg)
![Page 152: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/152.jpg)
SPA e-commercehttp://www.loja.com.br/#!/produtos/item-001
![Page 153: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/153.jpg)
SPA e-commercehttp://www.loja.com.br/#!/produtos/item-001
http://www.loja.com.br/?_escaped_fragment_=/produtos/item-001
![Page 154: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/154.jpg)
High Level Numbers
![Page 155: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/155.jpg)
Client #1
![Page 156: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/156.jpg)
![Page 157: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/157.jpg)
![Page 158: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/158.jpg)
![Page 159: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/159.jpg)
![Page 160: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/160.jpg)
$ 4,000
![Page 161: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/161.jpg)
$ 4,000($ 7 MI/yr revenue - 0.68%)
![Page 162: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/162.jpg)
Client #2
![Page 163: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/163.jpg)
![Page 164: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/164.jpg)
![Page 165: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/165.jpg)
![Page 166: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/166.jpg)
$ 100,000+
![Page 167: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/167.jpg)
$ 100,000+($ 800 MI/yr revenue - 0.15%)
![Page 168: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/168.jpg)
![Page 169: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/169.jpg)
• Minimum IT Cost:
![Page 170: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/170.jpg)
• Minimum IT Cost:
• USD 1000 - Cloud Services
![Page 171: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/171.jpg)
• Minimum IT Cost:
• USD 1000 - Cloud Services
• USD 3000 - 1 Developer
![Page 172: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/172.jpg)
• Minimum IT Cost:
• USD 1000 - Cloud Services
• USD 3000 - 1 Developer
• USD 4000 - 1 “Responsible” (Manager, Marketing, etc)
![Page 173: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/173.jpg)
• Minimum IT Cost:
• USD 1000 - Cloud Services
• USD 3000 - 1 Developer
• USD 4000 - 1 “Responsible” (Manager, Marketing, etc)
• Total: USD 8.000/month (USD 96.000/year)
![Page 174: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/174.jpg)
• Minimum IT Cost:
• USD 1000 - Cloud Services
• USD 3000 - 1 Developer
• USD 4000 - 1 “Responsible” (Manager, Marketing, etc)
• Total: USD 8.000/month (USD 96.000/year)
• Minimum Business Requirement:
![Page 175: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/175.jpg)
• Minimum IT Cost:
• USD 1000 - Cloud Services
• USD 3000 - 1 Developer
• USD 4000 - 1 “Responsible” (Manager, Marketing, etc)
• Total: USD 8.000/month (USD 96.000/year)
• Minimum Business Requirement:
• Revenue: > USD 2 MI / year
![Page 176: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/176.jpg)
• Minimum IT Cost:
• USD 1000 - Cloud Services
• USD 3000 - 1 Developer
• USD 4000 - 1 “Responsible” (Manager, Marketing, etc)
• Total: USD 8.000/month (USD 96.000/year)
• Minimum Business Requirement:
• Revenue: > USD 2 MI / year
• IT Cost / Revenue ratio: < 5%
![Page 177: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/177.jpg)
![Page 178: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/178.jpg)
Increase Revenue>
Lower Costs
![Page 179: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/179.jpg)
![Page 180: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/180.jpg)
Innovation
![Page 181: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/181.jpg)
![Page 182: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/182.jpg)
Impossible Yesterday
Possible Today
![Page 183: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/183.jpg)
![Page 184: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/184.jpg)
![Page 185: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/185.jpg)
![Page 186: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/186.jpg)
Innovation
Constraints
![Page 187: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/187.jpg)
PREMATUREOPTIMIZATIONis the Root of all Evil
![Page 188: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/188.jpg)
![Page 189: Premature Optimization 2.0 - Intercon 2016](https://reader031.vdocuments.mx/reader031/viewer/2022022202/587a940e1a28ab09758b4573/html5/thumbnails/189.jpg)