From the Webaverse #003 Oct. 15 Slowpoke Safari, QUIC rolling out, Roblox IPO, spies printers, and more
Exclusively curated bites of tech trends directly from the Webaverse community
#webdev
Safari late to the graphics party
While other major browser teams release experimental support for WebGPU, this week the Safari team released a preview build with WebGL2 support. Come on Apple, you can do it!
Our WebGL2 implementation is in good enough shape that we should enable it by default for broader testing. - Dean Jackson
Safari WebGL compute support efforts has been “halted”, because WebGPU is better and “around the corner”. Chrome and Firefox support it since… 2017.
WebGPU is an emerging API that provides access to the graphics and computing capabilities of hardware on the web.
A few years ago, Google was actively working towards their own low level GPU API, but abandoned the effort to back Vulkan.
Few really love Vulkan, but Yet Another API with marginal advantages on one platform would not be a positive.
Shame they broke Web Audio at the same time.
Links: Webkit.org Webkit.org (2) Vulkan WebGL2 In Firefox (2017)
Avaer ELI5 on YJS from the previous newsletter.
It lets you send some binaries in whatever order and clients automatically sync
The price is some overhead in storage, but less than you'd think
It uses lamport timestamps to garbage collect tombstones/irrelevant data due to clients syncing.
You don't need any authority, it's just magically eventually consistent
We're using it to synchronize multi-app state
And it turns out to be fast enough for realtime
MDN Compatibility Report of this year is out
The MDN Browser Compatibility Report attempts to identify specific issues causing a lot of frustration for building the web, and what could be done to improve the situation.
Safari being that high on the 'platforms that cause issues' is spot on (it ought to be first place really)
Flex > Grid, and many other stats
Links: The Report (PDF)
Chrome is deploying HTTP/3
HTTP/1 from the late 90's (ascii over TCP), thereafter patched with HTTP/1.1 for many parallel TCP connections (JS, imgs.. etc) was better but ineffective because TCP connections are slow to start and were kept open for a very short time. So it was wasteful. Plus you were limited to ~6 requests to the same hostname inflight at the same time.
HTTP/2 specs (binary multiplexed over TCP) shipped in 2015 with streams, so all the workarounds were put inside the protocol. The request could now flow from one TCP connection into streams, but repairing the TCP was costly.
QUIC experiments started with google deploying HTTP2 over UDP in 2013, and then bringing it to the IETF in 2015, birthing the current QUIC working group
Faster Handshakes, more efficient packets retries: QUIC Uses UDP like TCP uses IP.
QUIC Streams: Many logical flows within a single connection similar to HTTP2 but at the transport layer.
A whole other load of other protocols are lurking (HTTP worked as the first), waiting for QUIC to be rolled out to piggyback on the application protocol (WebRTC / DNS)
So HTTP/3 (binary over multiplexed QUIC) is simply the HTTP protocol over QUIC.
The biggest advantage of QUIC is how much more sense it makes for wireless communications and mobile devices. Mobile networks break TCP connections all the time, it just violates too many useful assumptions of TCP.
It handles congestion control slightly differently since it can estimate the Round Trip Time more accurately, but it’s essentially the same ACK based mechanism that TCP uses. But watch out it will consume more CPU % on your web server.
Links: Chromium.org Youtube on HTTP3 (40min) by the creator of CURL, check at 30min for the 8 biggest challenges Github - QUIC and Nodejs
Bonus: A GPT-3 bot posted comments on Reddit for a week and no one noticed
#gaming
Roblox plans its IPO
Like mentioned in last week newsletter, don’t forget Roblox!
I said if we build this thing and we own it, we will have total control over reliability and performance and based on my experience, having control over those things will create more trust and create more end-user stickiness where end-user growth should move up and to the right
- Dan Williams. VP of Corporate + Production Engineering
U.S. consumer spending on video gaming hit a record $11.6 billion in the second quarter, up 30% on the year-ago period
Gets 5% of the press of Fortnite or Minecraft, probably has more MAUs than the former and almost as many as the latter.
3 years ago, it was only a single data center in Chicago all running nonvirtualized servers (and Microsoft Windows Server operating system, yes, that was going to hurt them hard in licensing fees) that the company used to run its bare metal servers.. The same year they decided to port their renderer to Metal seeing that the GL market on iOS kept shrinking. The only hurdle was getting their shaders to compile.
They then focused on PoPs (points of presence): presence at the edge is essential for a gaming platform where users expect near-instantaneous response while playing. And are still trying to move to microservices.
One year after Roblox owned 100% of its server capacity, meeting one of its major goals to control its own destiny.
Their MAUs grew from 64 million in Q4 2017 to over 150 million in July
Links: Techcrunch Roblox swap to Metal
Activision: They can’t play other games if they don’t have room for them
Apple VS Epic
Epic Denied Preliminary Injunction for Fortnite, but Apple Can't Block Unreal
The judge has proposed the temporary compromise that Apple allow Fortnite onto the store while Epic pays into an escrow — which Epic has refused.
The 30% escrow offer I think misses the point for both Epic and Apple. Because while both want the money, Apple's entire argument is predicated on the "privacy and safety" of only going through their payment processing, whilst Epic's entire argument is predicated on that requirement being monopolistic and unfair and that third party processors must be allowed.
Bonuses:
MiHoYo has Already Grossed Over $100 Million in Genshin Impact Earnings Grossing over $100m, Genshin Impact recoups development costs in two weeks
#scripting
Did you know your printer tracked you?
Many printers use this, printing faint yellow dots in a grid pattern on printed documents as a form of steganography, encoding metadata about the document into its hard-copy output.
You can see the dots on color prints from machines made by Xerox, Canon, and other manufacturers the dots are yellow, less than one millimeter in diameter, and are typically repeated over each page of a document. In order to see the pattern, you need a blue light, a magnifying glass, or a microscope.
Armed with this evidence, the NSA was able to quickly determine who had leaked a document by checking audit logs.
Links: Wikipedia How a few yellow dots burned the Intercept’s NSA leaker Also works for 3D printers Tool List of printers
Bonuses:
Why you shouldn't try mozilla hubs on docker
#memeology
#events
Festival of International Virtual and Augmented Reality Stories. October 7th – November 2nd 2020 (by our beloved @bai)
Link: Fivars.net
Untitled NFT Hackathon goes on for two more weeks. Some ideas were actually discussed during our #M3 meeting, and an event is planned
Link: Medium
Bonus: MagicalCrypto tour of their hubs space - Oct 16 9am PT
#entrepreneurship
Bleeding edge tech means you’ll be bleeding to death
Sales are hard and if you want to make it 10X harder, try selling something nobody knows anything about. Like literally nothing.
When you're trying to drag your zombie-death startup from the crypts of hell and into the light, there are so many things to stress about. Your messaging, positioning, pricing, product, customers, sales, employees—literally everything. But when you're building something truly new, there is an additional poisonous leach that creeps into your brain and plants its ugly seed: doubt.
We've been told a narrative that sounds great and inspires, but it's not based in facts. Bleeding edge is a myth that fucks up your chances of success.
Links: Contrast.app
In tough economic times, few customers want to be innovators if they can help it. Pricing your product right will help you bear through being stuck with non sustainable packs of visionarries
#m3
M3 members are experimenting with open standards like WebXR and VRM. We want to build a long lasting foundation for the open Metaverse. Some of our followers call us the ‘Homebrew Computer Club of the Metaverse’.
Regular meetings to discuss and present our ideas, and be held to accountable progress on them.
Research events that serve as both learning and promotion of our ideas.
Producing clear communications of our ideas, in the form of videos, blog posts, social media activity, and so on.
Fundraising work, including Github Sponsors/Patreon/Venture Capital, where having capital available helps the group's goals.
Organization and coordination of presentations with other leaders who do not necessarily share our views.
Managing minutiae, such as the Github organization, Discord channels, video transcriptions, etc
Randomly from M3 this week:
Avaer builds a Decentraland loader [Link] and Crytovoxels [Link] and then a retroarch emulator [Link] all on WebXR
Contribute to the draft of Metafactory x M3 (or peek at it) [Link]
Jin buys a Voxel front store (and wants the the amazon prime of ethereum) [Link][Discord]
This newsletter is carefully picked from the content of Webaverse community on Discord and Twitter. Join our Discord server to share and discuss the future of spatial applications or follow @webmixedreality on Twitter.