Minutes Sydney F2F 2015-02-07 Part I: Introductions and Houdini Aspirations

Introductions and Houdini Aspirations
-------------------------------------

  - Everyone in the room introduced themselves and gave a brief
        summary of what they're interested in and what they hope the
        Houdini task force will achieve.
  - It was agreed that the rest of the day will be spent on
        presentations of Houdini-based projects and the creation of
        a roadmap for progress.

===== FULL MINUTES BELOW ======

Present:
  Rossen Atanassov
  Tab Atkins
  David Baron
  Rick Byers
  Daniel Glazman
  Dean Jackson
  Brian Kardell (phone)
  Toru Kawakubo
  Ian Kilpatrick
  Chris Lilley
  Peter Linss
  Shinyu Murakami
  Robert O'Callahan
  Xidorn Quan
  François Remy (IRC)
  Simon Sapin
  Alan Stearns
  Shane Stephens
  Ian Volick
  Greg Whitworth
  Johannes Wilm
  Steve Zilles

Scribe: TabAtkins

Introductions and Houdini Aspirations
-------------------------------------

  Rossen: I've been getting a bunch of emails about Houdini, what
          it means, etc.
  Rossen: I have to recognize and give credit to bkardell for coming
          up with Houdini.
  Rossen: The name comes from us wanting to get away from the magic
          of CSS, I think he described it.
  <ChrisL> Houdini was famous for escaping from small boxes.
  Rossen: I think we should start with a round of intros, and
          instead of stating your name and affiliation, it would be
          good to give a short introduction about who you are, what
          your specialty is in the web platform, what your
          interests/strengths are, and an idea of what you think
          Houdini should or shouldn't be.

  Rossen: I'm Rossen and I'm with Microsoft. I've been working on IE
          for almost 8 years. My daily activities are about the
          layout and styling subsystems of Trident. I've written
          most of the layout engine twice now.
  Rossen: When I started we had one engine; it was called HasLayout.
          That is no longer true.
  Rossen: So I'm very familiar with anything to do with layout, at
          least how we've implemented it.
  Rossen: I've also done a lot of modules, like line layout, flex
          layout, writing modes, etc. Anything with layout.
  Rossen: For me, I think the programmability model of the web being
          tied to elements sucks, and the fact that you can't
          control what you see is something we can improve on.
  Rossen: I'm also interested to see how we can better expose the
          ways we use to point to things (touch/gesture/etc events).

  shane: I'm Shane Stephens of Google, working from Sydney on Blink.
  shane: My team has been ramping up on responsibility for the style
         engine. We've had a long-standing interest in style.
  shane: I have interest in Houdini in three separate areas.
  shane: First is the Extensible Web Manifesto, explaining the
         platform in terms of primitives.
  shane: I really believe in that, a lot of other platforms have
         that, we don't.
  shane: Second is talking to product teams in Google and hearing
         their frustrations with the web platform, especially when
         moving from Android or iOS.
  shane: I think improving the customize-ability of style/layout can
         really provide value to people trying to build larger
         websites.
  shane: Third is, through previous work on Web Animations and other
         CSS things, one of the things we always try to do is
         polyfill the feature while we're talking about it, it gives
         useful information on the feature.
  shane: CSS is one area where polyfilling is really hard, and I
         think we can help with that.

  xidorn: I'm Xidorn from Mozilla.
  xidorn: I just joined Mozilla last quarter. I'm working on layout
          things.

  dbaron: I'm David Baron from Mozilla. I've been working on Gecko
          for a long time.
  dbaron: The main thing I wanna see the task force work on is
          figuring out how to expose primitives so that developers
          can *do* a lot of the things that today have to happen in
          browser engines.
  dbaron: So essentially polyfilling.
  dbaron: And do them both correctly and efficiently.
  dbaron: I think that when we do this it's worth thinking about
          tradeoffs.
  dbaron: There are a bunch of things related to user control and
          future compat, where there are something benefits to not
          exposing things, and we have to figure out where those
          tradeoffs are.
  dbaron: Another area I wanna be careful with is that it's easy to
          define a set of low-level primitives and build something
          else on top of those primitives, but it doesn't mean those
          *were* the primitives that existed before.
  dbaron: I worry about defining a set of primitives that matches
          what one browser engine does and not another, and thus
          forces one engine to rewrite a lot of things.
  dbaron: And also the other way - I worry about defining the set of
          primitives browsers do right now, and locking us out of
          changing in the future.

  plinss: I'm Peter Linss from HP. Also co-chair of the TAG. This is
          actually a joint TF between CSS and the TAG.
  plinss: The goal here is to add extensibility. CSS has been a big
          black box of magic since day one.
  plinss: I echo all of dbaron's concerns, and I get it, but we need
          to work on this.
  plinss: I hated from day one that the DOM APIs have conflated the
          doc and its display, and we need to fix it.

  ChrisL: I'm Chris Lilley, working on several W3C groups (Fonts,
          SVG, CSS, ex-TAG).
  ChrisL: In SVG I was in an early attempt at extensibility,
          shadow-DOM like.
  ChrisL: So I'm aware of how things can fail, like beautiful-
          looking form controls that only work on one platform.
  ChrisL: And how things can look good as long as you're using
          English, and break as soon as you use other characters.
  ChrisL: I like what dbaron said about not fossilizing a particular
          stage of webdev or a particular browser's internals.

  glazou: I'm Daniel Glazman, owner of Disruptive Innovations,
          member of W3C, co-chair of CSS.
  glazou: I've been involved with WYSIWYG editors for years. I'm
          probably the heaviest user of the CSSOM you could find.
  glazou: I'm interested in Houdini because of things I'm missing in
          my life.
  glazou: I'm looking at a 2002 document I wrote about CSS Editor
          Object Model, extending the parser/etc.
  glazou: I miss it so much I had to write a new parser and OM for
          my editor.
  glazou: I want access to the parser, to the box tree. I'm forced
          to polyfill all the time.
  glazou: Polyfills are ugly hacks today, affecting performance and
          difficult to maintain.
  glazou: Another thing I want to see fixed is things we dropped in
          the early days of CSSOM that weren't priority at the time.
  glazou: Like having one document rendered differently in multiple
          windows.
  glazou: It existed in a tool called Griff twenty years ago. It was
          in CSSOM, but nobody wanted to implement it.
  glazou: If we want the industry to move from BookMaster/SGML/etc
          markup to the web, we need things like this.
  glazou: Another useful second-screen experience is mobile and
          television, for example. A new thing we hadn't thought of.
  glazou: So I'm interesting in extending/opening up the parser and
          APIs. Giving access to what's internal right now, and
          should be exposed to web authors. This will drastically
          help me in my daily life.

  Scribe: shane

  TabAtkins: I'm Tab Atkins, I've been working on the CSS for <a
             long time>, primarily writing specs.
  TabAtkins: I'm interested in Houdini because there's so much you
             can do on the rest of the web that you can't do in CSS,
             which means we only explore a tiny part of the space
             right now.
  TabAtkins: Instead of polyfilling, we need to wait for vendors to
             spend N years getting everything done. Too slow.
  TabAtkins: The only value in some of my specs is because you can't
             do them in JS.

  Scribe: TabAtkins

  SimonSapin: I'm Simon Sapin from Mozilla research. I work on
              Servo, a new browser engine that's a research engine
              for new techniques, particularly parallelism as much
              as possible in the browser.
  SimonSapin: So we do things internally a lot different from other
              browsers.
  SimonSapin: So I'm here to make sure we don't accidentally lock
              things into the details of one browser, so Servo, and
              more generally parallel layout, can be compatible with
              this.

  dino: I'm Dean from Apple. I'll mostly repeat everything dbaron
        said.
  dino: I'm not super sure we can get all the right people here to
        do this work, whatever it is. Browser internals are horribly
        scary, and only understood by a few people scattered around.
        Those people don't generally like traveling and talking to
        people.
  dino: I don't want to get into a place where we come up with a new
        tree API that sits between DOM and our internal layout
        trees, just another level of abstraction.
  dino: But I'm also interested in seeing a bunch of the failure
        points authors have run into getting fixes - querying
        layout, stuff with style, etc.

  johanneswilm: I'm Johanness Wilm. I've been working as a JS dev
                for the past 3 years on web-based editing and trying
                to get professional printing into the web.
  johanneswilm: For both things, which I thought would be fairly
                general, I quickly ran into various browser problems.
  johanneswilm: (Works for Vivliostyle)
  johanneswilm: So that one cannot access many primitives directly
                as a JS developer has been a real concern, so one
                has to do so many tricks to get the information
                today, so that's what I'm here for.
  <johanneswilm> note: I have not worked for Vivliostyle so far. All
                 the stuff I did so far has been open source and
                 financed by various groups, but not Vivliostyle.
                 However, I'm excited to work for/with Vivliostyle
                 henceforth to go further than where I got so far
                 with BookJS/simplePagination.js .

  Toru: I'm Toru Kawakubo. I joined Vivliostyle a while ago, with
        Shinyu. We're trying to do typesetting, especially paged
        typesetting, in the browser.
  Toru: I've posted to the mailing list a bit about this. I'm new to
        this area, so I'd like to hear a lot of your expert opinions
        and discuss what we can do to make javascript polyfills more
        powerful.

  roc: I'm Robert O'Callahan, working on Mozilla for about 15 years.
  roc: I've done layout, and a bunch more, graphics backend, media,
       compositor stuff, the whole renderer.
  roc: I'm interested in most things.
  roc: I'm not interested in implementing multiple presentations of
       one document (sorry, Daniel).
  roc: Not interested in explaining a lot of what we currently have
       in CSS in terms of new primitives. I think it's very hard,
       and we can get a lot of value out of this without having to
       do this.

  Volick: I'm Ian from Google. I've spent the most time on compositor
          driven effects, better scrolling, animation, etc.
  Volick: I'm bummed out by how hard it is to coordinate the things
          you do in JS with these accelerated things; they're very
          janky.
  Volick: So I'm very concerned with performant primitives that make
          it easy to fall into a pit of success.
  Volick: I'm also very cognizant of not tying ourselves to current
          implementations in browsers.
  Volick: And of the tradeoff between richness and performance.

  rbyers: I'm Rick Byers for Google. I do stuff related to input for
          Blink.
  rbyers: I've worked on other platforms before Google, and there
          are some things about the web I think are amazing, so I
          hate seeing other platforms take share away from the web
          for silly reasons.
  rbyers: My big concern is that I worry we've gotten into the mind
          that we don't have the same flexibility that other
          platforms have.
  rbyers: I'm worried about native mobile platforms. Gotta take
          those day-to-day effects on their iPhones and make them
          work as well on the web.
  rbyers: But we don't have the same ability to just throw stuff out
          and start over something new.
  rbyers: We're collaborating, we're designing for 20 years here.
  rbyers: So we have to be thoughtful, but it's also critical and
          urgent to fix some of the shortcomings others have talked
          about.
  rbyers: So I'm confident we can innovate and come up with
          primitives here. People work *so hard* to work around the
          limitations (FastBook, etc), and we can open things up for
          them and do wonderful things.

  Shinyu: I'm the Shinyu Murakami, CEO of Vivliostyle.
  Shinyu: I was working on Antenna House, making the print formatter
          work on XSL and XSL-FO.
  Shinyu: Been working on that since 1999, working on the AH layout
          engine.
  Shinyu: Later, AH implemented CSS Paged Media based on the XSL-FO
          engine.
  Shinyu: But the AH CSS formatter was very proprietary, with lots
          of vendor extensions, and not very compatible with web
          browsers.
  Shinyu: I started Vivliostyle last year because I thought the
          future must be more open and an open-source web-browser
          typesetting engine is needed.
  Shinyu: I found johanneswilm book.js library for making book
          layout and that inspired me very much.
  Shinyu: I think that web browsers, we can make a very professional
          typesetting engine with web browsers.
  Shinyu: I expect Houdini to make our work very easy.

  gregwhitworth: I'm Greg Whitworth for Microsoft. I work with
                 Rossen on layout.
  gregwhitworth: I was a webdev. I ranted about IE, got asked to
                 work on it.
  gregwhitworth: My main focus is layout. Most importantly, as Blink
                 and Gecko people can suggest, interop is huge to me.
  gregwhitworth: So I'm excited about making some primitives that
                 can help with producing interoperable things.
  gregwhitworth: But there's a fine line between giving people
                 options they need and drowning them in options. I
                 don't want webdev to require a major engineering
                 team to do interesting things.

  szilles: I'm Steve Zilles, for Adobe. Been involved in CSS since
           its creation.
  szilles: My interests are line layout and i18n. Both are hung up
           with a lack of public driving them, but I suspect that
           with the right facilities the public would use them.
  szilles: So I'm interesting in doing those kinds of layout thing
           in an extensible way.
  szilles: Also, Adobe is a tool maker, not a browser company, so
           like Daniel I'm interested in being able to do better
           tooling.
  szilles: I'm also interested in making sure we identify low-
           hanging fruit, rather than being caught on things that
           could take a lot of time and effort.

  astearns: I'm Alan Stearns, also from Adobe. I've been a member of
            CSS for 3 years or so, and also DPIG, very interested in
            publishing-related things.
  astearns: My team tried to develop some new features, and found it
            very difficult. I'm interesting in making that easier.
            Particularly typographic effects in the browser.
  astearns: I'd like to get the roadmap in place of what we want to
            do to make CSS extensible, but that roadmap needs to
            have small incremental steps along the way, letting us
            maybe change directions as we learn from each step.

  iank: I'm Ian Kilpatrick. I'm a SWE working on Blink. Transferred
        to Blink about 6 months ago, previous of Apps (Docs, Drive,
        Gmail).
  iank: Basically I wanted more power as a webdev. I've worked on a
        bunch of internal frameworks; it was easy to extend other
        parts of the platform, like JS, but I always found myself
        frustrated with CSS and layout.
  iank: So I'm interested in giving a bunch of power to framework
        devs, Ember and React and such.

  Rossen: Awesome. Thanks for those introductions, telling us your
          aspirations.
  Rossen: In the interest of time, I'd like to quickly summarize.
  Rossen: I think that obviously there is enough people with enough
          deep understanding to try and describe what we are after.
  Rossen: For the rest of the day, we'll first take a break to fix
          the projectors and set up a telcon bridge.
  Rossen: After the break, if anyone wants to present something
          they've been working on in relation to Houdini work, we'll
          open the floor for that.
  Rossen: After that we'll figure out our concrete topics and start
          putting together a roadmap, like astearns suggested.
          That'll probably exhaust the day.
  Rossen: Tomorrow we'll continue and start talking process,
          cadence, etc.
  Rossen: I also echo dino's concern about 5-day long CSS
          discussions, and I've got SVG right after that.
  Rossen: This is a one-time event hopefully. We'll hold any Houdini
          meeting separately.

  <br dur=15m>

Received on Tuesday, 3 March 2015 19:18:41 UTC