{"id":680,"date":"2010-02-09T23:12:45","date_gmt":"2010-02-09T23:12:45","guid":{"rendered":"http:\/\/www.codedread.com\/blog\/?p=680"},"modified":"2010-02-09T23:13:16","modified_gmt":"2010-02-09T23:13:16","slug":"dont-worry-adobe-will-step-it-up","status":"publish","type":"post","link":"https:\/\/www.codedread.com\/blog\/archives\/2010\/02\/09\/dont-worry-adobe-will-step-it-up\/","title":{"rendered":"Don&#8217;t worry, Adobe will step it up"},"content":{"rendered":"<p><object type=\"image\/svg+xml\" width=\"100\" height=\"100\" style=\"float:right\" data=\"http:\/\/codedread.com\/clipart\/flash.svgz\">[clipart]<\/object>The one persistent mantra I hear from staunch Flash defenders, folks like <a href=\"http:\/\/blogs.adobe.com\/jd\/\">John Dowdell<\/a>, is that Flash gives you the benefit of <b>one consistent runtime<\/b>.  The Flash platform probably renders more consistently across browsers than HTML+SVG+Canvas+CSS - since the plugin directly controls a box of pixels on the web page I should hope so!  But is it equally consistent across operating systems?  And has it always been that way?  <!--more--><\/p>\n<p><!--You mean there's never been one single rendering difference on the Flash Player between Windows, OS X and Linux?  That's amazing considering the difference in the underlying platforms of graphics, event handling, media, etc.--><\/p>\n<p>Don't worry, <a href=\"http:\/\/isflashdeadyet.com\/\">Flash isn't dead yet<\/a>, but it's clear that the tides are changing these days, with <a href=\"http:\/\/www.apple.com\/ipad\/\">more devices<\/a> entering the market that do not (and cannot) have Flash installed.  Frankly SWF is no longer the reliable format it once was.  Yes you can reach 90+% of the desktop browsers, but what about the millions of mobile web users?  <\/p>\n<p>So lots of people have had the same idea:  Adobe needs to update its tools to output in Open Web formats.  Simple, no?  Instead of Save As SWF, Save as Web App, right?<\/p>\n<p>\"But wait!\", I hear some Adobe lovers cry.  Rendering across browsers isn't consistent!  The DOM is a mess!  There are tons of CSS layout bugs! SVG\/Canvas support across browsers is uneven at best!  There are many features that aren't even supported in some browsers yet!<\/p>\n<p>Hogwash. <a href=\"http:\/\/www.openlaszlo.org\/\">OpenLaszlo<\/a> foresaw this transition years ago.  <a href=\"http:\/\/code.google.com\/webtoolkit\/\">GWT<\/a> does the same thing.<\/p>\n<p>You Adobe folk are bright engineers.  You just have to make it work.  <b>Exactly like you made it work, and continue to make it work, across Windows, OSX and Linux graphics systems.<\/b>  The rendering layer is at the browser now, not the operating system.<\/p>\n<p>There are <a href=\"http:\/\/en.wikipedia.org\/wiki\/Comparison_of_JavaScript_frameworks\">lots of JavaScript frameworks<\/a> that help to smooth out the script and DOM bumps.  There are tricks you can do until SVG\/Canvas feature X is consistently supported.  Someone already figured out how to <a href=\"http:\/\/paulirish.com\/work\/gordon\/demos\/\">render SWF files using SVG+JS<\/a>, for goodness sake.  <\/p>\n<p>And guess what - two of the major browser engines are open source - which means if a particular feature is missing in those implementations you can put an engineer on it for two months so that in the next version of the browser, it will be there for you.<\/p>\n<p>You just need to think ahead.<\/p>\n<p>As I'm sure you are. \ud83d\ude09<\/p>\n","protected":false},"excerpt":{"rendered":"<p>[clipart]The one persistent mantra I hear from staunch Flash defenders, folks like John Dowdell, is that Flash gives you the benefit of one consistent runtime. The Flash platform probably renders more consistently across browsers than HTML+SVG+Canvas+CSS &#8211; since the plugin directly controls a box of pixels on the web page I should hope so! But [&#8230;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[16,39,25,11,28],"tags":[84,118,198],"class_list":["post-680","post","type-post","status-publish","format-standard","hentry","category-adobe","category-laszlo","category-software","category-technology","category-web","tag-flash","tag-open-web","tag-svg"],"_links":{"self":[{"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/posts\/680","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/comments?post=680"}],"version-history":[{"count":5,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/posts\/680\/revisions"}],"predecessor-version":[{"id":686,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/posts\/680\/revisions\/686"}],"wp:attachment":[{"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/media?parent=680"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/categories?post=680"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.codedread.com\/blog\/wp-json\/wp\/v2\/tags?post=680"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}