Posts Tagged ‘hydra browser’

Is Firefox ashamed of its profits?

Saturday, March 22nd, 2008

Browsing the web the other day (looking for Hydra of course, as I am still in the phase when every new page that mentions Hydra and every new user excites me…), I stumbled upon a post in Google groups where some overzealous Firefox admirer openly accused me of making false accusations against Mozilla and Firefox. Actually, the person in question quoted a line from my ‘Hydra Aid’ manifesto, which says the following:
“In the meantime, I ran across a page that lists Firefox myths. I won’t go into the quarrel and the statements listed there should be taken cum grano salis, but one thing draw my attention - I was stunned to see that Firefox is making millions of dollars per year and is - in fact - a real cash cow for its founders! How on earth do they succeed? The answer was simple - through affiliation. They’ve affiliated with Google (don’t know if there are any others companies included…), and made a real fortune out of the deal…”

Now there is no accusation at all in the above, is it? In fact, maybe it would be some if the above statement was a lie, but I did my homework and googled a bit about the subject before I wrote the above lines. My search didn’t last long, as I found a direct link to the Mozilla’s corporation (or Foundation, I’m not sure which is it, but it doesn’t matter though, as the two are in fact the same…) financial audit performed by Hood & Strong LLP - certified public accountants. The document in question can be found at Mozilla’s web, so it’s by no means a well hidden secret kept from the eyes of the public. If you read the document yourself, you’ll see plain and clear that Firefox (Mozilla) earned 75 millions USD in 2006 from royalties - i.e. from it’s search box affiliated with Google, Amazon etc. Quite amazing, isn’t it? And still there are people out there who feel offended when someone says that they’re making money from their browser, as if they shouldn’t have, and as if the fact that they’re quite profitable makes the product less worthy… Software - no matter if it’s open source or a closed proprietary system - cannot be made in the cave by a bunch of bearded-hippie-lonesome programmers and offered to the public for free. Making of the software costs money. Mozilla spent 11,000,000.00 USD in 2006 just for software development, and it’s quite a sum of money if you ask me (it would be interesting to see how much money is mighty MS investing in their browser - just wild guessing here, but I think it’s at least double…). Hosting and distributing software also costs money… Providing help and support costs money…

All in all, we have a classic win-win situation here for Mozilla and Google (and the users, so it’s actually a triple win…). Google profits from this cooperation are huge, so it’s no wonder they’re strongly pushing Firefox on the market, while at the same time hurting their greatest opponent, the mighty Microsoft. I can only imagine Firefox’s profits for 2007, since they probably tripled their user base since the time the audit was made (if they’ve tripled the profits as well, the numbers go up to the stunning sum of 225 millions USD in 2007!?) .

There’s absolutely nothing abnormal in a software such as Firefox being profitable. The only abnormal thing in this story is the reaction of that certain admirer who didn’t even bother to look for the facts himself, taking the formula ‘open source = freedom = no money’ for granted. On the other hand, I would certainly wish to see people from Mozilla taking a step forward and giving some of those profits away to charities, in the true spirit of open source philosophy, making their community really proud of being a part of something as noble and right. If I can do that as an independent and small developer, why wouldn’t they do the same?

The shape of the things to come…

Friday, March 14th, 2008

Thousands years ago life was quite simple - you’d take your spear, go out of the cave and kill some animal to feed your family and your tribe, and you’d probably feel quite good about yourself. Later on you would go and sleep like a righteous one, ’cause you well deserved it. Sure, there were treats out there - you could have ran into some wild, hungry and ferocious animal that just picked you for a tasty lunch. Chances were that you’d outsmart it and succesfuly escape by climbing on the nearest tree or running away from it. It was a bit trickier if a hostile tribe happen to roam around your area, but that was a risque of the trade and you had to count on it. All in all, it wasn’t too difficult to know your friend from a foe, and you pretty much had a good chance of a long and prosperous life (providing you survive a winter, of course).
The things today are far more complicated - ferocious animals disguised into corporations started to wear fine suits, calling themselves CEO’s, lawyers, businessmen and sometimes even doctors, and the members of the enemy tribe are not even sure why they’re in war with you - all they know is someone send them there to fight you for no apparent reason whatsoever.  Decapitated kings and oligarchs of yesterday invented democracy for us, so we can have a false sense of importance every now and then, before falling back into anonymity to which we belong anyway. They have also invented a state to protect us from ourselves, and put their laws in a series of really heavy books with a lots of pages, because we don’t really know what’s right and what’s wrong for us.
Whether you live or die is of no concern to anyone, cause the news are counting deaths only by hundreds, and the death of one doesn’t really make a difference. The man of the past needed to look the stars up there in the sky to feel unsignificant before the splendor of the Universe - the man of today just feels unsignificant…
If you found the above to be true, then you’re just like the most of the people, if you don’t, then you’re probably a local politician, a CEO or a lawyer. Fortunately, as a simple but powerful line from my favorite trilogy says - ‘The world is changing…’ - and that change is good. It’s not shaking mountains, nor it is destroying castles and decapitating the corrupted ones - it’s rather slowly shaping our minds towards a different future, much like the ocean that shapes the coast - you can’t really see it happen, but it’s happening… The world is being reduced by optic fibres, and the truth can be reached anywhere, and no dirty secret can be kept hidden anymore. People are starting to realize that they’re not alone, and they’re organizing in their virtual communities - their MySpaces, Facebooks and other countless social-networking groups. People from USA discover that people from Somalia like the same music they do, and a guy from Malesia found his soulmate in a girl from Norway. There are no boundaries there, no need for visas and no prejudices - people are just being what they really are - people!

The fact is that we’re witnessing this amazing change, and we have the honor to be at its source - the question is - do we know it? What should we make of it? I really don’t know, it’s up to the history to tell, but I sincerely hope we’ll not be remembered as a generation that blew up the chance to make a change. In that spirit, I’m tossing my five cents in with Hydra Aid

Hydra - Memory Wars

Saturday, January 12th, 2008

(this is a copy of a post that can also be read at http://hydrabrowser.blogspot.com/)

Well, these first few weeks since I made Hydra public pretty much have shown me the way Hydra should develop in the future. First and foremost - reducing the memory footprint. I am running a battery of tests (using memory profiler found at http://memprofiler.com/) to discover where all this memory goes, and for now discovered two important things:
1. there’s not much I can really do about it, as Garbage Collector really does its work rather well and doesn’t allow messing around much;
2. I can achieve some effect by regularly reducing application’s working set and thus swapping memory - in fact, that’s exactly what Hydra already does when minimized, and achieves great results in doing so (reducing memory consumption from 120 MB to 16MB, or 6-7 times…).
I’m not entirely happy with both statements, and I’m really frustrated with the current state, so in the next couple of weeks I am going to battle and hopefully will reach some acceptable level of memory consumption. I’m aware there are a lot of improvements I can make in code itself (especially regarding string handling, where I have the option to use string builder more often, instead of allocating strings directly, but I somehow doubt it’ll add some significant improvements over the current state of things). I’ll also try to document my findings here, since it might be of some use to my fellow programers. In order to track progress, let’s document the situation as it is, before any of the optimizations took place.

This is the image taken immediately after Hydra is started, picture speaks for itself… Hydra’s working set occupies 54 MB of RAM.

Here is another screenshot - this time there are two open tabs. Performance penalty is drastic, as each loaded tab adds incredible 25 MB load on application! Microsoft warns about the webbrowser control as insatient memory eater, but this is way to much…

And now the incredible change, as Hydra is minimized, the working set gets freed up - the result is amazing - from 102 MB to 7 MB in a second! Of course, this is rather elusive, as the application will request this memory back again once it gets reactivated.
Much more important information about the memory consumption can be obtained from the PerfMon tool that can be run from the Run command (Start->Run>>Perfmon>>OK). In order to track a process using Perfmon, right click the counters list and choose ‘Properties’. Click on ‘Add’ button, and then under ‘Performance object’ select ‘Process’ instead of ‘Processor’. In the list of active processes choose the process you wish to track. In the ‘Counters’ section choose ‘Working Set’ and ‘Private Bytes’ counters and add them to active counters. In my case, I decided to track Hydra, Firefox and Internet Explorer (you’ll notice that IE has significantly larger values than Hydra and Firefox, in its defence I can just say that its session was quite long, and it’s rather natural for an app to accumulate more memory usage when it runs longer).

Here you see the results - Hydra is losing when compared to Firefox, while it has an advantage relating to IE. In fact, Hydra would take about 5-10% more memory than IE under the same circumstances.
Well, this concludes part one of this great saga, I’ll update you on the progress as it goes :-)

Greetings from Hydra Team!