Live Code Review | Faker

preview_player
Показать описание

This is a new series called “Under the Hood." In this live stream, I'll dive into the code and design of an open-source project together with you. This is going to be completely unscripted, so you'll see my real-time reactions to the code and how it’s been designed.

#arjancodes #softwaredesign #python
Рекомендации по теме
Комментарии
Автор

Ahhh sorry... I totally forgot to give the package a grade at the end! So: I'd give this a 6/10. There's a good attempt at trying to separate generating the various types of data. However, the design heavily relies on object-oriented programming, it does counterintuitive things with module imports, and the proxy class solution is messy in my opinion - that needs a redesign. What are your thoughts? Do you agree?

Also: let me know in the comments if you'd like me to do another session like this or not!

ArjanCodes
Автор

Great video! One thing that I'd mention is that many of us open-source library developers try to build our code to support all currently supported Python versions (I.e. those that haven't reached end-of-life). Currently, this is 3.8+, meaning we don't yet have access to the parameterized generics on builtins like list, which is why we import parameterized versions from the typing module. Once 3.8 reaches EOL, we won't need to import those anymore, and once 3.9 reaches EOL, we will be able to use the union shorthand (X | Y).

tannerbobanner
Автор

This was great. Hearing unedited code review feels more authentic and clicks more for me than hearing the same from a polished, edited video.

cheweh
Автор

Thanks Arjan! one thing I struggle with is arriving at a new project and trying to understand it from scratch. This kind of videos are the only ones that help me practice that skill. Watching your thought process is really valuable.
Please keep going with your videos, you are my #1 source of learning for programming, and I really enjoy them. Kudos

emiliopiotto
Автор

This is great, Arjan!! Awesome resource for beginners and experts alike.

Please make more of these, and preferrably put them under the Playlist 'Under the hood'.

sassydesi
Автор

Yes, do more of these. I liked hearing your unfiltered walkthrough of a Python library. I have 10+ years of experience in Python development and now run a dev team. It's always nice to hear other experienced coders review things. Note for improvement: Your microphone picked up bumps and noises when you hit the desk or your clothes moved.

MailForEric
Автор

This is such a neat idea of a video format! I learned so much from it, really helped me to bring some concepts together that I learned in your videos. Hope to see more of those :)

papeya
Автор

Haven't watched yet, but just based on the description - very cool idea! I always enjoy your content on this sort of thing. Looking forward to watching this one :)

Gigusx
Автор

I love this idea. I would like to see you start with an example of using the library first to help provide context. But definitely want to see you dive into some complex libraries which make no sense to me.

cetilly
Автор

Faker() works - but you are right, it's confusing. It would be interesting if you could rewrite a skeleton of Faker "done right", maybe with 1 or 2 providers each having a few functions.

havenisse
Автор

Love the idea of randomly reviewing a python pacakge. May i propose taking it a step further by cloning the repo, running tests, and exploring how you might contribute? From simple steps, like reading the CONTRIBUTING.rst file to more advanced like making a pull request. Thank you!

michaelmarinos
Автор

That was a brilliant idea to dive into one of those open source projects. It would be even nicer if you could create a simple package an publish it so we can learn how to start contributing to the open source community. Doesn't need to be anything fancy. Thanks again for your grate content.

DanielRodriguez-luuu
Автор

I’m 2 minutes in and I have to say this was such a brilliant idea.

If I could give you a million subs now, I would!

amazing-graceolutomilayo
Автор

I like the format! Studying other peoples code is really a great way to learn :)

trueboubou
Автор

Very interesting! I would like to know more about the approach of using an external database like SQLite or DuckDB to store the info about the Dutch cities - for example - and how these can be later used in the code

matteorenoldi
Автор

That was very interesting to watch you in action and seeing whats your train of thought, I like the format!

jakubzbroda
Автор

Great initiative. Thanks for starting this! One of the best ways to learn :)

juanpgp
Автор

When I saw the video title I thought it will be about impostor syndrome, as in "everyone sometimes feels like under the hood they are a faker". So glad it was not that. And great tips, thank you, this lib will come in useful on my next project.

VikiSil
Автор

Like this deep dive session, regred that haven't participated it. Awesome idea🎉

АндрійПрус-йм
Автор

38:07 You absolutely _do not_ need to duplicate type annotations for package users to get them. Instead, you only have to create an empty py.typed file in the package root, and type checkers will pick that up. .pyi files are only to be used by packages that don't want to add type hints in the code itself.

maleldil