🧪 MGX.dev – آزمایشگاه پروژههای هوش مصنوعی مولد!
📦 یه پلتفرم منبعباز و جذاب برای ساخت و تست پروژههای Generative AI در حوزههایی مثل:
🎨 تصویر
🎙 صدا
📜 متن
📹 ویدیو
👥 چتباتها
🧠 و حتی Agentها!
🎯 چرا MGX؟
🔹 بدون نیاز به نصب یا GPU: فقط پروژه رو باز کن و مستقیم اجرا کن
🔹 تعاملپذیری بالا: مثل Replit برای AI، با قابلیت فورک، تست و اشتراک
🔹 کد + UI همزمان: هر پروژه یه UI کاربردی هم داره برای تست مستقیم
🔹 پشتیبانی از WebGPU، PyTorch و HuggingFace Models
👀 پروژههایی که همین الان میتونی تست کنی:
✔️ Stable Diffusion XL
✔️ LLaMA 3 در حالت chat
✔️ Voice cloning با Bark
✔️ Video-to-video با AnimateDiff
✔️ Agents with OpenDevin
🌐 تست کن و پروژه خودتو بساز یا فورک کن:
https://mgx.dev
📦 یه پلتفرم منبعباز و جذاب برای ساخت و تست پروژههای Generative AI در حوزههایی مثل:
🎨 تصویر
🎙 صدا
📜 متن
📹 ویدیو
👥 چتباتها
🧠 و حتی Agentها!
🎯 چرا MGX؟
🔹 بدون نیاز به نصب یا GPU: فقط پروژه رو باز کن و مستقیم اجرا کن
🔹 تعاملپذیری بالا: مثل Replit برای AI، با قابلیت فورک، تست و اشتراک
🔹 کد + UI همزمان: هر پروژه یه UI کاربردی هم داره برای تست مستقیم
🔹 پشتیبانی از WebGPU، PyTorch و HuggingFace Models
👀 پروژههایی که همین الان میتونی تست کنی:
✔️ Stable Diffusion XL
✔️ LLaMA 3 در حالت chat
✔️ Voice cloning با Bark
✔️ Video-to-video با AnimateDiff
✔️ Agents with OpenDevin
🌐 تست کن و پروژه خودتو بساز یا فورک کن:
https://mgx.dev
اگر برنامهنویس هستید یا به توسعه نرمافزار علاقه دارید، Trae AI میتونه بهترین همکار شما باشه! این IDE قدرتمند با هوش مصنوعی پیشرفته، کدنویسی رو سریعتر، سادهتر و لذتبخشتر میکنه.
✨ ویژگیهای جذاب Trae AI:
🔹 کدنویسی هوشمند: پیشنهادات کد مبتنی بر زمینه پروژه، با پشتیبانی از چندین زبان برنامهنویسی.
🔹 حالت Builder: پروژههای پیچیده رو به کارهای کوچکتر تقسیم میکنه و قدمبهقدم باهاتون پیش میره.
🔹 چت با AI: سوالات کدنویسیتون رو بپرسید، ارورها رو رفع کنید یا حتی کد آماده بگیرید!
🔹 پشتیبانی از VSCode: افزونهها و تنظیمات VSCode رو بهراحتی وارد کنید.
🔹 رایگان و بدون محدودیت: دسترسی نامحدود به مدلهای پیشرفته مثل Claude 3.7 و GPT-4!
🔗 برای دانلود و اطلاعات بیشتر به سایت رسمی سر بزنید: www.trae.ai
✨ ویژگیهای جذاب Trae AI:
🔹 کدنویسی هوشمند: پیشنهادات کد مبتنی بر زمینه پروژه، با پشتیبانی از چندین زبان برنامهنویسی.
🔹 حالت Builder: پروژههای پیچیده رو به کارهای کوچکتر تقسیم میکنه و قدمبهقدم باهاتون پیش میره.
🔹 چت با AI: سوالات کدنویسیتون رو بپرسید، ارورها رو رفع کنید یا حتی کد آماده بگیرید!
🔹 پشتیبانی از VSCode: افزونهها و تنظیمات VSCode رو بهراحتی وارد کنید.
🔹 رایگان و بدون محدودیت: دسترسی نامحدود به مدلهای پیشرفته مثل Claude 3.7 و GPT-4!
🔗 برای دانلود و اطلاعات بیشتر به سایت رسمی سر بزنید: www.trae.ai
به منظور سهولت در امور فرایند پیاده سازی پست های آموزشی به سبب اینکه شما عزیزان با خیال راحت تری دریافت کنید دوست دارید که در ادامه رو چه موضوعاتی کار بشه؟
Anonymous Poll
29%
پیاده سازی نمونه پروژه های Simple Multi task
13%
پیاده سازی زیرساخت های ابری از جمله AWS یا Google Cloud
0%
معرفی زبان های برنامه نویسی native که کاستوم شده توسط شرکت های حوزه تکنولوژی
42%
اموزش معماری LLM ها و Ai agents
17%
رودمپ یا مسیر یادگیری MLops و Devops و Cloudflair و Next gen Blockchain Dev
✔️ ۱۰ سال تجربه برنامهنویسی در ۶۰ ثانیه
۰/ دیباگر رو بلد شو، درست و حسابی، چند ساعت وقت بذار، صدها ساعت جلو میافتی
۱/ عوض کردن شغل خیلی راحتتر از افزایش دادن حقوقه، مسخرهست ولی واقعیه
۲/ مصاحبه رفتن یکی از مهمترین مهارتهای شغلیه، تاثیر مستقیم روی درآمد و موقعیت شغلی
۳/ بیرون از محل کارت، چیزی بساز، پروژه شخصی یا کار جانبی، باعث رشد مداومته
۴/ همیشه "بهترین" راهحل، کاربردیترین نیست، وگرنه کسی با JavaScript کار نمیکرد :)
۵/ یادداشتبرداری روزانه از کارت داشته باش، آخر سال خودتم نمیدونی چی کار کردی
۶/ هیچوقت کاری نکن کسی حس نادونی بگیره، یه روز نوبت خودته که اشتباه کنی
۷/ به تیمهای فروش، مارکتینگ و حقوقی احترام بذار، خیلی وقتها اونا موفقیت محصول رو تعیین میکنن
۸/ باهوشِ ازخودراضی نباش، از این تیپ آدمها پره، کسی دنبالشون نیست
۹/ برای حل مسائل سخت، از پشت لپتاپ بلند شو، راهحل توی پیادهروی، حمام یا یه خواب کوتاه پیداش میشه
@TryCodeBox
#تجربه #برنامه_نویسی
۰/ دیباگر رو بلد شو، درست و حسابی، چند ساعت وقت بذار، صدها ساعت جلو میافتی
۱/ عوض کردن شغل خیلی راحتتر از افزایش دادن حقوقه، مسخرهست ولی واقعیه
۲/ مصاحبه رفتن یکی از مهمترین مهارتهای شغلیه، تاثیر مستقیم روی درآمد و موقعیت شغلی
۳/ بیرون از محل کارت، چیزی بساز، پروژه شخصی یا کار جانبی، باعث رشد مداومته
۴/ همیشه "بهترین" راهحل، کاربردیترین نیست، وگرنه کسی با JavaScript کار نمیکرد :)
۵/ یادداشتبرداری روزانه از کارت داشته باش، آخر سال خودتم نمیدونی چی کار کردی
۶/ هیچوقت کاری نکن کسی حس نادونی بگیره، یه روز نوبت خودته که اشتباه کنی
۷/ به تیمهای فروش، مارکتینگ و حقوقی احترام بذار، خیلی وقتها اونا موفقیت محصول رو تعیین میکنن
۸/ باهوشِ ازخودراضی نباش، از این تیپ آدمها پره، کسی دنبالشون نیست
۹/ برای حل مسائل سخت، از پشت لپتاپ بلند شو، راهحل توی پیادهروی، حمام یا یه خواب کوتاه پیداش میشه
@TryCodeBox
#تجربه #برنامه_نویسی
👍7
✔️ سورس کد مرورگر فایرفاکس موزیلا به صورت رسمی روی گیتهاب اومد.
https://github.com/mozilla-firefox/firefox
@TryCodeBox
#سورس_کد #فایرفاکس
https://github.com/mozilla-firefox/firefox
@TryCodeBox
#سورس_کد #فایرفاکس
🔥4
اینجا یه لیست خیلی باحال از برنامهنویسها رو دارین که سایتهای شخصی و رزومهشون رو توی گیتهاب به اشتراک گذاشتن. میتونید از طراحیها، سبک نوشتن و نحوه ارائه مهارتهایشون الهام بگیرین. البته اگه الان سرتون شلوغه، بهتره بعداً سر بزنین؛ چون انقدر جالبه که چند ساعت هم میتونه وقتتونو بگیره!
لینک:
https://github.com/emmabostian/developer-portfolios
@TryCodeBox
#برنامه_نویسی #رزومه
لینک:
https://github.com/emmabostian/developer-portfolios
@TryCodeBox
#برنامه_نویسی #رزومه
GitHub
GitHub - emmabostian/developer-portfolios: A list of developer portfolios for your inspiration
A list of developer portfolios for your inspiration - emmabostian/developer-portfolios
خروجی کد چه خواهد بود؟
def f():
setattr(f, "x", getattr(f, "x", 0) + 1)
f.f = f
return f
x = f()()().f.f.f().f.x
print(x)
✔️ کد شناسایی بانک از روی شماره کارت با پایتون!
اگه شماره کارت بانکی داری و میخوای بدونی این کارت مربوط به کدوم بانکه، فقط کافیه ۶ رقم اولش (BIN) رو بررسی کنی. با این کد پایتونی، بهراحتی میتونی بانک رو تشخیص بدی:
مناسب پروژههای پرداخت، فرمهای ورود اطلاعات یا تحلیل داده
@TryCodeBox
#پایتون
اگه شماره کارت بانکی داری و میخوای بدونی این کارت مربوط به کدوم بانکه، فقط کافیه ۶ رقم اولش (BIN) رو بررسی کنی. با این کد پایتونی، بهراحتی میتونی بانک رو تشخیص بدی:
مناسب پروژههای پرداخت، فرمهای ورود اطلاعات یا تحلیل داده
banks = {
'603799': 'بانک ملی',
'603770': 'بانک صادرات',
'603769': 'بانک کشاورزی',
'589210': 'بانک سپه',
'610433': 'بانک ملت',
'628023': 'بانک مسکن',
'627648': 'بانک توسعه صادرات',
'627961': 'بانک صنعت و معدن',
'627353': 'بانک تجارت',
'589463': 'بانک رفاه',
'639347': 'بانک پاسارگاد',
'627412': 'بانک اقتصاد نوین',
'622106': 'بانک پارسیان',
'627488': 'بانک کارآفرین',
'621986': 'بانک سامان',
'639346': 'بانک سینا',
'639607': 'بانک سرمایه',
'502806': 'بانک شهر',
'502938': 'بانک دی',
'627381': 'بانک انصار',
'639599': 'بانک قوامین',
}
def detect_bank(card_number: str) -> str:
# Check if input is valid
if len(card_number) < 6 or not card_number.isdigit():
return "Invalid card number. Please enter at least 6 digits."
# Extract first 6 digits (BIN)
bin_code = card_number[:6]
# Lookup bank name from dictionary
bank_name = banks.get(bin_code, "Unknown Bank")
return f"Detected Bank: {bank_name}"
if __name__ == "__main__":
print("=== Bank Detector ===")
card_input = input("Enter your card number: ")
result = detect_bank(card_input)
print(result)@TryCodeBox
#پایتون
👍8
✔️ ابزاری قدرتمند در Git برای حذف فایل از تاریخچه مخزن
گاهی پیش میآید که نیاز دارید یک فایل خاص (مانند کلیدهای API یا اطلاعات حساس) را از کل تاریخچهی یک مخزن Git حذف کنید، بدون آنکه کل ریپو را پاک یا بازنویسی کامل کنید. در این شرایط، دستور زیر میتواند بسیار مفید باشد:
با اجرای این دستور، فایل مشخصشده (در اینجا filename.txt) از تمامی کامیتهای گذشته حذف میشود؛ فرآیندی بسیار سریعتر و تمیزتر نسبت به ابزار قدیمیتر filter-branch.
این روش، راهکاری مناسب برای پاکسازی مواردی است که نباید هیچ اثری از آنها در مخزن باقی بماند.
اگر تاکنون از git filter-repo استفاده نکردهاید، توصیه میشود آن را بررسی و آزمایش کنید. Git ابزارهای قدرتمند و پنهان زیادی در اختیار توسعهدهندگان قرار میدهد.
@TryCodeBox
#Git
گاهی پیش میآید که نیاز دارید یک فایل خاص (مانند کلیدهای API یا اطلاعات حساس) را از کل تاریخچهی یک مخزن Git حذف کنید، بدون آنکه کل ریپو را پاک یا بازنویسی کامل کنید. در این شرایط، دستور زیر میتواند بسیار مفید باشد:
git filter-repo --path filename.txt --invert-paths
با اجرای این دستور، فایل مشخصشده (در اینجا filename.txt) از تمامی کامیتهای گذشته حذف میشود؛ فرآیندی بسیار سریعتر و تمیزتر نسبت به ابزار قدیمیتر filter-branch.
این روش، راهکاری مناسب برای پاکسازی مواردی است که نباید هیچ اثری از آنها در مخزن باقی بماند.
اگر تاکنون از git filter-repo استفاده نکردهاید، توصیه میشود آن را بررسی و آزمایش کنید. Git ابزارهای قدرتمند و پنهان زیادی در اختیار توسعهدهندگان قرار میدهد.
@TryCodeBox
#Git
زیر کاپوت گیت چه خبره؟
اسلاید های یک ارائه خوب ولی قدیمی از جزییات کارکرد گیت
https://github.com/techgaun/git-internals/blob/master/README.md
این اسلایدها هم هست که جذاب تر و طولانی تره ولی به نظرم بالایی مختصر مفید تر بود
https://www.slideshare.net/slideshow/git-internals-187357386/187357386
@TryCodeBox
#Git
اسلاید های یک ارائه خوب ولی قدیمی از جزییات کارکرد گیت
https://github.com/techgaun/git-internals/blob/master/README.md
این اسلایدها هم هست که جذاب تر و طولانی تره ولی به نظرم بالایی مختصر مفید تر بود
https://www.slideshare.net/slideshow/git-internals-187357386/187357386
@TryCodeBox
#Git
GitHub
git-internals/README.md at master · techgaun/git-internals
An overview of git internals. Contribute to techgaun/git-internals development by creating an account on GitHub.
✔️ زندگی یک برنامه نویس!
بعضی روزها زندگی، شبیه یه متغیر توی رم میمونه.
بودنش وابستهست به این که برنامهات هنوز اجرا بشه یا نه.
همین که یه بار restart شدی، همهچی پاک میشه...
همهی اون چیزایی که فکر میکردی مهمن،
همهی حسها، رویاها، خاطرهها —
میپرن، چون فقط توی RAM بودن.
اگه چیزی رو بخوای نگهداری،
باید بریزش توی یه پایگاه داده،
یه جایی امن، یه جایی موندگار.
ولی زندگی هیچوقت بهت commit نمیده.
هر چی هم ذخیره کنی، شاید یه روز rollback شه.
و ما،
برنامهنویسهایی که سعی میکنیم
توی یه سیستم بدون پایداری،
یه زندگی پایدار بسازیم...
@TryCodeBox
بعضی روزها زندگی، شبیه یه متغیر توی رم میمونه.
بودنش وابستهست به این که برنامهات هنوز اجرا بشه یا نه.
همین که یه بار restart شدی، همهچی پاک میشه...
همهی اون چیزایی که فکر میکردی مهمن،
همهی حسها، رویاها، خاطرهها —
میپرن، چون فقط توی RAM بودن.
اگه چیزی رو بخوای نگهداری،
باید بریزش توی یه پایگاه داده،
یه جایی امن، یه جایی موندگار.
ولی زندگی هیچوقت بهت commit نمیده.
هر چی هم ذخیره کنی، شاید یه روز rollback شه.
و ما،
برنامهنویسهایی که سعی میکنیم
توی یه سیستم بدون پایداری،
یه زندگی پایدار بسازیم...
@TryCodeBox
Try Code Box
✔️ زندگی یک برنامه نویس! بعضی روزها زندگی، شبیه یه متغیر توی رم میمونه. بودنش وابستهست به این که برنامهات هنوز اجرا بشه یا نه. همین که یه بار restart شدی، همهچی پاک میشه... همهی اون چیزایی که فکر میکردی مهمن، همهی حسها، رویاها، خاطرهها — میپرن،…
This media is not supported in your browser
VIEW IN TELEGRAM
Try Code Box
✔️ چرا logging بهتر از print است؟ @TryCodeBox #پایتون
در برنامهنویسی، بسیاری از افراد برای بررسی اجرای کد از print() استفاده میکنند، اما logging قابلیتهای بیشتری دارد که آن را به گزینهای حرفهایتر تبدیل میکند.
تفاوت print و logging در عمل
در روش print، فقط پیامها در کنسول نمایش داده میشوند و هیچ کنترلی روی آنها نداریم:
مشکل این روش این است که اگر برنامه بزرگی داشته باشیم، کنترل پیامهای print دشوار میشود و امکان ذخیره یا فیلتر کردن پیامها وجود ندارد.
در روش logging، پیامها قابل تنظیم، دستهبندی و ذخیره در فایل هستند:
مزایای logging در این مثال:
+ امکان تعیین سطح پیامها (INFO، ERROR و …)
+ امکان ذخیره پیامها در فایل برای بررسیهای بعدی
+ قابلیت تنظیم نمایش پیامها بر اساس محیط توسعه یا تولید
درنتیجه اگر میخواهید پیامها را فقط موقتاً ببینید، print() گزینه مناسبی است. اما برای پروژههای حرفهای، logging راهکار بهتری برای مدیریت و تحلیل لاگها خواهد بود.
@TryCodeBox
#پایتون
تفاوت print و logging در عمل
در روش print، فقط پیامها در کنسول نمایش داده میشوند و هیچ کنترلی روی آنها نداریم:
def divide(a, b):
if b == 0:
print("Error: Division by zero!")
return None
print(f"Result: {a / b}")
return a / b
divide(10, 2) # خروجی: Result: 5.0
divide(5, 0) # خروجی: Error: Division by zero!
مشکل این روش این است که اگر برنامه بزرگی داشته باشیم، کنترل پیامهای print دشوار میشود و امکان ذخیره یا فیلتر کردن پیامها وجود ندارد.
در روش logging، پیامها قابل تنظیم، دستهبندی و ذخیره در فایل هستند:
import logging
logging.basicConfig(level=logging.INFO, format="%(levelname)s: %(message)s")
def divide(a, b):
if b == 0:
logging.error("Division by zero!")
return None
result = a / b
logging.info(f"Result: {result}")
return result
divide(10, 2) # خروجی: INFO: Result: 5.0
divide(5, 0) # خروجی: ERROR: Division by zero!
مزایای logging در این مثال:
+ امکان تعیین سطح پیامها (INFO، ERROR و …)
+ امکان ذخیره پیامها در فایل برای بررسیهای بعدی
+ قابلیت تنظیم نمایش پیامها بر اساس محیط توسعه یا تولید
درنتیجه اگر میخواهید پیامها را فقط موقتاً ببینید، print() گزینه مناسبی است. اما برای پروژههای حرفهای، logging راهکار بهتری برای مدیریت و تحلیل لاگها خواهد بود.
@TryCodeBox
#پایتون
👍3
Top 100 questions Google Data Science Interview.pdf
16.7 MB
💯 سوال برتر مصاحبه علوم داده گوگل 🔎
🌟 راهنمای آمادگی ضروری برای علاقهمندان و کارجویان حوزه دیتا
🔸 گوگل به خاطر فرآیند مصاحبه دقیق علوم داده خود که معمولاً از یک قالب ترکیبی پیروی میکند، شناخته شده است. از داوطلبان انتظار میرود مهارتهای برنامهنویسی قوی، دانش قوی در آمار و یادگیری ماشین و توانایی بالایی در رویکرد به مسائل از دیدگاه محصولمحور را نشان دهند.
🌐 برای موفقیت، باید در چندین حوزه مهم مهارت داشت: آمار و احتمال، برنامهنویسی SQL و پایتون، درک محصول و تجزیه و تحلیل مبتنی بر مطالعه موردی.
🟠 این فهرست گزینششده شامل بیش از ۱۰۰ سوال رایج و مهم در مصاحبههای علوم داده گوگل است. این فهرست به عنوان یک منبع جامع به داوطلبان کمک میکند تا به طور مؤثر و با اطمینان برای چالش پیش رو آماده شوند.
@TryCodeBox
🌟 راهنمای آمادگی ضروری برای علاقهمندان و کارجویان حوزه دیتا
🔸 گوگل به خاطر فرآیند مصاحبه دقیق علوم داده خود که معمولاً از یک قالب ترکیبی پیروی میکند، شناخته شده است. از داوطلبان انتظار میرود مهارتهای برنامهنویسی قوی، دانش قوی در آمار و یادگیری ماشین و توانایی بالایی در رویکرد به مسائل از دیدگاه محصولمحور را نشان دهند.
🌐 برای موفقیت، باید در چندین حوزه مهم مهارت داشت: آمار و احتمال، برنامهنویسی SQL و پایتون، درک محصول و تجزیه و تحلیل مبتنی بر مطالعه موردی.
🟠 این فهرست گزینششده شامل بیش از ۱۰۰ سوال رایج و مهم در مصاحبههای علوم داده گوگل است. این فهرست به عنوان یک منبع جامع به داوطلبان کمک میکند تا به طور مؤثر و با اطمینان برای چالش پیش رو آماده شوند.
@TryCodeBox
👍3