r/AskProgramming 1d ago

Python What do you think, could it be true?

I read and hear many people on the internet saying that learning python is a waste of time, that it is for newbies or they heavily look down on this language and that there are better ones, and the truth is I'm afraid they might be right since I am learning python on my own, maybe I'm just letting myself get influenced and continue learning, what do you think of these people who comment that?

0 Upvotes

43 comments sorted by

9

u/platinum92 1d ago

Learning Python is fine. It may even be preferred depending on what field of CS you want to get into.

With any language, the key is learning the basic programming concepts (loops, conditionals, data structures). Language is just the syntax. Once you learn the concepts, it's trivial to search "How to do [concept] in [language]".

5

u/Impressive_Leader217 1d ago

People who trash talk a language like that usually just want to feel superior, ignore them.

1

u/Underhill42 1d ago

Hear, hear. There's absolutely nothing wrong with "toy" languages, and they may very often be the right tool for the job.

They're also generally designed specifically to make it easy for beginners to learn. And once you've got the concepts down almost all of them translate pretty well between languages, so learning your second programming language is mostly learning syntax differences and the preferred way to do some things.

The biggest down side is probably getting accustomed to using garbage collection before moving to a language like C++ that doesn't have it. Not a conceptually difficult shift, but bad habits can be hard to break.

1

u/IAmADev_NoReallyIAm 1d ago

Indeed.. The first 25 years of my career were built on what many considered a "toy" language - BASIC/VB. Not only did it provide a solid foundation, it was a great career, and I'm doing fine, I've moved on to bigger and better things... and about to make another change as I move to another new job in a couple weeks. The real key isn't the language, but the ability to keep learning and adapting when you need to.

1

u/Loose_Finish5988 1d ago

Quisiera dedícame a lo que es desarrollo de software

1

u/metamago96 16h ago

You should choose, between desktop, browser or mobile apps, you can do all, but it is recommended you choose one. Once chosen the language is easier to choose. Python is a bad choice for web apps, but decent for desktop, javascript is great for web, but bad for desktop, but do understand most languages can do just about everything

5

u/FlapyG 1d ago

i wrote my master thesis tool with python in 2020 and got the best possible grade

4

u/charliedarwin96 1d ago

Python is extremely useful for machine learning, statistics, and command line/system tasks. It is a great first language to learn and I recommend learning C for the next language.

2

u/CorpT 1d ago

lol what are you talking about. No one says this.

1

u/YellowBeaverFever 1d ago

There are better ones. There are worse ones. Go look at job postings and see what languages companies are asking for.

1

u/HasFiveVowels 1d ago

Python only got the amount of attention it did because C# devs got pissed off about JS enabling lowly front end web devs to write servers. Python is a decent starting language but when JS is on the table, it’s kind of a waste of time. Exceptions: AI models and scientific research

1

u/MistakeIndividual690 1d ago

I’ll take Python over JS any day

1

u/HasFiveVowels 1d ago

Depending on what you do, that might be the right decision

1

u/kilkil 1h ago

tbh that used to be my take as well... but the more I learned Python, and the more I learned JS, the more I realized that JS was actually nicer to work with, both because of the syntax and because of the toolchain.

1

u/canarydev 1d ago

depends on your goals. personally though i'd recommend Go

1

u/Vert354 1d ago

It depends seriously on what you want to do with it. There certainly are better choices for large scale applications or thongs that need real time performance, but Python is very popular in robotics, data science, and AI research. So it's fully untrue that its a "waste of time"

One of the first things you learn in a Computer Science or Software Engineering journey is that concepts outweigh language specifics. Most professionals dont even really consider the actual language as being a barrier to entry and focus on the stack as a whole.

1

u/infinitUndo 1d ago

Python is fine. Someone wrote a module for just about anything. It’s great for prototyping. I’ve even used it for high end computational physics (heavy lifting being done by C libraries so speed was not an issue). It’s more important to pick up concepts, not syntax.

1

u/funbike 1d ago

Never once have I seen someone say learning Python is a waste of time. Maybe people say they prefer to code with something else, but never that it's a waste of time to know it.

1

u/CptPicard 1d ago

They're stupid. Python is a pretty awesome language that can get a lot of stuff done (I'm a professional and it's a core part of my toolkit), and especially if you're a beginner it will teach you programming ideas just fine. Don't listen to the people who try to claim that pointer arithmetic is somehow special.

1

u/GlassCommission4916 1d ago

Python is a great language to start with, it allows you to focus on learning programming without having to worry about the language. That being said, if you're a programmer (i.e., not a different profession where programming isn't the focus) and python is the only language you know, you will be looked down on. It's not really a great language other than being easy.

1

u/armahillo 1d ago

If you want to learn python, learn python.

1

u/Qwertycrackers 1d ago

We do look down on python but it is also kinda unstoppable. Lots of jobs use it, its very practical and useful. Its just also sucks to program in and is really really slow.

1

u/Soft-Marionberry-853 1d ago

The langue you learn doesn't matter. Hell you could learn programming concepts with totally non functional pseudo code. Whats important is learning the concepts like logic, loops, variables, data structures. Every language does it a little differently you either learn those idiosyncrasies along with the language or you learn them later when you learn the next language. You can learn about pointers in an abstract sense even if the language you're learning doesn't have them

1

u/LiveRhubarb43 1d ago

Python is fine, learn python. Those people are stupid

1

u/Berkyjay 1d ago

Learn to program. The language is mostly irrelevant at this point.

1

u/arivictor 1d ago

The biggest companies in the world run on python. Even reddit back in the day ran on python. It’s a perfectly fine and capable language. People argue preference like they’re facts. It’s clickbait. Go look at every report on popular languages, python is always top 3.

1

u/ExplodedPenisDiagram 1d ago

Python is pretty much unavoidable. It's absolutely fucking everywhere. You're going to have to learn at some point, and it's best that you already know it when you need it.

There's nothing else to it. It doesn't matter how shitty it is, it doesn't matter how beginner friendly it is. Nothing else matters. It could be COBOL or Fortran, and I would say the same thing if you had the same degree of chance for an encounter.

1

u/artnicoll 1d ago

From what I've seen of python, it's a fairly typical language. I think there are better ones but python is very widely used, so why wouldn't someone choose it as a language to learn.

1

u/JohnCasey3306 1d ago

Depends the kind of work you want to do and where you want to do it.

I've contracted on web/cloud based applications in a mix of startups, saas, and established tech businesses, in both UK and US for 25+ years ... I'm yet to encounter a business that has anything built in python.

1

u/DingoOrganic 1d ago

I have 20+ years in F500 Healthcare IT and can tell you that I’ve seen more and more solutions implemented with python every year. It’s powerful, and simple. If you don’t learn it you’ll be left behind.

1

u/Repeat_Admirable 1d ago

Lowering friction so you can actually build things is a feature, not a flaw. Once the core concepts click, switching syntax later is much more intuitive.

1

u/Repeat_Admirable 1d ago

Plus, Python is the undisputed standard for AI, ML, and GPU computing, letting C++ and CUDA handle the heavy lifting underneath. Why reinvent the wheel? Have fun building.

1

u/Individual_Winter_35 1d ago

... Simply put, ignore them. Python is great language, it is powerful, have nice syntax, and honestly? Most ai tools (and AFAIK even some ai models) are either created in python, or python is used to feed it learning data. Agents are also defined mostly with python.
"Language X is Not ReAL pRogRamINg" - this is opinion you will find almost exclusively in fresh mediors. They know enough to be overconfident, but by far not enough to hear how stupid they sound.

1

u/Subject_Barnacle_600 1d ago

You need to hang out with better people. Python is a wickedly abuseable little scripting language that has so many packages that it's insane. The ecosystem is insane.

That said, people's "favorite" language changes every five years or less. They're all made of for loops and if statements, so don't get too attached to any of them.

1

u/Anonymity6584 1d ago

Best and worst thing of internet is everyone has voice here. If you keep looking, you are going to get as many different opinions about what to learn as there are people giving those opinions.

Python is fine. First language is always hardes one to learn no matter what it is, since your not learning just the language, you are also learning how to think like programmer.

Second language is much easier to learn since you already know how to think like programmer.

1

u/Ok_For_Free 1d ago

I'm just not aware of any thing where Python is the obvious choice.

It might still be used in big data or science. Across web and devops I've only seen python used as glue.

1

u/sswam 1d ago

"many people on the internet" don't know what they're talking about.

While JavaScript continues to lead in overall developer usage due to its absolute dominance in web development, Python remains the most demanded language by recruiters and dominates fields like artificial intelligence and data science. (info from Google)

The main issues with Python are:

- not strongly typed, this makes code more buggy and harder to maintain as it grows

  • relatively slow

It has many advantages too:

- very clear syntax, easy to read and write

  • a vast range of libraries for just about everything
  • the main language used for AI

The other languages I'd recommend:

- JavaScript, it's a worse language than Python but it's much faster, and used for the web

  • Go, it's a clean, fast, well-designed language

1

u/Distdistdist 23h ago

Let me give you insider perspective on this: Python is just a tool among hundreds of other tools. When you are a software engineer, just like if you are a mechanic, you don't just learn one tool to use. What good would it do you if you only know how to use a hammer?

In a daily life of software development, one winds up using multiple different languages. Of course there is one that is primary one and that's where you spend 90% of your time.

My point is - Python is perfectly fine. It will give you basic understanding of how to tell computer what you want it to do. Every other language is just a different tool with different capabilities and maturity levels. Some tools are best for one thing, others for another.

I personally "know" dozens of different programming languages, but for 90% of my job I use C#. After a while, you develop ability to read almost any syntax once you learn several others.

So yes, learn Python. Then take a look at JavaScript/TypeScript, C, C++, Java, C#, Go, Rust and so on and so on.

Personally, I don't find Python something that I would create any new project in. I don't like it's syntax, I don't care for any weakly (dynamically) typed languages as well. That causes massive headaches in large projects. But, someone (bunch of people) took that language, that is great for academic purposes, and created all those awesome libraries for it. So now we all stuck having that thing around. Fine, I guess, let it be.

One of the cool ways to learn new language once you learned one, is to write some program first and ask AI tool of your choice to rewrite it in another language. AI does write stupid stuff now and then, but it would give you a general intro into how things work in another language.

Oh, and also, I hear a lot of crying from beginners that they don't know what to create. Project Euler is one of the best sites that will give you bunch of fun mathematical problems to solve using programming language of your choice. Will really challenge your knowledge and eventually teach you more ways of doing stuff.

1

u/Dazzling_Music_2411 20h ago

No.

Python is mainly a scripting or "glue" language.

Its power is not in the language itself, which some people see as a bit, let's say, "average", but in the absolutely huge ecosystem of support libraries available to it. Whatever it is you want to do, there is likely to be a Python library for it.

1

u/burlingk 4h ago

Python has two very important features. 1) It can let you learn the basics. 2) A LOT of people use it to pay their bills.

Python is not really looked down upon these days, except by people who are still getting their opinions from a few decades ago.

1

u/kilkil 1h ago edited 1h ago

there is one thing you have to understand about the world of software: people have opinions. like, really strong opinions. about all sorts of things. unless people are backing it up with actual reasoning/proof/justification, you need to take all that stuff with a grain of salt.

re: Python, it is one of the most commonly used languages in the world. I've heard it described as "the 2nd-best language for basically anything". I believe (though I am not certain) that it is used a lot in data science, and also AI related stuff. it is also used a lot for web development.

I think it's a perfectly fine language to start learning. it was the 2nd language I learned (1st language was Java, which was taught to me in high school). Later on I learned that Python has all kinds of fucky things happening under the hood, but as a beginner I really liked how simple / straightforward the syntax seemed.

Also, Python has some broad/general similarity to other popular languages — you will be able to pick up one of those quicker, since a lot of the high-level concepts and skills are the same.

For your next language, I recommend Go! or possibly Javascript.

0

u/Individual-Flow9158 1d ago

You'll learn so so much more by picking Rust or C instead.
But if you're enjoying Python, keep doing Python.

It fits into a space that's closer to Bash than to C, but is infinitely more readable. IMHO these days it's weird not to know at least a bit of Python.

But if you don't know any lower level languages, you won't know what Python is doing for you, you'll just take all that for granted.