How to stand on the shoulders of giants

Post on 17-May-2015

4,161 views 3 download

Tags:

description

The slides from my keynote at PHP NW 2011, about how every great breakthrough is built on the work that has come before it.

transcript

GIANTSHow To Stand On The Shoulders Of

Open Source

Platforms

Academic

Hardware

“The best way to predict the future is to invent it.”- Alan Kay

Discover

Research

Produce

BCPL

GET "libhdr"

LET start() = VALOF{ writes("Hello world*n") RESULTIS 0}

B

main() { a 'Hello world' ; putchar (a); putchar ('*n');}

C

#include <stdio.h>

int main(void){ printf("hello, world\n"); return 0;}

PHP/FI

<? if(!$PHP_AUTH_USER) { Header("WWW-authenticate: basic realm=\"My Realm\""); Header("HTTP/1.0 401 Unauthorized"); echo "Cancelled\n" exit;} else { echo "Hello $PHP_AUTH_USER.<P>";} >

PHP 3

<? function hitcount($counter_file){ if ( file_exists($counter_file) ) { $fp=fopen($counter_file,"r"); $count=0+fgets($fp,20); fclose($fp); } $fp=fopen($counter_file,"w"); fputs($fp,$count++); fclose($fp); return ($count);} ?>

QuickSortfunction qsort($nums) { if(count($nums) < 2) {return $nums;} $pivot = array_rand($nums); $p1_val = $nums[$pivot]; unset($nums[$pivot]); $less = $more = array(); foreach( $nums as $n ) { if($n <= $p1_val) { $less[] = $n;} else { $more[] = $n; } } return array_merge(qsort($less), array($pivot_val), qsort($more));}

1960

Dual Pivot QuickSort2009

function dsort($nums) { if(count($nums) < 2) {return $nums;} $p1 = array_rand($nums); $v1 = $nums[$p1]; unset($nums[$p1]); $p2 = array_rand($nums); $v2 = $nums[$p2]; unset($nums[$p2]); if($v1>$v2) list($v1,$v2)=array($v1,$v2); $s1 = $s2 = $s3 = array(); foreach($nums as $n) { if ($n <= $v1) { $s1[] = $n; } else if($n <= $v2) { $s2[] = $n; } else { $s3[] = $n; } } return array_merge(dsort($s1),array($v1), dsort($s2),array($v2),dsort($s3)); }

“...is said to have saved the Internet from collapsing due to traffic in 1988-1989”- en.wikipedia.org/wiki/Van_Jacobson

Van Jacobson

Discover

Research

Synthesise

Produce

“The whole field had suffered blinders; in some sense search really did need two people who were never tainted by people like me to come up with that shake up” – Amit Singhal, Bell Labs

Thank You

Martin Richards

Lorna

Clock

TBLTuring

http://www.cl.cam.ac.uk/~mr10/

Image Credits

http://www.flickr.com/photos/myrtti/6052575049

http://www.flickr.com/photos/tanaka/3212373419

http://www.flickr.com/photos/sebastian_bergmann/52408671Zeev & Andi

http://www.flickr.com/photos/thurm/1554383213

http://www.flickr.com/photos/indraw/4857101224

Ken Thompson http://cm.bell-labs.com/who/dmr/picture.html

Rasmus http://www.flickr.com/photos/wafer/365664702/

Dennis Ritchie http://www.bobdbob.com/hcc/halloffame/halloffame.html

Skater http://www.flickr.com/photos/eyedeaz/5004084713