How Skype works

A lot of us use Skype daily but have no idea about how it works. Here is a brief description of the Skype framework. Skype employs a partially decentralized architecture - a mix of the peer-to-peer and  client-server architectures. The client-server system is used for authentication while the peer-to-peer system is used for IP telephony, relaying, … Continue reading How Skype works

Ten Useful Terminal Commands for Developers

The terminal is a very powerful tool and once you grasp its basics; you'll love it and use it in ways never imagined by the original developers. Here are some really useful commands. 1. Ls I use this tool everyday and it is a workhorse. It is great for listing directory contents and checking file … Continue reading Ten Useful Terminal Commands for Developers

What you should know about HTTP

Everyone seems to know that the web runs on HTTP, but what is HTTP all about? HTTP stands for HyperText Transfer Protocol; an application-layer protocol that the web runs on. Implemented as a client-server model; HTTP defines how clients should make requests to servers and how servers should respond. It is a stateless protocol because servers … Continue reading What you should know about HTTP

Sorting Algorithms

Sorting involves ordering elements of a collection. For example, dictionaries are sorted alphabetically, numbers lists could be in increasing or decreasing order.  Sorting is important and can be applied in various context, especially those that have to do with massive data. The efficiency of a sorting algorithm is related to the number of elements it … Continue reading Sorting Algorithms