My main expertise lies in Networking, Web App and Graphic Designing. I am a Linux enthusiast, who loves to tweak and alter the system. I’m also good at procrastinating but I’m not very proud of it.
The driving force for me is my love to create and modify things. There’s a unique joy in creating something all by yourself or modifying an existing system to do something else altogether, be it a design, an app or even a circuit. It takes a new life of its own. Sorry for my cringy philosophy because I’m at loss for better words, and a bit late for this submission (Procrastination - mention in the 1st paragraph)
The most complex project that I’ve worked on was when I was tasked with extracting the live traffic data for a city. This particular work was in regards with the Startup I’m working with (Adzippy.com). So as we know Google doesn’t offer any kind of APIs for live traffic data (atleast not at the time of my writing). The only was we could get the traffic data was using the embedded google maps APIs and using the live traffic overlay on top for it. The solution we came up sure violates the Google’s user policy and T&C, but we needed some data to feed our system so please don’t rat us out to Google because snitches get stitches (but seriously though, please don’t report us, please :P).
So we wrote a couple of python script which used to extract the live traffic data of any place. The first script used to fire multiple threads of headless selenium with a approx. window size of 5000 : 5000 px. The idea was to take periodic screenshots for all the windows between the intervals of every 5 mins and store all those screenshots with timestamps along with the coordinates pairs for that window. Then after 24hrs the second script would start. It would take those images, convert it into grey scale and then breaks down the images into tiny blocks of 5px. The script would then check the colour intensity. Google maps uses 5 distinct colour to depict traffic. White : no traffic, Blue : no~less, Yellow : less~moderate, Orange : moderate~high, Red : very High. The second script converts everything to shades of grey and checks the intensity of these colours in each tiny 5px block. The resulting value of the intensity is stored along with the corresponding coordinates of that tiny block and timestamp into a JSON file. And finally the entire JSON is uploaded onto the server using an API which parses the json and feeds it into a tree data structure built in MySQL. So if we get a coordinate, we traverse the tree and check if the coordinate lies inside any tiny block and then we get the corresponding traffic value for that tiny block.
(I know I did a very horrible job explaining my idea, so further enquiries at [email protected], forgive me)
The thing I learned was that there is always a solution, the question lies is if its legal or not ;) Another lesson which is important was that always write test cases for any project you make. I got to learn the latter lesson the hard way. And finally, if you’ve got an idea to make something, don’t think about it too much or else you would never start.
I’m almost done. These were my answers. I apologies before hand if I made any typos or spelling mistakes because I don’t have the time to proof read it. The rest is up to you guys :)