Are there any specific reasons for a developer that deals with web applications (let's say writing html and js) to download a browser's source code (like Chromium) and learn how the engine works (renderer, javascript vm, network processing, etc.)?

  • 15
    Have you downloaded code for your compiler, editor or operating system? If you have source code for all your tools, then why draw a line at the browser? If you have no source code, the same question applies? Why start downloading source for a browser?
    – S.Lott
    Commented Jan 2, 2012 at 22:30
  • 2
    The title of this question is misleading. At first glance I was like "yes, duh" but the question about source code is more specific than "how a browser works".
    – jhocking
    Commented Jan 2, 2012 at 22:42
  • I just came home and connected to edit the title, but was already changed. Thanks Paul!
    – Luciano
    Commented Jan 2, 2012 at 23:48
  • I look forward to a decent HTML/JS replacement - the day when browser will not be the same.
    – Job
    Commented Jan 3, 2012 at 4:59
  • Thanks for all the answers. I see now it's clearly not worthy.
    – Luciano
    Commented Jan 3, 2012 at 19:57

5 Answers 5


It is more important to understand HTTP, client server, web standards and specifications (HTML 4, XHTML, HTML 5, CSS 2.0, CSS 3.0, Javascript) and the differences between the different browsers and browser versions.

Understanding the inner workings of a single browser engine can be useful in the same way that understanding how an engine works will help a driver get the most out of his car, but some of the knowledge will not transferable to other browsers.

  • 2
    Good answer, there's a huge amount of "how a browser works" that it's important for a web developer to know. Very very little of it involves getting anywhere near a specific browser's source code, though. Commented Jan 2, 2012 at 23:25
  • 3
    -1 IMHO, "can be useful" is not true for this question. 99.99% total waste of time. 0.01% useful to web developer who also have plentiful experience on C++ development.
    – 9dan
    Commented Jan 3, 2012 at 4:09
  • 2
    Skip the code reading and use the services of someone who has done that for you. developer.yahoo.com/yslow
    – Chris Nava
    Commented Jan 3, 2012 at 5:38
  • 4
    In my opinion, the car analogy is bad. Sure it helps to know "how a browser works", (in the sense of the concepts behind request-response, the DOM, etc,) the way it helps to know "how a car works" (in the sense of what is an internal combustion engine, the concepts of torque, friction, traction, etc.) But studying the source code of a browser corresponds to becoming intimately familiar with the molecular structure of the last damn screw in the car. That, does not help.
    – Mike Nakis
    Commented Jan 3, 2012 at 10:40
  • @MikeNakis - Source code comes in many levels of abstractions. Having the source code can mean you understand how the engine works and is held together without having to understand every nut and bolt.
    – Oded
    Commented Jan 3, 2012 at 10:41

Complete waste of time. What is important to have at hand is the standards, and perhaps some documents explaining browser peculiarities. But not the source code of the browser! It would be like hoping to get better at drawing pictures by studying the source code of Photoshop.


Not really. I have been developing for the web since about 1994 and I have never had the need to dig into the source of a browser. Honestly I would not know where to start, they are huge applications written in C++, which I have not done since college.

If you want to do it, that is great! And I am sure that you can learn a lot, but I'm not sure it will be about web development. If you want to learn about that go study Javascript or the like. Read "Javascript the Good Parts" or learn about about how to use Monads in Javascript.


Waste of time, waste of disk space.

I'm +10 years experience of Windows C++ dev but building the executable of Firefox is to difficult and time consuming, so I've tried couple of times and gave up. Chrome has somewhat easier build environment but their implementation is more complicated, I think.

Below is the behind the scene document of modern web browsers. I want to say, if you fully understand this document, you can hope matching the concept to the source code in time scale of weeks (without sufficient C++ dev knowledge, it could be months).

How Browsers Work


Understanding the inner workings of a single browser engine is a gigantic task That can only mislead a normal web dev. Chromium is not really a standard and webkit engines (and chromium is one of those) have the ugly tendency of rendering stuff in slightly different ways across platforms. (it's a problem with webkit that gets more dramatic over mobile phones, but it's there)

Anyway, to keep up with analogies: it's like having to plow a field with a tractor in autumn and spend time bothering about the inner workings of the combined harvester that will eventually clean it up the next summer.

It's... going off trail in an obsessive compulsive way.

It can be useful if you actually want to develop a native plugin for Chrome OS, (whose future is pretty uncertain, but well, it exists, at least) but what you really want to know for the immediately foreseeable future in web dev is HTML4, CSS3, SVG, and the audio/video/canvas/location/storage quasi-standardization commonly known as HTML5.

...and a javascript toolkit: jquery or amplesdk, they're libraries that build over the standards and try to level browser discrepancies.

And please: do everyone a favour and get someone to teach you SQL, it's still there, and with many clever tricks it can facebook-scale.

All of those technologies reside in a different layer above the browser implementation. And then further, on the server side of things. Yes, web devs do server side computations. Actually, is what pays most, in real life.

In a single browser source code, then, there's a lot of political and marketing strategies going on. The browser war is still raging on, with differrent competitors, but then.

Little details make the difference, and a single vendor's choices hardly reflect the "this should be done this way" consensus. (and chromium, being so much Google-influenced, will reflect some not-really-canon Google views on what the internet should look like)

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.