Interview with a Senior Python Developer - Part1

Поделиться
HTML-код
  • Опубликовано: 4 фев 2025

Комментарии • 888

  • @9e7exkbzvwpf7c
    @9e7exkbzvwpf7c 2 года назад +4033

    "sometimes we have a competition to write the longest list comprehension...and sometimes it's in production...and sometimes we don't call it a competition but work" literally perfect.

    • @enriquellerena4779
      @enriquellerena4779 2 года назад +34

      Ah yes, I relate so much

    • @unflexian
      @unflexian 2 года назад +51

      im laughing my ass of for the first time in months

    • @JustinLCooper
      @JustinLCooper 2 года назад +14

      @@unflexian Happy for you 😀. Laughing is fun.

    • @quasa0
      @quasa0 2 года назад +30

      @@JustinLCooper you know what else is fun? List comprehension

    • @orlando7968
      @orlando7968 2 года назад +13

      I fucking broke out laughing when he said that

  • @JamesRyan-ni7tu
    @JamesRyan-ni7tu 2 года назад +2577

    "It's a jungle... to be fair the natural habitat of a python" LMAO

  • @urscion
    @urscion 2 года назад +3280

    "When dependencies don't work, that's when the fun begins"
    Now this is pipracing!

    • @engineerhealthyself
      @engineerhealthyself 2 года назад +17

      burst out laughing with that one

    • @yaroslavkizyma2370
      @yaroslavkizyma2370 2 года назад

      You just have the best sex of your life with bloody TENSORFLOW DEPENDENCIES ON cursed M1 CPU. Damn! Sometimes I doubt my life choices.

    • @HitBoxMaster
      @HitBoxMaster 2 года назад +4

      @Peter Clay Can I get a pit of an ellaboration? xD

    • @surfsnowpro
      @surfsnowpro 2 года назад +14

      "I usually tell my students to pivot their idea, then," hahaha!

    • @malte3421
      @malte3421 2 года назад +3

      I've had my first experience of that kind recently. Gave me the same fuzzy feelings like apt dependency hell.

  • @MrKeepItTrill
    @MrKeepItTrill 2 года назад +946

    'which python... which python3' hit hard

    • @seaweedglob
      @seaweedglob 2 года назад +14

      which py

    • @andrey2001v
      @andrey2001v 2 года назад +50

      my workstation had a problem: there was conda but command python directed to python from visual studio, pip directed to Microsoft store's python and pip3 directed to my normal python installation. Why? How? idk.
      After that I removed all pythons and never used anything but conda ever again.
      But now conda's getting slow AF so I'm considering moving to mamba...

    • @DMSBrian24
      @DMSBrian24 2 года назад +4

      this xD

    • @protectedmethod9724
      @protectedmethod9724 2 года назад +11

      @@andrey2001v what I do to solve this problem on windows: remove all pythons, pips, etc. from your PATH. then create a new folder somewhere and add that folder to your PATH. Then create symlinks to the various binaries you care about in that folder and u can name them whatever you want to avoid confusion.

    • @Fanmade1b
      @Fanmade1b 2 года назад +4

      I've only recently started to learn python and used it for less than a week when I started running into this problem :/

  • @sergeybeatsburysemerikov9986
    @sergeybeatsburysemerikov9986 Год назад +172

    "Python is jack-of-all-trades, good at them. Except production code. Except in the way we use it."
    Golden.

  • @stonetop
    @stonetop 2 года назад +633

    "multi-threading is for everyone but not everyone is meant for multi-threading" is a truly profound statement.

    • @davidwuhrer6704
      @davidwuhrer6704 2 года назад +20

      Multithreading considered idiotic
      One challenge in multitasking operating systems is separating processes in such a way that interprocess communication and synchronisation is still possible. Every multitasking operating system has solved that. Basically there are two models: The batch model used by CTSS, (Open)VMS, and Windows; and the _new_ (from 1957) fork-join model used by _everyone else._
      With multithreading, you have to re-invent operating system primitives for clean data separation and synchronisation all over again, with the potential to make all the possible mistakes everyone else made decades ago all over again and _no_ support from the OS itself. There are POSIX threads, so there is _some_ support from the OS, but in Linux at least, threads have _more overhead_ that processes. Of course, because you not only have to keep track of the memory and the stack, but also of the threads and their stacks, plus synchronise between environment changes. The IPC is on the user, so there is still plenty opportunity to fuck it up.
      That's why python uses a global interpreter lock. It kills all performance benefits you might get from parallelisation, but it makes multithreading possible for those who don't understand coroutines or futures.
      Alternatively, you can use subprocesses. These are just ordinary processes spawned through the fork system call. Almost no memory initialisation, the new process only needs to check if it is the parent or the child, and run the appropriate code path in the same script. The only complication is that data passed between processes must be pickled.
      This is true for all operating systems for which python is available except Windows. Windows uses the batch memory model, based in the assumption that each process is a batch of punch cards containing a self-contained Fortran listing. Accordingly, memory is initialised for each new process, then data is copied from registers in the physical RAM to other registers in the same physical RAM. This makes starting a new process rather expensive compared to the fork-join model. Which is why multithreading exists. Which is why the GIL exists. Which is why you're still better off not using multithreading, but of course a lot of frameworks are written using multithreading based on the misconception that it is more lightweight than starting a new process.
      To be fair, Windows itself does use multithreading effectively. The svchosts.exe contains several system daemons (called "services" in Windows (and in systemd even through services are something different in Lunix already)) that are required at startup. Putting them all in one file makes startup faster, and the multithreading in this one process is effective because the daemons do not share any data with each other, do not communicate with each other, and do not synchronise with each other in any way. Writing something like that in python would be, if not impossible, completely pointless.

    • @DS-nv2ni
      @DS-nv2ni Год назад +1

      @@davidwuhrer6704 "It kills all performance benefits you might get from parallelisation, but it makes multithreading possible for those who don't understand coroutines or futures."
      That's exactly the reason for which python has no purpose, if wouldn't be for the AI wave and the academic agenda of making people dumber at each generation.

    • @kianyanglee4618
      @kianyanglee4618 Год назад +1

      Yes

    • @neonmidnight6264
      @neonmidnight6264 Год назад +9

      @@davidwuhrer6704 You're not meant for multi-threading

    • @davidwuhrer6704
      @davidwuhrer6704 Год назад

      @@neonmidnight6264 I've always found MPI embarrassingly easy and keep wondering why others find it confusing. I also don't understand how people keep writing race conditions.
      A computer scientist named Lee wrote a paper about multithreading in which he references the "folk definition of insanity": Doing the same thing over and over and expecting different results. He observed that to write multithreaded code, you have to be insane by that definition.
      The simple fact is that the process scheduler of any operating system already does all of the multiplexing that you'd need for multithreading. And it does it faster and more efficiently. Posix threads have significantly more overhead than processes do.
      One caveat that often bites Python programmers is that using treads you can reassign a variable from another thread (which more likely than not introduces a race condition), while with processes you can't. You can only use the return value. (The output in shell script; Python pickles it.)
      I can do multithreading. In Java it is practically unavoidable, due to the Java VM and its memory model. That's not even the main reason why one should not use Java if at all possible.
      Writing parallel code is easy (unless you employ what Dijkstra calls "operational reasoning" (EWD1012)I guess.) Using threads for it is not fundamentally different from child processes, or MPI, or tensors, it is just unnecessary runtime overhead.

  • @beefchalupa
    @beefchalupa 2 года назад +2343

    This guy's gotta be the greatest coder of all time or something. It's like he has intimate knowledge of how every single language works.

    • @sonOfLiberty100
      @sonOfLiberty100 2 года назад +91

      His knowledge on vim was poor

    • @Micah_4D
      @Micah_4D 2 года назад +107

      Not just how they work but also all nuance and practical problems with each language.

    • @Phroggster
      @Phroggster 2 года назад +219

      @Danilo No, it's a way of life. !wq

    • @sgt92
      @sgt92 2 года назад +14

      @@Phroggster god you made my day...😁

    • @poulet_malassis7607
      @poulet_malassis7607 2 года назад +35

      @@sonOfLiberty100 I guess you are offended.

  • @zaedvfdsd3903
    @zaedvfdsd3903 2 года назад +927

    "I usually tell my students ... to pivot their idea"
    That resonated with me ...

    • @sevdev9844
      @sevdev9844 2 года назад +9

      That part I didn't completely understand, as a non natively English speaker. It's about realizing their idea but changing it, so it works with Python?

    • @dgmullin1
      @dgmullin1 2 года назад +52

      @@sevdev9844 I think it means abandoning their idea for something that actually works - that's how I took it

    • @zaedvfdsd3903
      @zaedvfdsd3903 2 года назад +51

      @@sevdev9844 He was talking about dependencies (all the libraries your software depends on). Dependencies conflicts usually happen when several of your Python packages have the same dependency but with different incompatible versions. It's hell to resolve this kind of problem. And when you will ask your teacher / senior engineer for advice, he will tell you : "Hmmm ... Let me see ... you should try to pivot your idea ...". Meaning : find another way to code that without those packages = a lot of code to rewrite because he has no idea how to resolve this kind of problem and he can't be bothered to really look into it

    • @quasa0
      @quasa0 2 года назад +2

      @@zaedvfdsd3903 I felt it was more about people trying to make startups and stuff and building MVP in python

    • @thehammurabichode7994
      @thehammurabichode7994 2 года назад +1

      @@zaedvfdsd3903 I was thinking this meant "give up on your dreams", so the original comment of "this resonated with me" worried me a bit

  • @NerdX151
    @NerdX151 2 года назад +1236

    That amazing feeling when you are 98% done with your program, but the package that you need is not supported by the version you are using, and the packages you are already using do not work in any other versions, and the only good answer on Stack Overlfow points to a third version where none of it works.

    • @rykehuss3435
      @rykehuss3435 2 года назад +31

      thats python for ya

    • @Daniel-ng8fi
      @Daniel-ng8fi 2 года назад +97

      thats when the fun bgins

    • @willful759
      @willful759 2 года назад +9

      amazing, time to package!

    • @DatIIV
      @DatIIV 2 года назад +25

      thats when you fork it and try/fail to port it to what ever version u need

    • @hawks3109
      @hawks3109 2 года назад +35

      @@DatIIV maybe this is because I'm a c++ coder at heart but.. Why not just write it yourself if the package doesn't work?

  • @wisdomcube7789
    @wisdomcube7789 2 года назад +541

    3:00 "pi qt is a good option for build GUIs, if you don't have any option"
    3:37 "just write it in C and wrap it in python, I wanna see you struggle"
    BEST

    • @incremental_failure
      @incremental_failure 2 года назад +4

      PyQt*. It's great, nothing else comes close.

    • @Henfredemars
      @Henfredemars 2 года назад +23

      PyQt? More like crash on exit. I've had to write an app to kill itself because it had no safe way of closing.
      I like to think it's in a better place now, like production.

    • @incremental_failure
      @incremental_failure 2 года назад +4

      @@Henfredemars That's something in your code. I've had no such issues and dealing with plenty of persistence.

    • @ritsu133
      @ritsu133 2 года назад +1

      @@incremental_failure It's great but more greater is Electron or don't write useless desktop apps in 2023

    • @nitramdh
      @nitramdh 2 года назад

      @@incremental_failure I may be crazy but I like tkinter I find it's easy to use just like vim

  • @gayming195
    @gayming195 2 года назад +670

    I love how Python's use case at the end is machine learning where all the programming is really just configuration of another library probably written in C++ lol

    • @CottidaeSEA
      @CottidaeSEA 2 года назад +144

      That's just Python in a nutshell. Give instructions to something written in a far more efficient language.

    • @PewPew_McPewster
      @PewPew_McPewster 2 года назад +57

      Everything that can be written in Javascript will be written in Javascript. Wrapped in a Python API.

    • @halcyonramirez6469
      @halcyonramirez6469 Год назад +31

      ​@Cottidae that's actually it's strength it's readability and ease of use is why people prefer it.
      granted it's not as fast but that's it offload it's weaknesses to other languages strength.

    • @lewiswood1693
      @lewiswood1693 Год назад +74

      @@CottidaeSEA The argument i have heard is, "Why don't i write this in a more efficient language like C++? because if i did i would still be coding and not talking to you."

    • @CottidaeSEA
      @CottidaeSEA Год назад +8

      @@lewiswood1693 When their code has finished executing, mine has as well.
      No, but really, writing code fast has more to do with what you're used to.

  • @EulerJr_
    @EulerJr_ 2 года назад +299

    We need a ”Junior C++ developer” video lmao

    • @Golipillas
      @Golipillas 2 года назад +236

      There is no such thing in the job market, you enter the C++ realm you automatically age several years and become a senior 🧓🏼

    • @tytywuu
      @tytywuu 2 года назад +14

      Thats contradictary

    • @yurisoares2596
      @yurisoares2596 2 года назад +6

      @@Golipillas There probably is. In the Game Industry.

    • @BudgiePanic
      @BudgiePanic 2 года назад +2

      @@yurisoares2596 Maybe for junior game engine engineers, otherwise aren't they usually using scripting languages that the engine parses?

    • @yurisoares2596
      @yurisoares2596 2 года назад

      @@BudgiePanic I dunno I'm not directing my studies towards that field, I'm just a lover of games. But I think there are plenty of games even AA and AAA that are built in Unity which uses C#.

  • @jeremyklein953
    @jeremyklein953 2 года назад +438

    Brings me back to one of my proudest moments. A single line of comprehension that went past our line length standards. God, it was so awful I loved it :)

    • @funkmedaddy
      @funkmedaddy 2 года назад +61

      man if your comphrensions don't span across 5 lines at least you're doing it wrong

    • @stenakestrid
      @stenakestrid 2 года назад +43

      It can always be more awful. My worst offender was a three-line set comprehension where the elements where dicts. The overloading of the curly braces is likely to trip up somebody, pure evil.

    • @yurisoares2596
      @yurisoares2596 2 года назад +24

      "Such a messy language... I love it".
      Senior Javascript Developer.

    • @mitk01
      @mitk01 2 года назад +7

      @@stenakestrid This is how you ensure keeping your job / clients

    • @iankirkpatrick2022
      @iankirkpatrick2022 2 года назад +1

      Come back to me when you get it longer than your method line length standard.

  • @thedapperfoxtrot
    @thedapperfoxtrot 2 года назад +290

    These are so great buddy! Keep it up, they're viral among all my programming peers. 😆

  • @r2_rho
    @r2_rho 2 года назад +367

    "You'll have to get rid of the training wheels. wheels.... pip wheels." 😂😂 that got me

    • @sb-jo2ch
      @sb-jo2ch 2 года назад +4

      That was the best one for me

    • @johanrojassoderman5590
      @johanrojassoderman5590 2 года назад +1

      The part just before it about "learning to write a bit and then shifting...to an air bus" did it for me xD

  • @ByteBeacon9660
    @ByteBeacon9660 2 года назад +250

    "if every variable is passed by reference you might just use globals everywhere" that related way too well with me

    • @BillLambert
      @BillLambert 2 года назад +24

      [[Legacy codebase intensifies]]

    • @heyosss1050
      @heyosss1050 2 года назад +4

      What exactly is the joke? I've learned about a semester's worth of C and that's literally what I do. Ples explain.

    • @bammam5988
      @bammam5988 2 года назад +53

      @@heyosss1050 Global variables (particularly ones that can be modified, as opposed to constants) are considered very bad practice, as it makes code much harder to follow. For example, without globals, you can see at a glance what any given function might do, because it only operates on the arguments you pass to it. On the other hand, if a function can mess around with globals, then it has so-called "side effects" that are really hard to see. Someone could call that function and not realize that it's messing with global data. Any two functions which are completely unrelated in the tree of function calls can directly affect each other through modifying and reading globals.
      In certain cases and certain environments, globals are unavoidable. But 7 times out of 10, when a new global gets created, it was probably a bad idea.
      The joke here is that in Python (disclaimer: I don't use Python), most things are passed by reference and could be modified by any function, and deep chains of variables passed by reference is almost as hard to follow as globals.

    • @jean4j_
      @jean4j_ 2 года назад +5

      @@bammam5988 to be fair it's the same in Java and most of other languages I feel. Objects are references. Aren't they?

    • @bammam5988
      @bammam5988 2 года назад +9

      @@jean4j_ Different languages have different ways of dealing with this. Again, I can't actually speak to Python since I don't use it.
      Most object-oriented langauges of course offer "public", "private", and sometimes other access modifiers.
      In Java, you can create "unmodifiable" versions of collections to return in a class's public interface. Both Java and C# have "interface" types, which allows you to limit the ways you can interact with an object. And C# takes this further with built-in "read-only" interfaces over collections, so you could return an array as an "IReadOnlyList" to prevent anybody from modifying it.
      C++ has a very interesting approach. Along with access modifiers and something like "interface types", you can mark variables and functions as "const". This is a compiler-enforced promise that the object won't be modified. For example, if you mark an object's member function "const" then the function cannot modify any of its fields (in other words, the "this" variable is const). And if you have a const reference to an instance of that class, then you can only call its "const" functions.

  • @I27.0.0.1
    @I27.0.0.1 2 года назад +331

    "Sometimes we do competitions who can write the longest comprehension and sometimes we doing it in out production code"

    • @francescotaioli2837
      @francescotaioli2837 2 года назад +30

      ".. And often we don't call it competition" This was great !

    • @Muhubi
      @Muhubi 2 года назад +15

      @@francescotaioli2837 "... we call it work" LMAO

    • @MrDelord39
      @MrDelord39 2 года назад

      💀

  • @AJD...
    @AJD... 2 года назад +162

    We were all waiting for machine learning to be dropped at some point. Teased us till the end!

    • @justinbliske1402
      @justinbliske1402 2 года назад +6

      I was waiting the entire video to hear him say something about machine learning. Perfect placement...right at the end

    • @rickyhineman4124
      @rickyhineman4124 2 года назад +3

      And the tensorflow easteregg around 4:30

  • @Gabriel-V
    @Gabriel-V 2 года назад +12

    "Critique for not using vectors. Happend to me several times in a row" 🤣🤣🤣🤣🤣🤣. Just brilliant. Keep it up

  • @dersg1freak
    @dersg1freak 2 года назад +365

    I wrote a hacky little tool with flask for an acquaintance's company and it saved their ass at the time. It was meant to be used for about a week and was a complete hack and the interface was inspired by vim of things(poor users). That's been over 5 years now and it's still used regularly. Somehow that thought terrifies me. I learned that nothing lasts longer than a makeshift solution.
    Just so we're clear, flask is great, but I certainly wasn't at the time.

    • @Undirvising
      @Undirvising 2 года назад +8

      Hey man, did made a small app with flask and dash/plotly which is mega fragile and hacky. For some reason still going strong after 2 years and lots of users.

    • @bravefastrabbit770
      @bravefastrabbit770 2 года назад +3

      @@frank8627-v8k What was the name of the company? JustWerx㋏

    • @Eclipsed_Archon
      @Eclipsed_Archon 2 года назад +39

      "nothing lasts longer than a makeshift solution" is a quote I will use for the rest of my life.

    • @Interpause
      @Interpause 2 года назад +1

      thanks for the quote

    • @ritsu133
      @ritsu133 2 года назад

      Any reasons to pick up Flask over express/fastify except you know Python and don't know JS? If you are writing API that sends JSONs, i think the most comfortable is to write in JS.

  • @dotgrid
    @dotgrid 2 года назад +7

    Yours is my favourite YT channel of all time. Every video is genius. Thank you so much for making these.

  • @Supakills101
    @Supakills101 2 года назад +139

    I feel like this guy really is a python user these lines are too real😅

  • @e1nste1in
    @e1nste1in 2 года назад +47

    "PyQt is a good option for building GUIs, ... if you don't have other options!" - Nailed it! 😅

  • @uwuLegacy
    @uwuLegacy 2 года назад +79

    "Learning python and then learning another language is like learning to ride a bike and then switching to an.... Airbus"

    • @sanjarsaidov9765
      @sanjarsaidov9765 2 месяца назад +1

      yeah when i switch do dart language i was like wtf is String and int

  • @LettersAndNumbers300
    @LettersAndNumbers300 2 года назад +16

    I only really had to get to grips with Python about two months ago, wasn't a fan before, but I'm starting to see the (Py)charm now. It's great coming back to this video every few weeks and getting more of the jokes! Love your work!

  • @A_Lo_Pex
    @A_Lo_Pex Год назад +9

    0:49 he turned into Ali G for a moment there "if you is with it | you is not with it" 😆

  • @MalgosO
    @MalgosO Год назад +3

    “Which tell me where is python”
    Dear god, I lost count of how many times I typed an iteration of this within windows terminal

  • @tamatotodile
    @tamatotodile 2 года назад +8

    "... if the timestamp in the SQLAlchemy is in the right format." felt this in my soul

  • @AD3Supa
    @AD3Supa 2 года назад +57

    May be "overstepping", but the videos you have made, including this one, are already better than the entirety of the Silicon Valley show. You have no idea how much I love what you do (PHP dev, JavaScript Dev, and C++ Dev made me sub) and can't wait to see where this channel goes from here.

    • @xN811x
      @xN811x 2 года назад +1

      Chill. They are funny, but not Silicon Valley kind of funny.

    • @engineerhealthyself
      @engineerhealthyself 2 года назад +28

      silicon valey is for people who want to code these videos are for people whose souls have been taken away from coding too much

  • @bijitgoswami6988
    @bijitgoswami6988 2 года назад +93

    "Thats like learning to ride a bike, and then going to learn how to ride an airbus"
    - Senior developer 2022

  • @soupnoodles
    @soupnoodles 2 года назад +17

    Honestly... even though I've been an avid Python user for 4 years now, this made me laugh so hard and remember the pain at the same time!
    Really good video, the thing about so many different venv tools, lmao I couldn't agree more
    I just stick with using `pip` now, preinstalled and eh, easy enough to use.

    • @lawrencedoliveiro9104
      @lawrencedoliveiro9104 2 года назад +1

      All that (Ana)Conda/Homebrew business is for Windows and Mac platforms, where package management is not quite as advanced as Linux.

  • @sixmike
    @sixmike 2 года назад +48

    i'm not proud to admit the "where's python" run really hit home with me.

    • @EmptyZoo393
      @EmptyZoo393 7 месяцев назад

      python-is-python3 is one of those simple Linux packages that should not exist, but does and solves whole classes of bugs while creating new ones.

  • @DS-ou7xm
    @DS-ou7xm Год назад +1

    Keep these interview videos coming, they make my day ..... Thank you 😅👍

  • @wristocrat
    @wristocrat 2 года назад

    Freaking gold this is my favorite channel ever!!!

  • @jpierce2l33t
    @jpierce2l33t 2 года назад +5

    I get so excited when I see a new one of these posted, these are genuinely hilarious and I *know* I'm about to laugh my ass off 🤣

  • @anthonysteinerv
    @anthonysteinerv 2 года назад +8

    This was brilliant, specially the "production" joke, that's was hilarious. Looking forward for a C#/C++ junior dev.

  • @charliemiller9141
    @charliemiller9141 2 года назад +34

    “Sometimes we do competitions on who can write the longest comprehension” - Stackoverflow, probably

  • @DMSBrian24
    @DMSBrian24 2 года назад +67

    "when you wanna do... machine learning" yeah that sums it up

    • @boltyk1
      @boltyk1 2 года назад +3

      that's the bait for the second part for sure :)

  • @arfuldojer
    @arfuldojer Год назад +1

    Honestly, this guy is a freaking genius. I love these videos! Keep up the good work my man!!

  •  2 года назад +21

    These vids are addicting

  • @JFed-9
    @JFed-9 2 года назад +10

    These are all hilarious. Definitely subscribed, I'm looking forward to part 2! I'd love to see more of the programming tools ones too, like you did with vim! Maybe you could do the git cli, or aws or something!

    • @jfuzi1620
      @jfuzi1620 2 года назад

      Git would be gold!

  • @chessprovoko5785
    @chessprovoko5785 2 года назад +4

    "which pip" I feel personally attacked!

  • @nemooverdrive760
    @nemooverdrive760 2 года назад +198

    3:00 PyQt is a good option for building GUIs; if you don't have any other option 😂

  • @chenseanxy
    @chenseanxy 2 года назад +21

    The "which python3" reminds me of the xkcd python environment thing

  • @tuXPinguin
    @tuXPinguin 2 года назад +4

    All of your videos are pure gold! I hope you'll soon find a Ruby/Rails Dev to interview as I can't wait to post that on my Bootcamp's Slack. - A DHH fanboy

  • @techjan3247
    @techjan3247 2 года назад +25

    As someone who programms in both Python and Javascript, I like to quote from Full Metal Jacket:
    "I am in a world of shit.
    But I am alive."

  • @ShotgunLlama
    @ShotgunLlama 2 года назад +31

    In college for one class taught by a temp instructor from facebook, the final assignment was to write some function using memoization. I implemented it using a single line of a monstrous lambda amalgamation long enough to wrap around to like 10 lines using a Y combinator

  • @maxprofane2
    @maxprofane2 2 года назад +129

    This guy has immense knowledge about every language out there. I suspect he's using machine learning.

    • @southpole76
      @southpole76 2 года назад +10

      Naw he wrote a python script

    • @TheBeigeBox
      @TheBeigeBox Год назад +2

      @@southpole76Through his EMACs of course

  • @astronemir
    @astronemir 2 года назад +20

    As an astronomer, I felt that CERN comment in my heart.

  • @kheppal
    @kheppal 2 года назад +13

    We need a c# junior up in here. Thank you for these!

  • @brycebolton17
    @brycebolton17 3 месяца назад

    never stop these videos man!

  • @andrewweirny
    @andrewweirny 2 года назад +11

    This is the most accurate portrayal of daily life as a software engineer I've ever seen.

  • @rob011
    @rob011 2 года назад +14

    “If every variable is passed by reference, you might just use globals everywhere”
    That look of realization destroyed me haha

  • @artificercreator
    @artificercreator 2 года назад +36

    Your videos are amazing. When his series run out, could you consider making how those characters do different things, could be like writing an array or just the way they use stack overflow? I think it is a good idea; like "meanwhile in" but instead of countries use senior developers. Hope ya like the idea. Thanks for reading.

  • @iAPX432
    @iAPX432 11 месяцев назад +1

    I am dev for more than 4 decades. This série is as funny as it is insightful!
    Wheels! F***ing Wheel! 🤣

  • @NastyWicked
    @NastyWicked 2 года назад +6

    This channel is like Krazam but uploading more often
    Great comedy and extremely relatable

  • @afshinseyfabai6961
    @afshinseyfabai6961 2 года назад +4

    Filthy frank finally getting a job and learning programming is what i wanted to see

  • @seraaron
    @seraaron 2 года назад +20

    I'd love to see you make one of these videos for Rust!

    • @berylliosis5250
      @berylliosis5250 2 года назад +2

      "Lifetimes". "Memory safety." "Memory safety." "70% of bugs at Microsoft". "Safe code, unsafe code, with memory safety". "No inheritance". "No null".

    • @Rene-tu3fc
      @Rene-tu3fc 2 года назад +3

      @@berylliosis5250 "what you need here is an Arc", "marcos", "; {}", "the future", "performance with safety". "cargo build, cargo run", "oh no, you dont need to return a result here, just do a .unwrap()", "this will replace C and C++ and Go and every other language"

    • @8__vv__8
      @8__vv__8 11 месяцев назад +1

      I had a Rust joke but I’m rewriting it in Rust

  • @bertblankenstein3738
    @bertblankenstein3738 2 года назад +3

    Good stuff as always. That python 2 and 3 gap, yep its there for sure.

  • @amirhosseinpourimanshad4678
    @amirhosseinpourimanshad4678 2 года назад +5

    I was literally dying for a python video from you!
    Keep it up

  • @chs76945
    @chs76945 2 года назад +9

    1:39 Oh my god, this had me rolling. "Don't ask what Python can do for you, ask what you can do for Python." That is the most on-the-nose tweak of Python culture I've ever heard.

  • @andersswanson8311
    @andersswanson8311 2 года назад +6

    The zooming is excessive -STAHHHP

  • @rons96
    @rons96 2 года назад +6

    Enable subtitles, even auto generated one. I'm from Brazil, and I love your channel

  • @joshfromsmosh3352d
    @joshfromsmosh3352d 2 года назад +46

    I wanna see a Lua programmer in this show! Keep it up!

    • @drishalballaney
      @drishalballaney 2 года назад +5

      HAHHA yes pls
      and maybe also rust :P

    • @gmailcuy
      @gmailcuy 2 года назад +3

      +1 Lua hobbyist here. He can start by saying why it has never mooned

  • @sazk4000
    @sazk4000 2 года назад +35

    "no we're not gonna talk about the GIL. it's an unwritten rule"

  • @wygiwyg
    @wygiwyg 2 года назад +1

    these are getting better and better

  • @martinpenchev2263
    @martinpenchev2263 8 месяцев назад

    This is the coolest programming video I've ever seen!

  • @KapilSharma-lt4gm
    @KapilSharma-lt4gm 2 года назад +14

    "which pip" , "which python" 🤣

  • @nollix
    @nollix 2 года назад +27

    Holy shit, the 'reads like English' part was incredible.

  • @Blimzio
    @Blimzio 6 месяцев назад

    I've seen many programming skits, but I spit my coffee out three times over the subtle funny as fuck references 🤣🤣🤣

  • @EzaEnkhtaivan
    @EzaEnkhtaivan 3 месяца назад +2

    "I never took the time to learn how package management in python works." Literally me, I refuse to take the upfront effort and learn it. Google everytime.

  • @benjiusofficial
    @benjiusofficial Год назад +1

    When I was first learning Tensorflow/Keras, trying to get the dependencies and versioning in pip was a nightmare.
    Now I just pivot my idea to not require essential things.

  • @guisoneka
    @guisoneka Год назад

    The last part using which hit home. I've spent to much time searching for the correct python executable

  • @Ohhimark100
    @Ohhimark100 2 года назад +2

    Miss your videos! Please upload!

  • @carljombin1694
    @carljombin1694 2 года назад

    #1 most best progamming video I have seen all year

  • @gregt0m
    @gregt0m 2 года назад

    Every one of these interviews are masterpieces.

  • @BrotherCheng
    @BrotherCheng 2 года назад +27

    Oh man when he started doing "which python" , "which python3", etc (4:30) I was laughing so hard. I don't use Python these days but it brought back all the fun times. I probably spent half a day just researching venv vs virtualenv as well since it made *so* much sense for the two to exist with such similar names/uses /s.

  • @RacoonCH
    @RacoonCH 2 года назад

    Dude, you crack me up! I hope your channel becomes big!

  • @lukaswalker2342
    @lukaswalker2342 2 года назад +2

    You have no idea how it works before you read the docs this sums it up real nice

    • @kravemir
      @kravemir 2 года назад

      Yep,... in Python I spend the of the time figuring out the available functions, names, and what is where located ... by browsing docs on each run-time crash. In statically typed languages it's prevented by compiler and very easy thing with auto-completion. This actually stands in the way of coding, because I have to waste time on technicalities.

  • @flamendless
    @flamendless 2 года назад +17

    As someone who just recently use python fulltime for work, I agree 😂

  • @VadimCebotari
    @VadimCebotari 2 года назад

    Well, you got me! Had to subscribe after this 😆

  • @wheezybackports6444
    @wheezybackports6444 2 года назад +2

    This man is so brave for being honest in this interview

  • @kalelalves
    @kalelalves 2 года назад +3

    "it's not what python can do for you, is what you can do for python"

  • @DaleAJackson
    @DaleAJackson 2 года назад +16

    Still loving these! Friendly critique though: it feels like your latest videos are going heavier on "zoom the frame in and out while they're talking". It's a great gag, but doing it every single cut is distracting and making me a little nauseous.

  • @timturner7609
    @timturner7609 Год назад

    Pip wheels hit me right in the feels. I dont even know what it is or does, but every time I have to do something in python pip wheels is there

  • @johnsaunders6510
    @johnsaunders6510 2 года назад +73

    You might as well just use globals everywhere.... Stares at camera. LOL

    • @sbypasser819
      @sbypasser819 2 года назад +2

      if python, might as well

    • @heyosss1050
      @heyosss1050 2 года назад +1

      What exactly is the joke? I've learned about a semester's worth of C and that's literally what I do. Ples explain.

    • @sbypasser819
      @sbypasser819 2 года назад +1

      @@heyosss1050 I think because staring at the camera = finding out something

    • @heyosss1050
      @heyosss1050 2 года назад

      @@sbypasser819 Oh like this is some revelation to him? lol nice

  • @clutterkase
    @clutterkase Год назад

    i just seriously wrote a dictionary comprehension inside of a list comprehension inside of a generator comprehension that was 196 characters long. I just had to rewatch for 3:48. I love this video

  • @jzdev8462
    @jzdev8462 2 года назад +3

    can't wait for the interview with flutter dev

  • @bmoharryman5809
    @bmoharryman5809 Год назад

    I'm learning R, and I can't start without your video of an R programmer. You'll have to pull out your most mundane character yet.

  • @Bou678
    @Bou678 3 месяца назад

    “just write it in C then wrap it in python, i wanna C you struggle” 😂😂😂

  • @djstacktrace
    @djstacktrace Год назад +3

    "When dependencies don't work, that's when the fun begins."
    "I usually tell my students, to pivot their idea then."
    Gold.

  • @FurankieSama
    @FurankieSama 2 месяца назад

    "if you is with it or you is not with it"😂😂😂😂 Golden

  • @undefined-mj6oi
    @undefined-mj6oi 2 года назад +10

    I guess the next video is "Interview with a Senior Machine Learning Engineer in 2022"

  • @christianpenguin2651
    @christianpenguin2651 9 месяцев назад

    „If the timestamp in sqlalchemy is in the right format“...oh I can so relate to that one

  • @twentytwentyeight
    @twentytwentyeight 2 года назад

    Ugghhhh the moment of searching for the current versions in terminal made me itchy sweat

  • @phil562
    @phil562 Год назад +1

    As a non-technical tester, these videos sound like every sprint review for the last 10 years.

  • @swizice
    @swizice 2 года назад +1

    “If you is with it or you is not with it.” 😂😂😂

  • @n.w.4940
    @n.w.4940 Год назад

    The thing with the fusion reactor got me so badly. Almost killed me, laugh-caughed so hard I thought it's over. Luckily the exception could be caught.

  • @derpnerpwerp
    @derpnerpwerp Год назад

    This cuts deep. I work on machine learning for computer vision. My degree is in software engineering. I spent quite a long to creating a multiprocessing pipelining framework in python to work around the GIL.. and its now 5 years later, we moved from caffe, to tensorflow, to keras, back to tensorflow.. but tensorflow tensor rt. I really like the hackiness of writing python.. but the language is slow as shit. At my company the primary language we use is java, so its either write dubious python code for machine learning and uncover undeclared variables in production (cause, lets be honest, I stopped running nose tests years ago when I no longer had a dev machine with a gpu.. and was too lazy to work around it) or writing thousands of lines of java boiler plate to do boring shit. I'm pretty sure my purpose built model serving code is faster than Seldon or similar frameworks.. but I'm too scared to test this theory since I put so much effort into it. I am capable of writing C/C++ and even custom cuda kernels.. but far too lazy

    • @omarjimenezromero3463
      @omarjimenezromero3463 10 месяцев назад

      lua is in between python and C/C++ but it is not supported by the comunity as hard as python, so here we are with python or with C/C++ no middle way like lua 😢

  • @spoddie
    @spoddie Год назад

    "if every variable is passed by reference you might just use globals everywhere" has moment of clarity