12 Reasons Why I Chose PHP
If you are wondering why you should choose PHP over all the other options, let me share why I chose PHP.
I chose PHP because it is the dominant Internet programming language, is easy to learn, open–source, is free, is native to Linux, is well documented, is well supported, PHP is in wide use, and all the major hosting companies offer inexpensive PHP hosting.
To understand why I chose PHP we must go back to the year 2000. In 2000 I began my Internet journey as a developer. I was a programmer before 2000 and decided to move to the web and build websites beginning in 2000.
In the 1990’s I had been exposed to the MS–Windows Software Development Kit (SDK). At the time, The SDK cost about $1800 a year. I was not interested in spending that amount of money to be a Microsoft developer. And besides, I was intrigued by the open–source movement. The price was right. Open–source was free.
I was introduced to Linux in 1997 and promptly installed it and began to learn what I could about this new operating system. At the time Linux was considered counter–culture and most business managers were afraid of it. It was about that time I heard the phrase “No one ever got fired for using Microsoft”.
In 2000 things were unsettled. Hosting companies were offering to host almost any web programming language. The most popular were Perl, Java, and an early version of PHP which was called “Personal Home Page” or PHP for short. The name has since changed to “PHP: Hypertext Preprocessor”.
I always disliked paying for developer software. Up to 2000, I had paid for a lot of programming tools.
When the Internet started to mature, free tools emerged. Perl, Java, PHP, MySql, and Linux were the first website development tools that were made available for free. Who hates free? Not me, as long as the tools are of decent quality.
As I mentioned, in 2000, it was unclear what programming language was going to become dominant. After looking around, I chose to use PERL for my first website. Keep in mind the Internet was not like it is today.
The combination of PHP and Mysql came on to my radar around 2002. At that point, I started to research and play with PHP.
In 2006 I decided to become a PHP developer. Here is why:
PHP is Open Source and Free
By 2006 PHP was emerging as the dominant Internet programming language. It is open–source and free. Open source means anyone can look at the programming code that makes up the PHP programming language.
PHP is native to Linux and Linux is the perfect hosting operating system for hosting PHP. Linux is also open source and free.
MySql is the data engine used with PHP in the vast majority of situations. MySql started as open–source however that is in question now that Oracle owns MySql. Oracle ownership is not a problem though. MySql was forked (copied) by multiple groups such as Perconia and MariaDB to start new branches of open–source data engines that are community supported.
MariaDB was created in 2010 when one of the founders of MySql forked MySql. This was possible because MySql was free and the governing license allowed for this.
PHP is the Most Popular Internet Programming Language
Around 80% of Internet websites run PHP in some fashion.
The main applications are WordPress, Drupal, Joomla, WooCommerce, Magento, and a host of PHP Frameworks like CodeIgniter. It is clear PHP is the dominant Internet programming language today and even back in 2006 is was becoming clear.
PHP Full–Stack Development
Full–stack means using HTML, Cascading Style Sheets, JavaScript/AJAX, PHP, MySql, and Linux to build websites or web applications.
There is a lot to know to become a full–stack developer. Some say to qualify as a full–stack developer one must know how to troubleshoot each of the above–listed technologies. What it does not mean is the developer is an expert in each of these technologies. It would be near impossible for one person to become an expert in all the technology that comes together to create a PHP website or application.
I love full–stack development because it allows me to create web applications from scratch that are data–driven and fully interactive. These applications can be interactive to the point that they rival desktop and mobile applications.
The main advantage of creating web applications is all the application needs to run is the Internet address of the application and a modern web browser. They are truly write once and run everywhere.
PHP Was Created for the Web
In 1994 Rasmus Lerdorf created Personal Home Page/Forms Interpreter or PHP/FI. Rasmus set out to automate his website and ended up creating PHP.
PHP was created by a web guy for those wanting to automate their website.
Being one of the first out the gate surely helped PHP become dominant, however, there is more to it. PHP was created for web programmers, and I think that is why it has become so popular. You can read the full history of PHP on the PHP website.
Top Web–Apps Created Using PHP
Drupal was created in 2001 using PHP and MySql. Drupal has become an enterprise web application that is extremely feature rich and comes with a long and hard learning curve. Drupal in its stock form is a CMS that is not fully search engine optimized. Drupal’s strength is it is expandable by creating modules and is a great beginning point for an enterprise web application.
In 2003 WordPress was introduced. It has experienced rapid growth as has the Internet. WordPress is a content management system that is optimized for the search engines right out of the box. WordPress’s functionality can be modified or extended through the use of custom plugins. There is a lot of free plugins and themes for WordPress. WordPress makes up about 30% of the sites on the Internet.
WooCommerce is a WordPress plugin that turns WordPress into a shopping cart. WooCommerice is experiencing rapid growth.
Joomla was initially released in 2005 and is not widely used.
Magento is an enterprise–class shopping cart. Magento was first published in March of 2008. Magento is costly to maintain and hosting is very expensive. To host and maintain Magento properly might cost more than $2000 a month, on the low end. The user manual is over 1000 pages which indicates it is one size fits all.
As you can see PHP was becoming the dominant Internet programming language as early as 2003.
PHP Frameworks
Frameworks make it easier to create web applications because they provide at least some of the basic infrastructure and libraries of code that are necessary for creating web applications.
Here is just a few of the PHP frameworks available today:
CodeIgniter was first released on February 28, 2006, as a free and open–source PHP framework. It was my first framework and is still my favorite. CodeIgniter was dominant and very popular for a long time. On July 9th, 2013 EllisLab, the creator of CodeIgniter, announced it was looking for a new home for CodeIgniter. This threw the community into chaos and uncertainty. Up to this point, CodeIgniter was the go–to framework for PHP projects. The EllisLab announcement caused many CodeIgniter developers to migrate to Laravel.
CodeIgniter is easy to learn, has a small footprint, is very well documented, and is very fast. CodeIgniter can easily run on the limited resources of shared hosting.
Version 4 of CodeIgniter is further splintering CodeIgniter. Only time will tell if version 4 breaths life into CodeIgniter.
Laravel is now the dominant PHP framework. Most of what used to be Codeigniter developers are now Laravel developers. Laravel is free and open source. It is much more difficult to learn.
CakePHP was introduced in April of 2005 and might be the first PHP framework to enter the PHP framework scene. CakePHP is in use, however, it has failed to become a major contender.
PHP is Easy to Learn
PHP is a relatively easy programming language to learn. My approach was simple. I used a basic PHP/MySql shared hosting plan at one of the major hosting providers and then I started learning PHP.
I got started on my kitchen table by building a simple hardcoded CRUD application that took me several hours a night for several nights. As you might know, PHP is embedded in HTML so some basic familiarity with HTML is required.
I had already hand–coded several websites before this so I was familiar with HTML.
CRUD stands for Create, Read, Update, and Delete. I added a list routine to that as well.
Getting started with PHP was that easy. Once I got started, there was a lot to learn, however, PHP can be learned rather fast and easy.
PHP Runs on Multiple Platforms
Linux hosting is the only way to go. Linux can be configured in many ways. The main configurations are as a desktop or as a server. Either can be configured as a LAMP/LEMP server. LAMP stands for Linux, Apache, MySql, and PHP. LEMP stands for Linux, NGINX, MySql, and PHP.
The Linux Sub System on Windows 10 Professional can be configured as a LAMP/LEMP server. I’ve tried this and it worked well. It is a nice way to do development, however, I prefer real Linux PHP hosting. It makes things more realistic.
MS–Servers will run PHP as well. PHP is native to Linux. I would never run PHP on a Windows server. There may be some reasons to do so, however, I would not support such a configuration.
Apple MACs and Apple servers can be configured to run PHP. The Mac operating system is based on the open–source BSD UNIX. BSD UNIX is a cousin of Linux and can run a LAMP/LEMP stack.
WAMP stands for Windows, Apache, MySQL, and PHP. It is a package that can be installed on MS–Windows that allows for PHP/MySql programming on a Windows computer. This is a great approach in so many ways and it a great starting point. To learn more about WAMP, visit their website.
XAMPP is an acronym that stands for cross–platform (the X), Apache, MySQL, PHP, and Perl. Cross–platform means it can be installed on Windows, MAC, and Linux. I do not see the value in installing XAMPP on a Linux computer because any Linux computer can be configured to be a LAMP+P server. The two Ps being PHP and Perl. Since MAC is Unix based, it can be configured as a LAMP+P server as well. XAMPP on Windows is a good setup that can be a good starting point for an entry–level PHP developer, however for any serious developer I recommend migrating to a real Linux server for PHP development.
I prefer to run a LAMP stack on an old local laptop that has been configuring as a LAMP stack for my development/testing server.
In a production environment, I would never support running PHP on anything other than Linux hosting where the server is in a data center that provides PHP hosting.
PHP Hosting
The major hosting companies like GoDaddy, iPower, and Hostgator all offer Linux PHP hosting at a decent price.
For a business website, I always suggest going with a business class host.
PHP Has Great Support
There are a lot of PHP user groups. And do not forget the Linux Users Groups – they are everywhere.
PHP is native to Linux and it is easy to get help from your local, or not so local, Linux users group if you have a question about the PHP programming language or PHP hosting. Linux and PHP do go hand in hand.
Using PHP for Server Automation
PHP is used for server automation. What that means is PHP is one of the programming languages used on Linux to make things easier to do. This ranges from simple scripts that perform simple tasks like backing up a website to an off–site storage facility, to something like full–blown web server management. Two examples of web server management software packages written in PHP are Plesk and ISPConfig.
Plesk is a hosting control panel. Plesk is licensed software. I currently use Plesk to manage my web server.
ISPConfig is also a hosting control panel. ISPConfig is free and open source.
Both of these software packages make it easy to manage a web server by entering data and clicking buttons to configure things. These packages make server management easier.
The real advantage of a hosting control panel is that a web programmer like me can manage their server, without becoming a full–blown Linux system administrator.
Conclusion
I chose to become a PHP developer because PHP was open source, free, easy to learn, and was the dominant Internet programming language. In 2006 I could see the signs that the PHP programming language was quickly becoming the dominant programming language for building websites and web applications.
It is worth noting that the Internet’s most popular applications like WordPress and WooCommerce were created using PHP and the go–to data engine is MySql.
With PHP’s popularity comes many support groups. The main places to find help are the PHP and Linux user groups.
PHP has some great frameworks that help speed the process of building websites and web apps. These frameworks also add to the structure of the application.
Last but not least, all the major hosting provides offer PHP hosting.
The above article lists the reasons I chose PHP and why I became a PHP programmer.
My name is Keith Smith. This is my website. It was handcrafted by me as an example of my skills. It is not as beautiful as what a website designer might have been able to create, however it is clean, simple, and functional. I am not a designer, I am a programmer.
If you have a project you would like to talk to me about, please call me at 480-748-9893 or complete my Project Request Form.
I look forward to hearing from you soon.