Dev Perfects
40 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://t.iss.one/dev_perfects/455


ارتباط:
https://t.iss.one/HidenChat_Bot?start=936082426
Download Telegram
Forwarded from CleverDevs (【SUREN】)
جدا پیش خودتون چی فکر میکنین از یه برنامه نویس انقدر توقع دارین و میخواین اندازه یه کارگر ساده بهش حقوق بدین، عجب اوضاعیه آدم میمونه چی بگه

@CleverDevs - @CleverDevsGp
Forwarded from CleverDevs (【SUREN】)
اگر مالک چنل موافق باشه نظر من اینه یه اتحادیه داشته باشیم شاید رفته رفته بزرگ بشه و جواب بگیریم ازش، محمد خودت میتونی چنل رو بزنی تو تبلیغش هم میتونی روی من حساب کنی.

تا متحد نشیم اینا اینجوری دهنمون رو سرویس میکنن، ماجرای اسنپ رو اگه یادتون باشه همه دولوپر هاش تحریمش کردن به التماس افتاد.

@CleverDevs - @CleverDevsGp
Forwarded from Geek Alerts
This media is not supported in your browser
VIEW IN TELEGRAM
Forwarded from Geek Alerts
این کانال فقط آموزش رایگانِ یوتیوب نمی‌ذاره!

پستاش تجربهٔ بیشتر از ۲۰۰ یوتیوبریه که باهاشون کار می‌کنن.

پس توی هر مرحله از یوتیوبری هستی، چه شروع یوتیوبری چه نقد درآمد یوتیوب همراهشون شو.

https://t.iss.one/+TuwxUBcuTethYjA0
Forwarded from Linuxor ?
توی زبان swift به interface میگن protocol، ببینید چقدر قشنگ اسمو انتخاب کردن.

پروتکل یعنی قرارداد یا زبان مشترکی که بین دونفر یا دوتاچیزه و توی برنامه نویسی interface هم دقیقا همین معنی رو میده اما اسمش برای مبتدی ها کمی گمراه کنندس.

🐧 @Linuxor
Forwarded from Geek Alerts
ابزار NotebookLM گوگل که این روزها بسیار محبوب و ترند شده،‌ حالا از ویدیوهای یوتیوب پشتیبانی می‌کنه و می‌تونید درمورد ویدیو یوتیوبی که بهش اضافه می‌کنید هم سوال بپرسید. فایل صوتی‌ای که آپلود می‌کنید هم به متن تبدیل می‌کنه و درنهایت می‌تونید ازش بخواید با توجه به کل محتواهایی که اضافه کردید یه فایل صوتی(پادکست دو نفره) بهتون بده و اون فایل هم قابل اشتراکه الان. همچنین توی آپدیت‌های بتای اون ساختن بات از نوت‌ها رو هم اضافه کردن.

testingcatalog.
hadi @geekalerts
Forwarded from Geek Alerts
Forwarded from Yasha
ب
Forwarded from Python BackendHub (Mani)
یک مشکلی همیشه تو تستا وجود داره وقتی دارین از container استفاده میکنید
اینم اونه که container پورت میگیره. تستون به یک سری hostname و پورت دپندنسی داره و اینا خیلی راحت میتونن باهم conflict بخورن.
و خیلی‌مشکلات دیگه

و خیلی‌وقتا ماک یا استفاده از SQLite پاسخگو نیاز نیست مثلا ماگریشن دارین یا functionality خاصی از دیتابیس استفاده میکنید یا … و تستاتون flaky میشه

اکثر این مشکلات رو testcontainer حلشون کرده.

https://testcontainers.com/
@PyBackendHub
Forwarded from Yasha
قسمت ۴ پادکست صفر و یک رو چند شب پیش با آرمان توی یه کافه ضبط کردیم :))🔥

آرمان مهندس کلاد توی شرکت ابر آروان هست و توی این اپیزود در رابطه مسیری که توی بازارکار دواپس و کلاد ایران طی کرده حرف زدیم.

🔗 کست‌باکس
🔗 اسپاتیفای

@Yasha
Forwarded from Python BackendHub (Mani)
من شروع به استفاده testcontainer کردم و واقعا خوبه.
اگه دیتابیستون رو میبرید رو pg چند آپتمایزشن میتونید انجام بدید که سرعت دیتابیستون خیلی بالا بره:

fsync=off
full_page_writes=off
shared_buffers=256MB
checkpoint_timeout=30min
checkpoint_completion_target=0.9
autovacuum=off

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

@PyBackendHub
Forwarded from Gopher Academy
هنگامی که دارید کد هاتون رو کامیت می کنید هیچ وقت کد های کامنت شده رو کامیت نکنید این باعث کثیف شدن پایگاه کد هاتون می شود و همچنین این باعث میشه از اصل کنترل ورژن دورتر شوید.

کثیف شدن پایگاه کد
وقتی که کدهای کامنتشده را در مخزن (Repository) خود کامیت میکنید، این کدها به عنوان بخشی از تاریخچهی پروژه شما ذخیره میشوند. این موضوع باعث میشود که پایگاه کد شما پر از کدهای مرده، غیرقابل استفاده و غیرقابل پیگیری شود. به مرور زمان، این کدها میتوانند باعث افزایش پیچیدگی پروژه شوند و درک کدها را برای توسعهدهندگان جدید و حتی خودتان در آینده دشوار کنند.

دوری از اصل کنترل ورژن:
یکی از اصول مهم کنترل ورژن این است که هر تغییر در کد به دقت مستند شود و تاریخچهی تغییرات به صورت واضح و قابل پیگیری باشد. زمانی که شما کدهای کامنتشده را کامیت میکنید، در واقع دارید کدی را ذخیره میکنید که نه کامل است و نه مشخص است که چرا کامنت شده. این باعث میشود که دلایل تغییرات به درستی مستند نشود و در آینده برای شما یا همکارانتان فهمیدن دلیل این کامنتها و بازگرداندن کدهای صحیح دشوار شود.

پایبندی به فلسفه کد تمیز:
کد تمیز (Clean Code) به معنای کدی است که خوانا، قابل فهم و بدون شلوغیهای اضافی باشد. وجود کدهای کامنتشده در مخزن شما برخلاف این فلسفه است، زیرا این کدها میتوانند باعث ایجاد ابهام و سردرگمی شوند. مثلاً ممکن است یک توسعهدهنده دیگر از خودش بپرسد که آیا این کد کامنتشده باید به کد اصلی اضافه شود یا نه. این موضوع میتواند باعث کاهش بهرهوری و ایجاد خطاهای غیرمنتظره در آینده شود.


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

خلاصه کلام :
در مجموع، کامیت کردن کدهای کامنتشده نه تنها باعث کثیف شدن پایگاه کد میشود بلکه میتواند اصول کنترل ورژن را زیر سوال ببرد و درک و نگهداری پروژه را برای شما و همکارانتان در آینده دشوارتر کند. به جای کامیت کردن کدهای کامنتشده، سعی کنید از ابزارهای کنترل ورژن و مدیریت پروژه به درستی استفاده کنید تا پایگاه کد تمیزی داشته باشید.

DevTwitter | <Mohammad Abdorrahmani/>

👑 @gopher_academy
Forwarded from 
چی بفرستم از اینجا نرید؟ :(
ولی واقعاً به قول جادی نباید بندهٔ الگوریتم باشم. کانال شخصیه دیگه. انتظار خاصی کسی نباید داشته باشه.

#موقت
Forwarded from amirsamimi_ir
اگر کاربر Vim هستید و می‌خواهید NeoVim را امتحان کنید و می‌خواهید بدون دردسر کانفیگ‌ها و پلاگین‌های Vim به NeoVim انتقال پیدا کند، بعد از نصب NeoVim یک فایل کانفیگ در این مسیر بسازید:
~/.config/nvim/init.vim


در مرحله بعد این خطوط را در این فایل قرار دهید و ذخیره کنید:
set runtimepath^=~/.vim runtimepath+=~/.vim/after
let &packpath=&runtimepath
source ~/.vimrc


همه چیز آماده است! حالا همان تنظیمات و همان پلاگین‌هایی که در Vim دارید، در NeoVim هم در دسترس شماست.
@amirsamimi_ir_telegram
نظرسنجی شبانه.

محتوای کانال توی این یک ماه اخیر چطور بوده؟ :)))


خود نمودار تلگرام که چیز خوبی رو نشون نمیده...


#موقت
مثل اینکه امروز درواقع قبل ساعت دوازده ( 30 سپتامبر ) روز جهانی پادکست بوده 🎙️

به همه رفقایی که خودشون پادکست تولید میکنند و عزیزانی که استفاده میکنند، با اندکی تاخیر تبریم میگم 🔥❤️

🚀 @coolycode
Forwarded from 🎄 یک برنامه نویس تنبل (Raymond 🐈‍⬛ Dev)
🔶 شرکت HMD نام گوشی‌های نوکیا را به‌طور کامل از وب‌سایت خود حذف کرد.

شرکت HMD اعلام کرد که دیگر گوشی تحت نام نوکیا تولید نخواهد کرد که به معنای پایان دوران گوشی‌سازی نوکیا در دنیا هست.

https://nokiamob.net/2024/09/26/hmd-removes-nokia-phones-from-their-website/

#خبر
@TheRaymondDev
Forwarded from 
@DigitalPaintingGroup

گروه نقّاشی/طرّاحی رقمی:

#موقت
Good Morning New Yorkers ☀️
<unknown>
رویا پردازی خالی به درد نمیخوره.
اگه دوست داری همچین صدایی رو سر صبح بشنوی باید زحمتش رو بکشی 🌑

@CodeModule
Forwarded from Gopher Academy
🔵 عنوان مقاله
Stytch: Auth0 Alternative for AuthN, AuthZ, Fraud Prevention

🟢 خلاصه مقاله:
مقاله به بررسی امکانات و خدمات Stytch در زمینه احراز هویت B2B چند-مستاجری در سطح شرکت‌ها می‌پردازد. Stytch امکان استفاده از SSO (ورود یکباره)، RBAC (کنترل دسترسی براساس نقش) و SCIM (مدیریت هویت و دسترسی مبتنی بر استانداردهای ابری) را فراهم می‌کند. همچنین، این سرویس قابلیت استفاده از رابط‌های کاربری از پیش ساخته شده، بدون رابط کاربری (headless)، و یا ادغام مستقیم با API را ارائه می‌دهد. یکی از ویژگی‌های مهم Stytch شناسایی دیجیتالی دستگاه‌هاست تا از طریق آن بتوان ردیابی بات‌ها را انجام داد و از سوءاستفاده جلوگیری کرد. استفاده از Stytch با نسخه رایگان نیز آغاز می‌شود، که این امکان به کاربران اجازه می‌دهد تا کارایی و اثربخشی این سرویس را قبل از خرید تجربه کنند.

🟣لینک مقاله:
https://stytch.com?utm_source=go-weekly&utm_medium=paid_sponsorship&utm_content=go-weekly-05-14-2024&utm_campaign=go-weekly-05-14-2024


👑 @gopher_academy
Forwarded from Linuxor ?
آیا توی زبان C میشه بدون تابع main یه برنامه نوشت؟


نقطه شروع یه برنامه به زبان C تابع main هستش یه نفر توی کوئرا به اسم Mohd Saquib این برنامه که به زبان C نوشته و بدون فانکشن main برنامش اجرا میشه.

توضیح : در واقع فانکشن از قبل تعریف شده start_ کد های environment ضروری برنامه توش نوشته شده و داخلش تابع main صدا زده میشه، که اینجا اومده اونو دوباره تعریف کرده. دقت کنید اینو خودتون بنویسید موقع کامپایل خطای تعریف دوباره start_ میده و باید با سویچ nostartfiles کامپایلش کنید.

🐧 @Linuxor