Denis Orehovsky
Denis Orehovsky
  • 14
  • 138 836
How to Create and Publish Your Python Open-Source Package
A guide on how to create and publish your own open-source Python package.
We'll explore every stage of the process, using the "django-rest-batteries" package as an example.
Timestamps:
00:00 - Overview
01:40 - Ideas
03:12 - Package examples
04:18 - Readme-driven development
05:56 - Dependencies
10:06 - Downloads
10:57 - Smaller files/folders: Makefile, LICENSE, CHANGELOG, ...
13:29 - Testing
16:02 - Code coverage and fitness functions
17:54 - Linting
20:10 - GitHub actions
23:56 - Publishing to PyPI
Links:
django-rest-batteries → github.com/defineimpossible/django-rest-batteries
Poetry → python-poetry.org
Pipenv → pipenv.pypa.io/en/latest/
Black → github.com/psf/black
Ruff → github.com/astral-sh/ruff
Pytest → github.com/pytest-dev/pytest
Factory Boy → github.com/FactoryBoy/factory_boy
Follow me on Twitter → denisorehovsky
zhlédnutí: 502

Video

How to become a Full-Stack Python Web Developer
zhlédnutí 15KPřed 2 lety
Should You Become a Backend Python Web Developer or a Full-Stack czcams.com/video/b5_EhZZksY4/video.html How Sessions in Django Work czcams.com/video/IPvsu_QQmjY/video.html FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky​​​​
How to build scalable REST APIs with Django REST Framework
zhlédnutí 8KPřed 3 lety
DJANGO REST BATTERIES: github.com/defineimpossible/django-rest-batteries DJANGO STYLEGUIDE: github.com/HackSoftware/Django-Styleguide SOURCE CODE: github.com/apirobot/django-rest-scalable-apis-example FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky SONG CREDIT: Anno Domini Beats - Forever
Filters in Django - filter(A, B) vs filter(A).filter(B)
zhlédnutí 1,1KPřed 3 lety
FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky​​​​ FOLLOW ME ON INSTAGRAM (@denis.orehovsky): denis.orehovsky SONG CREDIT: Anno Domini Beats - Forever
Should You Become a Backend Python Web Developer or a Full-Stack
zhlédnutí 1KPřed 3 lety
FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky​​​​ FOLLOW ME ON INSTAGRAM (@denis.orehovsky): denis.orehovsky SONG CREDIT: Anno Domini Beats - Forever
What is WSGI and Why Do You Need Gunicorn and Nginx in Django
zhlédnutí 47KPřed 3 lety
FOLLOW ME ON INSTAGRAM (@denis.orehovsky): denis.orehovsky FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky​​​​ SONG CREDIT: Anno Domini Beats - Forever
3 Different Git Workflows Used in Production
zhlédnutí 2,4KPřed 3 lety
FOLLOW ME ON INSTAGRAM (@denis.orehovsky): denis.orehovsky FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky​​​​ SONG CREDIT: Anno Domini Beats - Forever
Introduction to SQLAlchemy for Django Developers
zhlédnutí 4,7KPřed 3 lety
FOLLOW ME ON INSTAGRAM (@denis.orehovsky): denis.orehovsky FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky​​​ SONG CREDIT: Anno Domini Beats - Forever
What Tech Should You Learn After Becoming a Python Web Developer?
zhlédnutí 445Před 3 lety
Why Distributed Systems Are Important in Web Development? czcams.com/video/6F-jvr5nWc8/video.html​ Introduction to RabbitMQ for Python Developers czcams.com/video/p23J6NTDhEk/video.html FOLLOW ME ON INSTAGRAM (@denis.orehovsky): denis.orehovsky FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky​​ SONG CREDIT: Anno Domini Beats - Forever
Introduction to RabbitMQ for Python Developers
zhlédnutí 39KPřed 3 lety
Why Distributed Systems Are Important in Web Development? czcams.com/video/6F-jvr5nWc8/video.html FOLLOW ME ON INSTAGRAM (@denis.orehovsky): denis.orehovsky FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky​ SONG CREDIT: Anno Domini Beats - Forever
Why Distributed Systems Are Important in Web Development?
zhlédnutí 1,7KPřed 3 lety
FOLLOW ME ON INSTAGRAM (@denis.orehovsky): denis.orehovsky FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky SONG CREDIT: Anno Domini Beats - Forever
How Sessions in Django Work
zhlédnutí 17KPřed 3 lety
FOLLOW ME ON INSTAGRAM (@denis.orehovsky): denis.orehovsky FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky SONG CREDIT: Anno Domini Beats - Forever
Why do you need OOP in Python?
zhlédnutí 453Před 3 lety
FOLLOW ME ON INSTAGRAM (@denis.orehovsky): denis.orehovsky FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky SONG CREDIT: Anno Domini Beats - Forever
Single Responsibility Principle in Python (The S in SOLID)
zhlédnutí 682Před 3 lety
FOLLOW ME ON INSTAGRAM (@denis.orehovsky): denis.orehovsky FOLLOW ME ON TWITTER (@denisorehovsky): denisorehovsky SONG CREDIT: Anno Domini Beats - Forever

Komentáře

  • @nicocolosso4092
    @nicocolosso4092 Před 8 dny

    BE SURE TO ALLOW SSH TRAFFIC WITH UFW AFTER ENABLING IT! I got stuck on this for days and couldn't figure out why I was suddenly unable to ssh onto my instance. I hope this saves someone the headache I went through.

  • @grokitall
    @grokitall Před 22 dny

    the fundamental problem with all these models is that they don't work with continuous integration or refactoring, due to being based on the idea that there is no problem with long lived feature branches. unfortunately this ignores the fact that every branch is a fork of the entire code base, and forks diverge over time until it becomes impossible to merge back in. this is why trunk based development is central to continuous integration and test driven development.

  • @satyamwarghat1305
    @satyamwarghat1305 Před 27 dny

    Awesome

  • @TahriAhmed-pt9tf
    @TahriAhmed-pt9tf Před měsícem

    your so good at making thing so simple thank you ❤️❤️

  • @michaeldjango
    @michaeldjango Před 2 měsíci

    Thanks, am watching from St Petersburg

  • @etp-yu3cn
    @etp-yu3cn Před 2 měsíci

    на русском нету?

  • @DzintarsDev
    @DzintarsDev Před 2 měsíci

    The problem about all these Git videos is that - "You can do this, or you can do this, or you can do this, but if you have this, then you can do this and then that".

  • @shantanukaushikmathoholic
    @shantanukaushikmathoholic Před 3 měsíci

    Need video on non-blocking connection also

  • @WallyJ2K
    @WallyJ2K Před 4 měsíci

    Great explanation!

  • @mmhgarcia
    @mmhgarcia Před 4 měsíci

    Good Job !!! 🤝

  • @MehrdadMahmoodpoor
    @MehrdadMahmoodpoor Před 4 měsíci

    Nice

  • @ammadkhan4687
    @ammadkhan4687 Před 5 měsíci

    I like your video. Could you please make a video on concept of RabbitMQ -- topics like exchange , queues, producer , consumers.. I will really appreciate. not able to find relevant video. Thanks in advance.

  • @stepkurniawan
    @stepkurniawan Před 6 měsíci

    "If youre using python, I would recommend you to use rabbitMQ as a message broker, because most likely you're going to use rabbitmq as a message broker" - wow such convincing

  • @AeroJules
    @AeroJules Před 6 měsíci

    Wanted to ask, i do not have a *. wsgi file i only have a wsgi.py file. Thus that command with gunicorn is erroring out. What should i do?

  • @erickalcala7649
    @erickalcala7649 Před 6 měsíci

    what is the last one called?

  • @jparks6544
    @jparks6544 Před 6 měsíci

    music is too annoying to keep up with what you are explaining

  • @jairajsahgal7101
    @jairajsahgal7101 Před 7 měsíci

    Thank you

  • @ahmadreza2189
    @ahmadreza2189 Před 7 měsíci

    shut the mudic off plz

  • @hzzzbn
    @hzzzbn Před 7 měsíci

    superb explanation!

  • @jamesboulger8705
    @jamesboulger8705 Před 8 měsíci

    You should really put long-ass url's you feature in your video into your video's description. Thanks so much, the video was very helpful.

  • @AshiqAli-ie5pm
    @AshiqAli-ie5pm Před 8 měsíci

    Very helpful Denis. Thanks a lot.

  • @johnsabini3218
    @johnsabini3218 Před 9 měsíci

    video is very good. Good overview. Please refrain from music . It distracts from the content.

  • @vrts007
    @vrts007 Před 9 měsíci

    Thanks bro, Crisp and Clear explanations in short words...

  • @gilijose
    @gilijose Před 9 měsíci

    Thanks for sharing this. I have a question, when writing the update function in the service layer, how do you deal with many to many fields? I have a few serializers that handle this using the DRF Writable Nested package.

  • @aharongina5226
    @aharongina5226 Před 10 měsíci

    why do you need to show your face on the screen? thumb down!

  • @ipelezikis
    @ipelezikis Před 10 měsíci

    Hello. Nice video. Another way to use a certain serializer (InputSerializer) for all requests and a different one (OutputSerializer) for all responses is to override data property and many_init method of InputSerializer to use the OutputSerializer for responses and declare InputSerializer as the value of serializer_class attribute on your ModelViewset. If anyone is interested I can write the code. Its a couple of lines

  • @adityaheart9671
    @adityaheart9671 Před 11 měsíci

    Please post videos like this

  • @KashishNaqvi-ex5me
    @KashishNaqvi-ex5me Před 11 měsíci

    Thanks for this amazing introduction. I am a beginner and a new subscriber. Can I use rabbitmq for priority queues?

  • @develop7343
    @develop7343 Před 11 měsíci

    I'm often have problems with poetry, which is why I started use pip-tools in my projects

    • @denisorehovsky
      @denisorehovsky Před 11 měsíci

      Interesting. If you don't mind sharing, what problems do you have with poetry?

    • @develop7343
      @develop7343 Před 11 měsíci

      @@denisorehovsky Еnvironment often crashed, paycharm couldn't find the libraries. Everything was solved by reconfiguring poetry / reinstalling IDE, but I want everything to work out of the box without any extra steps

  • @mohammadazg4548
    @mohammadazg4548 Před 11 měsíci

    Thank you for this video

  • @eugene.prokhorov
    @eugene.prokhorov Před rokem

    HE'S ALIVE Is this a legendary comeback for those who interested in mastering web development?) Will be there more new videos?

    • @denisorehovsky
      @denisorehovsky Před rokem

      Hah. No, it's not a comeback, at least for now. I plan to upload new videos when I have something to share, but it won't be on a schedule :)

  • @dmitrygubich4457
    @dmitrygubich4457 Před rokem

    What a comeback! Thanks :)

  • @devakumark9261
    @devakumark9261 Před rokem

    we can use session in mongodb ?

  • @RaulTavares
    @RaulTavares Před rokem

    Great content! Thanks for sharing. As a side note, the background "music" mais it hard to follow the dialog.... :;-)

    • @denisorehovsky
      @denisorehovsky Před rokem

      Thanks for the feedback. I see a lot of people complaining about it. I will fix it in next videos :)

  • @ianleo3030
    @ianleo3030 Před rokem

    you are awsome but the music is not a good idea when you explain somehting

  • @user-vf7pc4tn9z
    @user-vf7pc4tn9z Před rokem

    почему не на русском?

  • @zea7452
    @zea7452 Před rokem

    What is the difference beetween wsgi and gunicorn? And what gunicorn do? What wsgi do? 😢

  • @simbarashemaunga5575

    Too fast

  • @jkim711
    @jkim711 Před rokem

    nice video

  • @statsconchris
    @statsconchris Před rokem

    Hi can you help me understand something, so if you use nginx you need gunicorn, but what if i use apache web-sever, i dont need gunicorn anymore because apache includes wsgi? in this correct? thanks

  • @mrj1997
    @mrj1997 Před rokem

    please don't use background music

  • @Benemortasia666
    @Benemortasia666 Před rokem

    Thank you that was very informative.

  • @soorajbaiju9327
    @soorajbaiju9327 Před rokem

    Great explanation.Thanks bro 🙌

  • @JonathanOrdonezMX
    @JonathanOrdonezMX Před rokem

    Thank you!

  • @ok.kemboi
    @ok.kemboi Před rokem

    Thank you

  • @stephendyson3003
    @stephendyson3003 Před rokem

    I love janga and joonicorn

  • @arvidj8918
    @arvidj8918 Před rokem

    This is the shortest and best of all the Django/WSGI -ones. Very nice job.

  • @space_star_one
    @space_star_one Před rokem

    2:25

  • @user-ur2en1zq4f
    @user-ur2en1zq4f Před rokem

    Thanks

  • @MehrdadMahmoodpoor
    @MehrdadMahmoodpoor Před rokem

    Thanks, this video was useful to me.