Tuesday, 30 July 2013

Share mouse, keyboard and files over WiFi with Free applications

I am very happy to share information about applications that you will be reading below. These applications are not only for developers but also for end users of Windows or Mac or Linux. From last two days I have been working on two different computers i.e. on Mac as well as on Windows. I was continuously switching back and forth between these devices and I was fed up of using individual keyboard and touchpad. After thinking for a while I googled for "share mouse, keyboard and files over wifi" and I got following applications.

Synergy - Share Mouse/Touchpad and Keyboard between computers. You just need to configure settings to work with, which are pretty easy to figure out. Install it on every device. Most important thing is, it's cross platform and open source.


As Synergy does not yet support file copy and paste, I am using following utility to easily copy and paste files across machines.

AnySend - This is a nice and free utility which you can run with very less efforts and transfer files between your PCs and MACs. This is somewhat similar to Apple AirDrop. To use this just copy the files as you would do it on local machine. Click on AnySend icon which you can find on menubar above if you are using Mac or in task-bar if you are using windows. Now select name of device that you want to send and boom!!!, your files are on another machine.

If you happen to know utilities similar to above or entirely different then mention below in comments.

Monday, 22 July 2013

A simple to use wrapper over Node.JS mysql library

I was working on a project on Node.JS platform. In this project I was suppose to exchange data with MySql server. For this purpose I used two packages which are available in NPM repository, namely, mysql and mysql-queues. Later is required because former driver yet doesn't support transaction feature of MySql database. If you go through them you will be confused a little bit and will find it difficult to understand in one go. To simplify this situation I created an easy to use wrapper over these two libraries.


You can find my wrapper on GitHub by following this link. I am still in progress of making it feature rich.

How to use this wrapper:
  • Install mysql and mysql-queues using npm install command.

  • Download wrapper by going on this link.

Now you can use it in a way that is specified below:

Initialize object

 var dbClass = require('DB');
 var options = {};
 options.host = 'localhost';
 options.user = 'root';
 options.password = 'root';
 options.database = 'test';
 var db = new dbClass.DB(options);

Select statement

 db.sql = 'select * from test where id = ? and name=?';
 db.select(function(err, results, fields){

Transaction statement

 db.sql = 'insert into test (name) values (?)';
 db.insertTransaction(['bharat'],function(err, info)
    id = info.insertId;

Saturday, 13 July 2013

Repair anything yourself using guides on iFixit

Recently, I raised my Macbook Pro's RAM up to 8 GB. My machine is Macbook Pro 13" (mid 2010). I was worried about opening my Mac and replacing RAMs myself. But still determined to change RAMs. After searching on internet I came across a website named iFixit.com. They say that it is a free repair manual.

Macbook Pro 13 opened

I followed this guide to change RAM. It is described in very simple and easy steps. Guide even tells you which tools will be required to perform repair.

If you go to their about section, it states that, "We're building the free repair manual for everything". Also they encourage you to contribute repairs. You can follow this link to contribute repair. Currently you can find repair guides for following things Mac, Game Console, Phone, iPhone, Car & Truck, Camera, PC, iPad, iPod, Appliance etc.

For those who are interested to know which RAM I used and from where I bought it. The answer for former is G.Skill SQ For MAC DDR3 4 GB and for later is Flipkart.

See below opened Macbook Pro 13" video that I made myself.

Sunday, 7 July 2013

Monetize your Facebook application in four easy steps


You have a great Facebook application and generating a decent amount of impressions then, probably, it's time to generate money from your Facebook application. There are various methods of monetizing, like displaying ads and/or using Facebook Credits. Facebook Credits are like a virtual currency. You can use it to buy virtual goods in any games or apps of the Facebook platform that accept payments.

Currently, I am monetizing my Facebook application by the method of displaying ads.

Follow below four simple and easy steps to start monetizing your Facebook application:

  1. Find the Facebook ads providers list by going on https://developers.facebook.com/adproviders/

  2. Choose and register as a publisher with one of these ads providers. (Ads providers may take time because they will review your application.)

  3. Once ads providers review your application, you can create ads slots.

  4. Grab the code from those ads slots and place them into your Facebook application at appropriate places.

Readers always ask me following questions:

Q1: Can I use Google AdSense with Facebook applications?
Answer: No. AdSense is not in Facebook approved list of advertisers.

Q2: Where can I get the list of ads providers for Facebook applications?
Answer: https://developers.facebook.com/adproviders/

Q3: What is your Facebook application and what it does?
Answer: It's a simple app which extracts birthdays of your friends and gives you an "ics" file.

Q4: What is the link to your Facebook application?
Answer: App name and link is Birthdays of my friends. Link to Facebook page https://www.facebook.com/birthdaysofmyfriends.

Q5: What can I do with an "ics" file?
Answer: You can import that file into Google Calendar, Apple iCal, iPhone, Android, and Mozilla Thunderbird etc.

Q6: What ads providers do you use?
Answer: I use LifeStreetMedia.

Q7: Which ads providers do you recommend?
Answer: I can recommend LifeStreetMedia as I use it. I have seen many people recommending RockYou as well.

P.S. I don't have any connections with LifeStreetMedia / RockYou and they are not paying me anything to mention them here. Links are only for the purpose of ease for you to navigate.

Attribution: Facebook logo above is from WikiMedia Commons and link to it is this.

Monday, 1 July 2013

Map your trek route on Google Maps without any application andconnectivity?

Last year on 16th of July, we trekked from Talapewadi to Bhimashankar. It was a very great experience and you feel relieved when you go close to the nature. While trekking as usual everyone was taking photographs and I was no exception. I was taking photographs using my brand new Nokia Lumia 800 (now I no longer own it) which has functionality of attaching GPS locations to clicked photographs. And luckily I clicked photographs on important turns of trek. Trek was of almost 23 kilometers.

After returning home I used those photographs to extract GPS locations using Garmin Basecamp application. You can import these geotagged photos into Garmin Basecamp application. Give some nice name to the collection. Now right click on all photos and select "view in Google Earth" and you are done.

So to summarize, the things that you will need to map your hike on Google Maps are as follows:

  1. A camera with geotagging facility.

  2. Software that can extract all the GPS co-ordinates from geotagged photos.

  3. Google Earth to view those GPS co-ordinates and thereafter to share it with the world.

Those who are lazy to read, video demo is as follows:

Download the route file that you have seen in above video. You need Google Earth to open this file.

If you want to use this file publicly give attribution as digitoffe.com

P.S. :- This is for purely educational purpose. I have no connection with Garmin BaseCamp.