Puppy Linux is so nice that I always keep it around even if I don't need it. I have a small partition on my laptop where I install different versions of Puppy, and they co-exist with my main Ubuntu system. The installation is very easy.

If you have a single wired Internet connection you can create Wireless Access Point with Ubuntu and share the Internet connection among multiple devices.

The second problem on Google CodeJam 2013, Round 1B was interesting. The obvious solution of trying all the possible cases and combinations would not work, unless the input had very small limits (besides being not so easy to implement).

After installing a Drupal7 site, I have made several configurations/customizations over time. Now I would like to export them somehow, in order to load them to another site. But the problem is that I don't remember exactly what I have done. The Features module does not help because you have to tell it exactly what to export, but I don't remember all the changes.

I manage a virtual web server in the cloud where I have made lots of configurations over time (installing new packages, tweakings for optimization, changes related to security, etc.) If I want to build another server that has the same function and purpose as the first one, I don't remember all the things that I have touched and changed. The long and tedious way would be to go over all the installations and configurations again, and still I may miss something.

Recently I have suffered a total system destruction in one of my computers. It happened while I was testing a software that I am developing, due to a simple bug. It helped me realize my lack of caution while testing unstable things, and I learned that it is always better to do the testing inside a chroot environment. Chroot’s provide isolation from the rest of the operating system, so that in case of severe errors damage can be mitigated.

Nginx (engine-x) is a web server that is regarded to be faster than Apache and with a better performance on heavy load.

Clonezilla Server is used to clone many computers simultaneously across a network. This is done using a DRBL server and computer workstations that can boot from a network.

A powerful rack server can be used as a host for installing lots of virtual machines, and it can be used as a data storage as well. This article will describe how to use such a server, installed with CentOS, as a host for virtual machines.

Using the project B-Translator as an example for illustrating some of software development concepts and practices.