DEV Community

Ben Halpern
Ben Halpern Subscriber

Posted on

What's new and upcoming in browser land?

By definition, this is the kind of thread that never gets old.

Are there any new and upcoming features shipping in browsers, or updates on browser support for certain features we should be paying attention to?

Top comments (44)

Collapse
 
stefandorresteijn profile image
Stefan Dorresteijn

More PWA support in both desktop and mobile browsers is happening and we should be paying a lot of attention

Collapse
 
maxart2501 profile image
Massimo Artizzu

And, above all, more hardware and OS support for the web. Things are progressing steadily for Web NFC, Shape Detection API, Web Share API...

Collapse
 
jonasgroendahl profile image
Jonas Grøndahl

Super excited for more PWA support.

Collapse
 
itsjzt profile image
Saurabh Sharma • Edited

Waiting for Edge to come, finally something that would compete with chrome.

Collapse
 
gklijs profile image
Gerard Klijs

That's sarcasm right?

Collapse
 
stephanie profile image
Stephanie Handsteiner

Well, Edge is currently being rebuilt on top of Chromium, thus it'll be more or less the same thing then.

Collapse
 
seanmclem profile image
Seanmclem

The chromium version of edge is already freely available from Microsoft. I've been using it as my default browser for several weeks, it is really promising.

Thread Thread
 
nickytonline profile image
Nick Taylor
Collapse
 
scottishross profile image
Ross Henderson

No, I've been using it for the last 2 months at work. It's faster than Chrome, I've been able to get my extensions, etc.

There's still a lot of work to do for features etc, but they have to make sure to not go the way of Mozilla.

Collapse
 
markwaterous profile image
Mark

You mean now that it'll be running on Chromium and is basically the same thing with different clothes? :(

Collapse
 
seanmclem profile image
Seanmclem • Edited

It will give IE holdouts something to switch to that's easier for Developers. Also the edge chromium has different privacy settings and other neat little account management and UI bells and whistles. I think their intent is to Port over all those unique things from the original Edge. And MS has already committed code back to the original chromium project. It's nice to have the same old blink and V8 engines powering my browser, but the renewed Vigor of a desperate Microsoft developing features. Google has gotten lazy and barely iterated much on Chrome in years, besides consistently implementing new browser standards. Which will now also work perfectly in Edge. It's the best of both worlds

Collapse
 
jrop profile image
Jonathan Apodaca

WebAssembly is gaining more traction lately, and with it in particular running Rust in Node.JS and in the browser. Pretty exciting stuff

Collapse
 
maxart2501 profile image
Massimo Artizzu

Web Assembly will support a lot more features as time passes!

Threads! Garbage collection! DOM bindings! And so on.

Collapse
 
jrop profile image
Jonathan Apodaca

Can't wasm-pack for Rust already generate DOM bindings?

Thread Thread
 
maxart2501 profile image
Massimo Artizzu

Yes, sorta, but it shouldn't be possible, technically. I guess it's actually JavaScript that does the manipulation and it's exposed to the WASM part. I don't know the details...

Thread Thread
 
woubuc profile image
Wouter

Currently it's a JS lib that does the actual DOM manipulation and then communicates back to the WASM lib iirc. Not all that performant since you've got marshaling between JS and WASM in both directions for every call, but it's possible.

The DOM integration would provide direct native access to the DOM from your WASM binary. It's the one feature I'm waiting on before I really dive into it.

Thread Thread
 
jrop profile image
Jonathan Apodaca

TIL!

Collapse
 
rhymes profile image
rhymes

Firefox has been testing Picture in Picture: hacks.mozilla.org/2019/07/testing-...

Collapse
 
droidmakk profile image
Afroze Kabeer Khan. M

It has came out really good I should say!

 
sinni800 profile image
sinni800

It's not a good thing because this way, Google can increasingly dictate what the Internet should be. And they are.

Things like making Youtube slow on IE are, from one perspective, some kind of necessarily evil to get badly supporting browsers out, but it's also flexing that Google can practically decide what browsers will implement.

Let's say Google creates a new API and uses it on Youtube. Firefox will suddenly look like they're not competing. So what do they do? Include it of course. Youtube for a longer time used the non standardized Shadow DOM v0 API that only Chrome implemented (instead of using the standardized Shadow DOM v1 that everyone else targeted). It made Youtube look sluggish on Firefox but fast on Chrome.

I think all of this is harking right back to Microsoft being nonstandard with IE but people actually pulling it in because it has a high amount of users.

Thread Thread
 
maxart2501 profile image
Massimo Artizzu

I've come to the conclusion that it's better this way, as long as... it's better. It's a tautology, but il what I want to say is that Edge promised a lot but didn't deliver enough, and Chrome is definitely a better browser - at least Chromium is a better engine.

When Google will start sitting on its success, another contender will probably appear. But, in the meanwhile, Microsoft's engineers have started working on Chromium's codebase. Like, there are literally issues assigned to folks from Microsoft.

So far, so good?

Thread Thread
 
sinni800 profile image
sinni800

Well, I hope. But even if they get lazy sitting on their success, it will probably take just as long as with IE to get moving out of there again

Collapse
 
aut0poietic profile image
Jer

Not sure you can call it "upcoming" yet, but I'm pretty excited about the silly things you can do with CSS Houdini. Though while I dig JS, having the page's layout entirely dependent on more JS doesn't feel great.

Collapse
 
areahints profile image
Areahints • Edited

really? who names these things? i'd like to submit my resume.

Collapse
 
maxart2501 profile image
Massimo Artizzu

Houdini could be the most exciting thing coming to CSS. Can't wait to see things progressing, and see things more defined in relation to Layout API, Parser API and Font Metrics API. Cool stuff!

Collapse
 
laurieontech profile image
Laurie

Firefox showing you why your CSS rules aren't implemented/what is overriding them.

Firefox accessibility tree view.

ES2019 support in the Chromium engine (and firefox and safari).

Collapse
 
areahints profile image
Areahints

im going back to firefox for this

Collapse
 
zcdunn profile image
Zack Dunn

Firefox has been releasing such great devtools updates for CSS recently

Collapse
 
cadienvan profile image
Michael Di Prisco

I think we will see a complete division between old front-end developers and new one. We are already seeing it now, but not as we will in the next 9-12 months. React, Angular, Vue are so easy to learn people often forget about vanilla JS and its part in the ecosystem. I think this will change in the following year and we will see some negative numbers in frameworks usage, as we did with Bootstrap (Not falling, but remaining still and losing some terrain month after month), going back to the roots with performance, accessibility, scalability and maintainability in mind. And, of course, PWA & CSS Grid will increase in usage statistics.

Collapse
 
bennypowers profile image
Benny Powers 🇮🇱🇨🇦
Collapse
 
maxart2501 profile image
Massimo Artizzu • Edited

Oh boy, a lot of stuff is coming! Oh well, I guess it's always a lot of stuff, actually...

JavaScript is evolving

New features get added every year. A couple of days ago the Nullish Coalescing operator had reached stage 3, and a couple of hours ago the Optional chaining proposal did the same!

Now, those proposals need to reach stage 4 to become officially part of the language, but reaching stage 3 means that browsers, Node and TypeScript will start to implement them soon, so they will be de facto usable.

Standard library

As we've seen with the new kv-storage API, browsers will start implement new features not by exposing some new global object, but rather by built-in modules prefixes by std:.

But the most interesting part is about import maps: they instruct the environment how to resolve package names, so that would mean a super nice way to polyfill missing features, loaded just if needed.

Loaders for everything!

We've done it countless times, abusing the language thanks to webpack, but the act of importing a CSS file into JavaScript won't be a mere dream anymore, but a reality!

But first, we'll have JSON and HTML imports; later, we could have custom loaders for everything we need to have as a dependency.

Final thoughts

It's just a couple of things here, but there are really a lot. Many already reported by other comments here: Houdini, Web Assembly, PWAs...

The "sad" part is that most of this innovative force comes from Google and Chrome, forcing Microsoft to give up, leaving Firefox to hobble behind and Safari... well, Safari being the new IE.
It's a still way better situation than, say, 10 years ago but still not optimal.

Collapse
 
zcdunn profile image
Zack Dunn

I've been following the Nullish Coalescing and Optional chaining proposals for a while. It's exciting to see them reach stage 3! Now if only the pipeline proposal could make some progress.

Collapse
 
stargator profile image
Stargator

Flutter for the web becoming more and more standard in the flutter SDK.

Once building web apps is as simple as creating an Android and iOs app with Flutter, it'll be interesting to see how it gets adopted.