As rightly said @Eugene22
, choose the language of two factors: 1) existing experience in some language, and 2) that I want to learn for the future. If the first paragraph is bad, it remains to choose a language and begin to study it.
Browser games consist of three components:
3) a Database for storing game data. Here, too, there is something to think about - to take the usual customary along and across the investigated MySQL, or to think about a more powerful bases of type Postgres, or MongoDb to take fashion and its nosql brethren.
Choose what you need and go. But the most important advice - do not go for something "type of Travian and Gripolis" as a first project. Such projects are made by professional experienced programmers. Do something much easier - like battle city, Bomberman, helicopter, racing - where there is only one main game mechanic. During the development of this project, you will receive invaluable experience, without which you will not even be able to appreciate the complexity of the projects you mentioned in the question.UPD.
In your answer you ask to add arguments in favor of some server-side language. Add about them.
First, consider php
. This is a fairly simple language for writing scripts, and can very quickly write something that is already working. But this is the language that the external simplicity hides a lot of flexibility and quite difficult moments. Therefore, for professional use it needs his profound knowledge, otherwise the resulting code will be 1) slow 2) full of holes (bugs and vulnerabilities) and 3) difficult to maintain (hard to add new features). But to put it very simply.Node.js
. This is a very powerful language, allowing to write programs not only for the web (actually, the game server), but it is used very much where. It has a very simple syntax (by the way, different from many other c-like languages), but very flexible and fast, and has a rich library of ready-made code (in fact, php and node.js also have this advantage). The disadvantage is the fact that far fewer programmers know them, and maybe it will be harder to get advice on any questions (and the questions will be - and in any language). In General, Python is a great choice to start learning server-side programming.Ruby
can give a quick start and rapid development. But it know even less programmers than Python. About execution speed, he's a bit slower than Python (I'm not sure, I don't want to cheat - I have no experience in ruby). Its syntax is rather peculiar. But if you learn it well, you will never be without paid work.Java
is a very powerful General purpose languages, will give a very strong platform for any application, including servers. But they are complicated to study and to write well is much harder than the previous one considered languages.Go
- developing a new language, you can consider it for study. But it is a few ready code, few materials, little community.Erlang
- a functional language with a very unusual architecture (from the point of view of all previous languages), and a very unusual syntax. Study it hard, but it gives great results - in some problems. Advised it will not.