This is just my opinion, I'm a firm believer in starting with python, then moving to something like C/C++. Remember that being a beginner programmer doesn't mean your learning a language, your learning how you solve a problem and translate your solution into an algorithm. I think python is a good starter language because it's really close to plain English, so you can focus on developing algorithms without worrying too much about syntax. Once you have developed that skill more in depth and are more comfortable with translating your ideas to python, then maybe start dabeling in C and you can start to get a better feel for working with memory, pointers, etc. Good luck! Remember this most important thing is to not get to hung up on picking a language, just throw yourself into it. Answer from EvanNotSoAlmighty on reddit.com
🌐
Reddit
reddit.com › r/learnprogramming › what should i learn first? c or python?
r/learnprogramming on Reddit: What should I learn first? C or Python?
July 2, 2023 -

Hey everyone,

I have done a little bit of Python already, but I took a break from it and am deciding if I should continue with it, or try to learn C.

I am an aspiring electrical or aerospace engineer, so I know Python will be helpful for me in that sense. But I also know that learning lower level languages may be better for me if I wanted to do electrical engineering, as well as creating code for microcontrollers for my 3d printed rocket.

I am interested in ai/ml, so I would like to know Python, but I am also interested in electronics, so I’m confused what to start with.

Thank you.

Top answer
1 of 50
37
Choice of first language isn't really important as long as learning resources exist. Both are good choices, and you can always learn the other on when you feel like it. So don't let analysis paralysis stop you, and just pick one. Flip a coin if you have to.
2 of 50
28
Fellow learner here who tried to learn Python and C++ at the same time. From a newbie perspective my vote goes to Python. You'll learn all the important stuff about variables, functions, algorithms, recursion, data structures etc in a language that has 'face validity' - it looks like what it does, which is important for new learners. I found jumping right into C++ was information overload. I'd say the people here advising C have at least a few years coding under their belt, but for a newbie who has never studied computer science, I found the difficult syntax and memory management got in the way of learning the essentials. I plan to go back to C++ after Python once all the data structures and techniques are second nature. As an analogy, take the human languages French and Russian. I learnt French in school, understood verb conjugations and cases, and that helped immensely when I learned Russian. If I jumped straight into Russian, the Cyrillic alphabet and strange sentence structure would have clouded my learning of the basics, and I might have given up because of trying to do too much at once. So I see Python like French, and C++ like Russian .. I hope that makes sense. The other consideration is what you plan to do, and which language is most appropriate. For me, python is great for machine learning so my choice aligns with my goal. I don't know much about electrical or aerospace engineering, so you might want to visit those subs and ask the same question there. But whatever the case, my recommendation is to refresh your knowledge of Python, and once you're confident with the essentials go back to C++ This 47 hour C++ course was recently released on o'reilly, so I plan to do that some time over the next few months Good luck!
🌐
Reddit
reddit.com › r/learnprogramming › best to learn c or python first for a computer science degree?
Best to learn C or Python first for a computer science degree? : r/learnprogramming
August 1, 2018 - If you love getting into the details, then start with C. If you prefer thinking about problems at a higher-level of abstraction, then start with Python. Abstraction and knowing the right level of abstraction for solving problems is an important concept in computer science.
🌐
Reddit
reddit.com › r/learnprogramming › c or python?
C or Python? : r/learnprogramming
July 21, 2021 - It's about developing the mindset of a programmer and understanding the broad concepts that span across every language. In my opinion, C is the best language to learn first. C's design pioneered the languages we have today. By studying C first you will understand the roots of object oriented ...
🌐
Reddit
reddit.com › r/learnprogramming › should i learn python or c?
r/learnprogramming on Reddit: Should I learn Python or C?
July 9, 2024 -

I am a high school student. I want to become a "good" software engineer in future. I want to learn programming due to my interest in computers and technology. I don't have any specific goal or interest, like web development or any other.

Some say to start with Python, as it will help to start easier, then learn other languages.

Some say to start with C, as it will teach me basics of programming and will make it easier to learn other languages. Python will make it difficult to learn complex languages, like C++, and I will learn bad habits from Python, as it is very easy.

I know I may be wrong, but I don't have much knowledge about programming. Please help me decide between Python and C.

Top answer
1 of 4
7

In my opinion it's better to start learning Python.

I found it easier to learn then C or C++. It has libraries to do virtually anything you might need, and can do essentially anything.

The only reason to use a more difficult language like C/C++ is if you need the performance or are writing code for an embedded system. They are not, however, what you should be learning initially.

C# is a fine language, but nothing beats Python for ease of use.

The scope of Python is quite broad, here are some examples:

  • Create a website (Django, etc.)
  • Create scripts to do tasks ranging from image manipulation to server maintenance
  • Create GUIs (Tkinter, etc.)
  • Create games (pygame)
  • Scientific computing (SciPy)

Python can interact directly with arbitrary C code, meaning anything which can be done in C, can be done in Python with a little work. Python is popular enough that an interface has been created for virtually everything already.

For a better look at what can be done with python out of the box, take a look at the standard library which comes with python: http://docs.python.org/library/

In short, if it can be done with a computer, and doesn't require the speed of C/C++, it can be done with Python.

2 of 4
4

I would say it depends on what you want to achieve (cheesy answer...)

The truth is, learning language is a long process. If you plan on learning a language as a step toward learning another language, you're probably wasting your time.

It takes a good year to be proficient with C++, and that is with basic knowledge of algorithms and object concepts. And I only mean proficient, meaning you can get things done, but certainly not expert or anything.

So the real question is, do you want to spend a year learning C++ before beginning to learn Python ?

If the ultimate goal is to program in Python... it doesn't seem worth it.

🌐
Hacker News
news.ycombinator.com › item
Ask HN: Is it worth it to learn C to better understand Python? | Hacker News
February 3, 2022 - For instance, when you only need to write two curly braces to create a “dictionary” (of course behind the scenes this is a hash table) many of the nuances of that data structure are hidden from you. You have no idea that accesses are O(1) amortized but worst case are O(n). Even if you do, ...
Find elsewhere
🌐
Reddit
reddit.com › r/learnprogramming › python or c for a beginner?
r/learnprogramming on Reddit: Python or C for a beginner?
March 2, 2023 -

I'm fully new to programming and have been doing research on what a good first language to choose is. For the most part, I have seen Python and C. I do plan on learning both but I don't know what to start with. What are the pros and cons of starting with each? Which one trains universal programming skills better? What do you recommend?

🌐
Reddit
reddit.com › r/learnprogramming › learning c vs learning python with almost zero coding experience
r/learnprogramming on Reddit: Learning C vs Learning Python with almost zero coding experience
March 2, 2025 -

I am a senior in high school, and I have already applied & gotten accepted into EE Majors at a few schools. I've taken engineering class for 4 years and have slight experience with robotics but almost zero with coding. I trust that I will learn programming necessary for my career in school, but I want to learn C now to create projects with Arduino. Everywhere I look it seems like Python is the best language for complete beginners, but it doesn't seem to match what I had in mind like C does. Is it worth it to learn Python first? Or should I just go straight to C???

🌐
Quora
cstdspace.quora.com › Should-I-learn-either-Python-or-C-first
Should I learn either Python or C first? - C Programmers - Quora
Answer (1 of 24): When people on Quora ask questions along the lines of “what computer programming language(s) should I learn first?”, my answer is invariably always the same, because the “first” implies that they intend to learn multiple languages, which implies that they want to program ...
🌐
Reddit
reddit.com › r/askprogramming › should i learn c and c++ before python
r/AskProgramming on Reddit: Should I learn C and C++ before Python
September 1, 2021 -

Hi there. I had started to learn Python and then I found a curriculum of MIT and some other sources said that one should learn C and C++ first to be a good developer. Do you think this is really matter what language to learn first? I would like to do it properly in the long term. And what else should I learn from the very beginning except of programming language and math (I learn Calculus)?

🌐
Reddit
reddit.com › r/computerengineering › would it be better to learn c++ or python first as a total newbie to coding and programming languages?
r/ComputerEngineering on Reddit: Would it be better to learn C++ or Python first as a total newbie to coding and programming languages?
July 21, 2024 -

Hi everybody, sorry if I’m asking a common question here. As a little background, I’m starting from the ground up in math and science, starting from pre-calculus and chemistry, so it’ll be a while until I get my first CE course in college. Since I have some time until then, I thought it’d be a good idea to get a head start on programming now so I’m not going into everything completely blind later on.

My school’s course seems to focus more on C++, but a lot of people online recommend total beginners to start with Python. Which would be a better place for me to start?

🌐
Reddit
reddit.com › r/learnprogramming › is it worth learning c before learning higher level languages like python?
r/learnprogramming on Reddit: Is it worth learning C before learning higher level languages like Python?
November 29, 2021 -

I have frequently read that learning C can give you a great foundation for learning other languages, but I am worried about the time commitment. If my goal is to become an expert in lets say Python, first learning C well enough to be usable may take months or even a year. Is the time commitment to learning C first before other languages really worth it in the end? Especially if you’re trying to get a job with the newer stuff sooner rather than later?

Appreciate any input!

Top answer
1 of 37
25
You can start with any language and you'll end up in the exact same place eventually if you're really cut out for programming. (You have a lot of patience and you're logically sound or develop logic skills later on) That being said, I have my opinions. I personally think it's better for most people to start with something like Python because you can typically write interesting applications much faster. Basically, (depending on the application) you don't have to write hundreds of lines of code just to see anything remotely interesting on the screen. It's still going to be hard as balls but you'll have a more constant feedback loop of seeing things change on screen, which will help keep you motivated. If you think starting with Python will increase your chances of success, then take advantage of it. You don't have to start with C because you think that's what all the real programmers start with. The people who say stuff like that have usually never written anything past hello world. Once you know how to program, you can learn pretty much any language but you're obviously going to find it much easier to learn C if you can already program. You're more likely to succeed at learning C because you'll already have the discipline and programming experience to deal with it. There's no right or wrong way. C itself is not a huge language but what's the point of knowing a language if you can't actually solve problems with it and create anything cool, useful or interesting?
2 of 37
21
Do not try to learn C before learning something a bit more readable like python, or at the bare minimum, C++. I promise you'll just be confused and will get lost in the weeds unless you're following a curriculum from a university.
🌐
Reddit
reddit.com › r/learnprogramming › i should’ve bit the bullet and learned a language like c first instead of python.
r/learnprogramming on Reddit: I should’ve bit the bullet and learned a language like C first instead of Python.
August 19, 2024 -

So the reason I say that is I learned some rust and then just jumped to C after deciding to test my hand in embedded.

Now the thing is I had always pushed off learning C after I put 0.1% brain effort into it a couple of years ago and the syntax of the for loops threw my for a loop and nobody gave the (surprisingly simple) execution flow of the for loops so I gave up and went back to learning more python libraries.

Well fast forward to now and I wish I would’ve just bit the bullet and learned C. For the reason that I feel like I just learned programming all over again languages like Python and JavaScript just give you such an abstracted top level view of everything you build these “false narratives” in your head about how things work and treat programming like instructions going in a magic box and giving you what you want l.

So now Ive just been over here unlearning many a many of bad programming practices while I’m learning a whole lot of new ideas.

But the thing is it’s not extremely hard. It just requires you to take things slower and if I would’ve just been a bit more patient back in the day I would probably have had an easier time then than I do now.

So yeah to anyone that’s new I do recommend you try your hand in some compiled language to start off with some stronger fundamentals than I have been left with for 3 years now.

That’s about it, how does anyone else feel about the topic I’m just venting because I wish I hadn’t had Python shoved down my throat by every YouTuber and blogpost and everybody lol.

🌐
Reddit
reddit.com › r/learnprogramming › learn c or python first?
r/learnprogramming on Reddit: Learn C or Python first?
November 5, 2024 -

Hi All,

Bit of background first:

I'm 4 weeks into an intensive 9-month bootcamp. It's mostly self-taught with a new topic every week. Students are required to read some resources, then do some self-learning and complete coding tasks (roughly 30 coding tasks a week so far) and then run them through a checker to pass the task. It's supposed to be fulltime study, however I need to work fulltime and can only dedicate after work hours and weekends to study.

The first 3ish months are all in C and I can already see that I'm doing the tasks and not really understanding what I am doing. After C, we learn Python, SQL, Javascript and a few more topics. I have spoken with quite a few past students who have given feedback that the course is intense, it's hard to study and do fulltime work and some have said its best if you have some coding experience before doing the bootcamp. Most students are in class working through the tasks together, while I am mostly doing it by myself.

Lastly, the reason for doing the course is because the school have good networking opportunities and really help with trying to get a job when you finish. At this stage I am unsure if I want to do data analytics or software engineering.

My questions are:

  1. If I am struggling to learn C, should I push through the course and hope I understand things better when learning Python?

  2. Should I stop the course, take a few months to go learn C at my own pace with some free courses and then reenroll in the bootcamp early next year with a better understanding?

  3. Like point 2, but should I go learn Python first to help me understand the concepts better and then maybe do some C, before reenrolling in the bootcamp?

Top answer
1 of 25
23
Understanding C or any programming language can take time. You are only 4 weeks in. I was really struggling with programming in the university and now I'm leading software projects. So It really depends on your level but if you can code basic things then I wouldn't stop the course. Python is also a lot easier than C.
2 of 25
4
Okay, here's what I've gathered: You're taking a program meant to be done full time, but you also work full time. Most students are working through the intense problems together, but you're not. You're struggling Alright, well, I think you've identified the problem and its likely causes. So now we need to discuss how to fix it. You've suggested: Keep going, but also learn more programming languages in addition. Quit, learn some programming on your own, and then do the program again, hopefully to do better Both of those options are kind of silly. If you're struggling because you don't have enough time, staying on the same course but also learning even more stuff at the same time does not seem like a good plan. And if you were great at learning to program on your own, why did you sign up for a bootcamp in the first place? Here're my suggestions: Try to find people to work with on the assignments together. Most people are doing that, it will save you time, and it will help you learn better (either by explaining things to others, or by having them explain things to you). Plus, you said networking was your goal. You network by meeting with and working with other people. Identify what SPECIFICALLY you're having trouble with. Is it how functions work? Pointers? Are you able to read a program and explain what it does but you have trouble crafting an algorithm? Write down the things you don't understand and need help with, and seek out help with those specific things. The early programming concepts stack; you really can't skip any and continue forward without difficulty. Talk to your teachers and TAs or whatever about your concerns. They can offer the best advice about whether you should quit or what extra study you might do.
🌐
Sololearn
sololearn.com › en › Discuss › 281291 › solved-what-should-i-learn-first-c-or-python
[Solved] What should I learn first, C or Python? | Sololearn: Learn to code for FREE!
I think you should start to learn Python, then C. Python is very easy to understand because it is not needed for you to have basic programming skills before learning. At first I started C++ but soon understood that it is too hard for those who ...
🌐
Reddit
reddit.com › r/learnprogramming › total beginner first language c or c++ ;; the first impression of c/c++ over the ease of learning with python seems to be an advantage is this true, is solidifying harder concepts more important than the ease of learning?
r/learnprogramming on Reddit: Total beginner first language C or C++ ;; the first impression of C/C++ over the ease of learning with python seems to be an advantage is this true, is solidifying harder concepts more important than the ease of learning?
December 22, 2025 -

First off I might not have entirely correct ideas as I'm a complete beginner but I'd like some help deciding exactly what language to start with, and any free locations to start that you believe are the best are very much appreciated a lot.

So as it says total beginner. I want to choose C or C++ over python. What I've found looking at a lot C++ vs Python first questions on this reddit is that, Python makes it easier to pick up programming in general, but if you're willing to take the harder start then it's way more beneficial to your long term understanding of coding to learn C/C++ first because your brain solidifies good traits that are really hard to relearn from python.

If any one has any comments on this specific parity that'd be cool. The formatting of Python also seems to be a cheat that isn't as healthy as having your base reference in C/C++'s symbolic referencing over indentation.

My real question because it does seem C style is better for long term than python first and I intend to learn both, is it best to learn C or C++? It appears C and Python are around the same learning time and C++ is way longer than learning C. Should I do C first then Python to get the benefits of understanding C style code with Python's greater utility and universal usage, or should I tough it out and do C++ , which I guess is extended C, then Python? So essentially my perspective is C is much shorter and faster to learn, but C++ has much more use case, despite the fact they both equally prime you for more "close to the metal" thought than high abstract languages like python, what's more worth it first?

Thank you

TLDR; I think the first impression and perspective solidifying advantages of C and C++ beats the ease of introduction with Python for first language, thoughts? And should I learn C or C++ before Python?

Top answer
1 of 10
19
C is a small simple language where you have to build many things yourself. In practice you'll use libraries such as glib. C++ is a remarkably complex language that nevertheless is probably the most overall useful compiled language. The modern standards clear up a lot of the issues of earlier versions so there are less footguns. Python is a super useful, clean and abstract language as long as you don't need the performance of native code. If you do, it is possible to write performance critical parts in C. I have never really bought the idea that somehow you need to learn things the hard way in C. Python also has the basic structures of C and then some, and gets you solving actual problems faster. Stuff like pointer arithmetic is not as magical as it's made to be.
2 of 10
7
but if you're willing to take the harder start then it's way more beneficial to your long term understanding of coding to learn C/C++ first because your brain solidifies good traits that are really hard to relearn from python. Nonsense IMO. You can learn C after you learn Python, and the same knowledge will end up in your head as if you did it the other way round. A good programmer is in any case flexible and can adapt to new paradigms and new idioms. The importance of "habits" and what language is your first is way overestimated. You'll be fine either way. The formatting of Python also seems to be a cheat that isn't as healthy as having your base reference in C/C++'s symbolic referencing over indentation. What does "symbolic referencing" mean here, like, braces? They don't matter. You can learn and get used to both syntaxes, this idea that you're permanently fixing one way as your "base reference" (???) by doing it first and that one is more "healthy" than the other is again pure nonsense, worse than before. This is basically superstition at this point.
🌐
Reddit
reddit.com › r/learnprogramming › c/c++ or python, which one to start with in 2024?
r/learnprogramming on Reddit: C/C++ or Python, which one to start with in 2024?
January 29, 2024 -

Hi all, it’s the same old question, which language should you start with as someone new to the world of programming.

Typical at university level in engineering majors (Electrical Engineering) you are usually taught C. Thats where i got introduced to programming for the first time. But the way universities are structured, it’s not always the best place to learn programming especially in a non-CS major.

Long story short, I find myself with this passion to dive deep and actually understands what programming is not just a language, but as they say, you have to start somewhere, hence the title statement, where do you start from in 2024?

I narrowed down these options as Python seems to be the most beginner friendly language whereas a languages like C/C++ has always been regarded as the languages to under to understand every other language with ease and especially to really understand the “source code” to programming itself.

Appreciate any advice/experiences, thanks!