PHP for Startups: New Lease on Life?
By Dmitry Nehaychik
With tech startups, the hassle around technology selection seems to outshine the chicken-and-egg problem. Is it the nature of the selected technology that determines implementation success, or the other way round, the hottest startups glorify the programming languages they implement? On the technology side, PHP for startups was given up for lost quite a while ago. But, while Ruby on Rails and Django advocates have been crossing swords to establish technology leadership, the PHP technology has evolved substantially in recent years. At the end of the day, PHP demonstrates incredible fitness for usage in tech startups.
I'm not going to enter the battle for technological supremacy as a PHP evangelist. I'm just saying that today, with PHP, you can do everything you thought was only possible, let's say, with RoR (and probably at lower costs). The project I was recently engaged in used the PHP framework to deliver SaaS-based a solution for online management of household devices. With a set of modulable and ready-to-use bundles, we were able to literally assemble the customer-facing, ecommerce, and admin components to draw resources to proceed with more effort-consuming integration tasks. Basically, PHP is pretty good when used for the Web part of a multi-component, multi-technology solution. You also can test certain assumptions by swiftly assembling a minimum viable product with PHP—and move to technology optimization with further iterations if proven efficient. Facebook, the most frequently cited proof to PHP's potency, got off the ground by building a product that enabled it to raise budgets for subsequent large-scale optimization of its massive PHP code base.
Following are the reasons why PHP is a more than reasonable option to trust your killer startup idea with:
PHP is one of the fastest languages to code with, deploy, and execute. The philosophy behind it, if any at all, is built around quick turnaround. The language was originally designed for finding the shortest path and the slickest solution to Web problems. Moreover, community contributors have been steadily moving the technology towards modular design in recent years. The PHP frameworks offer easily configurable, modulable, and ready-to-use, out-of-the-box bundles and libraries to arrange into a ready-to-use solution. Sonata Project for the Symfony framework, for example, with its admin bundles, technical utilities, content management features, and ecommerce tools enables developers to dramatically shorten the path to the final product, all while caring for all project participants' peace of mind.
From a hiring perspective, project stuffing, or finding replacements for current team members is not that big a headache. PHP developers are noticeably cheaper due to comparably low entry-level salaries for a programming language that is quickly learnt and embraced. The PHP resource pool is vast, and not so susceptible to fashion trends; given the today's technology-based stereotypes, if a person persists in pursuing a PHP developer's career, chasing trends is definitely not his or her style.
The dynamic open source environments are free to download, while providing an easy-to-use workflow and focus on automation (see Vagrant as an example). Some other powerful tools and frameworks distributed for free include Composer dependency manager, the unit testing PHPUnit framework, deployment and continuous integration tools like Capifony, Phing Project, or Deployer, to name a few.
The new generation of community contributors has been struggling to beat the not-so-uncommon opinion about bad practices or insecure code that entry-level developers used to continuously indulge in. Today, by and large, such perception is an outworn sort of thing. Modern PHP development practices have regained their positions over the last few years, with numerous educational materials coming out to offer one-stop access to best practices in solving common and confusing PHP tasks.
Libraries and community apart, certain biases concerning PHP's technical features and their attributes, such as inconsistency or unpredictability, do have a rational kernel. But, the lion's share of criticism calls up the times when PHP couldn't do proper OOP and had no classes. With the latest versions of such great frameworks as Laravel and Symfony, it's not the early 2000s anymore. A significant standardization effort was made to define basic coding standards and a set of guidelines extending on the former that all framework contributors are bound to follow. After all, PHP plays its part really well as far as startup environment quality, pace, and flexibility are concerned.
A strong PHP team with well-established conventions, processes, and guidelines can accomplish great things. So, just get up to assembling your strong team. There's not a lot left to do, right?
About the Author
Previously a lead PHP developer, Dmitry Nehaychik currently holds the position of Project Manager and Scrum Master at Itransition. Dmitry has extensive experience in such technological areas as PHP, ROR, Node.js, supervising projects for tech startups, and established businesses where solution quality and time-to-market are paramount. His areas of interest include snowboarding, cycling, journeys, reading, and crafting.