About Me

The Short Story

I am a Freelance Web Developer for more than 15 years, I always put my name on the line. I have clients locally and abroad, most of them I don't even meet personally. Some of them has been my clients from the start. My assurance is always been 100% refund if you don't like my work. I started as a freelance web designer -- which in definition creates front-end or designs. Now, I mainly focus more on backend like PHP and NodeJS. If you want to see my code, check my work samples in github.

How I started programming - TLDR;

As a freelance web developer, Designing and Art is my passion since I was a kid and never thought that it would be my profession. Ever since a friend of mine introduced me to HTML using Adobe Dreamweaver, I never stop learning. I started with pure tables, slice and dice method, which was common those days, then to hand coding XHTML/CSS. I took a lot of time learning CSS but the time spent was worth it.

Those were CSS2 days where designers are still using PNG-Fix for border radius. CSS3 came and solves most of the pain from web design.

After some few Wordpress Developer gigs, I started programming bit by bit using PHP. It was quite challenging specially if you are coming from a designer's background. Creating custom Wordpress themes was my specialty and then as my clients grew, I already started learning Wordpress plugin development.

It there that I started working more on the backend and less front-end stuff. There were a lot of mistakes along the way, my first ever website has even hacked because of lots of security loopholes. I learned my mistakes and improved myself, learning OOP from functional programming to creating the whole CMS from scratch.

It was the time when CakePHP, Symphony and Codeigniter was the new toy. I choose Codeigniter, because of it's simplicity. I can easily understand how it works. But I love how Codeigniter was having a lot of features while maintaning backward compatibility to old PHP versions.

But Codeigniter seems to have big drawback when Ellislab withdrew support and this is the time that I learn Laravel. It was love and hate relationships. I started Laravel 1.5 but each time Laravel releases a new version there was no backward compatibility. This made me releaized that if I am going to maintain good relationships with my client, I must give them software that will lasts and not easily be deprecated.

This search led to me to NodeJS, asynchronous was still new to me and it took me sometime to fully understand it. It was fast, really small footprint and most of all if paired with ExpressJS you have a full blown web server!

But of course, there is no such thing as perfect technology. There are some drawbacks like callback hells. That's where Tyescript came in, and I really love it! Thanks Microsoft! It's like a modern version of Javascript if you ask me. Express + Typescript is now powering most of my APIs and backend, and paired with my beloved MongoDB.

Today, the only dependencies is ExpressJS which I don't have much problem upgrade from 2-5. Which is a big plus to me. If you want to know my coding style and custom made framework. Take a look at my open source projects.


Programming Technologies

Node JS
Node JS
MongoDB
MongoDB
Angular 8+
Angular 8+
Express JS
Express JS
Typescript
Typescript
Reactive X
Reactive X
Kotlin
Kotlin
Vanilla Javascript
Vanilla Javascript
PHP
PHP
Android
Android
CSS
CSS
HTML
HTML
JQuery
JQuery
React Native
React Native
Swift
Swift
Wordpress
Wordpress
Docker
Docker
Vagrant
Vagrant
Sass
Sass

Operating Systems

Mac OS
Mac OS

My primary OS of choice, iTerm is my best friend. I can easily use most linux commands in Mac.

Cent OS
Cent OS

Most of my servers are running under CentOS 7. Easy to install and less udpates/changes compared to Ubuntu.

Windows 10
Windows 10

I usually use Windows 10 on my gaming machine and also for testing that cannot be done using Mac.