- All Community
Building a web-based application from scratch can be daunting, especially if you aren’t hard-wired to be technical. There are plenty of programming languages to choose from, and things can get confusing pretty quick. Let’s focus on three open source languages with street cred in Chicago: PHP, Python, and Ruby. We’ll also look at three areas of interest that factor into your language choice when building an in-house team: volume of developers, compensation demands, and language capabilities.
When it came time to select a language for my visual marketing company robotoaster.co (still in production—drops in mid July) we consulted our trusted partners over at FarShore. After discussing our long-term vision and site capabilities, we went with PHP because:
- There is a widespread availability of resources. PHP is one of the most popular languages in the US and across the world, making finding and securing talent that much easier and cost effective.
- PHP maximizes the ease of implementation/testing and ongoing support while still allowing for customization.
- It is highly compatible with a variety of different tools such as MVC frameworks, e-commerce platforms and more.
For us, PHP made the most sense, but the same might not hold true for you. Read on for what you should pay attention to when picking a programming language.
Volume of Developers
When choosing the language to build out your application, make sure there is a large enough talent pool to select from. There is no sense in picking something where you are constantly struggling and competing with other companies to identify and secure talent. When there are many people using a language, there is a strong sense of community and network behind it, which does wonders in the world of referrals. Something else to keep in mind is that the law of supply and demand is in full effect with software engineers and web developers. Everyone wants them, and there aren’t enough to go around. Segway to next point.
Let’s break down what a developer with three years’ experience and various skills partnered with each language would demand.
Not feeling Ruby or PHP? You can always check out Python developers. A Python developer who uses either Django, Bottle, Flask, or CherryPy, knows all the front-end web technology and has used either a MySQL, PostgreSQL, or NoSQL database will usually land in the $60-$75K range.
PHP, Python, and Ruby are all very viable choices in getting the job done when it comes to a web-based application. Technical people can really dive into the extremely complex details behind the specific advantages languages can provide to particular scenarios and help you figure out which one is best for you.
For examples of different business models, take a look at these Chicago based organizations:
Considering the points on volume of developers, compensation demands, and language capabilities, I would build in PHP. For one, the volume of PHP developers in Chicago is greater than that of Ruby or Python, although both languages have made strides in the recent past. There has been a better breeding ground for PHP developers and now there is a great mixture between junior, mid, and senior level talent.
Also, if your application is on the simpler end of the spectrum, PHP is more than enough. You can get really talented developers for much cheaper than a similar candidate who uses Python or Ruby. Besides, who wants to get on the Ruby train when Groupon is eating ‘em up left and right and can pull out all the stops to get people on board?
If you really like Python or Ruby but can’t justify the cost for talent initially, don’t worry. Tons of companies start out in PHP and transition their code base over to another language once they become more established and profitable.
There are plenty of languages to choose from in building out your application, but I choose to focus specifically on PHP, Python, and Ruby since these are the most popular choices found in the Chicago startup scene. This guide should be a good starting point for figuring out which language could work for you.