Meta

Adobe Web Platform Round Up: coding, testing, tooling, and more

My team at Adobe exists to enhance the web platform. Adobe believes the web will become the ultimate platform for creative expression. We’re doing what we can to move the web towards that end. This takes several forms, including contributing open source code, contributing to web standards, and contributing to Adobe tools.

For the last few years, we have been fixing bugs and adding features to open source browsers – WebKit, Gecko and Blink. We’re aiming to increase browser compatibility and to increase the expressivity of the web platform. In addition to browser code, we work on open source projects that demo and polyfill new features for the web.

Along with sharing code, we work on web standards. We help edit the standards documents that say how a browser feature should behave. We write tests where needed and work on the test infrastructure at the W3C. And we help steward the Web Platform Docs effort to document the web platform.

Then we take the experience we’ve gained by diving deep into standards and browser code to move Adobe web tools forward. We offer advice on what new features to add, write code for internal and open source projects at Adobe, and have participated in an upcoming redesign of adobe.com.

Here are some quick highlights of our work from the first half of 2014. Follow any of the links for more in-depth information.

Shipping Code

Apple recently announced that Safari 8 will include both CSS Shapes and Compositing and Blending, two features our team worked on in WebKit. This is the second year in a row where the WWDC keynote mentioned our work. Last year, they shipped CSS Regions. Safari 8 will have an improved version of Regions as well (particularly in selection, thanks to a collaboration with a team at Igalia). But Safari isn’t the only browser where you can find our code.

CSS Shapes is also shipping in Chrome 37 (again, thanks to a collaboration, this time with a team at Samsung). Nearly all of Compositing and Blending is now present in current builds of Chrome and Firefox (with some finishing touches for Firefox hanging out in the beta channel, so they’ll be available soon). The clip-path implementations in WebKit and Blink have been updated to match the latest specification. And we’ve added a bunch of Canvas improvements (hit regions, Path2D, focus rings, etc.) to Firefox, Safari and Chrome.

We also fix bugs where we can. My favorite fixes from this year are a 10x improvement to compositingperformance in WebKit, and a wide-ranging fix for viewport units in WebKit. We’ve been laying the groundwork for better filter support in Gecko, which has resulted in a number of bug fixes. Our engagement with the WebKit community resulted in twomore reviewers from our team so far this year.

Moving Standards Forward

We have been advancing W3C specifications both for the features where we work directly and other parts of the web platform we find interesting and useful. CSS Shapes and Compositing and Blending both made the Candidate Recommendation (CR) mark this year, which means the standards bodies think they’re ready to implement and test. CSS Masking is next up – it just went to Last Call, which is the step just before CR.

Testing

In the run-up towards shipping, we added a ton of tests to the W3C test suite for CSS Shapes. We added tests to several other suites as well (mainly around browser bug fixes we have been involved in). Rebecca Hauck (who now coordinates all of the CSS testing activities) recently checked in a massive refactoring of the entire CSS test suite structure. This will make it easier to integrate all of the CSS tests into the more general Web Platform Tests effort in the near future.

Tools

In addition to everything above, we also work with other teams in Adobe. We’re always looking for ways to improve the markup and CSS from all of our web tools. Brackets recently gained a shapes editor extension. SVG export from Illustrator CC has gone through a round of improvements. And we have a few more projects we’re currently working on that should be public soon.

What’s Next?

Expect more of the above over the next six months. We’ll continue to contribute to browsers and standards, and you’ll see more and more opened up in Adobe tools as features get widely implemented and interoperable. Keep up with this blog and our twitter account for news on what we’re currently working on (or considering leaping in to).