Hacker News new | ask | show | jobs
by chrismorgan 2721 days ago
In matters of layout, Firefox has tended to have a substantial lead. In matters of script debugging, Chrome has tended to have a substantial lead. In other places, it’s not so consistent.

Take debugging as an area where I think it is fair to say that Chrome is miles ahead at present:

Chrome’s debugger is fast; pausing normally takes under a second to finish updating the UI, and stepping mostly takes a slight fraction of a second. It is also particularly helpful, showing the values of variables at the end of each line when stepping through.

Firefox’s debugger is slow; pausing typically takes several seconds for the UI to catch up, and stepping tends to take a second or two, with some UI thrashing. It is unreliable in the presence of source maps (you put a breakpoint on line 1234 of the source? Well that translated to line 1 in what’s actually being executed, and breakpoints are no more precise than linewise, so… yeah). Firefox Nightly’s debugger is also currently completely broken for me at FastMail due to https://bugzilla.mozilla.org/show_bug.cgi?id=1516941, so I’m having to spin up Chrome when I need to do any debugging, which I don’t like having to do. In the normal run of things, I stick with Firefox even through its slow debugger, because I do find that it does a better job in some areas of debugging (I think it was examining values and operating at varying layers of the stack).

For personal context: I’ve been a Firefox user since about 0.93, and have had Nightly as my daily driver most of the time for several years. I don’t much like Chrome. That doesn’t stop it from being better in certain areas, though.

1 comments

This has been my experience too. Firefox is my primary browser but I never could get the debugger to work inside promises for some reason. The firefox layouting engine is amazing. I develop some crazy inefficient DOM layouts when prototyping and Firefox will happily chug through it while Chrome will choke. But when I have to debug I go back into Chrome..