Firefox Losing Its Way?
An anonymous reader writes "NeoSmart Technologies has a recap on Firefox 2.0 and its shortcomings. Aside from the technical aspects, the article raises some good questions about the Firefox 'community,' it's future, and what it's goals are at the end of the day. Their conclusion? Firefox 1.5 was a much better open-source project/community model than 2.0 ever will be, and that 'It seems Firefox has lost its way somewhere along the passage to fame.'"
Here, allow me to post a short summary of the article to save you some time:
I think the new theme and start page is ugly, and there are a few weird bugs that haven't been fixed yet, and they haven't implemented a feature I want in a way that I want it. Therefore, it sucks.- Don't like the default theme that comes with Firefox? Go get another that you like better. Don't like the first run page? Who cares? You only see it one time!
Last time I checked, Firefox was still open source software. If they're not fixing bugs fast enough for your liking, by all means, download the source and fix them yourself. That's not meant as a smart-ass excuse for not fixing a bug, but the article's author says:
No, the best way to help is to go through the source and fix the bug! Don't talk about it, do it, and solve everyone's problem with having it!
- The feature the author wants implemented better is an RSS feed reader. I have some news for you: it's supposed to be a basic implementation that gives you the bare essentials. If you want one with bells and whistles, go get an extension that suits your needs better. This isn't a sign that Firefox has lost its way, its a sign that it's principles haven't changed much at all.
- Last, but not least, I'm not sure what the author of this article is proposing we all do. Switch to IE7 or Opera? Yeah, that will help the open source community.
Point is, while Firefox 2.0 was never pitched as the last version of Firefox that we'll ever need as a result of its attaining perfection. Personally, I wish that they would fix the bug that causes only the first page of web pages with absolutely positioned elements to be printed. I wish I had the skill to fix it myself; I would if I could. But I'm sure they're working on it, it doesn't change the fact that Firefox 2.0 is, in my humble opinion, the best damn browser out there right now, and the last thing I'm going to do is undercut the extraordinary efforts of its developers and contributors by posting a whiny blog entry about how because there are still a few things I don't like about it, it's somehow "lost its way somewhere."
Sheez. Talk about ungrateful.
The complaints raised here are trivial features. Not the performance or stability problems I had with 1.5 but instead things like RSS & aesthetics which to me aren't too important when it comes to a browser. I'm sure for some other people RSS or theme might make a world of difference but I'm not that person and I don't wager there are many people like that.
The concern that it makes itself the default browser is valid but using the word 'hijacking' is a bit strong. Honestly, I didn't even notice this but I was going from 1.5 to 2.0 on most of my computers so that might explain why this was a non-issue for me. Perhaps they assumed if you were going to 2.0, you were coming from 1.5? Either, I agree with this qualm though I find it to be the most serious offense listed in the article.
So you may ask if Firefox has lost its way but I counter that there have merely been a few miss-steps along the way. I'm keeping an eye on IE 7 & so far it hasn't lured me away from Firefox 2.0 so I guess that's a good sign as I consider my standards to be pretty high.
My work here is dung.
Some flamebait article from a blog no one's ever heard of, probably submitted by the blogger, passes for news? The major complaint is that the blogger doesn't like the default theme and start page! Pick others!
The only things that should be added to Firefox are bug/security fixes. Leave all the bells and whistles stuff to the extension authors.
Their bugzilla is so filled with ancient bugs that no one has eve nlooked at, and gecko is falling behind their competitors. They really need to get their priorities straight.
I must say, I'm having a feeling akin to the one I had when Netscape went over the 3.0 version number: things feel somewhat slower and buggier, with more bling that I don't really need. One of the most irritating "features" I keep hitting is whenever I open something with an extension, be it a pdf with Acrobat reader, a flash animation, a video with mplayer or a java applet: about 1 out of 10 times, the cpu goes to 100% and FF is dead in the water. I know the usual answer, which is that it's not FF's fault but the extensions', but it happens with all the extensions the same and it didn't happen so much, if at all, with earlier versions.
I don't know, perhaps there's a pattern with very large, popular open-source projects: the more popular they grow, the more developers tend to focus on adding features instead of correcting bugs...
"A door is what a dog is perpetually on the wrong side of" - Ogden Nash
The only thing that bugs me is the new TAB OVERFLOW managing. Before it scaled the tabs down. YES, there was a limit to how many it could hold but it could hold more on the screen at once. A combination of both means of managing the overflow would have been the better way.
Hopelessly misleading blurb. Here's the edited-for-truth version. The italics indicate the original text:
An anonymous reader A NeoSmart staffer writes:
"NeoSmart Technologies has a recap an attack article on Firefox 2.0 and it's shortcomings we say some things that we thought would get some traffic.
Aside from the technical aspects the things we don't understand but will criticize anyway, the article raises some good questions ridiculous mischaracterizations about the Firefox "community," [Editor's Note: Why the "sarcasm quotes"? Are you saying it isn't a community?] it's future, and what it's goals are at the end of the day we inserted a meaningless sports metaphor here.
Their conclusion sophomoric trolling you can safely ignore? Who cares!
There. Now what was so hard about that, Slashdot eds? Oh, and while you're at it, "its" was incorrectly spelled three times out of three.
*shrugs*
Looks pretty good to me, and it seems to work pretty well. Is there anything in particular that you find messy?
The reason I brought it up is because the author of the article implied that he has the skill to fix at least one of the bugs that he's complaining about. While I agree that he's under no obligation to do so if he doesn't want to, I also think it's extremely bad form to sit around complaining that no one else will.
The article is slashdotted, but I think the main problem here is that Firefox has pretty much reached perfection. Firefox was intended to be a stripped down version of the Mozilla suite with just the browser. Now there seems to be a bigger push for built-in gee-whiz features.
I guess the community has just gotten board and went home. Specifically I have noticed:
* Mozillazine almost never seems to have any news anymore.
* The SpreadFirefox image galleries have been screwed up for ages now and people keep posting crap that never never gets cleaned up.
* The Mozilla store seems to have been having problems lately (it would hang and timeout when placing an order) and there Firefox CDs are still at old 1.5.0.4 version. (A physical factory pressed CD you can hold in your hand can go a long way convincing a PHB that this is real software!)
* And where is Thunderbird 2.0 anyway?
Come on folks! We still have an evil browser from Microsoft to crush!
First of all, it is not Mozilla's fault if the patches it receives are crap.
Second, you can always recompile Firefox yourself and run a customized version. Or, better yet, write an extension!
NeoSmart Technologies has a recap on Firefox 2.0 and it's [sic] shortcomings. Aside from the technical aspects, the article raises some good questions about the Firefox "community," it's [sic] future, and what it's [sic] goals are at the end of the day.
Attention Slashdot editors: Edit is a verb. Possessive pronouns in English (save one's) do not have apostrophes.
Firefox's popularity finally shamed Microsoft into updating IE. They did what they needed to do -- encourage (or force) IE to catch up and maybe even try to innovate. The fact is, no matter how popular FF will ever or could ever get, it will probably never be more popular than IE, as long as IE remains the default browser. But by forcing MS to update IE, they've probably helped more people than those who actually use FF.
It's still worth working on, sure, but it's not nearly as crucial as before. IE7 is not nearly as much an embarrassment as IE6 is.
Bored, indeed!
To me, this is exactly why open source software has yet to make the same inroads into large corporations as proprietary software (at least in the in United States).
It's amazing how people have much more enthusiasm and creativity when an actual paycheck is involved. Otherwise, it's just a hobby. Microsoft, Sun, IBM, etc will always have an upper hand because they have paid resources to create and innovate (MS at least - Sun seems to be shooting themselves in the foot!).
I would not agree with that at all. A not insignificant amount of the code is a mess, yes, but it's not low-quality. Being a mess never implies low quality, it just means that a decade or so of cruft has built up. There are several ongoing efforts at the moment to clean up Gecko, with the reflow branch being a major one.
As has been discussed on Slashdot before, I'm sure you know that any large and complex project will suffer memory leaks and security holes until they're all plugged. (That's not to say this is good, though. :-P ) If you try to abstract away all the possible causes of such annoyances so that they cannot happen, you just end up with bloated and slow code, which nobody wants. I would agree that the messier parts of Gecko's codebase may contribute more to memory leaks and security holes, but they're also (coincidentally) the bits which are the oldest, and therefore have had the most time to be hacked into shape.
In my experience, any large software system is very, very difficult to get your hands around if you didn't create it yourself. If the source code looks bad to you, the odds are one reason is that you didn't write it yourself and so you don't understand the techniques used.
For example, I like dumping things in one directory instead of having anal directory structures that take time to navigate. Others prefer having things all in their place. Neither style is particularly right or wrong. My style probably doesn't scale well to projects done by more than one developer. Their style makes it more time-consuming to get to know the code.
But in any event, I can't pass judgement on this source code, since I can't find it. I looked through the source he linked to and I couldn't find a single C file. In fact, I couldn't find anything that seemed to deal with the browser's core funtionality, such as rendering pages or putting up menus or toolbars.
I didn't find anything about what I saw in the JavaScript that seemed too bad. It seemed reasonably straightforward to understand, but of course the numerous options made it more complex than I'd like. That's inevitable in this kind of project, so it's not really a fault.
Is there any kind of guide to the source code, that would explain where the heart of it is?
D
The regular user when he installs firefox, versions 1.5 or 2, don't really see why Firefox is better then Explorer.
He doesn't see the extensions, add-ons, etc
:]
And to be honest vanilla Explorer > vanilla Firefox, though "hacked" firefox (jesus, I'm using too many linux terms) is much better then Explorer.
So the other 85% need guide to show them how and why firefox > explorer.
About firefox source, I think that it's too much a mess like someone already commented on from a few minutes of looking on it.
What we shall do now, is continuing helping people to see why Open Source is good! I've traveled through schools and showed them linux, Firefox, etc. I'm talk backing on ynet.co.il the local news site, and offering help to move to linux (till now helped 56 people to move to linux!). I hope you're doing as much as you can to help the open source community.!
GOODLUCK
"A not insignificant amount of the code is a mess, yes, but it's not low-quality"
Maintainability is an extremely important aspect of development. If the code is a mess, then it is not high-quality code.
"Being a mess never implies low quality, it just means that a decade or so of cruft has built up."
Being a mess implies that it is difficult to maintain, which implies that it is of poor quality. The proper way to develop is to refactor during development, so that you don't accumulate cruft or messiness. I'd say that cruft by definition implies low-quality code.
A very important aspect of development is design. A proper design phase for new features/code will also include looking at the existing design and how the new stuff can fit into it. You don't just go and tack your new feature on the end of what you already have, or you end up with unmaintainable, messy, cruft. You look at what you want to do, and you evolve the existing design to make the new code integrate into it, rather than be tacked on with sticky tape.
According to the site Bill's Big List of Firefox 2.0 Extensions, in only 40 days, the number of Firefox 2.0 compatible extensions has jumped from 677 extensions to 1449 extensions.
If this is in any way a reflection of the Firefox development community, it looks like the community is thriving pretty well.
Bull. People who write hard to figure out code do so with pretty much equal ease in any language. People who write easy to read and maintain code again do so pretty much equally well in any language. Reason being, the skills used to write maintainable code have nothing at all whatsoever to do with the programming language. "Elegant syntax" of the language? Gimme a break. Elegant code is elegant code, regardless of the language syntax. Elegance has do to with the underlying idea expressed, not the syntax of the language.
Oh, and Python has lousy syntax, but that's just a personal opinion on my part, not in any way an objective fact. My personal preferences on syntax don't apply to anyone but me. Nor do yours.
"Convictions are more dangerous enemies of truth than lies."
That's true for any moderately useful language. If the language locks you in with limitations, the end result is that the code grows up too much, and either the files become too large or there are so many source code files that you cannot find your way in the project.
With the languages people have been creating in the last 20 years or so, the limitations appear outside of their specialization. For instance, Perl is an excellent language for what it does best, which is processing text through regular expressions, and a mess for many other uses. PHP is wonderful for doing its own specialty, accessing databases from websites. Also, I particularly like the way PHP handles arrays, making them functionally equal to dictionaries. And Python is excellent for small scientific/engineering apps. I think the only "modern" language I absolutely hate is Ruby, because of its ugly syntax. It seems like the Ruby designers did their best effort to create syntax rules that are even more irregular than FORTRAN's...
But when a project grows big, one needs more than syntax, one needs to look at an upper level of organization. The project needs to be well structured in the API, it needs a well-layered set of libraries, it needs a clearly mapped directory structure, etc.
When I manage a large project, I usually start by designing an overall structure for the API that will handle the most computation intensive tasks. These are coded in a library, normally written in C/C++. I make an effort to consolidate and freeze the core API as early as possible, new functions may be added later, but I make an effort to have the most basic functions unchanged. Around this core library one can use different languages, I often do prototypes in either Python or Perl and rewrite them in C/C++ if necessary. The language itself is relatively unimportant for me, I think good coding practices are more important. Use short functions (<150 lines), mnemonic names, well indented code, plenty of comments (but avoid unnecessary ones, like int counter
With these practices, one can write code that stays readable as the system grows, regardless of the language. The big problem is with projects that started small and grew up over the years. With these, it's often easier to start over than to try to keep adding functions to the old code, but of course, with a project the size of Firefox, it would take a manager with adamantium balls to decide to rewrite it from scratch.
You, sir, are an idiot.
"Last time I checked, Firefox was still open source software. If they're not fixing bugs fast enough for your liking, by all means, download the source and fix them yourself."
The fact is, 99.9% of users simply aren't capable of finding and fixing these bug. When Firefox has to compete with Opera and IE which generally don't have such basic bugs (copy & paste bug is still occuring for me in an updated version) and when people moan about problems, they tend to (eventually) get fixed. A sluggish response is always better than "fix it yourself" responses that result in long term bugs that plague firefox.
So they are your slave? It is not their job. Most open source developers are volunteers. Maybe if you were paying the develper to write code for the project, you'd have an arguement, but it sounds to me like you are not. You just want them to be your slave because they publish a useful program for free.
I suppose if you were homeless and went to a soup kitchen, you would demand they hand feed you and wipe your ass after you use their bathroom too.
Fluxbox is enormous compared to the sheer genius and simplicity of UWM/UDE.
If people want eye candy inside of a wm which is still sane and doesn't attempt to take over your system why aren't more people looking at Enlightenment?
the NPG electrode was replaced with carbon blac
"Is it any better than the source to IE?"
Even if it is better than IE, is it really enough to simply not be as bad as your competitor? Not writing professional code just because the other guy doesn't bother is silly. Proper code is easier to maintain and makes a better platform for future development. Further, it's easier to add new developers and include third party patches.
You may be right, but one data point does not make a trend. Even on Slashdot.
Well, one data point beats a baseless assertion. At least that is what my Slashdot rulebook says.
-matthew
"THERE IS NO JUSTICE, THERE IS ONLY ME." -Death