This media is not supported in your browser
VIEW IN TELEGRAM
اون تیرانداز ترکه رو یادتون تو المپیک؟ توییت زد ایلان ماسک رو تگ کرد گفت بنظرت رباتهایی میان که اینجوری، با یه دست تو جیب، تیراندازی کنن و مدال بیارن؟
این کلیپو امروز ایلان ماسک توییت کرد: 😅
این کلیپو امروز ایلان ماسک توییت کرد: 😅
Forwarded from Python BackendHub (Mani)
فرهنگ فیدبک دادن واقعا افتضاحه! یک نفر میاد همینطوری کامنت میذاره، بدون اینکه هیچ دلیل و استدلالی باشه. هروقت دارین یک نظری راجب یک content میدین، چه مثبت چه منفی باید اینطوری باشه:
من فکر میکنم <افکارتون>…، چون <دلیل ۱> و <دلیل ۲>.
من حدس میزنم دوستمون چرا همچین حرفی زده، برای همین تو کانال توضیح میدم:
اولا سطح همه ویدیو ها خیلی پایینه، من دارم یک چیزیو abstract شده به شما توضیح میدم، با ازمون خطا. من نیازی به ازمون خطا ندارم برای اینکه اون مطلبو به شما بگم، بلکه دارم سعی میکنم انتقال مطلب رو قوی تر انجام بدم
دوما همه چیزو تو detail ریز توضیح نمیدم. مثلا تو ویدیو اخر میگم اره Session داره ابجکت های orm اتون رو track میکنه. نمیام بگم چطوری میکنه. چون باید یک ویدیو بدم فقط راجب این حرف بزنم، و به درده ۹۹ درصد نمیخوره و هدف یک crash course نیست و اکثریت رو گیج میکنه. به جاش با ازمون خطا این فکتو ثابت میکنم.
@PyBackendHub
من فکر میکنم <افکارتون>…، چون <دلیل ۱> و <دلیل ۲>.
من حدس میزنم دوستمون چرا همچین حرفی زده، برای همین تو کانال توضیح میدم:
اولا سطح همه ویدیو ها خیلی پایینه، من دارم یک چیزیو abstract شده به شما توضیح میدم، با ازمون خطا. من نیازی به ازمون خطا ندارم برای اینکه اون مطلبو به شما بگم، بلکه دارم سعی میکنم انتقال مطلب رو قوی تر انجام بدم
دوما همه چیزو تو detail ریز توضیح نمیدم. مثلا تو ویدیو اخر میگم اره Session داره ابجکت های orm اتون رو track میکنه. نمیام بگم چطوری میکنه. چون باید یک ویدیو بدم فقط راجب این حرف بزنم، و به درده ۹۹ درصد نمیخوره و هدف یک crash course نیست و اکثریت رو گیج میکنه. به جاش با ازمون خطا این فکتو ثابت میکنم.
@PyBackendHub
This media is not supported in your browser
VIEW IN TELEGRAM
اگه اوپنسورس کار میکنید، حتما ببینید!
دلسرد نشید. ❤️
دلسرد نشید. ❤️
توی این مقاله، راجع به ابزارها و فلوی توسعه نرمافزار متنباز پایتون نوشتم!
نکاتی که باید بعنوان Contributor و Maintainer رعایت کنید. درباره نقش هر یک از ابزارهای زیر صحبت کردیم:
PyTest - pre-commit - Tox - GitHub Actions - Ruff - MkDocs - Material MkDocs - Sphinx - Coverage.py - CodeCov
و اینکه خودم چطور از این ابزارها استفاده میکنم.
اگه ریپازیتوری متنباز توسعه میدید، این مقاله دید خیلی خوبی راجع به روند توسعه بهتون میده. اینکه چطور Development Experience رو افزایش بدیم و ریپازیتوری رو دربرابر Vulnerabilityها مقاوم کنیم.
Link 👉 https://blog.imsadra.me/python-open-source-development-how-i-build-and-maintain-open-source-repositories
امیدوارم لذت ببرید. :) ❤️
نکاتی که باید بعنوان Contributor و Maintainer رعایت کنید. درباره نقش هر یک از ابزارهای زیر صحبت کردیم:
PyTest - pre-commit - Tox - GitHub Actions - Ruff - MkDocs - Material MkDocs - Sphinx - Coverage.py - CodeCov
و اینکه خودم چطور از این ابزارها استفاده میکنم.
اگه ریپازیتوری متنباز توسعه میدید، این مقاله دید خیلی خوبی راجع به روند توسعه بهتون میده. اینکه چطور Development Experience رو افزایش بدیم و ریپازیتوری رو دربرابر Vulnerabilityها مقاوم کنیم.
Link 👉 https://blog.imsadra.me/python-open-source-development-how-i-build-and-maintain-open-source-repositories
امیدوارم لذت ببرید. :) ❤️
Sadra Codes
توی این مقاله، راجع به ابزارها و فلوی توسعه نرمافزار متنباز پایتون نوشتم! نکاتی که باید بعنوان Contributor و Maintainer رعایت کنید. درباره نقش هر یک از ابزارهای زیر صحبت کردیم: PyTest - pre-commit - Tox - GitHub Actions - Ruff - MkDocs - Material MkDocs…
اینم اضافه کنم، از تمام ابزارهایی که نام بردم (به جز codecov) در ریپازیتوری PyAction استفاده کردم.
https://github.com/lnxpy/pyaction
قبلا از codecov واسه نشون دادن coverage badge استفاده میکردم. بد نبود ولی پرکتیس جالبی نیست. میشه اون badge رو از روشهای بهتری هم درستش کرد و به نمایش گذاشت.
میتونه مثال خوبی باشه واسه تمرین!
https://github.com/lnxpy/pyaction
قبلا از codecov واسه نشون دادن coverage badge استفاده میکردم. بد نبود ولی پرکتیس جالبی نیست. میشه اون badge رو از روشهای بهتری هم درستش کرد و به نمایش گذاشت.
میتونه مثال خوبی باشه واسه تمرین!
GitHub
GitHub - lnxpy/pyaction: :octocat: Create GitHub Actions Using Python
:octocat: Create GitHub Actions Using Python. Contribute to lnxpy/pyaction development by creating an account on GitHub.
تقریبا هرچیزی که راجع به Lambda Functionها در پایتون نیازه که بدونید رو اینجا قرار دادم! ۵ دقیقه زمان میبره خوندنش!
- بهترین و بدترین رویکردهای استفاده از لامبداها.
- یوزکیسهای عادی.
- یوزکیسهای پیشرفته و کاربردی.
link 👉 https://blog.imsadra.me/lambda-the-single-line-function
لذت ببرید. :))
پینوشت: عکس پست یکی از جالبترین و در عین حال، بدترین یوزکیسهای لامبدا فانکشنه. اینکه بعنوان یه Decorator از لامبدا استفاده کنی! 😅
- بهترین و بدترین رویکردهای استفاده از لامبداها.
- یوزکیسهای عادی.
- یوزکیسهای پیشرفته و کاربردی.
link 👉 https://blog.imsadra.me/lambda-the-single-line-function
لذت ببرید. :))
پینوشت: عکس پست یکی از جالبترین و در عین حال، بدترین یوزکیسهای لامبدا فانکشنه. اینکه بعنوان یه Decorator از لامبدا استفاده کنی! 😅
درود دوستان. شرکت خوب جهت امریه سراغ دارید؟ (ترجیحا شیراز ولی تهرانم اوکیه)
دانشکده فنی دولتی درس خوندم. لیسانس نرمافزار. معدل بالا.
پیوی من: @lnxpy
اگه به دیده شدن هرچه بیشتر این پیام کمک کنید، خیلی ممنون میشم. :) ❤️
دانشکده فنی دولتی درس خوندم. لیسانس نرمافزار. معدل بالا.
پیوی من: @lnxpy
اگه به دیده شدن هرچه بیشتر این پیام کمک کنید، خیلی ممنون میشم. :) ❤️
Sadra Codes pinned «درود دوستان. شرکت خوب جهت امریه سراغ دارید؟ (ترجیحا شیراز ولی تهرانم اوکیه) دانشکده فنی دولتی درس خوندم. لیسانس نرمافزار. معدل بالا. پیوی من: @lnxpy اگه به دیده شدن هرچه بیشتر این پیام کمک کنید، خیلی ممنون میشم. :) ❤️»
Forwarded from Learn with Osman (Osman Makhtoom)
Linkedin
Osman Makhtoomnejad on LinkedIn: سلام به همگی!
من دنبال هر کسی هستم که دنبال من میگرده 😁
بنابراین اوپن تو… | 110 comments
من دنبال هر کسی هستم که دنبال من میگرده 😁
بنابراین اوپن تو… | 110 comments
سلام به همگی!
من دنبال هر کسی هستم که دنبال من میگرده 😁
بنابراین اوپن تو ورک کردم تا بتونیم همدیگه رو پیدا کنیم.
ی مجموعه دوست داشتنی به اسم راهکار بود که دی… | 110 comments on LinkedIn
من دنبال هر کسی هستم که دنبال من میگرده 😁
بنابراین اوپن تو ورک کردم تا بتونیم همدیگه رو پیدا کنیم.
ی مجموعه دوست داشتنی به اسم راهکار بود که دی… | 110 comments on LinkedIn
Forwarded from Python BackendHub (Mani)
سورس کدی که خوب تست نداره هر PR ای که زده میشه بهش، مثل رولت روسی (Russian roulette) میمونه 😁
@PyBackendHub
@PyBackendHub
Sadra Codes
سورس کدی که خوب تست نداره هر PR ای که زده میشه بهش، مثل رولت روسی (Russian roulette) میمونه 😁 @PyBackendHub
یه مدت سعی کردم هر ریپازیتوری که میسازم، تاجایی که ممکنه علاوه بر تست خوب، کاورج رو بالای ۹۵ نگه دارم. (اون ۵ درصدم چیزایی که بخاطر دیزاین بد نتونستم تست کنم و باید سریع ریفکتور شه)
اوایل ایگنور میکردم اون فایلها یا خطها رو تا Badge کاورج ۱۰۰ درصد خودنمایی کنه توی ریدمی ریپازیتوری، ولی خب چراا مرد؟ 😂
نمیدونید تستهایی که صد در صد کدبیس رو تست میکنن چقدر خوبن! فرض کن ۱۰۰۰ تا فیچر توی پروژهات داری. یهو یه PR میاد. راحت با یه کامند میتونی مطمئن شی که این PR هیچ چیزی رو Break نمیکنه و (حداقل) از این بابت ایمنه. این دقیقا یه لول بعد از لاجیک برنامه هست. یعنی شما به توافق رسیدی که فلان PR باید زده شه، فلان بخش باید تغییر کنه. حالا این اتفاق افتاده و تستها کارشون رو انجام میدن.
من اولش که TDD رو مطالعه میکردم اینجوری بودم که: هنن؟ چرا باید واسه هیچی (پروژهای که خالیه) تست بنویسی؟ اصلا چی بنویسی؟ چیو میخوای تست کنی وقتی چیزی وجود نداره اصلا؟ ولی بعد که رفتم جلوتر، دیدم فرهنگ جالبی داره و خیلی UX رو میبره بالا. منظورم UXی هست که یه توسعهدهنده دیگه از ابزار شما به دست میاره. (فرضا ابزارتون یه کتابخونه هست)
راجع به TDD در Integration Testing و مشکلاتش، اینکه چرا زیاد جالب نیست هم بعدا یه پست میذارم. :)) 🙌
اوایل ایگنور میکردم اون فایلها یا خطها رو تا Badge کاورج ۱۰۰ درصد خودنمایی کنه توی ریدمی ریپازیتوری، ولی خب چراا مرد؟ 😂
نمیدونید تستهایی که صد در صد کدبیس رو تست میکنن چقدر خوبن! فرض کن ۱۰۰۰ تا فیچر توی پروژهات داری. یهو یه PR میاد. راحت با یه کامند میتونی مطمئن شی که این PR هیچ چیزی رو Break نمیکنه و (حداقل) از این بابت ایمنه. این دقیقا یه لول بعد از لاجیک برنامه هست. یعنی شما به توافق رسیدی که فلان PR باید زده شه، فلان بخش باید تغییر کنه. حالا این اتفاق افتاده و تستها کارشون رو انجام میدن.
من اولش که TDD رو مطالعه میکردم اینجوری بودم که: هنن؟ چرا باید واسه هیچی (پروژهای که خالیه) تست بنویسی؟ اصلا چی بنویسی؟ چیو میخوای تست کنی وقتی چیزی وجود نداره اصلا؟ ولی بعد که رفتم جلوتر، دیدم فرهنگ جالبی داره و خیلی UX رو میبره بالا. منظورم UXی هست که یه توسعهدهنده دیگه از ابزار شما به دست میاره. (فرضا ابزارتون یه کتابخونه هست)
راجع به TDD در Integration Testing و مشکلاتش، اینکه چرا زیاد جالب نیست هم بعدا یه پست میذارم. :)) 🙌
Forwarded from Python BackendHub (Mani)
یک نکته به حرفای صدرا اضافه کنم
قانون goodhart میگه که اگه یک measure (معیار) تبدیل به تارگت بشه، دیگه معیار خوبی نیست.
برای همین من اصلا چیزایی مثل تست کاوریج و استوری پوینتو اینا رو قبول ندارم. چون اینا measure نیستن هیچوقت همیشه تارگت میشن.
همین اتفاقی که واسه صدرا افتاد، شما به جای اینکه دنبال این باشین که تست بنویسید که یوزکیس و ادجکیس هارو کاور کنید، تست مینویسید که صد در صد شه 😅. برای همین قبلا گفتم تست کاوریج یک دروغه. خوبه که داشته باشیم، بدونیم عه فلان فایلمون اصلا کاور نشده، ولی target نیست! همین موضوع راجب استوری پوینت، استوری پوینت تارگت نیست!
تارگت باید این باشه: تست هایی که business requirement رو تست میکنن، که گارانتی میدن نرم افزار اون requirement رو satisfy میکنه طبق اون شرایط
استوری پونینتم همینه ها هیچ فرقی نداره. اونایی که از هر اسپرینت میام جمع میزنن استوری پوینتو و هدفشون میشه استوری پوینت دقیقا تو همین دستن.
@PyBackendHub
قانون goodhart میگه که اگه یک measure (معیار) تبدیل به تارگت بشه، دیگه معیار خوبی نیست.
برای همین من اصلا چیزایی مثل تست کاوریج و استوری پوینتو اینا رو قبول ندارم. چون اینا measure نیستن هیچوقت همیشه تارگت میشن.
همین اتفاقی که واسه صدرا افتاد، شما به جای اینکه دنبال این باشین که تست بنویسید که یوزکیس و ادجکیس هارو کاور کنید، تست مینویسید که صد در صد شه 😅. برای همین قبلا گفتم تست کاوریج یک دروغه. خوبه که داشته باشیم، بدونیم عه فلان فایلمون اصلا کاور نشده، ولی target نیست! همین موضوع راجب استوری پوینت، استوری پوینت تارگت نیست!
تارگت باید این باشه: تست هایی که business requirement رو تست میکنن، که گارانتی میدن نرم افزار اون requirement رو satisfy میکنه طبق اون شرایط
استوری پونینتم همینه ها هیچ فرقی نداره. اونایی که از هر اسپرینت میام جمع میزنن استوری پوینتو و هدفشون میشه استوری پوینت دقیقا تو همین دستن.
@PyBackendHub
Forwarded from shahriaarrr
🚨دعوت برای اسپانسرینگ پادکست کیبوردکست🚨
دوستان سلام👋
هیچوقت دوست نداشتم که این پیام رو ارسال کنم اما از سر ناچاری اینجا رو آخرین پایگاهی دیدم که صدای خودمو برسونم و دست هامو برای یاری گرفتن از شما دراز کنم و این فراخوان رو قرار بدم💔💔
برای ضبط ۳ اپیزود پایانی کیبوردکست یعنی اپیزودهای «سهراب بهدانی»، «احسان قربانی» و اپیزود ویژه فصل اول نیازمند مکانی برای ضبط هستیم که این سه اپیزود رو نه بصورت مجازی در دیسکورد، بلکه بصورت حضوری در مشهد در دو نسخه صوتی و ویدیویی رو ضبط بکنیم.
از اونجایی که نه محل مناسبی برای ضبط نداریم و هزینه اجاره استودیو هم بالاست، لذابصورت رسمی این فراخوان رو منتشر کردم تا از افراد و شرکتها دعوت کنم در صورت امکان اسپانسر هر کدام از اپیزودها یا هر سه اپیزود پایانی کیبوردکست بشن❤️
جهت ارتباط با من درباره موضوع «اسپانسرشیپ» میتونید ایمیل بزنید:
[email protected]
همچنین درصورتی که تمایل به کمک از طریق دونیت دارید هم میتونید از طریق این لینک مبلغ دلخواه خودتون رو دونیت کنید:
https://daramet.com/shahriaarrr
تمامی دونیت ها برای پادکست کیبوردکست خرج خواهد شد و بصورت یک گزارش در کانال تلگرامی اختصاصی دونیت ها مخارج ارائه خواهد شد:
https://www.tg-me.com/shahriaarrrDonations
سپاس فراوان❤️
@shahriaarrr12
دوستان سلام👋
هیچوقت دوست نداشتم که این پیام رو ارسال کنم اما از سر ناچاری اینجا رو آخرین پایگاهی دیدم که صدای خودمو برسونم و دست هامو برای یاری گرفتن از شما دراز کنم و این فراخوان رو قرار بدم💔💔
برای ضبط ۳ اپیزود پایانی کیبوردکست یعنی اپیزودهای «سهراب بهدانی»، «احسان قربانی» و اپیزود ویژه فصل اول نیازمند مکانی برای ضبط هستیم که این سه اپیزود رو نه بصورت مجازی در دیسکورد، بلکه بصورت حضوری در مشهد در دو نسخه صوتی و ویدیویی رو ضبط بکنیم.
از اونجایی که نه محل مناسبی برای ضبط نداریم و هزینه اجاره استودیو هم بالاست، لذابصورت رسمی این فراخوان رو منتشر کردم تا از افراد و شرکتها دعوت کنم در صورت امکان اسپانسر هر کدام از اپیزودها یا هر سه اپیزود پایانی کیبوردکست بشن❤️
جهت ارتباط با من درباره موضوع «اسپانسرشیپ» میتونید ایمیل بزنید:
[email protected]
همچنین درصورتی که تمایل به کمک از طریق دونیت دارید هم میتونید از طریق این لینک مبلغ دلخواه خودتون رو دونیت کنید:
https://daramet.com/shahriaarrr
تمامی دونیت ها برای پادکست کیبوردکست خرج خواهد شد و بصورت یک گزارش در کانال تلگرامی اختصاصی دونیت ها مخارج ارائه خواهد شد:
https://www.tg-me.com/shahriaarrrDonations
سپاس فراوان❤️
@shahriaarrr12
Forwarded from Python BackendHub (Mani)
آیوکلاک (AioClock) یک فریم ورک برای scheduling و یا تسک منیجمنت هست و هر چیزی که هر فریم ورکی نیاز داره رو داخلش داره, مثل دپندسی اینجکشن و startup/stop ایونت, ساپورت از ماژولار کد نوشتن و ...
امشب وقت گذاشتم و داکیونتشو خیلی بهتر کردم که کاملا متوجه شید فریم ورک چطوری کار میکنه. تو عکس واضح نیست کامل تصیه میکنم سری به داکیومنت بزنید.
داکیومنت
گیتهاب
@PyBackendHub
امشب وقت گذاشتم و داکیونتشو خیلی بهتر کردم که کاملا متوجه شید فریم ورک چطوری کار میکنه. تو عکس واضح نیست کامل تصیه میکنم سری به داکیومنت بزنید.
داکیومنت
گیتهاب
@PyBackendHub