Whoops, I was wrong about the pings. It now uses canvas, not <div>s. For a while it was using a bunch of <div>s for performance reasons, but now it's using all canvas.
The map was generated using continent-level shapefiles (I believe from here: http://pubs.usgs.gov/of/2006/1187/basemaps/continents/). We stuck with continent-level outlines because adding country boundaries would have needlessly complicated the SVG, and borders can sometimes be disputed and controversial things :)
It would have been nice to have the great lakes and caspian sea, because they're such large features but with a team of two webdevs, some things have to wait until version 2.
Also, there's a ton of downloads coming from a point in Northeast Siberia where, as far as I can tell on Google Maps, there isn't so much as a log cabin. Mapping anomaly, or giant, secret military base?
I've probably seen that picture before, but it wasn't a direct inspiration. We had a map like this for Firefox 3.6, so glow is a mix of that plus a little WarGames and Tron.
I only mentioned it because I thought you guys were using Zeus's Global Loadbalancers to distribute the load around the world. (Oh, and because I designed and built the original web-frontend for Zeus with little-lights-blinking-on-the-james-bond-baddy styled map).
We do use Zeus LBs. I am happy to report that one of the cogs that made this machine work much easier was the fact that we could have our zeus clusters send out remote syslog events for the site traffic in addition to the normal log files.
That made it easy for us to use rsyslog to filter the data and aggregate it to be consumed by the app.
We perform the lookup using the binary database and the Java client directly off of the web request and only store the location in HBase so we don't keep the IP around in a database.
Nope, it is not a push data service. New data files are generated every minute and available to the client to pull down.
While it is possible to set up WebSockets or something similar to do a truly fancy data flow, we preferred to spend our bandwidth resources on making Firefox 4 available for people to download. ;)
This would actually be an excellent opportunity for http streaming (ie, the forever frame), too. Long polling is great when you're waiting for a singular event, but not so much when it's ongoing data being pushed down.
We'll see. Keep in mind that we had about 2 million Firefox 4 RC2 users who already have the "final" version and are therefore not counted on the download map.
Also note that the map just started counting (yes, from 0) at 6am Pacific. So there's still time until tomorrow, 6am Pacific until the 24-hour count is over.
At any rate, this is not a competition ;)
(full disclosure, I work on the Mozilla webdev team).
I made an iPhone app called Glow about a year ago that visualized "feelings" on a map in much the same way. I was working on a web-based global map as well, but got bored of the idea.
I'm not sure if it's just me, but I was clicking through the arrows to scroll through screenshots on the front page of glowapp.com and found that two captions seemed to be mixed up:
"Use Glow to share your feelings with friends on Twitter and Facebook. Update your status and mood with a single click!" was next to a picture with stars; while,
"Rating is easy. Just drag your finger across the stars. When you let go, your feeling will be sent to the cloud." is next to a picture of sharing options.
Hey thanks! I'll fix that. Honestly I haven't done any work on the app or site since last summer. I had some pretty good adoption at first, but usage really fell off because, well, it wasn't providing enough value. Then I had a baby and my time suddenly became a lot more scarce/valuable.
The locations names in Israel are phonetic translations and not their English names (e.g. Yerushalayim translates to Jerusalem) wonder how they got it?
The names of regions and cities come directly from MaxMind[1], our GeoIP service. Some of our localizers provided localized names to replace the phonetic translations, so Russia, France, and Ireland see the real city names.
All of our localization is done by volunteers, so please feel free to contact me if you'd like to get involved.
This is quite a map/page. It reminds me the ApplemApp wall that was installed at WWDC a couple years ago where you were seeing -kind of- real time the downloaded apps from the AppStore, except they were not showing on a world map.
Anyway this FF4 page is in a way a cool dashboard !
So have been watching this on and off today and it's neat to watch the main concentration of downloads move with the morning hours across the map. Right now it's in Europe as everyone goes through their morning "Oh look! FF 4 released!"
Neat, although it would be interesting to see the effect of having dots persist for more than one refresh, and perhaps fade over a few secs. I think it would look much smoother. Nice job though!
if you look at NY state, you will see that the town Alfred has 86000 downnloads and a city as big as new york has 10000 downloads(1/8th)... I wonder if anybody can explain that?
Point to also consider is Alfred is a town with less than 10000 people and New York city has millions!
I don't know exactly what was going on, but we noticed that we were getting as much as 2,000 hits per minute from Alfred, NY. That IP is getting blocked by the load balancer now and I'm working on a way to remove that aberration from our stats.
Not only does Alfred, NY reportedly have more downloads than any other city in the world, or any other state in the US, but it currently has more downloads than any _country_ other than Germany and the US!
I think this has got to be a bug of some kind. Any explanations?
We worked hard to make it fast in Chrome. Their profiling tools were great at finding some bottlenecks that improved perf in all browsers.
My guess is that we're pushing up against the limits of Chrome's repaint rate when the map canvas starts cranking. That's not as much of a bottleneck in Firefox since there's not a separate rendering process.
Well, its not 3:35 anymore! Australia and NZ are definately not listed under asia which would be the logical place. This is very anoying, as I would really like to see how FF4 uptake is going over here.
I've said it virtually every time I've seen Chrome > Firefox comments: Chrome just doesn't match up on the extensions front for me. It doesn't have the same powerful extensions that Firefox does, and for me that's worse. I absolutely love TreeStyleTab, DownThemAll, Pentadactyl and the like, and the Chrome alternatives don't come anywhere close to the tight integration that all these have with Firefox. When Chrome extensions get the power that Firefox's have, then I'll consider switching.
Speed doesn't matter if I can't get the browser to behave how I want.
surpass firefox in what way? all browsers have their own set of advantages and disadvantages, but firefox surpasses ie9 in almost every way, even firefox 3.6, let alone 4
Firefox is much more viable of a browser now that the Mozilla team has addressed memory and performance issues, additionally the new "Firefox button" view gives the browser the slim and minimal look that brought many to Chrome in the first place. I've been using Chrome as my main browser for over a year and I have to say, Chrome's still got issues (i.e. excessive memory use, instability/slowdown sometimes due to orphaned processes). As for IE9, well it won't run on XP, but I haven't used it myself so I can't list any further problems it has, but I'm willing to bet a few exist.
I guess the point is, no one browser is perfect and until that point is reached any serious offering will definitely have a future.
> Chrome's still got issues (i.e. excessive memory use, instability/slowdown sometimes due to orphaned processes)
Not to ignite a browser war, since I use and like both (and there's no point bickering about it), but:
I've had my copy of Chrome dev channel, which you'd expect to be a little less stable, open for about a week and I have under 300 MB committed (total) with 7 tabs open. I've closed a few, but here's what I mean:
Whenever I pitch Chrome to Firefox diehards, I always get the instability argument like you're presenting. I've used Chrome as my primary browser since about v3 when my desktop was still Windows, and the instability has largely disappeared in the last year or so. I wish I could see evidence of the issues that you and others describe, but it just doesn't happen to me on OS X and Linux any more. I haven't had a sad tab or a browser crash in months. And I develop in it!
What's different between you and me? I feel left out from the instability.
I observe orphaned (unkillable) child processes on a regular basis (once a month or so) that prevent me from updating Chrome until I restart my computer sometimes. Additionally, when this happens, I have noticed definite slowdowns in page rendering and the responsiveness of the browser as a whole.
I've seen this behavior on my two machines: WinXP and Win7 (64-bit).
I have also seen Chrome using an excessive amount of memory on both machines. The reason for this, most of the time, is due to Chrome's design. As I'm sure you're aware, nearly each tab and plugin requires a separate process to allow for features like preventing the closing of the entire browser when a plugin crashes or dragging-and-dropping tabs from/to separate windows, etc. However, this is a trade-off between features vs memory usage, and Chrome's will inherently use more RAM than a browser like Firefox which doesn't follow the same process-spawning design.
This is the most common cause for excessive RAM usage, which could be labeled as user error (you shouldn't have so many tabs open, gosh darnit!!) but this isn't the only cause for Chrome's excessive RAM usage. I've definitely seen big spikes of memory being taken up for individual tabs, without any apparent reason. I've never taken out the time to really investigate the cause of this, but if it's not WebKit memory leaks I'm not sure what makes sense to blame.
Honestly, it has gotten better in the last few releases, but still not up to the bar Firefox 4 just brought it to. That browser just got so fast and lightweight. I switched to Chrome (and have stayed for a while) because I really dig its interface, and it feels fast. But lately, I've been dealing with weird performance issues especially when these unkillable child processes are present. I love Chrome for development though, it's got a really good set of tools right out of the box.
Basically, if Chrome's process spawning stuff was rock solid I would think it's just about perfect, and now I'm starting to think FF4 is getting there faster.
*Note: definitely not trying to start a debate on which browser is better, I use both and I like both, but I was just elaborating on what I had said about performance before.
Chrome (64-bit Ubuntu) is currently eating 934 GB with three tabs after being open just under five hours. It's been a big enough problem for me that I bit the bullet and upgraded my desktop to 8GB (to be fair, I was sort of looking for an excuse). Flash is more stable under Firefox, but... Flash will bring down Firefox occasionally. Flash doesn't bring down Chrome, but it also just about never works. On the other hand, Flash can burn in hell for all I care.
* Like Firefox, it is open source! http://github.com/potch/glow
* Counter was started this morning at 6am PST.
* Each dot represents one download.
* Map is generated using SVG, "pings" are divs with rounded corners, country radial charts are canvas.
* The bars across the bottom shows downloads per minute.
* You can drill down to the city level, to see how many downloads from your town. (Click the bottom left circle graph)
* Created by Matthew Claypotch (http://potch.me) and Jeff Balogh (http://jbalogh.me) on the Mozilla Web Dev team.
[edit: added open source information]