Which scripting language should I learn ?

I would like to learn some scripting language. But I am confused which one to choose Python, Perl or Ruby or any other language.

Can someone suggest me a scripting language also with comparisons with other scripting languages ?

Thank you.

If you’re a student, I would say start with any one and go in deeper and deeper and then learn all of them, it will be easier.

My suggestion would be, give 3-4 months to Python and then switch to Ruby/Perl.

Update: Python seems very readable and easy to me. As you already know C, C++ and Java, it will be even more helpful.
But you should make your decision based on the demand, as you have lesser time. Python’s positives are readability and OOP. CPython, written in C, all the source are public, just in case you are curious enough. Few articles if you wanna read.


Thank you for reply @bugkiller . I am a student now but after 2-3 months will not be as my course is going to complete. Now I am trying to apply at some companies and most of them require one of the Java, c, c++ and one of the scripting languages Ruby, perl, python. I know c, c++ and Java but have no experience in scripting languages. I would like to learn at least one and in 3 months span. Which one will be easier and effective to learn ( and best for the future also) among python, ruby and perl ???

I started to learn Python, recently. Nice language :slight_smile: I recommend it to you:)

I’d suggest learning python because its really lucid and highly readable. Its very easy to catch and having prior programming experience will do u tons of good to make the learning fast.

3 mnths is a really long span for a dedicated learner. Most of the time u could just saunter by the material because its very analogical to other languages. That being said, u might like to join this course, i know its really late for u but again having already done programming u will very easily catch up. Always feel free to refer this and you may like to spice up the things with this.

Best of Luck…!!


The question you have to answer first is “What’s your goal” ? In other words: “Why you want to learn scripting language”?

I’m not very convinced that scripting languages are good choice for contest programming. Of course, time to time there are problems good for scripting languages, but most of the time that’s not true. Especially here on CodeChef you will have problems with timelimit for problems with bigger input data.

The reason (AFAIK) why there are scripting languages is mainly, that you can easily achieve your goal in field scripting language is “created” for. For example JavaScript is great for Web development, bash is good for task automatization in unix-like systems…

If I have to choose one day some of scripting languages for contest programming I guess it will be Python, see some stats here - http://www.go-hero.net/jam/12/round/4


@betlista i don’t want to use it for contest programming. i asked in general. i am confused as i never used scripting language and even don’t know their purpose. Why they are used in web development if jsp/servlet, php exist? by the way … i think i will go with Python. Thanks !!

JSP/Servlets is Java, but in modern web 2.0 JavaScript is required to implement expected user experience (typically with AJAX).

@saj1919 : you can follow this thread, here I mentioned some of the nice sources to have the python basics… http://discuss.ww2.codechef.com/questions/8440/python-basics?page=1#8494

1 Like


If you are attempting to learn a scripting language for the purpose of applying to a job at a company, my personal choice would fall over Ruby.

I only know Python and MATLAB as scripting languages, but, if you really want a job (don’t we all? ), then Ruby would be the most valuable language for you… Especially because about 10 years ago or so, Ruby developed what is known today as Rails or Ruby on Rails, which is a very powerful web applications framework and I’d go with that!

Best regards,


Python and Ruby are new , important and in demand in industry these days . If you want to learn one , learn Python .


Ruby is one of the ugliest coding languages i have ever seen FYI

1 Like

I have started learning Python … but seems slow … i mean i/o. Are there any tricks to improve efficiency (like getchar_unblocked in c/c++) ??? On codechef tutorials i could not find anything about python.

thank you Sir :slight_smile: