EverCode
228 subscribers
46 photos
3 videos
4 files
79 links
اینجا راجب کامپیوتر، نرم افزار، زبان‌ها و مطالب مرتبط با هم گپ میزنیم

سایت و بلاگ:
mazdakparnian.com

dev.to/purejoymind

هم توی سایت شخصیم و هم توی دِو بلاگ هام رو میزارم.
Download Telegram
هیچوقت فکر نمیکردم روزی بیاد که وبسایت داکیومنت دانلود کنم، تا الان دو سه تا دانلود کردم تا اگر نت قطع شد روی سیستمم هاست کنم و ازشون بتونم استفاده کنم.
برای مثال keycloak تو گیتهاب یه پروژه داره که فایل استاتیک بیلد شده‌ی پروژه‌ی داکیومنتش هست با حجم ۲.۵ گیگ و اگر دانلود کنین میتونین با پایتون با کامند زیر:

python -m http.server 8080

یا با npx با دستور زیر:
npx server index.html

روی لوکال هاست اجراش کنید.

@ever_code
2
متوجه شدم که minio به کل تعطیل شده و ایمیج های داکرش رو دیگه حتی maintain نمیکنن.
قبل از این اتفاق یکی از سرویس‌های خیلی خوب برای file storage همین minio بود که با Amazon S3 کار میکرد. بنظر میاد اخیرا از دنیای اوپن سورس فاصله گرفته، و تا مدتی میشد سورس رو گرفت و بیلد انجام داد و اورد روی داکر، اما اخیرا ریپازیتوری خودش رو هم آرشیو کرده.

در کمی گشت و گذار رسیدم به RustFS که یک جایگزین بشدت قوی هست و ۱۰۰ درصد S3 Compatible هست و توی دات نت میشه با پکیج Amazon.S3 باهاش کار کرد.
https://rustfs.com/

@ever_code
5
از open-spec و spec-kit خوشم نمیومد، حس میکنم توکن زیاد مصرف میکنه. اومدم مثلا ابتکار به خرج بدم خودم عملا کاراییش رو دستی تو Claude code تعریف کردم. بعد اینجوری بودم که خب همین شد که😭
حس میکنم به ورژن مدرن این برخوردم:

Take 3 days to automate a 20 mintue task

ولی در کل بد نشد تونستم روی پروژه کار کنم باهاش و rtk هم کمک کرد توکن کمتر مصرف کنه و حدودا هزار و خورده‌ای توکن کمتر مصرف کرد، اما مجبور شدم دات نت و همه چی رو روی WSL دوباره نصب کنم تا بیشترین، بهینگی رو بگیرم ازش. اما یجورایی با Spec-driven development حال میکنم.

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

@ever_code
4
EverCode
با همه‌ی زبان های general purpose میشه هرکاری کرد وگرنه اسمش اون نبود
در راستای این پست بیاین چیزهای جذاب‌تری بهتون بگم!
این دوتا Library با زبان‌های Rust و C برای Front-end هستند:
Rust: https://github.com/dioxuslabs/dioxus
C: https://github.com/nicbarker/clay

اونی که با Rust نوشته شده، کاملا Cross-Platform  هست. اونی که با C هست یه کار جالبی که میکنه اینه که روی هر تغییر بجای اینکه مثل  React مثلا بیاد پوزیشن ها رو دستی بر اساس State تغییر بده و Component ها رو تکون بده، میاد کاملا صفحه رو از اول رندر میکنه! اول که اینو فهمیدم اینجوری بودم که خب اینکه خیلی بهینه نیست؟! اما واقعیت اینه که 1. زبانمون C هست! 2. کلی از دردسرهای State Management رو نداره. 3.کاربر واقعا متوجه نمیشه! 4.خیلی سایت‌ها با فریمورک‌های غول‌تری با JS/TS زده شدن که خیلی بدتر از این حرفان!

بنظر خودم خیلی جذابه که با این زبان‌ها وارد دنیای Front-end شد ( مشخصه خیلی با JS میانه خوبی ندارم یا بگم؟ )
شاید نوع کد زدن توشون خیلی فرق داشته باشه و خیلی‎ها نخوان که توی production ازشون استفاده کنن. اما چندتا نکته مهم هست که باید توجه بشه بهشون.
اکثر افراد دارای سوگیری تجاری زبان هستند. یعنی بطور پیش فرض وقتی میشنون دات نت ذهنشون میره سمت Back-end یا js  میشه برای Front-end یا C و Rust میشن برای کارهای Low-level. اما واقعیت اینه که با اینکه میدونیم NodeJS هست، یا مثلا دات نت MAUI داره، یا الان دیدیم که Rust فریمورک Front-end داره و C سال‌هاست که QT داره و بشدت توی صنعت ازش استفاده میشه، باز سوگیری داریم.
ما یادمون میره General Purpose Programming Language یعنی چی؟ اما چیزی که خیلی‌ها روش تاکید دارند اینه که توسعه دهنده نباید برده‌ی ابزار باشه، ابزار صرفا یک مسیر برای رسیدن به هدفه، همینطوری که Ai یک ابزاره.

@ever_code
4
از Microservice به Outsourced Microservice و سرویس‌های Domain-Agnostic

وسط جنگ، شروع کردم دوره‌ی Event sourcing دیدن. دید خیلی بهتری بهش پیدا کردم و یاد گرفتم که چطوری بصورت استاندارد ازش استفاده کنم و پیاده سازیش کنم.
اما چیزی که برام واضح تر بود، این نبود که خب این رو الان کجا پیاده‌سازی کنم. این بود که الان که میدونم چیه، و چقدر پیچیدگی الکی میتونه استفاده کنه، کجاها سراغش نباید برم.
هرچی بیشتر یاد میگیرم به این مفهوم نزدیک‌تر میشم که ساده نگاهش کن، مگر اینکه برخلافش نیاز باشه.
یکی از چیز‌هایی که در سال‌های اخیر خیلی سر و صدا کرد مایکروسرویس بود. مایکروسرویس واقعی، هزینه مالی و انسانی زیادی میبره. با گذشت زمان، به یک دید متفاوت رسیدم. درسته که کل سیستم رو مایکروسرویس دیدن الکی گنده هست و باید بررسی عمیقی برای انجام دادن یا ندادنش صورت بگیره. اما خیلی از سرویس‌ها رو دیگه نیاز نیست خودمون توسعه بدیم. بهش که فکر میکردم کلمه‌ی Outsourced Microservices مناسب بنظر میاد.
وقتی میتونیم سرویس احراز هویت رو با keycloak، سرویس سرچ رو با ElasticSearch، سرویس مدیریت فایل رو با Minio و نرم افزارهای مشابهش راه بندازیم، دیگه خیلی منطقی نیست که خودمون توسعه بدیم. اینجوری با یک سرویس مربوط به بیزنسمون، و چندتا سرویس آماده میتونیم به سرعت به یک سیستم شبیه مایکروسرویس برسیم.

ایده‌ی اصلی اینجا اینه که از سرویس‌های Domain-Agnostic استفاده کنیم. یعنی سرویس‌هایی که ربط مستقیمی به Domain ما ندارن. صرفا به ما کمک میکنن که تمرکزمون روی Domain باشه.

راجب این تجربه توی بلاگ بیشتر نوشتم:

https://mazdakparnian.com/blogs/2026-04/simple-choices

@ever_code
🔥3
مقایسه‌ی زبان‌های برنامه‌نویسی همیشه یکی از کارهای مورد علاقه‌ی من بوده.
نه چون میفهمیم کدوم خوبه کدوم بده، چون اکثر چیز‌هایی که ما روزمره باهاش سر و کله میزنیم، قبل ازینکه در صنعت به کار گرفته بشن، در تئوری و دنیای آکادمیک مطرح شدن. برای من جذابیتش اینه که میبینم کدوم مباحث الهام بخش چه فیچرهایی در زبان‌های مطرح الان بوده‌ان.
برای مثال، مفهوم channel که در Golang, C#, Rust و زبان‌های مختلف حالت‌هایی ازش پیاده سازی شده، توسط Tony Hoare مطرح شد. ایشون مفهومی برای مدیریت پراسس‌های همزمان (Concurrent Processes) مطرح میکنن به نام زیر
Communicating sequential processes
که در زبان Go میشه گفت بعنوان First-class concept استفاده شده و بخشی از طراحی زبان هست. این دوستمون هم کمی داستان رو باز تر کرده:
https://t.me/hiradsajde/178
جالبه بدونین، همین آقای هور، کسی بوده که Null Reference رو در روزهای ابتدایی زبان‌ها در طراحی زبان تعریف کرده و کلی آدم رو بدبخت کرده.
خودش، در ارائه‌ای در سال 2009 با نام Null References: The Billion Dollar Mistake اینجوری ازش یاد میکنه:
I call it my billion-dollar mistake. At that time, I was designing the first comprehensive type system for references in an object-oriented language. My goal was to ensure that all use of references should be absolutely safe, with checking performed automatically by the compiler. But I couldn’t resist the temptation to put in a null reference, simply because it was so easy to implement. This has led to innumerable errors, vulnerabilities, and system crashes, which have probably caused a billion dollars of pain and damage in the last forty years.

در این ارائه ایشون میگه دلیلی که Null Reference ها رو داخل زبان تعریف کرده بود صرفا برای راحتی پیاده‌سازیش بود، اما این کارش میلیاردها دلار هزینه تراشیده!

برای همینه که هر از چندگاهی بنظرم بد نیست که زبان جدید یاد گرفت، برای اینکه یادمون نره که همه‌ی زبان‌ها صرفا ابزاری برای ارتباط با Cold, Hard Metal هستن!

@ever_code
👍4
امروز دسترسی به Claude بدون فیلتر برام قطع شد، برای شما هم همچین اتفاقی رخ داد؟ تا قبل از اون میتونستم بدون فیلتر بهش وصل شم.

@ever_code
حرکتی که این آقا با دامنه ویکی‌تجربه زده، تو دنیای وب بهش می‌گن Cybersquatting (غصب دامنه) و Brand Hijacking (جعل هویت برند) که این‌جا با Defamation (تخریب و افترا) هم قاطی شده. در واقع اومدن دامنه رو به هر روشی صاحب شدن تا بیانیه بنویسن و دیتابیس فیک بسازن. برای خوابوندن این مچ، بهترین کار اینه که مستندات و اسکرین‌شات‌ها رو به ایمیل ابیوزِ رجیسترار دامنه (`abuse@namesilo.com`) بفرستیم تا به جرم نقض صریح قوانینِ میزبانی (ToS)، خیلی سریع دامنه رو ساسپند یا قفل کنن.

حالا جالبیش اینجاست که اگه این حرکت رو تو یه کشور خارجی با قوانین سفت و سخت (مثل قانون ACPA آمریکا) انجام می‌دادن، کار به این راحتی‌ها تموم نمی‌شد. اون‌جا شاکی می‌تونست علاوه بر پس‌گرفتنِ فوری دامنه، یه پروندهٔ حقوقی سنگین برای آزار سایبری و ضربه به اعتبار تجاری باز کنه که جریمه‌های مالی وحشتناکی (تا ۱۰۰ هزار دلار برای هر دامنه) روی دست این هلدینگ و بنیان‌گذارش می‌ذاشت و حتی می‌تونست به قیمت سابقهٔ کیفری براشون تموم بشه.

@codehalics | کدهالیک
🔥1
Forwarded from Matin SenPai (᯽マティ️️ン先輩)
ویکی تجربه یکی از معدود گروه‌هایی بود که بدون هیچ وابستگی و فاند و رانتی، محیطی رو فراهم کرده بود که افراد نظر واقعیشون رو راجب شرکت‌های ایرانی بگن و نظر بدن.
سر همین خیلی از شرکت‌ها می‌گفتن که کامنت‌هایی که راجب ما گذاشتن رو پاک کن وگرنه شکایت می‌کنیم و فلانت می‌کنیم و... یا حتی می‌گفتن بهت پول میدیم، اما قبول نمی‌کرد.

و همینطور یکی از عواملی بودش که باعث شد آموزش‌های من به دست خیلیها برسن، چون همیشه مطالب رو share میکرد و با وجود هزینه‌های سرسام آور سرورهاش و شرایط سخت مالی، توی قطعی نت کنارمون بود.

و آخرین پست کانال تلگرامشون توی تاریخ ۲۷ مارچ(۹۰ روز پیش و اواسط جنگ) بود و همه نگران بودیم که نکنه اتفاقی واسه‌ی مالکش افتاده باشه یا دستگیر شده باشه.
و نتونسته دامنه https://tajrobe.wiki رو تمدید کنه. امروز دیدم که دامنه‌ی ویکی تجربه توسط ابرناک گرفته شده(احتمالا یکی از شرکت‌هایی که تهدیدش می‌کرد). و در عجبم از اینهمه بی‌شرفی، که میراث شخصی رو که مشخص نیست مرده یا زنده‌ست یا دستگیر شده یا... رو برداشته و اسم تمام اون پلتفرم رو گذاشته انتقام‌گیری.
امیدوارم که حال ویکی تجربه خوب باشه. دامنه و اینها کمترین اهمیت رو داره
💔5
خب یوزرهای ایرانی باید با Claude خداحافظی کنن...
از ۱۸ تیر، برای استفاده از کلود باید کارت شناسایی دولتی و سلفی زنده بدید!
چون ایران ساپورت نمی‌شه، پس حسابتون همون لحظه بسته می‌شه.
البته اگه با یه سرور ثابت وصل بشید شاید بتونید تا وقتی گیر نداده ازش استفاده کنید.

@DevTwitter | <Behrad Javed/>
💔4
رفقا داشتم مقاله‌ای درباره پدیده توکن‌مکسینگ یا همون سوزاندن دیوانه‌وار توکن‌های هوش مصنوعی می‌خوندم که خیلی به وضعیت الان تیم‌های فنی ما نزدیکه. تو این مقاله میگه شرکت‌ها به دو شکل کاملا متفاوت دارن پول پای این قضیه میدن. شکل درستش اینه که ابزارهایی مثل کلود کد رو میدن دست دولوپرها و تسک‌ها رو میندازن توی چرخه‌های خودکار. اینجا هرچقدر هم توکن بسوزه ارزش داره چون مستقیما داره سرعت و خروجی مهندس‌ها رو چند برابر میکنه و یه سرمایه‌گذاری کاملا سودآور روی نیروی انسانیه.

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

لینک مقاله
@codehalics | کدهالیک
🔥41
Forwarded from iCodeNext
سلام به همه.

قبلا تمام فایل های صوتی و پادکست هارو با Whisper تبدیل به متن میکردم. کیفیت خیلی خوبی هم داره مدل large v3 - turbo.

اما خوب فقط cli هست، بخاطر همین گشتم دیدم اپ تر تمیزی برای ویندوز نداره، بقیه هم پولی بودند و یا روی وب سایت و بازم بعد از مدتی پولی. این شد که کم کم شروع کردم به توسعه یه اینترفیس برای ویندوز و مک و لینوکس، و فایل های خودم رو تبدیل به متن کنم و مدیریت کنمش.

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

البته الان فقط Open AI Whisper رو ساپورت میکنه، اما بزودی WhisperX رو هم اضافه میکنم بهش، که قابلیت های خیلی بهتری داره.


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

استار هم که بدید دمتون گرمه.

❤️❤️❤️

https://github.com/mohammadKarimi/Whisper-Studio

اگرم فایل نصبی رو خواستید توی این مسیر تمامش هست.

https://github.com/mohammadKarimi/Whisper-Studio/releases
👍31
Forwarded from Matin SenPai (᯽マティ️️ン先輩)
چند روزه می‌بینم همه دارن در مورد whisper حرف میزنن. خواستم بگم یه ساله برای تبدیل گفتار به متن از Handy استفاده می‌کنم و واقعاً بی‌رقیبه.
کاملاً آفلاین با پشتیبانی دقیق از فارسی. حرف زدن با کامپیوترو خیلی ساده می‌کنه.
github.com/cjpais/handy

فقط کافیه شورتکات رو نگه‌ دارید، صحبت کنید و رها کنید تا براتون تایپ کنه.
اگر دنبال یه ابزار STT بی‌دردسر و رایگان برای لینوکس، مک یا ویندوز هستید، حتماً تستش کنید.

✍️ apt_hq
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
روز کاری تراز 🤌😂
@ever_code
👎1🤪1
امروز کلاود بار دیگر تصمیم گرفت که 403 بده :)
@ever_code
🤔1😨1
Forwarded from iCodeNext
Audio
🧶 ما داریم خروجی ماشینی رو متر میکنیم، نه فهم انسانی رو.


توی این محتوی صوتی سعی کردم این مطالب رو پوشش بدم.

🔸 بدهی درک مطلب (Comprehension Debt) چیست؟
🔸 تفاوت بدهی فنی و بدهی درک مطلب
🔸 چرا بدهی درک مطلب خطرناک‌تر است؟
🔸 داستان تیم دانشجویی و شکست پروژه
🔸 از واگذاری کدنویسی تا واگذاری تفکر
🔸 مطالعه Anthropic؛ آیا AI واقعاً بهره‌وری را افزایش می‌دهد؟
🔸 چرا مهندسان درک عمیق‌تری از سیستم ندارند؟
🔸 تله KPIها و معیارهای اشتباه سازمان‌ها
🔸 چرا مدیران متوجه این مشکل نمی‌شوند؟
🔸 هوش مصنوعی چگونه Code Review را سخت‌تر کرده است؟
🔸 چرا تست‌های خودکار کافی نیستند؟
🔸 محدودیت Specها و مستندسازی دقیق
🔸 امضای کدی که نمی‌فهمیم
🔸 مسئولیت مهندس نرم‌افزار در عصر AI

❤️ مشتی هستید، اگه دوست داشتید برای بقیه دوستان هم بفرستید.
اسم کانال هم گفتن بزارید ته پست ها.

@iCodeNext
👍2
قابلیت اضافه کردن جستجوی معنایی (Semantic Search) به وب سایتتون
یعنی به جای جستجوی دقیق کلمه "interدثا" معنی و مفهوم جمله را درک و متن‌های مرتبط با اون را پیدا کنه
یک مدل تعبیه‌سازی متن (Embedding Model) جدید Ternlight با اندازه‌ی (۷ مگابایت) کارش همینه
https://ternlight-demo.vercel.app

@DevTwitter | <MehrdadLinux/>
3
یک راهنمای جامع برای ایمن‌سازی سرور linux
این مخزن یک چک‌لیست عملی ارزشمند برای امن سازی سرور های لینوکسی است
https://github.com/imthenachoman/How-To-Secure-A-Linux-Server

@DevTwitter | <MehrdadLinux/>
👍531
یه پست طولانی راجب استفاده از هوش مصنوعی توی پروژه‌های واقعی داشتم مینوشتم که تلگرام بهم محدودیت طول متن داد. ازونجایی که هنوز بلاگ شخصیم فارسی نشده بنظرتون چیکار کنم؟
Anonymous Poll
50%
توی همین کانال چندتا پستش کن
8%
توی سایت ویرگول بزارش ( باید حساب راه بندازم )
33%
توی بلاگم بزارش انگلیسی اوکیه
8%
بجای متن، ویدیو بگیر بزار
0%
راه حل دیگه (توی کامنت‌ها بگین)
EverCode
یه پست طولانی راجب استفاده از هوش مصنوعی توی پروژه‌های واقعی داشتم مینوشتم که تلگرام بهم محدودیت طول متن داد. ازونجایی که هنوز بلاگ شخصیم فارسی نشده بنظرتون چیکار کنم؟
توی پست نحوه استفاده از ابزارهای جدید، مدیریت پروژه و استفاده از چند هوش مصنوعی رو بطور همزمان میخوام توضیح بدم. طولانیه و خیلی از سوالاتی که من برای خودم پیش اومد که چجوری از دنیا عقب نمونم رو سعی کردم جواب بدم توش. بدم نمیاد ویدیو بگیرم و مفصل توضیح بدم راستش. برای ویدیو، اگه دوست داشتین بگین که ترجیحتون آپارات یا یوتوب یا جفتش هست حتی.
3