3

In a recent blog post by Roy Osherove, it is pointed out that his switch from primarily .Net development to ruby development has seen a huge difference in community involvement and really enjoys it.

The quote that spawns this question is :

there is no master overlord that dictates what you will or won’t work with.

I don't spend a great deal of time working with php, but I do spend about the same amount of time working with ruby. From the time that I spend working and communicating with people who work with both technologies it seems like Ruby has the feeling Roy describes much more than PHP does.

I don't deal with Python a great deal, but those I know who do all say it has a similar community feeling.

This strikes me as odd since every ruby and python programmer I know tend to have learned php somewhere along the way but they have no similar feeling about the php community.

I understand there are justifiable complaints with earlier versions of php, but people were still able to use it to build some very large sites and many companies use it.

What separates these communities that ruby and python seem to have such a different vibe compared to php?

(This question could be subjective but I'm hoping there is a solid impartial answer to explain the difference)

sclarson
  • 404

2 Answers2

11
  • Both Ruby and Python have formal language definitions separate from implementations, in case of PHP you don't have language definition, just the Zend implementation;
  • Both Python and Ruby have community process run by a foundation, PHP development is mainly dependent on Zend (this is changing lately);
  • Both Python and Ruby are general purpose languages, PHP is web only;
  • Both Python and Ruby are object-oriented from ground-up, for PHP OOP support is something, that was added later and it's not in the core of the language;
  • Both Python and Ruby where designed as languages, PHP started as collection of hacks for HTML forms processing;
  • Both Python and Ruby are modular, in PHP instead of modules you have just bunch of functions in the global scope, with very inconsistent naming.
S.Lott
  • 45,522
  • 6
  • 93
  • 155
vartec
  • 20,846
3

Common perception: Ruby and Python are real programming languages, to be named along C, C++, C#, Java and the like. PHP is something like an HTML with some scripting ability.

Active community can only really be formed by developers, and a programming language may just seem more clean and interesting to them then a "duck-taped-together" extended HTML thing, very much restricted to web stuff.

remember that this is not about facts or totally rational arguments, but about psychology/perception, which might be partly based on reality.

Python definitely is used for much more then web development. i do not know if that is true about Ruby.

hoijui
  • 353