5 ms·
Show HN: I wrote a really simple client side HeatMap Effect generating script.
The use case am considering is to do self testing on your site yourself, rather than depending on any third party, I plan to OpenSource it.
I am storing the mouse movement coordinates of the user in a javascript array which I plan to send to server every few seconds and save into DB.
Where I plan to aggregate the data and show final results.
What do you think?
http://websymphony.github.com/labs/trackerapp/
Currently tested on only Chrome.
- EricR23 15y agoWorks on FireFox. Very cool :) Hope to see continued development on this.
- websymphony 15y agoThanks for encouraging words. Will try to finish the server side code soon and let you guys know. :)
- carbocation 15y agoAn amazing start! I just followed this on Github.
- cpg 15y agoKudos! Very nice! ... now for the back end! :-)
- websymphony 15y agoI know! Right now I am storing cursor coordinates as one moves and displaying it via red squares. My initial thought was to timestamp each point and then every few seconds make an ajax request to server with just the updated data. And once I have lets say 2000-3000 points, run some sort of algorithm to weed out arbit points and have only most visited coordinates displayed as most popular regions. Easy peasy right? But now as I am thinking more about it, I think the data I will have might not be able to accomplish the task. My first question to myself is, a point on my screen will have different coordinates than yours, for example lets say the top left corner of button that shows map is 300,400 on my screen. But since my screen resolution might be different than yours, it might become 200,300 on your screen. Therefore data point loses its relevance. One approach that I can think of to solve this issue. Get screen resolution of each user along with the data points, which can be used to normalize the data back on server. Any thoughts, suggestions?
- klaut 15y agoWorks on Safari 5 too :) Great stuff!
- senthilnayagam 15y agoI would definitely use it, if it can work with backbone.js, possibly with offline storage