HTML 5/CSS 3 and Future Web Evolution Manyoung Cho | WebDevMobile.com manyoung@gmail.com
About Me  Web Evangelist  http://WebDevMobile.com 운영자  Opera Software - Presales Engineer 차장  E-Mail : manyoung@gmail.com  Blog : http://manyoung.net  Twitter : @manyoungc  Me2Day : http://me2day.net/manyoung
Agenda  HTML5 History  What‟ news in HTML5/CSS3  Web as Apps  Smartphone wars = Browser wars  Web as mobile apps  Web in CE-Market
HTML 5 History
HTML 5 Background  WHATWG Web Hypertext Application Technology WG  Since 2004  Apple, Mozilla, Opera  Concerns against W3C‟s XHTML approaches
HTML 5 Background  Web is becoming application  New web spec is requred for application like UI  HTML 4 was too old, released in 1997
WHATWG & W3C  Adopted as new HTML working group by W3C in 2007  5th Major revision of working draft in 4th, March, 2010
HTML 5 purpose  HTML was intended for static documents  HTML is becoming web based application  WHATWG  Web Application 1.0  Web Forms 2.0  Reducing the need for proprietary plugins Flash, Silverlight, JavaFX
What’s new in HTML5/CSS3/New JS API
New Doctype  <!DOCTYPE html>  HTML5 doc  Case-insensitive
HTML 5 : New elements  <section>  <article>  <header>  <footer>  <nav>
New elements  <mark>  <time>  <progress>  And many more  http://www.w3schools.com/html5/html5_referen ce.asp  More semantic and better structure  SEO or accessbility
Web Forms 2.0  Web application = many forms   HTML4 has weak form capability  But what we are using is like this. http://www.hyatt.com/hyatt/index .jsp
Web Forms 2.0  http://people.opera.com/andreasb/ demos/demo_webforms/webforms2d emo.html  New input type : number, email, url, range, etc  New button type : move-up, move-down  Datalist  Autofocus  Form validation
Code demo  Autofocus  <input name= "haha" type="text" autofocus>  Number  <input name="age" type="number" min="18" max="25">
Code  Placeholder  <input name=“a” placeholder=“type your name”>
Code demo Input + datalist <input name="url" type="uri" list="mylist" style="width: 200px”> <datalist id="mylist">` <option label="google" value="http://google.com"> <option label="yahoo" value="http://yahoo.com"> </datalist>
Code demo  Input type=“range” <input id="slider" name="a" type="range" mix="1" max="10" value="0">  Input type=“date”
Canvas  2D dynamic rendering by Javascript  Bitmap image  getContext(„2d‟);  2D Context API
Canvas Drawing API  Basic lines and strokes  Paths  Inserting image  Text as bitmap in Canvas
Code demo  Image : Pixel based manipulation (0,0) R=255 G=0 B=0 A=0 (3,3)
Canvas demo http://arapehlivanian.com/wp- content/uploads/2007/02/canvas. html http://www.benjoffe.com/code/d emos/interpolate/ http://www.benjoffe.com/code/d emos/canvascape/
Video  Opera proposed in 2007  <video src=“movie.ogv” controls=“controls”>  Theora ogg  H.264  Youtube HTML5 video  Play(), Pause(), mute…
Video Codec issue  Theora Ogg : Open source  H.264 : Commercial, Defacto Standard  H.264 supported by Safari, Chrome, IE9  WebM(VP8)!
Video Demo http://people.opera.com/patrickl/ articles/introduction-html5- video/multi-source/ http://people.opera.com/brucel/d emo/video/turkish-transition.html
Video  Video with Canvas http://people.opera.com/patrickl/articles/introd uction-html5-video/video-canvas/  Control bar customization http://people.opera.com/patrickl/ articles/introduction-html5- video/scripted-controls/
Video  Javascripted Caption http://people.opera.com/brucel/d emo/video/accessible-html5- video-captions.html
CSS3  W3C driven  Richer UI presentation  More interaction
CSS3  Selectors http://www.456bereastreet.com/archive/200601/css_3_selectors_exp lained/
CSS3 selectors http://www.css3.info/modules/selector-compat/
CSS3  2D transforms  Borders, backgrounds, box-shadows  http://people.opera.com/pepelsbey/experi ments/bdi/  http://people.opera.com/pepelsbey/experi ments/bdr/  http://people.opera.com/andreasb/demos/ demo_textshadow/demo_textshadow1.html  http://people.opera.com/andreasb/demos/ demo_textshadow/demo_textshadow3.html
CSS3  Traditional mouse rollover technic  <img src=”img.gif" onmouseover="this.src=‘image_over.gif';" onmouseout="this.src=’img.gif';">  Animated transition  http://people.opera.com/patrickl/experime nts/css3/transitions/ http://people.opera.com/dstorey/transitions /transition-timing-example.html  http://people.opera.com/andreasb/temp_t oshiba/stack/
CSS3  Webfonts @font-face { font-family:‟fontname'; src:url (fontfile);}  OTF, TTF, SVG http://devfiles.myopera.com/articl es/751/newspaper.html http://devfiles.myopera.com/articl es/751/japanese-newspaper.html 
SVG  Web standard vector graphic  Getting much important  UI, Animation, etc.
SVG demo  Webfonts + SVG http://devfiles.myopera.com/articles/792/spi ral.svgz  http://devfiles.myopera.com/articles/751/jun ction-type-specimen-animated.svgz  HTML5 Video + SVG http://people.opera.com/andreasb/demos/ demo_videosvgfilters/video-filter.svg http://people.opera.com/andreasb/demos/ demo_videosvgresize/videoresize.svg
Others  Web Storage  Up to 5mb per domain  SessionStorage  localStorage  getItem(), SetItem(), removeitem()  Web Workers  Var workers = new Worker („business.js‟);
HTML5/CSS3 Summary  Web is becoming independent  Standalone  Animation / Rich interaction  Native multimedia support
HTML5/CSS3 Summary  Web is becoming independent  Standalone  Animation / Rich interaction  Native multimedia support
Why HTML5?  Desktop  Mobile  Device
Cross Platform  Apple TV  Google
It‟s WEB!  Cross Device  Cross Platform
IT goes to CE market  Consumer Electronics
Mobile leads web technology Chrome Desktop Firefox Desktop
Web as Apps
2006 : Long time ago galaxy far far away  Opera introduced browser based application called widget in 2006  Widget is W3C standard http://www.w3.org/TR/widgets/  Opera Widget http://widgets.opera.com  Widget = browser based standalone web application
2010 : Chrome Webstore  https://chrome.google.com/webstore
Web as mobile apps
Widget runtime  Web application platform  Browser rendering engine based  HTML/CSS/Javascript is the main technology
Extending Web Spec  JIL (Joint Innovation Lab)  Vodafone, VZW, Softbank, China Mobile http://www.jil.org/  BONDI(OMTP driven)  W3C Device APIs and Policy http://www.w3.org/2009/dap/
Device APIs  Contact  Calendar  File system  Messaging  System info : CPU, Battery, etc
Widgets = Mobile apps
WAC(Wholesales Application Community)  Cross-platform mobile apps  Cross-device apps  Wholesale Applications Community
Size does matter Units Cellphone Smartphone Units iPhone 0 200 400 600 800 1000 1200 1400
Altogether!  HTML5/CSS3/SVG  Devices API  Huge market  20 Global operators  5 Handset makers
Web in CE-Market
TV & Broadcasting  Web based service  BBC iPlayer http://www.bbc.co.uk/iplayer/bigscreen/
OIPF & CE-HTML  Open IPTV Forum  CE-HTML  DAE(Declarative Application Environment)  Web standard based CE-HTML  Javascript extension W3C Stnadard
Hybrid Web Broadcasting  http://www.youtube.com/watch?v=YsKqUbjbVA k  http://www.youtube.com/watch?v=TPOkuS4Myd g
Broadcast (aka « red button ») DVB HBBTV TV channels VOD GAMES WEATHER SHOP VOTING ETC. Broadband Internet (aka « Web TV ») Broadcaster model: broadcast & broadband OEM model: broadband only
Opera for HbbTV
Opera for HbbTV • The multiple layer configuration of the APIs enable a flexible integration. APIs • NJSE (Native JavaScript extensions) is Frame buffer, the technology used by Opera to Input methods, windows access the local capabilities of the platform from the JavaScript environment. APIs • The Application Manager contains the logic for handling HbbTV applications Application tables retrieval Carousel objects queries life-cycles and is also the entry point for customizing the solution, e.g. adding new use cases like full Web APIs browsing or branching remote controls. NJSE (Native JavaScript Extensions) Access to streams Plugins implementation
HBBTV
HBBTV
HBBTV
Widgets! Apps!
TV widgets  http://www.youtube.com/watch?v=_u28b13BiO Y
http://pavv.co.kr
Not yet! Device!
Tabbee Device  http://www.youtube.com/user/operasoftware#p /u/6/k7VhlItPzkE
Game console  http://www.youtube.com/watch?v=EWOc3Sm3I Mo&feature=related
Digital Photoframe
Car
Internet on Mobile
Appstore on Mobile
 Consumer Electronics
Bigbang of web! Just beginning
What and How we prepare the future?
Web  Web service  UI layer  Hardware middleware  Web application
Web is no more „page‟  Web is cross devices contents  Web is becoming single application  What should your job title be?  Web publisher?  Frontend Developer?  Clientside Developer?  UI Developer?
Thank you for listening http://webdevmobile.com Blog : http://manyoung.net Twitter : @manyoungc Me2Day : http://me2day.net/manyoung

HTML5/CSS3 and Future Web in Mobile and IPTV

  • 1.
    HTML 5/CSS 3and Future Web Evolution Manyoung Cho | WebDevMobile.com manyoung@gmail.com
  • 2.
    About Me  WebEvangelist  http://WebDevMobile.com 운영자  Opera Software - Presales Engineer 차장  E-Mail : manyoung@gmail.com  Blog : http://manyoung.net  Twitter : @manyoungc  Me2Day : http://me2day.net/manyoung
  • 3.
    Agenda  HTML5 History What‟ news in HTML5/CSS3  Web as Apps  Smartphone wars = Browser wars  Web as mobile apps  Web in CE-Market
  • 4.
  • 5.
    HTML 5 Background WHATWG Web Hypertext Application Technology WG  Since 2004  Apple, Mozilla, Opera  Concerns against W3C‟s XHTML approaches
  • 6.
    HTML 5 Background Web is becoming application  New web spec is requred for application like UI  HTML 4 was too old, released in 1997
  • 7.
    WHATWG & W3C Adopted as new HTML working group by W3C in 2007  5th Major revision of working draft in 4th, March, 2010
  • 8.
    HTML 5 purpose HTML was intended for static documents  HTML is becoming web based application  WHATWG  Web Application 1.0  Web Forms 2.0  Reducing the need for proprietary plugins Flash, Silverlight, JavaFX
  • 9.
  • 10.
    New Doctype  <!DOCTYPEhtml>  HTML5 doc  Case-insensitive
  • 11.
    HTML 5 :New elements  <section>  <article>  <header>  <footer>  <nav>
  • 12.
    New elements  <mark> <time>  <progress>  And many more  http://www.w3schools.com/html5/html5_referen ce.asp  More semantic and better structure  SEO or accessbility
  • 13.
    Web Forms 2.0 Web application = many forms   HTML4 has weak form capability  But what we are using is like this. http://www.hyatt.com/hyatt/index .jsp
  • 14.
    Web Forms 2.0 http://people.opera.com/andreasb/ demos/demo_webforms/webforms2d emo.html  New input type : number, email, url, range, etc  New button type : move-up, move-down  Datalist  Autofocus  Form validation
  • 15.
    Code demo  Autofocus <input name= "haha" type="text" autofocus>  Number  <input name="age" type="number" min="18" max="25">
  • 16.
    Code  Placeholder  <inputname=“a” placeholder=“type your name”>
  • 17.
    Code demo Input +datalist <input name="url" type="uri" list="mylist" style="width: 200px”> <datalist id="mylist">` <option label="google" value="http://google.com"> <option label="yahoo" value="http://yahoo.com"> </datalist>
  • 18.
    Code demo  Inputtype=“range” <input id="slider" name="a" type="range" mix="1" max="10" value="0">  Input type=“date”
  • 19.
    Canvas  2D dynamicrendering by Javascript  Bitmap image  getContext(„2d‟);  2D Context API
  • 20.
    Canvas Drawing API Basic lines and strokes  Paths  Inserting image  Text as bitmap in Canvas
  • 21.
    Code demo  Image: Pixel based manipulation (0,0) R=255 G=0 B=0 A=0 (3,3)
  • 22.
    Canvas demo http://arapehlivanian.com/wp- content/uploads/2007/02/canvas. html http://www.benjoffe.com/code/d emos/interpolate/ http://www.benjoffe.com/code/d emos/canvascape/
  • 23.
    Video  Opera proposedin 2007  <video src=“movie.ogv” controls=“controls”>  Theora ogg  H.264  Youtube HTML5 video  Play(), Pause(), mute…
  • 24.
    Video Codec issue Theora Ogg : Open source  H.264 : Commercial, Defacto Standard  H.264 supported by Safari, Chrome, IE9  WebM(VP8)!
  • 25.
    Video Demo http://people.opera.com/patrickl/ articles/introduction-html5- video/multi-source/ http://people.opera.com/brucel/d emo/video/turkish-transition.html
  • 26.
    Video  Video withCanvas http://people.opera.com/patrickl/articles/introd uction-html5-video/video-canvas/  Control bar customization http://people.opera.com/patrickl/ articles/introduction-html5- video/scripted-controls/
  • 27.
    Video  Javascripted Caption http://people.opera.com/brucel/d emo/video/accessible-html5- video-captions.html
  • 28.
    CSS3  W3C driven Richer UI presentation  More interaction
  • 29.
    CSS3  Selectors http://www.456bereastreet.com/archive/200601/css_3_selectors_exp lained/
  • 30.
    CSS3 selectors http://www.css3.info/modules/selector-compat/
  • 31.
    CSS3  2D transforms Borders, backgrounds, box-shadows  http://people.opera.com/pepelsbey/experi ments/bdi/  http://people.opera.com/pepelsbey/experi ments/bdr/  http://people.opera.com/andreasb/demos/ demo_textshadow/demo_textshadow1.html  http://people.opera.com/andreasb/demos/ demo_textshadow/demo_textshadow3.html
  • 32.
    CSS3  Traditional mouserollover technic  <img src=”img.gif" onmouseover="this.src=‘image_over.gif';" onmouseout="this.src=’img.gif';">  Animated transition  http://people.opera.com/patrickl/experime nts/css3/transitions/ http://people.opera.com/dstorey/transitions /transition-timing-example.html  http://people.opera.com/andreasb/temp_t oshiba/stack/
  • 33.
    CSS3  Webfonts @font-face { font-family:‟fontname'; src:url (fontfile);}  OTF, TTF, SVG http://devfiles.myopera.com/articl es/751/newspaper.html http://devfiles.myopera.com/articl es/751/japanese-newspaper.html 
  • 34.
    SVG  Web standardvector graphic  Getting much important  UI, Animation, etc.
  • 35.
    SVG demo  Webfonts+ SVG http://devfiles.myopera.com/articles/792/spi ral.svgz  http://devfiles.myopera.com/articles/751/jun ction-type-specimen-animated.svgz  HTML5 Video + SVG http://people.opera.com/andreasb/demos/ demo_videosvgfilters/video-filter.svg http://people.opera.com/andreasb/demos/ demo_videosvgresize/videoresize.svg
  • 36.
    Others  Web Storage  Up to 5mb per domain  SessionStorage  localStorage  getItem(), SetItem(), removeitem()  Web Workers  Var workers = new Worker („business.js‟);
  • 37.
    HTML5/CSS3 Summary  Webis becoming independent  Standalone  Animation / Rich interaction  Native multimedia support
  • 38.
    HTML5/CSS3 Summary  Webis becoming independent  Standalone  Animation / Rich interaction  Native multimedia support
  • 39.
    Why HTML5?  Desktop Mobile  Device
  • 40.
  • 41.
    It‟s WEB!  CrossDevice  Cross Platform
  • 42.
    IT goes toCE market  Consumer Electronics
  • 43.
    Mobile leads web technology Chrome Desktop Firefox Desktop
  • 44.
  • 45.
    2006 : Longtime ago galaxy far far away  Opera introduced browser based application called widget in 2006  Widget is W3C standard http://www.w3.org/TR/widgets/  Opera Widget http://widgets.opera.com  Widget = browser based standalone web application
  • 46.
    2010 : ChromeWebstore  https://chrome.google.com/webstore
  • 47.
  • 48.
    Widget runtime  Webapplication platform  Browser rendering engine based  HTML/CSS/Javascript is the main technology
  • 49.
    Extending Web Spec JIL (Joint Innovation Lab)  Vodafone, VZW, Softbank, China Mobile http://www.jil.org/  BONDI(OMTP driven)  W3C Device APIs and Policy http://www.w3.org/2009/dap/
  • 50.
    Device APIs  Contact Calendar  File system  Messaging  System info : CPU, Battery, etc
  • 51.
  • 52.
    WAC(Wholesales Application Community)  Cross-platformmobile apps  Cross-device apps  Wholesale Applications Community
  • 53.
    Size does matter Units Cellphone Smartphone Units iPhone 0 200 400 600 800 1000 1200 1400
  • 54.
    Altogether!  HTML5/CSS3/SVG  DevicesAPI  Huge market  20 Global operators  5 Handset makers
  • 55.
  • 56.
    TV & Broadcasting Web based service  BBC iPlayer http://www.bbc.co.uk/iplayer/bigscreen/
  • 57.
    OIPF & CE-HTML Open IPTV Forum  CE-HTML  DAE(Declarative Application Environment)  Web standard based CE-HTML  Javascript extension W3C Stnadard
  • 58.
    Hybrid Web Broadcasting http://www.youtube.com/watch?v=YsKqUbjbVA k  http://www.youtube.com/watch?v=TPOkuS4Myd g
  • 62.
    Broadcast (aka «red button ») DVB HBBTV TV channels VOD GAMES WEATHER SHOP VOTING ETC. Broadband Internet (aka « Web TV ») Broadcaster model: broadcast & broadband OEM model: broadband only
  • 63.
  • 64.
    Opera for HbbTV • The multiple layer configuration of the APIs enable a flexible integration. APIs • NJSE (Native JavaScript extensions) is Frame buffer, the technology used by Opera to Input methods, windows access the local capabilities of the platform from the JavaScript environment. APIs • The Application Manager contains the logic for handling HbbTV applications Application tables retrieval Carousel objects queries life-cycles and is also the entry point for customizing the solution, e.g. adding new use cases like full Web APIs browsing or branching remote controls. NJSE (Native JavaScript Extensions) Access to streams Plugins implementation
  • 65.
  • 66.
  • 67.
  • 68.
  • 69.
  • 70.
  • 71.
  • 72.
  • 73.
  • 74.
  • 75.
  • 77.
  • 78.
  • 80.
  • 81.
    Bigbang of web! Just beginning
  • 82.
    What and Howwe prepare the future?
  • 83.
    Web  Web service UI layer  Hardware middleware  Web application
  • 84.
    Web is nomore „page‟  Web is cross devices contents  Web is becoming single application  What should your job title be?  Web publisher?  Frontend Developer?  Clientside Developer?  UI Developer?
  • 85.
    Thank you forlistening http://webdevmobile.com Blog : http://manyoung.net Twitter : @manyoungc Me2Day : http://me2day.net/manyoung