Category: How I solved it

Depreciation notice error in phpmyadmin with 16.04 (Nginix)

Ok if you want to get rid of those nasty notices you have basically 4 options.You should note that the notices are caused by the oldish version of PHPMyAdmin that still uses some deprecated code, mainly old constructor definition statements. But they don’t affect PHPMyAdmin as those statements still function but they should be changes as they will not work for eternity.

The fist one(recommended)

So the first one is to just turn off the notices for the PHPMyAdmin folder. You can do that by using the following commands:

cd /usr/share/phpmyadmin
sudo touch .user.ini
echo "error_reporting = 0" | sudo tee -a .user.ini
sudo service nginx restart

Second One

You could change error_reporting in php.ini, but there are many reasons you wouldn’t want that.

Third One

Use a different source repo for PHPMyAdmin, again I think there are many reasons one would want to stick with default PHPMyAdmin source repo. You can do this with the following commands:

sudo add-apt-repository ppa:nijel/phpmyadmin
sudo apt update
sudo apt install phpmyadmin</pre>

Last one

You could change the files that generate the notices. …

How to convert a MyISAM wordpress database easily

If you have an old WordPress database is possible that the engine for the MySQL/Maria tables to be MyISAM, and I don’t know if you heard but the MySQL will drop MyISAM in the future.So we know that we can use the SQL query:


So we just need the name of our tables and then do a search and replace(I used notepad++).
so we can get all the names if we use optimize tables from PHPMyAdmin, so do a select all optimize from PHPMyAdmin and then you can copy that query that looks like:

ALTER TABLE `wp_cbnetpo_ping_optimizer`, `wp_commentmeta`, `wp_comments`, `wp_links`, `wp_mts_wp_reviews`, `wp_nxs_log`, `wp_options`, `wp_pingpressfm`, `wp_postmeta`, `wp_posts`, `wp_termmeta`, `wp_terms`, `wp_term_relationships`, `wp_term_taxonomy`, `wp_usermeta`, `wp_users`, `wp_wp_rp_tags`  ENGINE=InnoDB;

Then use nodpad++ find replace feature with the following:




.(watch the spaces)

Then you should end with a query good for executing and converting your tables. The query should look like this:

ALTER TABLE `wp_cbnetpo_ping_optimizer` ENGINE=InnoDB;
 ALTER TABLE `wp_commentmeta` ENGINE=InnoDB;
 ALTER TABLE `wp_comments` ENGINE=InnoDB;
 ALTER TABLE `wp_links` ENGINE=InnoDB;
 ALTER TABLE `wp_mts_wp_reviews` ENGINE=InnoDB;
 ALTER TABLE `wp_nxs_log` ENGINE=InnoDB;

Personal Gitlab on a home bare metal trough Reverse proxy

If you don’t want all your repositories on GitHub or other project hosting platform, you can choose Gitlab.I guess you already know what GitLab is.Yeah very similar to the Gitlab platform and the best thing is that hosting is on your server, you can have private/internal/public repositories. You have some kind of open source security software that you can be used for nefarious uses, you want to make the source public but some big companies consider that this kind of code is not “open source”.Simple use your server and do what you want. I’ll show my configuration for a GitLab, I use SSL for the proxy that accesses a local server on non-SSL. Also, I use an external mail server with a custom domain hosted on Zoho.

Let’s go into Gitlab.rb

Ok, I should say that the server auto updates Gitlab for every new version. I didn’t have a problem with my auto updates yet, but I mention that just for the fact that this configuration runs on Gitlab 8.12.4.

First, we find the external_url directive and we change to …

Java concurrent programming homework

Some days ago I published on my personal Gitlab server some project/homework.(Java concurrent programming). I did this some time ago for a master course in my university. I think I did spend a day or less on it so the code is just for the purpose of demonstration. In fact as usual after the presentation, I left it to rot. I will probably put some other dead corpses on a string there as I have so much code even from a decade ago.

Anyway, Where is the Link to my java concurrent programming Homework

Here it is:

Aspire E1-510 linux Freeze

If you have an Aspire E1-510 and it freezes in Linux you can try a couple of things to solve this issue. First, if this notebook freezes and then the CPU fan starts to rotate faster than before is a sign that this freeze is an actual hardware freeze.(also if Linux doesn’t respond to magic keys combination that is clearly a hardware freeze) In this model, the CPU fan is “smart” meaning that is meant to not be always on.

So it will be on up to the point in which grub takes control than in Linux will be always off and I didn’t try hard to find a way of switching it on.This netbook is very weak in terms of computing power but u probably know that already.
I have an old i5 laptop that has benchmark scores 3 times higher. Anyway using a fresh install of a modern distro Linux( ubuntu 16.04 LTS or something) if it doesn’t contain Gnome3 or KDE it will probably not freeze. If you want to freeze it fast try a game on …

C# Read Form Registry Snippet

This article has been written before more than 24months, information might old.

C# method , example to read from registry .

        static string ReadKey(string keyLoc)
            // Usage : 
            // Example : ReadKey(@"HKEY_CURRENT_USER\Software\Valve\HLServer\InstallPath") shoud return similar to K:\valve\hlserver 
            // the data after the last \ is the value name .
            // In case of error a string with the error will be returned
            RegistryKey Hive;
            Regex RTest1 = new Regex(@"HKEY_CURRENT_USER\\|HKCU\\"); // HKCU
            if (RTest1.IsMatch(keyLoc)){ Hive = Registry.CurrentUser; }else
            { RTest1 = null; Regex RTest2 = new Regex(@"HKEY_LOCAL_MACHINE\\|HKLM\\"); // HKLM
            if (RTest2.IsMatch(keyLoc)){ Hive = Registry.LocalMachine; }else
            { RTest2 = null; Regex RTest3 = new Regex(@"HKEY_CLASSES_ROOT\\|HKCR\\"); // HKCR
            if (RTest3.IsMatch(keyLoc)){ Hive = Registry.ClassesRoot; }else
            { RTest3 = null; Regex RTest4 = new Regex(@"HKEY_USERS\\|HKU\\"); // HKU
            if (RTest4.IsMatch(keyLoc)){ Hive = Registry.Users; } else
            { RTest4 = null; Regex RTest5 = new Regex(@"HKEY_CURRENT_CONFIG\\|HKC\\"); // HKCC
            if (RTest5.IsMatch(keyLoc)){ Hive = Registry.CurrentConfig; }
            else{RTest5 = null; return "Invalid registry hive name please check you key name ";
            Regex RTs1 = new Regex(@"\\");
            string[] RTarr = RTs1.Split(keyLoc);
            string StrSubKey = "";
            for (int i = 0;