✅از لینکدین Hossein Nazari
مخاطبم بیشتر جوونای عزیز جویای کار هست، خیلی توجه کنید.
دیروز با دوست عزیزی صحبت میکردم و چالش پیدا کردن کار در سن بالا رو با هم صحبت میکردیم.
یه سوال خیلی مهم از من پرسید که نتونستم بهش جواب درستی بدم، سوال با این مفهوم که چرا پزشک، مشاور، وکیل و حسابدار، هرچقدر که سنشون بالاتر میره مشتری شون بیشتر میشه حتی با وجود دستمزد بیشتر، ولی برنامه نویس ها در سنین بالاتر خواهانشون کمتر میشه؟
من برنامه نویسی به شیوه صرفا کارمندی رو یه شغل پایدار در بلند مدت نمیدونم، و فکر میکنم باید به فکر روش های درآمدزایی متفاوت بود.
فکر می کنید برنامه نویسی بعد از چهل سالگی چه شکلی میشه؟
خیلی عدد ۴۰ مهم نیست، مهم مرز سنی مشخصی هست که بعدش چالش های ویژه خودش رو داره برای کار کردن و کار پیدا کردن.
تجربه شخص ممکنه بیش از حد زیاد باشه، حوصله کار شخص کمتر از حد قابل قبول باشه و همچنین، سطح انتظار حقوقی شخص بالا میره و هر شرکتی نمیتونه انتظاراتش رو برآورده کنه. و جمع این فاکتورها ممکنه فرصت های شغلی رو کم کنه.
حرف آخر اینکه خوبه که کارمندی و برنامه نویسی رو تجربه کنید، اما شغل دائم نبینیدش، چون میتونه چالش های جدی ایجاد کنه در سنین بالاتر.
در آخر خوشحال میشم اگه تجربه و راهکاری برای این چالش دارید و حتی تجربه ای دارید، کامنت کنید.
مخاطبم بیشتر جوونای عزیز جویای کار هست، خیلی توجه کنید.
دیروز با دوست عزیزی صحبت میکردم و چالش پیدا کردن کار در سن بالا رو با هم صحبت میکردیم.
یه سوال خیلی مهم از من پرسید که نتونستم بهش جواب درستی بدم، سوال با این مفهوم که چرا پزشک، مشاور، وکیل و حسابدار، هرچقدر که سنشون بالاتر میره مشتری شون بیشتر میشه حتی با وجود دستمزد بیشتر، ولی برنامه نویس ها در سنین بالاتر خواهانشون کمتر میشه؟
من برنامه نویسی به شیوه صرفا کارمندی رو یه شغل پایدار در بلند مدت نمیدونم، و فکر میکنم باید به فکر روش های درآمدزایی متفاوت بود.
فکر می کنید برنامه نویسی بعد از چهل سالگی چه شکلی میشه؟
خیلی عدد ۴۰ مهم نیست، مهم مرز سنی مشخصی هست که بعدش چالش های ویژه خودش رو داره برای کار کردن و کار پیدا کردن.
تجربه شخص ممکنه بیش از حد زیاد باشه، حوصله کار شخص کمتر از حد قابل قبول باشه و همچنین، سطح انتظار حقوقی شخص بالا میره و هر شرکتی نمیتونه انتظاراتش رو برآورده کنه. و جمع این فاکتورها ممکنه فرصت های شغلی رو کم کنه.
حرف آخر اینکه خوبه که کارمندی و برنامه نویسی رو تجربه کنید، اما شغل دائم نبینیدش، چون میتونه چالش های جدی ایجاد کنه در سنین بالاتر.
در آخر خوشحال میشم اگه تجربه و راهکاری برای این چالش دارید و حتی تجربه ای دارید، کامنت کنید.
Forwarded from Ninja Learn | نینجا لرن
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Python BackendHub (Mani)
AioClock
در ماه ۴ هزار دانلود داره 🚀
یک شرکت بزرگ تو برزیل هم داره ازش استفاده میکنه و تو لینکدین ازم تشکر کردن خیلی حس خوبی داشت :))
واقعا دوست دارم فول تایم اوپن سورس کار کنم. و مثلا همین پروژه naked sqlalchemy ام حاصله دو شب کار بود.
ولی متاسفانه هنوز به نقطه ای نرسیدم که بتونم کسب درآمد کنم از پروژه اوپن سورسم
برای همین به حمایتتون نیاز دارم این حمایت میتونه یک استار گیت هاب باشه, که پروژه هام بیشتر دیده شه و به اون نقطه نزدیک تر شم 🫶
فریم ورک/لایبری های مفید اوپن سورسی که تاحالا منتشر کردم:
AioClock - A modern python scheduling framework with dependency injection and modular integration support. Alternative for Rocketry or apscheduler
Naked SQLA - A simple and lightweight object mapper around SQLAlchemy core, simple alternative to SQLAlchemy ORM.
CfCrawler - Cloudflare scraper and cralwer written in Async, In-place library for HTTPX. Crawl website that has cloudflare enabled, easier than ever!
@PyBackendHub
در ماه ۴ هزار دانلود داره 🚀
یک شرکت بزرگ تو برزیل هم داره ازش استفاده میکنه و تو لینکدین ازم تشکر کردن خیلی حس خوبی داشت :))
واقعا دوست دارم فول تایم اوپن سورس کار کنم. و مثلا همین پروژه naked sqlalchemy ام حاصله دو شب کار بود.
ولی متاسفانه هنوز به نقطه ای نرسیدم که بتونم کسب درآمد کنم از پروژه اوپن سورسم
برای همین به حمایتتون نیاز دارم این حمایت میتونه یک استار گیت هاب باشه, که پروژه هام بیشتر دیده شه و به اون نقطه نزدیک تر شم 🫶
فریم ورک/لایبری های مفید اوپن سورسی که تاحالا منتشر کردم:
AioClock - A modern python scheduling framework with dependency injection and modular integration support. Alternative for Rocketry or apscheduler
Naked SQLA - A simple and lightweight object mapper around SQLAlchemy core, simple alternative to SQLAlchemy ORM.
CfCrawler - Cloudflare scraper and cralwer written in Async, In-place library for HTTPX. Crawl website that has cloudflare enabled, easier than ever!
@PyBackendHub
👌این عکسو دادم به ربات هوشیفای گفتم متن های عکس رو بده. نتیجه:
ترجمه متنهای موجود در عکس به شرح زیر است:
بالا:
"تمام زیرساختهای دیجیتال مدرن"
پایین:
"یک پروژه که یک فرد تصادفی در نبراسکا از سال 2003 به طور بیمنت نگهداری کرده است"
قصدم تبلیغ نبود. نکته عکس جالب بود و باهاش هوشیفای رو هم تست کردم.
لینک ربات هم نمیدم
ترجمه متنهای موجود در عکس به شرح زیر است:
بالا:
"تمام زیرساختهای دیجیتال مدرن"
پایین:
"یک پروژه که یک فرد تصادفی در نبراسکا از سال 2003 به طور بیمنت نگهداری کرده است"
قصدم تبلیغ نبود. نکته عکس جالب بود و باهاش هوشیفای رو هم تست کردم.
لینک ربات هم نمیدم
✅سوال جنگویی
این ویو (تصویر سفید) رو دارم. و میخوام class-based ش کنم. و صفحه بندی یا pagination هم داشته باشه.
تصمیم می گیرم از ListView ارث بری کنم (تصویر سیاه)
حالا با توجه به اینکه صفحه بندی رو میخوام و میخوام کمترین و مفهوم ترین کد رو بنویسم. چکار کنم؟
این ویو (تصویر سفید) رو دارم. و میخوام class-based ش کنم. و صفحه بندی یا pagination هم داشته باشه.
تصمیم می گیرم از ListView ارث بری کنم (تصویر سیاه)
حالا با توجه به اینکه صفحه بندی رو میخوام و میخوام کمترین و مفهوم ترین کد رو بنویسم. چکار کنم؟
Forwarded from Python Hints
از صبح داشتم یک پروژه رو
دسترسی به کدهای قدیمی هم گرفتم، میبینم تست نویسی برای این باگ تو زبان و فریمورک قبلی انجام شده ولی این سمت توی تستها نیست !
بنظرتون مشکل از کجاست ؟
مدیرفنی یا تیملید بکند.
یک درس بزرگی که حتی قبل از ورود به دنیای بکند و بخاطر عادت به سورس کد خوندن گرفتم این بود که
اولویت بالاتری داره از
واقعیت هم همین هست،
خیلی تیمها (ایرانی و خارجی) که
این کاملاً خطا هست، برای مدیر فنی ٫ تیم لید منظورم هست. الان سوالتون اینه که چرا ؟
توی این پروژه اگر
اگر این اتفاق افتاده بود الان که فریمورک عوض شده نیاز به باز نویسی تستها نبود، یعنی ما فقط برای اجرای سرور روی thread دیگر دستورات رو عوض میکردیم و تستها رو اجرا میکردیم.
وقتی دارم از بیرون به سیستم نگاه میکنم برام چه فرقی داره که چه زبان برنامهنویسی یا چه فریمورکی استفاده شده؛ همونطور که برای یوزر من فرقی نداره.
خواستم بگم حواستون به این نکته باشه،
متاسفانه کدهای جدید این تیم هم این خطا رو داره و باز وابسته شده به فریمورک
review
میکردم که بنا به مشکلات از یک فریمورک به فریمورک دیگه جابجا شده؛ اما بعد از جابجایی یک سری بخشهای پروژه باگ داره و من وارد شدم برای کد ریویو (امروز صبح روز اول کارم بود) دسترسی به کدهای قدیمی هم گرفتم، میبینم تست نویسی برای این باگ تو زبان و فریمورک قبلی انجام شده ولی این سمت توی تستها نیست !
بنظرتون مشکل از کجاست ؟
مدیرفنی یا تیملید بکند.
یک درس بزرگی که حتی قبل از ورود به دنیای بکند و بخاطر عادت به سورس کد خوندن گرفتم این بود که
Intégration test
اولویت بالاتری داره از
Unit test
واقعیت هم همین هست،
unit test
برای راحتی خودمون و دولوپر بعدی هست و intégration
test
برای راحتی و بدون باگ بودن استفادههای client
خیلی تیمها (ایرانی و خارجی) که
intégration test
نمینویسند متاسفانه ولی اونهایی هم که مینویسند مثل کدهای امروز من دقیقاً از آنچه که فریمورک ارائه میده استفاده میکنند.این کاملاً خطا هست، برای مدیر فنی ٫ تیم لید منظورم هست. الان سوالتون اینه که چرا ؟
توی این پروژه اگر
intégration test
ها میومد سرور رو روی یک thread
جدا اجرا میکرد و بعد با استفاده از پکیج دیگری مثل requests
درخواست میزد به api
هاش بنظرتون بهتر نمیشد ؟ اگر این اتفاق افتاده بود الان که فریمورک عوض شده نیاز به باز نویسی تستها نبود، یعنی ما فقط برای اجرای سرور روی thread دیگر دستورات رو عوض میکردیم و تستها رو اجرا میکردیم.
وقتی دارم از بیرون به سیستم نگاه میکنم برام چه فرقی داره که چه زبان برنامهنویسی یا چه فریمورکی استفاده شده؛ همونطور که برای یوزر من فرقی نداره.
خواستم بگم حواستون به این نکته باشه،
intégration test
باید جوری باشه که فارغ از فریمورک و زبان قابل اجرا باشه.متاسفانه کدهای جدید این تیم هم این خطا رو داره و باز وابسته شده به فریمورک
Forwarded from Python BackendHub
با این اپلیکیشن دقیقا میتونید متوجه شین که چه اتفاقی داره میفته.
مثلا یک برنامه دارین (پایتونی یا هرچی) و هر درخواستی که از سیستم عاملتون رد شه چه HTTP باشه چه HTTPS رو کامل capture میکنه و به صورت plain خیلی تمیز بهتون نشون میده.
مثلا یک برنامه دارین (پایتونی یا هرچی) و هر درخواستی که از سیستم عاملتون رد شه چه HTTP باشه چه HTTPS رو کامل capture میکنه و به صورت plain خیلی تمیز بهتون نشون میده.
Forwarded from کانال دانشجویان آیزیلِرن (Ahmad)
This media is not supported in your browser
VIEW IN TELEGRAM
🔸 مفهوم Comprehensions قطعه کدهایی قدرتمند در پایتون (معرفی)
🙋🏽♂️ خیلی وقتها کدهای افراد باتجربه توی پایتونو نگاه میکنیم میبینم که برای ایجاد sequence؛ لیست، دیکشنری، سِت، از یه روش خاصی استفاده میکنند که کدشون بهینهتر، خواناتر و خلاصهتر میشه! اسم این روشcomprehension هست!
🔸 ما توی دوره صفر تا قهرمانیِ پایتون از آیزیلرن یاد میگیریم چطور انواع comprehensions رو با مثال توی کدهامون پیادهسازی کنیم.
--------------------
🔗 وبسایت : آیزیلرن
🙋🏽♂️ خیلی وقتها کدهای افراد باتجربه توی پایتونو نگاه میکنیم میبینم که برای ایجاد sequence؛ لیست، دیکشنری، سِت، از یه روش خاصی استفاده میکنند که کدشون بهینهتر، خواناتر و خلاصهتر میشه! اسم این روش
🔸 ما توی دوره صفر تا قهرمانیِ پایتون از آیزیلرن یاد میگیریم چطور انواع comprehensions رو با مثال توی کدهامون پیادهسازی کنیم.
--------------------
🔗 وبسایت : آیزیلرن
Forwarded from Ninja Learn | نینجا لرن
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from جنگولرن
Media is too big
VIEW IN TELEGRAM
✅مصاحبه علی بیگدلی با من در مورد فروشگاه اینترنتی با جنگو
توی این ویدئو یک مصاحبه با مهندس علی بیگدلی پیرامون طراحی یک فروشگاه اینترنتی با جنگو داشتم.
علی بیگدلی من رو به عنوان یک برنامه نویس با تجربه انتخاب کرده بود. و سوالات خودش رو از من پرسید.
سعی کردم تا جایی که دانش دارم جواب بدم.
امیدوارم از این ویدئو چیزی یاد بگیرید.
لینک آپارت:
https://www.aparat.com/v/kuocju0
لینک یوتیوب:
در حال آپلود
لینک مکتب خونه
توی این ویدئو یک مصاحبه با مهندس علی بیگدلی پیرامون طراحی یک فروشگاه اینترنتی با جنگو داشتم.
علی بیگدلی من رو به عنوان یک برنامه نویس با تجربه انتخاب کرده بود. و سوالات خودش رو از من پرسید.
سعی کردم تا جایی که دانش دارم جواب بدم.
امیدوارم از این ویدئو چیزی یاد بگیرید.
لینک آپارت:
https://www.aparat.com/v/kuocju0
لینک یوتیوب:
در حال آپلود
لینک مکتب خونه
✅ویدئوی آموزشی برخی از دستورات SQL
لینک:
https://www.aparat.com/v/gdmmamx
توی این قسمت در مورد مفاهیم زیر صحبت کردیم:
✔️نکات مربوط به استفاده از کلید اصلی ترکیبی
✔️نکات دستور delete
✔️نکات دستور update
✔️اجرای کوئری های مختلف select
✔️نکات مرتب سازی رکوردها
✔️نکات مربوط به group by
✔️نکات مربوط به join دو جدول با هم
✔️نکات مربوط به ضرب دکارتی در join جدول ها بدون where
این ویدئو رو برای معلم های هنرستان و درس توسعه برنامه سازی و پایگاه داده ساختم.
اما چون مفاهیم ش کلی هست به درد همه میخوره.
لینک:
https://www.aparat.com/v/gdmmamx
توی این قسمت در مورد مفاهیم زیر صحبت کردیم:
✔️نکات مربوط به استفاده از کلید اصلی ترکیبی
✔️نکات دستور delete
✔️نکات دستور update
✔️اجرای کوئری های مختلف select
✔️نکات مرتب سازی رکوردها
✔️نکات مربوط به group by
✔️نکات مربوط به join دو جدول با هم
✔️نکات مربوط به ضرب دکارتی در join جدول ها بدون where
این ویدئو رو برای معلم های هنرستان و درس توسعه برنامه سازی و پایگاه داده ساختم.
اما چون مفاهیم ش کلی هست به درد همه میخوره.
Forwarded from آکادمی دکتر مسفروش (Ali Mesforush)
http://tiny.cc/Mes_Academy
سلام.
دورههای آموزشی رایگان زیر در ۸ سال گذشته توسط من تهیه شده است که میتواند برای دانشجویان علوم پایه، فنی و مهندسی و علوم کامپیوتر مفید باشد.
تلاش من بر این بوده است که برای درسهای دانشگاهی تمام سرفصل مصوب وزارت علوم رعایت شود و درسها به شکل پایهای و اصولی آموزش داده شوند.
با توجه به شروع سال تحصیلی جدید سپاسگزار خواهم شد اگر این پست را باز نشر (Repost) فرمایید.
۱- آموزش رایگان ریاضی پیشدانشگاهی، ویژه نودانشجویان
http://tiny.cc/Mes_PreMath
۲- آموزش رایگان ریاضی عمومی یک مهندسی
http://tiny.cc/Mes_Calculus1
۳- آموزش رایگان ریاضی عمومی ۲ مهندسی
http://tiny.cc/Mes_Calculus2
۴- آموزش رایگان معادلات دیفرانسیل رشتههای مهندسی
http://tiny.cc/Mes_ODE
۵- دوره تست معادلات دیفرانسیل
http://tiny.cc/Mes_ODETest
۶- آموزش رایگان ریاضی مهندسی
http://tiny.cc/Mes_EngMath
۷- آموزش رایگان محاسبات عددی ویژه دانشجویان رشتههای مهندسی
http://tiny.cc/Mes_Mohasebat
۸- آموزش رایگان احتمال مهندسی
http://tiny.cc/Mes_Probabilty
۹- آموزش رایگان کار و برنامهنویسی با MATLAB
http://tiny.cc/Mes_Matlab
۱۰- آموزش رایگان Maple
http://tiny.cc/Mes_Maple
۱۱- آموزش رایگان برنامهنویسی با Python
http://tiny.cc/Mes_Python
۱۲- آموزش رایگان برنامهنویسی پایتون (کلاس درس)
http://tiny.cc/Mes_PythonClass
۱۳- مبانی کامپیوتر با پایتون ۳
http://tiny.cc/Mes_Mabani
۱۴- آموزش رایگان Numpy, Scipy
http://tiny.cc/Mes_Numpy
۱۵- آشنایی با یادگیری ماشین
http://tiny.cc/Mes_ML
۱۶- آموزش رایگان برنامهنویس با C++
http://tiny.cc/Mes_CPP
۱۷- هنر برنامهنویسی
http://tiny.cc/Mes_Art
۱۸- آموزش رایگان حروفچینی مستندات علمی با LaTeX و بسته XePersian.
http://tiny.cc/Mes_LaTeX
۱۹- کارگاه آشنایی با لاتک و زیپرشین دانشگاه کاشان
http://tiny.cc/Mes_Kashan
۲۰- کارگاه آشنایی با LaTeX و XePersian بهشهر
http://tiny.cc/Mes_Behshar
۲۱- آموزش رایگان رسم در LaTeX
http://tiny.cc/Mes_Tikz
۲۲- آموزش رایگان مبانی آنالیز عددی
http://tiny.cc/Mes_Adadi1
۲۳- آموزش رایگان آنالیز عددی ۲
http://tiny.cc/Mes_Adadi2
۲۴- آموزش رایگان آنالیز عددی پیشرفته
http://tiny.cc/Mes_AdvNum
۲۵- آموزش رایگان جبرخطی و مبانی ماتریسها
http://tiny.cc/Mes_LinAlg
۲۶- آموزش رایگان جبرخطی عددی (ریاضی، برق و علوم کامپیوتر)
http://tiny.cc/Mes_NumLinAlg
۲۷- آموزش رایگان جبرخطی عددی پیشرفته
http://tiny.cc/Mes_AdvNumAna
۲۸- آموزش رایگان معادلات دیفرانسیل با مشتقات جزئی
http://tiny.cc/Mes_PDE
۲۹- آموزش رایگان روش عناصر متناهی (FEM)
http://tiny.cc/Mes_FEM
۳۰- آموزش رایگان FEniCS، برای حل معادلات دیفرانسیل با مشتقات جزئی
http://tiny.cc/Mes_Fenics
۳۱- آموزش رایگان کار و برنامهنویسی در R
http://tiny.cc/Mes_R
۳۲- حل تمرین دروس مختلف
http://tiny.cc/Mes_HaleTamrin
۳۳- آموزش رایگان حسابان (۱) پایه یازدهم
http://tiny.cc/Mes_Hesaban11
۳۴- آموزش رایگان ریاضی (۲) پایه یازدهم تجربی
http://tiny.cc/Mes_Riazi11
۳۵- آشنایی با سوالات آزمون استخدامی
http://tiny.cc/Mes_Estekhdami
۳۶- آموزش رایگان روش سریع تراختنبرگ در حساب
http://tiny.cc/Mes_Trachtenburg
۳۷- آشنایی مختصر با لینوکس
http://tiny.cc/Mes_Linux
۳۸- آمادگی برای المپیاد ریاضی
http://tiny.cc/Mes_Olympiad
لطفا با سابسکرایب کردن کانال در یوتیوب و انتشار این پست در گروهها، کانالها در فضای مجازی از آن حمایت کنید.
سلام.
دورههای آموزشی رایگان زیر در ۸ سال گذشته توسط من تهیه شده است که میتواند برای دانشجویان علوم پایه، فنی و مهندسی و علوم کامپیوتر مفید باشد.
تلاش من بر این بوده است که برای درسهای دانشگاهی تمام سرفصل مصوب وزارت علوم رعایت شود و درسها به شکل پایهای و اصولی آموزش داده شوند.
با توجه به شروع سال تحصیلی جدید سپاسگزار خواهم شد اگر این پست را باز نشر (Repost) فرمایید.
۱- آموزش رایگان ریاضی پیشدانشگاهی، ویژه نودانشجویان
http://tiny.cc/Mes_PreMath
۲- آموزش رایگان ریاضی عمومی یک مهندسی
http://tiny.cc/Mes_Calculus1
۳- آموزش رایگان ریاضی عمومی ۲ مهندسی
http://tiny.cc/Mes_Calculus2
۴- آموزش رایگان معادلات دیفرانسیل رشتههای مهندسی
http://tiny.cc/Mes_ODE
۵- دوره تست معادلات دیفرانسیل
http://tiny.cc/Mes_ODETest
۶- آموزش رایگان ریاضی مهندسی
http://tiny.cc/Mes_EngMath
۷- آموزش رایگان محاسبات عددی ویژه دانشجویان رشتههای مهندسی
http://tiny.cc/Mes_Mohasebat
۸- آموزش رایگان احتمال مهندسی
http://tiny.cc/Mes_Probabilty
۹- آموزش رایگان کار و برنامهنویسی با MATLAB
http://tiny.cc/Mes_Matlab
۱۰- آموزش رایگان Maple
http://tiny.cc/Mes_Maple
۱۱- آموزش رایگان برنامهنویسی با Python
http://tiny.cc/Mes_Python
۱۲- آموزش رایگان برنامهنویسی پایتون (کلاس درس)
http://tiny.cc/Mes_PythonClass
۱۳- مبانی کامپیوتر با پایتون ۳
http://tiny.cc/Mes_Mabani
۱۴- آموزش رایگان Numpy, Scipy
http://tiny.cc/Mes_Numpy
۱۵- آشنایی با یادگیری ماشین
http://tiny.cc/Mes_ML
۱۶- آموزش رایگان برنامهنویس با C++
http://tiny.cc/Mes_CPP
۱۷- هنر برنامهنویسی
http://tiny.cc/Mes_Art
۱۸- آموزش رایگان حروفچینی مستندات علمی با LaTeX و بسته XePersian.
http://tiny.cc/Mes_LaTeX
۱۹- کارگاه آشنایی با لاتک و زیپرشین دانشگاه کاشان
http://tiny.cc/Mes_Kashan
۲۰- کارگاه آشنایی با LaTeX و XePersian بهشهر
http://tiny.cc/Mes_Behshar
۲۱- آموزش رایگان رسم در LaTeX
http://tiny.cc/Mes_Tikz
۲۲- آموزش رایگان مبانی آنالیز عددی
http://tiny.cc/Mes_Adadi1
۲۳- آموزش رایگان آنالیز عددی ۲
http://tiny.cc/Mes_Adadi2
۲۴- آموزش رایگان آنالیز عددی پیشرفته
http://tiny.cc/Mes_AdvNum
۲۵- آموزش رایگان جبرخطی و مبانی ماتریسها
http://tiny.cc/Mes_LinAlg
۲۶- آموزش رایگان جبرخطی عددی (ریاضی، برق و علوم کامپیوتر)
http://tiny.cc/Mes_NumLinAlg
۲۷- آموزش رایگان جبرخطی عددی پیشرفته
http://tiny.cc/Mes_AdvNumAna
۲۸- آموزش رایگان معادلات دیفرانسیل با مشتقات جزئی
http://tiny.cc/Mes_PDE
۲۹- آموزش رایگان روش عناصر متناهی (FEM)
http://tiny.cc/Mes_FEM
۳۰- آموزش رایگان FEniCS، برای حل معادلات دیفرانسیل با مشتقات جزئی
http://tiny.cc/Mes_Fenics
۳۱- آموزش رایگان کار و برنامهنویسی در R
http://tiny.cc/Mes_R
۳۲- حل تمرین دروس مختلف
http://tiny.cc/Mes_HaleTamrin
۳۳- آموزش رایگان حسابان (۱) پایه یازدهم
http://tiny.cc/Mes_Hesaban11
۳۴- آموزش رایگان ریاضی (۲) پایه یازدهم تجربی
http://tiny.cc/Mes_Riazi11
۳۵- آشنایی با سوالات آزمون استخدامی
http://tiny.cc/Mes_Estekhdami
۳۶- آموزش رایگان روش سریع تراختنبرگ در حساب
http://tiny.cc/Mes_Trachtenburg
۳۷- آشنایی مختصر با لینوکس
http://tiny.cc/Mes_Linux
۳۸- آمادگی برای المپیاد ریاضی
http://tiny.cc/Mes_Olympiad
لطفا با سابسکرایب کردن کانال در یوتیوب و انتشار این پست در گروهها، کانالها در فضای مجازی از آن حمایت کنید.
YouTube
Ali Mesforoush
Share your videos with friends, family, and the world
✅معرفی پکیج های پایتونی
فروشگاه saleor یه نسخه قدیمی داره که دیگه آرشیو ش کرده.
من یه فورک ازش گرفتم توی این آدرس:
https://github.com/miladhzz/saleor-old
فایل requirements.txt رو که دیدم، پکیج های خیلی زیادی توش بود.
از ChatGPT کمک گرفتم و خواستم کار هر کدوم رو در یک جمله کوتاه بگه
خروجی ChatGPT رو عینا توی پست های بعدی قرار میدم.
آپدیت: یکی از دوستان زحمت کشید و pdf ش کرد. پست بعدی
فروشگاه saleor یه نسخه قدیمی داره که دیگه آرشیو ش کرده.
من یه فورک ازش گرفتم توی این آدرس:
https://github.com/miladhzz/saleor-old
فایل requirements.txt رو که دیدم، پکیج های خیلی زیادی توش بود.
از ChatGPT کمک گرفتم و خواستم کار هر کدوم رو در یک جمله کوتاه بگه
خروجی ChatGPT رو عینا توی پست های بعدی قرار میدم.
آپدیت: یکی از دوستان زحمت کشید و pdf ش کرد. پست بعدی
Used packages.pdf
117.8 KB
لیست همه پکیج های استفاده شده در فروشگاه اوپن سورس saleor نسخه قدیمی تمپلت
در قالب pdf
تشکر از Arash
پست های حذف شده رو منتقل کردم به کامنت همین پست
در قالب pdf
تشکر از Arash
پست های حذف شده رو منتقل کردم به کامنت همین پست
⚠️خواهشا ردیس را به عنوان Primary Database استفاده نکنید!
از لینکدین Hasan Arab borzo
✔️کامنت هاشم بخونید. لینک این مطلب
💥 یکی از جذابترین ریفکتور هایی که در اکالا انجام دادم، به ریلیز کردن ۴۰ گیگابایت رم ردیس برای استفاده در سبد خرید و سفارشها مربوط میشه. در این فرآیند، موفق شدم تنها از ۴۰۰ مگابایت رم استفاده کنم!
در شروع کار، به این فکر میکردم که چگونه میتوانم ۴۰ گیگابایت رم را آزاد کنم. اولین راهحلی که به ذهنم رسید، فشردهسازی دادهها بود. اما هیچ کامپرسوری نمیتوانست به اندازه کافی این حجم داده را فشرده کند، و هزینهی Decompress کردن آن بخاطر لود بالای سیستم، بسیار بالا بود.
🤔 هر کلید ما حاوی حدود ۱-۲ کیلوبایت JSON بود و مجبور بودیم که هر محصول را بدون TTL در Redis نگه داریم، زیرا Round Trip ما به Redis در لحظه به حدود ۳۰K میرسید و Redis ۴۰ گیگابایتی را مصرف میکرد. هیچ اپلیکیشنی نمیتوانست این حجم Request را با منابع پایین و زمان پاسخدهی ۱۰ میلیثانیه انجام دهد!
در ادامه، وقتی وارد فضای حل مسئله شدم:
💡 پاکسازی دادههای اضافی: اولین قدم ما حذف کلی دادههای غیرضروری بود که هر کلید را به حدوداً ۵۰۰ بایت تبدیل کرد.
💡 استفاده از Protobuf: به این فکر کردم که چرا از JSON استفاده کنیم؟ با استفاده از deserializer و serializer قدرتمندی مثل Protobuf، میتوانستیم حجم دادهها را به طور چشمگیری کاهش دهیم. با تبدیل دادهها به باینری و ذخیره آن، حجم هر کلید به حدود ۳۰۰ بایت کاهش یافت، که به معنای کاهش ۸۰ درصدی مصرف رم بود. با این حال، کیفیت و سرعت بالا در اکالا برای ما بسیار مهم بود.
💡 شکستن کلیدها: کلیدها را به دو بخش تقسیم کردم:
اطلاعات محصول (شامل نام، بارکد، آدرس عکس و...) در یک کلید با حجم تقریباً ۲۰۰ بایت.
موجودی هر محصول در فروشگاهها در کلیدی دیگر با حجم حدود ۱۰۰ بایت.
در روش قبلی، اگر یک میلیون کالا داشتیم، مصرف حدود ۲۸۶ مگابایت بود. اما در روش جدید، فرض کنیم از یک میلیون تا 2000 محصول داریم و برای یک میلیون کالا موجودی در استور های مختلف، حدود ۹۵ مگابایت مصرف میشد!
💡 کش کردن محصولات: همچنین، کالاهای اضافهشده به سبد خرید مشتریان را به مدت ۴ روز کش کردم. به جای استفاده از Redis به عنوان Primary Database و بدون TTL، هرگاه دادهای نداشتیم، از منبع اصلی اطلاعات را میگرفتیم و دوباره به مدت ۴ روز کش میکردیم. اگر کاربری همان کالا را دوباره به سبد خرید اضافه میکرد، TTL آن به صورت Sliding افزایش مییافت.
در نهایت، با همین ۴۰۰ مگابایت، همه چیز به خوبی به هم رسید و ما توانستیم پرفورمنس و سرعت را بدون هیچ افت کیفیتی حفظ کنیم!
از لینکدین Hasan Arab borzo
✔️کامنت هاشم بخونید. لینک این مطلب
💥 یکی از جذابترین ریفکتور هایی که در اکالا انجام دادم، به ریلیز کردن ۴۰ گیگابایت رم ردیس برای استفاده در سبد خرید و سفارشها مربوط میشه. در این فرآیند، موفق شدم تنها از ۴۰۰ مگابایت رم استفاده کنم!
در شروع کار، به این فکر میکردم که چگونه میتوانم ۴۰ گیگابایت رم را آزاد کنم. اولین راهحلی که به ذهنم رسید، فشردهسازی دادهها بود. اما هیچ کامپرسوری نمیتوانست به اندازه کافی این حجم داده را فشرده کند، و هزینهی Decompress کردن آن بخاطر لود بالای سیستم، بسیار بالا بود.
🤔 هر کلید ما حاوی حدود ۱-۲ کیلوبایت JSON بود و مجبور بودیم که هر محصول را بدون TTL در Redis نگه داریم، زیرا Round Trip ما به Redis در لحظه به حدود ۳۰K میرسید و Redis ۴۰ گیگابایتی را مصرف میکرد. هیچ اپلیکیشنی نمیتوانست این حجم Request را با منابع پایین و زمان پاسخدهی ۱۰ میلیثانیه انجام دهد!
در ادامه، وقتی وارد فضای حل مسئله شدم:
💡 پاکسازی دادههای اضافی: اولین قدم ما حذف کلی دادههای غیرضروری بود که هر کلید را به حدوداً ۵۰۰ بایت تبدیل کرد.
💡 استفاده از Protobuf: به این فکر کردم که چرا از JSON استفاده کنیم؟ با استفاده از deserializer و serializer قدرتمندی مثل Protobuf، میتوانستیم حجم دادهها را به طور چشمگیری کاهش دهیم. با تبدیل دادهها به باینری و ذخیره آن، حجم هر کلید به حدود ۳۰۰ بایت کاهش یافت، که به معنای کاهش ۸۰ درصدی مصرف رم بود. با این حال، کیفیت و سرعت بالا در اکالا برای ما بسیار مهم بود.
💡 شکستن کلیدها: کلیدها را به دو بخش تقسیم کردم:
اطلاعات محصول (شامل نام، بارکد، آدرس عکس و...) در یک کلید با حجم تقریباً ۲۰۰ بایت.
موجودی هر محصول در فروشگاهها در کلیدی دیگر با حجم حدود ۱۰۰ بایت.
در روش قبلی، اگر یک میلیون کالا داشتیم، مصرف حدود ۲۸۶ مگابایت بود. اما در روش جدید، فرض کنیم از یک میلیون تا 2000 محصول داریم و برای یک میلیون کالا موجودی در استور های مختلف، حدود ۹۵ مگابایت مصرف میشد!
💡 کش کردن محصولات: همچنین، کالاهای اضافهشده به سبد خرید مشتریان را به مدت ۴ روز کش کردم. به جای استفاده از Redis به عنوان Primary Database و بدون TTL، هرگاه دادهای نداشتیم، از منبع اصلی اطلاعات را میگرفتیم و دوباره به مدت ۴ روز کش میکردیم. اگر کاربری همان کالا را دوباره به سبد خرید اضافه میکرد، TTL آن به صورت Sliding افزایش مییافت.
در نهایت، با همین ۴۰۰ مگابایت، همه چیز به خوبی به هم رسید و ما توانستیم پرفورمنس و سرعت را بدون هیچ افت کیفیتی حفظ کنیم!