<!--#include virtual="../s5/commontop.html" -->
<title>Lecture 20: What’s Next — INFO 344 Spring 2012</title>
</head>
<body>
<div class="layout">
<div id="controls"><!-- DO NOT EDIT --></div>
<div id="currentSlide"><!-- DO NOT EDIT --></div>
<div id="header"></div>
<div id="footer">
<h1>INFO 344 Lecture 20</h1>
<h2>What’s Next</h2>
</div>
</div>
<div class="presentation">
<div class="slide">
<h1>What’s Next</h1>
<h3>Lecture 20</h3>
<p class="license">
© 2012 Morgan Doocy
</p>
<div class="w3c">
<a href="http://validator.w3.org/check/referer"><img src="../s5/images/w3c-xhtml11.png" alt="Valid XHTML 1.1" /></a>
<a href="http://jigsaw.w3.org/css-validator/check/referer"><img src="../s5/images/w3c-css.png" alt="Valid CSS!" /></a>
</div>
</div>
<!-- <div class="slide titleslide">
<h1>1. The “security mindset”</h1>
<ul>
<li><strong>security mindset</strong></li>
<li>some basic web attacks</li>
<li>breaking and securing an example page</li>
</ul>
</div> -->
<div class="slide">
<h1>Web Application Frameworks</h1>
<p class="description">“Super-structure” built on top of a language to enable rapid application development</p>
<ul>
<li>
<p>Examples:</p>
<ul>
<li>Rails (Ruby)</li>
<li>CakePHP, Zend (PHP)</li>
<li>Tomcat, JSP (Java)</li>
<li>ASP.NET (C#, VBScript)</li>
</ul>
</li>
<li>Take care of nitty-gritty details, allowing rapid application development</li>
<li>Almost universally use MVC pattern</li>
<li>Hundreds of options, on all platforms, on top of all languages</li>
</ul>
</div>
<div class="slide">
<h1>Going live</h1>
<!-- <div>
<img src="images/group_hug.jpg" alt="group hug" style="float: right; margin-left: 1em" />
</div> -->
<ul>
<li>
<p>Three services involved in a public website:</p>
<ol>
<li>Domain name registration</li>
<li>DNS service to link your domain name to the server where it lives</li>
<li>Server hosting</li>
</ol>
</li>
<li>Each can be purchased separately, or sometimes with the same provider.</li>
<li>Ex: Register with <a href="http://en.gandi.net/">Gandi</a>, DNS service from <a href="http://dyn.com/dns/">Dyn</a>, hosting with <a href="http://dreamhost.com/">DreamHost</a></li>
</ul>
</div>
<div class="slide">
<h1>Registration</h1>
<ul>
<li>Domain registration is a <em>shady business</em>!</li>
<li>Be wary of deep discounts, lock-ins, speculative pre-registration, etc.</li>
<li>In general, you get what you pay for!</li>
<li>Choose a reputable registrar (like Gandi)</li>
<li>Avoid: GoDaddy, Network Solutions (shady practices, lock-ins, and over-marketing)</li>
</ul>
</div>
<div class="slide">
<h1>Hosting</h1>
<ul>
<li>Hosting is a cheap commodity; look for someone reputable with good service (like DreamHost).</li>
<li>
<p>Three types of hosting:</p>
<ol>
<li>Shared: you share a server machine with other websites.</li>
<li>Dedicated: you have your own server machine(s).</li>
<li>Colocated: you rent or buy server space and/or maintenance, with physical access.</li>
</ol>
</li>
<li>Often offer tiered pricing based on bandwidth</li>
<li>Start small, upgrade as needed</li>
</ul>
</div>
<div class="slide">
<h1>DNS services</h1>
<ul>
<li>Often handled by registrar or hosting provider; not often needed separately.</li>
<li>
<p>Types:</p>
<ul>
<li>DNS hosting: third-party service is authoritative source for your domain name’s DNS record</li>
<li>Network appliances: computers that handle and route requests to different servers dynamically (load balancing)</li>
</ul>
</li>
</ul>
</div>
<!--#include virtual="../s5/commonbottom.html" -->