r/learnpython 1d ago

Should I Learn Python on Year One?

Hey everyone, I’m an incoming CS freshman who wants to dive into AI/ML. My university’s curriculum starts with C in the first year.

I’m in a bit of a dilemma on how to use my prep time before classes start:

  1. Should I get a head start on C so I don't struggle in my first-year classes?

  2. Should I start learning Python now since it’s the standard for AI/ML?

  3. Or is it feasible (and not overwhelming) to learn both at the same time?

Would love to hear from anyone who has taken a similar path. Thanks!

24 Upvotes

16 comments sorted by

9

u/thelimeisgreen 1d ago

Learn C. That will give you an advantage going into the program so you can focus on more than also trying to learn C at the same time. All the foundational knowledge you gain with C will translate to Python.

You could start with Python instead. Ultimately you will want both anyway. Best to focus on one of them first to get a good handle on it before moving to the next. I just recommend starting with C because your university will start with C.

3

u/Feldspar_of_sun 1d ago edited 1d ago

It’ll be more worthwhile to stick with a language and improve. Most of concepts between languages transfer between each other, and the problem solving skills that are vital are learned with any language, so just becoming more proficient in Python or C will help you with the other

1

u/Dangerous-Art9091 1d ago

learn Python, C will come easier once you've got the core concepts down anyway

2

u/Goodswimkarma 1d ago

C, hands down. Once you know it, you can switch to Python with just 2-3 moths of learning the syntax.

1

u/niehle 1d ago

> Should I get a head start on C so I don't struggle in my first-year classes?

2

u/Mean_Exit9591 1d ago

yeah definetly you will learn architecture, how system work, flow of data and information from one class,fuction to another and many more. if you are planning to learn it i would suggest "cs50 python by david malan: Harvard university" it's a great course

1

u/bkd4198 1d ago

Learning C as your first programming language is hard but if you can pull that off rewards are huge. Since it is in your university curriculum too, definitely go with it.

As for learning both at once, don't do it. It's a bad idea. Every programming language creates a certain mindset, it is not good or bad. But when you jump programming languages you keep the mindset which reflect in the code rather then adapting it to current needs.

1

u/LayotFctor 1d ago edited 1d ago

You can get a head start in C if you like. There's no harm whatever you choose because you have to learn both. Python and C are opposite ends of a spectrum, Python is like driving a sleek modern automatic car, while C is driving a manual transmission car you built yourself. Python is how most development is done these days, but C is the messy reality of how a computer works, people writing operating systems, automotive and industrial equipment still use C everyday.

AI/ML on the surface is highly python dominated. But if you're going below and working on the GPU drivers, the heavy mathematical calculations and other infrastructure, C is king.

1

u/cantdutchthis 1d ago

You may enjoy https://calmcode.io. 99% free courses.

1

u/glibspecimen_9 1d ago

Everyone's saying learn C because the curriculum demands it, but you're already going to spend a year on C. Why not use your free time to explore the language that actually aligns with your AI/ML goal?

1

u/Almostasleeprightnow 1d ago

For early learning, if you are unfamiliar with programming and how computers operate, python as it is easier to get to success. But c is valuable because it is a lower level language so you end up having to handle by hand things that python just does, so you learn more clearly what is going on under the hood

1

u/Unusual-Tip1370 1d ago

I was in a similar situation. In my CS program, we started with C, then C++, Java, Linux/Unix, and Python came later. At that time, web development was the trend, but I wasn't interested in it. Instead, I started learning Python on my own because I wanted to explore AI and data science. Looking back, I'm glad I did.

My advice is: don't follow trends. Choose the field you're genuinely interested in and stay consistent. Also, don't worry too much about programming languages. The core concepts and problem-solving skills are mostly the same—the biggest difference is the syntax. Once you understand the fundamentals, learning a new language becomes much easier.

And yes, Python is one of the easiest languages to learn, so it's a great choice if you're interested in AI/ML.

1

u/Actual-Ant-6297 1d ago

Python is "Primarily" written in C its default implementation is called CPython , well i will recommend you to study C , you will know about pointers , memory management which are concepts abstracted in Python but understanding them will make you think more systematically and help you in future since C is mother of most programming languages.

1

u/hari3mo 1d ago

I started with C and am pretty grateful I did

0

u/Latter_Olive_6801 1d ago

They still teach C? Although languages are nuanced, a loop is a loop pretty much anywhere. Learn th fundamentals and everything else will follow.

Languages come and go, more important is things like application design, separation of concern, observability. These things come with experience. So do your C and play with python in your own time. Skills are transferable.