Is the language best suited for a photo-sharing site: PHP, Python, Ruby, or something else?

I plan to create a photo-sharing site, such as Flickr / Picasa for photographers, with the most appropriate features for them. As you know, if this venture is successful, many GB to TB data transfers occur every day.

This question concerns not only the scalability of my application as it grows, but also performance. I would like to make an informed decision. I think I would go with a MySQL database, JavaScript / jQuery for client-side scripting, but in which server-side language is the question - PHP, Python, Ruby or something else?

And when developing an application (i.e., scalable coding), you need to remember that you need to scale over a certain period of time. If you want to suggest what it is?

NOTE. I indicate a “photo sharing site” to give you an idea of ​​my mission. Otherwise, this question will not look subjective. Please take it like that.

+4
source share
3 answers

Any. Language does not matter. Ruby-fanatics (especially RubyOnRails sort) will try to tell you that their language will do in only 10 lines and this will force you to have dinner and choose the children from school. Others will tell you that their language is the safest, fastest, fastest growing, etc. Ignore them.

I love Python, and I would like to recommend it, but seriously, this will not change the situation. Just select the language you know and write. Therefore, if this is Java, start writing Java. If it's C ++, hell, start writing C ++.

I do not believe that people who say that [include the language here] are developing fastest. All about what is convenient for you. Some langauges provide additional functionality, but you can always write a library that ensures that if you need it, it won’t take too long and most likely someone has already done it.

Remember: Facebook is written in PHP (although they compile a lot of this PHP in C ++ now for speed), MySpace was written in C # / ColdFusion (I believe), Twitter uses Ruby On Rails (although they plan to abandon it apparently ), Google uses Java / Go (I think), and LinkedIn uses ASP.net or something that I think. My point is tons of services, tons of languages, and they are all in order. Right now, any language will do.

My favorite little phrase is “just put it together.” While it’s a good idea to have a good architecture and think about performance and scalability - if these things make you abandon the project halfway, what's the point? In addition, most likely, you will have to recode a significant part of it in the future, assuming that the project is growing. Actually think that Facebook uses the same code as in the beginning?

So, in short, select the desired language. Everything will be fine.

+7
source

PHP can do it well. Python can also do this with web frameworks like Django or turbogears. At the same time, language is not a problem if it has web features that, in your opinion, your position dictates

+2
source

I made web applications in PHP, ColdFusion, Java and Ruby with various frameworks. I believe Rails is the most powerful web infrastructure I have ever used. Nothing can really equal, because power comes from the Ruby language, and no other language (except maybe Smalltalk) can really equal it. However, if you use the right development practice, you should be able to do this in almost any language.

However, you do not want to use MySQL as a database. PostgreSQL is much more powerful and scalable, and it does not have stupid MySQL limitations and errors.

0
source

Source: https://habr.com/ru/post/1380186/


All Articles