28
What’s new in Web Development? Konstantin Käfer

What's New in Web Development

Embed Size (px)

DESCRIPTION

This is an overview session that touches onto all kinds of new developments in the wide field of web design. This talk is mainly focussed on client side technologies (HTML, CSS, JavaScript) and outlines the news of the past months. If you have not been following the buzz lately, this is a good session to get you up to speed.

Citation preview

Page 1: What's New in Web Development

What’s newin

Web Development?

Konstantin

Käfer

Page 2: What's New in Web Development

Konstantin Käfer2

1

2

3

4

HTML 5

Gears, Native Client & Silverlight

CSS 3

Client side XSLT

Page 3: What's New in Web Development

Konstantin Käfer

HTML 5

3

Page 4: What's New in Web Development

Konstantin Käfer

Standardize what’salready there

4

Page 5: What's New in Web Development

Konstantin Käfer

Standardize solutionsfor real-life applications

5

Page 6: What's New in Web Development

Konstantin Käfer

HTML 5: Structural Elements

6

‣ <section>, <nav>, <article>, <aside>, <footer>, <figure>, <header>, <dialog>

‣ Behave like spans; use display:block

‣ For structuring pages

‣ Allows for nice CSS:

– footer { font-size: 0.75em; color: gray; }

Page 7: What's New in Web Development

Konstantin Käfer

HTML 5 in action‣ Doctype: <!DOCTYPE html>

‣ Most browsers support any tags

‣ Except our beloved Internet Explorer

7

<section> <h2>Alpha</h2> <p> Section Alpha </p></section>

<section></section> <h2>Alpha</h2> <p> Section Alpha </p></section><//section>

Page 8: What's New in Web Development

Konstantin Käfer

document.createElement('section');

8

Page 9: What's New in Web Development

Konstantin Käfer9

HTML 5

New input types

Page 10: What's New in Web Development

Konstantin Käfer

HTML 5: Storing data‣ Database Storage API: Plain SQL

‣ Local Storage: key-value pairs

‣ Session Storage: key-value pairs

‣ Supported by Mozilla, WebKit, Opera

10

Page 11: What's New in Web Development

Konstantin Käfer

HTML 5: <canvas>‣ Already supported by Mozilla, WebKit, Opera

‣ Arbitrary 2D drawing

‣ Can be emulated with VML in IE

‣ Applications:

– http://code.google.com/p/flot/

– http://wiki.github.com/sorccu/cufon/about

– http://ejohn.org/blog/processingjs/

11

Page 12: What's New in Web Development

Konstantin Käfer

Canvas Fonts‣ Alternative to images replacement and sIFR

‣ Use <canvas> and VML to render fonts

‣ Several libraries

– http://typeface.neocracy.org

– http://cufon.shoqolate.com

‣ Converts font files to proprietary format

12

Page 13: What's New in Web Development

Konstantin Käfer

HTML 5: Miscellaneous‣ Drag-and-Drop

‣ Cross-document message exchange

‣ Data grids

‣ Undo manager

‣ Web sockets

‣ <video>, <audio> tags

13

Page 14: What's New in Web Development

Konstantin Käfer

Google Gears‣ Offline applications

‣ Worker pools(for compute-intensive applications)

‣ Databases(not fully compatible with HTML 5)

‣ Geolocation

14

Page 15: What's New in Web Development

Konstantin Käfer

Gears Demos

15

Page 16: What's New in Web Development

Konstantin Käfer

Google Native Client

16

Page 17: What's New in Web Development

Konstantin Käfer

Silverlight

17

‣ Microsoft’s Flash clone

‣ Based on XAML and WPF

‣ .NET languages (C#, VB.NET, IronPython, ...)

<Canvas xmlns="http://schemas.microsoft.com/client/2007" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <Ellipse Canvas.Left="30" Canvas.Top="30" Height="200" Width="200" Stroke="Black" StrokeThickness="10" Fill="SlateBlue" /></Canvas>

Page 18: What's New in Web Development

Konstantin Käfer

Silverlight Demos

18

Page 19: What's New in Web Development

Konstantin Käfer

CSS 3

19

‣ Split up in modules

‣ Some parts are already implemented

– Use them now! (Degrade gracefully)

Page 20: What's New in Web Development

Konstantin Käfer

CSS 3‣ border-radius: 5px;

‣ user-modify: read-write;

‣ box-shadow: 3px 3px 5px #888;

‣ background: rgba(0, 0, 0, 0.5);

‣ border-image: url(border.png) 5 5 10 10 round round;

‣ text-overflow: ellipsis;

20

Page 21: What's New in Web Development

Konstantin Käfer

CSS 3 cont.‣ column-width: 10em;

column-gap: 1em;

‣ @font-face { font-family: Aller; src: url('Aller-Roman.otf');}

font-family: Aller, sans-serif;

21

Page 22: What's New in Web Development

Konstantin Käfer

WebKit’s CSS enhancements‣ Transforms: Rotating, Scaling, Morphing, ...

‣ Transitions: Animate between two states

‣ Animations: Define keyframes and timelines

‣ Demo

22

Page 23: What's New in Web Development

Konstantin Käfer

Client side XSLT‣ Transform XML documents

to HTML

‣ Use the same XML forWeb Services

23

XML Input XSLT Code

XSLT Processor

<xsl:value-of>Title:$nameDate:$curdat</xsl:value-o

Result Document

Page 24: What's New in Web Development

Konstantin Käfer24

Example: WoW Armory

Page 25: What's New in Web Development

Konstantin Käfer

Client side XML/XSLT

25

<?xml version="1.0" encoding="UTF-8"?><page title="Add text format" path="admin/settings/filter/add" base="/"> <title>Add text format</title>

<content>...</content>

<menu id="navigation" title="Navigation"> <item path="user/1" title="My account" /> <item path="node/add" title="Create content" children="2" /> <item path="admin" title="Administer" /> <item path="admin/content" title="Content management" children="6" /> <item path="admin/build" title="Site building" children="4" /> <item path="admin/settings" title="Site configuration">...</item> <item path="admin/user" title="User management" /> <item path="admin/reports" title="Reports" /> <item path="admin/help" title="Help" /> <item path="logout" title="Log out" /> </menu>

<user name="admin" id="1" /></page>

Page 26: What's New in Web Development

Konstantin Käfer

Server side JavaScript‣ Has been possible for a long time (CGI)

‣ Interpreters got extremely fast

‣ http://groups.google.com/group/serverjs

26