10327
برای موفق شدن 🌱 با این عبارت خداحافظی کن: "باشه فردا"🍃 💻 برای دسترسی راحت تر به مطالب به "لیست پین شده" برو🙃 👩💻 Support: @narges_madhi 🪧 ads: @teachifyads 💁♀️ instagram : instagram.com/teachify_ir
✔️ معرفی «LangChain Code» – رقیب متنباز Claude Code و Cursor
شرکت، LangChain یه محصول جدید به اسم Deep Agents Code (یا همون Code) معرفی کرده.
یه فریمورک کاملاً متنباز (MIT) برای ساخت agentهای کدنویسی حرفهای. برخلاف Claude Code یا Cursor، به هیچ مدل خاصی وابسته نیست. میتونید از هر LLM دلخواه (GPT، Claude، Gemini، Qwen، DeepSeek،...) با API key خودتون استفاده کنید.
قابلیتهای کلیدی:
▪️دسترسی مستقیم به فایلسیستم (خواندن، نوشتن، ویرایش، grep، glob)
▪️اجرای دستورات شل در محیط ایزوله (sandbox)
▪️برنامهریزی هوشمند و خرد کردن تسکهای پیچیده
▪️اجرای چندین sub-agent به صورت موازی (حتی async)
▪️مدیریت حافظه و contextهای طولانی
▪️رایگان و اوپنسورس
@Teachify | برنامه نویسی
✔️ قانون LEGB در پایتون (Python Scope Rule)
وقتی پایتون به یک متغیر میرسه، از کجا میفهمه کدوم متغیر رو استفاده کنه؟
پاسخ اینه: قانون LEGB
پایتون متغیرها رو به این ترتیب جستجو میکنه:L → Local (داخل تابع فعلی)
E → Enclosing (تابع بیرونی)
G → Global (سطح اصلی فایل)
B → Built-in (توابع داخلی مثل print و len)
چرا این اتفاق میافته؟ چون پایتون برای پیدا کردن x این مسیر رو طی میکنه:
-> اول داخل تابع فعلی (Local)
-> بعد داخل تابع والد (Enclosing)
-> بعد در سطح فایل (Global)
-> و در نهایت در توابع داخلی پایتون (Built-in)
به همین دلیل هر print مقدار متفاوتی نمایش میدهد.
اگر داخل تابع بخواهی مقدار متغیر global را تغییر بدهی باید از global استفاده کنی:
x = 10
def change():
global x
x = 20
change()
print(x) # 20
def outer():
x = 10
def inner():
nonlocal x
x = 20
inner()
print(x) # 20
outer()
🔥کدهای تخفیف در بات راست چین فعال شد!
❤️@rtldiscountbot
✅اگه مدتهاست میخوای قالب، افزونه یا اسکریپت بخری
یا دورههای آموزشی طراحی (ui) و ساخت حرفه ای و هوشمند سایت رو شروع کنی…
🔻الان بهترین فرصته 👇
🎯 ۳۰٪ تخفیف روی همه محصولات سایت
🎓 ۵۰٪ تخفیف دورههای راستچین آکادمی
🚀کدها فقط داخل ربات فعالن؛
و تنها ۴۸ ساعت فرصت داری رفیق!
⬅️دریافت کد هدیه راستچین به تو
👇👇👇
❤️@rtldiscountbot
❤️@rtldiscountbot
این عالی بود :/
مسیر شغلی مهندسین نرمٰافزار
@Teachify | #IranCoderz
✔️ آپدیت جدید بات ToopCoins
چند قابلیت جدید و کاربردی به بات اضافه شد:
+ قیمت طلای ۱۸ عیار (۷۵۰) از سایت میلی گلد
+ قیمت بشکه نفت WTI
+ قابلیت Market Risk Score (امتیاز ریسک بازار)
یک شاخص جدید برای درک سریع وضعیت کلی بازارهای جهانی:
🟢 آرام (۰–۱۴)
🟡 مراقبت (۱۵–۳۴)
🟠 هشدار (۳۵–۵۹)
🔴 بحران (۶۰–۱۰۰)
این امتیاز بر اساس رفتار داراییهای مهم بازار مثل:
VIX • S&P500 • دلار • طلا • نفت
و همچنین سیگنالهای ترکیبی هوشمند محاسبه میشه.
با قابلیت "امتیاز ریسک بازار" میشه با یک نگاه، فضای ریسک بازار رو سنجید.
@ToopCoins
هوش مصنوعی سرعت میده، نه فهم.
فهم هنوز مسئولیت برنامهنویسه.
@Teachify | برنامه نویسی
✔️ پر استارترین کتابخانههای پایتون در موضوعات مختلف
اگر به دنبال بهترین و پرکاربردترین کتابخانههای پایتون در موضوعات مختلف هستید، سایت awesomepython بهترین منبع برای شماست. در این سایت، کتابخانهها و پکیجهای پایتون بر اساس تعداد استار، محبوبیت، و میزان استفاده دستهبندی شدهاند. اینجا میتونید به راحتی مناسبترین ابزارها رو برای پروژههای خودتون پیدا کنید!
https://awesomepython.org
@Teachify | برنامه نویسی
✔️ سال نو میلادی مبارک
امیدوارم 2026 برای همهی ما ایرانیها، هر کجای دنیا که هستیم، سالی پر از آرامش، پیشرفت و خبرهای خوب باشه ❤️
@Teachify | برنامهنویسی
✔️ داکر Hardened Images خود را بهصورت رایگان و متنباز منتشر شد
شرکت Docker اعلام کرده است که Docker Hardened Images (DHI) را برای استفادهی عمومی، بهصورت رایگان و Open Source در دسترس قرار داده است.
این ایمیجها با تمرکز بر امنیت زنجیره تأمین نرمافزار و کاهش سطح حمله طراحی شدهاند و ویژگیهای زیر را ارائه میدهند:
▪️ کاهش قابل توجه آسیبپذیریها (CVE) در مقایسه با Base Imageهای متداول
▪️ ساختار حداقلی و سبک (حذف ابزارها و پکیجهای غیرضروری در محیط Runtime)
▪️ ارائه SBOM شفاف و دسترسی کامل به اطلاعات اجزای ایمیج
▪️ مبتنی بر توزیعهای رایج Debian و Alpine با حداقل نیاز به تغییر در Dockerfile
این اقدام، استفاده از ایمیجهای امن و استاندارد را برای تیمهای توسعه، DevOps و پروژههای متنباز سادهتر کرده و میتواند به کاهش خطاهای امنیتی در CI/CD Pipeline کمک کند.
لازم به ذکر است که برخی امکانات پیشرفته مانند SLA برای Patchهای امنیتی سریعتر همچنان در پلنهای Enterprise ارائه میشوند.
@Teachify | برنامه نویسی
✔️ تفاوت repr و str در پایتون
متد repr:
نمایش رسمی و دقیق شیء
مخصوص برنامهنویس، دیباگ و لاگ
متد str:
نمایش کاربرپسند شیء
مخصوص خروجی برای کاربر نهایی
class User:
def init(self, name):
self.name = name
def repr(self):
return f"User(name={self.name!r})"
def str(self):
return self.name
u = User("Yousef")
print(u) # Yousef
repr(u) # User(name='Yousef')`
✔️ سطح توسعهدهنده، فقط کدنویسی نیست!
برنامه نویس Junior
کد میزنه تا برنامه فقط کار کنه.
برنامه نویس Mid-Level
کد رو تمیز و مرتب میکنه. میدونه:
هر چیزی که کار میکنه، لزوماً خوب نیست.
برنامه نویس Senior
میفهمه کی باید کد بزنه، کی نزنه و کی کد رو حذف کنه.
برنامه نویس Lead
اصلاً نمیذاره کد اشتباه نوشته بشه.
قبل از اجرا، مسئله رو درست تعریف میکنه.
حقیقت ساده ولی مهم:
هر چی جلوتر میری، کمتر کد میزنی
ولی مسئولیت تصمیمهات خیلی سنگینتر میشه.
تجربه فقط به سالها نیست؛
طرز فکر و تصمیمگیریه که سطح واقعی تو رو نشون میده.
@Teachify | برنامه نویسی
✔️ حقیقتی که باید قبول کنیم
عزیزان ،
اگر صرفا یک Endpoint از OpenAI یا هر AI Service Provider دیگری را صدا میزنید و یک اتفاقی می افتد، شما از خدایان هوش مصنوعی نیستید - باور کنید شما اصلا چیز خاصی نیستید، شما در حال حرام شدن و یک استعداد کشف نشده نیستید، شما صرفا یک صدا کننده یک API هستید - زیاد خودتان را اذیت نکنید !! - کسی هم در هیچ کجای دنیا الاف این تخصص عجیب شما نیست - به همان CRUD ادامه بدهید - خبری هم از حقوق 800 هزار دلاری نیست - بشین سر جات دوست من !
پیروز باشید
@Teachify | #AliKolahdoozan
✔️ سوءاستفاده از بلکفرایدی در ایران!
این روزها همهمون شاهدیم که بعضی از فروشگاههای ایرانی با چه جسارتی مردم رو دست میاندازن و تخفیفهای ساختگی رو بهعنوان «بلکفرایدی» جا میزنن.
شما هم اینجوری باهاش حساب کنین:
اسم فروشگاه رو در گوگل جستوجو کنید. روی لینک اول، سهنقطهی سمت راستش رو بزنید و وارد گزینهی Feedback بشید.
از بین گزینهها، Irrelevant content رو انتخاب کنید.
در باکسی که ظاهر میشه، بنویسید:scam shopping
و ارسالش کنید.
از بقیه هم بخواین همین کار رو انجام بدن. وقتی تعداد گزارشها بالا بره، گوگل فروشگاه رو ریپورت میکنه و رتبهش بهشدت سقوط میکنه. این بهترین راهه تا بفهمن نمیتونن با بیشرمی، نامردی و سوءاستفاده از اعتماد مردم ادامه بدن.
در نهایت، همیشه به یاد داشته باشیم:
پنیرِ مفت فقط تو تلهٔ موشه.
همه میدونیم کدوم فروشگاه ها رو باید ریپورت کنیم(توی عکس ها من با آمازون یاد دادم ولی به اشتباه نرید آمازون رو بزنید)🙏
این پست رو share کنید تا همه در جریان باشن.
@kaliboys | کالی بویز
✔️ دوره رایگان مهندسی هوش مصنوعی از صفر
شامل 503 درس، 20 فاز و 320 ساعت
00: Setup & Tooling
01: Math Foundations
02: ML Fundamentals
03: Deep Learning Core
04: Computer Vision
05: NLP
06: Speech & Audio
07: Transformers Deep Dive
08: Generative AI
09: Reinforcement Learning
10: LLMs from Scratch
11: LLM Engineering
12: Multimodal AI
13: Tools & Protocols
14: Agent Engineering
15: Autonomous Systems
16: Multi-Agent & Swarms
17: Infrastructure & Production
18: Ethics, Safety & Alignment
19: Capstone Projects (85 lessons)
github.com/rohitg00/ai-engineering-from-scratch
@Teachify | برنامه نویسی
✔️ AI Vibe Coding vs Engineer-Guided AI
کدی که فقط تولید شود، الزاماً مهندسی نشده است.
وقتی بدون دانش عمیق و صرفاً با تکیه بر AI کد مینویسیم، ممکن است خروجی کار کند؛
اما زیرساخت آن سست است و در اولین فشار واقعی دچار مشکل میشود.
تفاوت اصلی در «دانش پشت کد» است.
معماری، طراحی، امنیت، مقیاسپذیری و تحلیل، چیزهایی نیستند که با چند پرامپت جایگزین شوند.
هوش مصنوعی ابزار سرعت است، نه جایگزین تفکر مهندسی.
کیفیت را بالاتر از سرعت قرار دهید.
مفهوم را عمیقتر از سینتکس یاد بگیرید.
@Teachify | برنامه نویسی
✔️ حرکت مهم Postman در حوزه مستندسازی API
شرکت Postman، یکی از شناختهشدهترین پلتفرمهای توسعه و مدیریت API، شرکت Fern را تصاحب کرد.
شرکت Fern در زمینه تولید خودکار مستندات و SDK از روی تعریف API فعالیت میکند. ابزارهای این شرکت امکان تولید مستندات ساختیافته، استاندارد و قابل انتشار را مستقیماً از روی مشخصات فنی (مانند OpenAPI) فراهم میکنند؛ موضوعی که همواره یکی از چالشهای تیمهای فنی بوده است.
با این اقدام، Postman میتواند قابلیتهای پیشرفتهتری در زمینه مستندسازی خودکار، تولید SDK و بهبود تجربه توسعهدهندگان را مستقیماً در پلتفرم خود ارائه دهد. این موضوع به کاهش فاصله میان «پیادهسازی API» و «ارائه مستندات حرفهای» کمک خواهد کرد.
@kaliboys | کالی بویز
✔️ با CSS میشه آدم کشت :))
@Teachify | #FRONTGPS
✔️ استوری تلگرام برای کاربران ایرانی فعال شد
بهروزرسانی جدید تلگرام که دقایقی پیش در دسترس قرار گرفت، تغییراتی در ظاهر این پیامرسان ایجاد میکند. این تغییرات مبتنیبر زبان طراحی شیشهای iOS هستند و ظاهرا در نسخهی اندروید هم دیده میشوند.
با اینحال مهمترین تغییر برای ایرانیها، فعالشدن ویژگی استوری است. حالا حسابهای متصلبه شمارههای ایرانی میتوانند در طول روز یک استوری منتشر کنند.
استوری تا به امروز در انحصار کاربران تلگرام پریمیوم (سرویس اشتراکی تلگرام) بود و کاربران ایرانی در نسخهی رایگان به استوری دسترسی نداشتند.
@kaliboys | کالی بویز
سلام دوستان
این کانال رو ساختم تا دسترسی سریع و آسان به نرخ لحظهای ارز دیجیتال، بیتکوین، تتر و طلا داشته باشید.
امیدوارم اطلاعات این کانال بتونه کمکی کوچک اما مفید به تصمیمهای مالی شما باشه و کمی حس خوب به روزهاتون اضافه کنه. ❤️
#yousef
1404.11.16 - 03:52AM
@ToopCoins
سلام…
این مدت خیلی چیزها عادی نبود.
خیلیها سخت گذروندن، خیلیها داغ دیدن،
و بعضیها دیگه بین ما نیستن…
اگه تو این روزها عزیزی رو از دست دادید،
واقعاً تسلیت میگم.
هیچ کلمهای جای خالی آدمها رو پر نمیکنه،
فقط امیدوارم دردتون سبکتر بشه.
@Teachify | برنامه نویسی
✔️ بهترین مهندسهای نرمافزار، تنبلترینها هستند
در ادبیات مهندسی نرمافزار، «تنبلی» بههیچوجه به معنای کمکاری یا بیمسئولیتی نیست؛
بلکه به نوعی تفکر بهینهمحور اشاره دارد.
مهندس نرمافزار «تنبل» فردی است که:
از انجام کارهای تکراری اجتناب میکند و به همین دلیل به سمت اتوماسیون بازاستفادهپذیری کد و طراحی ماژولار حرکت میکند.
تمایل ندارد زمان خود را صرف فهم مجدد کد کند، بنابراین به نامگذاری صحیح مستندسازی و خوانایی کد اهمیت ویژه میدهد.
علاقهای به رفع باگهای تکراری ندارد، پس از ابتدا به طراحی صحیح در نظر گرفتن edge caseها و نوشتن تست توجه میکند.
نتیجه چنین رویکردی، تولید نرمافزاری است که:
+ پایدارتر است
+ نگهداری آسانتری دارد
+ و در بلندمدت هزینه کمتری تحمیل میکند
بههمین دلیل است که در نگاه حرفهای،
«تنبلی» نه یک ضعف، بلکه یکی از نشانههای بلوغ مهندسی محسوب میشود.
همانطور که Larry Wall (خالق Perl) بیان میکند:
> سه فضیلت یک برنامهنویس: تنبلی، بیصبری و غرور
@Teachify | برنامهنویسی
✔️ نکته آموزشی پایتون | بررسی Reference و Copy
a = [1, 2, 3]
b = a
b.append(4)
print(a)
[1, 2, 3, 4] b = a b = a.copy()
# or
b = list(a)
# or
b = a[:]
لیستها در پایتون از نوع mutable هستند و عمل انتساب (=) تنها reference را منتقل میکند، نه خود داده را.@Teachify | برنامه نویسی Читать полностью…
✔️ 8 مدل LLM مناسب اجرا روی لوکال (دسامبر 2025)
1️⃣ Devstral-2-123B
بهترین برای برنامهنویسی
مخصوص توسعه نرمافزار، دیباگ، ریفکتور و ساخت Agent
2️⃣ MiniMax-M2
Agent + Coding + UI
مناسب فولاستک و پروتوتایپ سریع
3️⃣ GLM-4.5-Air
بهترین انتخاب کلی
روزمره، سریع و پایدار
4️⃣ Qwen3-VL-235B-A22B
متن + تصویر
بهترین مدل بینایی (VLM)
5️⃣ GLM-4.6 (REAPed)
استدلال قوی + کدنویسی پیشرفته
قدرت بالا در مسائل پیچیده
6️⃣ Nemotron-3-Nano-30B-A3B
سبک ولی قدرتمند
کیفیت بالا با مصرف کمتر
7️⃣ GPT-OSS-120B
GPT-5 روی سیستم خودت
Agent و Coding سنگین
8️⃣ GPT-OSS-20B
سریع و کممصرف
مناسب Automation و Tool Calling
@Teachify | برنامه نویسی
✔️ چه بلایی سر MinIO اومده؟
تیم توسعه MinIO رسماً اعلام کرده است که نسخه متنباز MinIO وارد Maintenance Mode شده است.
- توسعه فعال نسخه Community متوقف شده است
- رفع مشکلات تنها برای باگهای امنیتی حیاتی انجام میشود
- افزودن قابلیتهای جدید یا بهبودهای عمده دیگر در نسخه متنباز ارائه نخواهد شد
- تمرکز تیم توسعه اکنون به سمت نسخه Enterprise با نام AIStor معطوف شده است
—> به عبارت دیگر، نسخه متنباز MinIO دیگر در حال رشد و توسعه فعال نیست و تنها برای اطمینان از ثبات و امنیت نگهداری میشود.
پیامدها برای کاربران:
_ پروژههایی که روی نسخه Community بنا شدهاند، ممکن است نیازمند بازبینی و برنامهریزی بلندمدت باشند
- انتشار باینریها و تصاویر رسمی Docker/Helm نسخه متنباز متوقف شده است
- مدیریت و تنظیمات پیشرفته UI به نسخه Enterprise منتقل شده است
جایگزینهای متنباز معتبر:
Ceph
SeaweedFS
Garage
Zenko
🔗 لینک رسمی پروژه: MinIO GitHub
@Teachify | برنامه نویسی
برنامه نویس های عزیز شما دلتون گرفتنی چیکار میکنید؟
Читать полностью…
✔️ تفاوت set و frozenset در پایتون
در پایتون، دو نوع ساختار برای کار با مجموعههای غیرتکراری وجود دارد: set و frozenset.
تفاوت اصلی آنها در قابلیت تغییر است:
▪️set (قابل تغییر – Mutable)
s = {1, 2, 3}
s.add(4) #افزودن عنصر
s.remove(2) # حذف عنصر
print(s) # خروجی: {1, 3, 4}fs = frozenset([1, 2, 3])
print(fs) # خروجی: frozenset({1, 2, 3})
# fs.add(4)
#خطا: frozenset قابل تغییر نیست
weights = {frozenset(["سیب", "موز"]): 120}
key = frozenset(["موز", "سیب"])
print(weights[key]) # خروجی: 120
💸 دنیای پردرآمد Devops رو کشف کن!
شروع ثبتنام دومین بوتکمپ آموزشی استخدامی دواپس مکتب شریف 😍
🎯 اگه تو هم میخوای از صفر تا صد دواپس رو یاد بگیری و به یه مهندس دواپس حرفهای تبدیل بشی، بوتکمپ دواپس مکتب شریف با آموزشهای عملی و پروژه محور، همه چیز رو بهت یاد میده.
🔔 مشاوره و ثبتنام در: httb.ir/7Gr9u ➡️
💭 گفتگو با مشاور ثبتنام هوشمند مکتب 🔽
🆔 @MaktabSharif_Admin
#مکتب_شریف
🟣🟣🟣🟣🟣🟣