Friday, March 27, 2015

Kingsoft Office (WPS) - Ubuntu

Hi peeps, I prefer using WPS (Kingsoft Office) instead of LibreOffice or OpenOffice program. Later, i realize Kingsoft has release a new alpha edition. Let's download it now :

I tried to install WPS deb package..but i got some error :
[email protected]:~/Downloads$ sudo dpkg -i wps-office_9.1.0.4751~a15_i386.deb 
Selecting previously unselected package wps-office.
(Reading database ... 302163 files and directories currently installed.)
Preparing to unpack wps-office_9.1.0.4751~a15_i386.deb ...
Unpacking wps-office ( ...
dpkg: error processing archive wps-office_9.1.0.4751~a15_i386.deb (--install):
 trying to overwrite '/usr/bin/wps', which is also in package kingsoft-office
dpkg-deb: error: subprocess paste was killed by signal (Broken pipe)
Errors were encountered while processing:

What the heck? So, i assume WPS don't auto replace old version of WPS. So the solution is very simple. I need to purge the installed package:
[email protected]:~/Downloads$ sudo apt-get purge kingsoft-office
Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be REMOVED:
0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded.
After this operation, 464 MB disk space will be freed.
Do you want to continue? [Y/n] Y

Lastly, just install the newer package dpkg command :
[email protected]:~/Downloads$ sudo dpkg -i wps-office_9.1.0.4751~a15_i386.deb 
(Reading database ... 300395 files and directories currently installed)
Preparing to unpack wps-office_9.1.0.4751~a15_i386.deb ...
Unpacking wps-office ( ...
Setting up wps-office ( ...

TMnet and port 6667

We cant use port 6667 (popular IRC open port) because TMNET network ISP already blocked that outgoing port. High possibility TMNET are stopping IRC botnet / spammer. If you are using Internet relay Chat (IRC), try use open ports (6660-7000) or SSL port (6697).

Logo FSKTM, UTHM (Vector)

Hi peeps! Today, i want to share a FSKTM, UTHM logo which is traced by myself using vector image. Many student and lecturer want to use this FSKTM logo but sadly the logo at FSKTM portal are too small. My vector are designed in CYMK mode, should be no color mode problem when you print it.

So here, i share the vector file with you all. You just need only two fonts which is Lucida Bright and Edwardian Script ITC. Hopefully, this FSKTM, UTHM logo vector will be useful to you. That all from me, thanks!

P/s : I'm using Adobe Illustrator CC TryOut, but i already optimize this vector for Adobe Illustrator CS3 and above.

Studying Hack (infographic)

Thursday, March 26, 2015

Running Jar (Java Archive) file in Windows by double click

Peace be upon you and hi! Do you have *.jar (Java Archive) file? What is Java Archieve ? What we need? Ho to execute it?

Java Archive is a package file format typically used to aggregate many Java class files and associated metadata and resources (text, images, etc.) into one file to distribute application software or libraries on the Java platform.Source : Wikipedia

To execute Jar files, you need to install JRE (Java Runtime Environment) which can be download from Oracle website.

You can run Jar by command line directly from the directory
java -jar helloworld.jar

You also just can double click the Jar files, but sometimes when you double click on a jar file, and your Java application does not start because your .jar association has been hijacked. You can fix the problem with Jarfix. It will restore the .jar association with javaw.exe from your computer JRE. Download from here:

Dont worry, jarfix is freeware and small in size but reliable to solve the problem.

Saturday, March 21, 2015

Store currency / money data into database with INT datatype

Hi everyone! I just learn something new about storing currency / money data into database using INT format instead of using DECIMAL or NUMERIC datatype from Mr.Nawawi Jamili. Usually we using decimal(10,2) format to store data into database, but if you follow "Generally accepted accounting principles (GAAP)", you should use 4 decimal point which is decimal(10,4) format.

But, he suggest to use INT format because we will treat as a cent value only. The trick is to prevent you from been confuse when handling with large amount of data. Dont worry about lose precision problem, it wont be happen here. To store the data, you need to multiply it with 100 before saved. Then for output, divide the stored value with 100. If you are using MySQL, just use the query statement function given below :

Just let the programming side do the cent converting to $$ job and database side just storing the cent values only. Hey, team work right?

Wednesday, March 18, 2015


Remember my previous post about CPRE-FL training? I'm now certified officially as Requirement Engineer. Insya'Allah, I will join training class for CTFL (Certified Tester Foundation Level) by end of June to acknowledge me as Software Tester, I will do my best :)

LAMP - stack server for Ubuntu

Yo! Whats up.. In this guide I will show you how to install a LAMP. Maybe novice user does not know what is LAMP. Here some explaination, L-A-M-P stands for Linux, Apache, MySQL and PHP.

Basically it about a bundle of software to build a web and database server. If you fimiliar with windows, it just like XAMPP, WAMP and the others. XAMPP also has package for linux, if you want use it. The LAMP that i want introduce is using Tasksel command or directly APT command which the most-easier installation for LAMP server.

How to Install ?
1) Using Tasksel
Open you terminal, update the repo and install tasksel first :
$ sudo apt-get update
$ sudo apt-get install tasksel

Then using the installed tasksel, type the command below :
$ sudo tasksel install lamp-server

Please note the BOLD syntax, don't get confused. Now, you are ready, You default local server directory is located at " /var/www/ "

2) Using APT
This is most-most easier to install LAMP-server on your computer :
$ sudo apt-get install lamp-server^ phpmyadmin
Please note the “^” caret symbol end of the line, its won’t work if “^” missing. You default local server directory is located at " /var/www/html "

Now we are ready to visit the "http://localhost" aka "" from our favorite browser! BTW, if you still love XAMPP so much, you can follow this XAMPP INSTALLATION tutorial (Malay language) for linux. Adios!

The mastermind behind the friendly icon - Susan Kare

You may know some icon that normally we used such as command icon on Apple keyboard, lasso icon in Adobe photoshop tool menu, Facebook virtual gift and many more but do you know who is the creator behind this ? Meet Susan Kare an artist and graphic designer who involve with many company such Apple, Nokia, Facebook, Microsoft and more. Believed or not, his artwork are more famous than his self.

The EG conference in California, Susan Kare spoke a little bit about historic of her artwork. I think developer and designer whom involve with front-end designs should watch this video.

This video is well worth watching. Hope you like it too.. Thanks Susan Kare for simplistic beautiful art for us to growth with!

How to stop Apache2 and MySQL services from boot on Ubuntu linux?

Do you computer boot slowly after LAMP installation? Don't worry about it. You just have a couple extra services that loaded during boot, if you don't like it. Just remove it from startup, by using SysV init scripts for apache2 :
$ sudo update-rc.d -f apache2 remove

Else, just disable the service from startup automatically during boot, example :
$ sudo update-rc.d apache2 disable

For MySQL, you needed to edit this file " /etc/init/mysql.conf " with you prefered text-editor. Just comment out line no 6 with # symbol at front for example i'm using sublime-text editor to prevent MySQL load & run during boot:

After that restart your machine and enjoy!

Infographic : Prestashop Vs Magento Vs OpenCart CMS

How To :Install Laravel framework with WAMP server

Hi! I now started to learn and use Laravel framework. Today, i will share how to use Laravel FW with WAMP stack server, or any server application that you prefer. I found most of tutorial how to deploy laravel framework on WAMP server are crap! So here, i create this tutorial.

First of all, you need WAMP server. Just download from here :
* You can use any prefered server. For this tutorial, i'm using WAMP server

After install WAMP server, Open "php.ini" with you prefered text-editor (i'm using Notepad++), find and enable "openssl" extension by removing semicolon ';' at front at line 970 just like this:

Click on WAMP icon->PHP->PHP Extensions and enable: php_openssl, php_curl, php_socket. Then click on wamp icon->Apache->Apache Modules and enable ssl_module

Second, you need a tool called "Composer". For Windows user, run the installer which can be download from here :
* Install Composer into the same directory php.exe is located.

To use Laravel framework,there is 2 method that can be use. Let's start now:

# Method 1 : Via composer create-project
This is recommended method to install Laravel because composer will download and use the latest and stable release of Laravel framework.

Open terminal/console/cmd and navigate to you webroot and enter this command:
composer create-project laravel/laravel mySite --prefer-dist

Now, Composer will download the latest Laravel and library needed. After a finished the process. You site will be available at the following address :

# Method 2 : Via composer install & standalone Laravel
Using this method, you need to download Laravel framework from Github and extract to you webroot.

Open terminal/console/cmd and navigate to you webroot (for example in this tutorial: C://wamp/wwww/mySite/) and enter this command:
composer install

Now just wait the process until it finished. Then try to surf you website at

That great! Now you are using Laravel framework and Web Artisan ;)

Wordless : Drowned titanic CSS

HowTo : LaTeX - Create complex nested item list easily

Hi, ever wonder to create a complex nested item list such 1.1, 2.1, 3.1, 3.1.2, 3.2 and more with LaTeX syntax? Basicaly, i use /section for auto numbering the list but it does not auto indent my long nested list.

So, that bring problem to me. Now, i'm use package enumitem to solve the problem without using /section but using /item tags to solve the problem.

LaTeX source code:
\usepackage{enumitem} % <-- import this package
    \item My favourite food
    \begin{enumerate}[label*=\arabic*.] % <-- Keyword
      \item Pizza
        \item Pizza Hut
          \item Ocean Tuna
          \item chicken BBQ
        \item Domino
      \item Curry
        \item Spicy chicken curry
        \item Traditional curry 
      \item Maggi

PDF built result :


Sublime text 3 - How to auto complete file name

Hi peeps! What are you favourite tool for web-development? Sublime-Text are on the list of tool as web programmer. I use sublime-text 3. Ever wonder a trick how to auto complete file name when using src syntax ?

What you need is a package control and a autofilename package. By default, you need to install package control if you already have it, just skip this step. Now, open you sublime-text console by shortcut key Ctrl+' or navigate View -> Show console and paste this python code into console and press enter:

import urllib.request,os,hashlib; h = '7183a2d3e96f11eeadd761d777e62404' + 'e330c659d4bb41d3bdf022e94cab3cd0'; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); by = urllib.request.urlopen( '' + pf.replace(' ', '%20')).read(); dh = hashlib.sha256(by).hexdigest(); print('Error validating download (got %s instead of %s), please try manual install' % (dh, h)) if dh != h else open(os.path.join( ipp, pf), 'wb' ).write(by)
P/s : The code maybe change by time, check HERE for new code

Congratulation! Now you have a package control manager. Now, back to our objective. You need a plugin to auto complete file name. Press Ctrl+Shift+P shortcut key and type Package control, now you see lot of available option, right? Choose Package control : Install package. Just wait a while, sublime-text will automatic check what on the repository first. Now type "AutoFileName". The repo should have this plugin. Now press enter to start installing the plugin.

Start from here, you don't need to memorize files name. Just type src="" , sublime-text will invoke a popup auto completion of file name in the same path. That all peeps! Bye x2!

Wordless : Poison Compiling, Simulation & SSH

Sunday, March 8, 2015

VB6 : Full screen form size

I just stumble with my VB6 code. Just a simple one. If I not mistake, VB6 don't have setting for full screen form size, but there a trick :
Private Sub Form_Load()
    Me.Height = Screen.Height
    Me.Width = Screen.With
End Sub
Nice huh? Have a happy time with trick like old days before :)

A new way to reset your Windows Phone (Lumia Special Phone Reset)

Windows Phone users usually reset their phone using the hardware button or by going to the About section in the settings menu. But both of these require several steps to be followed. But this new way just asks you to enter a number in the Dialer to reset your phone.

To reset you just NEED TO type this in the Dialer : ##777#

As soon as you enter the number, a pop up will appear asking you to either reset/cancel.

This way of reset won't delete your Downloaded Maps or the Network Settings. So, this is actually a type of Factory Reset which would change the settings back to as they were when the phone was first booted. And again I would say, that it won't delete the Maps Data or affect network settings. And, yes this trick doesn’t work in the Emergency Call Dialer.

Sunday, March 1, 2015

Xamarin : Connection to the layout renderer failed

Connection to the layout renderer failed. This may be caused by a misconfiguration of Java. Please close and open the file again.
A few weeks ago, I encounter a problem with Xamarin.Android. It happen with the latest update. Most of Xamarin users are having these same problem too. I asked Xamarin Malaysia Developer group on Facebook then a fellow name Anubhav Ranjan help me out solved these problem.

To fix this problem, You need to check what the API version to which you are targeting and choose specific Android API version. Make sure those API are already installed in the Android SDK platform.