Send As SMS

Tuesday, October 03, 2006

Day 18 - Mouse Heat Map

Where has your mouse pointer been going all day? While this app is running (located in systray) it will record everywhere your mouse goes. After a while, right click the icon, and get a full screen mouse heat map overlay.

The code was implemented smartly, and will not take up much RAM or CPU. It won't grow in consumption over time either (in theory...). It doesn't actually record the mouse, it just records a hit count for a giant grid of points.

NOTE: This is not multi-monitor friendly as of yet. It will only do your primary monitor. When I get the time, I will fix

Yet another sweet app... Where are the naysayers now? Certainly not posting in my comment section any longer. w00t!

Digg!  Download the app here
  Download the source here

As a reminder, I code an app every evening, starting at the time posted above. All code sessions are observed over WebEx, and the app idea is decided on the fly. Thanks tonight to Rajio - who had this idea, and to the code project's Christian Graus whose example of gaussian blur code I ripped (and credited).

17 Comments:

At 2:12 AM, salmonmoose said...

That's nice :)

It doesn't seem to support my multi-irregular-monitor setup, where's support for that? Slack! :)

 
At 3:48 AM, Anonymous said...

So where's the mac version ;-)

 
At 7:21 AM, Anonymous said...

Hello, i'm Danny
cool stuff! really!

can you please say in what programming language you code your software?

 
At 9:50 AM, Anonymous said...

is there something out there like this i can throw on my website so i can see a heat map of my vistor clicks?

 
At 10:13 AM, Dan Atkinson said...

Hey! I like this a lot as I can actually see my productivity in some way other than WPM (which isn't exactly accurate for OO languages).

But, I wouldn't call it RAM friendly though. It's constantly taking up more than 40mb at any given period.

My colleague has the same setup, but his only peaks that high when he views the heat map, so it looks like something on my PC is making it higher. :(

 
At 12:51 PM, Anonymous said...

RAM usage is VERY VERY high

 
At 12:56 PM, Dana Hanna said...

RAM usage is only high after generating a heat map, and before garbage collection runs. idle your pc and you'll see it drops below 15MB again.

 
At 1:36 PM, Anonymous said...

did u code this using .NET ? if so then there are ways to force garbage collection

 
At 1:12 AM, Dana Hanna said...

There is no reason to force garbage collection. It will run when needed. I'm only pointing it out for those being picky about the RAM usage.
Forcing garbage collection is useful in a .NET application when you're at a point in your code where you know you want the CPU to use it's time doing that instead of something else. Such a situation is VERY rare, and should only be done if proven needed.
It's a common beginner mistake to force collection in your code because you think you're being helpful. In fact, you're accomplishing little to nothing.

 
At 4:22 AM, Anonymous said...

I have 2GB RAM; I don't mind 40MB for any application. Mouse heat map running now, thank you!

 
At 8:52 AM, Dan Atkinson said...

Dana,

As I mentioned, it's that high even when I haven't viewed the heat map.

Literally, if I left my computer and came back to it and hour later, it would still be over 40mb.

 
At 12:40 PM, Anonymous said...

I can't explain it, but I have found some .net apps take up more ram on some PC than others. I have even see where a process that is doing the exact same work has gone from 30 megs to 5 megs over a days time. Again, I couldn't explain it as I know garbage collection was forced occurred several times a minute so it wasn't related to that. Anyone else seen this?

 
At 2:25 PM, Eric D. Burdo said...

Have you looked into making a Widget for Yahoo and/or Google?

 
At 10:23 AM, cristian said...

for the websites, the only app online i know is

http://www.crazyegg.com

still in beta (sems not working on my blogger blog) but fantastic!

 
At 9:33 PM, Anonymous said...

Just to let you know. I am running side-by-side monitors with nVidia nView in Horizontal Span configuration, and the heatmouse app works dandy. I guess you were referring to multiple desktops, as in hidden views? Thanks for the app~!

 
At 8:55 AM, Yourdoom said...

With Horizontal Span Windows thinks it´s just 1 monitor, but a very wide one, the drivers then split it across the monitors, if you have a dual view then it will see 2 monitor´s and only work with 1 of them.

 
At 2:39 PM, Ben Tracy said...

I run this at work and you can make out some of my mosted used applications in the heat map. This is a fun little break from the code most days. thanks man!!

 

Post a Comment

<< Home