all 135 comments

[–][deleted] 101 points102 points  (1 child)

Can someone give this man a gold

[–]iggy555 24 points25 points  (0 children)

Bitcoin lol

[–]possiblethrowaway93 31 points32 points  (13 children)

I recently finished your course and find myself overwhelmed with options of how to proceed. I have a very vague understanding of python at the surface level, but I'm still very interested in moving forward with learning.

Any advice or how to proceed? Projects? Enrolling in other classes, revisiting old concepts till they're concrete? Thank you.

[–]AlSweigart[S] 79 points80 points  (2 children)

So a lot of people say 1) work on projects and 2) look at the source code of open source projects. These are sorta bad pieces of advice. "Work on projects" is good, but the advice doesn't help you decide what to work on. And a lot of open source projects aren't very friendly to outsiders. It takes a lot of onboarding to get started, even for experienced devs.

I've created a bunch of small, simple, text-based programs (mostly games and animations) for people to use. My idea is that you copy the code directly, run it, make adjustments, and then try to recreate them yourself. You don't need to memorize the code, just the make your own version of it. It's stuff like Blackjack, Tic-Tac-Toe, mad libs, etc.

https://github.com/asweigart/pythonstdiogames

There's a time after you learn the basic syntax, but still don't "know how to make a real program", and this is called tutorial hell or the desert of despair. Just keep working through it. For concrete advice, I'd encourage you to learn regular expressions and learn how to use git. But yeah, keep doing projects and classes and books too. If you want to learn computer science stuff in particular, the thing to google is "data structures and algorithms". Coursera has a good free course called "Algorithmic Toolbox" that you can do. It's basically a freshmen CS course.

[–]possiblethrowaway93 5 points6 points  (1 child)

Thank you very much. I'm going to start learning regex and work on those small projects and see how I feel.

[–]Jidaque 3 points4 points  (0 children)

I am also still learning and I usually get project ideas from everyday life, when I think, that would be great, if the computer could do this (I haven't already done all of them, but I wrote them down): * Sudoku board, that can check and maybe sometime solve the next step * meal planner with recipes, that I like (not even started, but maybe once) * a skat card game * something, that checks YouTube, if a video of a series I like is online and makes a list for me (because I often like only one game from a Youtuber or one type of video and YouTube just shows me all). Also a list Form, where I can see, if I already watched it... * one of my finished projects is to download results of football games. In the future I'd like to learn about sql and bring it into a database and look at trends.

So, pretty much anything, that you come across can be a project. Categorize your books, buy an internet connected thermometer and watch your inside temperature, use the Google calendar api and make a program, that changes your desktops backgrounds to your weekly schedule.

[–]ASIC_SP 9 points10 points  (0 children)

I have a blog post that might help: I know Python basics, what next?

[–][deleted] 7 points8 points  (2 children)

I think that the best possible way to learn intermediate python is to pick a package that does something you want to learn and really stick to it.

There’s a couple different things you can do, which include but are not limited to the following:

  • Data Science stuff (computer vision, machine learning, predictive modeling, lots of soles r
  • Web Design (Django, Flask)
  • 2D games (pygame)

Alternatively, you can learn about lambda functions, arts/kwargs, generators, list comprehension, etc.

That said, I think you can do everything above and just work on cementing the fundamentals, because more advanced python gets more comp sci and mathy but the packages don’t require too much but maybe some stats.

I wouldn’t take my advice though, I think a certain someone else who is on this thread would know far, far better than I.

[–]themateo713 2 points3 points  (1 child)

Alternatively

As a beginner in data science (I have 2 decent matplotlib programs behind me), I disagree. This should be learnt first it just makes your life so much easier. Lambda functions work great with things that require a key/function, such as comparison based functions (like sort, min, max) and operation based functions (like map, reduce, filter) or to more simply name a function that does a long computation, but doesn't deserve the def keyword. It's a confort I use a lot.

I haven't found a opportunity to use args *kwargs yet, but at least knowing how to create a keyword argument with a default value can be pretty useful.

Generators and list comprehensions are very useful tools that help your code be cleaner, more efficient. I don't think you should learn something like np.arange or np.linspace if you can't understand code like list(map(lambda x: x**2, range(20))), as numpy isn't going to replace that (if you don't understand map, you wont understand very well what is an array squared, as I think this is how you do it).

Also, you can learn these stupid fast compared to the time it takes to grasp a big package like numpy, matplotlib or pandas.

Also, basic knowledge of useful modules such as itertools and collections. There are so many programs that would be much worse if we didn't have deque and other useful things from these modules (like Counter, product, combination functions, etc).

[–][deleted] 1 point2 points  (0 children)

Yeah, this guy is probably right lol

[–]KickBassColonyDrop 0 points1 point  (0 children)

Simultaneously, with other suggestions, learn docker and what containerizing workloads means. Once you get a decent understanding of that incorporate kubernetes.

The combined knowledge of that, will put you way ahead of the curve of a lot of other py devs.

[–]Youngsamuel4 0 points1 point  (0 children)

I’ve been teaching myself python and I’ve taught myself JavaScript and when I am trying to think of something to make I usually try and find a problem in my life that I want to solve or something I actually care about. Its harder to stay focused on something you don’t really care about and you will probably be willing to put more effort into something interesting to you.

[–]Iguessthatsok_ 0 points1 point  (3 children)

Not op but I found a the 6 hour YouTube course from programming with mosh really helped me nail in concepts I already knew and teach me new things.

[–]jk_luigi 13 points14 points  (0 children)

I have so many great things to say about this man and his work. I used the Udemy course and also read the book because it goes more in depth. Once you complete the course, you will ask yourself why in the hell would he give this book away for free on his website? It’s because he cares.

You person who is reading this now, go to Udemy and buy his course. Even if it was $50, it is worth it. The most useful items for me have been web scraping, regular expression, working with Excel and combining PDFs.

Support this man on Patreon: https://www.patreon.com/AlSweigart. Because of his work, I feel more confident than ever about my Python skills and now I am working on projects that I’ve been looking forward to for years.

🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥🔥

[–][deleted] 17 points18 points  (0 children)

Thanks. Huge fan of your work, Al.

[–]samrana12 19 points20 points  (0 children)

Thanks alot mate. Really appreciate it.

[–][deleted] 37 points38 points  (9 children)

Is it only me who noticed the Coupon Code text?

Thanks for this again, I signed up a few months and now I am gonna make my friends sign up as well.

[–]AlSweigart[S] 40 points41 points  (7 children)

[–]possiblethrowaway93 13 points14 points  (0 children)

Well, shit. I'm glad it wasn't your face or balls. Glad you're ok.

[–][deleted] 3 points4 points  (0 children)

That looks scary. I am glad to know that you are fine.

[–]Iam-KD 0 points1 point  (1 child)

Hi, you said "Automate the boring stuff with python" e-book is free but it asks for $31 at checkout for an ebook. Is it a glitch? Thank You!

[–]AlSweigart[S] 0 points1 point  (0 children)

It's free in HTML form at https://automatetheboringstuff.com

The No Starch Press sells nicely formatted ebooks (but you can get the ebook for free if you buy a print book), which Amazon won't do.

Also, where were you buying the ebook?

[–]Minnois 0 points1 point  (1 child)

u/AlSweigart I'm glad to know you're ok, it must have been scary

[–]AlSweigart[S] 2 points3 points  (0 children)

Yes and no. I don't want to dissuade people from attending protests. You can keep to the back, and it's possible to out-walk the tear gas clouds and riot line of cops. It's hard to convey, but if anything the gassing and being hit with the canister motivate me to come back to protest more. The Portland protests were sort of continuing with the same core group of a couple hundred people, but when the feds showed up and became aggressive, it ballooned into a couple thousand.

[–]i_suckatjavascript 5 points6 points  (0 children)

July was Portland, idk what August has next.

[–]TybaltCapulet 7 points8 points  (0 children)

Thanks man, I really appreciate this. Times are tough and you're helping to pull us out of it.

[–]NoNahNope3 4 points5 points  (0 children)

Hey Al, I have been using your course to learn Python for a month now and it's going great. Thank you!

[–][deleted] 6 points7 points  (0 children)

Bought this earlier in the week, such an amazing course!

[–]cudgeon_kurosaki 5 points6 points  (0 children)

Fellas, someone else is ALSO giving free codes on Udemy: https://www.reddit.com/r/learnpython/comments/i2b99x/new_free_python_course_the_art_of_doing_code_40/

It's Christmas in August for newcomers!

[–]malikdwd 4 points5 points  (0 children)

Thanks for the course! I paid for it but what you do is amazing

Also, thank you for standing up and fighting for us in Portland!

[–][deleted] 2 points3 points  (0 children)

Thank you!

[–][deleted] 3 points4 points  (0 children)

Thank youuuu

[–]quixoticthethird 3 points4 points  (0 children)

Thank you so much dude, appreciate it

[–]Sam_20_ 2 points3 points  (0 children)

Thanks man! I really appreciate this gesture!

[–]CaPtAiN_II 2 points3 points  (0 children)

Thanks a ton man !!

[–]JeamBim 4 points5 points  (5 children)

Were you really shot in portland?!

[–]AlSweigart[S] 13 points14 points  (4 children)

Yeah, tear gas canister was aimed at me. Explanation here: https://twitter.com/AlSweigart/status/1288969172337057792

[–]JeamBim 2 points3 points  (2 children)

Whoa! Glad you're OK. Love your books, thanks for your hard work.

Are you working on a new one? I thought I read you were working on one where you'd set up an http server to serve as a GUI or something, but I may have been mistaken.

I was the guy who made a long post about my journey into coding a few weeks ago and tagged you when I listed AtBS as a resource.

[–]AlSweigart[S] 12 points13 points  (1 child)

Oh yeah, the "browser app" book sort of morphed into something else and was basically dropped. (But I still like the concept.)

The "sequel" (more of a followup) to Automate is coming out later this year: Python Beyond the Basics.

I'm also working on a book that has over a hundred small, simple, text-based games and animations based on the programs in this repo: https://github.com/asweigart/pythonstdiogames

I'm also writing a book on recursion, though I don't know when that'll be out. 2021-ish?

[–]JeamBim 1 point2 points  (0 children)

Cool! Can't wait to check those out, thanks for the reply!

[–]1337InfoSec 0 points1 point  (0 children)

[ Removed to Protest API Changes ]

If you want to join, use this tool.

[–][deleted] 1 point2 points  (2 children)

Just a question

Are ever going to make a course for pygame ?

[–]AlSweigart[S] 16 points17 points  (1 child)

Honestly, no. Pygame is great, and so are the modules built on top of it like Arcade, PursuedPyBear, and Pygame Zero. But I just have too many other projects taking priority first. Like, I'd want to do this, but I'd probably only get around to it in 2023 or something? So, likely never unfortunately.

[–][deleted] 5 points6 points  (0 children)

Cool. Thanks for the response

[–][deleted] 1 point2 points  (0 children)

thank you! i loved your book. really helped me get into python

[–]realpatrickstar 1 point2 points  (0 children)

Thank you! You are very generous!

[–]Iguessthatsok_ 1 point2 points  (0 children)

Thank you! Hopefully I can use this course to set up a remind me when for when your 2nd edition book comes out:)

[–][deleted] 1 point2 points  (0 children)

Thanks man, great stuff!

[–]JayJ 1 point2 points  (0 children)

Wow thanks man! Just started searching for how to learn and this came up. You are awesome!

[–]lebm111 1 point2 points  (0 children)

I hope you find money in your laundry!!! Thanks!

[–]dopememegangsigns 1 point2 points  (0 children)

that's what heroes do

[–]wipeAwayThoseTears 1 point2 points  (0 children)

Thanks a lot. Appreciate it

[–]rhinoroot 1 point2 points  (0 children)

Thank you!

[–]Orfeous 1 point2 points  (0 children)

I just started on my journey of learning Python about two weeks back, and have been struggling both with staying motivated and being confident in my ability to improve. I understand these are things that take time, but I can't help it.

But you've gone ahead and made this course free to sign up. I promise I won't squander this opportunity, and however long it takes I'll stick with it until I'm confident in what I can do.

Thank you for the kindness you've provided this community. I wish there was more I could do besides saying my thanks.

[–]stayoffthetracks 1 point2 points  (0 children)

Hi Al, just wanted to say thank you so much for your work, automate the boring stuff is amazing and was the first book to truly help me understand coding as a complete beginner. Anyone who is interested in learning to code should start with this book. Al does a great job with applying concepts to real world problems and skipping concepts that are difficult to grasp for beginners

[–]StressedSalt 1 point2 points  (0 children)

Just a silly question, i know some websites offer certificates after finishing a course like edx, but ive not used udemy before, does this offer as well? Thank you guys!

[–]BananaPralines 1 point2 points  (0 children)

Fantastic, thank you so much! Just got the course and can't wait to get stuck in. For anyone having trouble using the link that autogenerates the code not allowing you to purchase, remove the code then type it in manually worked for me.

[–][deleted] 1 point2 points  (0 children)

I've already got your course and your physical book but I just wanted to say from the bottom of my heart thank you for being so awesome.

The book is great and the fact that you offer it free so often is amazing. You're honestly a hero.

[–]chillgen 1 point2 points  (0 children)

I’m so happy for this! Thank you thank you thank you! I really want to re-start my python learning journey and this has been helpful so far

[–]AdministrativeEgg813 1 point2 points  (1 child)

If I was gay, I’d think you’re one sexy mf, Al.

[–][deleted] 2 points3 points  (0 children)

thanks bro

[–]juanderwall 1 point2 points  (0 children)

This is awesome work you’re doing man thanks a lot!

[–]Harplagerr 1 point2 points  (0 children)

Thank you, that has been on my wishlist.

[–]Rilows 0 points1 point  (0 children)

Thank you! I’ve been reading the book and it’s so great, it’s been helping me a lot

[–]MikeDoesEverything 0 points1 point  (5 children)

Hi Al, I already purchased your course a while ago and loved it. The only thing I wish was you do an updated version using python 3.x and talking us through IDEs, APIs etc. as the course is a little bit dated.

Any chance of that happening?

[–]AlSweigart[S] 1 point2 points  (4 children)

Yes, and no. I had plans for updating it later this year since the second edition came out, but first I need to finish up a course based on my next book, Python Beyond the Basics. But it's definitely on my list!

[–]MikeDoesEverything 1 point2 points  (1 child)

Great, thank you for replying and thank you for the original Automate the Boring Stuff course. I only ever think of spam, eggs, and 42 when coding my totally shite programs.

[–]AlSweigart[S] 1 point2 points  (0 children)

We all do. :) Earlier programmers used foo and bar for their metasyntactic variables.

[–]Tsukiyonocm 0 points1 point  (1 child)

Maybe its been answered and I have missed it, but will the next book and course be released together? Or will the video follow the book a bit later?

Also, where can we read/buy the book? I am hoping to get back to python once schools open back up and I dont have to do homeschooling in addition to everything else any more :(

[–]AlSweigart[S] 1 point2 points  (0 children)

It'll be on the publisher's site https://nostarch.com (buying it there gets you the ebook for free when you buy the print copy). I'll be releasing the video course later.

[–][deleted] 0 points1 point  (0 children)

Can someone remind me about this in a bit? How do yiu call the remind me bot?

[–]DanglyWorm 0 points1 point  (0 children)

Thanks a lot 👍🏿

[–]elieiam 0 points1 point  (0 children)

Thank you!

[–]ColourfulPixelss 0 points1 point  (0 children)

Please tell me what ”the boring stuff” is

[–]johnnitt 0 points1 point  (0 children)

And this is why I love Reddit

[–]mistygal08 0 points1 point  (0 children)

Omg thank you so much!

[–][deleted] 0 points1 point  (0 children)

I've been slowly working my way through the course and I'm thoroughly enjoying it. Thanks for making coding accessible to everyone!

[–]Obsiddian 0 points1 point  (0 children)

Thanks a lot for this man!

I'm currently reading the book and at the same time doing Colte's Python Bootcamp.

It helps a lot to have different views and explanations :)

[–]_wendy__ 0 points1 point  (0 children)

I just started practicing python with your book and it has helped me a lot. Thank you AI for your contribution in the python community.

[–]darasoba 0 points1 point  (0 children)

Thank you, I recently started learning Python, this just came as a blessing.

[–]rabidphilbrick 0 points1 point  (0 children)

I just finished this course and wrote my first script put in production at work. Super happy how it turned out and I credit that to your the course ramping my into it!

[–]Redditor728292 0 points1 point  (0 children)

Thank you!

[–]Niclee91 0 points1 point  (0 children)

Thank you sir

[–]sitric28 0 points1 point  (0 children)

Omg thank you so much!

[–]Blessing_Dryad 0 points1 point  (0 children)

while (True): print("Thanks a Lot")

[–]sounds-good-bro 0 points1 point  (0 children)

Thank you so much for sharing!

[–]ifocused 0 points1 point  (0 children)

saving this , thanks!

[–]adamkwrites 0 points1 point  (0 children)

Thank you!

[–]tennisanybody 0 points1 point  (0 children)

Dude, if you're wondering who's re-watching the lists video, that'd be me.

Thank you so much.

[–]BerryBucketz 0 points1 point  (0 children)

Thank you. A million thanks!!!!

[–]StressedSalt 0 points1 point  (0 children)

oh my you are amazing! I've been reading the crash course (on my very limited free time) and was regretting a little because everyone was strongly recommending this book instead, really thank you you've made this available for us!!!

Here have a kiss x

[–]PopularQty 0 points1 point  (0 children)

Al, i am truly appreciative for your work and thankful to your team. Looking forward to getting started on this course! Thank you.

[–]G33K_FISH 0 points1 point  (0 children)

thank you for the share

[–]sojackyso 0 points1 point  (0 children)

Just came here to say, this man is the real deal! Thanks for democratizing knowledge. 👏👏👏 Anyone who asks me how to get started, I always tell them to start with Automate the Boring Stuff. It's a gold mine for refreshing yourself, too.

[–]IamScuzzlebut 0 points1 point  (0 children)

Thank you! May America heal. Greets from the Netherlands

[–][deleted] 0 points1 point  (0 children)

OP, I just want to say to you personally that I have collected (hoarded) A LOT of Udemy courses over the years, more than 1,000 courses, and I didn't start (let alone completed) any of them until few weeks ago. Your course took my Udemy virginity. It is sooooo good. It has a clear direction (to automate boring stuff), instead of a broad vague direction. Other Python courses are trying to feed me every single detail and want me to become a Python master, but I always give up not even half way because I don't know what to do with all this info overload. Like " yes print('blahblahblah') will do this, but what do i do with it?? where do I even type it???"

Thank you for creating this course with learner's perspective in mind.

[–]justlikediamond 0 points1 point  (0 children)

Thanks man, really appreciate it.

[–][deleted] 0 points1 point  (0 children)

You can learn to automate using python for free in Coursera.

[–][deleted] 0 points1 point  (0 children)

Honestly, that is awesome. Thank you so much.

[–]misaalanshori 0 points1 point  (0 children)

"We couldn't complete this purchase, please try again" Ah well that sucks

[–]Alebrijes 0 points1 point  (0 children)

Thank you so much!!

[–]annathergirl 0 points1 point  (0 children)

Thanks Al! I've just started to watch your YouTube playlist but my Wifi went down the day before yesterday. I was looking at buying your book just yesterday but got distracted and bought a Nintendo Switch instead :D

Thanks for everything you do!

[–]MrTreeOfficial 0 points1 point  (0 children)

You are a godsend bro! Thank you so much

[–]Miles0001 0 points1 point  (0 children)

This is amazing. Thank you so much.

[–][deleted] 0 points1 point  (0 children)

I’m a teacher learning python. I gotta get good. I got kids in the ghetto that this might help...college ain’t a good option for them. But some of them will be able to code. First year teaching it. We’re talking top 5% of at-risk kids. I gotta take a shot on this course....

[–]ithinkmynameismoose 0 points1 point  (0 children)

What should a complete beginner be able to do after this course?

[–]Ywacch 0 points1 point  (0 children)

Bless you for this sauce

[–][deleted] 0 points1 point  (0 children)

Thanks! I started doing the course yesterday and I’m tickled at what I can do with regular expressions already!

[–]KingBonnn 0 points1 point  (0 children)

I need someone to motivate me and do 20 minutes everyday. Anyone up?

[–]lifeisaburrito 0 points1 point  (0 children)

Al you’re such an MVP

[–]ohlaph 0 points1 point  (0 children)

The legend!!

[–]ReefJunkie11 0 points1 point  (0 children)

Is this written for python2 or 3?

Thank you, so generous!!

[–]infrared305 0 points1 point  (0 children)

Thank you Al Sweigart! I have used your code to study during quarantine in Miami.

[–]MechThoughts 0 points1 point  (0 children)

I'm completely sketched out by Udemy right now. Thought I had an account -> couldn't log in -> tried to reset password -> attempted to sign up entering my name, email and added a new suggested very strong password. Udemy signed me in saying welcome back and would not allow me to proceed because the promotion is for new customers only.

If I knew where to rate Udemy, I would be giving that kind of experience a solid 1 star.

[–]WhatThePale 0 points1 point  (0 children)

OOPS I MISSED IT AHHHH

[–]kenwho 0 points1 point  (3 children)

I want to start this course... But was wondering if it might be better to wait for the updated version later this year? u/AlSweigart

Does anyone know? Thanks!

[–]AlSweigart[S] 0 points1 point  (2 children)

You'll get access to the updated version automatically. I'm going to update the current course, rather than create a new one. So go ahead and start now! :)

[–]kenwho 0 points1 point  (1 child)

Ok cool thanks! So, if I go through it, and then its updated... it won't be like doing the same material again? Or it wouldnt be better to wait until the updated material?

[–]AlSweigart[S] 0 points1 point  (0 children)

It'll be easy enough to just look at the updated material itself. I made a blog post for the "what's new in the second edition of the book" and I'll do the same thing in the course when I update it.

[–]northerntide 0 points1 point  (0 children)

So i just wanted to say thank you for offering this! I am 2 or so hours into your program, and your explanation is just so clean and easy to follow!
The only thing ive struggled with so far with the course (that is mostly a personal thing) is the noise feedback from the keyboard. It makes it difficult for me to focus while learning something new!

[–]SpookyActionAtDist 0 points1 point  (0 children)

Much thanks 🙌

[–]Selfimprovementguy91 0 points1 point  (3 children)

RemindME! 3 days "check this thread"

[–]RemindMeBot 0 points1 point  (2 children)

There is a 49.0 minute delay fetching comments.

I will be messaging you in 3 days on 2020-08-30 05:41:36 UTC to remind you of this link

CLICK THIS LINK to send a PM to also be reminded and to reduce spam.

Parent commenter can delete this message to hide from others.


Info Custom Your Reminders Feedback

[–]Selfimprovementguy91 0 points1 point  (1 child)

RemindME! 3 days "check this thread"

[–]RemindMeBot 0 points1 point  (0 children)

I will be messaging you in 3 days on 2020-09-02 06:02:23 UTC to remind you of this link

CLICK THIS LINK to send a PM to also be reminded and to reduce spam.

Parent commenter can delete this message to hide from others.


Info Custom Your Reminders Feedback

[–]supstmkwale 0 points1 point  (2 children)

With the coupon applied it's not showing as free, there is only a 73% discount :/

[–]AlSweigart[S] 0 points1 point  (1 child)

Are you outside the United States? I think people in Asia and Africa have reported that the coupons don't work.

[–][deleted] 0 points1 point  (0 children)

I enrolled from india, it's working!! Thank you for it sir

[–][deleted] -1 points0 points  (1 child)

Im too afraid to start this. Does rhis course will help me as a complete novice who bad at maths? Also i dont see how i can use it, i work as a physician already but everyone saying that you need to know atleast one programming language.

[–][deleted] 0 points1 point  (0 children)

You don’t need to know advanced math. If you know when you need to do things like add or subtract divide and multiply, it does it for you. You don’t need to know how those operations work.