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 Geek Alerts
This media is not supported in your browser
VIEW IN TELEGRAM
یه نسخه از Gemini داره به تقویم گوگل اضافه میشه، الان به صورت عادی توی خود Gemini اگه @calendar رو منشن کنید میتونید توی تقویم گوگل رویداد اضافه یا حذف کنید.

ولی حالا خود تقویم گوگل یه دستیار AI داره و از اونجایی که Gemini رایگان هست پس میشه انتظار اینو داشت که این دستیار هم رایگان ارائه بشه. فعلا در دسترس همه نیست ولی توی کار کردن با تقویم خیلی کارتون رو راحت‌تر میکنه.

🔗 techcrunch
🤓 @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from LearnPOV | لرن پی او وی (Mohammad hossein)
روز جهانی زن رو به همه خانم‌های برنامه نویس و زنان کشورمون تبریک میگم ❤️

شاید براتون جالب باشه که بدونید اولین برنامه‌نویس دنیا یه خانم بوده !

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

🫶 @CoolyCode
Forwarded from Gopher Academy
🔵 عنوان مقاله
Calling Rust from 'Cursed' Go

🟢 خلاصه مقاله:
مکانیزم Cgo در زبان برنامه‌نویسی Go برای فراخوانی توابع خارجی/بیگانه وجود دارد اما عملکرد آن اغلب نگرانی‌هایی را ایجاد می‌کند. حالا purego، روشی در مرحله بتا وجود دارد که امکان انجام چنین فراخوانی‌هایی را بدون استفاده از Cgo فراهم می‌آورد.

(Note: Cgo is a tool provided by the Go programming language to allow Go code to interact with C libraries by using import "C". This enables Go programs to call C code and link with C libraries.)

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


👑 @gopher_academy
Forwarded from Singular Thinker
تلاشی برای فهم ریاضی و بقیه چیزا

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

من تو این چند سال اخیر تو این کانال و جاهای دیگه به شکل‌های مختلفی سعی کردم که ریاضی رو مشق کنم. در ادامه، بخشی‌ از تلاش‌هامو میگم شاید یه جرقه‌ای تو ذهن شما هم بزنه و یکیشو بخواید امتحان بکنید و در آخر خبر اصلی رو میگم.📣⭕️

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

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

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

چند وقت پیش، بعد دو سال تو آزمایشگاه بحث یه پروژه info theory شد و یکی یه سوالی داشت شروع کردم به توضیح دادن براش که شهودی داری که چرا data processing inequality جهتش این سمتیه دیگه و اون جا بود که اون شهود دو سال پیش‌ام رو براش توضیح دادم و گفت چههه جالب! چرا کسی تا حالا این طوری نگفته بود بهم. جالب‌تر ولی این بود که یادم مونده بود و بعد که دیگه پروژه جدی‌تر شد رفتم و فیلمای جلسات رو مرور کردم و همه چیزها یادم اومد. راستشو بخواید حس خوبی داشت و رفتم تو فکر.

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

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

#note
@SingularThinker
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Singular Thinker
📣⭕️خلاصه این طوری شد که اولین ویدئوی کانال یوتیوب رو گذاشتم.

خواستید اونجارو هم سابسکرایب داشته باشید و اگه از ویدئو هم خوشتون اومد و حس کردید به درد دوستان میخوره بفرستید برای بقیه هم. ممنونم.

https://youtu.be/k6hoD45y38M

#video
@SingularThinker
Please open Telegram to view this post
VIEW IN TELEGRAM
مطلب جالبی درباره‌ی یه چت بات باستانی! مربوط به دهه ۶۰ میلادی با ۴۲۰ خط کد!
برای خوندن کاملش باید عضو بشید ولی کل داستان توی سایتهای دیگه هم هست. سورس سالها گم شده بوده و جدیدا پیدا شده و به سی++ تبدیل شده:

https://github.com/anthay/ELIZA

https://newscientist.com/article/mg26535330-100-the-critical-computer-systems-still-relying-on-decades-old-code/

@DevTwitter | <Moegan Shoster/>
رشته پست های حل معضل نصب فونت در لینوکس

🔥فونت های خودتان را در پوشه .font در home کپی کنید تمام

ببخشید قرار بود لینوکس سخت و پیچیده باشه به درد کاربر عادی نخوره که نشد 😏
تا آموزشی دیگر به درود
This media is not supported in your browser
VIEW IN TELEGRAM
میدونستین که توی گیت هاب، Github Models رو معرفی کردن که توی اون شما به مجموعه ای از LLMها دسترسی دارین؟

استفاده ازش رایگانه تا شما بتونید تصمیم بگیرید چه مدلی برای کارتون بهتره

یه زمین بازی داره و هم اینکه کدش رو در زبان های مختلف بتون میده...

https://github.com/marketplace/models

@DevTwitter | <Sam92/>
Forwarded from یه شعر (Poem Bot)
سعدی | دیوان اشعار | رباعیات | رباعی شمارهٔ ۵۰

مشنو که مرا از تو صبوری باشد
یا طاقت دوستی و دوری باشد
لیکن چه کنم گر نکنم صبر و شکیب
خرسندی عاشقان ضروری باشد

#سعدی | گنجور
📍@iipoem
یک بزرگواری تونسته بیاد سیستم پرامپت v0 و v0 Model رو پیدا کنه حالا گذاشته توی گیت هاب

بعد گفته به صورت دیفالت این مدل از موارد معمولی از GPT-4o استفاده میکنه و برای Reasoning از Deepseek و درآینده برای فیچر اینترنت سرچ Perplexity

https://github.com/x1xhlol/v0-system-prompts-models-and-tools

@DevTwitter | <Reza"/>
Forwarded from Geek Alerts
همچنین احتمالا گوگل مدل جدیدی رو به اسم Personalization برپایه جمنای ۲ عرضه کنه که مستقیماً به تاریخچه جستجوی شما متصله و اینطوری سبک و سیاق شما رو داره و می‌تونه بهتون پاسخ‌های بهتری بده.

🔗 androidauthority
🤓 hadi @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Geek Alerts
اگه با NotebookLM کار کرده باشید میدونید که یه سری منابع بهش میدید، مثل PDF یا متن و ... که مثلا میتونه شامل کلی کتاب یا مقاله باشه بعد بر اساس اون‌ها ازش سوال میشه کرد.

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

🔗 testingcatalog
🤓 @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Geek Alerts
لری پیج، همون موسس گوگل، یه شرکت جدید به اسم Dynatomics ساخته که هدفش استفاده از AI برای بهینه‌سازی تولید هست، خیلی در موردش توضیح ندادن ولی احتمالا یه رابط میخوان بسازن برای بازو‌های رباتیک که بشه خط تولید رو خیلی‌سریع‌تر اجرا کرد، مثلا با چند خط کد بشه یه کارخونه کامل رو به کمک بازو‌های رباتیک و AI راه‌اندازی کرد.

فعلا چراغ خاموش دارن جلو میرن، رهبرشون کریس اندرسون مدیر ارشد سابق تو Kittyhawk هست.

🔗 techcrunch
🤓 @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
در مورد این که چه مدلی خوبه که از برنچ‌های گیت استفاده کنیم، ایده‌های مختلفی مطرح می‌شه.
یکی از بهترین‌هاش در این دوره زمونه، trunk based developmentئه. (مدلهای دیگه مثل git flow هم وجود داره)

در مورد trunk based اینجا می‌تونید اطلاعات خوبی کسب کنید.
https://trunkbaseddevelopment.com/
خب خب خب WebSocket در Fastapi 🌀

امروز می‌خوام درباره‌ی یه موضوع باحال و کاربردی تو دنیای وب حرف بزنم: پیاده‌سازی WebSocket در FastAPI اگه دنبال ساخت اپلیکیشن‌های realtime مثل چت، داشبوردهای زنده یا بازی‌های آنلاین هستین، این پست براتون خیلی مفیده. پس با من همراه باشین تا با هم یاد بگیریم WebSocket چیه و چطور می‌تونیم تو FastAPI ازش استفاده کنیم.

🧠 WebSocket چیه و چرا مهمه؟
‏ WebSocket یه پروتکل ارتباطیه که به کلاینت (مثل مرورگر) و سرور اجازه می‌ده یه ارتباط دوطرفه و همیشگی داشته باشن. برعکس HTTP که فقط یه درخواست می‌فرستی و یه پاسخ می‌گیری، WebSocket این امکان رو می‌ده که هر دو طرف هر وقت خواستن پیام بفرستن و بگیرن، بدون اینکه نیاز باشه کلاینت مدام درخواست بفرسته. این برای اپلیکیشن‌هایی که نیاز به آپدیت‌های زنده دارن، مثل چت روم‌ها، اعلان‌های realtime یا بازی‌های آنلاین، عالیه

🚀 FastAPI و WebSocket

FastAPI یه فریم‌ورک وب مدرن و سریع برای پایتونه. یکی از قابلیت‌های باحالش هم پشتیبانی از WebSocketه. FastAPI از Starlette استفاده می‌کنه (یه فریم‌ورک ASGI سبک و قدرتمند)، و همین باعث می‌شه بتونیم به راحتی WebSocket رو پیاده‌سازی کنیم.

🛠 چطوری WebSocket رو تو FastAPI پیاده‌سازی کنیم؟

برای شروع، باید از کلاس WebSocket تو FastAPI استفاده کنیم. بیاین با یه مثال ساده شروع کنیم:
from fastapi import FastAPI, WebSocket

app = FastAPI()

@app.websocket("/ws")
async def websocket_endpoint(websocket: WebSocket):
await websocket.accept()
while True:
data = await websocket.receive_text()
await websocket.send_text(f"پیامت این بود: {data}")

تو این کد:
یه endpoint به اسم /ws ساختیم.

وقتی کلاینت بهش وصل می‌شه، سرور با accept() ارتباط رو قبول می‌کنه.

بعدش تو یه حلقه پیام‌های کلاینت رو می‌گیره و همونو برمی‌گردونه.


به این می‌گن یه Echo Server ساده هر چی کلاینت بفرسته، سرور عینشو برمی‌گردونه.

📡 یه مثال پیشرفته‌تر: چت روم با WebSocket

حالا بیاین یه چیز باحال‌تر بسازیم، مثلاً یه چت روم که چندتا کلاینت بتونن بهش وصل بشن و پیام‌هاشون رو به هم بفرستن. برای این کار، باید اتصال‌های فعال رو مدیریت کنیم. یه کلاس به اسم ConnectionManager می‌سازیم که لیست اتصال‌ها رو نگه داره و بتونیم بهشون پیام بفرستیم یا به همه broadcast کنیم.
from fastapi import FastAPI, WebSocket
from typing import List

app = FastAPI()

class ConnectionManager:
def __init__(self):
self.active_connections: List[WebSocket] = []

async def connect(self, websocket: WebSocket):
await websocket.accept()
self.active_connections.append(websocket)

def disconnect(self, websocket: WebSocket):
self.active_connections.remove(websocket)

async def send_personal_message(self, message: str, websocket: WebSocket):
await websocket.send_text(message)

async def broadcast(self, message: str):
for connection in self.active_connections:
await connection.send_text(message)

manager = ConnectionManager()

@app.websocket("/ws")
async def websocket_endpoint(websocket: WebSocket):
await manager.connect(websocket)
try:
while True:
data = await websocket.receive_text()
await manager.send_personal_message(f"تو نوشتی: {data}", websocket)
await manager.broadcast(f"یکی گفت: {data}")
except Exception as e:
print(f"خطا: {e}")
finally:
manager.disconnect(websocket)

اینجا چی داریم؟
‏ConnectionManager یه کلاسه که اتصال‌های فعال رو تو یه لیست نگه می‌داره.
وقتی کلاینت وصل می‌شه، به لیست اضافه می‌شه (connect) و وقتی قطع می‌شه، حذف می‌شه (disconnect).

‏send_personal_message به یه کلاینت خاص پیام می‌فرسته.

‏broadcast به همه کلاینت‌های وصل‌شده پیام رو می‌فرسته.

تو endpoint، پیام کلاینت رو می‌گیریم، به خودش یه جواب شخصی می‌دیم و به بقیه هم broadcast می‌کنیم.

جمع‌بندی

‏WebSocket تو FastAPI به شما این امکان رو می‌ده که اپلیکیشن‌های realtime و جذاب بسازین. از چت روم‌ها گرفته تا داشبوردهای زنده و بازی‌های آنلاین.

خب اینم از این امید وارم مفید بوده باشه :]

#️⃣  #fastapi #backend #python


🥷 CHANNEL | GROUP
This media is not supported in your browser
VIEW IN TELEGRAM
⚙️کاربرهای سیستم عامل های مختلف:

تجربه ی کار با سیستم عامل های دیگه مثل BSD رو داشتین؟🤔

#️⃣ #linux #bsd #meme


🐧 CHANNEL | GROUP
This media is not supported in your browser
VIEW IN TELEGRAM
اگر زبان اصلی که باهاش backend کار میکنید Typescript هست یک فریمورک خیلی خوب هست برای AI agent ها. اسمش Mastra ست و برای انواع اپلیکیشن ها میتونید ازش استفاده کنید از جمله:
workflows, agents, RAG, integrations and evals
خودم استفاده نکردم ولی تعریفش را زیاد شنیدم.
Github: https://github.com/mastra-ai/mastra

@DevTwitter | <Mehdi Allahyari/>
Forwarded from Linuxor ?
یکی از تاثیر گذار و خفن ترین زنانی که تابحال توی کامپیوتر دیدم باربرا لیسکوف بوده، لیسکوف برنده جایزه تورینگ و اصل معروف جانشینی لیسکوف L توی Solid بوده و خیلی از اصولی که الان داریم توی سیستم های توزیع شده و برنامه نویسی استفاده می‌کنیم سرچشمه مغز زن نابغه ای مثل لیسکوف بوده.

امروز 8 مارس روز جهانی زن رو به لیسکوف و زنانی که دنیا رو جای بهتری برای ما کردن تبریک می‌گم :)



@Linuxor
تاس سه بُعدی فقط با CSS

با این برنامه‌ی بسیار جالب که فقط با اسکریپت CSS بسیار هنرمندانه‌ تاس های واقعی را شبیه سازی کرده می توان بدون صدا تخته نرد هم بازی کرد!
برای چرخش تاس ها و انیمیشن نرم اونها هم از جاوااسکریپت استفاده شده.
کدنویسی با هوش مصنوعی DeepSeek

#javascript #css #html
dice3d.htm
9 KB
برنامه‌ی تاس سه بعدی
Forwarded from Codino School (ایمان غفوری)
This media is not supported in your browser
VIEW IN TELEGRAM
اینکه این همه ما روی این کانال تاکید داریم بر تست نویسی دلیل داره دوستان.
همین طوری دیمی نمیشه فرستاد روی پروداکشن

@codino