Slashdot Mirror


First Look At Firefox 3.0 Beta 2

DaMan writes "ZDNet takes Firefox 3.0 beta 2 for a spin and draws some conclusions that should be sweet music to Mozilla's ears. "Beta 2 feels snappier and far more responsive than beta 1 (or Firefox 2.0 for that matter) and I can feel the difference on all the systems that I've tried it on — from a lowly Sempron system to my quad-core monsters. No matter what you want doing — opening a new tab, moving tabs, opening up Find, zooming in and out of the page, bookmarking — it all happens swiftly and smoothly. What surprises me about the Firefox 3.0 beta is how many memory leaks that Mozilla have fixed. Complaints of memory leaks with Firefox 2.0 were met with an attitude of "Leaks? What leaks?" Considering that there have been more than 300 leaks plugged, it's obvious that past versions leaked like sieves.""

19 of 531 comments (clear)

  1. Re:Hmmm... by QuantumG · · Score: 5, Informative

    Beta 1 did, so you'd hope Beta 2 will :)

    --
    How we know is more important than what we know.
  2. Overall, feels good and polished by bheer · · Score: 5, Informative

    Except for the newer bits, like most of Places and the cosmetics of new Super-autocomplete dropdown (which feels ... unrefined; functionality-wise it's doing a great job).

    It's interesting to see the new animated-ish tab movement on the tab bar (when you scroll the mousewheel over it) and the animation when things like 'Remember this password?' appear. They look pretty, but are slow on some crappy video cards -- would anyone know how these 'animation' effects can be disabled?

    And, kudos to the Firefox team -- I've been using v3 Beta1 for some time, and the browser does feel snappier. Of course, I haven't loaded up my 4-5 'must-have' extensions (Adblock, TabMixPlus, SwitchProxy, DownloadThemAll mainly, sometimes YSlow) so it'll be interesting to see how v3 does in "real"-use scenarios.

  3. Re:Hmmm... by Anonymous Coward · · Score: 3, Informative

    Apparently not, the bug against it is still open. ( https://bugzilla.mozilla.org/show_bug.cgi?id=289480 - but you'll have to copy/paste, since Bugzilla blocks Slashdot referrers.)

    And before anyone jumps on this and points out that it used to, it has apparently regressed and no longer does, according to the last comments on the bug.

    Not to mention that, even if it does (finally) pass Acid 2, there are still a ton of CSS3 features that Firefox fails to implement.

  4. Re:Memory Leaks? by gmack · · Score: 4, Informative

    Your misunderstanding it.

    The problem with memory fragmentation is that as firefox gets used it allocates memory for buffers then stops using some of that memory. The memory unused is too small to return to the OS and if a large amount of memory is needed then more is allocated sice none of the spaces are large enough to hold whatever object that needs the memory.

    It's entirely possible that firefox would have 1/3 to 1/2 of it's memory unused at any given time.

    Knowing that's the problem and fixing a problem as complicated as that are two different things unfortunatly

  5. But I'm a Debian user, you insensitive clod! by Malloc+Arena · · Score: 4, Informative

    Firefox got replaced with some lame Iceweasel thing. Besides just looking nasty, it doesn't use the firefox settings. I lose the themes, stored passwords (Talk about lock-in! How in hell to I dig those out of firefox?), stored cookies (a bit more lock-in), plug-ins, etc.

  6. Re:I like firefox... by ed.markovich · · Score: 5, Informative

    But on older systems, the sieve like memory leaks made it inoperable within a short period of time. Hopefully this will allow those of us who run legacy hardware to have a modern relatively secure web browser.

    Have you tried Opera? It's really quite good. I use it on my older Linux laptop (128MB ram) because it's the only modern browser that can show pages without thrashing the drive. I also use Opera on powerful machines - I think it's the best browser out there in terms of both the feature set and the quality of workmanship.

  7. Re:Hmmm... by stony3k · · Score: 5, Informative

    Sorry for replying again but I just found out that the test itself is broken and not Firefox. The reason is given here but it appears that it now renders wrong in Opera and Safari as well.

    Hmm... The test breaks and IE is suddenly compliant while previously compliant browsers are not *dons his tin foil hat*

    --
    Freedom is not worth having if it does not include the freedom to make mistakes. - Mahatma Gandhi
  8. Re:Hmmm... by jamienk · · Score: 4, Informative

    It does pass. The original Acid 2 test page http://www.webstandards.org/files/acid2/test.html accidentally got changed a bit (so that a missing link returns error code 200 instead of 404 not found). That's why FF (and other browsers like Safari and Opera) "fail" on that page. But see the mirrored page here http://www.hixie.ch/tests/evil/acid/002/ to verify that FF 3b2 (and Safari and Opera and IE 8... OOoops! can't test that one!) do pass...

  9. Re:Hmmm... by AndyCR · · Score: 3, Informative

    I'm running a few-days-old Minefield (SVN build) release and it passes perfectly.

    --
    If there's anyone I hate more than stupid people, it's intellectuals.
  10. Re:Why so many leaks? by Niten · · Score: 5, Informative

    To the best of my knowledge, Firefox typically does not leak memory, at least in the conventional sense that references to memory are erroneously discarded and unused allocated memory cannot be freed. Instead, the actual heart of the issue is supposedly memory fragmentation:

    http://blog.pavlov.net/2007/11/10/memory-fragmentation/

    As the linked article suggests, memory fragmentation can be reduced by replacing heap allocations with stack variables, where possible, in hotspots such as the JavaScript engine. As for the heap allocations that cannot be dealt away with in this manner, effort can be made to group them together such that they are less likely to cause fragmentation.

  11. Re:Hmmm... by BZ · · Score: 3, Informative

    There was a bug on the server running the test (returning a page with a 200 success code instead of 404 error). It has been fixed since.

  12. Re:Hmmm... by jesser · · Score: 5, Informative

    It shows up like that because of a misconfiguration on webstandards.org. (In particular, "not found" pages are served as 200 instead of 404.) Safari and Opera will show you the same thing. Hixie is trying to get it fixed.

    The version of Acid 2 on the author's website works fine.

    --
    The shareholder is always right.
  13. Re:Memory Leaks? by BZ · · Score: 5, Informative

    Sorry, I call bullshit. The only time I've seen that "response" was on Ben Goodger's blog, numerous comments by ignorant fanboys, and a lot of copy/pastes by people like you. I have yet to see anyone familiar with Firefox internals make this (patently false) claim. Of course part of the problem with the Web is that most people can't tell apart a random blogger who doesn't even use Firefox, a Firefox fanboi, and a Gecko developer, even if they were to try. And they don't try.

    The claim I _have_ seen made is that leak bugs would be easier to fix if people actually provided some idea of how to reproduce the leak (e.g. which sites they visited in the process of leaking). At some point David Baron wrote an extension that allowed collecting such data automatically, and the results from this led directly to a number of leaks being fixed in Gecko 1.9.

    The other issue Gecko 1.8 had is that it had several leak scenarios that particularly hit AJAXy apps. With the growth in the number of such apps, the leaks became more serious. Gecko 1.9 fixes those issues.

    Try the beta. You might like it. ;)

  14. Re:The old cross-platform coding guidelines by BZ · · Score: 3, Informative

    You read somewhat wrong... General use of templates was disallowed, but templated smart pointers for reference counting have been in use in Gecko for quite a long time. The class was carefully written and tested to work on all the compilers being targeted at the time (a lot of which had crappy template support).

    I'm not sure why it's "heinous" advice to say "avoid writing code that won't compile and will have to be backed out"...

  15. Re:Memory Leaks? by Zan+Lynx · · Score: 3, Informative

    100k? You only wish!

    Most web pages seem to have images, which all together add up to more than 100k. Then there's the DOM tree, the Javascript libraries, all the script state with variables, objects, etc. There's IFRAMEs and OBJECTs.

    Lots more than just the surface.

  16. Re:Modern attitude to bugs by mcrbids · · Score: 4, Informative

    This is really the worst part of modern software-development practices. When users complain about bugs, they are met with hostile demands to explain exactly, how to reproduce the bug, and the complainer is always presumed to be doing something wrong. Those, who aren't willing to put up with the hostility are not even deemed worthy of being a user -- if you had a bug, you should've reported it!

    Obviously, you aren't a developer. If you were, you'd know what they are dealing with.

    You write some software, test it, and release it. You sink your heart and soul into it, you design it meticulously, and you are careful to leave the end-user in a position of strength - they can do whatever they want. You explain how to use it to the rest of your staff. They start training end users. Shortly, the calls start to flood back. How does NNN work? Why does "XXX" do that when you click on the button? And so on.

    At first, you're all too happy to explain how NN feature works. But after a few years, while you're still explaining how feature NN works, you realize that you have documentation, notes on the website, an embedded help system, a features list, and a nice website that all explain the issue at hand.

    You are willing to accomodate the fact that end users are not programmers. You ask for language, improvements, etc. that make it easier to understand what's going on.

    But despite documentation and careful training, most calls I get are NOT bugs or problems, they are examples of the software doing exactly what it was supposed to do. I remember one support call I got that sounded like very serious data loss. The end-user denied seeing any error messages or anything by the program that would indicate any data loss. This end user went through several support staff before finally coming to me, the "chief tech weenie".

    To avoid any ambiguity, I ran a Remote Desktop tool (VNC inside an NSIS installer) so that I could see what the end user was actually seeing. And right in the middle of the conversation, our software kicked up an error with a message that started with "PAY ATTENTION - YOU MIGHT LOSE DATA", which then explained the whole situation in pretty plain English. The end user was mid-sentence with me when this error popped up, and without skipping a beat, she clicked on the "ok" button. There was no pitch change, no pause, nothing in her voice. When I asked about the error message, she replied with "Oh, I see that all the time, and I just click OK".

    So I had the fun of explaining to her that the message she hadn't bothered to read explained why she was losing data, and that the program had been laying out, to her, exactly what she needed to do so that everything worked as expected, and that she had been busy ignoring this safeguard, and that our product didn't kick up messages for the fun of it, etc...

    I've even had the fun of having a user complain that they "aren't getting the latest features" of our product, only to find that when the update prompt came up, they were clicking "Cancel" without even reading the popup message.

    I'm not saying that there aren't bugs that I find that are perfectly legit - but it's frustrating how many people assume that software will be sentient somehow and solve their problems for them, to the extent that they don't feel any need to pay attention to what's on the screen. They click OK, Cancel, red "X", or whatever to get the "annoying screen" out of their way so they can "get something done".

    I've taken to kicking up windows that can't be dismissed unless they type some code, like: "I don't mind losing data" or "yes I want to delete this forever", or "I am liable for the information I'm about to lose". No, not that long, but you get the idea. If the end user can't dismiss the window without reading the message on it, maybe they'll read it.

    Vista users are the worst - their O/S kicks up so many worthless messages they are truly desensitized to them.

    Nowadays, I answer the phone politely but tersely, and I don't really bother to hide the fact that I have better things to do with my time. I go so far as to make sure that they have the right answer, then bail as quickly as I can without being openly rude. /Shrug/

    --
    I have no problem with your religion until you decide it's reason to deprive others of the truth.
  17. Re:Hmmm... by Toutatis · · Score: 4, Informative

    It hasn't been fixed yet, but you can take the test here: http://www.hixie.ch/tests/evil/acid/002/

  18. Re:Memory Leaks? by creepynut · · Score: 3, Informative

    Typing the words "web page" into Google (first term that came into my head) brings up the following sizes for the first pages returned (44k, 52k, 13k, 17k, 76k, 12k, 37k, 52k, 21k). The definition of page size in this case is: "the sum of the file sizes for all the elements that make up a page, including the defining HTML file as well as all embedded objects (e.g., image files with GIF and JPG pictures)." Try it with as many terms as you want, I'm sure you'll get similar results. Plenty of headroom there before we even get close to 100k. Right now it looks like reality is on my side. I don't "only wish" anything, except in your imagination... Those sizes you're listing, they're all text and compressed images. They aren't representative of the screen the user sees. A 30kb JPEG might actually be 200KB uncompressed, and browsing a site like Flikr or other sites with heavy images that will add up, fast.

    Firefox isn't just remembering some HTML code and images, that's what the cache is for, it's remembering the STATE of the web page. When you hit the back button, it (usually) remembers what you've entered in the form, where you were scrolled to on the page, etc. It remembers the page as it was when you left it so it doesn't need to render it all over again. This includes rendered CSS, Javascript states, uncompressed images, the DOM tree (as the GP mentioned). They wouldn't be able to call it "Instant Back" if it had to render the page again, because that wouldn't be very instant.

  19. Re:Hmmm... by centron · · Score: 4, Informative

    No, it really did. That's your first clue that it isn't done yet. :)

    Firefox is developing more quickly because it doesn't have all of the baggage. It has its hurdles to overcome like and project, but they don't have to worry about making their browser render any page written in Netscape Composer properly. IE still has to make all those FrontPage sites look like the code wasn't shat out of some third graders science project on the effects of mold on diodes.

    With good developers, lots of money, and as much savvy as anyone, Microsoft has the ability to produce all kinds of amazing software. Once they've made some great software (like a browser that renders Acid 2 properly), that's when they start adding in all of the backwards compatibility that effectively crushes the product.

    I believe that Windows could be every bit as polished as OS X, as lean as Linux, and as secure as BSD if they didn't bend over backwards to maintain compatibility with every in-house-developed Visual Basic app that accesses odbc.ini, has hard coded requirements to be at the root of C:, and writes user preferences to HKLM.

    Mirosoft needs to learn that sometimes things shouldn't work with their new OS. That isn't to say that Apple doesn't do this to the other extreme, breaking things with every point release and forcing developers to come out with updates to all of their software every year or two just so that it won't run in some degraded mode, but there's a happy medium in there where you do a lifecycle on the components of your OS. If they could ease people along, explain the benefits of the new way of doing something, and make a clean break instead of using hacked together tangled bundles of cruft, we'd all be in a better place.

    Ok, so I strayed off topic. Anyway, I use Opera. : )

    --

    XeoMage