Forwarded from Golang Insights (Javad)
دوستان اگه اپلیکیشن رو بصورت مونولیت مینیوسید، کار خوبی میکنید، اما aggregation pattern رو جدی بگیرید، کمک بزرگی میکنه به حفظ loosely coupled بودن ماژول و سرویس هاتون.
یه اشتباه رایجی که باعث میشه خیلی راحت همه چیز در هم تنیده و coupled بشه نیازهای بیزینسی ای هست که دیتای aggregate شده از چند domain مختلف رو میخواد از شما. تو حالت مونولیت خیلی ساده ست که شما در هر domain به دیتابیس یه domain دیگه درخواست بزنی و یا حتی تو interactor/service دیگه یه متد جدید تعریف کنی که دیتای مد نظر رو بده. که معمولا باعث در هم تنیده شدن و چاق شدن سرویس هاتون میشه.
بهتره سرویس یا همون interactorهاتون کارهای خیلی کوچیک و well-definedی رو انجام بدن و اگه نیازمندی های aggregationطور دارید، یه سری service دیگه بسازید که وابستگی خواهد داشت به سرویس های مختلف و دیتاهای raw رو میگیره و پردازش میکنه که دیتای نهایی رو آماده کنه.
بعضی وقت ها از طریق gateway هم ممکنه بتونید aggregate کنید. بعضی وقت ها ممکنه تو همون لایه دلیوری (کنترلر) تون بتونید دو تا سرویس رو فراخوانی کنید و کار رو در بیارید، گاهی هم پیچیده تر میشه و لازمه یه سرویس(interactor) بنویسید که کار aggregation رو انجام بده
https://learn.microsoft.com/en-us/azure/architecture/patterns/gateway-aggregation
باز خود aggregate کردن حالت های مختلفی داره، اینجا میتونید بیشتر بخونید در موردش
https://medium.com/geekculture/design-patterns-for-microservices-aggregation-pattern-1b8994516fa2
#gocasts | #hossein
➖➖➖➖➖➖➖➖
☄️ @GoInsights | @GolangEngineers
یه اشتباه رایجی که باعث میشه خیلی راحت همه چیز در هم تنیده و coupled بشه نیازهای بیزینسی ای هست که دیتای aggregate شده از چند domain مختلف رو میخواد از شما. تو حالت مونولیت خیلی ساده ست که شما در هر domain به دیتابیس یه domain دیگه درخواست بزنی و یا حتی تو interactor/service دیگه یه متد جدید تعریف کنی که دیتای مد نظر رو بده. که معمولا باعث در هم تنیده شدن و چاق شدن سرویس هاتون میشه.
بهتره سرویس یا همون interactorهاتون کارهای خیلی کوچیک و well-definedی رو انجام بدن و اگه نیازمندی های aggregationطور دارید، یه سری service دیگه بسازید که وابستگی خواهد داشت به سرویس های مختلف و دیتاهای raw رو میگیره و پردازش میکنه که دیتای نهایی رو آماده کنه.
بعضی وقت ها از طریق gateway هم ممکنه بتونید aggregate کنید. بعضی وقت ها ممکنه تو همون لایه دلیوری (کنترلر) تون بتونید دو تا سرویس رو فراخوانی کنید و کار رو در بیارید، گاهی هم پیچیده تر میشه و لازمه یه سرویس(interactor) بنویسید که کار aggregation رو انجام بده
https://learn.microsoft.com/en-us/azure/architecture/patterns/gateway-aggregation
باز خود aggregate کردن حالت های مختلفی داره، اینجا میتونید بیشتر بخونید در موردش
https://medium.com/geekculture/design-patterns-for-microservices-aggregation-pattern-1b8994516fa2
#gocasts | #hossein
➖➖➖➖➖➖➖➖
Please open Telegram to view this post
VIEW IN TELEGRAM
Docs
Gateway Aggregation pattern - Azure Architecture Center
Learn about the Gateway Aggregation pattern, which uses a gateway to aggregate many individual requests into a single request.
🙊1
Golang Insights
دوستان اگه اپلیکیشن رو بصورت مونولیت مینیوسید، کار خوبی میکنید، اما aggregation pattern رو جدی بگیرید، کمک بزرگی میکنه به حفظ loosely coupled بودن ماژول و سرویس هاتون. یه اشتباه رایجی که باعث میشه خیلی راحت همه چیز در هم تنیده و coupled بشه نیازهای بیزینسی…
توی EasyMicroservices هم اکثر مواقع از همین پترن Microservice - Aggregator ☝🏻استفاده میکردیم، دریابیدش.
https://medium.com/geekculture/design-patterns-for-microservices-aggregation-pattern-1b8994516fa2
https://medium.com/geekculture/design-patterns-for-microservices-aggregation-pattern-1b8994516fa2
🙊1
Yasha
Senior 🤡
فارغ از محتوای پیام:)))، مگه ضربالمثل در حد چند کلمه نبود؟ 😂
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣6🍓5🙊1
ظاهرا ChatGPT برای اینکه فشار روی سرورهاش کمتر شه، مدل دیفالتش رو از مدل قویتر یعنی 4o تغییر داده به 4o-mini. بنابراین اگه سوال یا کار جدیای داشتین حواستون به این مورد هم باشه، خصوصا اگر اشتراک Plusش رو دارید نره تو پاچهتون 😐
Please open Telegram to view this post
VIEW IN TELEGRAM
🤝6🙊1
عرفان که قبلا درمورد ابزاری که توسعه داده صحبت کردیم، بهتازگی یک دورهی آموزشی رایگان برای توسعهی همین مینیاپهای تلگرامی تهیه کرده که اگر با رباتهای تلگرامی یا نحوهی توسعهی مینیاپها آشنا نیستید، میتونید از این دوره استفاده کنید و خب تا حد خوبی اکثر موارد رو پوشش داده.
🔗 eyfan.ir/telegram-mini-app
Please open Telegram to view this post
VIEW IN TELEGRAM
1🙊4
Forwarded from IRCF | اینترنت آزاد برای همه
حل مشکل متوقفشدن ویدئوهای یوتیوب روی ثانیه ۵۹، در پنلهای X-UI و مرزبان:
🎥 youtube.com/watch?v=5zSFsiHjakk
💡 در برنامه #Oblivion یا #oblivionDesktop اینمشکل با تغییر متد اتصال از Warp به Gool یا Psiphon قابل حله.
💡 توجه داشته باشین که روی مرورگرتون نباید اکستنشن Adblock یا موارد مشابه نصب باشه.
🔍 ircf.space
@ircfspace
🎥 youtube.com/watch?v=5zSFsiHjakk
💡 در برنامه #Oblivion یا #oblivionDesktop اینمشکل با تغییر متد اتصال از Warp به Gool یا Psiphon قابل حله.
💡 توجه داشته باشین که روی مرورگرتون نباید اکستنشن Adblock یا موارد مشابه نصب باشه.
🔍 ircf.space
@ircfspace
YouTube
حل مشکل 59 ثانیه یوتیوب در مرزبان و سنایی بدون نیاز به وارپ و تغییر dns رفع مشکل گیر کردن یوتوب
حل مشکل گیر کردن ویدیویه یوتوب در یک دقیقه در کامپیوتر و کروم که باعث دردسر برای بسیاری از دوستان شده در این روش بدون نیاز به وارپ یا تغییر دی ان اس میتونین مشکل گیر کردن یوتوب سر 59 ثانیه فریز شدن رو حل کنید به ساده ترین شکل ممکن در دو پنل سنایی و مرزبان…
🙊1
IRCF | اینترنت آزاد برای همه
💡 در برنامه #Oblivion یا #oblivionDesktop اینمشکل با تغییر متد اتصال از Warp به Gool یا Psiphon قابل حله.
💡 توجه داشته باشین که روی مرورگرتون نباید اکستنشن Adblock یا موارد مشابه نصب باشه.
💡 توجه داشته باشین که روی مرورگرتون نباید اکستنشن Adblock یا موارد مشابه نصب باشه.
☝️🏻 اگه از WARP استفاده میکنید احتمالا به این مشکل گیر کردن ویدیوهای یوتیوب برمیخورید، چون WARP لوکیشن رو همون ایران در نظر میگیره و یکسری از اسکریپتهای یوتیوب با خطای 403 مواجه میشن و لود نمیشن. میتونید بهجاش از Oblivion استفاده کنید.
دلیل دیگهش هم که توی پست قبلی گفته شده، استفاده از Ad-Blocker هست که اون هم ممکنه از لود شدن همین اسکریپت جلوگیری کنه.
دلیل دیگهش هم که توی پست قبلی گفته شده، استفاده از Ad-Blocker هست که اون هم ممکنه از لود شدن همین اسکریپت جلوگیری کنه.
🙊4💯2
اگر هنوز فکر میکنید که هوشمصنوعی قرار هست جای شما -بهعنوان مهندس نرمافزار، نه کدنویس- رو بگیره، بهتون پیشنهاد میکنم این مقاله رو بخونید:
stackoverflow.blog/2024/12/31/generative-ai-is-not-going-to-build-your-engineering-team-for-you/
stackoverflow.blog/2024/12/31/generative-ai-is-not-going-to-build-your-engineering-team-for-you/
stackoverflow.blog
Generative AI is not going to build your engineering team for you - Stack Overflow
🙊2❤🔥1
Please open Telegram to view this post
VIEW IN TELEGRAM
😭6🙊2🤣1
Forwarded from Zoomit | زومیت
Please open Telegram to view this post
VIEW IN TELEGRAM
👀5🤣2🙊2
Forwarded from Pedram Karimi
اگر توی local نیاز به valid ssl دارید
میتونی از این استفاده کنید:
https://github.com/FiloSottile/mkcert
میتونی از این استفاده کنید:
https://github.com/FiloSottile/mkcert
GitHub
GitHub - FiloSottile/mkcert: A simple zero-config tool to make locally trusted development certificates with any names you'd like.
A simple zero-config tool to make locally trusted development certificates with any names you'd like. - FiloSottile/mkcert
🔥3🙊2
چطور به کمک روش keyset pagination، روی یک Table با چند میلیون رکورد Pagination پیادهسازی کنیم؟
(توضیحاتشون در محیط NET. هست، ولی کانسپتش برای بیشتر تکنولوژیها صدق میکنه)
📱 لینک ویدیو
#محتوای_خوب
(توضیحاتشون در محیط NET. هست، ولی کانسپتش برای بیشتر تکنولوژیها صدق میکنه)
#محتوای_خوب
Please open Telegram to view this post
VIEW IN TELEGRAM
💯3🙊2
- انجین جدید با عملکرد فوق سریع: زمان کامپایل کامل پروژهها تا ۵ برابر کاهش پیدا کرده و سرعت انجام یکسری از فرآیندهای بیلد هم تا ۱۰۰ برابر سریعتر شده!
- طراحی برای وب مدرن: استفاده از قابلیتهای پیشرفتهی CSS، مثل cascade layers و یا css propertyـهای شخصیسازی شده.
- نصب ساده و بدون دردسر: تیلویند دیگه نیازی به انجام تنظیمات پیچیده و یا نصب پلاگینهای متعدد نداره. همهچیز تنها با این یک خط کد CSS انجام میشه
@import "tailwindcss";
- تشخیص خودکار فایلها: از این بهبعد تیلویند فایلهای تمپلیت شما رو خودکار شناسایی میکنه و نیازی به تعیین مسیرهای content در تنظیمات نیست! حتی فایلهای نادیده گرفته شده در gitignore. هم بهطور هوشمند حذف میشن.
فهرست کامل تغییرات در سایت خودش:
https://tailwindcss.com/blog/tailwindcss-v4
Please open Telegram to view this post
VIEW IN TELEGRAM
Tailwindcss
Tailwind CSS v4.0
We just released Tailwind CSS v4.0 — an all-new version of the framework optimized for performance and flexibility, with a reimagined configuration and customization experience, and taking full advantage of the latest advancements the web platform has to…
1👍6🎉2🙊1
راهاندازی DeepSeek R1 روی سیستم شخصی و استفاده از APIش در یک اپ ساده
📱 youtu.be/Vm7CPUb98e0?si=7m-IJrV47v2ws6EL
Please open Telegram to view this post
VIEW IN TELEGRAM
💯3👍1🙊1
Forwarded from IRCF | اینترنت آزاد برای همه
وقتی از روشنشدن ابعاد و تاثیرات مستقیم و غیرمستقیم تصمیم جدید ترامپ (در آینده نزدیک) بر روی وضعیت #اینترنت_آزاد در ایران صحبت میکنیم، یه عده غیرمطلع (به غیر از سایبریها که تکلیفشون روشنه) درجا یه سری اتهام و برچسب ول میکنن، اما برای اون دسته از افرادی که به شفافیت اهمیت میدن میگم که پروژه سرشناس #V2Ray هم از OTF فاند داشته و احتمالا دستور تعلیق میتونه روی توسعهش اثر منفی بذاره.
نکته جالب اینه که هرچی جستجو انجام میشه، اسامی آشنا و جالب بیشتری دیده میشه ...
💡 opentech.fund/security-safety-audits/v2ray-security-audit
💡 github.com/v2fly/v2ray-core/discussions/3096
🔍 ircf.space
@ircfspace
نکته جالب اینه که هرچی جستجو انجام میشه، اسامی آشنا و جالب بیشتری دیده میشه ...
💡 opentech.fund/security-safety-audits/v2ray-security-audit
💡 github.com/v2fly/v2ray-core/discussions/3096
🔍 ircf.space
@ircfspace
🍓2🙊2
نوشتههای ترمینالی
اگر میخواهید یه پروژه رو کلون کنید و حجمش زیاده، میتونید برای بهینه سازی، دو تا کار کنید: ۱- فقط کامیت آخر رو دانلود کنید، مثلا اگر میخواهیم فقط برنامه رو از سورس دانلود کنید و با تاریخچهاش کاری نداریم منطقیه. ۲- فقط برنچ اصلی (master یا main) رو دانلود…
Telegram
نوشتههای ترمینالی
اگر میخواهید یه پروژه رو کلون کنید و حجمش زیاده، میتونید برای بهینه سازی، دو تا کار کنید:
۱- فقط کامیت آخر رو دانلود کنید، مثلا اگر میخواهیم فقط برنامه رو از سورس دانلود کنید و با تاریخچهاش کاری نداریم منطقیه.
۲- فقط برنچ اصلی (master یا main) رو دانلود…
۱- فقط کامیت آخر رو دانلود کنید، مثلا اگر میخواهیم فقط برنامه رو از سورس دانلود کنید و با تاریخچهاش کاری نداریم منطقیه.
۲- فقط برنچ اصلی (master یا main) رو دانلود…
این نکته ☝️🏻 برای clone کردن ریپوهای پرحجمِ git، اخیرا به کار من که خیلی میاد. دونستنش برای شما هم قطعا خالی از لطف نیست
❤🔥2🙊1
Forwarded from Easy Microservices (Ali Yousefi ˢᵒᶠᵗʷᵃʳᵉ ᴰᵉᵛᵉˡᵒᵖᵉʳ)
برنامه نویس حرفهای به نظر من چهار تا بال داره که باید همیشه و حسابی مراقبشون باشه:
دانش و تجربه، تعامل و انتقال این سه تا
1. دربارهی شغل و حرفهی خودتون باید دانش کسب کنید و مدام خودتون رو بروزرسانی کنید. گارد نداشته باشید در یادگیری چیزهای جدید تا از گفتن «نه، غیر ممکنه و نمیشه» به کارفرما اجتناب کنید.
2. تجربه، داشتن دانش بدون تجربه شمارو مثل زنبور بی عسل میکنه، شما دانش رو باید بتونی تبدیل به خروجی کنی وگرنه دیر یا زود همه متوجه میشن که فقط بلدی حرفای قلمبه سلمبه بزنی ولی کاری از دستت بر نمیاد و براحتی یک باگ رو تبدیل به سه تا باگ جدید میکنی. تجربه فقط با تمرین شبانه روزی و نوشتن پروژه بدست میاد نه با خوندن کتاب و ویدئوی آموزشی و هرچیز دیگه. اینا مربوط به قسمت دانش میشه. پس همین حالا دست به کار شو و با پشتکار تجربهی خودت رو تقویت کن. فراموش نکن تجربه با هیچ چیزی جایگزین نمیشه.
3. تعامل، تعامل مربوط به بخش بیزنسی شماست که باید بتونید دانش و تجربهی خودتون رو تبدیل به پول کنید. اینجا شما یاد میگیرید شبکه بسازید با کارفرماها تعامل کنید و با همکارانتون شبکهی قویای بسازید. دعواهایی که توی ذهنت داری رو رها کن، اگر فکرت رو صرف این کنی که چطور با کارفرما یا همکارات تعاملات بهتری داشته باشی تا اینکه چطور توی دعواها پیروز بشی شما پیشرفت میکنی.
4. باید یاد بگیری اون سه مورد رو انتقال بدی. دانش اگر یکجا بمونه کپک میزنه، تجربه اگر یکجا بمونه شمارو منفور میکنه، تعامل اگر یکجا بمونه دیگران رو از شما فراری میده، دانش و تجربه و حتی تعاملات با آموزش و انتقال به دیگرانه که جوونه میزنه و میوه میده. پس خاضعانه همهی اینها رو انتقال بده، بهت قول میدم هرگز چیزی رو از دست نمیدی بلکه چیزهای جدیدی بدست میاری که از یاقوت سرخ هم با ارزشتر هستند.
#بالهای_شما
#برنامه_نویسی
#برنامه_نویس
#شغل
#مهارت_های_نرم
#مهارت_های_سخت
#تخصص
دانش و تجربه، تعامل و انتقال این سه تا
1. دربارهی شغل و حرفهی خودتون باید دانش کسب کنید و مدام خودتون رو بروزرسانی کنید. گارد نداشته باشید در یادگیری چیزهای جدید تا از گفتن «نه، غیر ممکنه و نمیشه» به کارفرما اجتناب کنید.
2. تجربه، داشتن دانش بدون تجربه شمارو مثل زنبور بی عسل میکنه، شما دانش رو باید بتونی تبدیل به خروجی کنی وگرنه دیر یا زود همه متوجه میشن که فقط بلدی حرفای قلمبه سلمبه بزنی ولی کاری از دستت بر نمیاد و براحتی یک باگ رو تبدیل به سه تا باگ جدید میکنی. تجربه فقط با تمرین شبانه روزی و نوشتن پروژه بدست میاد نه با خوندن کتاب و ویدئوی آموزشی و هرچیز دیگه. اینا مربوط به قسمت دانش میشه. پس همین حالا دست به کار شو و با پشتکار تجربهی خودت رو تقویت کن. فراموش نکن تجربه با هیچ چیزی جایگزین نمیشه.
3. تعامل، تعامل مربوط به بخش بیزنسی شماست که باید بتونید دانش و تجربهی خودتون رو تبدیل به پول کنید. اینجا شما یاد میگیرید شبکه بسازید با کارفرماها تعامل کنید و با همکارانتون شبکهی قویای بسازید. دعواهایی که توی ذهنت داری رو رها کن، اگر فکرت رو صرف این کنی که چطور با کارفرما یا همکارات تعاملات بهتری داشته باشی تا اینکه چطور توی دعواها پیروز بشی شما پیشرفت میکنی.
4. باید یاد بگیری اون سه مورد رو انتقال بدی. دانش اگر یکجا بمونه کپک میزنه، تجربه اگر یکجا بمونه شمارو منفور میکنه، تعامل اگر یکجا بمونه دیگران رو از شما فراری میده، دانش و تجربه و حتی تعاملات با آموزش و انتقال به دیگرانه که جوونه میزنه و میوه میده. پس خاضعانه همهی اینها رو انتقال بده، بهت قول میدم هرگز چیزی رو از دست نمیدی بلکه چیزهای جدیدی بدست میاری که از یاقوت سرخ هم با ارزشتر هستند.
#بالهای_شما
#برنامه_نویسی
#برنامه_نویس
#شغل
#مهارت_های_نرم
#مهارت_های_سخت
#تخصص
1👍5🔥1🌚1🙊1
اگر فقط یک چیز تونسته باشه من رو راضی کنه که برای مدت نسبتا طولانی یک کار رو بهصورت مستمر انجام بدم، اون Duolingo هست. با gamification بینظیری که داره (یکم سمج هست فقط 😁 ) فرآیند یادگیری و استمرار در اون رو خیلی بهبود میده.
توی این مقاله میتونید در مورد این که چطور Duolingo موفق شده بهکمک gamification کاربرها رو به این فرآیند علاقهمند کنه، مطالعه کنید:
🔗 raw.studio/blog/how-duolingo-utilises-gamification
توی این مقاله میتونید در مورد این که چطور Duolingo موفق شده بهکمک gamification کاربرها رو به این فرآیند علاقهمند کنه، مطالعه کنید:
Please open Telegram to view this post
VIEW IN TELEGRAM
😇3👍1🙊1
gemini.google.com
(از اونجایی که تحریم هستیم، به VPN یا DNSـهایی مثل 403.online نیاز داره)
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5👍1🙊1