What is the best programming language nowadays? | Coursera Community
Coursera Header

What is the best programming language nowadays?


Hello everyone,

Once upon a time I had learnt Pascal as a computer programming language at school! I remember being so excited after I completed my first homework, which was calculating something. I guess Pascal became a history now? I hear so many different programming languages nowadays from S Plus to R programming to Java to Python and many more.

What are your favorite programming language(s)? How are they in comparison to each other? Which one do you recommend for what purpose?

I would love to hear your opinions.

Thank you.

22 replies

Great topic! One of the popular languages these days is Python. I became familiar with it initially in the context of web development while reading a book on developing websites a few years ago. Python courses are offered on various platforms nowadays. I know that software developers also use it.
Userlevel 2
Badge
I like java it very common and Android apps based on it
Thank you @Maryam and @king.aloush for your suggestions and explanations for Phyton and Java languages. I guess website developing might interest many of us who use online applications regularly. Do you know if these languages could be used for other things than what you mentioned?
Userlevel 2
Badge
@Denise
Hello I know java using for this:
1) Android Apps
2) Server Apps at Financial Services Industry
3) Java Web applications
4) Software Tools
5) Trading Application
6) J2ME Apps
7) Embedded Space
8) Big Data technologies
9) High Frequency Trading Space
10) Scientific Applications

11)Financial Services

Denise wrote:

Hello everyone,

Once upon a time I had learnt Pascal as a computer programming language at school! I remember being so excited after I completed my first homework, which was calculating something. I guess Pascal became a history now? I hear so many different programming languages nowadays from S Plus to R programming to Java to Phyton and many more.

What are your favorite programming language(s)? How are they in comparison to each other? Which one do you recommend for what purpose?

I would love to hear your opinions.

Thank you.



You are welcome,@Denise. Please edit your post and the tag if you, too, are referring to Python. Or maybe Phyton is a different language that I am not aware of?
Thank you @Maryam for letting me know. That was a typo, I just edited. You never know they might create phyton too some day soon with all these varieties. 😉 There’s Cython now already! I have no idea what that’s for at the moment. 🙂
Thanks so much @king.aloush for such a comprehensive list on java. That’s very helpful indeed. I wonder if all the programming languages have such a big variety of applications? Or just a select few? If there are more languages with a wide application capacity, then how does one decide which one to select?
Denise wrote:

Thank you @Maryam for letting me know. That was a typo, I just edited. You never know they might create phyton too some day soon with all these varieties. 😉 There’s cython now already! I have no idea what that’s for at the moment. :)


Why not? Someone might create such a language, too. 🙂
Denise wrote:

Thank you @Maryam and @king.aloush for your suggestions and explanations for Phyton and Java languages. I guess website developing might interest many of us who use online applications regularly. Do you know if these languages could be used for other things than what you mentioned?


@Denise, Python is being used in various fields/industries. This article briefly sheds light on some of them:

  • Python in Artificial Intelligence (AI)
  • Python in Big Data
  • Python in Data Science
  • Python in Testing Frameworks
  • Python in Web Development
I hope you find it useful.
Userlevel 2
Badge
@Denise
There is some reasons to choose first size of published apps, common use, conflicts, open source, updates, support and I think some economics purposes too.
Userlevel 1
Badge +1
While Python, Java, Pascal etc. are syntactically quiet different, offering different features and beeing used in different industries for different cases, they all follow (more or less) the same imperative programming paradigm, and it's more a matter of the environment:
Python is popular among Data Scientists and there are many DS and ML packages ready to use.
Javascript is popular among Web Developers because they can use it for frontend and backend (Node.js) and only need one language.
Android has native support for Java, so that's the way to go (at least it was until recently, but today you really should consider using Kotlin instead). And likewise you should use Swift for iOS.

But there are cool languages which are not heavily used in industrie but offer a completely different type of programming:
Haskell offers a purely functional programming language which requires you to think completely different. Nowadays, Java and other languages are adding more and more functional paradigms like lambda expressions, but it is really helpful to learn one purely functional language (and there is a Coursera Course for it called "Programming Languages" 😉 ).
Prolog is a logical programming language, also a completely different way of programming, making some problems fairly simple to program (but it is really limited in use).

Choosing the right language should always be a matter of the environment first and only a matter of taste second. I really like Haskell, but I would not use it for most "real use cases". I'm not a big fan of JavaScript, but if I had to code a website, I would still use it.
Thanks so much @Maryam for that article and further details on Python. I really enjoyed reading it.
Thank you @king.aloush for further insight. Yes, I guess being able to afford certain programming language might also make a difference to the selection decision. 😉
Thanks so much @Thassilo for all these details. This is very helpful too. Incidentally, I have just added "Haskell," "Swift," "Prolog" to the thanks to you as well as "android" and "web development" thanks to @king.aloush and @Maryam . 🙂

If others have more to comment on these and/or talk about more programs, please feel free to contribute further. Thank you.
Userlevel 2
Badge
@Denise I agree with you 🙂
Userlevel 2
Badge +1
The best programming language is still not developed. Python has a lot of it. It is very friendly to type and read for the human, as it does not require tons of parentheses to structure the code.

It still has some downsides. There is too much selfishness in it. Leading underscores to address the lack of encapsulation are also breaking the principle of human friendliness. Also the list comprehensions break the visible flow of the code. Object orientation still is not a first class citizen.

Ruby has a similar spirit, but gives too much freedom to drop some syntactical parts. If you can drop the parentheses in a method call, this saves a little burden of typing. The code becomes difficult to read, if you are always in doubt if its a method or a variable.
Userlevel 2
Badge +1
Thassilo wrote:


Android has native support for Java, so that's the way to go (at least it was until recently, but today you really should consider using Kotlin instead). And likewise you should use Swift for iOS.



I am not an enthusiastic supporter of Kotlin. It tries to fix some issues of Java at the cost of another layer. It doesn't go far enough. Groovy has been first and maybe has the better features. This on-top-layers of Java are quickly done and there is a lot of competition. I don't see this getting to a new standard currently. Maybe it drives Java to a faster pace of evolution.
Thank you very much @Elmar for your helpful comments as well. I like your comment "The best programming language is still not developed" which gives lots of incentive for programmers to develop one. 🙂 It's great to know that Python is among one of the best so far. I've just added Ruby, Kotlin and Groovy to the tags thanks to you and @Thassilo . 🙂
Userlevel 2
Badge +1
A little story of Python. It is often accused to be slow.

I solved the following Bioinformatics challenge http://rosalind.info/problems/ksim/. Is has only been solved by 65 people so far, as it is difficult to get the runtime below five minutes.

I first tried Python and it was not fast enough. Then I put the main loop (actually two nested loops) into a Cython file, that is Python compiled to C. Just a few lines to migrate and I could solve the challenge within time.

I then wanted to experience the speed of C++ and implemented the whole challenge in it. That was a multiple amount of work to do. And the speed? Just the same!

Why? Because almost all the time was spent within a single loop and I compiled it into C. I didn't even have to code this loop as C.

Was Python slow? Yes and no. It was the language I coded and it became as fast as C++ by just applying this little trick upon one loop. You can argue it's C and not Python any more. None-the-less it is coded in Python and it runs as fast as C++.

Since this time, I don't value C++ any more for it's speed. It's a question of using Python intelligently and your programs become similar fast. In Bioinformatics it is far more important to find the right algorithm, than to choose a fast language. The language can only speed a by a factor below 100. The right algorithm does speed up a program by multiple dimensions of 10.

For me the productivity a language provides to me count's the most. This is currently Python.
That's a really good demonstration of comparing the Python and C++ @Elmar . I was wondering why nobody mentioned C++ yet, now, I guess I see why. 🙂 I added C++ to the tags list too. Thank you once again.
Userlevel 2
Badge +1
Denise wrote:

I was wondering why nobody mentioned C++ yet, now, I guess I see why. 🙂



I am just a single person. I have my motifs, other people have theirs. It's statistically doubtable to infer from my single perspective.

In fact you depend on an infrastructure and the working environment gives the constraints. I guess it's not just an urban legend, that there are still environments depending on FORTRAN.
No worries @Elmar , I never jump to conclusions from only one perspective, especially as a scientist! I collect my data first as mentioned in the other thread. 😉

I am assuming others will comment later on for C++ and Fortran too, which used to be my husband's favorite for a season. 🙂

Reply

    Cookie policy

    We use cookies to enhance and personalize your experience. If you accept or continue browsing you agree to our cookie policy. Learn more about our cookies.

    Accept cookies Cookie settings