Upload
dhorton
View
500
Download
0
Embed Size (px)
DESCRIPTION
Citation preview
START-UPS 2.0 @ HARVARD
Cultivating a web presenceDerek Horton
Get familiar with the language of the industry
Technology Overview
5/1/2008
3
HDot
Explain this?
5/1/2008HDot
3
Web Client
Web Client
Web Client
Web Client
Database
DatabaseDatabase
Web Server
Web Server
Web Server
Web ServerLo
ad
Ba
lanc
ing
Web Client – who you serve
5/1/2008HDot
4
The user visiting your website
Client side script runs here (javascript)
Unknowns
browser
connection speed
plugins
language spoken
Web Client
5/1/2008HDot
5
78.6%
17.8%
3.6%
Market Share
Internet Explorer
Firefox
Other
Databases – The place for your data6
Relational
Consists of multiple tables with constraints between them
Transactional
If an operation fails, any steps executed are undone
Scalable
Can handle extremely large amounts of data efficiently
Redundancy techniques increase reliability
Server replication and clustering increase capacity
5/1/2008HDot
Databases - Products
5/1/2008HDot
7
Web Servers – serving the client
5/1/2008HDot
8
In between the client and the database
Typically
Gets the users request
Get necessary info by querying the database
Processes info and creates a page to return
Sends the page to the user
Web Servers / Application Servers
34.2% market
Strong player in
business
48.42% market
Strong in the open
source community
9
IIS – Windows Server Apache – Linux (typically)
5/1/2008HDot
Basic Scenario
5/1/2008HDot
10
Web Client
Web Client
Web Client
Web Client
Web Server
+
Database
High-Availability Scenario
5/1/2008HDot
11
Web Client
Web Client
Web Client
Web Client
Database
DatabaseDatabase
Web Server
Web Server
Web Server
Web ServerLo
ad
Ba
lanc
ing
Session Handling – remembering people12
5/1/2008HDot
Cookies
Persistent
Non-persistent
Hidden form fields
Query strings (http://www.google.com/search?q=ImAQueryString)
Where to store the data?
Design and Development13
Web Designer
Layout
Style
“artistic”
Web Developer
Programming
Wiring things
“logical”
5/1/2008HDot
Design – Look and Feel14
5/1/2008HDot
HTML
Mix of information and layout
In a dynamic website HTML will be minimal
CSS
Primary way of expressing layout according to best practices
Flash / Silverlight
Design - Example15
HTML CSS
5/1/2008HDot
Design - Tools
5/1/2008HDot
16
HTML / CSS Editors
Macromedia Dreamweaver
Microsoft Expressions Studio (get via Dreamspark)
Firefox + Firebug
Graphic Editors
Adobe ImageReady
Adobe Photoshop
Design - Portfolios
5/1/2008HDot
17
Web Designers will have portfolios illustrating their
work
Transparent to others in that markup code can be
viewed (not the case for application code)
Development - under the hood
5/1/2008HDot
18
Client side code
Silverlight, Flash, Javascript, Java Applets
Server side code
ASP.NET, PHP, PERL, Ruby on Rails, Python, etc.
What runs where?
5/1/2008HDot
19
Web Client
Web Client
Web Client
Web Client
Database
DatabaseDatabase
Web Server
Web Server
Web Server
Web ServerLo
ad
Ba
lanc
ing
ASP.NET
5/1/2008HDot
20
Microsoft Solution
Heavily deployed for enterprise management
Allows code behind to be written in multiple languages
C#, VB.NET, Iron Python
Developed using Visual Studio .NET
.NET 3.5, .NET 2.0, .NET 1.1, asp
Code works for desktop, Silverlight, and web
.aspx, .asp, viewstate
PHP
5/1/2008HDot
21
Embraced by the open source community
Many tools for development, such as Zend Studio
LAMP – Linux, Apache, MySQL, PHP
v. 5.2, 4.4.7
Which is better? ASP.NET or PHP?
5/1/2008HDot
22
• Most any project can be done in eitherNot polar opposites
• Can be used in desktop applications (Win32)
• And on the client side (Silverlight)
ASP.NET code is “more portable”
• Visual Studio is a great development toolASP.NET has Visual Studio
• Possibility to use leaner libraries and get cheaper hostingPHP is leaner and cheaper
• Resulting in well maintained code blocks available free to use (ieDrupal)
PHP has strong open source community backing
5/1/2008HDot
23
AJAX
5/1/2008HDot
24
Asynchronous communication
Communication outside a postback event
Allows for more of a desktop application experience
Transfer in background
Upload files
Download images
Examples
Google Suggestions
Microsoft Live Image Search
Flash / Silverlight / Java Applets
5/1/2008HDot
25
Allows more rich content by communicating outside
the HTML + CSS + Javascript browser platform
Requires plugin to view, slow loading (page+plugin)
Appropriate for applications
Search engine indexing issues
Better with Silverlight (XAML instead of binary)
Silverlight
5/1/2008HDot
26
http://memorabilia.hardrock.com/
http://www.nokola.com/shock/
Getting tools
5/1/2008HDot
27
Dreamspark (academic)
Visual Studio 2008
Expression Studio
SQL Server 2005 Dev Edition
Server 2003 Standard
MSDNAA (academic)
Server 2008 / Vista
All Microsoft products except Office
Other
Ubuntu / Fedora / CentOS /
openSUSE
Apache
MySQL
Popfly
5/1/2008HDot
28
http://www.popfly.com/users/BinaryCode/Flickr%
20And%20Virtual%20Earth
http://www.popfly.com/users/BinaryCode/Coming
%20Soon%20On%20Dvd
QUESTIONS