TGViewer
Channel Public Channel
Rust for Python developers

Rust for Python developers

@pyrust

Rust programming language for python developers

یک توسعه دهنده پایتون هستم که سعی میکنم rust یاد بگیرم.
تو این مسیر منابع و نظرات شخصی خودم رو با آیندگان هم به اشتراک میذارم

اگر به هوش مصنوعی و پایتون علاقه دارید به کانال :
@pytens
@pyhints
سر بزنید.
Subscribers
2.64K
Photos
34
Videos
1
Links
95
Recent Posts 14 shown
Post #222 886
Rust for Python developers روی کانال RandRng پیام دادند که چرا از Tauri دارم استفاده می‌کنم و نه گزینه‌های دیگه گفتم اینجا توضیح بدم. اول اینکه گزینه‌های دیگه که به جایگاه خوبی رسیده باشند این موارد هست : iced, Dioxus, gpui توی این موارد iced خیلی گزینه‌ی خوبی هست فانکشن‌های زیادی…
اما مهمترین موارد برای من روی Tauri این بود که؛ نمی‌دونستم توی فرانت چه چیزهایی رو نیاز دارم و نمی‌خواستم توی ورژن اول محدود باشم و با کتابخونه بجنگم.
درک خوبی از React برای توسعه نسخه‌های عادی دارم و مهمتر از همه کتابخونه Tauri به بلوغ خیلی خوبی برای این موارد رسیده
قابلیت توسعه برای همه‌ی سیستم‌عامل‌ها و البته Android, iOS رو هم داره (برای بعدها)

اولش که شروع کردم روزی ۲ ساعت بیشتر نمی‌خواستم وقت بذارم (۱-۲ روز در میون هم نمی‌تونستم روش کار کنم)
و الان به ۳-۴ ساعت رسیده؛ البته نه روزانه ولی خب.

تقریبا ۳ هفته‌اس که کد زدن رو شروع کردم و همین میزان برای رسیدنش به یک سطح خوب کافی بود که بنظرم اگر Tauri نبود این اتفاق نمیوفتاد

همه‌ی این‌ها باهم دلیلی شد که من این فریمورک رو انتخاب کنم (کامیونیتی خوبی هم داره)


پینوشت : این پروژه توسط نیروی انسانی نوشته و تست شده از LLM فقط درحد رفع برخی ایرادات Frontend استفاده شده (تخصص من React نیست)‌ اما کمتر از ۲۰٪ کد توسط AI نوشته شده.
  • 👍 15
  • ❤ 2
  • ❤‍🔥 1
Post #221 734
Rust for Python developers مدتی هست که دارم یک موزیک پلیر توی وقت‌های خالیم برای لینوکس می‌نویسم. روی Tauri v2 هست به این دلیل که همه‌ی کارهایی که با React می‌شه برای فرانت انجام داد رو بهم میده و البته با بکند قدرتمند Rust سرعت خیلی خوبی هم داره برای فیچر‌ها، توی یک مورد دوستان…
روی کانال RandRng پیام دادند که چرا از Tauri دارم استفاده می‌کنم و نه گزینه‌های دیگه گفتم اینجا توضیح بدم.
اول اینکه گزینه‌های دیگه که به جایگاه خوبی رسیده باشند این موارد هست :
iced, Dioxus, gpui

توی این موارد iced خیلی گزینه‌ی خوبی هست فانکشن‌های زیادی داره و خوبم عمل می‌کنه اما توی فرانت محدودیت UI داره هنوز و البته داکیومنت خیلی عالی‌‌ای برای فیچرهای جزئی نداره؛ مثلا tray panel روی لینوکس یا ...

مورد بعدی Dioxus هست؛ قبلا باهاش کار کرده بودم ولی تجربه عجیبی هست کد فرانت رو توی Rust نوشتن و اینکه من به نسخه موبایل هم نیازی نداشتم که مزیت اصلی dioxus هم هست (یک مقداری هم محدودیت UI داره)

راجب gpui هم بنظرم از همه موارد سخت‌تره کار کردن باهاش من تاحالا باهاش کار نکردم ولی ادیتور zed با این فریمورک نوشته شده و شخصا syntax اون رو دوس ندارم و البته کتابخونه به بلوغ رسیده‌ای نیست.

ادامه پست بعدی
  • 👍 8
  • ❤‍🔥 1
Post #214 728
مدتی هست که دارم یک موزیک پلیر توی وقت‌های خالیم برای لینوکس می‌نویسم.

روی Tauri v2 هست به این دلیل که همه‌ی کارهایی که با React می‌شه برای فرانت انجام داد رو بهم میده
و البته
با بکند قدرتمند Rust سرعت خیلی خوبی هم داره برای فیچر‌ها، توی یک مورد دوستان روی ۱۸,۰۰۰ فایل صوتی تستش کردند.

برای تست :
Files

پینوشت: به تصاویر توجه نکنید
Theme
اضافه شد واز نو کوبیدیم و ساختیم
  • ❤ 18
  • 👍 8
Post #213 782

Forwarded from RandRng

Cline Desktop (Beta)

منتشر شده؛ خوبی این مورد این هست که کاملا
open source
هست این بنظرم یکی از بزرگترین مزیت‌هاش هست (بخصوص برای من و افرادی مثل من که به شرکت‌های خصوصی با افتضاحات این چندسال اعتماد ندارند)

همچنان البته بنظرم لازم هست که یک مقدار ادیت شخصی روش بزنید اما یک نکته خیلی خوبی که داره این هست که با Tauri توسعه داده شده مثل music player ایی که من توسعه دادم (به ورژن ۱ برسه open source می‌کنم چون الان خیلی کثیف هست و فقط قراره کار کنه تو نسخه فعلی) :
https://t.me/per3onnel/654

درنهایت کار کردن با Tauri برای اون‌هایی که Rust رو بلد هستند اصلا کار سختی نیست و این پروژه هم تا جایی که من کدهای بکندش رو بررسی کردم خوب و تمیز نوشته شده که برای تمرین و یادگیری هم خیلی گزینه خوبی می‌تونه باشه.
توی Tauri یکی از فریمورک‌های معروف فرانت برای ساخت ui استفاده می‌شه و Rust بکند رو بعهده می‌گیره برای همین هم زیبایی رو داره و هم سرعت خیلی بالایی بهتون میده که خب توی این پروژه هم React برای اینکار استفاده شده.

این پروژه ارزش بررسی کردن سورس کد رو داره.
GitHub GitHub - cline/cline: Autonomous coding agent as an SDK, IDE extension, or CLI assistant. Autonomous coding agent as an SDK, IDE extension, or CLI assistant. - cline/cline
  • ❤ 6
Post #212 481

Forwarded from RandRng

می‌دونستید کل ارائه رو می‌تونید به comic book تبدیل کنید ؟
هر مدلی که Image generation داشته باشه (مثال بالا Gemini Notebook هست)

برای کسایی که حافظه تصویری قویتری دارند این روش خیلی جواب هست.

پینوشت:
سورس دیتای تصویر بخشی از ارائه خودم هست؛ قراره ۱۲-۱۶ ساعت آموزش Axum بدم.
بطوریکه از روز بعدش بکند پروژه جدید رو روی Axum شروع به کد زدن کنند و از اونجایی که از درست کردن powerpoint نفرت دارم؛ به ذهنم رسید این کار رو بکنم (چون ۹۰٪ کد هست) برای مواقعی که کد نیست و باید توضیح بدم این بهترین گزینه هست بنظرم.
  • 👍 15
Post #210 2.04K
طبق تجربه و بررسی شخصی چندین نفر از همکارا و نیروهام :

خیلی از کسانی که شروع به خوندن Rust می‌کنند توی ۲ مرحله ازین زبان برنامه‌نویسی خسته می‌شوند و ادامه نمی‌دند:

تقریبا ۲ هفته‌ای وقت گرفت تا بتونم دیتای لازم برای این بررسی رو جمع کنم؛ دسته اول که واضح هست و همه جا درموردش صحبت میشه
این دسته شامل افرادی هست که Borrowing, Ownership , ... رو متوجه نمی‌شوند یا درست درک نمی‌کنند و بعد از یک مدت از این زبان خسته می‌شوند.

اما دسته‌ی دوم خیلی برام جالب بود؛ برای درک بهتر من بصورت رندم چندنفر رو انتخاب کردم و باهم کدهاشون رو Review کردیم.
تمام افرادی که برای این بررسی انتخاب کردم همگی افراد با تجربه برنامه‌نویسی بودند (حداقل ۱ سال روی پروداکشن با یک زبان برنامه‌نویسی دیگری کار کرده بودند)

نکته جالب این بود که همگی کسایی که از Rust دست کشیده بودند داشتند استاندادرهای زبان‌های برنامه‌نویسی که روش کار کرده بودند رو توی Rust پیاده‌سازی می‌کردند.
مثلا:
از struct, trait دقیقا مثل class داخل پایتون استفاده می‌کردند و اونطوری می‌دیدنش و همین هم باعث می‌شد هر پروژه‌ای که روش کار می‌کردند بعد از مدتی توسعه کد و زیاد شدن خط کدهاشون به کلی ارورهای کامپایلری بخوره و به همین دلیل هم خارج می‌شدند.

اگر توی کانال @pyrust بوده باشید و پست‌های قدیمی رو یادتون باشه؛ من چندین بار گفتم که دوستانی که python رو در سطح متوسط هم اگر هستند به هیچ وجه کتاب
Gang of Four
رو نخونند چرا که این کتاب نه برای پایتون نوشته شده و نه برای این زمان و این دقیقا همون اتفاقی هست که توی Rust باعث میشه خیلی‌ها از Rust فراری بشوند چون با Design pattern اشتباه دارند کد می‌زنند.

بهترین راهکار چیه ؟
خوندن سورس کدهای دیگران؛ بخصوص افرادی که crate های اصلی رو توسعه می‌دند :
tokio, serde, axum, actix, sqlx, diesel, clap, ...

اینطوری به استانداردها عادت می‌کنید.

نکته‌ی بعدی هم که دیدم این بود که خیلی از آموزش‌ها هم این موارد رو یا آموزش نمی‌دند یا بدتر از اون مدرس به این نکات آشنا نیست و توی پروژه دوره از Design pattern های اشتباه استفاده می‌کنه و به همین دلیل دائم توی کد دوره مجبور به پیاده‌سازی تریک‌های عجیب و غریب هست.
  • 👍 25
  • ❤ 10
  • ❤‍🔥 3
Post #209 2.43K
Post #208 4.05K
ترکیب مورد علاقم برای یک ماه گذشته به راحتی

tch-rs
axum (0.8 or higher)
seaorm / sqlx


پیشنهاد می‌کنم.
  • 👍 14
  • 🔥 1
Post #207 2.26K

Forwarded from RandRng

LLM
قراره جای برنامه نویس‌هارو بگیره ؟
من که کدم رو + دستورالعمل ریفکتور دادم تا برام تمیز کنه و خروجی که توی تصویر هست

نصف باگ‌های مدل‌های LLM رو من درآوردم باید بهم هزینه پرداخت کنند واقعا

پینوشت:
تازه ۳۵ دقیقه هم طول کشید. خودم میزدم ۲۰ دقیقه‌ای تموم می‌شد.
  • 👍 22
Post #206 3.71K
GPU kernels in pure Rust (Cuda-Oxide)

شرکت nvidia این رپو رو منتشر کرده البته فعلا توی نسخه Alpha هست. اما همین هم حرکت بسیار خوبی به نغع rust هست و باعث میشه فریمورک‌های هوش مصنوعی بتونند راحت‌تر به سمت rust حرکت کنند؛ برای موارد موجود هم می‌تونه کار رو روی Cuda راحت‌تر کنه
GitHub GitHub - NVlabs/cuda-oxide: cuda-oxide is a Rust-to-CUDA compiler that lets you write (SIMT) GPU kernels in safe(ish), idiomatic… cuda-oxide is a Rust-to-CUDA compiler that lets you write (SIMT) GPU kernels in safe(ish), idiomatic Rust. It compiles standard Rust code directly to PTX — no DSLs, no foreign language bindings, ju...
  • ❤‍🔥 12
  • ❤ 1
Post #205 2.96K

Forwarded from RandRng

یادآوری کنم:

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

ویدئویی، متنی یا ...
  • ❤ 28
  • 👍 10
Post #204 2.75K

Forwarded from RandRng

یک راهکار این هست که داکر ایمیج رو از یک دوستی که قبلتر pull کرده بگیرید.

چون دیدم دوستان خودم این روش رو بلد نیستند گفتم اینجا هم بذارم:

سناریو اینطوری هست.
من روی registry شخصی خودم این image رو نداشتم و برای راه‌اندازی پروژه یکی از دوستان بهش نیاز داشتم، بعد از تماس با دوست دیگری متوجه شدم اون‌ها هفته قبل موفق به pull کردن این ایمیج شدند و من اینطوری image رو برداشتم فرض کنیم مثلاً postgres:18 رو لازم داشتم

روی سروری که ایمیج رو داشتند (بله من از دوستانم دسترسی مستقیم به سرور میگیرم)

docker save postgres:18 | gzip > postgres_dockerimg.tar.gz

بعد این فایل رو با scp از سرور به سیستم خودم، و از سیستم خودم به سروری که ایمیج رو نداشت منتقل می‌کنم و این دستور رو روی اون سیستم میزنم :
docker load < postgres_dockerimg.tar.gz

و تمام حالا image رو روی این سرور دارم و می‌تونم به کارم ادامه بدم، اگر لازم شد می‌تونید با docker tag اسم و اطلاعات image رو تغییر بدید.


پینوشت :

یک توصیه امنیتی، اگر image رو از کسی یا جایی گرفتید که بهش اعتماد ندارید (۹۹.۹٪ بهتره اعتماد نداشته باشید)

اول این دستور رو وارد کنید:
docker image inspect --format='{{.Id}}' postgres:18

خروجی این باید یک sha256 باشه.
وارد سایت hub.docker.com بشید (گفتم که سایت کند باز می‌شه ولی pull نمیده چون کلودفلیر بسته‌اس) ایمیج مدنظر رو و تگ درستش رو پیدا کنید وارد جزئیات که بشید
Index Digest
رو گذاشته باید با چیزی که توی ترمینال دیدید یکسان باشه.
اگر نبود image دستکاری شده و بهتره باهاش کانتینر اجرا نکنید.
  • 👍 9
  • ❤ 4
Older posts →

About this channel

How can I read @pyrust without a Telegram account?
TGViewer shows the public web preview Telegram publishes for Rust for Python developers: recent posts, photos, videos and the subscriber count, with no app, login or account.
How many subscribers does Rust for Python developers have?
Rust for Python developers (@pyrust) has 2.64K subscribers on Telegram, refreshed roughly every 30 minutes.
Does Rust for Python developers know I viewed it here?
No. Public channel previews carry no viewer identity, and TGViewer has no accounts or tracking of what you look up.
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →