This is a hotly debated topic and one that a layman cannot comprehend. If you have any programming experience then you are already familiar with a particular language and by being familiar, you would have an obvious inclination towards that language. For me it is PHP and while it is an easy language to make websites and also the preference of WordPress like CMS, it is not the easiest to write core programming stuff. I still make my bots in php though and I will be the first to say that it is probably just as useful a language as any other. The fact that you have access to so many open source libraries for php is one major reason why I prefer this language. Nevertheless, here are a few alternative languages and their pros and cons with respect to bot making.
C# – The Easy One
I won’t call myself a master at this language but from what little coding I have done, I feel it is the easiest of all languages to learn. Moreover, if you are already comfortable using OOP or Object Oriented Programming then learning C# is a breeze. Besides, it has lower risk of memory management and architecture support while reducing the development time by a large margin. Performance wise, it also happens to be among the very top. Also, this is a language that makes your bots compatible with Windows as well as Mac computers!
- Easy to learn
- Excellent performance stability
- Reduced associated risks
- Mac compatible
- Managed code reduces usability and creativity
Python – Easy Enough
Python is an easy alternative language you can learn and because it is newer compared to the rest, the library support is spectacular as is the community support. Github already possesses many bots programmed using Python so you need not start from scratch. I personally don’t know Python but from what I hear, it has good performance with respect to bots that crawl the web for completing tasks.
- Massive library
- Already existing bot codes available for free
- Is a brand new language is not the most versatile as you depend a lot on libraries
Php – Hard To Master
As long as you plan on using php to code websites, it is an easy language to use and the libraries are rather plentiful. However, the moment you venture away towards the world of programming, it is a whole different story. Being adept at php I can vouch for its various limitations but I will also be the first to say that there is absolutely nothing impossible with php and it happens to be a versatile language in that it is also the preferred language for many popular CMS and blogging platforms.
- You can make more than just bots
- Easy to learn the basics
- Ideal for parsing through websites
- Not many bots are designed in php
- Has a longer load time
- Performance is lower as opposed to other languages
C++ or Java – Hardest Of Them All
I group these two languages together because they are indeed the toughest of the lot to master. C++ is the native coding language that gave rise to many others and because it is sort of an older generation language the overheads in terms of performance, memory management, architecture and so on is heavy. Same goes for Java although the latest Selenium API does help in making bots (from what I heard).
- The base of all languages
- Mastering either of these gives you power over everything
- Redundant languages not that useful for online applications
- C++ coding does not work on Mac
As you can see each language has its merits and demerits. Most of the time it is what you are most comfortable with. My advice, no need to switch languages for making bots unless the guy paying you is adamant and not afraid to splurge on you taking the extra time to learn!
I haven’t talked on Ruby in my summarization because I really don’t have any insights. If you do, I would love to add it here.