Recent blog posts
Detailed instructions to create a LAMP server using Debian 9 Stretch RC3. Prepare your server for php7 and MariaDB.
A simple guide to create a bootable usb with multiple iso images. Quickly and easily using WinSetupFromUSB.
Xubuntu desktop is the XFCE Ubuntu flavor. Lightweight, elegant, easy to use and configure for any workstation. Moreover, ideal solution to revive old systems.
Ubuntu desktop in version 16.04 LTS is a Free and Open Source workstation environment, which can meet the requirements of the vast majority of users.
PhpStorm is a excellent php IDE written in Java. This is a guide on how to install it on Ubuntu. Basic configuration.
Google Chrome is free but not Open Source, so it is not pre-installed on Ubuntu 16.04 This is a simple guide to setup and configure Google Chrome.
Mozilla Firefox is installed by default on Ubuntu 16.04 This is a simple guide to configure Firefox (Preferences, Java plugin, Adobe Flash plugin).
A simple guide to setup Java (Oracle Java or OpenJDK) on Ubuntu 16.04 desktop. Basic configuration.
A simple guide to setup samba on Ubuntu Workstation. How to mount samba shares with CIFS.
December 25th, 2016 7,717
How to manage your passwords on Linux (Ubuntu) workstations, Android devices using KeePass. How to sync to make them available anywhere.
Recent tech tips
December 22nd, 2016 2,277
Strong password without having to remember it? Is it possible? Is it safe?
December 21st, 2016 1,878
How to delete a command in Bash history. Sometimes it is better to not include a secret command in history. See how.
In Ubuntu, Grub boot menu is hidden by default. You can display it by pressing "SHIFT" continuously at boot time. This is useful (among other cases) in case you want to boot in Recovery mode. How to make this change permanent?
Use needrestart to determine if some services need restart or system reboot is required after Debian or Ubuntu update
When you prompt user to input text (e.g. username, lastname etc), you may use Regular expressions to sanitize User Input
If you want to start a youtube playlist from random video, just add: &index=random_number to the src attribute of the embed code.
Php has functions to easily get basename and file extension. In some cases using of regular expression is necessary.
December 9th, 2013 18,851
A good solution is to use immutable disks. When a virtual disk marked as immutable, it becomes read-only and differences will be stored in differencing disks
December 9th, 2013 28,269
It is useful to prevent direct access of AJAX calls (from browser address bar). A solution could be the following simple function check_is_ajax()
November 4th, 2013 40,630
Date manipulation is a common and useful development task. It was never easy with PHP, until PHP5 and DateTime class. Take a look at date_convert() function