Merging of Web and Mobile APP

08 Nov 2017


Chunming, Rouslan, Fuqiao, mdadas, QingAn, Geun_Hyung
Max Liu (Alibaba)
xfq_, xfq


<angel> Meeting: The Merging of Web and Mobile App

<xfq_> Max: First of all, I'd like to have a very short intro of myself

<xfq_> ... I work for Alibaba

<xfq_> ... today's topic is about the merging of Web and mobile app

<angel> scribenick: xfq_

UNKNOWN_SPEAKER: the purpose is solve problems by W3C standards

<xfq> ScribeNick: xfq


Max: Welcome all!
... Questions are welcome
... firstly I'd like to talk about the challenge for the mobile web in the developer perspective
... in China, there're many "super-apps"
... we have Taobao, Alipay, where people can do everything with these apps
... we need to have apps for iOS, Android, desktop etc.
... if we look at the Web technologies, the advantage is it works for every platform
... but when we look at the DOM, one question is how we optimize it for the mobile context
... many companies are trying to to that
... people are talking about the perf of web apps and native apps
... there're also hybrid apps, but they still have problems
... so we can optimize the DOM for the mobile context
... DOM does not have the MVC pattern
... Model, View, and Controller
... if we develop native apps for Android, it has application lifecycles, but DOM does not have this
... our solution is called Weex
... weex.apache.org
... in the traditional model, we have seperate teams for iOS, Android, Web apps
... in the Weex model, we can need one team
... we do have commercial deployment for Weex
... 15k+ developers, perf increased 50%
... 100+ apps
... we have an online shopping festival in Nov, and the app uses Weex
... How Weex works?
... we use HTML/CSS/JavaScript as the languages for Weex
... the UI is defined in the templates
... you can deploy the JS bundle in the server, and run the JS bundle in a browser or a native environment
... we have runtime for iOS and Android

<Chunming> Weex homepage: http://weex.apache.org/index.html

Max: that's why Weex has the ability to support multiple platforms
... it uses the MVC programming model
... <template>: UI structure
... <style>: style
... <script>: behavior

[Max explains an example]

Max: we have a very important component - the virtual DOM
... the UI is specified in the virtual DOM, then rendered in the real DOM
... Weex's life cycle is very similar to other frameworks

[Max shows a table of comparison of Weex, native, HTML5, and hybrid apps]

Max: The architechture of Weex
... W3C should focus on the DOM layer
... Weex uses a combination of many technologies, some are out of the scope of W3C
... and we think W3C should focus on the DOM part of Weex
... we would like to propose a community group


Max: Questions?

rniwa: In native app I use the UIKit API, what does Weex use?

Max: It uses vue
... and customized WebView
... it uses the native DOM for rendering and use VDOM as a translation

Kenneth: What's the difference between Weex and react-native (or other similar frameworks)?

Max: They're similar.

breezet: The DOM layer is similar to react-native.

@@: The current practice Chrome uses is uses WICG, and you don't need a new CG for this.

Kenneth: So you'd like to standardize something like the VDOM?

@@2: I don't think we should standardize a specific programming model.

@@: I think the next step here is to come up with a specific proposal: what should we add to DOM?

scribe: we don't have the right Chrome people here, but we're happy to discuss more.

Max: I think another CG may help
... It may have overlap with existing CGs, but we're focused on mobile. That's why I'd like to propose a new CG.
... If you're interested in this topic, you can join the CG after the creation.

Justin: I'm wondering the relationship with PWAs

Max: Good question.
... You can run this inside the browser.

<QingAn> QingAn: we can start with extend the current DOM to support use cases like zoom gesture, slide gesture, pinch gesture

Justin: What's the gap between native apps and PWAs?

Max: You need browsers supporting it.

<Hexcles> RRSAgent: draft minutes

Guido: PWA, AMP and MIP @@

Max: We do think that Web technologies are great, but I don't want Web technologies only working for browsers.

<QingAn> max: iot device can also be included in the next step

Max: Besides iOS, Android and desktop, we also support Linux/IoT.
... There're different technologies trying to solve the same problem, but I think this issue is an interesting topic we can discuss.

<QingAn> @@ makes the browser too heavy?

Max: I think with browser or without browsers is not important.
... in the lunch today, I had a discussion with an Auto WG participant.
... It's also important for vertical industries.

@@3: In the past few years, we saw very customized browsers.

Kenneth: Browser vendors need to find out why the browsers' capabilities are not optimal in some cases, i.e., why your solution is better.

Max: It's a trade-off. Performance is one perspective, but we also need to consider other things.

[showing the comparison of Weex, native, HTML5, and hybrid apps table]

<QingAn> @@: need concrete proposals

Kenneth: It needs to be more concrete, so that the browsers know how to improve.

<QingAn> Max: in CG, can collect problem statements

<QingAn> Judy: to trigger a discussion

Judy: The point is to trigger a discussion.

rniwa: W3C is an org for standardizing Web APIs. What part of Weex needs to be standardized? We're not going to standardize the entire framework.

Judy: I kinda agree with rniwa, but we need some company to start the conversation.

<QingAn> Judy: in cg, can do whitepaper... initial study, collect problems

rniwa: Have you reached out to the react-native people?

Max: We should. Fair enough.

Judy: The "double-eleven" festival uses this technology.

<QingAn> @@: continue the conversation, to see which parts can be standardized, the gaps

Max: Any other question?

Judy: In Thurday's AC meeting we will also talk about this.

Summary of Action Items

Summary of Resolutions

[End of minutes]

Minutes formatted by David Booth's scribe.perl version 1.152 (CVS log)
$Date: 2017/11/10 22:29:49 $

Scribe.perl diagnostic output

[Delete this section before finalizing the minutes.]
This is scribe.perl Revision: 1.152  of Date: 2017/02/06 11:04:15  
Check for newer version at http://dev.w3.org/cvsweb/~checkout~/2002/scribe/

Guessing input format: Irssi_ISO8601_Log_Text_Format (score 1.00)

Succeeded: s/for standardize/for standardizing/
Present: Chunming Rouslan Fuqiao mdadas QingAn Geun_Hyung
Found ScribeNick: xfq_
Found ScribeNick: xfq
Inferring Scribes: xfq_, xfq
Scribes: xfq_, xfq
ScribeNicks: xfq_, xfq

WARNING: No "Topic:" lines found.

WARNING: No date found!  Assuming today.  (Hint: Specify
the W3C IRC log URL, and the date will be determined from that.)
Or specify the date like this:
<dbooth> Date: 12 Sep 2002

People with action items: 

WARNING: No "Topic: ..." lines found!  
Resulting HTML may have an empty (invalid) <ol>...</ol>.

Explanation: "Topic: ..." lines are used to indicate the start of 
new discussion topics or agenda items, such as:
<dbooth> Topic: Review of Amy's report

WARNING: IRC log location not specified!  (You can ignore this 
warning if you do not want the generated minutes to contain 
a link to the original IRC log.)

[End of scribe.perl diagnostic output]