Sitemap Generator Updated

Sitemap Generator version has been published. There is one annoying bug fixed (settings are now fully loaded at startup) and one new feature added in the “pro” version (load last saved project). The bugfix alone should be a good idea for anyone using the tool to upgrade. Remember: it’s free, so it’s just few clicks away.

Download ]

Web Stats 2012: Order of Magnitude

How big the web is? Yes, we all know there are some really big fat numbers here, but how big? Google unveils some stats from time to time, and that gives us the picture.


You see the pattern: in the last 14 years the web (or what Google extracts from the web) became really, really big thing. Note the order of magnitude: for 10 years (from 1998, when Google started with 25 million pages to 2008, when they celebrated their 1st trillion) the web grown 40,000 times. And even if that sounds big, it’s nothing compared to the next part of the chart. For the next 4 years, we got something I would call exponential growth: from 1 to 30 trillion webpages. This is over 7 trillion pages growth per year. The web of today is 1.2 million times bigger than 1998.

30 billion web pages indexed by Google in 2012

Let’s translate the 30 trillion number into something meaningful: you will need over 500 terabytes of storage to save the URLs only. Give it one backup copy, and it’s a petabyte. 500 2TB hard drives. Just for the list of the pages. Don’t ask how much more you need to keep the actual content 🙂

There are, currently, about 4300 pages for each human being on this planet. Yes — if every single human alive reads 4300 pages right now, we’ll read the whole web. Go figure…

Another statistic from the big G: they served something like 1,2 trillion searches in 2012. About 100 billion searches per month. Multiply by 10 (the default number of results). Imagine that there are no repetitions and Google returns different URL each and every time. Even then – 2/3 of the URLs indexed will never be shown to any searcher.  Now you see how powerful the holy algorithm is. Even if we restrict it to show each page only once, it will trash 2/3 of all webpages it knows. Does SEO matter?

1,2 trillion searches in 2012, 100 billion per month

But there is another number: in 2012 there are 246 million domains registered (according to Verisign). almost half of them (about 120 million) are .com and .net domains. About 13% of all .com and .net the domains doesn’t contain any web page. 21% contain only one and 66% are multi-page domains. To make things simpler — let’s assume it’s the same for all TLDs. This will give us some funny numbers. There are 25 million domain names without any web page published. There are about 50 million single-page domains. So, almost all of these 30 trillion pages are published on just over 160 million domains. Again: 160 million domains are serving close to 30 trillion web pages. 66% of the domain names in use are responsible for 99,99% of the web. That gives us something like 180,000 pages average for each of these multi-page domains. So, is your site close to the average?

29,9 trillion webpages published on 160 million domains

But don’t panic! Think about wikipedia, or blogger, or wordpress, or youtube. Wikipedia alone is responsible for almost 30 million of these pages (to put it in context: wikipedia alone is bigger than the whole web back in 1998). And these multi-million page sites are human built. Imagine what the bots can do. So, don’t feel bad if your site doesn’t have hundreds of thousands of pages 😉 But you may start to think about automation…

the whole web in 1998 is smaller than wikipedia today

I get so many questions in my head reading these numbers, but I will stop here. This post was supposed to be here only for fun. Still — I can’t stop myself from asking at least two of these questions. How will Google handle the growth in the coming years? I expect something between linear and exponential growth, thus meaning we will see the number doubled in year or two… And the more important one: is there a limit of some kind? I have no idea how big the web could possibly be in a decade from now, but comparing to the past, it sounds really interesting… Can the web grow forever? Is even the sky a limit?

Well, we’ll see…

But I will stop here and go back to work now, because with just few hundreds pages this site is far, far away from the 180,000 average 🙂

How to fix OpenCart 1.5 menu bug in Internet Explorer 10

The long history of Internet Explorer causing troubles is anything but forgotten. Once again IE reminded it needs special attention last night, while I was setting up client’s web shop powered by OpenCart. Here is the problem: when tested in IE10, the main menu didn’t work as expected. It wasn’t me (opening  in IE10 gave the same result) so a genuine fix was needed. And it turned to be an easy one. But first — here is the problem:

It was supposed to work like that:


 …but it looked like this:

screenshot taken in IE10 on Win 8 / 64

So, here is what you must do in order to fix the misunderstanding between IE and the menu JavaScript:

1) Open the common.js file located in catalog\view\javascript folder

2) Find the folloing code (around line 60):

3) Replace the above code with thie modified code below:

4) Save and upload to the server.

We hope OpenCart team will fix this in the upcoming releases, but until then — this quick fix will do the job.

Screen Ruler Minor Update

Now, with Windows 8 already here, I found Screen Ruler UI to be “strange” (read — not Windows 8 style). So I made a quick update to the Windows version of Screen Ruler to fix that. It is not an “official” release (just went from 6.0 to and you don’t need to update your current installations. But for Windows 8 machines — just download the latest version from this page:

*Please, note that Screen Ruler will not work on Windows 8 RT (tablets)

JavaScript Time Library

Several weeks ago I spent some time working with JavaScript for a separate project, and I needed some “stopwatch” functionality. I was shocked to find there were no good, simple classes to fit my needs. Moreover — there were awful examples for javascript time functions out there (like never-ending loop, to name the worst). So, I spent some time to write my own. And then, I just needed some more time to repack what I wrote as a useful small library. The result is already here: my JavaScript Time Library. There are no big things in this library — just a stopwatch and backward clock “classes” and some support functions. Still — it should be piece of cake for anyone to include this library in any javascript project (download and quick guide on the JavaScript Time library pages).

Example Usage

It’s simple as creating an object and firing the timer:

For more info — give a try to the examples and help info here.


Changing the width of menu made with css menu generator

This is very short tutorial that should help you to customize the width of the css menus generated with my css menu generator tool.

There are 2 hypotheses here: you want to resize the top-menu bar (the always visible menu line) or you want to change the width of the submenu items.

1) Change the width of the menu bar

This one is quite simple — just put your menu in container with specified width, something like that:

Put whatever value you need instead of “100px” in the example above

2) Resize the submenu items

The sub-menu width needs some not so trivial changes in the css.

Look between lines 57-82 of the css file, it should look similar to that:

(the comments are pointing the values to be changed)

Let say you want to give 2 ems more for the submenu width. In such case it must look like that now:

As you see, the easiest way is to add/substract what you need, but keeping the proportion. Still, it’s up to you — I prefer to use “ems” but you can set pixels or points or what best suits your needs.