Re: [rtcweb] Text communication in RTCWEB sessions

Mark Rejhon <markybox@gmail.com> Tue, 04 December 2012 23:29 UTC

Return-Path: <markybox@gmail.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 540FD21F8AF8 for <rtcweb@ietfa.amsl.com>; Tue, 4 Dec 2012 15:29:53 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.599
X-Spam-Level:
X-Spam-Status: No, score=-3.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-1]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id GqeVz4adaB7w for <rtcweb@ietfa.amsl.com>; Tue, 4 Dec 2012 15:29:52 -0800 (PST)
Received: from mail-we0-f172.google.com (mail-we0-f172.google.com [74.125.82.172]) by ietfa.amsl.com (Postfix) with ESMTP id 96AC521F8AD2 for <rtcweb@ietf.org>; Tue, 4 Dec 2012 15:29:52 -0800 (PST)
Received: by mail-we0-f172.google.com with SMTP id r3so2010052wey.31 for <rtcweb@ietf.org>; Tue, 04 Dec 2012 15:29:51 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :content-type:content-transfer-encoding; bh=/rvtEqlYw32Do/7y+hd7fuTlaFK0u09Lpf/zmetjSBw=; b=PNM69Wyw45ZpXSyemXKC8hkPjEDbgkBc0kotQIH+ZQZe+y7f/TGLax4JuCAe3k9Kbq 4P9aNK6nBQxrf6is+/yLyEmThcbWmlHRaIxuoq6yLc57sZHb8rs9WlFiCeOgzM9AzMtG nEMj1i0DIYjIt5VfeWvTJu6nbDo6fSGbt9PdAmg1lo3+Y44ra6p9+EcKEMQyVEZ2qJER wIrbNI3m7iUQiNPbU818IzSbbg1LcpObTv62HbVnG+keSP+VpQmLjzXXc1tUEDN+//lF 5suxjHp8ZHNdgrlaPTi2aLkWhOf3l3CcT7loeoclcaA3S2Ppu60ACyAhkp12cw1RF8wY kOQg==
Received: by 10.180.102.234 with SMTP id fr10mr34179wib.17.1354663791630; Tue, 04 Dec 2012 15:29:51 -0800 (PST)
MIME-Version: 1.0
Received: by 10.194.18.142 with HTTP; Tue, 4 Dec 2012 15:29:31 -0800 (PST)
In-Reply-To: <AE1A6B5FD507DC4FB3C5166F3A05A48416134062@tk5ex14mbxc272.redmond.corp.microsoft.com>
References: <201211121714.qACHEMoq914291@shell01.TheWorld.com> <50A13860.8050900@omnitor.se> <201211282145.qASLjanB1955372@shell01.TheWorld.com> <50B82D25.3030806@jesup.org> <201212042040.qB4Kesnl2368891@shell01.TheWorld.com> <50BE7738.8090403@omnitor.se> <AE1A6B5FD507DC4FB3C5166F3A05A48416134062@tk5ex14mbxc272.redmond.corp.microsoft.com>
From: Mark Rejhon <markybox@gmail.com>
Date: Tue, 04 Dec 2012 18:29:31 -0500
Message-ID: <CAA79oDmXHCxCrq6Sv3ZsG8Jt0R1aGTRCObm+U3Tgpn9k+Cnf5Q@mail.gmail.com>
To: rtcweb@ietf.org
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: quoted-printable
Subject: Re: [rtcweb] Text communication in RTCWEB sessions
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rtcweb>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 04 Dec 2012 23:29:53 -0000

On Tue, Dec 4, 2012 at 5:25 PM, Matthew Kaufman
<matthew.kaufman@skype.net> wrote:
>> -----Original Message-----
>> From: rtcweb-bounces@ietf.org [mailto:rtcweb-bounces@ietf.org] On
>> Behalf Of Gunnar Hellström
>> I think there are a lot of good reasoning in you entry.
>> A Real-time text UI can be quite tricky and quite processor-consuming.
>> Imagine two rapid typers, typing along with over 10 characters per second,
>> one local and one remote typing simultaneously with a UI showing  their
>> entries building up in the real-time text preview style, as traditional chat but
>> with the last entries being real-time entries continuously building up by
>> entered text. It might be heavy for JS to recalculate and display the text area
>> in such conditions.

I should note that this isn't true anymore for modern optimized
browsers, especially on GPU accelerated platforms.  They are
surprisingly efficient, thanks to nearly two decades of browser wars.
 I'm able to update text inside a fixed-size <div></div> using
JavaScript well north of tens or hundreds of thousand times a second
in desktop browser programming, the optimizations in browsers really
show.

My preference: I'd say let rtcweb provide simple text receive/delivery
API's (bare simple minimum to meet legislative requirements), and let
JavaScript provide presentation -- it's just one line of text, such as
divTag.InnerHTML = "hello, world";
It's high-performance nowadays in modern, optimized browsers,
especially when using fixed CSS bounding boxes (to prevent text reflow
overheads).  Just let the web developer worry about presentation of
real-time text, IMHO.

It simplifies things, it keeps webrtc to just the details and API level stuff.
No need to complicate things and bring W3C stuff into play for RTT.

Mark Rejhon
Author of XEP-0301 - XMPP Real-Time Text