#django
راهکار استفاده درست از .env
توقع اینه که همیشه .env موجود باشه چه برای develop چه deploy چیزی که توی AI - ML - NodeJs - Go , ... مرسوم هست.
من این مدلی کد میزنم :
یک متغییر به اسم ENVIRONMENT در نظر میگیرم توی env. اگر مقدارش develop بود settings.py رو روی حالت develop تنظیم میکنم اگر نه برای deploy آماده میشه
همهی موارد دیگه هم بر اساس .env تنظیم میشه مثالهای بالا هم نحوه default نوشتن رو گفتم (اگر .env اون متغییر رو نداشت) هم تنظیم کردن بر اساس .env
اینجوری نیروی DevOps - Develop یا هرکس دیگهای که بخواد کار کنه با پروژه فقط ۱ فایل که همیشه مرسوم هست رو باید مقدار بهش بده
.env
اونم بر اساس
sample.env
که موجود هست خیلی راحت انجام میشه
راهکار استفاده درست از .env
توقع اینه که همیشه .env موجود باشه چه برای develop چه deploy چیزی که توی AI - ML - NodeJs - Go , ... مرسوم هست.
من این مدلی کد میزنم :
یک متغییر به اسم ENVIRONMENT در نظر میگیرم توی env. اگر مقدارش develop بود settings.py رو روی حالت develop تنظیم میکنم اگر نه برای deploy آماده میشه
همهی موارد دیگه هم بر اساس .env تنظیم میشه مثالهای بالا هم نحوه default نوشتن رو گفتم (اگر .env اون متغییر رو نداشت) هم تنظیم کردن بر اساس .env
اینجوری نیروی DevOps - Develop یا هرکس دیگهای که بخواد کار کنه با پروژه فقط ۱ فایل که همیشه مرسوم هست رو باید مقدار بهش بده
.env
اونم بر اساس
sample.env
که موجود هست خیلی راحت انجام میشه
👍15
تفاوت نسخه های مختلف پایتون (داکر) و البته تاثیرش روی سایز image نهایی (عکس رو باز کنید) :
نسخهای که من از بچهها گرفتم درنهایت سایز image اش به 1.3GB میرسید
نسخهای که من برای چک کردن کدها و توسعه استفاده کردم 241MB هست و نسخهای که برای deploy تحویل دادم 153MB (روش multistage که قبلا راجبش توضیح دادم توی زبانهایی مثل Go lang)
علاوه بر کم کردن هزینه و مزایایی سریعتر up شدن و ... که میدونید
cloud provider
شرکت بابت نگهداری از این image ها (زیر ۲۵۰ مگ) هیچ هزینهای نمیگیره و حتی بابت نسخه تست هم (رم و cpu کم) هیچ هزینهای نداره.
نسخهای که من از بچهها گرفتم درنهایت سایز image اش به 1.3GB میرسید
نسخهای که من برای چک کردن کدها و توسعه استفاده کردم 241MB هست و نسخهای که برای deploy تحویل دادم 153MB (روش multistage که قبلا راجبش توضیح دادم توی زبانهایی مثل Go lang)
علاوه بر کم کردن هزینه و مزایایی سریعتر up شدن و ... که میدونید
cloud provider
شرکت بابت نگهداری از این image ها (زیر ۲۵۰ مگ) هیچ هزینهای نمیگیره و حتی بابت نسخه تست هم (رم و cpu کم) هیچ هزینهای نداره.
👍16🤯3❤1
دستاوردهای یادگیری عمیق(InTec)
۲ روز طول کشید؛ ولی ۵ سرویس رو از ابرآروان جابجا کردیم. چون به این باور رسیدیم که این پول خرج سرکوب و خفه کردن صدای دیگران میشه علاوه بر اون پولی که هزینه میکنیم باعث میشه #ابرآروان به درآمدی برسه که بتونه روی بستن اینترنت سرمایه گذاری کنه چیزی که روزانه…
اینو یادتون هست ؟
۵ تا سرویس رو تو ۲روز کامل از ابر آروان جابجا کردیم
ی سری پیام دادن مسخره کردن و ...
که با اینکارا ابرآروان برشکست نمیشه و ...
حالا اومده میگه، تورو خدا راهی داری ما همهی دیتاهامون پریده (دسترسی همه به سرورهای خارج از ایران همون ساعت تحریم بسته شد)
براش زدم، توی دنیا موازی که جمهوری اسلامی قاتل نیست
توی همون دنیایی که صدای ظالم نیست
الان میتونستی بجای گریه کردن، فکر به تخته کردن شرکتت از ابرآروان شکایت کنی و خسارت بگیری.
۵ تا سرویس رو تو ۲روز کامل از ابر آروان جابجا کردیم
ی سری پیام دادن مسخره کردن و ...
که با اینکارا ابرآروان برشکست نمیشه و ...
حالا اومده میگه، تورو خدا راهی داری ما همهی دیتاهامون پریده (دسترسی همه به سرورهای خارج از ایران همون ساعت تحریم بسته شد)
براش زدم، توی دنیا موازی که جمهوری اسلامی قاتل نیست
توی همون دنیایی که صدای ظالم نیست
الان میتونستی بجای گریه کردن، فکر به تخته کردن شرکتت از ابرآروان شکایت کنی و خسارت بگیری.
👍68❤7👎3
دستاوردهای یادگیری عمیق(InTec)
اینو یادتون هست ؟ ۵ تا سرویس رو تو ۲روز کامل از ابر آروان جابجا کردیم ی سری پیام دادن مسخره کردن و ... که با اینکارا ابرآروان برشکست نمیشه و ... حالا اومده میگه، تورو خدا راهی داری ما همهی دیتاهامون پریده (دسترسی همه به سرورهای خارج از ایران همون ساعت…
ی نکته دیگه اضافه کنم :
هرجا که مسئول مصاحبه یا استخدام باشم
از کسایی که توی ابرآروان کار میکنند جوری مصاحبه میگیرم که حتماً طرف fail بشه (بدون تعارف)
وقتی هم که مسئول استخدام هستم رزومه این افراد رو اصن نمیخونم.
برای تیم خودم هم سابقه بیمه افراد رو میگیرم 😊
پیشنهاد میکنم شما هم همینکارو بکنید.
ایلان ماسک، ی مصاحبه داره که میگه مهمترین اشتباهم این بود که به استعداد آدما بیشتر از اخلاقیات اهمیت دادم.
ایلان، ما ایرانیها خیلی خیلی قبلتر به این نتیجه رسیدیم.
هرجا که مسئول مصاحبه یا استخدام باشم
از کسایی که توی ابرآروان کار میکنند جوری مصاحبه میگیرم که حتماً طرف fail بشه (بدون تعارف)
وقتی هم که مسئول استخدام هستم رزومه این افراد رو اصن نمیخونم.
برای تیم خودم هم سابقه بیمه افراد رو میگیرم 😊
پیشنهاد میکنم شما هم همینکارو بکنید.
ایلان ماسک، ی مصاحبه داره که میگه مهمترین اشتباهم این بود که به استعداد آدما بیشتر از اخلاقیات اهمیت دادم.
ایلان، ما ایرانیها خیلی خیلی قبلتر به این نتیجه رسیدیم.
👍67👎13❤7👏3
الان تو یکی از گروها درحال خوندن بودم
دیدم یک دوستی دیتای سایت رو کرال کرده و حالا از طرف سایت داره تهدید میشه که دیتارو پاک کنه وگرنه شکایت میکنند و ...
دلیلشونم اینه که توی قوانین سایت نوشتند کرال ممنوع هست.
من چون ۱-۲ سال قبل شخصاً درگیر موضوعی بودم که این هم بخشی از داستان بود اعلام میکنم
طبق قوانین حاکم بر کشور،
هیچ سایت و برنامه و .... ایی نمیتونه بابت کرال شدن از شما شکایت کنه
حتی اگر صفحات رو بصورت کرال شده در اختیار دیگران بذارید (فقط دقت کنید این صفحات خصوصی نباشه یا شامل دیتای خریدنی نباشه، صفحات عمومی بطور کلی)
بعنوان مثال :
سایت virgool رو خیلی از بچهها میگن توی قوانین سایت نوشته کرال ممنوع هست و ...
قوانین کشور میگه کرال سایت عمومی هیچ مانع قانونی نداره و شما حق اینکار رو دارید
خلاصه که از هر تهدیدی نترسید 😉
دیدم یک دوستی دیتای سایت رو کرال کرده و حالا از طرف سایت داره تهدید میشه که دیتارو پاک کنه وگرنه شکایت میکنند و ...
دلیلشونم اینه که توی قوانین سایت نوشتند کرال ممنوع هست.
من چون ۱-۲ سال قبل شخصاً درگیر موضوعی بودم که این هم بخشی از داستان بود اعلام میکنم
طبق قوانین حاکم بر کشور،
هیچ سایت و برنامه و .... ایی نمیتونه بابت کرال شدن از شما شکایت کنه
حتی اگر صفحات رو بصورت کرال شده در اختیار دیگران بذارید (فقط دقت کنید این صفحات خصوصی نباشه یا شامل دیتای خریدنی نباشه، صفحات عمومی بطور کلی)
بعنوان مثال :
سایت virgool رو خیلی از بچهها میگن توی قوانین سایت نوشته کرال ممنوع هست و ...
قوانین کشور میگه کرال سایت عمومی هیچ مانع قانونی نداره و شما حق اینکار رو دارید
خلاصه که از هر تهدیدی نترسید 😉
👍68
از جوانرود و ...
تصاویر و فیلمهایی منتشر میشه
که حتی نگاه کردن یا پخش کردنش هم دل شیر میخواد
ولی گونهای موجود وجود دارند
که به اسم دینِ عطوفت و مهربانی و پیامبر محبت و رحمت
دارن جنایت میکنند.
همه چیز به منافع بستگی داره دین فقط وسیلهاس (شایدم پله)
پ.ن : کامنت نذارید (بحث نکنید)
تصاویر و فیلمهایی منتشر میشه
که حتی نگاه کردن یا پخش کردنش هم دل شیر میخواد
ولی گونهای موجود وجود دارند
که به اسم دینِ عطوفت و مهربانی و پیامبر محبت و رحمت
دارن جنایت میکنند.
همه چیز به منافع بستگی داره دین فقط وسیلهاس (شایدم پله)
پ.ن : کامنت نذارید (بحث نکنید)
😢48👍24👎15
دستاوردهای یادگیری عمیق(InTec)
.tmux.conf
#Quick
این کانفیگ (بخش کیبورد و موس) tmux من هست
یکی از دوستان پیشنهاد داد چون از ctrl+a برای رفتن به اول دستور توی ترمینال استفاده میشه این کلید خوب نیست برای tmux باشه
بنظرم ctrl+x گزینه خوبی هست اگر قبلا تست نگرفتید این رو استفاده کنید
۳ خط اول بجای
C-a
ها از
C-x
استفاده کنید
این کانفیگ (بخش کیبورد و موس) tmux من هست
یکی از دوستان پیشنهاد داد چون از ctrl+a برای رفتن به اول دستور توی ترمینال استفاده میشه این کلید خوب نیست برای tmux باشه
بنظرم ctrl+x گزینه خوبی هست اگر قبلا تست نگرفتید این رو استفاده کنید
۳ خط اول بجای
C-a
ها از
C-x
استفاده کنید
👍5
match case
ازون قابلیتهای جذابی هست که توی پایتون 3.10 اضافه شد.
بجای if های تودرتو یا استفاده از and, or توی شرطها میتونید از match case استفاده کنید.
خوانایی برنامه بسیار بسیار بالا میره (مثال بسیار ساده بالا)
پ.ن : اگر نیاز داشتید نوع داده هرکدوم رو هم چک کنید حتما از dataclass استفاده کنید.
ازون قابلیتهای جذابی هست که توی پایتون 3.10 اضافه شد.
بجای if های تودرتو یا استفاده از and, or توی شرطها میتونید از match case استفاده کنید.
خوانایی برنامه بسیار بسیار بالا میره (مثال بسیار ساده بالا)
پ.ن : اگر نیاز داشتید نوع داده هرکدوم رو هم چک کنید حتما از dataclass استفاده کنید.
👍31🔥7❤1
لایحه جدید مجلس: منبعد به هر مسئولی که از طرف غرب تحریم میشه امتیاز ایثارگری میدیم.
فقط خداکنه دروغ باشه.
حقیقت داره : گامی دیگر در اثبات حرومزادگی و بایدهای اعتراض و انقلاب.
بیش از ۴۰ سال دزدی نه تنها سیر نشدن
بلکه همون موقع که ملت برای یک لقمه نون دارند جلوی گلولهی جنگی و دوشکا با دست خالی مقاومت میکنند، به فکر راهاندازی روشهای جدید برای چپاول و دزدی بیشتر هستند.
فقط خداکنه دروغ باشه.
حقیقت داره : گامی دیگر در اثبات حرومزادگی و بایدهای اعتراض و انقلاب.
بیش از ۴۰ سال دزدی نه تنها سیر نشدن
بلکه همون موقع که ملت برای یک لقمه نون دارند جلوی گلولهی جنگی و دوشکا با دست خالی مقاومت میکنند، به فکر راهاندازی روشهای جدید برای چپاول و دزدی بیشتر هستند.
🤯55🤩3🕊3🤔2😱2
درود
سرور های رایگان vless و vmess با حجم هفتگی ۷ گیگ در ربات زیر
@sansorchi_bezan_gheychi_bot
با قابلیت مشاهده ی حجم
محدودیت حجمی به جهت حفظ سرعت مطلوب برای کاربران قرار داده شده است.
منبع : DLEX 🍻🍻🍻🍻🍻
دوستان زیادی بودند که میخواستند اکانت vpn خرید بزنن برای بچههای ایران :
/donate
رو فراموش نکنید، که این از هر اکانت vpn ایی بهتر هست.
سرور های رایگان vless و vmess با حجم هفتگی ۷ گیگ در ربات زیر
@sansorchi_bezan_gheychi_bot
با قابلیت مشاهده ی حجم
محدودیت حجمی به جهت حفظ سرعت مطلوب برای کاربران قرار داده شده است.
منبع : DLEX 🍻🍻🍻🍻🍻
دوستان زیادی بودند که میخواستند اکانت vpn خرید بزنن برای بچههای ایران :
/donate
رو فراموش نکنید، که این از هر اکانت vpn ایی بهتر هست.
❤15👍5❤🔥2🥰1
دستاوردهای یادگیری عمیق(InTec)
درود سرور های رایگان vless و vmess با حجم هفتگی ۷ گیگ در ربات زیر @sansorchi_bezan_gheychi_bot با قابلیت مشاهده ی حجم محدودیت حجمی به جهت حفظ سرعت مطلوب برای کاربران قرار داده شده است. منبع : DLEX 🍻🍻🍻🍻🍻 دوستان زیادی بودند که میخواستند اکانت vpn خرید…
این اپلیکیشن رو نصب کنید،
به ربات سر بزنید و
Start
بزنید.
۳ تا پیام دریافت میکنید (مثلاً مورد آخر رو کپی کنید)
وارد اپلیکیشن که شدید گوشه بالا سمت راست روی علامت + کلیک کنید و بعد گزینه دوم
Import from clipboard
رو بزنید
در نهایت هم تنظیمات مورد نظر رو انتخاب میکنید و روی علامت V پایین سمت راست لمس میکنید بعد از نهایتاً ۱ ثانیه متصل میشه
نکته : پایین اپلیکیشن نوشته
Connected, tap to check connection
روی این متن بزنید و اگر جواب Success اومد ینی به درستی vpn فعال شده.
مشابه این اپلیکیشن برای :
iOS, Ubuntu, Windows, Mac
هم وجود داره پیشنهاد من برای iOS :
NapsternetV
هست.
پ.ن : اگر سرور اختصاصی دارید میتونید نسخه vpn خودتون رو کانفیگ کنید با v2ray (نیاز به ۲ تا سرور دارید؛ یکی داخلی و یکی خارج از ایران)
به ربات سر بزنید و
Start
بزنید.
۳ تا پیام دریافت میکنید (مثلاً مورد آخر رو کپی کنید)
وارد اپلیکیشن که شدید گوشه بالا سمت راست روی علامت + کلیک کنید و بعد گزینه دوم
Import from clipboard
رو بزنید
در نهایت هم تنظیمات مورد نظر رو انتخاب میکنید و روی علامت V پایین سمت راست لمس میکنید بعد از نهایتاً ۱ ثانیه متصل میشه
نکته : پایین اپلیکیشن نوشته
Connected, tap to check connection
روی این متن بزنید و اگر جواب Success اومد ینی به درستی vpn فعال شده.
مشابه این اپلیکیشن برای :
iOS, Ubuntu, Windows, Mac
هم وجود داره پیشنهاد من برای iOS :
NapsternetV
هست.
پ.ن : اگر سرور اختصاصی دارید میتونید نسخه vpn خودتون رو کانفیگ کنید با v2ray (نیاز به ۲ تا سرور دارید؛ یکی داخلی و یکی خارج از ایران)
👍8🤩3❤🔥2
از بازیهای جام جهانی بهتر
از مجموعه محبوب ترین فیلمها (سریالهای) جهان بهتر
دیدن همچین پادکستهایی هست (تصویری رو من ترجیح میدم)
باقی قسمتها رو توی یوتیوب Lex Fridman میتونید ببیند صحبتهای جذابی شده
برای اونهایی که نمیشناسند (فرد سمت راست خالق پایتون هستند):
Guido van Rossum
https://www.youtube.com/watch?v=TLhRuZ9cJWc
از مجموعه محبوب ترین فیلمها (سریالهای) جهان بهتر
دیدن همچین پادکستهایی هست (تصویری رو من ترجیح میدم)
باقی قسمتها رو توی یوتیوب Lex Fridman میتونید ببیند صحبتهای جذابی شده
برای اونهایی که نمیشناسند (فرد سمت راست خالق پایتون هستند):
Guido van Rossum
https://www.youtube.com/watch?v=TLhRuZ9cJWc
YouTube
Why Python 3.11 is so fast | Guido van Rossum and Lex Fridman
Lex Fridman Podcast full episode: https://www.youtube.com/watch?v=-DVyjdw4t9I
Please support this podcast by checking out our sponsors:
- GiveDirectly: https://givedirectly.org/lex to get gift matched up to $1000
- Eight Sleep: https://www.eightsleep.com/lex…
Please support this podcast by checking out our sponsors:
- GiveDirectly: https://givedirectly.org/lex to get gift matched up to $1000
- Eight Sleep: https://www.eightsleep.com/lex…
❤16👍11❤🔥2👎2😱1
سوال مرحله اول مصاحبه یکی از بچهها در گوگل :
ایشون توی meta دوره Internship رو گذرونده و ترم بعدی مدرک لیسانس رو میگیره برای همین به دنبال استخدامی در شرکتهای غول فناوری هست (سطح استرس بالایی هم داره)
توی مرحله اول ۲ تا سوال داشته ؛ پیاده سازی یک stack با ۲ عملیات بیشتر که خب بیشتر میخواستند بدونند چقدر با Inheritance , OOP توی پایتون آشنا هست
سوال دوم که بنظرم جالب اومد :
یک تابع که خروجی از یک سری از اعمال ریاضی روی ۳ نتیجهی آخر بدست میاد مثلا
اگر مرحله n رو بخوایم :
n-1, n-2, n-3
رو باید داشته باشیم و برای بدست آوردن خروجی بعنوان مثال
(n-1/n-2) + (n-3/2)
میشه.
۲ تا مشکل این دوستمون داشت توی سوال دوم که باعث شده وقت زیادی ازش گرفته بشه :
۱- سوال رو map نتونسته بکنه :
استرس بالا و دید بسیار جزئی باعث شده در نگاه اول متوجه نشه سوال دقیقا جزو مواردی هست که هزاران بار تمرین کرده (دقت کنید این سوال base مشابه fibo داره)
۲- بخاطر اینکه زمان کم نیاره اولین راهحلی که به ذهنش رسیده رو کد زده
Recursion
که خب جواب درستی بوده ولی اگر دقت میکرد میتونست خیلی بهتر خودش رو نشون بده با استفاده از تکنیک
Dynamic Programming
برای مثال من fibo رو به ۳ روش حل کردم :
1- Recursion
2- Dynamic Programming
3- Dynamic Programming with python generator
و هر ۳ مورد رو زمان اجرا گرفتم
توجه کنید سوال
Google Junior Python Developer
بوده و البته مرحله اول (فکر میکنم فقط ۱ مرحله دیگه مصاحبه داشته باشه و بیشتر system design باشه هرچند ساده).
ایشون توی meta دوره Internship رو گذرونده و ترم بعدی مدرک لیسانس رو میگیره برای همین به دنبال استخدامی در شرکتهای غول فناوری هست (سطح استرس بالایی هم داره)
توی مرحله اول ۲ تا سوال داشته ؛ پیاده سازی یک stack با ۲ عملیات بیشتر که خب بیشتر میخواستند بدونند چقدر با Inheritance , OOP توی پایتون آشنا هست
سوال دوم که بنظرم جالب اومد :
یک تابع که خروجی از یک سری از اعمال ریاضی روی ۳ نتیجهی آخر بدست میاد مثلا
اگر مرحله n رو بخوایم :
n-1, n-2, n-3
رو باید داشته باشیم و برای بدست آوردن خروجی بعنوان مثال
(n-1/n-2) + (n-3/2)
میشه.
۲ تا مشکل این دوستمون داشت توی سوال دوم که باعث شده وقت زیادی ازش گرفته بشه :
۱- سوال رو map نتونسته بکنه :
استرس بالا و دید بسیار جزئی باعث شده در نگاه اول متوجه نشه سوال دقیقا جزو مواردی هست که هزاران بار تمرین کرده (دقت کنید این سوال base مشابه fibo داره)
۲- بخاطر اینکه زمان کم نیاره اولین راهحلی که به ذهنش رسیده رو کد زده
Recursion
که خب جواب درستی بوده ولی اگر دقت میکرد میتونست خیلی بهتر خودش رو نشون بده با استفاده از تکنیک
Dynamic Programming
برای مثال من fibo رو به ۳ روش حل کردم :
1- Recursion
2- Dynamic Programming
3- Dynamic Programming with python generator
و هر ۳ مورد رو زمان اجرا گرفتم
توجه کنید سوال
Google Junior Python Developer
بوده و البته مرحله اول (فکر میکنم فقط ۱ مرحله دیگه مصاحبه داشته باشه و بیشتر system design باشه هرچند ساده).
👍27
دستاوردهای یادگیری عمیق(InTec)
سوال مرحله اول مصاحبه یکی از بچهها در گوگل : ایشون توی meta دوره Internship رو گذرونده و ترم بعدی مدرک لیسانس رو میگیره برای همین به دنبال استخدامی در شرکتهای غول فناوری هست (سطح استرس بالایی هم داره) توی مرحله اول ۲ تا سوال داشته ؛ پیاده سازی یک stack…
راهحلهای سوال مصاحبه گوگل برای
junior python developer.
پ.ن :
نکته مهمی که باید اضافه کنم (یادم نبود) توی روش 1 :
خیلی زود به محدودیت recursive call پایتون هم میخورید؛ اما برای مورد ۲ و ۳ همچین چیزی وجود نداره
که خب بسته به test case مصاحبه ممکنه شما رد بشید.
junior python developer.
پ.ن :
نکته مهمی که باید اضافه کنم (یادم نبود) توی روش 1 :
خیلی زود به محدودیت recursive call پایتون هم میخورید؛ اما برای مورد ۲ و ۳ همچین چیزی وجود نداره
که خب بسته به test case مصاحبه ممکنه شما رد بشید.
👍25
#برای_آیندگان
شاید برای تازهکارها (آخرش میگم چرا)
خیلی وقته دلم میخواد ی مطلب اینطوری بنویسم و این اواخر خیلی خیلی بیشتر حتی چون کسی به ما راجب اینطوری بودن اوضاع نگفته بود.
چندوقتی هست توی پروژههای بکند و فرانت وارد شدم و دارم تسک میزنم و کار انجام میدم (بطور دقیق حدود ۲ سال شاید) البته منظورم بصورت جدی و حرفهای هست وگرنه قبلتر در حد دمو سرو کار داشتم با flask و روزای اولیه اومدن fastAPI هم سوییج شدم روش
بر خلاف همهی بچههای پایتون دولوپر که وقتی میخوان جدی backend رو شروع کنند میرن سراغ Django من رفتم سراغ موارد دیگه اول با Go - Rust ی بررسی کردم و دیدم خیلی برای من کاربردی نیست. خلاصه تصمیم گرفتم برم سراغ NodeJS - Express دلیلش هم این بود که از منابع و جزئیات و ... پر هست علاوه بر اون برای یادگیری فرانت هم به js نیاز داشتم (اونقدرم تنبل هستم که اگر کارم به پایتون میرسید همه گوشه کنارههای مهم رو کنار میذاشتم و فقط اصل مطلب رو دنبال میکردم)
توی ۳ ماه اخیر دارم Django - FastAPI کار میکنم و حالا نقش Dev Manager توری هم توی گروه بکند ۲ تا شرکت دارم توی این مسیر از راهنمایی آدمای خیلی خوبی بهره گرفتم اما یادم نمیره خیلی از آدمایی که تجربه داشتند هم هی مسئله و پروژهها رو برام گنده کردند (شاید اگه یه تازهکار بودم یا آماده نبودم واقعا جا میزدم)
من به لطف سواد و یادگیری ۶ ماههایی که توی Express داشتم (سعی میکردم از کتابخونهها استفاده نکنم مفهموم رو بفهمم و خودم پیادهسازی ساده انجام بدم بعد برم سراغ کتابخونهها - یه عادت دیگهای هم که دارم خوندن سورس کدها هست همیشه چیزای خوبی توشون مخفی شده؛ بگذریم) تونستم توی ۲ هفته مقدمات Django رو تموم کنم و شروع به code review و کد زدن توی Django بکنم (البته هنوزم درحال یادگیری هم هستم)
همه چیزم خوب پیش میرفت - کارفرما راضی - نیروی DevOps فوقالعاده راضی و وقتایی که تست هم مینویسم تیم test هست و ایمیل تشکر
اما با این همه همچنان آدمای زیادی بودند که بهم میگفتن تو فکر میکنی Django رو یاد گرفتی ما n ساله داریم کد میزنیم هنوز جرات نداریم بریم سراغ فلان پروژه ولش کن بذار کار کنه (خیلی بخشهای پروژه مشکل داره ولی هنوز کار میکنه هرچند مزخرف)
شانس خوب من شاید باشه ۱-۲ نفر اینجا بودند که وقتی سوال میپرسیدم فقط میگفتن روش بهتر کدوم هست یا خودشون توی چندسال تجربه چیکار میکنند (نه نصیحت داشت نه توضیحات دلسرد کننده)
همهی اینارو گفتم چون چندروز پیش ی تازهکار رو دیدم که بعد از ۱ سال کد زدن و یادگیری توی اولین پروژه تقریبا بزرگش ترکونده بودنش و خیلی ناامید بود؛ ی مقداری باهاش صحبت کردم و ... در نهایت گفت برای تویی که senior هستی یا همه قبولت دارند گفتنش راحته
خواستم بگم من الان ۱۵-۱۶ سال هست که توی بخشهای مختلف دارم کار میکنم و یادمیگیرم ۱۲ سالی میشه که پایتون رو میشناسم و اسکریپت مینویسم (هنوزم کلی چیز دارم یاد میگیرم نمونش کامنت پست قبل)
با همه اینها هنوزم هستند آدمایی که بهم میگن یادگیری فریمورک که به همین سادگی نیست؛ من اگر میخواستم به حرف این آدما باشم هیچ وقت از دنیای سرور و شرکت اولی که کار میکردم استعفا نمیدادم؛ فقط به لطف تجربهام کاری که خیلیها شاید توی ۶ ماه انجام بدند رو من توی ۲ هفته انجام دادم.
حالا ۲ ماه هست که من اون پروژهایی که هیچکس قبول نمیکرد رو تنهایی دارم انجام میدم :
تا الان ۱۵۰۰ خط کد پروژه رو تبدیل کردم به ۷۰۰ خط
از ۲۴ تا table پروژه با redesign اصولی رسیده به ۱۳ تا
۳۵ تا فیچر رو بازنویسی کردم
۷ تا فیچر که سالها درخواست کاربرا هست رو اضافه کردم و سرعت پروژه رو بیش از ۲.۵ برابر توی تستها
امروز که نسخه جدید لانچ شد و همه تیمهای دیگه خوشحال بودند (بخصوص تیم فرانت که فشار زیادی روش بود)
فکر کردم شاید زمان امنی باشه برای نوشتن این مطلب.
خلاصه که senior - junior نداره آدمایی هستند که شمارو بکوبند؛
همیشه با ذهن باز چیزهای جدید رو یاد میگیرم حتی از کارآموزها (اگر بهتر باشه استفاده هم میکنم)
حرفای منفی آدمای کوبنده هم شمارو ناراحت نکنه چون فقط خود شما میدونی از کجا شروع کردی و به کجا رسیدی و به مرور زمان با تجربه کردن این سرعت یادگیریه هم بیشتر میشه نگرانش نباشید.
شاید برای تازهکارها (آخرش میگم چرا)
خیلی وقته دلم میخواد ی مطلب اینطوری بنویسم و این اواخر خیلی خیلی بیشتر حتی چون کسی به ما راجب اینطوری بودن اوضاع نگفته بود.
چندوقتی هست توی پروژههای بکند و فرانت وارد شدم و دارم تسک میزنم و کار انجام میدم (بطور دقیق حدود ۲ سال شاید) البته منظورم بصورت جدی و حرفهای هست وگرنه قبلتر در حد دمو سرو کار داشتم با flask و روزای اولیه اومدن fastAPI هم سوییج شدم روش
بر خلاف همهی بچههای پایتون دولوپر که وقتی میخوان جدی backend رو شروع کنند میرن سراغ Django من رفتم سراغ موارد دیگه اول با Go - Rust ی بررسی کردم و دیدم خیلی برای من کاربردی نیست. خلاصه تصمیم گرفتم برم سراغ NodeJS - Express دلیلش هم این بود که از منابع و جزئیات و ... پر هست علاوه بر اون برای یادگیری فرانت هم به js نیاز داشتم (اونقدرم تنبل هستم که اگر کارم به پایتون میرسید همه گوشه کنارههای مهم رو کنار میذاشتم و فقط اصل مطلب رو دنبال میکردم)
توی ۳ ماه اخیر دارم Django - FastAPI کار میکنم و حالا نقش Dev Manager توری هم توی گروه بکند ۲ تا شرکت دارم توی این مسیر از راهنمایی آدمای خیلی خوبی بهره گرفتم اما یادم نمیره خیلی از آدمایی که تجربه داشتند هم هی مسئله و پروژهها رو برام گنده کردند (شاید اگه یه تازهکار بودم یا آماده نبودم واقعا جا میزدم)
من به لطف سواد و یادگیری ۶ ماههایی که توی Express داشتم (سعی میکردم از کتابخونهها استفاده نکنم مفهموم رو بفهمم و خودم پیادهسازی ساده انجام بدم بعد برم سراغ کتابخونهها - یه عادت دیگهای هم که دارم خوندن سورس کدها هست همیشه چیزای خوبی توشون مخفی شده؛ بگذریم) تونستم توی ۲ هفته مقدمات Django رو تموم کنم و شروع به code review و کد زدن توی Django بکنم (البته هنوزم درحال یادگیری هم هستم)
همه چیزم خوب پیش میرفت - کارفرما راضی - نیروی DevOps فوقالعاده راضی و وقتایی که تست هم مینویسم تیم test هست و ایمیل تشکر
اما با این همه همچنان آدمای زیادی بودند که بهم میگفتن تو فکر میکنی Django رو یاد گرفتی ما n ساله داریم کد میزنیم هنوز جرات نداریم بریم سراغ فلان پروژه ولش کن بذار کار کنه (خیلی بخشهای پروژه مشکل داره ولی هنوز کار میکنه هرچند مزخرف)
شانس خوب من شاید باشه ۱-۲ نفر اینجا بودند که وقتی سوال میپرسیدم فقط میگفتن روش بهتر کدوم هست یا خودشون توی چندسال تجربه چیکار میکنند (نه نصیحت داشت نه توضیحات دلسرد کننده)
همهی اینارو گفتم چون چندروز پیش ی تازهکار رو دیدم که بعد از ۱ سال کد زدن و یادگیری توی اولین پروژه تقریبا بزرگش ترکونده بودنش و خیلی ناامید بود؛ ی مقداری باهاش صحبت کردم و ... در نهایت گفت برای تویی که senior هستی یا همه قبولت دارند گفتنش راحته
خواستم بگم من الان ۱۵-۱۶ سال هست که توی بخشهای مختلف دارم کار میکنم و یادمیگیرم ۱۲ سالی میشه که پایتون رو میشناسم و اسکریپت مینویسم (هنوزم کلی چیز دارم یاد میگیرم نمونش کامنت پست قبل)
با همه اینها هنوزم هستند آدمایی که بهم میگن یادگیری فریمورک که به همین سادگی نیست؛ من اگر میخواستم به حرف این آدما باشم هیچ وقت از دنیای سرور و شرکت اولی که کار میکردم استعفا نمیدادم؛ فقط به لطف تجربهام کاری که خیلیها شاید توی ۶ ماه انجام بدند رو من توی ۲ هفته انجام دادم.
حالا ۲ ماه هست که من اون پروژهایی که هیچکس قبول نمیکرد رو تنهایی دارم انجام میدم :
تا الان ۱۵۰۰ خط کد پروژه رو تبدیل کردم به ۷۰۰ خط
از ۲۴ تا table پروژه با redesign اصولی رسیده به ۱۳ تا
۳۵ تا فیچر رو بازنویسی کردم
۷ تا فیچر که سالها درخواست کاربرا هست رو اضافه کردم و سرعت پروژه رو بیش از ۲.۵ برابر توی تستها
امروز که نسخه جدید لانچ شد و همه تیمهای دیگه خوشحال بودند (بخصوص تیم فرانت که فشار زیادی روش بود)
فکر کردم شاید زمان امنی باشه برای نوشتن این مطلب.
خلاصه که senior - junior نداره آدمایی هستند که شمارو بکوبند؛
همیشه با ذهن باز چیزهای جدید رو یاد میگیرم حتی از کارآموزها (اگر بهتر باشه استفاده هم میکنم)
حرفای منفی آدمای کوبنده هم شمارو ناراحت نکنه چون فقط خود شما میدونی از کجا شروع کردی و به کجا رسیدی و به مرور زمان با تجربه کردن این سرعت یادگیریه هم بیشتر میشه نگرانش نباشید.
👍104❤🔥10👏10
من اصلا به این حرف که میگن؛ برنامهنویس باید روی ۱ پروژه کار کنه تا موفق باشه یا تمرکزش رو روی ۱ پروژه بذاره هیچ اعتقادی ندارم.
۵ پروژه فعلی من؛ پروژه جدید هم درحال استارت خوردن هست.
پیشنهاد میکنم :
۱- ۲ نسخه داکیومنت بنویسید؛ نسخه معمول و طبق خواستههای شرکت یا کارفرما و نسخه دوم با جزئیات کامل برای خودتون
۲- همه چیز رو لاگ بندازید و همهی تغییرات و قدمهایی که رفتید رو ذخیره به درستی ورژن بزنید و ذخیره کنید
۳- درنهایت واسه اگر با این روش مشکل دارید؛ حذفش نکنید فقط پروژههایی که بیشتر به هم شبیه هست رو انتخاب کنید
مثلا همگی پایتون باشه / همگی روی یک فریمورک باشه و ...
۵ پروژه فعلی من؛ پروژه جدید هم درحال استارت خوردن هست.
پیشنهاد میکنم :
۱- ۲ نسخه داکیومنت بنویسید؛ نسخه معمول و طبق خواستههای شرکت یا کارفرما و نسخه دوم با جزئیات کامل برای خودتون
۲- همه چیز رو لاگ بندازید و همهی تغییرات و قدمهایی که رفتید رو ذخیره به درستی ورژن بزنید و ذخیره کنید
۳- درنهایت واسه اگر با این روش مشکل دارید؛ حذفش نکنید فقط پروژههایی که بیشتر به هم شبیه هست رو انتخاب کنید
مثلا همگی پایتون باشه / همگی روی یک فریمورک باشه و ...
👍29❤5👎1
آپدیت کردن ورژن توی پایتون این نیست که فقط ببینید چی جدید اومده و استفاده کنید یا حتی بدتر ازون فقط سورس کدی که مثلا روی py3.2 بود رو بیارید روی py3.11 اجرا بگیرید (فقط در حدی که اگر اروری بود برطرف کنید)
برای همین خیلی از بچههای dev manager / senior کمی مقاومت دارند در برابر ورژن پایتون عوض کردن به بهونه آپدیت.
برای خودم حالا که دارم میرم سراغ 3.11 سخنرانیهای مختلفی رو گوش میدم.
از core developer های پایتون و البته Guido van Rossum راجب پایتون 3.11 و تغییراتش شنیدم و بسیار تاکید شده که اگر python 3.11 به درستی استفاده نشه میتونه از 3.8 کندتر هم باشه
برای مثال (مثال خالق پایتون) : عملگر add توی پایتون نسخه 3.11؛ اینجوری هست که اگر شما تا الان ۲ بار این رو برای int استفاده کردید دفعه سوم دیگه type check انجام نمیده که مطمئن بشه هر ۲ سمت عملگر از int باشه و فقط انجامش میده اگر درست باشه خروجی میگیره و اگر اشتباه باشه بر میگرده روی چیزی که قبلا بود؛ ۲ طرف رو چک میکنه و بعد add رو مناسب اون انجام میده.
با این حساب اگر لیستی از float - int - str دارید بهتره اینطوری نباشه که هی بین این موارد چرخشی کار انجام بشه؛
شاید حتی بهتر باشه ۳ تا لیست (یا قشنگر ۳ تا array) با دیتاتایپ ثابت براشون در نظر بگیرید.
این فقط ۱ مثال از تغییرات زیادی بود که وجود داره
در انتها باید بگم :
دیدن همچین ارائههایی میتونه خیلی کمک کننده باشه
Youtube Link
برای همین خیلی از بچههای dev manager / senior کمی مقاومت دارند در برابر ورژن پایتون عوض کردن به بهونه آپدیت.
برای خودم حالا که دارم میرم سراغ 3.11 سخنرانیهای مختلفی رو گوش میدم.
از core developer های پایتون و البته Guido van Rossum راجب پایتون 3.11 و تغییراتش شنیدم و بسیار تاکید شده که اگر python 3.11 به درستی استفاده نشه میتونه از 3.8 کندتر هم باشه
برای مثال (مثال خالق پایتون) : عملگر add توی پایتون نسخه 3.11؛ اینجوری هست که اگر شما تا الان ۲ بار این رو برای int استفاده کردید دفعه سوم دیگه type check انجام نمیده که مطمئن بشه هر ۲ سمت عملگر از int باشه و فقط انجامش میده اگر درست باشه خروجی میگیره و اگر اشتباه باشه بر میگرده روی چیزی که قبلا بود؛ ۲ طرف رو چک میکنه و بعد add رو مناسب اون انجام میده.
با این حساب اگر لیستی از float - int - str دارید بهتره اینطوری نباشه که هی بین این موارد چرخشی کار انجام بشه؛
شاید حتی بهتر باشه ۳ تا لیست (یا قشنگر ۳ تا array) با دیتاتایپ ثابت براشون در نظر بگیرید.
این فقط ۱ مثال از تغییرات زیادی بود که وجود داره
در انتها باید بگم :
دیدن همچین ارائههایی میتونه خیلی کمک کننده باشه
Youtube Link
YouTube
How we are making Python 3.11 faster - presented by Mark Shannon
EuroPython 2022 - How we are making Python 3.11 faster - presented by Mark Shannon
[The Auditorium on 2022-07-14]
The "Faster CPython" project aims to speed up Python, specifically CPython, by a large factor over the next few releases.
The first release…
[The Auditorium on 2022-07-14]
The "Faster CPython" project aims to speed up Python, specifically CPython, by a large factor over the next few releases.
The first release…
👏21👍12
مثل قرار آبان
۱۴-۱۵-۱۶ آذر
فعالیت کانال و گروه تعطیل میشه
حالا که ج.ا درحال عادی سازی هست؛ وظیفه خودم میدونم که نشون بدم؛ بعد از ریختن این همه خون حتی با تعطیل شدن گشت ارشاد هم هیچ چیز عادی نمیشه
این پست نیازی به بحث نداره؛
کامنت نذارید 🌹❤️
۱۴-۱۵-۱۶ آذر
فعالیت کانال و گروه تعطیل میشه
حالا که ج.ا درحال عادی سازی هست؛ وظیفه خودم میدونم که نشون بدم؛ بعد از ریختن این همه خون حتی با تعطیل شدن گشت ارشاد هم هیچ چیز عادی نمیشه
این پست نیازی به بحث نداره؛
کامنت نذارید 🌹❤️
❤100👎26👍7🕊3❤🔥2