Facebook authentication with Friend Watchdog
Monday, 15 April 2013 13:36
administrator
This article is a description of the integration of Facebook authentication inside Friend Watchdog. It is not meant to be an introduction or a description of Friend Watchdog's features. Please click here for more information about Friend Watchdog.
Why authenticating on Facebook with Friend Watchdog
After authenticating on Facebook, the timeline in Friend Watchdog will contain not only the status of your friends over the past week, but also their activity on Facebook, such as what they posted on their wall, giving a broader overview of what they are doing on Facebook.

Please note that
- enabling the Facebook authentication is optional, and it is not necessary for the main purpose of Friend Watchdog, that is checking when your friends are online
- the data obtained with the Facebook authentication is not stored anywhere, not in your computer nor in the Friend Watchdog servers
- the data obtained with the Facebook authentication is not sent or distributed in any way, so all the updates shown in the timeline are not transmitted to the Friend Watchdog servers
Last Updated on Monday, 15 April 2013 14:22
|
Thursday, 21 March 2013 20:07
administrator
Friend Watchdog
Now I know what you did last monday
Friend Watchdog monitors the state of your friends on Facebook and Skype, stores the status changes on remote servers, and lets you check when your friends have been online in the past week.
Please note that you are sending status updates only when Friend Watchdog is up and running, and that status changes from multiple users are merged, so the more users of Friend Watchdog, and the more these users keep Friend Watchdog up and running, the more accurate will be the usage stats.
|

|
Your privacy is safe
Why should you trust Friend Watchdog? Here is why:
- your Facebook account is NEVER sent to our servers, it is stored in encrypted form only on your computer, and it is used to access your Facebook account from your computer only. There is no way that we can access your Facebook account!
- we do not know who your Facebook and Skype friends are: the names of your friends are salted and hashed with SHA1, and only the hash is sent to the servers, so that we can distinguish between different friend names but we cannot retrieve friends' names from the hashes. For example, an Facebook username such as "stefanotommesani" generates this unique hash code: CDE381A6C6AD22E844263908022D40C4FE634C37. This hash code uniquely identifies the given Facebook username, but there is no way to go from the hash code back to the Facebook username, so the names of your friends remain private, and only you can see them
- once you allow Friend Watchdog to connect to the Skype application running on your PC (so that you don't even have to tell Friend Watchdog about your Skype password), it only reads the list of Skype friends and their online status, and that is the only information that is being monitored, always using hash codes to encrypt real names so that your privacy is safe
- the real names of your friends never leave your PC, only the hashes, that is the encrypted names that cannot be transformed back into the real names, are sent to the servers
- no need to register, no need to open an account, no need to pay anything, just download the software and run it on your PC
|
 |
 |
Last Updated on Wednesday, 17 April 2013 03:10
Limiting SkyDrive upload speed
Wednesday, 20 February 2013 13:00
administrator
At the time of writing, the SkyDrive client application on Windows does not support bandwidth throttling on uploads, so if you start uploading a large number of files, it will try to use all the available bandwidth, and this behaviour has an impact on other applications accessing the Internet.
A quick fix to this behaviour is:
- install a network traffic manager app, such as SeriousBit NetBalancer (I will use NetBalancer in this example)
- start SkyDrive app
- start NetBalancer, and look for the SkyDrive process (SkyDrive.exe), right-click to open the menu, and choose Upload Priority | Limit...

Last Updated on Wednesday, 20 February 2013 13:30
AltaLux 1.5 in IrfanView
Sunday, 04 November 2012 00:00
administrator
 |
The AltaLux image enhancement filter is now available in the popular IrfanView image viewer!
Now you can enjoy AltaLux technology inside an advanced image viewer and editor, so trying how AltaLux can effectively enhance your photos is just a click away while you keep using your favourite image viewer.
|
Last Updated on Sunday, 04 November 2012 12:20
An object-oriented approach to FizzBuzz
Sunday, 21 October 2012 17:59
administrator
FizzBuzz is described as:
Write a program that prints the integers from 1 to 100. But for multiples of three print "Fizz" instead of the number and for the multiples of five print "Buzz". For numbers which are multiples of both three and five print "FizzBuzz"
It takes a couple of minutes to write a few lines of C++ code that satisfy the requirements:
#include <iostream>
using namespace std;
int main () {
int i;
for (i = 0; i <= 100; i++) {
if ((i % 15) == 0)
cout << "FizzBuzz" << endl;
else if ((i % 3) == 0)
cout << "Fizz" << endl;
else if ((i % 5) == 0)
cout << "Buzz" << endl;
else
cout << i << endl;
}
return 0;
}
But then the examiner may ask you to add some more checks, such as printing a different string when the number is a multiple of 11 or any other number, and the code quickly becomes ugly. In fact, the major mistake that you can make with FizzBuzz is using the wrong sequence of checks, for example checking for modulus of 3 before that of 15, so that FizzBuzz is never printed; this is obvious with only 3 simple checks, but gets more complicated with a longer list of more complicated checks.
So why not spend a few minutes more than those required to write a trivial solution, and propose a fully object-oriented solution that is designed for extensibility?
Last Updated on Saturday, 27 April 2013 00:58
Improving web speed with Arduino
Tuesday, 02 October 2012 15:26
administrator
The Flash library by Mikal Hart is a wonderful piece of software for improving simple web server apps built on the Arduino: the main problem when designing such apps is that the limited number of RAM available forces the designer either to use an SD card to store the files that are part of the web site, and/or store some HTML fragments in the PROGMEM area, and copy them back to normal RAM to modify and include them in the server HTML packets. The Flash library greatly simplifies the second technique, as the following code fragment highlights:
FLASH_STRING(WebPageHeader, "HTML source code");
Client& client = web_server.get_client();
WebPageHeader.print(client);
The FLASH_STRING macro declares a string contained in PROGMEM, so that it does not decrease the available RAM. Streaming that string is as easy as calling the print method and passing the Client connection of the web server as the parameter. Using this technique, dynamic generation of web pages includes both static parts stored in PROGMEM as FLASH_STRINGs (for example, page headers and footers, top menus, etc.) and dynamic parts that are generated by code (for example, tables containing data values coming from attached devices).
Last Updated on Thursday, 21 March 2013 23:18
|
|
|
|
|
|
Page 2 of 4 |