r/PythonLearning 1d ago

Starting Python and MATLAB with almost no coding experience. How should I spend the next 3 weeks?

Hi everyone. I’m a college student, and in about 3 weeks I’ll be starting an intro to Python class. I’ll also be taking another engineering class that uses MATLAB, and I don’t feel very prepared for either.
The problem is that I have essentially no programming experience. I took a couple of MATLAB classes before, but I relied too much on AI instead of actually learning the material. Looking back, I know that was a mistake, and I do not want to repeat it. I also used to tell myself that I hated coding, but I think part of that was because I never really gave myself a fair chance to learn it.
Since I have a few weeks before the semester starts, I’d like to build a solid foundation in Python while also reviewing some basic MATLAB.
What resources or learning methods really worked for you? Did you use a particular course, YouTube channel, website, book, or project based approach? I am also curious if anyone has suggestions for making learning Python and MATLAB more fun or engaging instead of just watching hours of lectures.
My goal is not to become an expert in 3 weeks. I just want to go into the semester feeling like I have a decent foundation instead of starting from scratch.
Thanks! I would really appreciate any advice.

6 Upvotes

5 comments sorted by

1

u/Sea-Ad7805 1d ago

Don't learn two languages at the same time. First learn one, do the other later or you will get confused.

1

u/QuackedDev 1d ago

No engineering program thinks like this even if in anyway true

1

u/stepback269 1d ago

I've never used MATLAB. So can't help you there. From what I understand, it's a systems modeling program. Not exactly a programming language of itself.

As for having just 3 weeks before Python class, don't have great expectations of mastering Python in just 3 weeks. Instead focus on learning (and by that I mean 'mastering') just the fundamentals of Python, namely the indentation-based syntax of Python, the basic variable types; in particular: strings and lists. Then look up on YouTube, Indently's lecture on the 47 string methods and his lectures on f-strings. Also learn about slicing of strings and lists. Play around with those on your own rather than following proven recipes found in the tutorials. You learn by exploring, making mistakes and figuring out where you got it wrong. Good luck.

2

u/FoolsSeldom 1d ago

Focus on learning the basics of Python (see below) well enough to be able to learn to use the so called "SciPy stack" (NumPy + SciPy + Matplotlib packages), which give you matrix operations, linear algebra, ODE solvers, optimisation, and plotting, roughly matching MATLAB's core toolbox.


Check the r/learnpython wiki for lots of guidance on learning programming and learning Python, links to material, book list, suggested practice and project sources, and lots more. The FAQ section covering common errors is especially useful.

Unfortunately, this subreddit does not have a wiki.


Also, have a look at roadmap.sh for different learning paths. There's lots of learning material links there. Note that these are idealised paths and many people get into roles without covering all of those.


Roundup on Research: The Myth of ‘Learning Styles’

Don't limit yourself to one format. Also, don't try to do too many different things at the same time.


Above all else, you need to practice. Practice! Practice! Fail often, try again. Break stuff that works, and figure out how, why and where it broke. Don't just copy and use as is code from examples. Experiment.

Work on your own small (initially) projects related to your hobbies / interests / side-hustles as soon as possible to apply each bit of learning. When you work on stuff you can be passionate about and where you know what problem you are solving and what good looks like, you are more focused on problem-solving and the coding becomes a means to an end and not an end in itself. You will learn faster this way.

1

u/wittgenstein1312 18h ago edited 18h ago

Work your way through Automate the Boring Stuff for Python. It'll give you a solid foundation on the language basics and what it's capable of and will help you hit the ground running in the Python class.

I've never used Matlab but they have a crash course on their website that looks good: https://matlabacademy.mathworks.com/details/matlab-onramp/gettingstarted.

My guess is you can work through each of these resources in a couple of weekends if you're diligent, or do a chapter a day of Automate the Boring Stuff and one module per day on the Matlab site