As with any successful recipe, there are several key ingredients we use in creating our software here at Epignosis HQ: a passion for creating things; an understanding of the e-learning market and our customers needs; hard work and long hours; hard-core programming chops; ketchup (just kidding).
There are also the technical ingredients, such as our use of development language. We use PHP for developing our products, and we are extremely satisfied with this choice. After all, and if we may say so, the results speak for themselves.
In this behind-the-scenes post we’ll delve in why we opted for PHP, what benefits it gives to our team, and how those translate to a better product experience for our customers.
PHP is ubiquitous
PHP is available in all major hosting platforms, from lowly shared hosting plans to Heroku or the Microsoft Azure Cloud.
It’s the exact opposite of a proprietary language that will lock you in to using a single vendor’s products.
PHP is battle tested
PHP is not a fad-of-the-month language, it’s a technology that’s been around for over 15 years. Facebook, arguably the biggest website in the world, uses PHP to connect BILLIONS of people.
As does WordPress, the web publishing engine that powers an estimated 30% of the web. Lots of other hugely popular websites, such as Yahoo, do too.
This means that your e-learning platform is based on a solid, proven, technology, that will still be around in 20 years.
PHP is easy to pickup
PHP was designed as a web language first and foremost. That makes it extremely easy to pickup and use to create websites with, which is the main reason behind its wide adoption.
Simply put, you can get started creating websites with PHP in a matter of hours, and the language comes with a full assortment of libraries and APIs for nearly every web related task.
This turn-key experience PHP offers makes it very easy for our users to extend our LMS products, either by coding a plugin themselves or by hiring someone who’ll do it for them among the (literally) millions of PHP programmers available.
PHP is easy to deploy
While other programming languages require specialized application servers, tedious deployments and beefy hardware, with PHP it’s enough to drop your program files in a directory in your hosting provider to have your dynamic website working.
And if you do need to add all the extra layers (job queues, opcode caches, databases, third party authentication systems, etc), because your need to scale massively or interface with external systems, PHP supports those too. Hey, it works for Facebook, right?
This means that we can design hosted and Cloud-based solutions for our LMS products that are as lean or as complex as our customers need, and deploy them quickly and easily — while it is also making it a smooth ride for those opting to self-host.
PHP has a huge community
There are thousands of PHP projects and tons of available code. Even if you don’t take programming yourself, you can usually find something for every need among the myriad open source projects on offer.
We take advantage of some of those projects ourselves, by making use of some of the best libraries the PHP world has to offer to cut our development time and let our programmers work where it really matters: the e-learning engine itself. This is passed on to you, the customer, in the form of cost savings and new features arriving faster.
PHP is a good programming language
There’s a lot of criticism of PHP in the web, and most of it comes from two camps: people who haven’t used it and people who have used it in its early years.
For starters, modern PHP culture and tooling is not your grandpa’s PHP culture and tooling. Access to the best of breed frameworks and libraries like Laravel and Symphony, dependency manager apps like Composer, and unit-testing frameworks, ensures that modern PHP developers are on par with their Ruby, Python and Node using peers.
Admittedly, PHP was a little rough around the edges in its early years, but since version 5.3 it has grown to be a quite competitive language, fixing past mistakes and adding modern programming features such as closures, traits and generators.
All in all, we settled on PHP when we started working on our e-learning products portfolio, and it’s a choice we haven’t regretted in the least.
If this article picqued your interest in the language and maybe even in extending eFrontPro, you might be interested in our recently released plugin guide. Happy hacking!