Python Hints
8.62K subscribers
172 photos
11 videos
9 files
141 links
Python tips and tricks
The Good, Bad and the Ugly

توی این کانال فقط قرار هست در مورد core python صحبت کنیم.

این کانال یک بلاگ شخصی هست و پیرامون نظرات و چیزهایی که توی بیش از ۱۰ سال کد زدن یاد گرفتم (فقط برای کمک به دوستان تازه‌کار)

Admin: @Abbasi_ai
Download Telegram
Python Hints
به بهانه آپلود ویدئو جلسه چهارم (فصل ۳ کتاب) youtube link می‌خوام راجب بدترین سوالی که توی ۴-۵ سال اخیر ازم میشه بهتون بگم و اینکه جلوی یکی از عادت‌های بد شما رو بگیرم. خیلی وقتا حتی دوستان نزدیک از من می‌پرسند که چطوری وقت می‌کنی هم چندجا کار کنی هم این…
یک نگاهی به کانال @pytens بندازید (چون جو هوش مصنوعی داغ هست)
توی چندین سال اخیر من مشاور خیلی پروژه‌های داخلی و خارجی بودم توی مواردی که بیزینس یا همکاری با تیم‌های تحقیقاتی بهم یاد داده فهمیدم که تمرکز کسی که میخواد واقعا توی این زمینه کار خوب انجام بده و بدون دردسر مصاحبه‌های شغلی رو پاس کنه باید روی چه مباحثی باشه.

کم نبودند تعداد آدمایی که شخصا و مستقیم بهشون کمک کردم تا برای مصاحبه کاری در زمینه هوش مصنوعی آماده بشوند؛ از تیم‌های استارتاپی و داخلی گرفته تا شرکت‌های بزرگ مثل آمازون؛ نتفلیکس؛ گوگل و متا.

توی دنیای پایتون هم اوضاع همین هست.
حالا چرا اینارو میگم؛ چون خیلی از بچه‌های تازه‌کار و حتی افراد باسابقه کار پیدا کردن و یا حرفه‌ای شدن توی یک زمینه کاری رو مدیون دیدن دوره آموزشی پولی یا شرکت توی همچین دوره‌ای میدونند.

توی همون کانال که بالاتر صحبت کردم؛ من بهترین دوره‌های ویدئویی رو برای Vision, NLP, Transformers معرفی کردم که به جرات میگم هیچ دوره‌ای (دقت کنید) هیچ دوره‌ای بهتر از این ۳ مورد برای Deep learning در این زمینه‌ها پیدا نخواهید کرد.
اما همچنان افرادی هستند که فکر می‌کنند دوره پولی اون یارو هندیه که توش با یک ابزار تعداد گوسفندای توی تصویر رو میشماره بهتر از دوره Yann Lecun خالق و باعث این مباحث هست.
که خب بحثی نیست.

نکته دوم و چیزی که در ادامه بحث اول باید بگم؛ تعداد به اشتراک گذاری و ذخیره پست‌هاست.
همه‌ شما یک کانال برای منابع مهم دارید؛ نه saved message تلگرام بلکه یک کانال خصوصی/عمومی برای فروارد کردن مطالب مهم.

من بهش میگم کانال بدبختی؛ من خودم هم ازین کانال‌ها دارم ولی وقتی به کانال من میرسید اسمش کانال رفرنس میشه نه بدبختی.

تفاوت ذخیره کردن من و شما اینه که؛ من هیچ وقت یک ویدئو و مطلب رو به اون کانال نمیفرستم مگر اینکه اون ویدئو رو دیده باشم و بنظرم واقعا خوب باشه و بخوام یک رفرنس ازش نگه دارم و بلاگ پست یا مطالب رو هم همینطور.


بر خلاف شما؛ طبق آمار کانال و تصویر پست بالا؛ می‌دونم خیلی از دوستان همه چیز رو فروارد می‌کنند توی اون کانال خصوصی برای خودشون تا سرفرصت ببینند ولی این فرصت هیچوقت پیش نمیاد و بدون تعارف شما هیچوقت پیشرفت خوبی نخواهید داشت اگر جزو این آدم‌ها هستید.

شاید بگید خب ممکنه توی مسیر باشم و فلان کانال یک پست خوب گذاشته باشه؛ حق میدم برای من همون لحظه گوشی رو توی همون وضعیت قفل می‌کنم و میذارم جیبم و از گوشی استفاده نمی‌کنم تا توی اولین فرصت اون مطلب رو بخونم یا ویدئو رو ببینم.

کسی که نمی‌دونه خودتون یک بررسی بکنید و ببینید چقدر از پست‌هایی که برای خودتون فروارد کردید تا درآینده بخونید رو واقعا خوندید ؟

آمار viewهای یوتیوب و تعداد shareهای کمتر از ۱۰ دقیقه منابع یا پست‌های طولانی کانال های من نشون میده خیلی‌ها درگیر این موضوع هستید که خودتون رو با منابعی که هیچوقت نمی‌خونید دارید بمباران می‌کنیم و همین یعنی به عقب رفتن (به معنای واقعی کلمه این موضوع نه تنها کمکی به پیشرفت شما نمی‌کنه بلکه باعث پسرفت هم میشه)
چون مغزتون رو راحت می‌کنید ازون موضوع و دیگه درگیر اون موضوع نیست که اگر بود شمارو مجبور میکرد اون مبحث رو یادبگیرید.


اگر واقعا می‌خواهید پیشرفت کنید؛ خواهش می‌کنم به این دو موردی که گفتم توجه کنید :

۱- پولی بودن یک دوره دلیل بر خوب بودن یا تضمین سرکار رفتن شما نیست.
۲- اگر عادت کردید پست‌ها؛ دوره‌ها؛ لینک ویدئو؛ کتاب و ... رو سریع توی یک کانال خصوصی فروارد کنید (کانال بدبخت کردن شما) همین الان دست ازین کار بردارید.

بیاید باهم تستش کنیم؛
مثل من عمل کنید؛ یک کانال جدید درست کنید توی این کانال حق ارسال ویدئو - پست - منبع یا ... رو ندارید مگر اینکه اون رو یکبار حتی با سرعت بالا خونده - دیده یا بررسی کرده باشید.
شاید روزها و ماه اول سخت باشه اما بعد از ۶ ماه کانال رفرنس خودتون رو با کانال بدبختی مقایسه کنید.



اضافه کنم:
اولین ویدئو یوتیوب 1300 بازدید داشته که خب حدود 1200 مورد توی ۵ روز اول بوده و ويدئو آخر توی ۲ هفته 183 بازدید داشت.
تعداد private share پست ویدئو اول روی 50 مورد هست و پست ویدئو دیگر روی 300 همین آمار نشون میده چقدر اتفاق بدی داره میوفته.
دلیل مخالفتم با ویدئو گذاشتن همین بود؛ توی لایو شما رو مجبور میکنم حداقل یکبار اون موضوع رو گوش بدید که همین هم تاثیر بزرگی توی پیشرفت هست.
79👍28🫡13❤‍🔥4👎411🍓1🆒1
#خارج_از_بحث

از اونجایی که هر بار به مشکلات پرداختم به لطف شما عزیزان سریعا به گوش تیم پشت قضیه رسیده (خیلی‌ها پیام دادند)
اینبار هم می‌خوام همینکار رو بکنم+ پیشنهاد هم دارم.

توضیح مشکل :
نمی‌دونم چرا هر شرکتی که وارد میشی فقط و فقط با یک بانک کار می‌کنه.
برای من که موقت با شرکت‌های ایرانی هم کار می‌کنم این موضوع خیلی بد شده تا جایی که توی قراردادهای جدید اگر گفته بشه حساب فلان بانک باید باشه
قرارداد نمی‌بندم دیگه.

اما مشکلات :
از بانک سینا شروع کنم که مزخرف‌ ترین سرویس احراز هویت آنلاین و افتتاح حساب رو داره :

۱- بصورت غیر مجاز و غیر قانونی و البته بدون هیچ اطلاع یا اخطاری روی بعضی گزینه‌ها که کلیک می‌کنید از دوربین جلو عکس می‌گیره، دوربین گوشی من کشویی هست و کاملاً مشخص میشه اینکار.

۲- احراز هویت چهره‌اش، اگر تصویر کارت ملی بدون ریش و کچل باشید (اگر عکس پروفایل من رو ببینید من ۷-۸ سال موهام رو میزدم) نمی‌تونه شمارو تأیید کنه و تیم هوش مصنوعی انقدر ناشی و نابلد بوده که گزینه‌ای برای درخواست تأیید هویت انسانی نداره چیزی که بدون شک باید وجود داشته باشه


پیشنهاد :
این همه اپلیکیشن و شعبه بانک و ... چرا یکی از این‌ها نمیاد تبدیل به هاب بشه ؟
بگه همه شرکت‌ها بیاید با من قرارداد ببندید، مهم نیست حساب نیروی کار شما کجا باشه یا ... من می‌تونم لیستی که دریافت می‌کنم رو بهش پرداختی انجام بدم.

حالا شما بیا هی رنگ کارت رو عوض کن، بانک‌های عزیز، تیم محصول و ....
لطفاً دست از دلقک بازی بردارید، خدماتی ارائه بدید که واقعاً بدرد بخوره و مشکل حل کنه.
شما همچین سرویسی رو ارائه بدید من قول میدم با شرکتی که با شما قرارداد نداره کار نکنم.

اضافه کنم : پیگیری کردم این مشکل رو همه اطرافیان دارند.
👍58👏42👎1
بیش از ۵۰ ساعت بیداری و گذراندن جلسات روزانه به زور قهوه حالا که باید خواب ندارم (زور کل‌ قهوه‌های صبح تا عصر هست)

پس تفاوت byte, unicode رو ببینم.
توی این مثال تمام دیتاهای داخل فایلی که من برای تست استفاده کردم (دیتای شرکت هست برای کاربرها و نمی‌تونم به اشتراک بذارم) داخل محدوده کاراکترهای ASCII هست همین باعث میشه که utf-8 برای من اهمیتی نداشته باشه.

بعلاوه من فقط یک سری regex و آنالیز کلی روی این دیتا نیاز دارم (مثلا شمارش میانگین استفاده کاربرها از سرویس A و ...) که این موارد هم نیازی به utf-8 نداره و میشه دیکشنری با کلید byte هم داشت و ...

من اینجا مثال رو ساده نگه داشتم طبعا هرچی پردازش بیشتر این اختلاف بیشتر به چشم خواهد اومد.

اما یک اشتباه رایج رو هم بگم که پرفورمنس شما رو به راحتی خراب می‌کنه :
موقع استفاده از regex دقیقا ماژول regex رو منظورم هست و نه re ؛ باید حواستون باشه که پترنی که سرچ می‌کنید برای دیتای byte هست (نکاتی که توی لایو توضیح دادم)
و البته مهمتر از هرچیزی اگر مثل من حجم فایل شما هم به بیش از چند گیگ میرسه؛ حتما حتما اون regex pattern رو کامپایل کنید.

اضافه کنم:
توی زمان جوونی‌های ما؛ پایتون 2 رو اگر یادتون باشه ممکنه خیلی سورس کد بصورت rb برای دیتای txt دیده باشید (توی پایتون ۳ خیلی خیلی کمتر امکانش هست ببینید.) مخصوصا اینکه زمان ظهور بیگ دیتا بود.
دلیلش هم اینه که توی پایتون ۳ فرق بین r, rb معمولا بین ۱.۵ تا ۳ برابر هست از نظر زمانی (توی ورژن‌های ۳.۱۰ به بعد نهایتا تو بدترین حالت ۲ برابر سریعتر هست)

اما توی پایتون 2 این تفاوت سرعت بسیار بسیار بیشتر بود بطوری که حتی توی فایل‌های متنی چندصد مگابایتی هم این تفاوت کاملا مشهود بود و نیازی به timeit نبود.

در حال حاضر ما این تکنیک‌ها رو روی پردازش داده‌های هوش مصنوعی استفاده می‌کنیم بخصوص وقتی حجم داده‌ها بیش از چند صد گیگابایت هست.
بازم تاکید می‌کنم regex هاتون رو همیشه کامپایل کنید.
👍485🤓5🆒211🔥1🍓1
Lose Control
Teddy Swims
هندزفری لازم


پ.ن: من موسیقی که باهاش حال کنم رو توی این کانال میذارم
@pytensMusic
22👍11👎7❤‍🔥4👌31🕊1💯1
#Quick

هارد‌هاتون رو تمیز کنید

1.6 TB

فضای خالی بدست اومد.


کاری که من کردم :
۱- کل فایل‌های روی ۳ تا هارد اصلیم رو بدست آوردم و توی یک csv شامل این ستون‌ها ریختم؛

اسم فایل، پسوند، مسیر، حجم فایل، تاریخ ایجاد


بعد اول بر اساس اسم
و بعد از اون بر اساس تاریخ مرتب کردم
حدود ۸۰۰ گیگ با همین وضعیت پاک شد.
دیتاهای duplicate نبودند ولی مثلاً بکاپ فایل‌ها بودند که خب با وجود اینکه توی تاریخ‌های بعدی نسخه آپدیتش رو گرفته بودم فراموش کرده بودم نسخه قبلی رو حذف کنم.

کد قبلی رو با multi-threading, ThreadPool زدم و کمتر از ۱ ثانیه اجرا شد.

۲- بعد از اون یک سری فایل‌ها بودند که مشکوک بودم duplicate باشند؛
پس با md5 شروع کردم hash کردن، از multi-process استفاده کردم، و اینجا هم حدود ۱۰۰ گیگ duplicate پیدا شد که بعد بررسی دیدم دقیقاً یکسان هستند و پاک شد.

۳- من همیشه توی کدهام، اسم virtualenv هارو .venv میذارم پس دنبال این‌ها هم گشتم + مدل‌های هوش مصنوعی با پسوندهای مختلف باقی موارد هم همگی برای این‌ها بود
دقیق بررسی نکردم ولی فکر کنم ۲۰۰ گیگ .venv داشتم (عادت دارم کل پوشه پروژه رو میفرستم روی هارد بکاپ)


خلاصه که کار خوبیه و تکنیک‌هایی هم که گفتم برای من خیلی جواب بود، شما هم دوست داشتید استفاده کنید

.

۹۰٪ کدهاشم دادم codestral برام نوشت و فقط مطمئن شدم پیاده‌سازی درست هست و اجرا کردم، اما دسترسی دیلیت بهش ندادم.
همرو دستی دیلیت کردم که این بخش یک مقدار زمانبر شد.


اضافه کنم:
برای آخر هفته یک auto indexer + notifier + web هم پیاده خواهم کرد که بهم یادآوری کنه بکاپ‌های قدیمی رو پاک کنم اگر بر اساس اسم مشابه بود (همچنین باقی فایلا)
یک مورد هم برای .venv اضافه کنم و در نهایت web endpoint رو هم بذارم قبل از اینکه چیزی رو برای چندمین بار دانلود کنم بتونم سرچ کنم که آیا دانلود شده روی سیستم دارم یا خیر
❤‍🔥38👍24🔥2👌21
Python Hints
#بسیار_مهم #خارج_از_بحث خواهشاً بیاید این مورد رو آنقدر به اشتراک بذاریم که همه رعایت کنند. چند وقت پیش دنبال یک نیروی React برای شرکت یکی از دوستان می‌گشتم، گفتم میرم لینکدین چندتا پروفایل open to work رو می‌بینم و درخواست رزومه میدم به اون‌هایی که بنظرم…
#Quick

اگر توی LinkedIn وضعیت خودتون رو به #OpenToWork تغییر می‌دید حتماً قبلش پروفایل و اطلاعات اصلی خودتون رو تکمیل کنید.
مهمترین موارد :

۱- لوکیشن (محل سکونت٫اقامت)
۲- توضیح مختصر در مورد خودتون، تجربیاتی که دارید
۳- اطلاعات سابقه کاری
۴- وضعیت تحصیل (دانشجو هستید یا خیر)
۵- مدارک و ....

توی این هفته، کلی پروفایل LinkedIn رو که Open2Work بودند بررسی کردم شاید بتونم بگم فقط ۳۰٪ بطور کامل تمام اطلاعات مهم رو درست و دقیق داشتند.

یادتون باشه اگر توی LinkedIn جویای کار هستید، اولین برخورد و آشنایی قبل از همکاری کارفرما٫مدیر٫نیروی منابع انسانی و ... با صفحه شخصی شما در LinkedIn خواهد بود.

باقی مواردی که مهم نیست ولی بودنش قطعا کمک می‌کنی :

۱- تصویر پروفایل (بهتره تصویر پارک و ... نگذارید.)
۲- تصویر بنر
۳- پست‌هایی که پین کردید
۴- پست‌هایی که لایک٫کامنت می‌کنید

بازم همون قانونی که توی رزومه نویسی گفتم،
نه خیلی رنگی و ... که انگار برای موقعیت شغلی دلقک شرکت کردید (عاشق دلقک هستم)
و نه خیلی مشکی و بدون چیزی که حوصله سر بر باشه
مثل یک ui/ux کار ببینید.
باید جوری باشه که طرف حداقل ۱۰ دقیقه وقت بذاره (ولی توی ۲ دقیقه اطلاعات مهم روزمه شمارو بخونه، شما تو چشمش فرو کنید.)

پروفایل من رو مرجع نکنید، من توی لینکدین دنبال کار نمی‌گردم، برای همین اصلا آپدیت نشده.


اضافه کنم :

لطفاً از ابزارهای رزومه سازی استفاده نکنید (مخصوصاً اینایی که همه‌جای روزمه شما اطلاعات سایت رو می‌نویسند)
نهایتاً اینکه
ازشون ایده بگیرید، قالب رو بسازید و بعد خودتون خروجی pdf بدون watermark رو بگیرید و ارسال کنید.
این موضوع خیلی مهم هست، و رعایت نکردنش نکته منفی بزرگی می‌تونه باشه برای کارجو.
👍4210😨1
#موقت

اگر دقت نکرده بودید
تمام تصاویر گروها، لوگو کانال، لوگو یوتیوب و ....
+
تمامی thumbnail های ویدئو‌های یوتیوب همگی با کمک هوش مصنوعی ایجاد شده
صفر تا ۱۰۰ بدون هیچ تغییری (غیر از لوگو البته)
👍29❤‍🔥7🆒6🤓4😭1
#خارج_از_بحث

به بهانه انتشار خبر تولید Framwork laptop با پردازشگر Risc-V
خیلی سال هست که معماری Risc-v رو دنبال می‌کنم اما نه حرفه‌ای فقط از روی اولی که OpenSource بودنش رو فهمیدم دنبال اخبار هستم (بنظرم خیلی چیز و چیزهای بزرگی ازش بیرون خواهد آمد)
این خبر که حالا framework داره با این پردازشگر هم تولید میشه و مردم هم خرید می‌کنند و از طرفی هر دو غول Linux :

Canonical (Ubuntu), RedHat (Fedora)

از این معماری پشتیبانی خواهند کرد قدم بزرگی هست.

راجب خود Framework هم باید بگم که قطعا و بدون شک لپ‌تاپ بعدی من خواهد بود.
خیلی از بجه‌هایی که من رو می‌شناسند می‌دونند من طرفدار برند خاصی نیستم؛ حتی خیلی طرفدار لپ‌تاپ هم نیستم (چون نمی‌تونم هر چیزی که لازم شد رو تغییر بدم داخلش) از منظر برند هم هرکسی سرویس بهتر با قیمت معقول‌تر و البته دسترسی آزاد بده (اپل بدون شک آشغال هست) قطعا طرفدارش خواهم بود.

چندسال قبل System76 گزینه اولم بود ولی به محض ورود Framework به بازار با System76 خدافظی کردم؛ البته خود System76 هم مقصر بود چون اون آزادی در انتخاب قطعات و ... رو از روی سایت برداشت.

برای کسایی که آشنایی ندارند؛ Framework یک تولید کننده لپ‌تاپ هست که کاملا ماژولار هست؛ نه تنها موقع خرید حتی سال‌های بعد.
یعنی شما می‌تونید بعد از چندسال یک مادربرد یا cpu یا gpu یا حتی display, ... جدیدتر سفارش بدید و بدون نیاز به تعمیرکار و نهایتا با چند دقیقه وقت لپ‌تاپ رو کامل آپگرید کنید.
قیمت قطعات هم بسیار بسیار ارزون و بسیار بسیار فوق‌العاده هست.

خلاصه که این خبر برای من ۲ طرفش خوشحال کننده بود؛ هم Risc-V چون کاملا قابل کاستومایز شدن برای تسک خاص هست و هم Open Source بودنش یعتی هزینه ساخت و هزینه تمام شده برای مشتری پایین تر خواهد بود.
هم Framework که با این ریسکی که کرده یعنی اوضاع بیزینس خوبی داره و توی طراحی قطعات ماژولار خیلی خیلی وضعیت بهتری داره نسبت به نسخه‌های قبلی

قطعا لپ تاپ بعدی من Framework هست حتی اگر شخصا مجبور بشم وارد کنم؛ اما اینکه معماری Risc-V باشه نمیدونم.
38👍16🐳1👻1
توی سال‌های مختلف زندگیم
خیلی قشنگ درک کردم،

خر همون خره، فقط پالونش عوض می‌شه

رییس جمهوری هم همینه

۱ ماه دنبال گرفتن یک قرارداد بودم، شنبه قرار بود امضا کنم (یک استارتاپ ایرانی توی آمریکا).
خودشون بهم پیام دادند، ولی کل پروسه مصاحبه و ... همه چیز به دقت و حتی بدون رحم جلو رفت.

دیروز دیدم، مدیرعامل (استارتاپ برای خودش هست) با کلی چرت و پرت و چرندیات زده که برید و رأی بدید و ...

یک جستجو زدم، دیدم سر خریتش تو آخور نظام هست.

پیام دادم به مدیر HR شرکت و گفتم که امکان ادامه همکاری نداریم تا وقتی ایشون قرار هست مدیرعامل باشند،
شریک آمریکایی طرف پیام داد (چون خیلی فنی با سواد هستند) و براش توضیح دادم.

با اینکه ۲ برابر دستمزد فعلی من بهم پرداخت می‌کرد، اما هرجور حساب کردم دیدم نمی‌تونم پله واسه صدای یک احمق باشم.


نزدیک انتخاب شده،
خواستم بگم توی این سال‌ها نه رأی دادم، نه رأی میدم.
هر کی سمت گرفت توی این مملکت، هم دزدید هم کشت.

خلاصه که من فراموشکار نیستم.

#رای_نمیدم
از خیر سود شخصی هم می‌گذرم به امید آینده بهتر برای ایران و نسل بعدی.


اگر ازین دسته هستید، هم گروها هم کانال‌ها
هم لینکدین و هم هرجای دیگر
لطفاً آنفالو و ریمو کانکشن کنید.


اضافه کنم :
راجب concurrency و ... هم تصمیم گرفتم یک سری پست بذارم (شاید حتی کمی مبتدی).
👍16456👎38👏15❤‍🔥8😁3👌2🗿2🍾1
Python Hints
اوضاع اینترنت شما چطور هست ؟
درسی از دیتا.
گزینه سوم، کلا اشتباه هست.
طرح سوال و گزینه اشتباه توی پلتفرم اشتباه.
چون قطعاً کسی که اوضاع اینترنت براش افتضاح هست اینجا نیست که گزینه‌ای رو انتخاب کنه (پس دیتا بایاس میشه)

ولی اوضاع اینترنت سمت محل زندگی خودم اینطوری هست، و تقریباً ۱ ساعت طول کشید تونستم سروری پیدا کنم که vpn راحت بشه روش کانفیگ کرد.
21👍12👌3👎2🤷‍♂1🤔1
ویدئو این جلسه رو اگر کسی رکورد کرد لطفاً با بنده به اشتراک بذاره

متوجه نشدم،
قبل از شروع جلسه
Autoplay
یوتیوب شروع شده بود و یک دوره آموزشی رو با سرعت بالا پلی کرده که صدای ویدیو خودم رو خراب کرده

سر جلسه هی میگفتم چرا ی صدای ریزی میاد،
پ.ن : من از هندزفری‌های متفاوت برای ضبط صدای خودم و رکورد استفاده می‌کنم.
برای همین تا آخر جلسه متوجه مشکل صدا روی رکورد نشدم
😢23😁157👍6😐5🤝3🍓1🗿1
خواستم بگم رئیس جمهور جدیدتون نیومده
اینترنت و سرویس‌ها و سرورها به باد رفت که
👍85😁36👎25😢7🗿4🤪31🤯1🦄1
Python Hints
فصل ۶ https://youtu.be/kjSH58nKgfw
فصل ۷

https://youtu.be/cTw49b3X96k


لایک، کامنت، سابسکرایب و اشتراک گذاری
همگی مفید هست قطعاً
فراموش نکنید 🌹



پ.ن :

به ۳.۲۰۰ ویو روی یوتیوب رسیدیم و همچنان بیشترین ویو رو ویدئو قسمت اول و نحوه کتابخونی داره.

بیشترین، درخواست هم برای این نوع ویدئو ها هست بجای ویدئو آموزش 🤔
41👍9❤‍🔥2🦄1
امروز صبح رفتم پروژه یک شرکتی رو دیدم؛
خیلی جالب بود واقعا (استارتاپی) اما هرچی جلوتر میرفت نمی‌دونستم بهشون بگم کل ۶ ماه زحمتشون رو باید بازنویسی کنند یا نه.

خودشون انقدر غرق کد و قشنگی ایده و ... شده بودند که هیچکدوم متوجه نشدن کدها و کاری که می‌کنند بخش‌های زیادیش
mission critical / safety-critical

هست؛ و حتی این بخش‌ها هم با پایتون کد زده شده بود.
ولی تهش با اینکه حالشون گرفته می‌شد بهشون گفتم و تازه خودشون متوجه شدند چه اشتباهی کردند.

بعضی وقتا از محصولتون فاصله بگیرید؛ از بیرون بهش نگاه کنید.
به کل سیستم.
👍63👏6👎3🤪32💘1
یکی از دوستان توی گروه بحث آزاد یک ویدئو در مورد GIL گذاشت و من یاد این موضوع افتادم که از نسخه Python 3.13 شما می‌تونید یک build تقریبا stable (البته نه برای پروداکشن) روی برنچ nogil داشته باشید برای Cpython
GitHub Link

که خب اگر به اندازه کافی طرفدار و کامیونیتی داشته باشه؛ pre-build منتشر خواهد شد و در دراز مدت بعنوان نسخه دیفالت پایتون منتشر خواهد شد.

این موضوع اهمیت بسیار؛ بسیار بالایی داره برای بهینه سازی پایتون و براحتی می‌تونه کدهای multi-thread رو چندین برابر سریعتر کنه

Python multithreading without GIL
PEP 703 - Making the GIL Optional in CPython
👍32👌21👏1😈1