I have realised that all my life I have just sat through hundreds of Python courses without actually gaining anything of value. How did you become proficient in Python where you reached a stage where you were able to accomplish something outside of what is taught in a course?
I see people always automating stuff using Python, writing scripts, bots etc to perform functions they want. How do I reach that level? How do I come out of the loop of just going through courses?
Hello everyone, I'm an undergraduate physics major doing a minor in computer science. I'm interested in getting into the AI sphere but have almost no knowledge right now. From what I can see mastering the ability to write code and problem solve is extremely important for AI development. So for someone like me who's main focus is physics and not CS is it possible to "master" coding on python or other sources? Or is coding a skill without a ceiling that people keep improving at? Also if you had to go back to the start of ur journey with python or coding in general where would you go to learn? Which youtubers, books or courses would you use?
I can see mastering the ability to write code and problem solve is extremely important for AI development.
Well, they are core skills for anyone in software development no matter what area.
is coding a skill without a ceiling that people keep improving at
Pretty much. A python programmer who is proficient in one area will have to learn new things when moving to an unrelated area.
I had written a good answer, but my cell phone battery ended :S Here's a summarized version from what I remember (all of this is my opinion, Tthere are no "right" answers here):
-
There's no theoretical ceiling in how good of a programmer you can be
-
There's a point where you become "fluent" and can write in a language with ease (much like learning a spoken language)
-
There's a skill that involves "developing" programs. Think fluency like being able to express your ideas, think "development" as being able to create larger or more complex ideas "on paper".
-
I believe that using AI can benefit from fluency, but it's not required.
-
I believe that developing AI programs (for example, writing tensorflow) needs fluency and at least a bit of the "development" skill (the need for such may be offset by the people that you work with)
-
Remember that AI, data, machine learning are separate from programming (maybe a Math/Physics or Physics/Engineering comparison is apt)
-
An important thing is that you don't need to gain fluency and then go do stuff. I gained fluency while doing stuff (and I believe most people are like that too). Of course, a structured course might help to pin down the basics (I recommend the book Python Crash Course, about youtubers/courses, I don't know).
All the best!
Videos
Will you guys provide me any guidance on how to achieve mastery in Python. I have 2-3 months and I plan to give daily 1hr to the Python. Are there any specific YouTube videos, courses, or websites you want me to try or recommend? I am a beginner with basic knowledge of Python.
Currently I am a third-year CS student specializing in Cyber Security. My brother insists that coding is essential for this field. Although tbh I don't like coding, but now I have decided to do this and focus on mastering Python during this vacation !
I just need some guidance or tips! :)
I was asked during an interview yesterday "on a rank of 1 through 10, 10 being an expert on python, where would I rank myself?" It got me thinking that how/what is that scale not just for me, but for the rest of the python community.
Personally, I see 10 as the creator and python (the actual language) development community since they know the ins and outs (they wrote it). People that have written successful frameworks like Flask and Django or libraries like numpy and scipy would also be on the 10 side. I see beginners as those that have just finished a beginner python course online that go through the basic fundamentals of programming (print, for loops, if statements, methods, and maybe classes/inheritance).
However, for the numbers in between, I don't really have a scale or metric for them.
What should I be doing to even consider myself a "level 5" developer?
Should I have projects in various forms of python: web dev, c level, data science, etc.
Or, are there specific methods and tricks in python that I should know?
I have roughly 4 years of experience writing python code. I have made projects spanning a few thousand lines of code. However, I realize I write python like a 10 year old writes english. It does the job, but there are more efficient and elegant ways to write it.
I want to learn AI and also write software related to robotics in the future, but before I delve deeper into that, I wanted to improve my style of writing python. After much research I narrowed my decision to Fluent python book and Advanced Python Mastery course both linked below.
https://www.oreilly.com/library/view/fluent-python-2nd/9781492056348/
https://github.com/dabeaz-course/python-mastery?tab=readme-ov-file
I in fact read the first 3 chapters of the first book and have skimmed through the other course. However, reading and coding from the book is taking too long, and I am not sure if all of that is more than I need. On the other hand, the course seems superficial (I might be wrong) and a bit outdated too (its specific to python 3.6, excludes certain features like pattern matching too).
All I want to know is should I spend time and finish the fluent python book (cause I don't know which chapters are immediately relevant and which aren't) or should I read the Advanced python mastery course material instead (and risk losing out on some necessary insights into the language)? Or is there another better way to improve my python (go from beginner to advanced, say)? I am looking to finish whatever resource I use in around 30-50 hours.
I have started to learn python via brocodes 12 hour guide on youtube. However i know its just basics and beginner level. What do i do after watching that guide? I dont know which things to learn i have heard web scraping and all this stuff but can i learn that from guides and which guides?
Hello everyone,
I am a fresh graduate in economics, but I lack technical ability for helping me get a decent job.
As a result i decided to try and ,earn python on my own, however, I have struggled to learn python in a cohesive manner and am just not comfortable.
Mosh's video on python programming for beginners is wildly popular on youtube, but on going through his website I realised he offers a paid course for python mastery which includes topics missing in the video.
Do you think its worth it to enroll in the same?
If not, can anyone help me guide and establish a python learning plan with detailed resources?
Thank you.
Mosh does have a popular youtube channel. But IMO, that style of learning just doesn't fare well with learning to code. Learn in one videos or the like really don't ask you to do anything but watch. And what does watching do? Not much.
What someone really needs to do is exercises and lots of typing up code.
I always recommend Zed Shaw's book, Learn Python 3 the Hard Way. Lots of typing and exercises that build upon themselves. Some people like his style, some don't. But it can help forge a solid foundation to build everything else from. If anything, it helps you with muscle memory for typing up python.
The only paid course(which you can also audit for free) that I can recommend right now is Google's IT Automation with Python. The quality of the content is quite good, but you will want to take notes and practice what you've learned as it moves on quickly without cementing the topics in your brain. It teaches you basic python, scripting, the linux CLI(bash), regex, working with CSV files, testing, problem solving, etc.. Again, it's a good course for foundation building and it will expand your horizons to what's possible and give you some exposure to Bash.
Beyond that, Arjan Codes and Corey Schaefer are solid YouTube channels to follow. Good examples and lots of topics. They don't do the learn in one videos like Mosh or Derek Banas.
Books are your friend. O'riely books are great, Packt is hit or miss, and titles like Fluent Ptyhon and Automate the Boring Stuff with Python are recommended often.
You are not the first to ask a similar question, so take some time to search this sub for folks that have wondered the same. Also, if you have discord, I highly recommend the Python Discord server as there are lots of helpful people on there for any of your python coding needs.
So, my suggestion is to maybe look at other options first that do not cost any money.
Cheers!
I don't know about Mosh' course but I would recommend Automate the boring stuff with Python as it project based and you get to improve a lot by doing the exercises. You should always apply what you learn so a good learning plan is anchored around what you want to achieve and where do you want to go with Python. I think automate the boring stuff is a good starting point though wherever you go.
If I put "mastery" of Python on my resume and as a result my interviewer is chosen to be someone who knows Python infinitely well, what might they ask me about to test my so-called mastery?
Something like this I've heard about is the GIL (global interpreter lock). What are some others?
Hello the self taught people of Python, What courses did you take to learn Python? I'm thinking about buying the "100 Days of Code: The Complete Python Pro Bootcamp" by Angela Yu. To the people who finished the course, is it worth it? How far did this course get you? Do you recommend any other paid or free courses instead or in addition to this course?
Edit: Wow this was almost a month ago. I ended up buying Angela Yu's course and am now learning python. I am nearly 20 days into the program at this point. It's been great. I am truly blown away by how kind and welcoming this community is. Thank you all so very much.
Edit 2 (8/8/24): Its now been 3 months ish. I finished Angela Yu's course up until day 50, after that it was really all project ideas and no learning basic python. I've moved on to web development and I'm learning HTML, CSS, and JavaScript, and some other popular frameworks. The course I bought was colt Steeles web dev course. If it all goes well hopefully Ill keep updating this every couple months just to see how far I've come, its always fun to look back.
Edit 3 (4/9/25): It’s been 4 months since that last update, I’m still working on web development and everything’s been going great.
Hi everyone, I'm sorry if this is a stupid question. Currently I know how to write code in Python and C/C++, but I'm not really "proficient" in either one. I want to take my understanding of one of these languages further, but I can't decide which. Everyone I've ever talked to has told me "stay with c++, it's the best, it's the fastest during runtime" which doesn't actually explain anything to me. I hope to one day be employed as a software engineer and I certainly want to make my resume as appealing as I can. So if I don't yet know exactly what type of software I want to write, should I learn Python because of its rapid development time or should I continue to try to master c++ because it's the "proper" way to do things? also as a follow up question which frameworks tend to dominate the industry within each language? Every time I learn a new framework someone tells me "this isn't used in actual development, it's not going to be impressive on a resume" which is scaring me and making me feel like I'm wasting my time. I just feel like I have no idea how to prepare for my eventual career and by the time I get there it will be too late and I won't know what I need.
Tldr: everyone says "if you learn c++ you'll always have a job" is something similar true for python? Does Python have strong footing in the software industry?
I've been learning Python for a year now. As a front end developer moving to the back end, this language has been the most influential in my transition. I more or less fell in love with Python.
What I would like to know is your answer to a kind of question I haven't quite seen in other forums. I'm not really a beginner anymore, sometime I feel like I know nothing but in reality I know a good amount, just not enough. I don't want to know how to quickly learn Python. What Id like is to know your opinion about, this:
What are the steps you would recommend to a Python developer, from apprenticeship to master, in order that one keeps improving, becoming a better and better Python coder, one step at a time?
Suggestions I'd like to see:
What topics do you think are important for intermediate and advanced study
What books would you recommend and are there any particular sections to give extra attention to
Websites you find beneficial for keeping up to date and continually learning
Courses paid or free that are not meant for beginners
Project ideas meant for intermediate or advanced developers(what would you work on?)
Finally for any Python Masters out there, could please share what you would consider is good road-map to follow from beginner to master, Either what you did, or what you now think would have been the best path.
I really care about knowing your opinion on what exactly one should pay attention to, at various stages, in order to keep progressing. I like Python I want to Master it, I also know no two paths will be the same, but I still would like to know what others have done to accomplish this.
Thanks in advance! I know this was a lot to read.
Stepwise Python Learning Tutorial. Specifically oriented towards a financial/data analyst/accounting profession and a more visual learner.
Our Goal:
Learn Python and programming basics, Numpy, Pandas (data manipulation), various forms of data analysis, Plotly Express (visualisation), work automation and web scraping
Downloading Anaconda from this website:
https://www.anaconda.com/download
2. Downloading VS Code from this:
https://code.visualstudio.com/download
3. Watching this video and learning how to set up a Python Virtual Environment.
This video might feel a bit daunting, but it's important to learn to be able to start a virtual environment before starting any Python Course or other videos (I think). Video link:
https://youtu.be/28eLP22SMTA?si=O0bG3NU4JDu8tLcL
4. Watching the updated Python Basics Tutorial from Bro Code. Up to 9 hour 20 minute mark. All of the games and exercises he gives SHOULD be practised by oneself individually before seeing the solution provided by him. This is the most clean python tutorial I could find searching through Udemy, Coursera and YouTube.
https://youtu.be/ix9cRaBkVe0?si=Pbz7sgWHBQPQYH4p
Watching and practicing this till 9 hour 20 will teach us the very basic concepts of Python, but will not be enough for our purpose of data analytics and data manipulation.
ONLY if there is any confusion remaining regarding object oriented programming even after watching this, then this below playlist from Corey Schafer:
https://youtu.be/ZDa-Z5JzLYM?si=rgFBi3MbUcfJtjiA
5. Next, we will enter the nitty gritty details and packages regarding using Python as a financial and business analyst. We will follow this course from IBM. We can earn certification too if we want to here, but that's optional and not necessary.
Learn ONLY Module 4 and Module 5 from this course, previous modules have been better explained by the mentioned videos.
https://cognitiveclass.ai/courses/python-for-data-science
Learning goal: NumPy and Pandas
If you feel that these 2 modules were not enough to make you learn Pandas and ONLY if you feel that, then, this Playlist by Alex the Analyst should suffice:
https://www.youtube.com/watch?v=dUpyC40cF6Q&list=PLUaB-1hjhk8GZOuylZqLz-Qt9RIdZZMBE
6. Next, a more theory based learning, which we already have some ideas about, so, this won't be too difficult. Basically, we will learn some of the core elements we use for data analytics through Python.
https://cognitiveclass.ai/courses/data-analysis-python
All the modules are required. Certification is also possible.
To test your skills up to the 6 components we have learnt, take the free tasks that's required to be submitted for receiving certification in data analytics in FreeCodeCamp.
https://www.freecodecamp.org/learn/data-analysis-with-python/
This is a necessary step. Should not be ignored.
7. Congratulations, you have learnt the very basics on performing data analytics using python. But now you want to showcase your analytics skill, because a picture is better than a thousand words. So, we will learn that, we will learn Plotly Express. Also, Matplotlib and Seaborn if you want to be full proof in all situations.
BUT, you haven't still developed one of the key aspects that's necessary for learning. That is, reading documentation and solving issues based on the circumstances you are given and the library you have to work with without any tutorial explicitly driving you.
So, with these two goals in mind, we will use the documentation of Plotly Express, which is extremely clearly documented and nicely written.
Getting a good visual using Plotly Express is pretty easy unlike Matplotlib. So, will start with that:
https://plotly.com/python/plotly-express/
Go to this link. In this link, some of the basic visualization techniques have been listed like this:
-Basics: scatter, line, area, bar, funnel, timeline
-Part-of-Whole: pie, sunburst, treemap, icicle, funnel_area
-1D Distributions: histogram, box, violin, strip, ecdf
.......continued
Click each of the links and learn how to create each of the them on your own pace and challenge yourself by building/using any datasets you already have along with the default dataset example Plotly already gives you.
If you feel like learning more about Plotly (Plotly Express's boss), this will help you out:
https://www.youtube.com/watch?v=GGL6U0k8WYA&t=241s
Now, while Plotly (and its truncated version Plotly Express and the above) is almost the most complete package there is for data visualization in Python, most courses and other users are more familiar with two very different libraries. Matplotlib and Seaborn (which uses Matplotlib as the base).
So, you might wanna learn this just in case. It's going to be more complicated as Matplotlib is unpythonic and is actually more close to MATLAB's language structure. But, oh well. What can you do.
https://cognitiveclass.ai/courses/data-visualization-python
Follow all of the modules in the above course and for a clean view of Seaborn, follow the below course:
https://www.youtube.com/watch?v=6GUZXDef2U0
This should be enough.
8. We are almost there! We just need fill in some of the gaps we may or may not have. So, we might need to do some scraping (by now, we should be familiar with "requests" library) and might need some dedicated help regarding this. So, we will learn beautifulsoup and requests in a little more details. For this, this video:
https://www.youtube.com/watch?v=XVv6mJpFOb0
If we are gonna need Machine Learning and related knowledge for python related stuff, the below course should work as a starting point:
https://cognitiveclass.ai/courses/machine-learning-with-python
If you are going to be very financial and other analysis oriented individual, some of the playlists by Matthew William Roesener, CFA on Monte Carlo Simulation, building optimal portfolio using python may be helpful, but by now, you already should have enough understanding of Python to be able to do these things on your own.
https://www.youtube.com/@matthewroesener/playlists
If you want to automate everyday tasks, and want to get ideas on how to do that, you can watch the below 2 videos
https://www.youtube.com/watch?v=PXMJ6FS7llk
https://www.youtube.com/watch?v=s8XjEuplx_U
Also, whatever process you have to do regularly and consumes a lot of time, there is a good chance you can automate that on your own if you try.
That's some of the edge cases one might come up in their workplaces that I could think of. You can now perform your own searching and utilise your learning journey on your own.
Keep on creating projects, use it
Congratulations! You have now filled almost all of the angle you might need to use python as a daily driver for your data analysis journey.
Now, let's talk about some of the reaching goals, like goals you wouldn't likely need for Python or other stuff, but may just be nice to have.
(i) Learning SQL. SQL is incredibly helpful, incredibly. So, it might just be worth your time.
https://youtu.be/ztHopE5Wnpc?si=GTS2T8VSjF6r3y1v
The above video will give you a conceptual framework about SQL.
And the below video will give you a lesson on working on MS Sql Server:
https://www.youtube.com/watch?v=LGTbdjoEBVM
Database Star's below playlist about database design will give you an idea about how to build/structure/work with different types of database:
https://www.youtube.com/watch?v=-C2olg3SfvU&list=PLZDOU071E4v6epq3GS0IqZicZc3xwwBN_
Also, his database setup related playlist in docker was incredibly helpful to me. Given below:
https://www.youtube.com/watch?v=OTglm9fVCL4&list=PLZDOU071E4v7UbgZMsnn5SZvk1GIAuLcX
(ii) Learning PowerBI/Tableau and some of the might also be incredibly valuable for your career.
For this, this playlist especially about some of the Microsoft Power Tools might be helpful to you:
https://www.youtube.com/watch?v=ja68xMpabQA&list=PLrRPvpgDmw0lAIQ6DPvSe_hfAraNhTvS4
Given that you have already learnt a programming language, it's not going to be too difficult for you to navigate through Power BI o your own, reading documentations an stuff.
I actually haven't used Tableau but I assume it's not going to be too different from Power BI.
(iii) Wanna go absolutely batshit crazy and maybe even develop your own programs just for the fun of it (maybe) for others and yourself. Learn Django (part of Python)
I am actually undergoing this right now. I don't know why I am learning this, but I can't stop somehow, so, yeah. I am following through this tutorial:
https://www.youtube.com/watch?v=o0XbHvKxw7Y&t=32609s
Note: I mostly still just use Excel in my job, so that's that. Also, the wiki page in this subreddit has been unbelievably helpful for me, with all of its projects, resources and pinpoint details. I just shared my journey with you all.
I’ve seen this question come up a lot so this is my 2 cents on it.
I think what most people mean by beginner programming (let me know if I’m wrong) is that they’ve learned the basic syntax.
There are a bunch things you can do after this, but really it’s up to you. So here are the suggestions:
1.) Learn more advanced topics - Multithreading, Sockets, Generics. Make a chat room to show off in your class
2.) Collaborate with a friend on a project - In the real world you usually have to work with a group. Some of my friends are working on a battleship game together
3.) Learn how to use libraries - Really useful so you don’t have to write a bunch of code yourself. Also let you do thinks you didn’t think were possible in Python. Some popular ones off the top of my head are tensorflow, numpy, pygame
Hope y’all found this post helpful
Where can I find 'beginner' python materials?
I'd say beginner programming extends much further beyond knowing syntax. You can build websites, do some basic AI scripting, and make a game with popular libraries, and they will work. But there will come a day when efficiency matters, and as such I'm of the opinion that everyone who is serious about their developer job should know data structures and algorithms. These concepts, when put in a 16 week course at university, acts as a great filter for computer science majors. But if you're learning on your own you don't have to worry about that (it's still going to be difficult, however).
Hi. I am a complete newbie to this field. I have zero programing experience. But I want to learn Python. Is Udemy's Python: zero to mastery course a good place to start. Or please recommend where and how to start learning Python.
So here's the thing, people - I wanna learn python mostly for data analytics, as I am an economics student. I'm a quick learner (and fine at logical thinking if that matters?) I don't wanna be wasting time. I can practice regularly.
I just need proper guidance on how I should do it. I can't seem to find a proper starting point.
Any advice? Or book recommendations? Any help would be appreciated. Thank you!
Hey guys, I really want to master Python. I have a basic understanding, but I sometimes struggle with implementing concepts properly. Could you help me by providing some online resources and tips for Python specifically required for data science?