What programing language to pick?

If you want machine learning and working with data I'd pick python
i already did that, but yeah now time to learn something new :) but what i want to biuld is not only web dev but also desk app and mobiles app that why im confused to pick betwwen JS or C# wish is also a good choice too
 
start by JS huge ecosystem you can do pretty much everything with it !
- (Node for backend and databases ) it goes well with noSQL databases they re the trend right now
- frontend(React,vue...)
- desktop electron

but id suggest after spending some time with js 1year -2years switch to golang since it's way more powerful for cloud,backends and also creating bots and it's made by google and also it has the highest salary among all programming languages
 
You really won't be a good programmer if you learn javascript first and you'll find it hard to unlearn all the bad habits
yeah i agree, same goes for me i started with c then python now i will advance with java
 
switch to golang since it's way more powerful for cloud,backends and also creating bots and it's made by google and also it has the highest salary among all programming languages
Go, i found that in some forums talking about it, but again im not looking to learn that for getting paid paid by some one :) i want to learn that for my own needs :) thanks for your suggestion.
 
yeah i agree, same goes for me i started with c then python now i will advance with java


C is a good first language. But you really do want to go deep into 1 language and master it before moving to others.

Learning multiple languages is good, but ONLY if you've mastered one. It's not good to dabble in several.

I would master Python first. Learn every bit of the language, write a lot of code, and read a lot of code. Reading is very important. You need to pick some small projects, take them apart, understand them, and change them. You aren't going to improve anything at this stage, but play about with things. Don't just write code from scratch, actually try to modify and tweak existing libraries. Start with smaller simple ones that you find on github first.
 
Hey, i want to start learning a new programing language, the thing im so confused to choice wish one, what i want to end up with is being able to :
create web app front end and backend web developement
create mobile app
and desktop app
i already knew some basics of c c++ c# python php, but right now i want to advance or master one language that will allow me to do all the things listed above, i wanted to continue with python since i already knew the basics, but when searching online i found that the best option is JS, so im wondering wish one to pich and master it, any advice or help suggestion ? TY.

JavaScript is a great option, I recommend you to use udemy you have really good ways of learning javascript there. They cost around 15 bucks, if you have a VPN for sure change your IP to Turkey and you will be charged in turkish lire, the course will only cost around 1-2 bucks
 
One thing though, i see you keep mentioning Java, but I think you want JavaScript.
I might be wrong, just checking.

Code:
Java !== JavaScript

if (desiredlang == Java)

     link = https://docs.oracle.com/javase/7/docs/technotes/guides/language/

 else if (desiredlang == JavaScript)

     link = https://developer.mozilla.org/en-US/docs/Web/JavaScript/About_JavaScript
 
One thing though, i see you keep mentioning Java, but I think you want JavaScript.
I might be wrong, just checking.

Code:
Java !== JavaScript

if (desiredlang == Java)

     link = https://docs.oracle.com/javase/7/docs/technotes/guides/language/

else if (desiredlang == JavaScript)

     link = https://developer.mozilla.org/en-US/docs/Web/JavaScript/About_JavaScript
yeh i thought they are the same but it seems they 2 separate things...
 
Here's a response from a comp sci professor who teaches both javascript and python - https://blog.coursera.org/in-2019-should-you-learn-python-or-javascript-first/

He says it's fine to fiddle around with js as you learn python, as you do come across it a lot, but, his exact words are




You really won't be a good programmer if you learn javascript first and you'll find it hard to unlearn all the bad habits.

His last quote sums up exactly why js is a terrible first language. Python is ultra-powerful and one of Guido van Rossum's core goals was to move away from languages like Perl that have 50 ways of doing the 1 thing. He wanted something that would make thinking in code much easier. You really can't get a better language for your first one.
I actually started learning Python but move to JavaScript.

I started working on a Saas company that also offers SEO consultation and the CEO of the company (who recently passed away) was a big advocate for Python.

Also, most of the practical usage would be for data analysis and task automation but, I got carried away by the comments of more experienced guys in this field.

@splishsplash Thanks a lot for stopping by and sharing your insights here!!
 
I thought so.
That Mozilla website is a very good (free) resource to learn JavaScript. It has basically everything supported by Firefox and where not supported is mentioned as such but described properly.
W3schools used to be good but is a bit outdated.
 

If you don't want to spend money on javascript I recommend you this guy, after that to master the language I would remake existing applications
 
I will share my experience, I have been trying to learn programming languages all my life but was never learned. Because I was unable to decide which language to learn.

During the lockdown, I had lots of free time so I decided to concentrate on a single language.

I choose Dart because Flutter uses Dart.

Flutter is Google’s UI toolkit for building beautiful, natively compiled applications for mobile, web & desktop from a single codebase.

In 4 months I was able to make small mobile apps and got some paid projects. Once you learn programming fundamentals it is not hard to learn another language.

So pick one language you are comfortable with and start learning, finding the perfect language to learn will waste lots of time.

Learn based on your objective. If you want to make mobile apps learn flutter, for web applications learn Vuejs or Reactjs, for machine learning python.

For the backend, you can use headless CMS like Strapi, Directus, or Firebase.

Learn Dart Fundamentals
https://www.youtube.com/playlist?list=PLlxmoA0rQ-LyHW9voBdNo4gEEIh0SjG-q
Learn Flutter & Dart
Try this course: https://www.udemy.com/course/flutter-bootcamp-with-dart/

Good Luck.
 
Here's a response from a comp sci professor who teaches both javascript and python - https://blog.coursera.org/in-2019-should-you-learn-python-or-javascript-first/

He says it's fine to fiddle around with js as you learn python, as you do come across it a lot, but, his exact words are




You really won't be a good programmer if you learn javascript first and you'll find it hard to unlearn all the bad habits.

His last quote sums up exactly why js is a terrible first language. Python is ultra powerful and one of Guido van Rossum's core goals was to move away from languages like Perl that have 50 ways of doing the 1 thing. He wanted something that would make thinking in code much easier. You really can't get a better language for your first one.
HUH?? What do you mean you won’t be a good programmer if you learn JS first? You truly have no idea what you’re talking about. It doesn’t matter which language you choose first, as long as you know how to program. Experienced javascript programmers can switch between languages in a matter of weeks. We are talking about high-level languages here, we’re not talking assembly. You can learn Javascript well and then switch to python in case that you need to. Just learn the conventions and libraries that you need for each language
 
I actually started learning Python but move to JavaScript.

I started working on a Saas company that also offers SEO consultation and the CEO of the company (who recently passed away) was a big advocate for Python.

Also, most of the practical usage would be for data analysis and task automation but, I got carried away by the comments of more experienced guys in this field.

@splishsplash Thanks a lot for stopping by and sharing your insights here!!

For data science and task automation you'd absolutely want Python.

Unfortunately there's a LOT of bad advice out there and it can be very hard to make a decision. I've been a dev since the 90's btw, so I was writing code while a lot of guys here were still learning to crawl.

Ultimately you have to make your own decision, but the thing you need to be careful of in this industry is fanaticism. Ever since the early days it's been rampant. emacs vs vi, linux vs freebsd, freebsd vs openbsd etc. You'll find a lot of die-hard javascript fanatics that will convince you that it's the best thing since sliced bread, but I can tell you that out of all the main stream languages Python is one of the cleanest languages in terms of the actual syntax and how to write code. You can read any code in Python and you'll understand it. Other languages have a lot of quirks and special ways of doing things which that you need to learn the style of the programmer rather than the fundamental style of the language.

Python is strongly-typed. Javascript is weakly typed.

There's no procedural programming in javascript. It's just a big mix of everything. You aren't going to learn about interfaces, polymorphism or multiple inheritance. These things in javascript are more like "hacks". You use prototypes to achieve polymoprhism. I don't think you can implement interfaces, and javascript doesn't support multiple inheritance. There's a hacky way to do it with ES6, but again, do you really want to be learning "hacky ways", or learning the fundamentals in a clean way?

Python is imperative, procedural, OO and functional.

Python was designed to be what it is. Javascript is just a big evolution of addons, hacks and glues to do things. It's very powerful, but this is not the type of language you want to learn to be a software engineer in. It's a power tool for getting stuff done when you're already a strong developer.

Python has way more libs than js.

Most people and articles out there are just full of crap, then you have the die-hards in a language that will convince you it's the most amazing thing ever, but they're lacking the broader perspective to compare because they're so entrenched in their own daily programming practices and way of solving things.


You see this below. This is an example. His response is just "You truly have no idea what you're talking about". Notice how he added "truly" to give it more emphasis. The notion that a js programmer can "switch between languages" in a matter of weeks is beyond ridiculous. See if this guy really understands mutable vs immutable data. I doubt he's even heard of these terms let alone the ability to actually understand the difference.

HUH?? What do you mean you won’t be a good programmer if you learn JS first? You truly have no idea what you’re talking about. It doesn’t matter which language you choose first, as long as you know how to program. Experienced javascript programmers can switch between languages in a matter of weeks. We are talking about high-level languages here, we’re not talking assembly. You can learn Javascript well and then switch to python in case that you need to. Just learn the conventions and libraries that you need for each language

In fact here's one for you.

Can you make a mutable data type in javascript immutable? If so, how? And tell me if using const on an object will prevent that object from being modified. If not, why.
 
For data science and task automation you'd absolutely want Python.

Unfortunately there's a LOT of bad advice out there and it can be very hard to make a decision. I've been a dev since the 90's btw, so I was writing code while a lot of guys here were still learning to crawl.

Ultimately you have to make your own decision, but the thing you need to be careful of in this industry is fanaticism. Ever since the early days it's been rampant. emacs vs vi, linux vs freebsd, freebsd vs openbsd etc. You'll find a lot of die-hard javascript fanatics that will convince you that it's the best thing since sliced bread, but I can tell you that out of all the main stream languages Python is one of the cleanest languages in terms of the actual syntax and how to write code. You can read any code in Python and you'll understand it. Other languages have a lot of quirks and special ways of doing things which that you need to learn the style of the programmer rather than the fundamental style of the language.

Python is strongly-typed. Javascript is weakly typed.

There's no procedural programming in javascript. It's just a big mix of everything. You aren't going to learn about interfaces, polymorphism or multiple inheritance. These things in javascript are more like "hacks". You use prototypes to achieve polymoprhism. I don't think you can implement interfaces, and javascript doesn't support multiple inheritance. There's a hacky way to do it with ES6, but again, do you really want to be learning "hacky ways", or learning the fundamentals in a clean way?

Python is imperative, procedural, OO and functional.

Python was designed to be what it is. Javascript is just a big evolution of addons, hacks and glues to do things. It's very powerful, but this is not the type of language you want to learn to be a software engineer in. It's a power tool for getting stuff done when you're already a strong developer.

Python has way more libs than js.

Most people and articles out there are just full of crap, then you have the die-hards in a language that will convince you it's the most amazing thing ever, but they're lacking the broader perspective to compare because they're so entrenched in their own daily programming practices and way of solving things.


You see this below. This is an example. His response is just "You truly have no idea what you're talking about". Notice how he added "truly" to give it more emphasis. The notion that a js programmer can "switch between languages" in a matter of weeks is beyond ridiculous. See if this guy really understands mutable vs immutable data. I doubt he's even heard of these terms let alone the ability to actually understand the difference.
Programming can be defined as the art of problem solving through code, AS LONG as you know how to solve problems through code, you’ll be a good programmer.

Some languages provide different tools and have their own quirks, yes. But there’s absolutely NOTHING stopping you from learning CS concepts outside of any particular language, which is what a GOOD programmer does. Just because a language is popular doesn’t make it the only choice or THE BEST CHOICE FOR ALL, it all depends on which tasks you want to accomplish.

And yes, as “ridiculous” as you might think it sounds, a professional programmer is usually required to work with new frameworks and even new languages a lot of the times. Or maybe me and all my peers are the only “geniuses” that can switch languages when best suited for certain tasks.

(Source: I program in JS, Ruby, Python and C++)
 
Back
Top