SlideShare a Scribd company logo
WebMatrix: See What the
Matrix Can Do For You!!
Frederic Harper
Developer Evangelist
Microsoft Canada

DevTeach Ottawa
Agenda
•   What is WebMatrix?
•   Who is WebMatrix for?
•   Razor syntax
•   Database access
•   Helpers
•   App Gallery & OSS Apps
My goals
My goals
My goals

1. Show you how it’s easy to use WebMatrix to

   create awesome websites or Web applications
WebMatrix
What is WebMatrix
It’s a free tool that makes it easy to

   Create
   Configure
   Publish
your websites and web applications
What is WebMatrix
1. Web App Gallery & Templates
What is WebMatrix
1. Web App Gallery & Templates
2. Web Server: IIS Express
What is WebMatrix
1. Web App Gallery & Templates
2. Web Server: IIS Express
3. Standards Support: HTML, CSS, JavaScript
What is WebMatrix
1. Web App Gallery & Templates
2. Web Server: IIS Express
3. Standards Support: HTML, CSS, JavaScript
4. Scripting Support: ASP.NET & PHP
What is WebMatrix
1. Web App Gallery & Templates
2. Web Server: IIS Express
3. Standards Support: HTML, CSS, JavaScript
4. Scripting Support: ASP.NET & PHP
5. DB Manager: SQL Server & MySQL
What is WebMatrix
1. Web App Gallery & Templates
2. Web Server: IIS Express
3. Standards Support: HTML, CSS, JavaScript
4. Scripting Support: ASP.NET & PHP
5. DB Manager: SQL Server & MySQL
6. Optimization Tools: SEO & Performance
demo
A lap around WebMatrix
Who is WebMatrix for?




       I <3 Web Apps.        I want to build web      I’m a professional
   I just need a tool that   sites myself with an    software developer
   makes them easier to        easy to learn tool   and I build complex,
    configure, customize        and framework       large scale web sites
         and publish                                    with a team of
                                                         developers
Two ways to build
Two ways to build
         Option A:
       From Scratch
Two ways to build
         Option A:       Option B:
       From Scratch   From Web App
demo
Create a website from template
Razor
What is Razor
What is Razor
1. A new view engine
What is Razor
1. A new view engine
2. Compact, Expressive, and Fluid
What is Razor
1. A new view engine
2. Compact, Expressive, and Fluid
3. Easy to Learn
What is Razor
1. A new view engine
2. Compact, Expressive, and Fluid
3. Easy to Learn
4. Is not a new language
What is Razor
1. A new view engine
2. Compact, Expressive, and Fluid
3. Easy to Learn
4. Is not a new language
5. Works with any Text Editor
What is Razor
1. A new view engine
2. Compact, Expressive, and Fluid
3. Easy to Learn
4. Is not a new language
5. Works with any Text Editor
6. Has great Intellisense
What is Razor
1. A new view engine
2. Compact, Expressive, and Fluid
3. Easy to Learn
4. Is not a new language
5. Works with any Text Editor
6. Has great Intellisense
7. Unit Testable
Introducing Razor
                             <ul>
        Web Forms              <% for (int i = 0; i < 10; i++) { %>
                                 <li><% =i %></li>
      (6 transitions):         <% } %>
                             </ul>

                             <ul>
                               <?php
                                  for ($i = 0; $i < 10; $i++) {
            PHP                      echo("<li>$i</li>");
(2 transitions & an echo):        }
                               ?>
                             </ul>

                             <ul>
                               @for (int i = 0; i < 10; i++) {
           Razor                 <li>@i</li>
      (2 transitions):         }
                             </ul>
Code to markup easily
                         @{
      Option 1:               var name = “John Doe”;
                              <div>
     HTML Block                 Your name: @name
                              </div>
                         }

                         @{
                              var name = “John Doe”;
      Option 2:               <text>
      Text Block                Your name: @name
                              </text>
                         }

                         @{
       Option 3:              var name = “John Doe”;
 Single line of output        @: Your name: @name
      in markup          }
Commenting
              @*
  Option 1:     <div>
  Markup          Hello World
                </div>
              *@


              @{
  Option 2:     //var name = "John Doe”;
   Code         //@name
              }


              @*
                @{
  Option 3:       //var name = "John Doe";
   Both           //@name
                }
              *@
demo
Simple Razor syntax demo
Database
Database
• SQL Compact Edition
   • File-based, so it’s portable. Runs without a server.
• Easy to design, easy to code against
Designing


                                                                          Coding
                            @{
                              var db = Database.Open("ArtGallery");
                              var product = db.Query("SELECT * FROM PRODUCTS);
                            }
demo
Database access
Helpers
What are Helpers?
Helpers make it easy to quickly add commonly used
functionality into your websites




                                       and many more…
Two categories
HTML Helpers                Make is faster and easier to
                             render commonly used
  • Facebook                   markup to the page.
  • Twitter
  • …

API Helpers                  Make is faster and easier
                            to call complex APIs from
  • PayPal                         your website.
  • Windows Azure Storage
  • …
demo
Helpers
App Gallery & OSS Apps
OSS Apps
1.   Free
2.   Popular = large community
3.   Gets you close to the solution quickly
4.   Easy to configure
Build on the success of Web PI
                              Web Platform Installer   WebMatrix

Download                                                 

                                        
Install (inc. dependencies)                               

Customize                                                 

SEO Analysis                                              

Publish                                                   
demo
App Gallery & Wordpress in the box
Conclusion
Next steps
1. Install WebMatrix
Next steps
1. Install WebMatrix

2. Play with it

  1. Create a new website with templates or from scratch

  2. Edit an existing one

   3. Deploy an app by using the App Gallery
Next steps
1. Install WebMatrix

2. Play with it

  1. Create a new website with templates or from scratch

  2. Edit an existing one

   3. Deploy an app by using the App Gallery

3. Unleash the power of the Matrix & have fun
Resources
• http://microsoft.com/web/webmatrix

• http://asp.net/webmatrixresource (v1 tutorials)

• http://www.webnotwar.ca/
Q&A
Contact me
       Frederic Harper, Developer Evangelist

fredh@microsoft.com
@fharper

http://webnotwar.ca
http://outofcomfortzone.net
© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should
                          not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
                                                  MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

More Related Content

PDF
WebMatrix, see what the matrix can do for you!!
PPTX
Prairie Dev Con West - 2012-03-14 - Webmatrix, see what the matrix can do fo...
ODP
HTML5 e CSS3 (slides della sessione tenuta al DIMI di Udine)
DOCX
Step 8_7_ 6_5_4_3_2_ 1 in one_Tutorial for Begineer on Selenium Web Driver-Te...
PDF
Essential Javascript -- A Javascript &lt;b>Tutorial&lt;/b>
PDF
Creating chrome-extension
PPTX
JavaScript Basic
PPTX
Beyond Comments: How to Build an Awesome API Doc and Be a Better Person
WebMatrix, see what the matrix can do for you!!
Prairie Dev Con West - 2012-03-14 - Webmatrix, see what the matrix can do fo...
HTML5 e CSS3 (slides della sessione tenuta al DIMI di Udine)
Step 8_7_ 6_5_4_3_2_ 1 in one_Tutorial for Begineer on Selenium Web Driver-Te...
Essential Javascript -- A Javascript &lt;b>Tutorial&lt;/b>
Creating chrome-extension
JavaScript Basic
Beyond Comments: How to Build an Awesome API Doc and Be a Better Person

What's hot (18)

PPTX
Chrome Extension
PDF
HTML5 for the Silverlight Guy
PDF
PDF
Adobe AIR Overview
KEY
Dive Into Chrome-100119
PDF
Firefox
PPTX
Firefox OS - The platform you deserve - Firefox OS Budapest workshop - 2013-1...
PDF
Asp.net w3schools
PDF
KharkivJS: Flaws of the Web Components in 2019 and how to address them
PDF
Custom YUI Widgets
PDF
HTML5 Introduction
PDF
How to make Ajax work for you
PDF
HTML5: features with examples
PPTX
Think Before You Submit Themes on WordPress dot Org
PDF
Intro to html 5
PPT
Ajax World 2008
PPT
Ajaxworld March 2008 - Jeff Haynie Keynote - Appcelerator
POT
Browser extension
Chrome Extension
HTML5 for the Silverlight Guy
Adobe AIR Overview
Dive Into Chrome-100119
Firefox
Firefox OS - The platform you deserve - Firefox OS Budapest workshop - 2013-1...
Asp.net w3schools
KharkivJS: Flaws of the Web Components in 2019 and how to address them
Custom YUI Widgets
HTML5 Introduction
How to make Ajax work for you
HTML5: features with examples
Think Before You Submit Themes on WordPress dot Org
Intro to html 5
Ajax World 2008
Ajaxworld March 2008 - Jeff Haynie Keynote - Appcelerator
Browser extension
Ad

Similar to DevTeach Ottawa - Webmatrix, see what the matrix can do for you!! (20)

PPTX
Intro to .NET for Government Developers
PPTX
Microsoft Web Matrix
PPTX
Web matrix part 2
PDF
FSOSS - Take the red pill and enter the Matrix
PPTX
Intro to MVC 3 for Government Developers
PDF
tut0000021-hevery
PDF
tut0000021-hevery
PPTX
WebFest 2011 WebMatrix Overview by Gavin Warrener
PPTX
Introduction towebmatrix
PDF
Week 05 Web, App and Javascript_Brandon, S.H. Wu
PPTX
Web development tool
PPTX
Praktikum Rekayasa Web, WordPress (1)
PPT
Watir Presentation Sumanth Krishna. A
PPTX
Wordpress
PDF
Programming Microsoft SQL Server 2000 with Microsoft Visual Basic NET 1st edi...
ODP
Moving from Web 1.0 to Web 2.0
PPT
Site Manager rocks!
PPT
Welcome to IE8 - Integrating Your Site With Internet Explorer 8
PPTX
WordPress Internationalization and Localization - WordPress Translation Day 3...
PPTX
Microsoft WebMatrix Platform Overview
Intro to .NET for Government Developers
Microsoft Web Matrix
Web matrix part 2
FSOSS - Take the red pill and enter the Matrix
Intro to MVC 3 for Government Developers
tut0000021-hevery
tut0000021-hevery
WebFest 2011 WebMatrix Overview by Gavin Warrener
Introduction towebmatrix
Week 05 Web, App and Javascript_Brandon, S.H. Wu
Web development tool
Praktikum Rekayasa Web, WordPress (1)
Watir Presentation Sumanth Krishna. A
Wordpress
Programming Microsoft SQL Server 2000 with Microsoft Visual Basic NET 1st edi...
Moving from Web 1.0 to Web 2.0
Site Manager rocks!
Welcome to IE8 - Integrating Your Site With Internet Explorer 8
WordPress Internationalization and Localization - WordPress Translation Day 3...
Microsoft WebMatrix Platform Overview
Ad

More from Frédéric Harper (20)

PDF
2017-11-09 - Fitbit Norcal Developers Meetup (fred)
PDF
2018 04-25 - HLTH hackathon
PDF
2018-06-07 - Singapore Fitbit Developers - Fitbit SDK & Web API Overview
PDF
2018 06-05 - Tokyo Fitbit Developers - Fitbit SDK & Web API Overview
PDF
Public speaking - FDP tech leads summit - 2018-04-30
PDF
2018 04-25 - HLTH hackathon
PDF
From employee to freelance developer in 10 steps - DevTeach - 2017-07-04
PDF
Infrastructure as a service to its maximum, a cultural change - S2LQ - 2016-0...
PDF
With great power comes great responsibility - Microsoft Canada Open Source co...
PDF
Frédéric harper i don’t like open source, and you shouldn't like it eithe...
PDF
Responsive Web Design, the secret sauce - MSDEVMTL - 2016-01-25
PDF
Responsive Web Design: the secret sauce - JavaScript Open Day Montreal - 2015...
PDF
Is your python application secure? - PyCon Canada - 2015-11-07
PDF
Personal branding for developers - West Island developers and entrepreneurs m...
PDF
Responsive Web Design, get the best out of your designs - JavaScript Open Day...
PDF
Differentiating yourself humber college - 2015-03-30
PDF
Differentiating yourself - Hack Western - 2015-03-28
PDF
Le personal branding, plus important que jamais - PHP Québec - 2015-03-05
PDF
Building a personal brand in the developer community - Codementor Office Hour...
PDF
Ma Carrière Techno - École secondaire St-Henri - 2014-11-27
2017-11-09 - Fitbit Norcal Developers Meetup (fred)
2018 04-25 - HLTH hackathon
2018-06-07 - Singapore Fitbit Developers - Fitbit SDK & Web API Overview
2018 06-05 - Tokyo Fitbit Developers - Fitbit SDK & Web API Overview
Public speaking - FDP tech leads summit - 2018-04-30
2018 04-25 - HLTH hackathon
From employee to freelance developer in 10 steps - DevTeach - 2017-07-04
Infrastructure as a service to its maximum, a cultural change - S2LQ - 2016-0...
With great power comes great responsibility - Microsoft Canada Open Source co...
Frédéric harper i don’t like open source, and you shouldn't like it eithe...
Responsive Web Design, the secret sauce - MSDEVMTL - 2016-01-25
Responsive Web Design: the secret sauce - JavaScript Open Day Montreal - 2015...
Is your python application secure? - PyCon Canada - 2015-11-07
Personal branding for developers - West Island developers and entrepreneurs m...
Responsive Web Design, get the best out of your designs - JavaScript Open Day...
Differentiating yourself humber college - 2015-03-30
Differentiating yourself - Hack Western - 2015-03-28
Le personal branding, plus important que jamais - PHP Québec - 2015-03-05
Building a personal brand in the developer community - Codementor Office Hour...
Ma Carrière Techno - École secondaire St-Henri - 2014-11-27

Recently uploaded (20)

PPTX
MYSQL Presentation for SQL database connectivity
PPT
Teaching material agriculture food technology
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PDF
Review of recent advances in non-invasive hemoglobin estimation
PPTX
A Presentation on Artificial Intelligence
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Dropbox Q2 2025 Financial Results & Investor Presentation
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Electronic commerce courselecture one. Pdf
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PDF
KodekX | Application Modernization Development
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Spectral efficient network and resource selection model in 5G networks
MYSQL Presentation for SQL database connectivity
Teaching material agriculture food technology
Per capita expenditure prediction using model stacking based on satellite ima...
7 ChatGPT Prompts to Help You Define Your Ideal Customer Profile.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Advanced methodologies resolving dimensionality complications for autism neur...
Diabetes mellitus diagnosis method based random forest with bat algorithm
Review of recent advances in non-invasive hemoglobin estimation
A Presentation on Artificial Intelligence
Network Security Unit 5.pdf for BCA BBA.
Dropbox Q2 2025 Financial Results & Investor Presentation
“AI and Expert System Decision Support & Business Intelligence Systems”
The AUB Centre for AI in Media Proposal.docx
Electronic commerce courselecture one. Pdf
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
KodekX | Application Modernization Development
Encapsulation_ Review paper, used for researhc scholars
Spectral efficient network and resource selection model in 5G networks

DevTeach Ottawa - Webmatrix, see what the matrix can do for you!!

  • 1. WebMatrix: See What the Matrix Can Do For You!! Frederic Harper Developer Evangelist Microsoft Canada DevTeach Ottawa
  • 2. Agenda • What is WebMatrix? • Who is WebMatrix for? • Razor syntax • Database access • Helpers • App Gallery & OSS Apps
  • 5. My goals 1. Show you how it’s easy to use WebMatrix to create awesome websites or Web applications
  • 7. What is WebMatrix It’s a free tool that makes it easy to Create Configure Publish your websites and web applications
  • 8. What is WebMatrix 1. Web App Gallery & Templates
  • 9. What is WebMatrix 1. Web App Gallery & Templates 2. Web Server: IIS Express
  • 10. What is WebMatrix 1. Web App Gallery & Templates 2. Web Server: IIS Express 3. Standards Support: HTML, CSS, JavaScript
  • 11. What is WebMatrix 1. Web App Gallery & Templates 2. Web Server: IIS Express 3. Standards Support: HTML, CSS, JavaScript 4. Scripting Support: ASP.NET & PHP
  • 12. What is WebMatrix 1. Web App Gallery & Templates 2. Web Server: IIS Express 3. Standards Support: HTML, CSS, JavaScript 4. Scripting Support: ASP.NET & PHP 5. DB Manager: SQL Server & MySQL
  • 13. What is WebMatrix 1. Web App Gallery & Templates 2. Web Server: IIS Express 3. Standards Support: HTML, CSS, JavaScript 4. Scripting Support: ASP.NET & PHP 5. DB Manager: SQL Server & MySQL 6. Optimization Tools: SEO & Performance
  • 14. demo A lap around WebMatrix
  • 15. Who is WebMatrix for? I <3 Web Apps. I want to build web I’m a professional I just need a tool that sites myself with an software developer makes them easier to easy to learn tool and I build complex, configure, customize and framework large scale web sites and publish with a team of developers
  • 16. Two ways to build
  • 17. Two ways to build Option A: From Scratch
  • 18. Two ways to build Option A: Option B: From Scratch From Web App
  • 19. demo Create a website from template
  • 20. Razor
  • 22. What is Razor 1. A new view engine
  • 23. What is Razor 1. A new view engine 2. Compact, Expressive, and Fluid
  • 24. What is Razor 1. A new view engine 2. Compact, Expressive, and Fluid 3. Easy to Learn
  • 25. What is Razor 1. A new view engine 2. Compact, Expressive, and Fluid 3. Easy to Learn 4. Is not a new language
  • 26. What is Razor 1. A new view engine 2. Compact, Expressive, and Fluid 3. Easy to Learn 4. Is not a new language 5. Works with any Text Editor
  • 27. What is Razor 1. A new view engine 2. Compact, Expressive, and Fluid 3. Easy to Learn 4. Is not a new language 5. Works with any Text Editor 6. Has great Intellisense
  • 28. What is Razor 1. A new view engine 2. Compact, Expressive, and Fluid 3. Easy to Learn 4. Is not a new language 5. Works with any Text Editor 6. Has great Intellisense 7. Unit Testable
  • 29. Introducing Razor <ul> Web Forms <% for (int i = 0; i < 10; i++) { %> <li><% =i %></li> (6 transitions): <% } %> </ul> <ul> <?php for ($i = 0; $i < 10; $i++) { PHP echo("<li>$i</li>"); (2 transitions & an echo): } ?> </ul> <ul> @for (int i = 0; i < 10; i++) { Razor <li>@i</li> (2 transitions): } </ul>
  • 30. Code to markup easily @{ Option 1: var name = “John Doe”; <div> HTML Block Your name: @name </div> } @{ var name = “John Doe”; Option 2: <text> Text Block Your name: @name </text> } @{ Option 3: var name = “John Doe”; Single line of output @: Your name: @name in markup }
  • 31. Commenting @* Option 1: <div> Markup Hello World </div> *@ @{ Option 2: //var name = "John Doe”; Code //@name } @* @{ Option 3: //var name = "John Doe"; Both //@name } *@
  • 34. Database • SQL Compact Edition • File-based, so it’s portable. Runs without a server. • Easy to design, easy to code against Designing Coding @{ var db = Database.Open("ArtGallery"); var product = db.Query("SELECT * FROM PRODUCTS); }
  • 37. What are Helpers? Helpers make it easy to quickly add commonly used functionality into your websites and many more…
  • 38. Two categories HTML Helpers Make is faster and easier to render commonly used • Facebook markup to the page. • Twitter • … API Helpers Make is faster and easier to call complex APIs from • PayPal your website. • Windows Azure Storage • …
  • 40. App Gallery & OSS Apps
  • 41. OSS Apps 1. Free 2. Popular = large community 3. Gets you close to the solution quickly 4. Easy to configure
  • 42. Build on the success of Web PI Web Platform Installer WebMatrix Download    Install (inc. dependencies)  Customize  SEO Analysis  Publish 
  • 43. demo App Gallery & Wordpress in the box
  • 46. Next steps 1. Install WebMatrix 2. Play with it 1. Create a new website with templates or from scratch 2. Edit an existing one 3. Deploy an app by using the App Gallery
  • 47. Next steps 1. Install WebMatrix 2. Play with it 1. Create a new website with templates or from scratch 2. Edit an existing one 3. Deploy an app by using the App Gallery 3. Unleash the power of the Matrix & have fun
  • 49. Q&A
  • 50. Contact me Frederic Harper, Developer Evangelist fredh@microsoft.com @fharper http://webnotwar.ca http://outofcomfortzone.net
  • 51. © 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.