بچه ها چرا هیچکس دربارهٔ این ویژگی مخفی داکر حرف نمیزنه؟
من یه اشتباه ۳ ساله رو تازگیا فهمیدم...
کشف شوکهکننده:
وقتی فهمیدم docker build --squash چقدر زندگی رو تغییر میده:
سایز ایمیج از ۱.۲GB به ۳۵۰MB رسید
اسکن امنیتی ۶۰٪ سریعتر شد
زمان deploy نصف شد
چطور کار میکنه؟
docker build --squash -t my-app .
این فلگ تمامی لایهها رو فشرده میکنه به یک لایه واحد!
مقایسه جالب:
معیار قبل بعد
سایز ۱.۲GB ۳۵۰MB
زمان اسکن ۸ دقیقه ۳ دقیقه
تعداد لایهها ۴۷ ۱
۳ ترفند طلایی:
۱.ترکیب با multi-stage builds:
۲.استفاده با BuildKit:
DOCKER_BUILDKIT=1 docker build --squash ...
۳. پاکسازی imageهای squashed نشده:
docker image prune --filter label=squashed=false
هشدار مهم:
این قابلیت مشکلاتی داره:
دیباگ سختتر میشه (چون تاریخچه لایهها از بین میره)
برای CI/CD نیاز به Docker 17.05+ دارید
@DevTwitter | <Milad Shahrokhzadeh/>
من یه اشتباه ۳ ساله رو تازگیا فهمیدم...
کشف شوکهکننده:
وقتی فهمیدم docker build --squash چقدر زندگی رو تغییر میده:
سایز ایمیج از ۱.۲GB به ۳۵۰MB رسید
اسکن امنیتی ۶۰٪ سریعتر شد
زمان deploy نصف شد
چطور کار میکنه؟
docker build --squash -t my-app .
این فلگ تمامی لایهها رو فشرده میکنه به یک لایه واحد!
مقایسه جالب:
معیار قبل بعد
سایز ۱.۲GB ۳۵۰MB
زمان اسکن ۸ دقیقه ۳ دقیقه
تعداد لایهها ۴۷ ۱
۳ ترفند طلایی:
۱.ترکیب با multi-stage builds:
FROM node:16 as builder
WORKDIR /app
COPY . .
RUN npm build
FROM nginx:alpine
COPY --from=builder /app/dist /usr/share/nginx/html
۲.استفاده با BuildKit:
DOCKER_BUILDKIT=1 docker build --squash ...
۳. پاکسازی imageهای squashed نشده:
docker image prune --filter label=squashed=false
هشدار مهم:
این قابلیت مشکلاتی داره:
دیباگ سختتر میشه (چون تاریخچه لایهها از بین میره)
برای CI/CD نیاز به Docker 17.05+ دارید
@DevTwitter | <Milad Shahrokhzadeh/>
👍54🔥10❤4👎4
فایرفاکس بالاخره از PWA پشتیبانی می کند، خسته نباشی :)
فایرفاکس پس از سالها درخواست کاربران، بالاخره تصمیم گرفته است تا از PWA پشتیبانی کند. آنها اخیراً یک ویژگی آزمایشی به نام browser.taskbarTabs.enabled را به نسخه Nightly فایرفاکس اضافه کردهاند که هنوز فعال نیست، اما نشاندهندهی تلاش آنها برای افزودن این قابلیت است.
https://bytes.dev/archives/380
@DevTwitter | <Ali Askari/>
فایرفاکس پس از سالها درخواست کاربران، بالاخره تصمیم گرفته است تا از PWA پشتیبانی کند. آنها اخیراً یک ویژگی آزمایشی به نام browser.taskbarTabs.enabled را به نسخه Nightly فایرفاکس اضافه کردهاند که هنوز فعال نیست، اما نشاندهندهی تلاش آنها برای افزودن این قابلیت است.
https://bytes.dev/archives/380
@DevTwitter | <Ali Askari/>
👍43👎3🔥3❤1
ما توی آروان، مسیر توسعه محصولاتمون رو به صورت عمومی منتشر کردیم.
شما میتونین:
- ببینین چه امکانات و قابلیت هایی در حال توسعه است
- لاگ انتشار قابلیت های جدید رو ببینین
- رای بدین به قابلیت هایی که مد نظرتون هست تا بهشون اولویت داده بشه
- و میتونین هر قابلیتی که توی محصولات ابری بهش نیاز دارن رو وارد کنین
این به ما کمک میکنه تا بتونیم فیدبک مستقیمی از کاربران بگیریم و مسیر توسعه رو مبتنی بر نیازهای واقعی ادامه بدیم.
https://arvancloud-roadmap.com/roadmap
@DevTwitter | <Saber Mesgari/>
شما میتونین:
- ببینین چه امکانات و قابلیت هایی در حال توسعه است
- لاگ انتشار قابلیت های جدید رو ببینین
- رای بدین به قابلیت هایی که مد نظرتون هست تا بهشون اولویت داده بشه
- و میتونین هر قابلیتی که توی محصولات ابری بهش نیاز دارن رو وارد کنین
این به ما کمک میکنه تا بتونیم فیدبک مستقیمی از کاربران بگیریم و مسیر توسعه رو مبتنی بر نیازهای واقعی ادامه بدیم.
https://arvancloud-roadmap.com/roadmap
@DevTwitter | <Saber Mesgari/>
👎158👍37❤1🔥1
این ریپو را یک نفر درست کرده که بیشتر از ۱۵۰ تا notebooks آموزشی داره راجع به استفاده از لایبرری Transformers برای انواع اپلیکیشن ها و روی انواع دیتا مثل PDF و تصویر و ویدیو.
واقعا توجیهی برای یاد نگرفتن نیست. هر کدوم از این notebooks های آموزشی کلی چیز راجع به مدلها و معماری های مختلف یاد میده. یک جور کلاس درس!
Github: https://github.com/NielsRogge/Transformers-Tutorials
@DevTwitter | <Mehdi Allahyari/>
واقعا توجیهی برای یاد نگرفتن نیست. هر کدوم از این notebooks های آموزشی کلی چیز راجع به مدلها و معماری های مختلف یاد میده. یک جور کلاس درس!
Github: https://github.com/NielsRogge/Transformers-Tutorials
@DevTwitter | <Mehdi Allahyari/>
❤20👍4
این رپو با Flask یه CMS پیادهسازی کرده. داکیومنت به چینیه
ولی خوب ترجمه کنید به انگلیسی.
من از معماری و طوری که پیاده کرده خوشم اومد، مثلا سیستم پلاگین پیاده کرده که خوب باحاله، ساختار پروژه رو هم خوب تعریف کرده.
هم قابل استفادهس و هم آموزشی
https://github.com/yandaozi/PPress
@DevTwitter | <Saman/>
ولی خوب ترجمه کنید به انگلیسی.
من از معماری و طوری که پیاده کرده خوشم اومد، مثلا سیستم پلاگین پیاده کرده که خوب باحاله، ساختار پروژه رو هم خوب تعریف کرده.
هم قابل استفادهس و هم آموزشی
https://github.com/yandaozi/PPress
@DevTwitter | <Saman/>
👍9👎3❤2
خوشحالم که اعلام کنم بعد از یک هفته زمان گذاشتن نسخه اول رودمپ تست نویسی برای دولوپر هارو باهاتون شیر میکنم
https://github.com/hasanxdev/Test-Roadmap-For-Developers
@DevTwitter | <Hesam A.B./>
https://github.com/hasanxdev/Test-Roadmap-For-Developers
@DevTwitter | <Hesam A.B./>
👍33❤6🔥4👎2
تکنیک تعامل دیرهنگام (Late Interaction) در بازیابی اطلاعات (information retrieval)، یکی از تکنیکهای موثر در سیستمهای رتبهبندی اسناد (document ranking) است. در این روش، ابتدا پرسش (Query) و اسناد (Documents) به صورت جداگانه encode میشوند و سپس در مرحلهای بعدی، تعامل میان آنها بهصورت موخر و انتخابی صورت میگیرد. این تکنیک باعث کاهش هزینههای محاسباتی نسبت به روشهای تعامل زودهنگام (Early Interaction) میشود، زیرا تنها بر روی تعداد محدودی از اسناد که بهعنوان کاندیدا انتخاب شدهاند، تعامل انجام میگیرد. تکنیک Late Interaction تعادلی میان دقت بالا و کارایی فراهم میکند و در مدلهایی مانند ColBERT کاربرد فراوان دارد.
همچنین مدلهای مهمی از این روش استفاده میکنن مثل ColBERT, ColPali, و ColQwen.
این بلاگ از weaviate خیلی قشنگ همراه با شکل این تکنیک و تکنیکهای دیگه توضیح میده. حتما بخونید اگه کارتون با بازیابی اطلاعات زیاد کار داره.
لینک بلاگ:
https://weaviate.io/blog/late-interaction-overview
@DevTwitter | <Mehdi Allahyari/>
همچنین مدلهای مهمی از این روش استفاده میکنن مثل ColBERT, ColPali, و ColQwen.
این بلاگ از weaviate خیلی قشنگ همراه با شکل این تکنیک و تکنیکهای دیگه توضیح میده. حتما بخونید اگه کارتون با بازیابی اطلاعات زیاد کار داره.
لینک بلاگ:
https://weaviate.io/blog/late-interaction-overview
@DevTwitter | <Mehdi Allahyari/>
👍11👎2
سیستم عامل چطوری کار میکنه؟دنبال کردن فراخوانیهای سیستمی لینوکس مثل یک هکر و متخصص امنیت
نگاهی داریم به کلیات کرنل لینوکس و بعدش مفهموم سیستم کاملها و نگاهی دقیق تر به فراخوانیهای سیستمی و اینکه چطوری می شه فراخوانی های سیستمی یه برنامه رو دنبال کرد
https://www.youtube.com/watch?v=cYUtHe_XXyQ&feature=youtu.be
@DevTwitter | <jadi/>
نگاهی داریم به کلیات کرنل لینوکس و بعدش مفهموم سیستم کاملها و نگاهی دقیق تر به فراخوانیهای سیستمی و اینکه چطوری می شه فراخوانی های سیستمی یه برنامه رو دنبال کرد
https://www.youtube.com/watch?v=cYUtHe_XXyQ&feature=youtu.be
@DevTwitter | <jadi/>
👍40❤8👎5🔥5
اگر دنبال یه روش امن برای host سرور MCPتون هستین، Microsoft Azure توی یه بلاگ پست، قدم به قدم آموزش داده که چطوری میتونید با استفاده از FastAPI و Azure container apps این کار و بکنید.
لینکش:
https://techcommunity.microsoft.com/blog/appsonazureblog/host-remote-mcp-servers-in-azure-container-apps/4403550
@DevTwitter | <Sam92/>
لینکش:
https://techcommunity.microsoft.com/blog/appsonazureblog/host-remote-mcp-servers-in-azure-container-apps/4403550
@DevTwitter | <Sam92/>
👍12👎2
تو Reddit یه نفر یه فایل EXE ویژوال بیسیک ۴ که میشه برای ۱۹۹۷ رو با Claude 3.7 اومده به پایتون تبدیل کرده.
میگه اجرای فایلهای VB4 الان دردسره، ولی Claude 3.7 فایل رو آنالیز کرده، UI و فایلهای صوتی رو پیدا کرده و یه کد پایتون معادلش ساخته، بعد همون بار اول هم کار کرد و کل پروسه کلا ۵ دقیقه طول کشید.
معنی این ماجرا اینه که میشه اپلیکیشنها و بازیهای قدیمی رو بدون کد اصلی به کمک یه ابزار مثل Claude 3.7 بیایم open-source و reverse-engineer کنیم.
@DevTwitter | <Soroush Ahmadi/>
میگه اجرای فایلهای VB4 الان دردسره، ولی Claude 3.7 فایل رو آنالیز کرده، UI و فایلهای صوتی رو پیدا کرده و یه کد پایتون معادلش ساخته، بعد همون بار اول هم کار کرد و کل پروسه کلا ۵ دقیقه طول کشید.
معنی این ماجرا اینه که میشه اپلیکیشنها و بازیهای قدیمی رو بدون کد اصلی به کمک یه ابزار مثل Claude 3.7 بیایم open-source و reverse-engineer کنیم.
@DevTwitter | <Soroush Ahmadi/>
👍58🔥14❤6👎3
مجموعهای از دادههای ساختاریافته فوتبال ،لیگ برتر ایران(لیگ خلیج فارس)، شامل نتایج مسابقات، جدول نهایی، داوران و آقای گلها در قالب CSV.
ایدهآل برای پردازش با Pandas، SQL و مدلسازی با Machine Learning.
https://github.com/Abbasmo72/PersianGulfLeagueIran-Stats
@DevTwitter | <Arzhan/>
ایدهآل برای پردازش با Pandas، SQL و مدلسازی با Machine Learning.
https://github.com/Abbasmo72/PersianGulfLeagueIran-Stats
@DevTwitter | <Arzhan/>
👍37👎4
امروز با claude پایتون هم زدم :D کدش چون اسکریپتی هست و فقط باید در محیط توسعه برای کد پچینگ استفاده بشه زیاد آنچنان موارد پروداکشنی نداره سعی کردم تست زیاد تو الیکسیر بنویسم که مطمئن شم تقریبا تا حد خوبی کار می کنه
کلش امروز نوشته شد سه بار لمیت شدم :D
https://github.com/ash-project/igniter_js/pull/26
@DevTwitter | <ُTagarg/>
کلش امروز نوشته شد سه بار لمیت شدم :D
https://github.com/ash-project/igniter_js/pull/26
@DevTwitter | <ُTagarg/>
👍8❤1🔥1
برخلاف نظرات این همه آدم مبنی بر یاد نگرفتن Programming حالا نظر مدیر عامل GitHub برعکس هست، میگه از دوران کودکی باید Programming در مدرسه آموزش داده بشه چون آینده در اختیار Software خواهد بود و هرکسی میتونه وارد این فضا بشه و با AI این امکان راحت تر شده.
https://www.youtube.com/watch?v=5UhnQ2h-5BY
@DevTwitter | <Max Shahdoost/>
https://www.youtube.com/watch?v=5UhnQ2h-5BY
@DevTwitter | <Max Shahdoost/>
👍99👎7❤4🔥1
من کتاب مهندسی پرامپت گوگل که چند روزه وایرال شده رو به فارسی ترجمه کردم و گذاشتم روی گیتهاب.
کتاب خوبیه، سبکه و اصول اولیه و روشهای اصلی رو شرح داده و دستهبندی کرده و خواننده یه جورایی شیرفهم میشه که چطوری میشه پرامپت نوشت.
بخونین و به اشتراک بذارید
https://teal33t.github.io/prompt-engineering/
@DevTwitter | <Saman/>
کتاب خوبیه، سبکه و اصول اولیه و روشهای اصلی رو شرح داده و دستهبندی کرده و خواننده یه جورایی شیرفهم میشه که چطوری میشه پرامپت نوشت.
بخونین و به اشتراک بذارید
https://teal33t.github.io/prompt-engineering/
@DevTwitter | <Saman/>
🔥73👍22❤8
این ویدیو را حتما ببینید اگه با سیستمهای RAG Agent کار میکنید یا نیاز دارید تو پروداکشن پیاده سازی کنید. تو این ویدیو ۱۰ تا درس مهم را اشاره میکنه که من اینجا فقط لیست میکنم. ولی ویدیو را کامل ببینید. یک کلاس درس خودش!
1. Better LLMs Alone Are Not the Answer
2. Expertise is the Fuel (Specialization over Generality)
3. Enterprise Scale is the Moat (Handling Real Data)
4. The Pilot-to-Production Gap is Large
5. Speed and Iteration > Perfection
6. Engineers Spend Too Much Time on "Boring Stuff"
7. Make AI Easy to Consume (Workflow Integration)
8. Wow Your Users
9. Observability > Accuracy
10. Be Ambitious
https://youtube.com/watch?v=kPL-6-9MVyA
@DevTwitter | <Mehdi Allahyari/>
1. Better LLMs Alone Are Not the Answer
2. Expertise is the Fuel (Specialization over Generality)
3. Enterprise Scale is the Moat (Handling Real Data)
4. The Pilot-to-Production Gap is Large
5. Speed and Iteration > Perfection
6. Engineers Spend Too Much Time on "Boring Stuff"
7. Make AI Easy to Consume (Workflow Integration)
8. Wow Your Users
9. Observability > Accuracy
10. Be Ambitious
https://youtube.com/watch?v=kPL-6-9MVyA
@DevTwitter | <Mehdi Allahyari/>
❤12👍2
دقت کردید صفحهی گوگل همیشه نصفش خالیه؟؟
از نظر تجربهی کاربری، اگر از همهی صفحه استفاده میکرد، مدتزمان بیشتری طول میکشید تا ما به چیزی که دنبالشیم برسیم.
* البته گاهی برای بعضی از جستجوهای برندی اون بخش رو به اطلاعات اون برند اختصاص میده.
@DevTwitter
از نظر تجربهی کاربری، اگر از همهی صفحه استفاده میکرد، مدتزمان بیشتری طول میکشید تا ما به چیزی که دنبالشیم برسیم.
* البته گاهی برای بعضی از جستجوهای برندی اون بخش رو به اطلاعات اون برند اختصاص میده.
@DevTwitter
👍82👎4🔥3
برنامه نویس بودن اینجوریه که از یچیزی خوشت نمیاد ؟ برو بهترشو اونجوری که دوس داری بساز
اکستنشن کروم برلی new tab ساختم این شکلی
کداشم اوپن سورسه مث همیشه:
https://github.com/mshojaei77/Widgetopia
@DevTwitter | <Shojaei/>
اکستنشن کروم برلی new tab ساختم این شکلی
کداشم اوپن سورسه مث همیشه:
https://github.com/mshojaei77/Widgetopia
@DevTwitter | <Shojaei/>
🔥140👍24👎22
👍95👎18
توصیه اولم به هر کسی که میخواد وارد دنیای هوش مصنوعی بشه استفاده ار Hugging Face، گیتهاب دنیای AIعه.
باهاش میتونی:
۱. مدلهای AI رو تست، استفاده و train کنی
۲. از صدها هزار دیتاست بزرگ و تخصصی استفاده کنی
۳. با استفاده از پروژههای متنباز، اپهای ML و AI بسازی و منتشر کنی
@DevTwitter | <Farokh/>
باهاش میتونی:
۱. مدلهای AI رو تست، استفاده و train کنی
۲. از صدها هزار دیتاست بزرگ و تخصصی استفاده کنی
۳. با استفاده از پروژههای متنباز، اپهای ML و AI بسازی و منتشر کنی
@DevTwitter | <Farokh/>
👍63👎1🔥1