Forwarded from متخصص وردپرس | پوینا
بانی مد اعصابش از انحصار اسنپ پی ریخته بهم که نمیزاره سایر پلتفرم های قسطی رو اضافه کنید
حاضر شده جریمه اسنپ پی رو بده ولی همه رو اضافه کنه ( تارا و آپ و بلو بانک و دیجی پی و تپسی همه رو اضافه کرده )
@poinair پوینا
حاضر شده جریمه اسنپ پی رو بده ولی همه رو اضافه کنه ( تارا و آپ و بلو بانک و دیجی پی و تپسی همه رو اضافه کرده )
@poinair پوینا
Forwarded from DevTwitter | توییت برنامه نویسی
لذت بردم از زیبایی این مقاله
مخصوصا اون قسمتی که از cpu cache line حرف میزنه که مطمئن هستم برای خیلی هامون جدیده…
داستانش مفصله، اما حتما بخونید
کلا استفاده از sync.Pool جاهایی که temp objectهایی دارید که زیاد داره allocate میشه، زیاد منظورم به تعداد دفعات زیاد هست، استفاده از sync.Pool برای reuse کردن اون objectها کمک میکنه garbage collector کمتر به زحمت بیفته و performance برنامه خیلی بهتر بشه
هم تو خود net/http و encode/json و sdk گولنگ زیاد استفاده شده و هم فریمورک هایی مثل fasthttp که خیلی سریع هستن ازش استفاده میکنن
حتما به اون تیکه padding دقت کنید که چرا داره اضافه میشه
از زیبایی های sync.Pool اینه که lock-free طراحی شده، هر چند به خاطر modern cpuها و cache line ممکنه که این مکانیزم درست اجرا نشه بدون اون padding
قسمت pin و victim هم جالب بود، بخونید
https://victoriametrics.com/blog/go-sync-pool/
@DevTwitter | <Hossein Nazari/>
مخصوصا اون قسمتی که از cpu cache line حرف میزنه که مطمئن هستم برای خیلی هامون جدیده…
داستانش مفصله، اما حتما بخونید
کلا استفاده از sync.Pool جاهایی که temp objectهایی دارید که زیاد داره allocate میشه، زیاد منظورم به تعداد دفعات زیاد هست، استفاده از sync.Pool برای reuse کردن اون objectها کمک میکنه garbage collector کمتر به زحمت بیفته و performance برنامه خیلی بهتر بشه
هم تو خود net/http و encode/json و sdk گولنگ زیاد استفاده شده و هم فریمورک هایی مثل fasthttp که خیلی سریع هستن ازش استفاده میکنن
حتما به اون تیکه padding دقت کنید که چرا داره اضافه میشه
از زیبایی های sync.Pool اینه که lock-free طراحی شده، هر چند به خاطر modern cpuها و cache line ممکنه که این مکانیزم درست اجرا نشه بدون اون padding
قسمت pin و victim هم جالب بود، بخونید
https://victoriametrics.com/blog/go-sync-pool/
@DevTwitter | <Hossein Nazari/>
Forwarded from Accio
"A little copying is better than a little dependency."
- Rob Pike
This is such a nice take. We mostly tend to be so strict about the DRY principle. Duplication is not always evil, nor it is always the root of evil. In fact a little redundancy in exchange for dependency is totally worth it.
Let's say you have multiple components that have their own build processes and operate separately with loose couplings between them. And now you can't stand that you have implemented a logic on both component A and component B. So you decide that there should be a dependency between these components.
You are slowly moving towards tight coupling, and while there are ways to avoid it (introducing a third component ,...), they tend to just consume more of your time and effort so you'd probably just let them be.
This will not only make changes have their effects distributed throughout your entire system, but will impact your build-process/run-time of your components.
#DRY #components
- Rob Pike
This is such a nice take. We mostly tend to be so strict about the DRY principle. Duplication is not always evil, nor it is always the root of evil. In fact a little redundancy in exchange for dependency is totally worth it.
Let's say you have multiple components that have their own build processes and operate separately with loose couplings between them. And now you can't stand that you have implemented a logic on both component A and component B. So you decide that there should be a dependency between these components.
You are slowly moving towards tight coupling, and while there are ways to avoid it (introducing a third component ,...), they tend to just consume more of your time and effort so you'd probably just let them be.
This will not only make changes have their effects distributed throughout your entire system, but will impact your build-process/run-time of your components.
#DRY #components
Forwarded from LearnPOV | لرن پی او وی
یادگیری برنامه نویسی با بازی 🕹️✅
➊ CodeCombat
🚀 @coolycode
➊ CodeCombat
سبک: بازی ماجراجویی➋ CheckiO
مهارتها: یادگیری زبانهای برنامهنویسی (Python, JavaScript)
شما در قالب یک بازی فانتزی شخصیت خود را با نوشتن کد حرکت میدهید و دشمنان را شکست میدهید. این بازی برای مبتدیان و یادگیری اصول برنامهنویسی عالیه.
سبک: بازی حل معما➌ RoboCode
مهارتها: برنامهنویسی Python و JavaScript
این بازی مجموعهای از چالشهای کدنویسی است که با حل آنها مهارتهای خود را تقویت میکنید. مناسب برای افراد با دانش متوسط و پیشرفته.
سبک: مبارزه رباتها➍ TIS-100
مهارتها: یادگیری Java، تفکر الگوریتمی
در این بازی شما باید برای ربات خود کدی بنویسید تا در میدان مبارزه با رباتهای دیگر بجنگد. برای تقویت الگوریتمنویسی و استراتژی عالیه.
سبک: شبیهسازی برنامهنویسی سیستم➎ Human Resource Machine
مهارتها: یادگیری منطق سیستمهای سطحپایین، برنامهنویسی اسمبلی
یک بازی پازل پیچیده که در اون باید مدارها و سیستمهای کامپیوتری رو با کدنویسی درست کنی.
سبک: حل پازل
مهارتها: اصول برنامهنویسی و الگوریتمها
در این بازی شما باید دستورات سادهای برای حل پازلها به کارمندان بدهید. مناسب برای درک ساختارهای پایهای کدنوسی.
#programming
Forwarded from Linuxor ?
برای پردازش تراکنش های بیشتر اومدن دیتابیس ها رو (horizontal scaling) زیاد کردن که سیستم کم نیاره، انتظار میرفت که با تقسیم بار روی چند تا سرور پردازش تراکنش ها بیشتر بشه ولی قضیه برعکس شد بجای اینکه سیستم تراکنش های بیشتری رو ساپورت کنه توان پردازشی کمتری داشت.
همگام سازی روی دیتابیس های توزیع شده یکی از مشکلاتیه که هنوز دارن روش کار میکنن.
@Linuxor
همگام سازی روی دیتابیس های توزیع شده یکی از مشکلاتیه که هنوز دارن روش کار میکنن.
@Linuxor
Forwarded from DevTwitter | توییت برنامه نویسی
مصاحبه کاری به زبان انگلیسی، آلمانی یا هر زبان خارجی کار راحتی نبست و نیاز به تمرین داره، این 10 تا ابزار برای مصاحبه خیلی خیلی بکارتون میاد :
۱. Preply
پلتفرمی برای یادگیری زبان با معلمان خصوصی که امکان برنامهریزی کلاسها به صورت سفارشی را فراهم میکند. شما میتوانید بر روی موضوعاتی مانند مصاحبه شغلی یا واژگان تخصصی در حوزه کاری خود تمرکز کنید.
۲. Speechling
ابزاری برای بهبود تلفظ و مهارتهای صحبت کردن. این ابزار به شما امکان میدهد جملات خاصی را ضبط کرده و بازخورد مستقیم از مربیان بومی زبان دریافت کنید. برای تمرین پاسخ به سوالات مصاحبه فوقالعاده است.
۳. TalkAbroad
این پلتفرم به شما امکان میدهد مکالمات واقعی با افراد بومی داشته باشید و خود را برای مکالمههای طبیعی در مصاحبههای شغلی آماده کنید. برقراری ارتباط با افراد واقعی تجربهای ارزشمند برای مقابله با استرس مصاحبه است.
۴. Elevate
این ابزار به ظاهر فقط برای تقویت مهارتهای شناختی است، اما دارای بخشهایی برای تقویت مهارتهای شنیداری و درک سریع است که در مصاحبهها اهمیت بالایی دارد.
۵. HiNative
پلتفرمی برای دریافت بازخورد از افراد بومی زبان در مورد جملاتی که میخواهید در مصاحبه استفاده کنید. میتوانید سوالاتی مثل «آیا این جمله طبیعی به نظر میرسد؟» بپرسید.
۶. Job Interview Simulator
این ابزار محیطی شبیهسازیشده برای مصاحبه شغلی ایجاد میکند که میتوانید در آن با سوالات رایج به زبانهای مختلف روبهرو شوید. این تجربه به شما کمک میکند استرس را کاهش دهید و پاسخهای خود را بهبود ببخشید.
۷. Beelinguapp
این برنامه به شما کمک میکند مهارتهای شنیداری و واژگان را با مطالعه داستانها و مقالات در کنار متن زبان مادری تقویت کنید. ایدهآل برای گسترش دایره لغات حرفهای.
۸. LingQ
پلتفرمی عالی برای یادگیری زبان از طریق محتوای واقعی مثل اخبار، مصاحبهها و ویدئوها. این ابزار به شما کمک میکند زبان موردنیاز برای مکالمات حرفهای و مصاحبههای شغلی را بیاموزید.
۹. Mondly
یک ابزار تعاملی که مکالمات شغلی و رسمی را شبیهسازی میکند. با این ابزار میتوانید اصطلاحات حرفهای و دیالوگهای مرتبط با مصاحبه را تمرین کنید.
۱۰. FluentU
این ابزار از ویدئوهای واقعی مانند مصاحبهها، سخنرانیها و مستندها استفاده میکند تا شما را با کاربردهای واقعی زبان آشنا کند. تماشای این ویدئوها میتواند اعتمادبهنفس شما را در مصاحبهها افزایش دهد.
@DevTwitter | <Shadi Sepehri (keyworkir)/>
۱. Preply
پلتفرمی برای یادگیری زبان با معلمان خصوصی که امکان برنامهریزی کلاسها به صورت سفارشی را فراهم میکند. شما میتوانید بر روی موضوعاتی مانند مصاحبه شغلی یا واژگان تخصصی در حوزه کاری خود تمرکز کنید.
۲. Speechling
ابزاری برای بهبود تلفظ و مهارتهای صحبت کردن. این ابزار به شما امکان میدهد جملات خاصی را ضبط کرده و بازخورد مستقیم از مربیان بومی زبان دریافت کنید. برای تمرین پاسخ به سوالات مصاحبه فوقالعاده است.
۳. TalkAbroad
این پلتفرم به شما امکان میدهد مکالمات واقعی با افراد بومی داشته باشید و خود را برای مکالمههای طبیعی در مصاحبههای شغلی آماده کنید. برقراری ارتباط با افراد واقعی تجربهای ارزشمند برای مقابله با استرس مصاحبه است.
۴. Elevate
این ابزار به ظاهر فقط برای تقویت مهارتهای شناختی است، اما دارای بخشهایی برای تقویت مهارتهای شنیداری و درک سریع است که در مصاحبهها اهمیت بالایی دارد.
۵. HiNative
پلتفرمی برای دریافت بازخورد از افراد بومی زبان در مورد جملاتی که میخواهید در مصاحبه استفاده کنید. میتوانید سوالاتی مثل «آیا این جمله طبیعی به نظر میرسد؟» بپرسید.
۶. Job Interview Simulator
این ابزار محیطی شبیهسازیشده برای مصاحبه شغلی ایجاد میکند که میتوانید در آن با سوالات رایج به زبانهای مختلف روبهرو شوید. این تجربه به شما کمک میکند استرس را کاهش دهید و پاسخهای خود را بهبود ببخشید.
۷. Beelinguapp
این برنامه به شما کمک میکند مهارتهای شنیداری و واژگان را با مطالعه داستانها و مقالات در کنار متن زبان مادری تقویت کنید. ایدهآل برای گسترش دایره لغات حرفهای.
۸. LingQ
پلتفرمی عالی برای یادگیری زبان از طریق محتوای واقعی مثل اخبار، مصاحبهها و ویدئوها. این ابزار به شما کمک میکند زبان موردنیاز برای مکالمات حرفهای و مصاحبههای شغلی را بیاموزید.
۹. Mondly
یک ابزار تعاملی که مکالمات شغلی و رسمی را شبیهسازی میکند. با این ابزار میتوانید اصطلاحات حرفهای و دیالوگهای مرتبط با مصاحبه را تمرین کنید.
۱۰. FluentU
این ابزار از ویدئوهای واقعی مانند مصاحبهها، سخنرانیها و مستندها استفاده میکند تا شما را با کاربردهای واقعی زبان آشنا کند. تماشای این ویدئوها میتواند اعتمادبهنفس شما را در مصاحبهها افزایش دهد.
@DevTwitter | <Shadi Sepehri (keyworkir)/>
Forwarded from کانال مهرداد لینوکس (Mehrdad Linux)
🔥 در تکنولوژی مثل DevOps، شبکه و... مفهوم:
💠 بازیابی فاجعه Disaster Recovery
💠 تحمل خطا Fault Tolerance
💠 دسترس پذیری بالا High Availability
وجود دارد عکس ها در درک مسئله مفیداند
❤️ ممنون از حمایت هاتون 💐🌺
#devops
💠 بازیابی فاجعه Disaster Recovery
جلوگیری یا به حداقل رساندن از دست دادن دادهها و اختلال در کسبوکار ناشی از رویدادهای فاجعهبار که با دو معیار هدف زمان بازیابی (RTO) و هدف نقطه بازیابی (RPO) و سه عنصر پیشگیری،تشخیص،اصلاح اجرا میشود
💠 تحمل خطا Fault Tolerance
عدم تأخير در ارائه سرويس و قدرت تحمل در هنگام بروز مشكل، هنگام بروز خطا زمان قطعی سرويس صفر يا بسيار کوتاه و عمليات جايگزينی بدون عوامل انسانی و بطور خودکار
💠 دسترس پذیری بالا High Availability
راهکارهای با هدف اطمینان از عملکرد مداوم سیستم حتی در صورت بروز مشکلات ناگهانی
که با حذف تنها نقاط شکست (Single Points of Failure) به وسیله افزونگی (Redundancy)، توزیع بار (Load Balancing)، جابجایی خودکار (Automatic Failover)،خوشهبندی (Clustering)، تشخیص خرابی (Failure Detection). شاخصهایی مانند SLA (توافقنامه سطح خدمات)، RTO (زمان مورد انتظار برای بازگرداندن سیستم به حالت کاری) و RPO (نقطه زمانی مورد انتظار برای بازیابی دادهها) سنجیده میشه
وجود دارد عکس ها در درک مسئله مفیداند
❤️ ممنون از حمایت هاتون 💐🌺
#devops
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
باز هم خارج از گود لینوکسی:
صحبتهای جدید ایلان ماسک:
«به غیر از نظافتچی و نگهبان، فقط ۱٪ کل کارمندان دولت قابل نگهداری هستند. (بقیه را باید دور ریخت)».
• عکسی را میبینید از تبلیغ «استخدام کارمند هوش مصنوعی»، بجای آدم...
صحبتهای جدید ایلان ماسک:
«به غیر از نظافتچی و نگهبان، فقط ۱٪ کل کارمندان دولت قابل نگهداری هستند. (بقیه را باید دور ریخت)».
• عکسی را میبینید از تبلیغ «استخدام کارمند هوش مصنوعی»، بجای آدم...
Forwarded from 🎄 یک برنامه نویس تنبل (The Lazy 🌱 Raymond)
🔶 선진국이 쇠퇴하는 중요한 요인은 사실에서 진실을 구하지 않고, 자신이 얼마나 강대하고 발전했는지 끊임없이 회상하며, 항상 자신이 다른 나라보다 앞서 있다고 생각한다는 점이다.
یک عامل مهم در افول کشورهای توسعه یافته این است که آنها حقیقت را از واقعیت ها جستجو نمی کنند، دائماً به یاد می آورند که چقدر قدرتمند و توسعه یافته هستند و همیشه فکر می کنند که از سایر کشورها جلوتر هستند.
#متفرقه
@TheRaymondDev
یک عامل مهم در افول کشورهای توسعه یافته این است که آنها حقیقت را از واقعیت ها جستجو نمی کنند، دائماً به یاد می آورند که چقدر قدرتمند و توسعه یافته هستند و همیشه فکر می کنند که از سایر کشورها جلوتر هستند.
#متفرقه
@TheRaymondDev
Forwarded from DevTwitter | توییت برنامه نویسی
توی پروژه اخیرم که خیلی پیچیده نبود و زمان زیادی نداشتم، از Scribe استفاده کردم برای داکیومنتسازی API، و باید بگم با یه دستور ساده:
php artisan scribe:generate
کل داکیومنت تمیز و حرفهای آماده شد!
برای پروژههایی که نمیخوای وقت زیادی روی داکیومنتسازی بذاری، ولی نتیجه کار باید مرتب و خوانا باشه، Scribe واقعاً گزینه عالیایه.
اگه ابزارای دیگهای میشناسین که کار مشابه یا حتی بهتری میکنن، خوشحال میشم پیشنهاداتتون رو بشنوم.
@DevTwitter | <mohamadali mahboobi/>
php artisan scribe:generate
کل داکیومنت تمیز و حرفهای آماده شد!
برای پروژههایی که نمیخوای وقت زیادی روی داکیومنتسازی بذاری، ولی نتیجه کار باید مرتب و خوانا باشه، Scribe واقعاً گزینه عالیایه.
اگه ابزارای دیگهای میشناسین که کار مشابه یا حتی بهتری میکنن، خوشحال میشم پیشنهاداتتون رو بشنوم.
@DevTwitter | <mohamadali mahboobi/>
Forwarded from Python Hints
https://github.com/pykeras/neovim
بالاخره آماده شد.
تست هم رفتیم با ۸ نفر از دوستان و ۲ تا از بچههای گروه خودمون.
فکر میکنم خوب باشه.
توی
بالاخره آماده شد.
تست هم رفتیم با ۸ نفر از دوستان و ۲ تا از بچههای گروه خودمون.
فکر میکنم خوب باشه.
توی
ReadMe اصل داستان رو گفتم؛ نکاتی هم برای آنان که میاندیشند وجود دارهGitHub
GitHub - pykeras/neovim: Basic Neovim setup with useful plugins for Python, Rust and JavaScript
Basic Neovim setup with useful plugins for Python, Rust and JavaScript - pykeras/neovim
Forwarded from CleverDevs (CleverDevs Ads)
This media is not supported in your browser
VIEW IN TELEGRAM
Forwarded from CleverDevs (Mammad)
This media is not supported in your browser
VIEW IN TELEGRAM
Forwarded from Rust for Python developers
Fish shell رو با بازنویسی کامل روی
Rust برای نسخه 4 خواهیم داشت.ازون گیتهابای پر از درس هست که خیلی خوب میشه سورس کدش رو خوند.
پروژه
Limbo رو که یادتون هست ؟https://news.1rj.ru/str/pyrust/110
Telegram
Rust for Python developers
این پروژه limbo خیلی باحاله و دانشگاهیه برای آموزش crate های مختلف؛ سورس کدش رو بخونید
Limbo Github
داستان اینه که اومدن گفتن SQLite رو بهتر مینویسیم و با یک زبان امن که خب گزینهاش شده Rust و اینبار همه اجازه دارند کد Contribute کنند.
من خود پروژه رو…
Limbo Github
داستان اینه که اومدن گفتن SQLite رو بهتر مینویسیم و با یک زبان امن که خب گزینهاش شده Rust و اینبار همه اجازه دارند کد Contribute کنند.
من خود پروژه رو…
Forwarded from Python Hints
چون پرسیدید چرا (تو گروه توضیح دادم همون رو میذارم اینجا) :
تعداد پروژههای همزمان من زیاده و خیلی هم طرفدار استفاده از تولز نیستم
سری آخری که از
موقعی که تعداد پروژههای همزمان زیاد میشه :
۱- کندی شدیدی توی
۲- مصرف رم خیلی زیاد میشه
۳- ی وقتایی حتی خود به خود
و ...
که همگی این ها مشکلات اساسی مربوط به الکترون هست.
مختصرش این بود.
آیا
آیا باید یاد گرفت ؟ نه
ولی اگر کندی
—————————————————————————
چرا پایچارم نه ؟
سعی کن باهاش روی
بعد اینجوری هم هست که؛ تا دستت میخوره روش میگه علی الحساب ی ۴-۶ گیگ رم بده بعد میبینم چیکار داری.
تعداد پروژههای همزمان من زیاده و خیلی هم طرفدار استفاده از تولز نیستم
سری آخری که از
vim زدم بیرون هم برای این بود که همه تنظیماتم بدون بکاپ بود و هاردم سوخت (هیچوقت حال نداشتم تنظیم کنم) و هم اینکه خیلی از پلاگینهای الان هم نبود.موقعی که تعداد پروژههای همزمان زیاد میشه :
۱- کندی شدیدی توی
vscode دارم۲- مصرف رم خیلی زیاد میشه
۳- ی وقتایی حتی خود به خود
vscode بسته میشدو ...
که همگی این ها مشکلات اساسی مربوط به الکترون هست.
مختصرش این بود.
آیا
vim بدرد همه میخوره ؟ نه آیا باید یاد گرفت ؟ نه
ولی اگر کندی
vscode اذیت کننده بود یا lag , ... داشتید.—————————————————————————
چرا پایچارم نه ؟
سعی کن باهاش روی
python, rust, javanoscript کار کنی 😂بعد اینجوری هم هست که؛ تا دستت میخوره روش میگه علی الحساب ی ۴-۶ گیگ رم بده بعد میبینم چیکار داری.