SlideShare una empresa de Scribd logo
1 de 53
Descargar para leer sin conexión
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic
The Radiant Ethic

Más contenido relacionado

Más de Sean Cribbs

Embrace NoSQL and Eventual Consistency with Ripple
Embrace NoSQL and Eventual Consistency with RippleEmbrace NoSQL and Eventual Consistency with Ripple
Embrace NoSQL and Eventual Consistency with RippleSean Cribbs
 
Riak (Øredev nosql day)
Riak (Øredev nosql day)Riak (Øredev nosql day)
Riak (Øredev nosql day)Sean Cribbs
 
Riak Tutorial (Øredev)
Riak Tutorial (Øredev)Riak Tutorial (Øredev)
Riak Tutorial (Øredev)Sean Cribbs
 
Introduction to Riak and Ripple (KC.rb)
Introduction to Riak and Ripple (KC.rb)Introduction to Riak and Ripple (KC.rb)
Introduction to Riak and Ripple (KC.rb)Sean Cribbs
 
Schema Design for Riak
Schema Design for RiakSchema Design for Riak
Schema Design for RiakSean Cribbs
 
Introduction to Riak - Red Dirt Ruby Conf Training
Introduction to Riak - Red Dirt Ruby Conf TrainingIntroduction to Riak - Red Dirt Ruby Conf Training
Introduction to Riak - Red Dirt Ruby Conf TrainingSean Cribbs
 
Introducing Riak and Ripple
Introducing Riak and RippleIntroducing Riak and Ripple
Introducing Riak and RippleSean Cribbs
 
Round PEG, Round Hole - Parsing Functionally
Round PEG, Round Hole - Parsing FunctionallyRound PEG, Round Hole - Parsing Functionally
Round PEG, Round Hole - Parsing FunctionallySean Cribbs
 
Story Driven Development With Cucumber
Story Driven Development With CucumberStory Driven Development With Cucumber
Story Driven Development With CucumberSean Cribbs
 
Achieving Parsing Sanity In Erlang
Achieving Parsing Sanity In ErlangAchieving Parsing Sanity In Erlang
Achieving Parsing Sanity In ErlangSean Cribbs
 
Of Rats And Dragons
Of Rats And DragonsOf Rats And Dragons
Of Rats And DragonsSean Cribbs
 
Erlang/OTP for Rubyists
Erlang/OTP for RubyistsErlang/OTP for Rubyists
Erlang/OTP for RubyistsSean Cribbs
 
Content Management That Won't Rot Your Brain
Content Management That Won't Rot Your BrainContent Management That Won't Rot Your Brain
Content Management That Won't Rot Your BrainSean Cribbs
 

Más de Sean Cribbs (13)

Embrace NoSQL and Eventual Consistency with Ripple
Embrace NoSQL and Eventual Consistency with RippleEmbrace NoSQL and Eventual Consistency with Ripple
Embrace NoSQL and Eventual Consistency with Ripple
 
Riak (Øredev nosql day)
Riak (Øredev nosql day)Riak (Øredev nosql day)
Riak (Øredev nosql day)
 
Riak Tutorial (Øredev)
Riak Tutorial (Øredev)Riak Tutorial (Øredev)
Riak Tutorial (Øredev)
 
Introduction to Riak and Ripple (KC.rb)
Introduction to Riak and Ripple (KC.rb)Introduction to Riak and Ripple (KC.rb)
Introduction to Riak and Ripple (KC.rb)
 
Schema Design for Riak
Schema Design for RiakSchema Design for Riak
Schema Design for Riak
 
Introduction to Riak - Red Dirt Ruby Conf Training
Introduction to Riak - Red Dirt Ruby Conf TrainingIntroduction to Riak - Red Dirt Ruby Conf Training
Introduction to Riak - Red Dirt Ruby Conf Training
 
Introducing Riak and Ripple
Introducing Riak and RippleIntroducing Riak and Ripple
Introducing Riak and Ripple
 
Round PEG, Round Hole - Parsing Functionally
Round PEG, Round Hole - Parsing FunctionallyRound PEG, Round Hole - Parsing Functionally
Round PEG, Round Hole - Parsing Functionally
 
Story Driven Development With Cucumber
Story Driven Development With CucumberStory Driven Development With Cucumber
Story Driven Development With Cucumber
 
Achieving Parsing Sanity In Erlang
Achieving Parsing Sanity In ErlangAchieving Parsing Sanity In Erlang
Achieving Parsing Sanity In Erlang
 
Of Rats And Dragons
Of Rats And DragonsOf Rats And Dragons
Of Rats And Dragons
 
Erlang/OTP for Rubyists
Erlang/OTP for RubyistsErlang/OTP for Rubyists
Erlang/OTP for Rubyists
 
Content Management That Won't Rot Your Brain
Content Management That Won't Rot Your BrainContent Management That Won't Rot Your Brain
Content Management That Won't Rot Your Brain
 

Último

Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 

Último (20)

Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

Notas del editor

  1. *** T/BDD, Test-first *** DRY *** Convention over configuration *** "Beautiful code" **** Efficiency, Expressivity, Elegance
  2. [Why is this ethical/moral?] *** Originally for ruby-lang.org *** "Static++" - flat, but easy to do typical site-management tasks *** Always had auto-expiring page cache **** 2006 custom-built expiring page cache (YML + content) **** 2009 converted to customized Rack::Cache (HTTP-friendly) *** Page/parts/snippets/layouts model strikes balance between generation and curation
  3. [Why is this ethical/moral?] *** Originally for ruby-lang.org *** "Static++" - flat, but easy to do typical site-management tasks *** Always had auto-expiring page cache **** 2006 custom-built expiring page cache (YML + content) **** 2009 converted to customized Rack::Cache (HTTP-friendly) *** Page/parts/snippets/layouts model strikes balance between generation and curation
  4. [Explain Pilsbury dough boy - tastes great, but leaves you fatter and wondering the contents of what you ate] [Why is this ethical/moral?] Core is < 6000 LOC (not including tests) Move non-core things to extensions and libraries Stand on others’ shoulders (Rails, Rack::Cache, RedCloth)
  5. [Why is this ethical/moral?] *** if-else vs. ternary operator *** tag design - if/unless, first/last (designer and content-model focused, not generic) *** Haml - simplifies default templates, emphasizes structure *** avoiding long chains of methods *** List for page tree is more pure, but harder to control and extend - uses table with classes
  6. [Why is this ethical/moral?] *** if-else vs. ternary operator *** tag design - if/unless, first/last (designer and content-model focused, not generic) *** Haml - simplifies default templates, emphasizes structure *** avoiding long chains of methods *** List for page tree is more pure, but harder to control and extend - uses table with classes
  7. [Why is this ethical/moral?] *** if-else vs. ternary operator *** tag design - if/unless, first/last (designer and content-model focused, not generic) *** Haml - simplifies default templates, emphasizes structure *** avoiding long chains of methods *** List for page tree is more pure, but harder to control and extend - uses table with classes
  8. [Why is this ethical/moral?] *** if-else vs. ternary operator *** tag design - if/unless, first/last (designer and content-model focused, not generic) *** Haml - simplifies default templates, emphasizes structure *** avoiding long chains of methods *** List for page tree is more pure, but harder to control and extend - uses table with classes
  9. [Why is this ethical/moral?] No ivory-tower content model No standard: * comment system * file-management * version-control * event calendar... etc.
  10. [Why is this ethical/moral?] 241 Extensions in the registry. Top 3 types: 1) Tweaks to admin UI or data model 2) Enhancements to page capabilities 3) Integration with external services and APIs Some core features are moving into extensions
  11. The simplicity, clarity and strong principles of Radiant have inspired others to copy it (Frog and Wolf) or take it as the basis for new systems (Webvanta), or even write reactions to it (Browser CMS).
  12. Extensions: proliferate, enable developer freedom Tags: some of my favorites are yield, children:if_first/last, aggregate
  13. Extensions: proliferate, enable developer freedom Tags: some of my favorites are yield, children:if_first/last, aggregate
  14. Extensions: proliferate, enable developer freedom Tags: some of my favorites are yield, children:if_first/last, aggregate
  15. Extensions: proliferate, enable developer freedom Tags: some of my favorites are yield, children:if_first/last, aggregate
  16. Extensions: proliferate, enable developer freedom Tags: some of my favorites are yield, children:if_first/last, aggregate
  17. Extensions: proliferate, enable developer freedom Tags: some of my favorites are yield, children:if_first/last, aggregate
  18. Static Lean code Clarity General usefulness New features in extensions
  19. Static Lean code Clarity General usefulness New features in extensions
  20. Static Lean code Clarity General usefulness New features in extensions
  21. Static Lean code Clarity General usefulness New features in extensions
  22. Static Lean code Clarity General usefulness New features in extensions
  23. Extensions and initializers are difficult to test code that is hyper-critical to the system. Extensions were a hack around Rails’ weak plugin system in 1.1+, but break many boundaries of modularity. Rails 3 Engines are better. Admin::ResourceController - lots of class_eval, class-level DSLs, unclear design decisions.
  24. Extensions and initializers are difficult to test code that is hyper-critical to the system. Extensions were a hack around Rails’ weak plugin system in 1.1+, but break many boundaries of modularity. Rails 3 Engines are better. Admin::ResourceController - lots of class_eval, class-level DSLs, unclear design decisions.
  25. Extensions and initializers are difficult to test code that is hyper-critical to the system. Extensions were a hack around Rails’ weak plugin system in 1.1+, but break many boundaries of modularity. Rails 3 Engines are better. Admin::ResourceController - lots of class_eval, class-level DSLs, unclear design decisions.
  26. Extensions and initializers are difficult to test code that is hyper-critical to the system. Extensions were a hack around Rails’ weak plugin system in 1.1+, but break many boundaries of modularity. Rails 3 Engines are better. Admin::ResourceController - lots of class_eval, class-level DSLs, unclear design decisions.