SlideShare a Scribd company logo
The Web at 25
Lessons Learned, Forgotten, and Rediscovered
Kimberly Blessing
Director, Think Brownstone
www.kimberlyblessing.com
@obiwankimberly
Line-mode browser hack days
Line-mode browser?
CERN Web history projects
 http://first-website.web.cern.ch/
 http://line-mode.cern.ch/
 https://github.com/cern-hackdays/lmb
 @thefirstwebsite
Greetings from… CERN?
“Vague, but exciting…”
From http://www.w3.org/History/1989/proposal.html
An interdisciplinary team
Image: CERN
Meeting with Robert Cailliau
Image: CERN
The first open-source software?
Images: CERN
A step back for Tim & Robert…
Image: CERN
More history lessons
 “Nature abhors a vacuum”
 Robert disagreed with the lack of an imperative
programming language
 “Be liberal in what you require but conservative in
what you do”
 Robert favored strict interpretation of HTML by the
browser
 The URL
 The core invention of the Web, and the only part
with a dependency on a centralized system
Research
Planning
Design approach
 Follow as many of the core web principles as
possible
 Replicate the LMB user experience
 Leverage as much of the modern browser stack
as possible
Code archaeology…
<header> or <head>?
1 <HEADER>
2 <TITLE>The World Wide Web project</TITLE>
3 <NEXTID N="55">
4 </HEADER>
5 <BODY>
Source from http://info.cern.ch/hypertext/WWW/TheProject.html
<p> as a separator
6 <H1>World Wide Web</H1>The WorldWideWeb (W3) is a wide-area<A
7 NAME=0 HREF="WhatIs.html">
8 hypermedia</A> information retrieval
9 initiative aiming to give universal
10 access to a large universe of documents.<P>
Source from http://info.cern.ch/hypertext/WWW/TheProject.html
<hp>? <h0>?
1027 case S_tag_h:
1028
1029 switch(character){
1030
1031 case 'p':
1032 case 'P':
1033 state=S_high_phrase;
1034 break;
1035
1036 case '0':
1037 case '1':
1038 case '2':
1039 case '3':
1040 case '4':
1041 case '5':
1042 case '6':
1043 state = S_tag_h_num;
1044 heading_level = character;
1045 break;
Source from WWW.c, version 0.12, dated 28-8-91
The first style sheet!
176 /* Example Style Sheet */
177 /* =================== */
178
179 /* L1 L2 RM A C1 C2 DS LB LA
180 */
181 PRIVATE para_style normal_style = { 3, 3, 0, 0, 0, 0, 0, 0, 0};
182
183 PRIVATE para_style list_style = { 7, 10, 0, 0, 0, 0, 0, 1, 1};
184
185 PRIVATE para_style glossary_style = { 7, 27, 0, 0, 0, 0, 0, 1, 1};
186
187 PRIVATE para_style mono_style = { 0, 0, 0, 0, 0, 0, 0, 0, 0};
188
189 PRIVATE para_style address_style = { 4, 4, 0, 1, 0, 0, 0, 0, 0};
190
191 PRIVATE para_style heading_style[7] = {
192
193 /* TITLE */ { 0, 0, 0, 1, 0, 0, 0, 0, 1},
194
195 /* H1 */ { 0, 0, 0, 2, 1, 1, 0, 1, 1},
196
197 /* H2 */ { 0, 0, 0, 0, 1, 1, 0, 0, 0},
198
199 /* H3 */ { 2, 2, 0, 0, 0, 0, 0, 0, 0},
200
201 /* H4 */ { 4, 4, 0, 0, 0, 0, 0, 0, 0},
202
203 /* H5 */ { 6, 6, 0, 0, 0, 0, 0, 0, 0},
204
205 /* H6 */ { 8, 8, 0, 0, 0, 0, 0, 0, 0},
206
207 } ; /* end of heading styles */
Source from WWW.c, version 0.12, dated 28-8-91
…and testing
And in the end…
Simulation solution
 310 lines of server-side (Node.js) JavaScript
 Proxies HTTP requests/responses
 Strips “unknown” tags and the author’s CSS
 Injects our custom CSS and the LMB command line
 265 lines of CSS
 354 lines of client-side JavaScript
 HTML5 audio for mechanical keyboard sounds
 Canvas to mimic character-by-character rendering
 Handling of command line input
 Bookmarklet in 119 lines of JavaScript
Visiting the web’s birthplace
(a hallway)
Learning from history
 “The web being simple and forgiving has led to its
enormous growth” –Robert Cailliau
 Minimum viable product
 Iterate early in a product’s lifecycle
Return to original design
principles
 Simplicity
 Modularity
 Tolerance
 Decentralization
 Principle of least power
From http://www.w3.org/DesignIssues/Principles.html
Concerns about the Web today
 Information system or application platform?
 Great for bringing basic CS skills to all
 Current client-side application paradigms make
content a second-class citizen
 The Web is not for all
 We’re still fighting for accessibility
 Video content is surpassing all other types
 No new, great society – walled gardens remain
Be good stewards of the Web
 “Cool URLs don’t change”
 Content first
 Hypermedia APIs
 Backwards compatible and future friendly
 Progressively enhanced
 Power of the hyperlink
Kimberly Blessing
www.kimberlyblessing.com
@obiwankimberly
Slide: Robert Cailliau
Uncredited photos by me, available at:
https://www.flickr.com/photos/kimberlyblessing/sets/72157635666193726/

More Related Content

Viewers also liked

Code creativity
Code creativityCode creativity
Code creativityNate Hill
 
The Object Orientation of Teams
The Object Orientation of TeamsThe Object Orientation of Teams
The Object Orientation of TeamsLisa Welchman
 
LibraryBox and Kickstarter
LibraryBox and KickstarterLibraryBox and Kickstarter
LibraryBox and KickstarterJason Griffey
 
Stories of Discovery: A responsive journey
Stories of Discovery: A responsive journeyStories of Discovery: A responsive journey
Stories of Discovery: A responsive journeySteve Fisher
 
Code and Creativity: Mozilla in Chattanooga
Code and Creativity: Mozilla in ChattanoogaCode and Creativity: Mozilla in Chattanooga
Code and Creativity: Mozilla in ChattanoogaLindsey Frost
 
OTT-Dienste und Kommunikationsverhalten in Deutschland
OTT-Dienste und Kommunikationsverhalten in DeutschlandOTT-Dienste und Kommunikationsverhalten in Deutschland
OTT-Dienste und Kommunikationsverhalten in DeutschlandRené C.G. Arnold
 

Viewers also liked (9)

Code creativity
Code creativityCode creativity
Code creativity
 
The Object Orientation of Teams
The Object Orientation of TeamsThe Object Orientation of Teams
The Object Orientation of Teams
 
Hot Links
Hot LinksHot Links
Hot Links
 
LibraryBox and Kickstarter
LibraryBox and KickstarterLibraryBox and Kickstarter
LibraryBox and Kickstarter
 
Stories of Discovery: A responsive journey
Stories of Discovery: A responsive journeyStories of Discovery: A responsive journey
Stories of Discovery: A responsive journey
 
Code and Creativity: Mozilla in Chattanooga
Code and Creativity: Mozilla in ChattanoogaCode and Creativity: Mozilla in Chattanooga
Code and Creativity: Mozilla in Chattanooga
 
Просування пріоритетів івано-франківського бізнесу до влади
Просування пріоритетів івано-франківського бізнесу до владиПросування пріоритетів івано-франківського бізнесу до влади
Просування пріоритетів івано-франківського бізнесу до влади
 
OTT-Dienste und Kommunikationsverhalten in Deutschland
OTT-Dienste und Kommunikationsverhalten in DeutschlandOTT-Dienste und Kommunikationsverhalten in Deutschland
OTT-Dienste und Kommunikationsverhalten in Deutschland
 
JV Timeline
JV TimelineJV Timeline
JV Timeline
 

Similar to Kimberly Blessing: The Web at 25 [Dec 2014]

Killing the Angle Bracket
Killing the Angle BracketKilling the Angle Bracket
Killing the Angle Bracketjnewmanux
 
OSCon - Performance vs Scalability
OSCon - Performance vs ScalabilityOSCon - Performance vs Scalability
OSCon - Performance vs ScalabilityGleicon Moraes
 
Code for Startup MVP (Ruby on Rails) Session 1
Code for Startup MVP (Ruby on Rails) Session 1Code for Startup MVP (Ruby on Rails) Session 1
Code for Startup MVP (Ruby on Rails) Session 1Henry S
 
Rails missing features
Rails missing featuresRails missing features
Rails missing featuresAstrails
 
Even faster web sites
Even faster web sitesEven faster web sites
Even faster web sitesFelipe Lavín
 
Onion Architecture with S#arp
Onion Architecture with S#arpOnion Architecture with S#arp
Onion Architecture with S#arpGary Pedretti
 
Web Development in Perl
Web Development in PerlWeb Development in Perl
Web Development in PerlNaveen Gupta
 
Crash Course HTML/Rails Slides
Crash Course HTML/Rails SlidesCrash Course HTML/Rails Slides
Crash Course HTML/Rails SlidesUdita Plaha
 
Web Development with Python and Django
Web Development with Python and DjangoWeb Development with Python and Django
Web Development with Python and DjangoMichael Pirnat
 
What’s New in Rails 5.0?
What’s New in Rails 5.0?What’s New in Rails 5.0?
What’s New in Rails 5.0?Unboxed
 
Tech leaders guide to effective building of machine learning products
Tech leaders guide to effective building of machine learning productsTech leaders guide to effective building of machine learning products
Tech leaders guide to effective building of machine learning productsGianmario Spacagna
 
Lunch and learn as3_frameworks
Lunch and learn as3_frameworksLunch and learn as3_frameworks
Lunch and learn as3_frameworksYuri Visser
 
C++ Windows Forms L01 - Intro
C++ Windows Forms L01 - IntroC++ Windows Forms L01 - Intro
C++ Windows Forms L01 - IntroMohammad Shaker
 
How to Build a Bespoke Page Builder in WordPress
How to Build a Bespoke Page Builder in WordPressHow to Build a Bespoke Page Builder in WordPress
How to Build a Bespoke Page Builder in WordPressGerald Glynn
 
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...Codemotion
 
Performance on Rails
Performance on RailsPerformance on Rails
Performance on RailsPedro Sousa
 
Atomic Design - An Event Apart San Diego
Atomic Design - An Event Apart San DiegoAtomic Design - An Event Apart San Diego
Atomic Design - An Event Apart San DiegoBrad Frost
 

Similar to Kimberly Blessing: The Web at 25 [Dec 2014] (20)

Killing the Angle Bracket
Killing the Angle BracketKilling the Angle Bracket
Killing the Angle Bracket
 
OSCon - Performance vs Scalability
OSCon - Performance vs ScalabilityOSCon - Performance vs Scalability
OSCon - Performance vs Scalability
 
Code for Startup MVP (Ruby on Rails) Session 1
Code for Startup MVP (Ruby on Rails) Session 1Code for Startup MVP (Ruby on Rails) Session 1
Code for Startup MVP (Ruby on Rails) Session 1
 
Rails missing features
Rails missing featuresRails missing features
Rails missing features
 
Even faster web sites
Even faster web sitesEven faster web sites
Even faster web sites
 
Onion Architecture with S#arp
Onion Architecture with S#arpOnion Architecture with S#arp
Onion Architecture with S#arp
 
Web Development in Perl
Web Development in PerlWeb Development in Perl
Web Development in Perl
 
Crash Course HTML/Rails Slides
Crash Course HTML/Rails SlidesCrash Course HTML/Rails Slides
Crash Course HTML/Rails Slides
 
Web Development with Python and Django
Web Development with Python and DjangoWeb Development with Python and Django
Web Development with Python and Django
 
What’s New in Rails 5.0?
What’s New in Rails 5.0?What’s New in Rails 5.0?
What’s New in Rails 5.0?
 
Tech leaders guide to effective building of machine learning products
Tech leaders guide to effective building of machine learning productsTech leaders guide to effective building of machine learning products
Tech leaders guide to effective building of machine learning products
 
Sinatra
SinatraSinatra
Sinatra
 
Sinatra
SinatraSinatra
Sinatra
 
Lunch and learn as3_frameworks
Lunch and learn as3_frameworksLunch and learn as3_frameworks
Lunch and learn as3_frameworks
 
C++ Windows Forms L01 - Intro
C++ Windows Forms L01 - IntroC++ Windows Forms L01 - Intro
C++ Windows Forms L01 - Intro
 
How to Build a Bespoke Page Builder in WordPress
How to Build a Bespoke Page Builder in WordPressHow to Build a Bespoke Page Builder in WordPress
How to Build a Bespoke Page Builder in WordPress
 
Using a CSS Framework
Using a CSS FrameworkUsing a CSS Framework
Using a CSS Framework
 
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
Perchè potresti aver bisogno di un database NoSQL anche se non sei Google o F...
 
Performance on Rails
Performance on RailsPerformance on Rails
Performance on Rails
 
Atomic Design - An Event Apart San Diego
Atomic Design - An Event Apart San DiegoAtomic Design - An Event Apart San Diego
Atomic Design - An Event Apart San Diego
 

Recently uploaded

From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...Product School
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...Product School
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesBhaskar Mitra
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualityInflectra
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf91mobiles
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...Product School
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)Ralf Eggert
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
 
КАТЕРИНА АБЗЯТОВА «Ефективне планування тестування ключові аспекти та практ...
КАТЕРИНА АБЗЯТОВА  «Ефективне планування тестування  ключові аспекти та практ...КАТЕРИНА АБЗЯТОВА  «Ефективне планування тестування  ключові аспекти та практ...
КАТЕРИНА АБЗЯТОВА «Ефективне планування тестування ключові аспекти та практ...QADay
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™UiPathCommunity
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...Sri Ambati
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backElena Simperl
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewPrayukth K V
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Thierry Lestable
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGuy Korland
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
 

Recently uploaded (20)

From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
AI for Every Business: Unlocking Your Product's Universal Potential by VP of ...
 
Search and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical FuturesSearch and Society: Reimagining Information Access for Radical Futures
Search and Society: Reimagining Information Access for Radical Futures
 
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered QualitySoftware Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
Software Delivery At the Speed of AI: Inflectra Invests In AI-Powered Quality
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdfSmart TV Buyer Insights Survey 2024 by 91mobiles.pdf
Smart TV Buyer Insights Survey 2024 by 91mobiles.pdf
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Ransomware Mallox [EN].pdf
Ransomware         Mallox       [EN].pdfRansomware         Mallox       [EN].pdf
Ransomware Mallox [EN].pdf
 
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdfFIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
FIDO Alliance Osaka Seminar: Passkeys and the Road Ahead.pdf
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
КАТЕРИНА АБЗЯТОВА «Ефективне планування тестування ключові аспекти та практ...
КАТЕРИНА АБЗЯТОВА  «Ефективне планування тестування  ключові аспекти та практ...КАТЕРИНА АБЗЯТОВА  «Ефективне планування тестування  ключові аспекти та практ...
КАТЕРИНА АБЗЯТОВА «Ефективне планування тестування ключові аспекти та практ...
 
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
Le nuove frontiere dell'AI nell'RPA con UiPath Autopilot™
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Knowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and backKnowledge engineering: from people to machines and back
Knowledge engineering: from people to machines and back
 
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 previewState of ICS and IoT Cyber Threat Landscape Report 2024 preview
State of ICS and IoT Cyber Threat Landscape Report 2024 preview
 
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
Empowering NextGen Mobility via Large Action Model Infrastructure (LAMI): pav...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 

Kimberly Blessing: The Web at 25 [Dec 2014]

  • 1. The Web at 25 Lessons Learned, Forgotten, and Rediscovered Kimberly Blessing Director, Think Brownstone www.kimberlyblessing.com @obiwankimberly
  • 4. CERN Web history projects  http://first-website.web.cern.ch/  http://line-mode.cern.ch/  https://github.com/cern-hackdays/lmb  @thefirstwebsite
  • 6. “Vague, but exciting…” From http://www.w3.org/History/1989/proposal.html
  • 8. Meeting with Robert Cailliau Image: CERN
  • 9. The first open-source software? Images: CERN
  • 10. A step back for Tim & Robert… Image: CERN
  • 11. More history lessons  “Nature abhors a vacuum”  Robert disagreed with the lack of an imperative programming language  “Be liberal in what you require but conservative in what you do”  Robert favored strict interpretation of HTML by the browser  The URL  The core invention of the Web, and the only part with a dependency on a centralized system
  • 14. Design approach  Follow as many of the core web principles as possible  Replicate the LMB user experience  Leverage as much of the modern browser stack as possible
  • 16. <header> or <head>? 1 <HEADER> 2 <TITLE>The World Wide Web project</TITLE> 3 <NEXTID N="55"> 4 </HEADER> 5 <BODY> Source from http://info.cern.ch/hypertext/WWW/TheProject.html
  • 17. <p> as a separator 6 <H1>World Wide Web</H1>The WorldWideWeb (W3) is a wide-area<A 7 NAME=0 HREF="WhatIs.html"> 8 hypermedia</A> information retrieval 9 initiative aiming to give universal 10 access to a large universe of documents.<P> Source from http://info.cern.ch/hypertext/WWW/TheProject.html
  • 18. <hp>? <h0>? 1027 case S_tag_h: 1028 1029 switch(character){ 1030 1031 case 'p': 1032 case 'P': 1033 state=S_high_phrase; 1034 break; 1035 1036 case '0': 1037 case '1': 1038 case '2': 1039 case '3': 1040 case '4': 1041 case '5': 1042 case '6': 1043 state = S_tag_h_num; 1044 heading_level = character; 1045 break; Source from WWW.c, version 0.12, dated 28-8-91
  • 19. The first style sheet! 176 /* Example Style Sheet */ 177 /* =================== */ 178 179 /* L1 L2 RM A C1 C2 DS LB LA 180 */ 181 PRIVATE para_style normal_style = { 3, 3, 0, 0, 0, 0, 0, 0, 0}; 182 183 PRIVATE para_style list_style = { 7, 10, 0, 0, 0, 0, 0, 1, 1}; 184 185 PRIVATE para_style glossary_style = { 7, 27, 0, 0, 0, 0, 0, 1, 1}; 186 187 PRIVATE para_style mono_style = { 0, 0, 0, 0, 0, 0, 0, 0, 0}; 188 189 PRIVATE para_style address_style = { 4, 4, 0, 1, 0, 0, 0, 0, 0}; 190 191 PRIVATE para_style heading_style[7] = { 192 193 /* TITLE */ { 0, 0, 0, 1, 0, 0, 0, 0, 1}, 194 195 /* H1 */ { 0, 0, 0, 2, 1, 1, 0, 1, 1}, 196 197 /* H2 */ { 0, 0, 0, 0, 1, 1, 0, 0, 0}, 198 199 /* H3 */ { 2, 2, 0, 0, 0, 0, 0, 0, 0}, 200 201 /* H4 */ { 4, 4, 0, 0, 0, 0, 0, 0, 0}, 202 203 /* H5 */ { 6, 6, 0, 0, 0, 0, 0, 0, 0}, 204 205 /* H6 */ { 8, 8, 0, 0, 0, 0, 0, 0, 0}, 206 207 } ; /* end of heading styles */ Source from WWW.c, version 0.12, dated 28-8-91
  • 21. And in the end…
  • 22. Simulation solution  310 lines of server-side (Node.js) JavaScript  Proxies HTTP requests/responses  Strips “unknown” tags and the author’s CSS  Injects our custom CSS and the LMB command line  265 lines of CSS  354 lines of client-side JavaScript  HTML5 audio for mechanical keyboard sounds  Canvas to mimic character-by-character rendering  Handling of command line input  Bookmarklet in 119 lines of JavaScript
  • 23. Visiting the web’s birthplace (a hallway)
  • 24. Learning from history  “The web being simple and forgiving has led to its enormous growth” –Robert Cailliau  Minimum viable product  Iterate early in a product’s lifecycle
  • 25. Return to original design principles  Simplicity  Modularity  Tolerance  Decentralization  Principle of least power From http://www.w3.org/DesignIssues/Principles.html
  • 26. Concerns about the Web today  Information system or application platform?  Great for bringing basic CS skills to all  Current client-side application paradigms make content a second-class citizen  The Web is not for all  We’re still fighting for accessibility  Video content is surpassing all other types  No new, great society – walled gardens remain
  • 27. Be good stewards of the Web  “Cool URLs don’t change”  Content first  Hypermedia APIs  Backwards compatible and future friendly  Progressively enhanced  Power of the hyperlink
  • 28. Kimberly Blessing www.kimberlyblessing.com @obiwankimberly Slide: Robert Cailliau Uncredited photos by me, available at: https://www.flickr.com/photos/kimberlyblessing/sets/72157635666193726/