Should I use Python or PHP in Custom Software Development?
If you’re a decision maker at your company tasked with finding/developing custom software, one of the first questions you’ll need to ask yourself is which language your program will be written in.
As custom software developers, we get that question all the time. And when our clients learn that we develop our applications in Python, they ask why we choose it over other alternatives – PHP, for example. Of course, there are hundreds of other languages that could be taken into consideration here, but we wanted to look at PHP and Python because they’re two of the most popular scripting languages (meaning they are usually interpreted, rather than compiled like C++ or Java)
The answer is actually pretty black and white. Asking whether Python or PHP is a better development language is like asking if English or Spanish is a better spoken language – of course, they’re both great! If they didn’t work, they wouldn’t be used by millions of people. But if you’re traveling into the heart Mexico, which would you rather speak? That’s where the answer becomes simple. The type of software you want to develop will determine which language it should be written in.
Let’s take a look at when it makes sense to use either Python or PHP when developing custom software.
Background and Current State of Python
Python started as an idea in the 1980’s. The first version was released in 1989, developed to work with the Amoeba time sharing platform. Amoeba has long since been left behind, but Python continues today as one of the most popular, useful, and beloved programming languages.
Python has won the hearts of many in the development community for its simplicity and readability – it typically uses less lines of code than PHP and other languages, and is more readable because it trades complicated and messy syntaxes for white space and code that reads a lot like english.
The recently released 2018 TIOBE Index lists Python as the #4 most popular programming language, and the most popular scripting language overall. (Note: the TIOBE index refers to popularity on the internet measured with over a dozen different search engines/communities)
In addition to its popularity in the TIOBE Index, Python is also the language of choice for many of the internet’s most powerful websites and applications. Here are some websites that use Python and the Django Framework:
- Google (Python is one of Google’s 3 official languages, alongside C++ and Java)
- Pinterest (Django Framework)
- Washington Post (Django Framework)
- More websites and applications using Python/Django here
Background and Current State of PHP
PHP stands for Personal Home Page, and, you guessed it, was developed specifically for website development. It’s been extremely successful at it, too. WordPress, the CMS giant that powers thousands of blogs and websites, is largely based on PHP. Sources also claim that “PHP is used in 83.1% of all the websites whose server-side programming language we know”.
Because PHP is so widely used for web pages and is easy to learn, it’s become a favorite of hobbyists who pick up web development on the side. It’s lead to a reputation with some that PHP isn’t clean or scalable, but in reality huge systems have been built using the language. The efficiency of code depends on the developer, not the language (although certain languages are most definitely more suitable for certain tasks).
While PHP has definitely had a lot of success, it’s not nearly as beloved as it’s rival, Python. PHP is actually regarded as one of the more hated programming languages. Although that may be the case, it still takes the 9th spot in the TIOBE index and continues to be one of the most useful languages out there.
So when should I use Python or PHP?
Let’s compare the two:
Side by side, the evidence is pretty clear. Python should be used in developing more dynamic, complex applications (think custom CRM development). If you want to reduce the time to your first version and just need a simple end product that will look good, then PHP is your winner.
Use Cases of Python and PHP
Just to cement that claim, let’s take a look at some use cases and success stories for each language.
Python success stories can be found here. The community has done a great job of compiling these, and it’s a pretty diverse list.
- Python was used to develop an email security solution that would run on both Linux and Windows
- Nexedi used Python to develop an ERP/CRM framework
- Industrial Light and Magic, responsible for creating the graphics behind Star Wars, uses Python
The list goes on and on, proving how dynamic and versatile Python is.
As for PHP, it has its own impressive list of accomplishments, although mainly focused on web development (PHP’s website itself says the language is “a popular general-purpose scripting language that is especially suited to web development”)
- As mentioned earlier, PHP is used on over 80% of websites
- Blogging and CMS giant WordPress is written in PHP, making it the language of choice for any application that wants to plug into it.
- Facebook also uses PHP. It’s argued to what extent the language is used, but it’s pretty clear that a good chunk of its systems leverage the language.
Hopefully it’s pretty clear by now – Python for dynamic applications, PHP for simpler web pages or sites.
Final note: Community and Future of Python and PHP
One last thing you might be worried about as you build your custom software is the maintenance and support going forward. They’re going to be pretty similar. Right now, there are more lines of PHP out there, meaning that for now, you’ll probably find PHP developers slightly more available and cost effective. However, 8 of the top 10 computer science departments are now using Python to teach development. Most developers already prefer to work in Python, and it’s popularity amongst them should lead to higher adoption rates and a higher availability (and desire) in programmers to work with it over PHP.
Interested in building your own Python application? We’d love to help!