Python Debugging (PyCharm + VS Code)

Поділитися
Вставка
  • Опубліковано 24 січ 2025

КОМЕНТАРІ • 242

  • @xelaxander
    @xelaxander 11 місяців тому +123

    What separates mcoding from the rest of the Python UA-camr crowd is the fact that even before watching the video, I know my time won’t be wasted. Love your work, hope you consulting company is doing well.

    • @_jaime.
      @_jaime. 11 місяців тому +10

      Totally agree, I feel like he's the only Python youtuber who's able to teach me something new on every single video

    • @jeroenvermunt3372
      @jeroenvermunt3372 11 місяців тому +1

      I am just replying to reinstate your comment, I couldn't agree more. He also is the only one who dives deep into 'boring' subjects, but which are essential for developers. For example this video, but also logging, packaging and testing.

  • @DominicCarrier
    @DominicCarrier 11 місяців тому +25

    As an entirely self-taught software developer, I can attest that these kind of introductory videos are always great. It never assumes "well known knowledge". #mcoding is a very nice resource for all skill levels.
    Love the channel.

  • @LastTigerEyes
    @LastTigerEyes 11 місяців тому +17

    I am always impressed how I still learn things from your videos, even on topics I'm familiar with already (TIL about conditional breakpoints).

  • @olo90
    @olo90 11 місяців тому +21

    Finally a video on debugging for Python. Haven't even watched it yet but I've got big hopes that this will be the video I'll send to every new intern & junior in our team at work 😀

  • @goost0852
    @goost0852 11 місяців тому +9

    More basic than the usual, but still a nice refresher :)

  • @josephpierce8926
    @josephpierce8926 11 місяців тому

    Wanted to say thanks. I didn't know any of this, and it seems super useful. Bonus tip for anyone who has to run their code from the command line, you can add the call breakpoint() in your source file and then use the debugger from the terminal

  • @DanielLavedoniodeLima_DLL
    @DanielLavedoniodeLima_DLL 11 місяців тому +1

    Using the debugger is something that I've procrastinated learning since I began programming in university 10 years ago. Nice to see such a comprehensive video about that topic #mcoding

  • @adamfarquhar1279
    @adamfarquhar1279 10 місяців тому

    I've found setting up the debugging in VS Code to be surprising. Now I know it's not just me! Thanks for the clear explanations and work-arounds for the quirks in the PyCharm and VS Code debugger settings.

  • @powrusr
    @powrusr 11 місяців тому +1

    Since you recommend testing, I'd love to see more content on testing the hard stuff like API's, files, databases with pytest. Testing static code is easy the IO stuff is more complicated. Thanks for the nuggets! 💪

  • @user-bp6eh7en1v
    @user-bp6eh7en1v 11 місяців тому +8

    13:47 really nice to see him laugh at something goofy like this 😄 #mcoding

  • @nlioc4
    @nlioc4 11 місяців тому

    I swear every time I think about wanting to learn something, #mcoding posts a video about it the next day

  • @drBnpD
    @drBnpD 11 місяців тому

    Whoa! Another gem from #mcoding! 🌟 Clear, conceptual, and oh-so-needed. Keep 'em coming! 🚀

  • @jeffglass5196
    @jeffglass5196 11 місяців тому

    Genuinely, I applied some new things I learned from this video within half an hour. Thank you for all you do. #mcoding

  • @Phaust94
    @Phaust94 11 місяців тому +1

    #mcoding
    Man, 6 years into Python development and never knew about conditional breakpoints in PyCharm. Sweet!

  • @Schlynn
    @Schlynn 11 місяців тому

    Really been enjoying your videos alot more recently as I've been diving deeping into Python. Thank you for the upload.

  • @AFurreh
    @AFurreh 11 місяців тому

    Genuinely had no idea about conditional breakpoints. Big time saver! #mcoding thank you much for going in to this topic!

  • @ilyagrant
    @ilyagrant 11 місяців тому

    Again and again you manage to talk about things that I dealt with but never knew how they should be applied. Thanks for your content!
    #mcoding

  • @sebsafari
    @sebsafari 11 місяців тому

    Wow super helpful video! I've used the debugger for a while but seeing your methodology to it was insightful.
    I would have changed the data in the file rather than the function, but you don't always have that luxury.

  • @SyberiaK
    @SyberiaK 11 місяців тому

    As a professional print debugger user, I'm absolutely amazed that these live debuggers exist :D
    You did a great job explaining them #mcoding

  • @justingerber9531
    @justingerber9531 11 місяців тому

    Awesome video as usual! I never knew about conditional break points, seems super useful, I’ll have to try them out! Also I’ve been learning and implementing testing lately. It’s hard to write good tests, but once tests are written it is such a joy to refactor and improve code knowing you have your tests as a sort of safety net. Thanks for the video #mcoding!

  • @FrancisCharetteMigneault
    @FrancisCharetteMigneault 11 місяців тому +1

    Thanks for the info about PyCharm's setting for Python 3.12 debugging. That will be useful in a near future for sure! #mcoding

    • @RoysIdea
      @RoysIdea 9 місяців тому

      Alas I can’t place a comment in the main thread, so hope someone or #mcoding is able to answer how to debug when starting from the command line with arguments. Otherwise I’m forced to use the print statements

  • @mojo9Y7OsXKT
    @mojo9Y7OsXKT 11 місяців тому

    As far as a beginner live debug tutorial is concerned #mcoding has done an excellent job in this vid. I am a seasoned quant programmer and tend to often develop code in live debugging mode. With interpreted languages like python and matlab this is not as important, but with something like C/C++ its very handy.

  • @levatius4397
    @levatius4397 11 місяців тому +1

    I am always surprised how many people don’t know about live debugging, also big PyCharm fan 🎉 #mcoding

  • @danielschmider5069
    @danielschmider5069 9 місяців тому

    good video, you'd be surprised how many people never learned to properly debug and just use print debugging.
    Nothing against print debugging if it gets the job done, but in my experience it takes more trial and error because you have to know what to print first - while debugging gives you the chance to inspect all variables during runtime and see them go through different states and values. You end up finding the problem so much quicker, and never have to delete your print statements after you're done debugging.
    thank you #mcoding

  • @loic1665
    @loic1665 10 місяців тому

    Great video ! Love the last advice about unit testing! I've personally had to debug asyncio app and it's really hard!

  • @stevengorlich4993
    @stevengorlich4993 11 місяців тому

    #mcoding after 10 years with python, I still learn new stuff with your videos. I pushed my C-board to give us professional pycharm licences, wished I had a personal one as well :)

  • @TheMathman7
    @TheMathman7 11 місяців тому +1

    Breaking on uncaught exceptions is very handy as well!

  • @replicaacliper
    @replicaacliper 9 місяців тому

    Super useful to people who aren't from a cs background, as a physicist i use Python all the time but I've never learned how to debug, I just place print statements everywhere haha

  • @failgun
    @failgun 11 місяців тому

    This is the main problem I had with my university's Python course, we did 12 weeks of it, and they introduced lots of concepts - variables, strings, types, functions, classes, etc. It wasn't bad for an intro-to-programming course taught with Python. But they didn't mention how to use our IDE's debugging tools _once_ . I found out about it later and I was baffled that they willingly let us believe there was no better alternative than littering our code with print statements (this was even encouraged) to figure out what was going on.

  • @cyberduck4923
    @cyberduck4923 11 місяців тому

    Another great video from the best-produced Python channel on UA-cam!
    #mcoding

  • @adrianfletcher8963
    @adrianfletcher8963 11 місяців тому +3

    I finally ripped the bandaid and used the debugger for the first time 😅. I was like wow all these print statements are so useless. I'm glad mCoding is scratching the itch further. He said to debug in his python nooby video, but it still doesn't mean that we got that full tutorial #mcoding

    • @Ignisami
      @Ignisami 11 місяців тому +1

      Print statement debugging is never *entirely* useless. Code can behave differently when you're in the debugger. To give but one reason: Each step of the code takes longer (because you're reading what the debugger says, for one), things have all the time in the world to resolve before moving on. When you actually run the code normally that may not always be the case.

    • @adrianfletcher8963
      @adrianfletcher8963 11 місяців тому

      @@Ignisami That's true. I think I'm still getting used to the capability and am having "everything is a nail" syndrome at the moment t

  • @kitschlab
    @kitschlab 11 місяців тому

    Thank you #mcoding for this!
    I can't believe I never used the python debugger. Can't wait to try it out.

  • @NicolasJoye
    @NicolasJoye 11 місяців тому

    Thanks, Jetbrains, for providing the licenses!!!

  • @Mayur7Garg
    @Mayur7Garg 11 місяців тому

    Conditional breakpoints in VSCode also allows for hit counts and triggered breakpoints instead of expressions. Hit count based breakpoints are good for loops and triggered breakpoints are good when you want to break only when a previous breakpoint was hit. #mcoding

  • @jasperkousen5470
    @jasperkousen5470 11 місяців тому +1

    Thanks for all the great content!

  • @shabik3
    @shabik3 11 місяців тому

    Noice, this is a holy grail of python vids!! :D

  • @timothyhumphreys1231
    @timothyhumphreys1231 11 місяців тому

    As a professional print debugger myself I found this video super helpful! #mcoding

  • @gregkeith9521
    @gregkeith9521 11 місяців тому

    Reminds me of VBA debugging. Very good explanation #mcoding

  • @hargrav3s740
    @hargrav3s740 11 місяців тому

    Love a nice debugging session breakdown, when I joined the industry, live debuggers truly are king! (That and good logs) #mcoding

  • @Excgo
    @Excgo 11 місяців тому

    @mCoding The code you have given in the git repo is the already fixed version. Is that by decision or should the buggy version be in the repo?

  • @MattiasBrunschen
    @MattiasBrunschen 11 місяців тому

    Just started to use vscode, so your hints are very helpful. Thank you, #mcoding .

  • @NikitaSerditov
    @NikitaSerditov 11 місяців тому

    #mcoding is a truely useful Python programming channel. Thanks a lot.

  • @BartDorlandt
    @BartDorlandt 11 місяців тому

    Thank you for yet another great video. Quite nice you showed both vscode and pycharm!
    #mcoding

  • @castercs
    @castercs 11 місяців тому +1

    em stupid question .. do you have some python course? Udemy or similar

  • @richwiss
    @richwiss 11 місяців тому

    Hey! Thanks for the videos (as always). Been a long time vscode user but would be super happy to try pycharm! #mcoding

  • @moejo8187
    @moejo8187 11 місяців тому

    I didn't know the conditional breakpoints. Thanks for the explanation.
    #mcoding

  • @cristianbitica8204
    @cristianbitica8204 11 місяців тому

    I'm surprised of how much I can learn from these videos. #mcoding

  • @dataplatter
    @dataplatter 11 місяців тому

    What about testing code that might not get run in normal circumstances?
    Also, is there a way to step back in program state? #mcoding

  • @mattjax16
    @mattjax16 11 місяців тому +2

    Jetbrains debugger is why I fell in love with jetbrains products in the first place vs code can’t compare lol

    • @mattjax16
      @mattjax16 11 місяців тому

      Well I’m sure it can but I don’t feel like learning until now lol

  • @luketurner314
    @luketurner314 11 місяців тому

    5:28 *ten items, it even tells you at the bottom with __len__; classic off-by-one error
    and again at 9:56 *eleven

  • @tooru
    @tooru 11 місяців тому

    Of course I want a license too #mcoding but still thank you for producing such useful and polished content. We can see that you care about making it better.

  • @aliwelchoo
    @aliwelchoo 11 місяців тому

    Conditional breakpoints is a big new one for me. Will be using that! Only thing I don't understand is why your pycharm debugger doesn't drop straight into a breakpoint upon exception?

  • @redbeangreenbean
    @redbeangreenbean 11 місяців тому

    This was immensely helpful. Thanks #mcoding!

  • @kall2075
    @kall2075 11 місяців тому

    #mcoding need more videos like this. Preferably on more complex code base where the issue is on the import code

  • @kayebennett7867
    @kayebennett7867 11 місяців тому

    #mCoding, usually I enjoy your videos because you really go deep into the details, but I felt that you only touched the surface on this one. I don't use pycharm or vscode but I imagine that you can also use pdb commands, I think these are really useful for proper debugging. For example, in 15:12, you could have just used the "until" command to exit a loop instead of setting a breakpoint that you have to remove immediately after.

  • @nikitkuzi
    @nikitkuzi 11 місяців тому

    What are the best beginner projects to fill your portfolio and to gain experience that you can recommend? #mcoding

  • @moonskined
    @moonskined 11 місяців тому

    I recently started learning python so this was very helpful. Thank you. #mcoding

  • @Acuzzio
    @Acuzzio 11 місяців тому

    What an excellent video. Thanks a lot.

  • @maciejbrzeski9740
    @maciejbrzeski9740 11 місяців тому

    Wonderul video as always. I learn a lot new things every time. Thanks for all your effort that you put in those videos! #mcoding

  • @ginggung2413
    @ginggung2413 11 місяців тому

    very nice job highlighting the usefulness and ease of use. Course I'd also love a piece xD #mcoding

  • @nHans
    @nHans 11 місяців тому +1

    So you're saying that as far as the contest is concerned, the winners are determined by random draw, so the quality and relevance of my comment doesn't matter? All I need to do is type #mcoding somewhere in my comment? Awesome!

  • @sethdhanson
    @sethdhanson 11 місяців тому

    Why are there comments in the .json file that vs code creates? If I try to put comments like that in my .json file, I get a warning they’re not permitted.

  • @Th3Vitamine
    @Th3Vitamine 11 місяців тому

    Next logical step to cover would be remote debugging, and maybe some cli variants, like pudb. Also a neat feature is python cells in VSCode (denoted by #%%) #mcoding

  • @igorb2216
    @igorb2216 11 місяців тому

    PyCharm licence you just said? I'm all in! #mcoding

  • @Articha
    @Articha 11 місяців тому

    Sometimes info from videos shock me. Keep going, James! #mCoding

  • @jeevan1016
    @jeevan1016 11 місяців тому

    What is the efficient way to debug a function that is used in threading?
    Please give us some insights on this topic.

  • @robotnaoborot
    @robotnaoborot 11 місяців тому

    you can put import pdb;pdb.set_trace() in your code to debug it without using editor. I think it's at least worth mentioning

  • @ellipsiss
    @ellipsiss 11 місяців тому

    Great work #mcoding
    Big time fan!

  • @everorlandoreyesruiz9789
    @everorlandoreyesruiz9789 11 місяців тому

    Awesome vid, thanks 👍

  • @Jakub1989YTb
    @Jakub1989YTb 11 місяців тому

    pycharm has the best debugger in the business!!
    #mcoding

  • @fluffykitties9020
    @fluffykitties9020 11 місяців тому

    very interesting, printing can become unbearable. this is also a great way to learn coding. i'm a vscode user but wouldn't mind trying pycharm.

  • @plato4ek
    @plato4ek 11 місяців тому

    Woo-hoo! Another contest! #mcoding

  • @marekmdpdesign
    @marekmdpdesign 11 місяців тому

    Nice, learned few new things when it comes to debugging :) - btw what does mean in your test code for e.g.: „actual = load_recipes(…)” - the three dots as arguments?
    #mcoding

    • @vytah
      @vytah 11 місяців тому +1

      ... is the ellipsis literal. It's an object of type EllipsisType, similar to how 1 is an object of type int

  • @Seun_O
    @Seun_O 11 місяців тому

    I learned something new. Thanks for the high quality content #mcoding

  • @jesusromero9167
    @jesusromero9167 9 місяців тому

    This is gold! It would be amazing if you make a series of how to use pycharm the way is intended #mcoding

  • @pipurs
    @pipurs 11 місяців тому

    I can safely say that the debugger, any debugger as a matter of fact, has been my best tutor. Not only regarding my own code, or my college's code, but also down there in the nitty gritty of things. But then I'm a 100% autodidact - which means that I've stared at some amount of exceptions through my years...
    Debuggers ftw.

  • @Ayor88
    @Ayor88 11 місяців тому

    your videos are gold for self learner ! #mcoding

  • @potzko2552
    @potzko2552 11 місяців тому +1

    tbh I find that the breakpoint() function is a bit of the best from both worlds of a live debugger and print debugging
    I usually put it behind an if :)
    #mcoding

  • @archiemarqx
    @archiemarqx 11 місяців тому

    I use python for Data Science, so in this case I use both, VS Code for coding in Jupyter Notebbok and PyCharm for Python, and this combination works like a charm to me #mcoding

  • @АртемФедоров-ю7б
    @АртемФедоров-ю7б 11 місяців тому

    It worth mentioning that before debugging, engineer must read log message first, maybe he can get some clue there

  • @ChristopherFerguson
    @ChristopherFerguson 11 місяців тому

    I always find your videos so helpful. Thanks so much! #mcoding

  • @Landee
    @Landee 11 місяців тому +1

    Need more beginner tips !! #mcoding

  • @mytelevisionisdead
    @mytelevisionisdead 11 місяців тому

    Pycharm is where it's at!!! ❤❤ 🙏 #mcoding

  • @talshafir10
    @talshafir10 11 місяців тому

    I love #mcoding videos!

  • @harshmodi5627
    @harshmodi5627 11 місяців тому

    Knowing how to debug makes life so much easier #mCoding

  • @nikolastamenkovic7069
    @nikolastamenkovic7069 8 місяців тому

    Throughout this tutorial I thought to myself, at least five times - "Oh, how exciting video this is!"
    What a nerd I am.....

  • @FighterAceee94
    @FighterAceee94 11 місяців тому

    How do you debug your code when the application just closes with some random exit code number, without any exceptions raised?

    • @aflous
      @aflous 11 місяців тому

      Just start debugging from the beginning 😅

  • @archibald-yc5le
    @archibald-yc5le 11 місяців тому

    Great debugging guide, thank you #mcoding

  • @CaptainCsaba
    @CaptainCsaba 11 місяців тому

    I love your videos, #mcoding !

  • @brainforest88
    @brainforest88 11 місяців тому

    Nice. How do you like the new UI of PyCharm? #mcoding

  • @rukopet
    @rukopet 11 місяців тому

    Thank for your videos man!!!!
    #mcoding

  • @BrandonSolo
    @BrandonSolo 11 місяців тому

    I'#mcoding and debugging so much better thanks to this channel (padum tsssss)

  • @ravipratapmishra7013
    @ravipratapmishra7013 11 місяців тому

    #mcoding only doing to get pycharm, btw video is as it always is, great, thanks for it.

  • @thegothaur
    @thegothaur 11 місяців тому

    Nice video. I noticed that, for some reason I don't understand, Pycharm debugger doesn't work if code is async and I have to use pdb :(

  • @NimeshVellera
    @NimeshVellera 11 місяців тому

    #mcoding is one of the best UA-camrs in the python space. His videos are simply amazing.

  • @yt-1161
    @yt-1161 11 місяців тому

    what computer are you using ? #mcoding

  • @Talon_24
    @Talon_24 11 місяців тому

    Those are some good examples, esp helpful when forwarding to friends who just started learning :) #mcoding

    • @mCoding
      @mCoding  11 місяців тому

      Yes please forward to many friends :). Also, you WIN! You get a license, please contact me via email to claim.

    • @Talon_24
      @Talon_24 11 місяців тому

      @@mCoding Thanks so much! The number is 199

  • @craigmcconomy9346
    @craigmcconomy9346 11 місяців тому

    I love your videos! Always recommend to my coworkers. #mcoding

    • @craigmcconomy9346
      @craigmcconomy9346 11 місяців тому

      one cool trick I saw recently was (ab)using conditional breakpoints to introduce transient print side effects, eg. a condition of "print(f'{user} logged in') and False"

  • @spaghettihair
    @spaghettihair 11 місяців тому

    You can set the pycharm debugger to break on exceptions!

  • @XDjUanZInHO
    @XDjUanZInHO 11 місяців тому

    As always, going the other mile to show everything deeper than the surface level content #mcoding