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 Ninja Learn | نینجا لرن (Mohammad)
This media is not supported in your browser
VIEW IN TELEGRAM
فقط اونجایی که گفت برادر c رو زبان سطح بالا صدا زد 😂
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
This media is not supported in your browser
VIEW IN TELEGRAM
🔶 تسک پایر چند زبانه اضافه شد.

زبان فارسی و انگلیسی

https://github.com/Rayiumir/TaskPire

#mern

@TheRaymondDev
Forwarded from Ninja Learn | نینجا لرن (Mohammad)
میتونم به جرعت بگم یکی از اشخاصیه که ۲۰۰ سال دیگه هم هوش مصنوعی نمیتونه جاشو بگیره🗿
سورئال دیتابیس - Surreal DB
یک دیتابیس جدید است که از اومده جامع عمل کرده و انواع مختلف داده های sql و nosql رو توی خودش آورده:
SQL: Relational
و NoSQL:
Document
Graph
Time series
key value
و ...


- میتونی مدل های هوش مصنوعی رو توش ذخیره کنی.
- خودش REST API میده.
- میتونی in-memory هم ازش استفاده کنی، یا حتی درون مرورگر با indexed db.


نکته جالبش، شرکت هایی هستند که ازش حمایت کردند: Samsung, Nvidia, Walmart , ...

https://surrealdb.com/

@DevTwitter | <Sadeq/>
Forwarded from a pessimistic researcher (Kc)
بخش دانشجویی خانه ریاضیات اصفهان
گزارش_عملکرد_بخش_دانشجویی_خانه_ریاضیات_اصفهان.pdf
دم همتون گرم و حسابی خسته نباشید. بهترینا براتون اتفاق بیافته ❤️
وضعیت رادار آروان دوباره مدادرنگی شده و از #اختلال اینترنت حکایت داره. گزارش کاربران هم در برخی از استان‌ها حاکی از کندی و اختلال #اینترنت بوده.
اینکه کوسه به کابل‌های زیردریا حمله کرده، مربوط میشه به اتفاقات تقویم، به شنیده‌شدن زمزمه جنگ مرتبطه یا ...، هنوز مشخص نیست.

🔍 ircf.space
@ircfspace
Forwarded from a pessimistic researcher (Kc)
از اونجایی که دوباره کلی آدم ریخت تو کانال و کمی هم سخته که بشه سر درآورد ما اینجا چی میگیم، دعوتتون میکنم این پست معرفی و آشنایی رو بخونید :) ❤️
Forwarded from وین راه بی‌نهایت... (Milad Norouzi)
Media is too big
VIEW IN TELEGRAM
نام تو نماد زندگی خواهد شد

@VinRaheBinahayat
Forwarded from 🎄 یک برنامه نویس تنبل (Lazy 🌱)
🔶 برنامه اوبونتو برای جایگزین کردن GNU Core Utils با نسخه‌های باز نویسی ‌شده در راست (Rust) دقیقاً همان‌طور که پیش‌بینی می ‌شد، به خوبی پیش نمی رود.

برخی از نسخه ‌های نوشته ‌شده با راست تا ۱۷ برابر کندتر از C / C++ عمل می‌کنند. همچنین بعضی از نسخه‌های راست حتی در کار با فایل ‌های بزرگ به ‌طور کامل از کار می‌افتند.

#لینوکس

@TheRaymondDev
دلنوشته
این نوشته رو برای اون انگشت‌ شمار نفری می‌نویسم که تمام اختیارشون خلاصه میشه در همون دیسلایک و ایموجی تمسخری که روی پست بالا می‌زنن. خواستم بگم تا امروز همه‌ی ری‌اکشن‌ها باز بود، اما امروز شما برای اولین بار به چشم من اومدید، اون‌قدر که حتی باعث شدید این دلنوشته رو خطاب به شما منتشر کنم.
احساس کردم تنها لحظه‌ای که در زندگی نه‌چندان پربارتون حس مفید بودن کردید، همون ثانیه‌هایی بود که با غرور و خرسندی انگشتتون رو تکون دادید و روی چیزی که نماد رنج سال‌های سال مردم بی‌گناه بود، دیسلایک و ایموجی‌های تمسخرآمیز گذاشتید. شک ندارم اگر نام و نشانی داشتید، حتی دل زدن همون دیسلایک رو هم نداشتید.
و امروز، همون اندک اختیار رو هم ازتون گرفتم.
گرچه میدانم که همین پیام من رو هم به نشانه پیروزی قلمداد میکنید ولی اشکالی ندارد، این حس پیروزی پوچ رو هم من به وجود بی‌ارزشتون هدیه میدهم
Forwarded from Syntax | سینتکس (Sovren)
لاگ‌هات رو بریز توی تلگرام

تصور کن:

* یک ارور Critical در اپلیکیشن شما اتفاق میفته.
* بلافاصله، یک نوتیفیکیشن با اموجی ‼️ روی گوشیت میاد.

چرا تلگرام؟


1. فوری و همیشه در دسترس: کیه که تلگرام رو روی گوشیش نداشته باشه؟
2. فرمت‌بندی عالی: می‌تونید پیام‌ها رو با Markdown خوشگل کنید، کدها رو متمایز کنید و با اموجی، سطح خطا رو مشخص کنید.
3. رایگان و بی‌دردسر: ساختن ربات تلگرام رایگانه و API اون بسیار ساده و قدرتمنده.
4. گروهی و تیمی: می‌تونید لاگ‌ها رو تو یه گروه تلگرامی بفرستید تا کل تیم فنی در لحظه از وقایع باخبر بشن.

ما با استفاده از کتابخانه استاندارد logging پایتون، یک Handler شخصی‌سازی شده می‌نویسیم که هر لاگ رو به یک پیام تلگرامی تبدیل می‌کنه.

import logging
import requests
from database import settings # Assuming settings are read from here

# --- Settings ---
# Load settings like bot token and admin ID from a central settings module
config = settings.get_all()
LOG_LEVEL = logging.INFO # Only send INFO level and higher logs
BOT_TOKEN = config.get('control_bot', {}).get('token')
ADMIN_ID = config.get('telegram', {}).get('admin_ids', [None])[0]
CHAT_ID = settings.get('logging.telegram_chat_id', ADMIN_ID)


class TelegramLogHandler(logging.Handler):
"""
A custom logging handler that sends log records to a Telegram chat.
"""
def __init__(self, token, chat_id):
super().__init__()
self.token = token
self.chat_id = chat_id

def emit(self, record):
"""
Formats and sends the log record.
This method is called by the logging framework.
"""
if not self.token or not self.chat_id:
return # Do nothing if token or chat_id is not set

log_entry = self.format(record)

# Use a simple emoji prefix for different log levels
if record.levelno >= logging.CRITICAL:
prefix = "‼️ CRITICAL"
elif record.levelno >= logging.ERROR:
prefix = " ERROR"
elif record.levelno >= logging.WARNING:
prefix = "⚠️ WARNING"
else:
prefix = "ℹ️ INFO"

# Format the message with level, service name, and log content
message = f"{prefix}\n**Service:** `{record.name}`\n**Message:** `{log_entry}`"

url = f"https://api.telegram.org/bot{self.token}/sendMessage"
payload = {
'chat_id': self.chat_id,
'text': message,
'parse_mode': 'Markdown'
}
try:
requests.post(url, data=payload, timeout=5)
except requests.RequestException as e:
# If sending the log to Telegram fails, print the error to the console
print(f"Failed to send log to Telegram: {e}")


def setup_telegram_logging():
"""
Sets up the custom Telegram handler for the root logger.
Call this function once at the start of each service.
"""
if CHAT_ID and BOT_TOKEN:
# Get the root logger
logger = logging.getLogger()

# Create a handler and set its level
telegram_handler = TelegramLogHandler(BOT_TOKEN, CHAT_ID)
telegram_handler.setLevel(LOG_LEVEL)

# Create a formatter and add it to the handler
formatter = logging.Formatter('%(message)s')
telegram_handler.setFormatter(formatter)

# Add the handler to the root logger
logger.addHandler(telegram_handler)
logger.info("Telegram logging handler has been set up.")


چطور راه اندازی کنیم؟

1. ساخت ربات تلگرام: به BotFather در تلگرام پیام بدید، دستور /newbot رو بزنید و یک ربات بسازید.

3. فراخوانی در پروژه:
کافیست در ابتدای فایل اصلی اپلیکیشن خود (مثلاً main.py)، پکیج logging پایتون رو ایمپورت کنید و تابع setup_telegram_logging را فراخوانی کنید.

قدم بعدی چیه؟

* برای سرویس‌های مختلف، از CHAT_ID های متفاوت استفاده کنید.
* به پیام‌های خطا دکمه‌های شیشه‌ای (Inline Buttons) اضافه کنید؛ مثلاً دکمه "Restart Service" یا "View Full Traceback".
* سطح لاگ‌ها را بر اساس محیط (Development/Production) تغییر دهید.
* حواستون باشه تلگرام نباید تنها مکانی باشه که لاگ هاتون ذخیره میشه.

#telegram #logging

@Syntax_fa
Forwarded from Syntax | سینتکس (Sovren)
RAG (Retrieval-Augmented Generation)

تا به حال از خودتان پرسیده‌اید که وقتی از Gemini یا ChatGPT درباره نتیجه یک مسابقه ورزشی که همین دیشب برگزار شده سوال می‌کنید، چطور با جزئیات کامل و دقیق به شما پاسخ می‌دهد؟ مگر دانش این مدل‌ها محدود به اطلاعات تا سال خاصی نیست؟

بخش اول: مغز متفکر (مدل پایه زبان)

در قلب هر چت‌بات یک مدل زبانی بزرگ (LLM) قرار دارد. این مدل را تقریباً تمام کتاب‌ها، مقالات و وب‌سایت‌های منتشر شده تا یک تاریخ مشخص (مثلاً اوایل ۲۰۲۳) را خوانده و درک کرده است. او می‌تواند شعر بگوید، کد بنویسد، مقاله‌های پیچیده را خلاصه کند و درباره تاریخ فلسفه بحث کند.

اما یک مشکل وجود دارد: این مدل از آن تاریخ به بعد در یک کتابخانه بدون دسترسی به دنیای بیرون حبس بوده است. او از اتفاقات جدید، اخبار روز یا نتایج مسابقات ورزشی اخیر هیچ اطلاعی ندارد. این "مغز" دانش عمومی گسترده‌ای دارد، اما به‌روز نیست.

بخش دوم: حافظه کوتاه‌مدت (مدیریت گفتگو)

وقتی شما با چت‌بات صحبت می‌کنید، او حرف‌های چند دقیقه پیش شما را به خاطر می‌آورد. این همان چیزی است که به گفتگو حس یک مکالمه واقعی را می‌دهد. رابط کاربری به صورت هوشمند خلاصه‌ای از مکالمه اخیر را مدیریت می‌کند تا زمینه بحث از دست نرود. این حافظه کامل و بی‌نقص نیست، اما برای حفظ یک جریان منطقی در گفتگو کافی است.

بخش سوم: سیستم RAG

اینجا همان بخش شگفت‌انگیز ماجراست که مشکل به‌روز نبودن "مدل" ما را حل می‌کند. این سیستم که RAG (Retrieval-Augmented Generation) نام دارد، مانند یک امتحان کتاب-باز برای هوش مصنوعی عمل می‌کند.

وقتی شما سوالی می‌پرسید که نیاز به اطلاعات جدید دارد، این مراحل در کسری از ثانیه اتفاق می‌افتد:

1. تشخیص نیاز: سیستم ابتدا تشخیص می‌دهد که آیا "مدل" می‌تواند با دانش موجود خود پاسخ دهد یا سوال نیاز به اطلاعات به‌روز دارد.
2. جستجوی برق‌آسا (Retrieval): اگر نیاز به اطلاعات جدید باشد، سیستم در پشت صحنه یک جستجوی سریع در اینترنت (مثلاً گوگل) انجام می‌دهد. این کار مانند یک دستیار تحقیق است که در لحظه، مرتبط‌ترین مقالات و منابع را پیدا می‌کند.
3. آماده‌سازی "برگه تقلب" (Augmentation): سیستم نکات کلیدی و اطلاعات اصلی را از نتایج جستجو استخراج کرده و یک "برگه تقلب" یا خلاصه‌ای از اطلاعات ضروری را آماده می‌کند.
4. تولید پاسخ نهایی (Generation): در نهایت، سیستم سوال اصلی شما را به همراه این "برگه تقلب" به مدل پایه می‌دهد. حالا مدل با استفاده از دانش عمیق خود و با استناد به اطلاعات جدیدی که در اختیارش قرار گرفته، یک پاسخ کامل، دقیق و به‌روز تولید می‌کند.

به همین دلیل است که اغلب در انتهای پاسخ‌های Gemini یا ChatGPT، لینک به منابع را می‌بینید. این‌ها در واقع منابعی هستند که "دستیار تحقیق" در مرحله جستجو پیدا کرده و "مدل" برای پاسخ به شما از آن‌ها استفاده کرده است.

#RAG

@Syntax_fa
Forwarded from Frontend with Erfun👨🏻‍💻 (Erfun Ghodoosi)
رفقا کارآموزی به صورت دورکاری هست

و روی خود پروژه فوتبالی کار میکنید و پروژه الکی در کار نیست

پروژه‌ی‌‌ لارج اسکیل، مونو ریپو و مایکروسرویس و صد البته پر طرفدار ترین وبسایت اخبار فوتبال توی ایران

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

با یک فرهنگ سازمانی درجه یک طرف هستید. جایی که همه هوای هم رو دارن و کسی زیر آبی نمیزنه. و اعتماد حرف اول و آخر رو میزنه!

با متودولوژی اسکرام کار میکنیم و همه چیز طبق اصوله.
همینطور ایده ها جدید و خلاقیت و پیشرفت، همیشه بابتش قدر دانی خوبی انجام میشه.
Forwarded from Frontend with Erfun👨🏻‍💻 (Erfun Ghodoosi)
فقط لازمه که علاقه به یادگیری و پیشرفت داشته باشید و تجربه‌ی خاصی غیر از یکی دوتا پروژه که مهارتتون‌رو‌ باهاش نشون بدید لازم نیست.
استک فرانت اندتونم تکمیل باشه تا حدودی
Js, Ts, Nextjs, React, Tailwindcss
Forwarded from یه شعر (Poem Bot)
حافظ | رباعیات | رباعی شمارهٔ ۱۸

ایام شباب ست شراب اولاتر
با سبزخطان باده ناب اولاتر
عالم همه سر به سر رباطی ست خراب
در جای خراب هم خراب اولاتر

#حافظ | گنجور
📍@iipoem
Forwarded from Gopher Academy
🔵 عنوان مقاله
go-getter 1.8: Download Things from Various Sources with a URL

🟢 خلاصه مقاله:
go-getter 1.8 ابزاری است که با یک رشته شبیه URL، فایل‌ها را از منابع گوناگون دانلود می‌کند. فراتر از یک کلاینت ساده HTTP عمل می‌کند: می‌تواند URLهای GitHub را به‌صورت مخزن git دریافت کند، با مسیرهای محلی، S3، مخازن Mercurial و Bitbucket نیز کار می‌کند و همچنان از HTTP پشتیبانی می‌کند. مزیت اصلی آن یک رابط یکنواخت برای همه این پشتوانه‌هاست که اسکریپت‌ها و جریان‌های خودکار (CI/CD و ساخت) را ساده‌تر و قابل‌اعتمادتر می‌سازد.

🟣لینک مقاله:
https://golangweekly.com/link/174081/web


👑 @gopher_academy
Forwarded from Python Hints
4: It is appalling. Please, please don't do this.

source: Architecture Patterns with Python page 14