Should I learn Python with GPT?
Hey guys how do i start learning python?
12 comments
Try this instead:
https://learnpythonthehardway.org/
LLMs will give you an uncertain percentage of wrong answers. It’s like having a teacher that lies to you and doesn’t know when they are lying and has zero understanding of the information they give you.
https://learnpythonthehardway.org/
LLMs will give you an uncertain percentage of wrong answers. It’s like having a teacher that lies to you and doesn’t know when they are lying and has zero understanding of the information they give you.
Someone I know has been doing this: https://x.com/deviorobert/status/1827530330208702620
Full text - "Started just following tutorials and reading a lot, then I'd want to expand on things so I'd give it the code I had, told it what I needed to do and then asked it to explain the new code to me.
It does a great job of basically writing you a tutorial tailored to your exact needs.
Then over time it just becomes easier to spot things yourself and edit/fix things you didn't even know existed a week beforehand.
Structurally it's so much nicer to look at than PHP+HTML too which is nice coming from WP dev.
Plus I needed to pick a language to learn for building my own security tools, etc and Python is perfect for it.
Too many upsides for me to ever write it off as a fad.
Learning to ask the right questions takes it from a fun toy to a Sr dev that teaches you, and a Jr dev that does the tedious things for you.
I could never go back to the way it was before
Google searches and stack overflow walked so AI could run "
Full text - "Started just following tutorials and reading a lot, then I'd want to expand on things so I'd give it the code I had, told it what I needed to do and then asked it to explain the new code to me.
It does a great job of basically writing you a tutorial tailored to your exact needs.
Then over time it just becomes easier to spot things yourself and edit/fix things you didn't even know existed a week beforehand.
Structurally it's so much nicer to look at than PHP+HTML too which is nice coming from WP dev.
Plus I needed to pick a language to learn for building my own security tools, etc and Python is perfect for it.
Too many upsides for me to ever write it off as a fad.
Learning to ask the right questions takes it from a fun toy to a Sr dev that teaches you, and a Jr dev that does the tedious things for you.
I could never go back to the way it was before
Google searches and stack overflow walked so AI could run "
I went from zero to hero with phind.com from last year September because my role change required it.
It was a great experience as I usually knew what I wanted to do but did not know how to do it. So I just asked for solutions as I would from a junior then reviewed the responses and learned a ton.
There were more complicated things where a long blog post helped much more when learning about multiprocessing eg. "what is GIL and what is the historical background of it" is simply not a question one asks about python while in learning phase :) Another board topic where I guess I failed to ask the right questions was setting up the dev environment with venv and requirements.txt and whatnot. I needed multiple blog posts and other humans for that.
It was also quite bad at deciding if a language feature is available or not in a given python version, I always needed to rtfm for that.
It was a great experience as I usually knew what I wanted to do but did not know how to do it. So I just asked for solutions as I would from a junior then reviewed the responses and learned a ton.
There were more complicated things where a long blog post helped much more when learning about multiprocessing eg. "what is GIL and what is the historical background of it" is simply not a question one asks about python while in learning phase :) Another board topic where I guess I failed to ask the right questions was setting up the dev environment with venv and requirements.txt and whatnot. I needed multiple blog posts and other humans for that.
It was also quite bad at deciding if a language feature is available or not in a given python version, I always needed to rtfm for that.
Chatbots are great to do initial research, but I often find them a little convoluted and unstructured when learning something like a programming language (I tried learning assembly through it). You can often end up missing out some important bits.
So to learn, it really depends where you're starting.
If you have programming experience in another language, this is a great starting point from Tech With Tim (https://www.youtube.com/watch?v=VchuKL44s6E).
If you've never programmed before, this one can be a bit more accessible (but is still very brief and concise) - (https://www.youtube.com/watch?v=kqtD5dpn9C8).
A good roadmap once you have the fundamentals can be found here (https://www.youtube.com/watch?v=St48epdRDZw).
So to learn, it really depends where you're starting.
If you have programming experience in another language, this is a great starting point from Tech With Tim (https://www.youtube.com/watch?v=VchuKL44s6E).
If you've never programmed before, this one can be a bit more accessible (but is still very brief and concise) - (https://www.youtube.com/watch?v=kqtD5dpn9C8).
A good roadmap once you have the fundamentals can be found here (https://www.youtube.com/watch?v=St48epdRDZw).
https://docs.python.org/3/
Start with offical docs.
Start with offical docs.
If you're starting out, often going straight into the docs can be quite daunting. However on the Python docs there is this page with some useful links: https://wiki.python.org/moin/BeginnersGuide
Type 'python koans' into google and pick whichever floats your boat
I would use a book or internet tutorials and just start building simple programs. Even better is to write a simple program and then just keep it extending it as you try out new things. Eventually you will get confident enough to be able to use this as the starting point for real projects.
The key is to learn by doing.
Good luck
It's important to understand that large-language models like ChatGPT do not "think" about the prompt and do not in any meaningful sense "understand" the result they give you. No matter how sophisticated they get, fundamentally they are still computer programs - systems for choosing words (and code fragments) that look right next to each other, according to some inferred rules. They are not driven by will or consciousness. You might be able to get ChatGPT to "tell" you (produce textual output) that it's intelligent and has feelings, but this is just as meaningless as if a book were titled "I am Intelligent and Have Feelings".
Or as Angela Collier puts it, AI does not exist (https://www.youtube.com/watch?v=EUrOxh_0leE).
Such programs also often output things that are completely wrong and have no basis in reality, called "AI hallucinations", and as a beginner you are in no position to identify them. This is dangerous, because you can learn wrong things with no way to know that they're wrong. It could take a very long time for you to figure out the mistake, at which point a bad habit may already be ingrained. Responsible human teachers know what's technically correct, and will proactively warn that they're making a simplification - and will certainly not make something up just because it sounds right in context.
Learning Python is not fundamentally different from learning any other programming language, which in turn is not significantly different from learning anything at all. You must start with fundamentals and be guided through them in a reasonable order; at a certain point there are many other lower-difficulty things which you then learn in any order, and you should choose from those according to your own interests.
However, learning your first programming language (no matter what you choose) is fundamentally different from every other programming language you learn - because you must also learn how programming works. Unfortunately, there is really no good way to learn that "in a vacuum", independently from actually choosing and using a programming language.
The community of "regulars" for Python questions on Stack Overflow (of which I consider myself part) has some advice at https://sopython.com/wiki/What_tutorial_should_I_read%3F . I wish to echo the last point: we strongly recommend against LPTHW ("learn python the hard way"). The material is presented in a very awkward order; the instruction greatly overestimates the difficulty of some concepts and underestimates the difficulty of others (compared to feedback we've received, in the form of the literal millions of questions that have been asked about Python on Stack Overflow); and the author was strongly resistant to the Python 3 migration for very ill-considered reasons disconnected from the facts of the situation (see e.g. https://eev.ee/blog/2016/11/23/a-rebuttal-for-python-3/ - note that this link is from 2016; support for Python 2.x ended in 2020.). Further, the course is written with the assumption that you're comfortable with the command line, even though it's intended for people who haven't learned other programming languages before, and tries to use strained command-line metaphors that won't land properly for many beginners.
Or as Angela Collier puts it, AI does not exist (https://www.youtube.com/watch?v=EUrOxh_0leE).
Such programs also often output things that are completely wrong and have no basis in reality, called "AI hallucinations", and as a beginner you are in no position to identify them. This is dangerous, because you can learn wrong things with no way to know that they're wrong. It could take a very long time for you to figure out the mistake, at which point a bad habit may already be ingrained. Responsible human teachers know what's technically correct, and will proactively warn that they're making a simplification - and will certainly not make something up just because it sounds right in context.
Learning Python is not fundamentally different from learning any other programming language, which in turn is not significantly different from learning anything at all. You must start with fundamentals and be guided through them in a reasonable order; at a certain point there are many other lower-difficulty things which you then learn in any order, and you should choose from those according to your own interests.
However, learning your first programming language (no matter what you choose) is fundamentally different from every other programming language you learn - because you must also learn how programming works. Unfortunately, there is really no good way to learn that "in a vacuum", independently from actually choosing and using a programming language.
The community of "regulars" for Python questions on Stack Overflow (of which I consider myself part) has some advice at https://sopython.com/wiki/What_tutorial_should_I_read%3F . I wish to echo the last point: we strongly recommend against LPTHW ("learn python the hard way"). The material is presented in a very awkward order; the instruction greatly overestimates the difficulty of some concepts and underestimates the difficulty of others (compared to feedback we've received, in the form of the literal millions of questions that have been asked about Python on Stack Overflow); and the author was strongly resistant to the Python 3 migration for very ill-considered reasons disconnected from the facts of the situation (see e.g. https://eev.ee/blog/2016/11/23/a-rebuttal-for-python-3/ - note that this link is from 2016; support for Python 2.x ended in 2020.). Further, the course is written with the assumption that you're comfortable with the command line, even though it's intended for people who haven't learned other programming languages before, and tries to use strained command-line metaphors that won't land properly for many beginners.
> It's important to understand that large-language models like ChatGPT do not "think" about the prompt and do not in any meaningful sense "understand" the result they give you.
LLM/MLMs are human intelligence as a service. With enough context memory (think terabytes, petabytes) and a well-engineered system, it can simulate artificial intelligence in a way that humans wouldn't be able to distinguish. And it could program itself to improve in ways that me, you and Angela Collier have no possible way to know. Dismissing AI makes some people feel smarter, I think this is dumb. Your reply, for example, looks generated by ChatGPT (similar structure, it is long and gets repetitive).
LLM/MLMs are human intelligence as a service. With enough context memory (think terabytes, petabytes) and a well-engineered system, it can simulate artificial intelligence in a way that humans wouldn't be able to distinguish. And it could program itself to improve in ways that me, you and Angela Collier have no possible way to know. Dismissing AI makes some people feel smarter, I think this is dumb. Your reply, for example, looks generated by ChatGPT (similar structure, it is long and gets repetitive).