Web browsers and their engines: Know everything

web_browser_engines

You know web browsers. Now you will know web browser engines.

You might already have heard the news: Google has more or less won the browser wars as Microsoft has started to rebuild its Edge web browser right from scratch.

However, this time the company will make use of the open-source Chromium code which underpins many other web browsers including,

  • Opera
  • Brave
  • Vivaldi
  • Google Chrome (of course)

And since Microsoft is going to do it right from the ground up, it is not a stretch to think that Microsoft is actually switching to a completely different (and perhaps better) web browser rendering engine.

With that out of the way, you may be wondering,

What is a web browser engine?

Moreover, how does a web browser’s engine affect a given online consumer’s web browsing experience?

In this guide, we will go through all the necessary details that you need to know about in order to really differentiate between different web browsers.

You see, whenever you are in the process of selecting a web browser or changing a web browser, you are also selecting/changing your web browser engine.

Not only that, but you are also picking a rendering engine in the process.

It is here that we should mention that sometimes you will find these two terms to mean the same thing while other times they will mean different things.

From a technical perspective, a web browser’s rendering engine helps to render web pages while the web browser engine is responsible for handling communications between the web browser’s user interface and the rendering engine.

We have already mentioned before that some people do not make the distinction between a rendering engine and a web browser engine.

And we haven’t mentioned the always-present Javascript engine which assists each of the ‘things’ we have mentioned above to process code belonging to a given website or webpage.

However, in order to keep things straight and simple, in this guide we will try to follow what Wikipedia ‘preaches’.

In other words, we will make use of the term web browser engine to mean everything and encompass all the other related terms.

What readers need to understand here is that the Javascript engine, the rendering engine, and the web browser engine all work together in order to actually get the raw code belonging to a webpage and then converting it into a usable and viewable from inside the user’s web browser.

With that out of the way, the other thing readers should know is that there are a total of three main web browser engines that dominate the market today and hence are worth knowing more about.

Browser-Computer-Www-Google-Chrome-Web-773216

These three web browser engines are as follows,

  • Blink (the one that powers all the major web browsers such as Brave, Opera, Chrome, and others)
  • Gecko (which powers our favorite Mozilla Firefox)
  • WebKit (which powers Apple Safari)

Now, even though we are not going into more detail about various terms that are involved with the stuff that we will mention here, you should never get confused by the web browser that comes to you in the form of Chromium.

What we mean to say is that you should think about Chromium as a step that exists between the complete Google Chrome web browser and Blink.

As mentioned before, the new yet-to-be-released Microsoft Edge browser will pretty much become Google Chrome as far as behind-the-scenes stuff is concerned.

Chromium is an open source and pretty bare bones web browser.

The great thing about Chromium is that other developers can build on top of it.

Ok, but what are different browser engines all about?

At this point in this guide, you basically know the names that belong to the three dominant and hence mainstream, web browser engines.

Now you should know more about what they actually are.

As indicated earlier, the main job of these web browser engines is to take various types of code such as CSS and HTML that belongs to a given webpage (this is all the text that you are able to see in a given web page’s source code or what you see when you open up a text editor such as page content, styling, and settings for the page’s layout) and then convert all of that into what the end user (that is you) see on the display screen.

To keep things simple, you should think of web browser engines as translators.

As alluded to before, they do the job of interpreting everything that a given web developer types via dedicated editors.

Web browser engines know how specific lines of program code affect things that are shown on the display screen.

Our research shows that readers would do well if they just consider a given web browser’s engine as the most important component of the web browser.

Think of web browser engine as the engine of the car.

And just like in a car, a web browser cannot run without an engine.

It doesn’t take a genius to figure out that everything apart from a web browser engine is pretty much redundant.

We are of course talking about things such as smart searching features, extensions, menus and autofill among many others.

All of these are of no use to you if your web browser engine is not capable of showing them to you properly.

Okay, so that takes care what all the different web browser engines are.

The obvious question that arises from all of this is why would the market need a number of different web browser engines instead of just a single one?

Well, let’s just say that different programmers usually have very different motivations and ideas on what would constitute the best web browser or how should the web browser engine go about its job of displaying colors, refreshing pages, optimizing code and all the other stuff.

Let’s take an example to illustrate the point that we are trying to make here.

safari_PNG13

Google, as many of you, would already know, launched its Blink web browser engine as a separate web browser engine about six years ago in 2013 in order to enhance what the company saw as major failings on the part of Webkit in handling tasks such as multiple processes.

Let’s take another example to further prove a point.

Say that a particular person (with all the necessary know-how) has this desire to introduce an improved and new method for all web developers to display videos which are embedded right inside a given text on a given webpage.

Now, if that specific person wants to make that happen then that person would need the required amount of support from the given web browser engine.

There is no guarantee that a given web browser engine would provide you with any support.

Let’s assume that there are a sufficient number of engineers who make these things that agree with your ideas.

Well, then you can consider the possibility of breaking off from the mainstream web browsers and then create one of your own web browser engine.

You might find it surprising, but this is exactly how the market has reached the situation that it has reached today.

With that said, the chances that a brand new web browser engine would ever have the opportunity to not only get off the ground but also capture some market share are slim to none.

This isn’t just us saying that.

Microsoft has proven with Microsoft Edge that for much of the future, the Chromium engine is going to stay in charge.

With that out of the way, you should know that you should blame different web browser engines for all the ways in which web pages at times load, work and look different in different web browsers.

More often than not, you will find that variations such as the ones that we have mentioned above are due to Blink, WebKit and Gecko rather than Chrome, Safari or Firefox.

And since the web is going to evolve for much of the foreseeable future, it is true that these current variations will become more significant beyond mere surface visual differences.

Visual differences have actually become pretty much extinct across all the web browser engines.

The problems arise with the underlying technologies.

So how do web browser engines go about ‘differing’ from each other?

We have already mentioned that each and every part of a given web page that needs rendering along with the way a user may or may not interact with the webpage, is handled by nothing else than a web browser engine.

Truth be told, no one in their right mind would argue that much of what different web browser engines do is pretty much standardized and not different from each other.

However, the differences that are present are big enough to be mentioned in a guide like this.

The vast majority of the processing of a web page is the same (you know that) but consider the way in which different web browser engines handle web apps security.

This is the area where each web browser engine has the option of implementing something entirely different from the other.

The web in general along with all the apps and websites on it, have actually managed to consistently become more and more complex.

As a result of that, web browser engines have had no choice but to find a way to handle more and more code.

The days of static web pages are well and truly gone.

These static web pages saw their heyday when engineers and programmers first developed web browsers.

Another way to tell apart different web browser engines is how the new dynamic code is optimized and processed.

The different methods used for this purpose always have an impact on the speed with which a given page fully appears on the screen.

This is the part where Javascript engine comes in and actually plays quite a big role.

Our research shows that engineers working on Mozilla Firefox are seriously working on providing an upgrade to the web browser’s engine called Gecko.

Apparently, they are making more changes to Firefox Quantum.

Most of the new changes, it seems, focus on a good number of the considerations that we have mentioned above regarding the modern version of the web.

We’re talking about tasks such as how the web browser engine responds to system crashes, how does the web browser in question handles CPU core time and memory and how it refreshes web apps.

These are just examples.

There are probably many more areas where engineers are working on at the moment.

Now comes the more practical question:

Should a given web browser engine provide support for all the older web standards while losing important milliseconds to check them?

Some of you may already know that this is just one of the many reasons why Microsoft started to build Edge 1.0.

Other questions are also there.

firefox_PNG47

Questions such as should the web browser in question render text before it loads images or should it go the other way?

Then there comes the question of how should a given web browser engine manage multiple processes which may be taking place in multiple tabs?

As you can see, all of these are pretty high-level questions.

The smaller and finer intricacies of the modern web such as fonts and things like embedded audio are still there.

But they don’t differentiate across web browser engines so much.

Web browser engines get separated because of the big questions that we have mentioned before.

Of course, the life of a given web browser engine is anything but easy.

In other words, web browser engines not only have to cover existing standards regarding the web but they are also required to support various new standards that keep popping up as the thing we know as the internet becomes ever-more mysterious and complex.

It might come as a surprise to some, but there is a very specific area where Google’s Blink already has an advantage over all other engines.

And that area is the area of web apps.

Since Google is the one that is building and developing a large portion of mass-scale cutting-edge services and web apps, the company has managed to place itself in a very advantageous position when it comes to pushing for the web standards that the company itself makes use of.

Of course, there are many other less known issues.

But they are of concern only to people who like to think of themselves as developers.

We’re talking about issues such as,

  • The amount of time it can take a developer to add and approve code
  • The standard procedures one has to follow to fix bugs.
  • The extent to which the given web browser engine is tied up to the web browser in question.

Now, these are questions that the majority of the end users do not have worry about since they would never even notice them.

However, that does not mean these issues are not important enough to get a mention in this guide.

End users who have an interest in keeping a count of the frequency in which a given browser develops and rolls out update patches, would definitely want to keep the points we have mentioned above in mind.

So which web browser engine is the best?

If we take a step back and then consider everything that is involved with any given web browser engine, how should someone take the decision of switching to another web browser engine and/or sticking with the current web browser engine?

As mentioned above, if we are looking at the surface level only then there actually isn’t such a massive difference between all the available mainstream web browser engines.

Safari with the help of WebKit, Firefox with the help of Gecko and Chrome with the help of Blink render the majority of the websites that you will ever visit almost the same.

Not only that, they do so pretty much at the same speed.

But why is that?

Well, the reason for that is all major web browser engines now accept and implement the same kind of basic standards of the modern web.

If you have been following web standard news for the last five years or so, you would definitely know that this wasn’t always the case.

But now that Internet Explorer is dead, developers can ease off a little bit when they are trying to make sure that whatever they are building works anywhere and everywhere.

Our research shows that now there exists no headline web browser feature which anyone can point towards specifically which would be enough not necessarily make a given end user unexpectedly leave Gecko and switch to WebKit.

Or the other way around.

On some basic level, it is true that perhaps the best web browser engine that the world has to offer to its citizens is Blink.

The fact that Microsoft abandoned its own and switch to Blink says less about Microsoft and more about Blink.

Blink, for the most part, is fast.

And it renders apps and pages almost flawlessly.

Developers behind this web browser engine are able to push updates fairly rapidly.

The web browser engine itself is robust.

And developers are able to patch various bugs that arise very quickly.

If we look at things from the perspective of Microsoft, then it becomes easy to see why the company wants to build a completely new browser but only by building it on top of Blink.

Blink is the web browser engine that works the best when developers embed it within desktop applications.

With that said, we should also note that Blink still has not gotten over its chronic problems such as its tendency to hog memory in specific situations.

Moreover, developers behind this web browser engine have not done enough to stop it from bloating more and more as the years go by.

On the other hand, Mozilla Firefox has managed to impress everyone and continues to do so with the help of its Quantum update to Gecko.

The more important point is that the team behind Mozilla Firefox is showing a lot of resolve in fixing some serious problems with the speed of the web browser.

Meanwhile, Apple’s own WebKit still has its fair share of detractors.

However, that should not take us away from the fact that it is improving on the iOS and macOS platform.

The majority of the new features are built on top of the already present web browser engine, but improvements are improvements.

Again, whatever difference that exists in the above-mentioned web browser engines, do not really have a big impact on the performance that the end user gets to experience.

In simpler terms, if you are happy with your current web browser then you should continue to use it without any second thoughts.

Of course, Blink looks all set to continue its dominance.

And that might actually have serious negative side effects on the rest of the community.

Why do we say that?

We say that because at the moment almost all the web browser technologies that may fall on the side and get left behind along with the ones that will come in the future and make an impact, are dependent on how Google engineers are thinking and how they call the shots.

Currently, because of its market share, it has the privilege of deciding how the web should work for the vast majority of the people on the internet.

That does not mean that Mozilla is not putting up a fight.

Firefox still has enough user base to not let Chrome have a free roam.

But with Microsoft giving up the fight, the Chrome-dominance issue is becoming serious.

What we mean to say is that, in the future, the danger most of us are having to deal with is the web would go in the direction of whatever works best for and with Google Chrome rather than the community.

 

Zohair

Zohair is currently a content crafter at Security Gladiators and has been involved in the technology industry for more than a decade. He is an engineer by training and, naturally, likes to help people solve their tech related problems. When he is not writing, he can usually be found practicing his free-kicks in the ground beside his house.
Zohair

COMMENTS

WORDPRESS: 0