SlideShare a Scribd company logo
1 of 14
Rails Spinoff's - I
Karthikeyan.ak@originlearning.com
David Heinemeier Hansson
Rails Motto
● Developer Productivity
● Agile
● Have a lot of free time
● Don't Strain
● Don't Panic
● Lead, don't follow
Spinoffs
Opal Js
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="application/xhtml+xml;charset=utf-8" />
<?php if ($title) { ?>
<title><?php echo $title; ?></title>
<?php } else { ?>
<title><?php echo $pagename; ?></title>
<?php } ?>
</head>
<body>
<div id="header">
<h1><?php echo $pagename; ?></h1>
<?php if ($slogan) { ?>
<span><?php echo $slogan; ?></span>
<?php } ?>
</div>
<div id="content">
<table class="config list">
<tr><th>ID</th><th>Name</th><th>Value</th></tr>
<?php foreach ($config as $c) { ?>
<tr class="<?php echo ($class = forClassName($c)); ?>"
id="<?php echo "$class_{$c->ID}"; ?>">
<td><?php echo $c->ID; ?></td>
<td><?php echo $c->name; ?></td>
<td><?php echo $c->value; ?></td>
</tr>
<?php } ?>
</table>
</div>
<div id="footer">
<span class="author">Random Hacker</span>
</div>
</body>
</html>
!!! 1.1
%html
%head
%meta{ :http-equiv => 'Content-Type', :content => 'application/xhtml+xml;charset=utf-8' }
- if ($title)
%title= $title
- else
%title= $pagename
%body
#header
%h1 Example page
- if ($slogan)
%span= $slogan
#content
%table.config.list
%tr
%th ID
%th Name
%th Value
- foreach ($config as $c)
%tr[$c]
%td= $c->ID
%td= $c->name
%td= $c->value
#footer
%span.author Random Hacker
http://haml.info/
http://phphaml.sourceforge.net/
http://html2haml.heroku.com/
Dreamweavr Integration
As far as I know.
No.
Dreamweavr Integration
As far as I know.
No.
Enjoy Life!

More Related Content

What's hot

Drupal7 Theming session on the occassion of Drupal7 release party in Delhi NCR
Drupal7 Theming session on the occassion of  Drupal7 release party in Delhi NCRDrupal7 Theming session on the occassion of  Drupal7 release party in Delhi NCR
Drupal7 Theming session on the occassion of Drupal7 release party in Delhi NCRGaurav Mishra
 
Towards an Alternate WordPress Theme Structure
Towards an Alternate WordPress Theme StructureTowards an Alternate WordPress Theme Structure
Towards an Alternate WordPress Theme StructureGraham Armfield
 
link ke Http
link ke Httplink ke Http
link ke Httpdenisiak
 
Introducing thymeleaf
Introducing thymeleafIntroducing thymeleaf
Introducing thymeleafeiryu
 
Advanced javascript with eZ Publish
Advanced javascript with eZ PublishAdvanced javascript with eZ Publish
Advanced javascript with eZ PublishDavid Hohl
 

What's hot (6)

Drupal7 Theming session on the occassion of Drupal7 release party in Delhi NCR
Drupal7 Theming session on the occassion of  Drupal7 release party in Delhi NCRDrupal7 Theming session on the occassion of  Drupal7 release party in Delhi NCR
Drupal7 Theming session on the occassion of Drupal7 release party in Delhi NCR
 
Towards an Alternate WordPress Theme Structure
Towards an Alternate WordPress Theme StructureTowards an Alternate WordPress Theme Structure
Towards an Alternate WordPress Theme Structure
 
link ke Http
link ke Httplink ke Http
link ke Http
 
Youfreemovies
YoufreemoviesYoufreemovies
Youfreemovies
 
Introducing thymeleaf
Introducing thymeleafIntroducing thymeleaf
Introducing thymeleaf
 
Advanced javascript with eZ Publish
Advanced javascript with eZ PublishAdvanced javascript with eZ Publish
Advanced javascript with eZ Publish
 

Viewers also liked

Selling products and services with word press
Selling products and services with word pressSelling products and services with word press
Selling products and services with word pressMichelle Castillo
 
Flipchart vulcanismo
Flipchart vulcanismoFlipchart vulcanismo
Flipchart vulcanismoMaria Santos
 
University of Wollongong - Peter Eklund
University of Wollongong - Peter Eklund University of Wollongong - Peter Eklund
University of Wollongong - Peter Eklund Collaborative Solutions
 
Concours de cartes de voeux France 2012
Concours de cartes de voeux France 2012Concours de cartes de voeux France 2012
Concours de cartes de voeux France 2012Francuski.fr
 
Agribusiness in the XXI Century - Black Sea Economic Forum
Agribusiness in the XXI Century - Black Sea Economic ForumAgribusiness in the XXI Century - Black Sea Economic Forum
Agribusiness in the XXI Century - Black Sea Economic ForumNOVIROST Limited
 
Transformation class 02.12.2012
Transformation class 02.12.2012Transformation class 02.12.2012
Transformation class 02.12.2012Ken White
 
God’s direction for my life
God’s direction for my lifeGod’s direction for my life
God’s direction for my lifeKen White
 

Viewers also liked (10)

Selling products and services with word press
Selling products and services with word pressSelling products and services with word press
Selling products and services with word press
 
Flipchart vulcanismo
Flipchart vulcanismoFlipchart vulcanismo
Flipchart vulcanismo
 
University of Wollongong - Peter Eklund
University of Wollongong - Peter Eklund University of Wollongong - Peter Eklund
University of Wollongong - Peter Eklund
 
Destination NSW - Chris Rivett
Destination NSW - Chris Rivett Destination NSW - Chris Rivett
Destination NSW - Chris Rivett
 
Concours de cartes de voeux France 2012
Concours de cartes de voeux France 2012Concours de cartes de voeux France 2012
Concours de cartes de voeux France 2012
 
Imagen global sistemas_ivc
Imagen global sistemas_ivcImagen global sistemas_ivc
Imagen global sistemas_ivc
 
Agribusiness in the XXI Century - Black Sea Economic Forum
Agribusiness in the XXI Century - Black Sea Economic ForumAgribusiness in the XXI Century - Black Sea Economic Forum
Agribusiness in the XXI Century - Black Sea Economic Forum
 
Cetera Labs
Cetera LabsCetera Labs
Cetera Labs
 
Transformation class 02.12.2012
Transformation class 02.12.2012Transformation class 02.12.2012
Transformation class 02.12.2012
 
God’s direction for my life
God’s direction for my lifeGod’s direction for my life
God’s direction for my life
 

Similar to Rails sopinoffs - Haml

Grok Drupal (7) Theming - 2011 Feb update
Grok Drupal (7) Theming - 2011 Feb updateGrok Drupal (7) Theming - 2011 Feb update
Grok Drupal (7) Theming - 2011 Feb updateLaura Scott
 
0017text[1].Txt.Xhtml
0017text[1].Txt.Xhtml0017text[1].Txt.Xhtml
0017text[1].Txt.XhtmlHOME
 
0016text[1].Txt.Xhtml
0016text[1].Txt.Xhtml0016text[1].Txt.Xhtml
0016text[1].Txt.XhtmlHOME
 
Diazo: Bridging Designers and Programmers
Diazo: Bridging Designers and ProgrammersDiazo: Bridging Designers and Programmers
Diazo: Bridging Designers and ProgrammersTsungWei Hu
 
0035text[1].Txt.Xhtml
0035text[1].Txt.Xhtml0035text[1].Txt.Xhtml
0035text[1].Txt.XhtmlHOME
 
Developing Your Ultimate Package
Developing Your Ultimate PackageDeveloping Your Ultimate Package
Developing Your Ultimate PackageSimon Collison
 
Joomla! Day Chicago 2011 - Templating the right way - Jonathan Shroyer
Joomla! Day Chicago 2011 - Templating the right way - Jonathan ShroyerJoomla! Day Chicago 2011 - Templating the right way - Jonathan Shroyer
Joomla! Day Chicago 2011 - Templating the right way - Jonathan ShroyerSteven Pignataro
 
Developing a Web Application
Developing a Web ApplicationDeveloping a Web Application
Developing a Web ApplicationRabab Gomaa
 
Grok Drupal (7) Theming
Grok Drupal (7) ThemingGrok Drupal (7) Theming
Grok Drupal (7) ThemingPINGV
 
Web Design Bootcamp - Day1
Web Design Bootcamp - Day1Web Design Bootcamp - Day1
Web Design Bootcamp - Day1Aslam Najeebdeen
 
Introduction to web development
Introduction to web developmentIntroduction to web development
Introduction to web developmentAlberto Apellidos
 
Moz SEO Web cheat sheet 2016
Moz SEO Web cheat sheet 2016Moz SEO Web cheat sheet 2016
Moz SEO Web cheat sheet 2016Nirav Patel
 
The Web Developer's SEO Cheat Sheet
The Web Developer's SEO Cheat Sheet The Web Developer's SEO Cheat Sheet
The Web Developer's SEO Cheat Sheet Shubham Kumar Singh
 

Similar to Rails sopinoffs - Haml (20)

Grok Drupal (7) Theming - 2011 Feb update
Grok Drupal (7) Theming - 2011 Feb updateGrok Drupal (7) Theming - 2011 Feb update
Grok Drupal (7) Theming - 2011 Feb update
 
0017text[1].Txt.Xhtml
0017text[1].Txt.Xhtml0017text[1].Txt.Xhtml
0017text[1].Txt.Xhtml
 
0016text[1].Txt.Xhtml
0016text[1].Txt.Xhtml0016text[1].Txt.Xhtml
0016text[1].Txt.Xhtml
 
Learning HTML
Learning HTMLLearning HTML
Learning HTML
 
Diazo: Bridging Designers and Programmers
Diazo: Bridging Designers and ProgrammersDiazo: Bridging Designers and Programmers
Diazo: Bridging Designers and Programmers
 
0035text[1].Txt.Xhtml
0035text[1].Txt.Xhtml0035text[1].Txt.Xhtml
0035text[1].Txt.Xhtml
 
Developing Your Ultimate Package
Developing Your Ultimate PackageDeveloping Your Ultimate Package
Developing Your Ultimate Package
 
Html5 nl
Html5 nlHtml5 nl
Html5 nl
 
Joomla! Day Chicago 2011 - Templating the right way - Jonathan Shroyer
Joomla! Day Chicago 2011 - Templating the right way - Jonathan ShroyerJoomla! Day Chicago 2011 - Templating the right way - Jonathan Shroyer
Joomla! Day Chicago 2011 - Templating the right way - Jonathan Shroyer
 
Developing a Web Application
Developing a Web ApplicationDeveloping a Web Application
Developing a Web Application
 
Grok Drupal (7) Theming
Grok Drupal (7) ThemingGrok Drupal (7) Theming
Grok Drupal (7) Theming
 
Web Design Bootcamp - Day1
Web Design Bootcamp - Day1Web Design Bootcamp - Day1
Web Design Bootcamp - Day1
 
Html5
Html5Html5
Html5
 
Apex & jQuery Mobile
Apex & jQuery MobileApex & jQuery Mobile
Apex & jQuery Mobile
 
Introduction to web development
Introduction to web developmentIntroduction to web development
Introduction to web development
 
Seo Cheat Sheet
Seo Cheat SheetSeo Cheat Sheet
Seo Cheat Sheet
 
Seo cheat-sheet
Seo cheat-sheetSeo cheat-sheet
Seo cheat-sheet
 
Moz SEO Web cheat sheet 2016
Moz SEO Web cheat sheet 2016Moz SEO Web cheat sheet 2016
Moz SEO Web cheat sheet 2016
 
Seo cheat-sheet
Seo cheat-sheetSeo cheat-sheet
Seo cheat-sheet
 
The Web Developer's SEO Cheat Sheet
The Web Developer's SEO Cheat Sheet The Web Developer's SEO Cheat Sheet
The Web Developer's SEO Cheat Sheet
 

More from Karthikeyan A K

More from Karthikeyan A K (6)

Web 3.0
Web 3.0Web 3.0
Web 3.0
 
Large scale web apps
Large scale web appsLarge scale web apps
Large scale web apps
 
The magic of ruby
The magic of rubyThe magic of ruby
The magic of ruby
 
Data Structure
Data StructureData Structure
Data Structure
 
C programming
C programmingC programming
C programming
 
ICT C++
ICT C++ ICT C++
ICT C++
 

Recently uploaded

How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfSrushith Repakula
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!Memoori
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsLeah Henrickson
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfFIDO Alliance
 
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfBreaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfUK Journal
 
Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024Enterprise Knowledge
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform EngineeringMarcus Vechiato
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentationyogeshlabana357357
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty SecureFemke de Vroome
 
Your enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4jYour enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4jNeo4j
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?Mark Billinghurst
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...FIDO Alliance
 
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPTiSEO AI
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024Lorenzo Miniero
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaCzechDreamin
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfFIDO Alliance
 
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimaginedpanagenda
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Hiroshi SHIBATA
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Patrick Viafore
 

Recently uploaded (20)

How we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdfHow we scaled to 80K users by doing nothing!.pdf
How we scaled to 80K users by doing nothing!.pdf
 
State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!State of the Smart Building Startup Landscape 2024!
State of the Smart Building Startup Landscape 2024!
 
Overview of Hyperledger Foundation
Overview of Hyperledger FoundationOverview of Hyperledger Foundation
Overview of Hyperledger Foundation
 
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on ThanabotsContinuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
Continuing Bonds Through AI: A Hermeneutic Reflection on Thanabots
 
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdfThe Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
The Value of Certifying Products for FDO _ Paul at FIDO Alliance.pdf
 
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdfBreaking Down the Flutterwave Scandal What You Need to Know.pdf
Breaking Down the Flutterwave Scandal What You Need to Know.pdf
 
Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024Enterprise Knowledge Graphs - Data Summit 2024
Enterprise Knowledge Graphs - Data Summit 2024
 
Working together SRE & Platform Engineering
Working together SRE & Platform EngineeringWorking together SRE & Platform Engineering
Working together SRE & Platform Engineering
 
AI mind or machine power point presentation
AI mind or machine power point presentationAI mind or machine power point presentation
AI mind or machine power point presentation
 
ECS 2024 Teams Premium - Pretty Secure
ECS 2024   Teams Premium - Pretty SecureECS 2024   Teams Premium - Pretty Secure
ECS 2024 Teams Premium - Pretty Secure
 
Your enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4jYour enemies use GenAI too - staying ahead of fraud with Neo4j
Your enemies use GenAI too - staying ahead of fraud with Neo4j
 
The Metaverse: Are We There Yet?
The  Metaverse:    Are   We  There  Yet?The  Metaverse:    Are   We  There  Yet?
The Metaverse: Are We There Yet?
 
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
Secure Zero Touch enabled Edge compute with Dell NativeEdge via FDO _ Brad at...
 
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
1111 ChatGPT Prompts PDF Free Download - Prompts for ChatGPT
 
WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024WebRTC and SIP not just audio and video @ OpenSIPS 2024
WebRTC and SIP not just audio and video @ OpenSIPS 2024
 
Powerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara LaskowskaPowerful Start- the Key to Project Success, Barbara Laskowska
Powerful Start- the Key to Project Success, Barbara Laskowska
 
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdfHow Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
How Red Hat Uses FDO in Device Lifecycle _ Costin and Vitaliy at Red Hat.pdf
 
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties ReimaginedEasier, Faster, and More Powerful – Notes Document Properties Reimagined
Easier, Faster, and More Powerful – Notes Document Properties Reimagined
 
Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024Long journey of Ruby Standard library at RubyKaigi 2024
Long journey of Ruby Standard library at RubyKaigi 2024
 
Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024Extensible Python: Robustness through Addition - PyCon 2024
Extensible Python: Robustness through Addition - PyCon 2024
 

Rails sopinoffs - Haml

  • 1. Rails Spinoff's - I Karthikeyan.ak@originlearning.com
  • 3.
  • 4.
  • 5.
  • 6.
  • 7. Rails Motto ● Developer Productivity ● Agile ● Have a lot of free time ● Don't Strain ● Don't Panic ● Lead, don't follow
  • 9.
  • 10. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"> <html> <head> <meta http-equiv="Content-Type" content="application/xhtml+xml;charset=utf-8" /> <?php if ($title) { ?> <title><?php echo $title; ?></title> <?php } else { ?> <title><?php echo $pagename; ?></title> <?php } ?> </head> <body> <div id="header"> <h1><?php echo $pagename; ?></h1> <?php if ($slogan) { ?> <span><?php echo $slogan; ?></span> <?php } ?> </div> <div id="content"> <table class="config list"> <tr><th>ID</th><th>Name</th><th>Value</th></tr> <?php foreach ($config as $c) { ?> <tr class="<?php echo ($class = forClassName($c)); ?>" id="<?php echo "$class_{$c->ID}"; ?>"> <td><?php echo $c->ID; ?></td> <td><?php echo $c->name; ?></td> <td><?php echo $c->value; ?></td> </tr> <?php } ?> </table> </div> <div id="footer"> <span class="author">Random Hacker</span> </div> </body> </html> !!! 1.1 %html %head %meta{ :http-equiv => 'Content-Type', :content => 'application/xhtml+xml;charset=utf-8' } - if ($title) %title= $title - else %title= $pagename %body #header %h1 Example page - if ($slogan) %span= $slogan #content %table.config.list %tr %th ID %th Name %th Value - foreach ($config as $c) %tr[$c] %td= $c->ID %td= $c->name %td= $c->value #footer %span.author Random Hacker