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 
به‌روز رسانی جدید کبالت، ویژگی‌های جدید و قابل توجّهی رو از جمله امکان خودمیزبانی، به این سکّوی کارآمد، اضافه کرد.

#news #FLOSS
@amiria703_channel
Forwarded from Codino School (ایمان غفوری)
تجربه و نظرتون رو در مورد repository pattern در قسمت نظرات بنویسید.

چرا این چیزی که به عنوان repository pattern که معروف شده انقدر نچسب و بدقلق هست؟!
(شایدم به ما غلط آموزش دادند... 😯)

👇👇👇
Forwarded from Md Daily (Mahan)
چرا باید پروژتون رو منتشر کنید حتی اگه بد باشه؟

واقعاً در شروع کار مهم نیست که پروژه ها چقدر ساده، ناپخته یا «غیر حرفه‌ای» باشن. مهم اینکه تموم و منتشر بشن. حالا چرا؟ افراد زیادی هستن که وارد این حوزه میشن و شروع میکنن تویه یک چرخه ی بی پایان از دوره دیدن گیر کردن و در نهایت از اینکه خروجی ای نمی بینن از کارشون نا امید میشن. پس فقط شروع به ساختن کنید و بذارید بقیه کارتون رو ببینن. چیزی که مهمه اینه که در نهایت یه چیزی ساختید و این حس خوبی بهتون میده. درنهایت سریع تر یاد می‌گیری و کلی پروژه میزنی!

خودتو از نتیجه کار جدا کن.


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

بس کن یادگرفتن رو!


تو دیگه به اندازه کافی بلدی که بتونی پروژه های خفن بسازی. وقتی میگم "بس کن یادگرفتن رو" منظورم این نیست که دیگه یاد نگیری (چون همه ما همیشه در حال یادگیری هستیم)، منظورم اینه که:

ویدئو تو یوتیوب و حتی کتاب رو ببند،
حتما این پست رو هم تموم کن!
به جای این کارها چی کار کنی؟ کد ادیتورت رو باز کن و شروع کن به کد نویسی.

میگم "اول باید <مفهوم-خاص> رو بهتر یاد بگیرم تا بتونم چیزی بسازم."
یا "باید در مورد <موضوع-خاص> بیشتر بدونم."
یا "چطور میشه اگه <ویژگی-خاص> من طبق بهترین شیوه های فعلی نباشه؟"

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


کپی‌کاری اشکال نداره!


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

یه فیچر یه فیچر کارو جلو ببر


برنامه‌ریزی خوبه، اما اگه بخوای باهاش کارو ول کنی اصلا خوب نیست! برنامه‌ریزی یه جور خودتو گول زدنیه که میگی: «آهان، خب من که برنامه‌ریزی کردم، پس کارم تمومه!»
یه چیز دیگه هم هست، ممکنه وسط کار یه چیزی یادت بیاد که اصلا تو برنامه‌ت نبوده. پس زیاد خودتو درگیر برنامه‌ریزی نکن. یه فیچر رو درست کن، بعد بعدی رو. مثلا اگه پروژه ی جدید ساختی شروع کن به تعریف کردن ماژول هاش مثل:
-> auth
-> client
-> admin
-> landing-page
-> payment

اینجوری نه خسته می‌شی، نه گیج. هر فیچری که تموم می‌شه، حسابی کیف می‌کنی که یه قدم جلو رفتی. حتی اگه خیلی کوچیک باشه و از todo list هم غافل نشید.

ولش کن بابا، زود منشترش کن!


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


تمومش کن، حتی اگه گند باشه!

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

کلام آخر


حالا که دارم این پست رو تموم می‌کنم، می‌خوام یه نقل قول از Kurt Vonnegut بهتون بگم. اگه کدنویسی رو یه نوع هنر حساب کنیم، حرفای اون خیلی به کارمون میاد:

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


خب دوستان، حالا برید و حسابی کد بزنید :)

🆔 @MdDaily
آخرای ثانیه ۳۳ به ابروهای اون بنده خدا نگاه کنید، خودشم میدونست داره چه چرتی میگه 😂
This media is not supported in your browser
VIEW IN TELEGRAM
اینو دیدم دلم نیومد براتون نزارم :)))

+ پیامی ندارید برای این دوستان ؟

🚀 @coolycode
Forwarded from Python BackendHub (Mani)
یکی از بهترین بیلد بک اند هایی که میتونید تو پروژتون داشته باشین hatchling هست.
خیلی کارای خوب و زیادی انجام میده براتون که تو یک پست نمیگنجه بخوام کلشو توضیح بدم.

احتمالا از پکیج منیجر استفاده میکنید مثل uv یا poetry یا pdm یا ... . اگه استفاده نمیکنید, حتما بکنید 😅

برای استفاده از hatchling کافیه تو pyprojectتون اینو بذارین


[build-system]
requires = ["hatchling"]
build-backend = "hatchling.build"


بعد مثلا سورس کدتون داخل یک دایرکتوری به اسم src هست. که همه ایمپورت هاتون این شکله:
from src.models import User

اونوقت کافیه اینم اضافه کنید به پای پروجکت

[tool.hatch.build.targets.wheel]
packages = ["src"]



@PyBackendHub
جایگزین Llama3.1 فقط می‌تونه یک نسخه بهتر براساس همین معماری باشه :

arcee-ai/Llama-3.1-SuperNova-Lite

مدل ۸ میلیارد پارامتری هست، مدل ۷۰ میلیاردی فقط از طریق api در دسترس هست.
طبق ادعا از 405b, gpt4o, ... بهتر عمل می‌کنه؛ البته برای تسک‌های مربوط به
instruction-following

شخصاً هم همین رو احساس کردم توی تست‌ها.
Forwarded from 
issues.chromium.org/issues/41294170

زندگی رقمی‌تون رو بر مبنای چیزی که اهمیّتی به ایرادهای حتّیٰ گزارش‌شده نمی‌ده؛ نسازید.
این ایراد، از سال ۲۰۱۷ پابرجاست.

#note
@amiria703_channel
Forwarded from Gopher Academy
🔵 عنوان مقاله
makefile-graph: Turn a Makefile into a Graph

🟢 خلاصه مقاله:
این مقاله به بررسی و توضیح ابزاری پرداخته است که هم به عنوان کتابخانه و هم به عنوان ابزار خط فرمان (CLI) قابل استفاده است. این ابزار، فایل‌های makefile را تجزیه کرده و نمودارهایی را تولید می‌کند که روابط بین هدف‌های (targets) مختلف را نشان می‌دهند. نمودارهای تولید شده توسط ابزار dot متعلق به Graphviz، رندر می‌شوند. این فرآیند به توسعه‌دهندگان کمک می‌کند تا درک بهتری از وابستگی‌ها و تعاملات بین اجزاء مختلف در پروژه‌های بزرگ نرم‌افزاری داشته باشند و مدیریت وابستگی‌های پروژه را بهبود ببخشند. این ابزار به طور خاص برای کاربرانی طراحی شده که به بهینه‌سازی و دقت در مدیریت تکالیف و پروژه‌های خود نیاز دارند.

🟣لینک مقاله:
https://github.com/dnaeon/makefile-graph


👑 @gopher_academy
حدود ۱ ماهه از ویندوز به لینوکس مهاجرت کردم. دومین باره که ترکوندمش و به کمک ChatGPT همه‌چیز رو برگردوندم.
حالا اگه ویندوز بود، باید اشک می‌ریختم و OS عوض می‌کردم

پ.ن: هنوز کورس لینوکس نگذروندم و فقط در حد نیاز روزانه یه دیتاساینتیست جونیور ازش استفاده می‌کنم

@DevTwitter | <Fatemeh Eslami/>
بررسی MySQL: همه چیز درباره یکی از محبوب‌ترین دیتابیس‌های دنیا 💎

امروز می‌خوام یه دیتابیس معروف و پرطرفدار رو بررسی کنیم؛ MySQL شاید اسمشو زیاد شنیده باشی ولی دقیق ندونی چیه و چه کاربردایی داره.

حالا MySQL چیه؟

خب MySQL یه دیتابیس رابطه‌ای (Relational) و اوپن سورس هست که توی سال 1995 ساخته شده. دیتابیس‌های رابطه‌ای یعنی دیتایی که توش ذخیره میشه توی جدول‌هایی با ردیف‌ها و ستون‌ها قرار می‌گیره و این جداول با همدیگه ارتباط دارن. 🛠️

این دیتابیس از SQL (زبان ساختارمند جستجو) برای مدیریت و پرس‌وجوی اطلاعات استفاده می‌کنه. از اونجایی که MySQL اوپن سورسه، یعنی هرکسی می‌تونه ازش به صورت رایگان استفاده کنه و حتی به کدهاش دسترسی داشته باشه. 💻

چرا MySQL محبوبه؟

1⃣ سرعت و کارایی بالا 🚀: MySQL یکی از سریع‌ترین دیتابیس‌های رابطه‌ای هست. این یعنی درخواست‌ها و عملیات‌های دیتابیس رو خیلی سریع هندل می‌کنه.

2⃣ پشتیبانی از حجم بالا 💾: MySQL می‌تونه مقیاس‌پذیر باشه و دیتابیس‌هایی با حجم زیاد و تعداد کاربران بالا رو به‌خوبی مدیریت کنه.

3⃣ سازگاری با همه چیز 🔗: این دیتابیس تقریباً با همه زبان‌های برنامه‌نویسی و فریمورک‌های محبوب مثل Python, PHP, Node.js و Django به خوبی کار می‌کنه.

- امنیت 🔒: MySQL امنیت بالایی داره و می‌تونید به راحتی دسترسی کاربران به دیتابیس رو مدیریت کنید.

- پشتیبانی از تراکنش‌ها 💡: تراکنش‌ها (Transactions) توی MySQL به شما این امکان رو میدن که چند عملیات دیتابیسی رو به صورت اتمیک انجام بدید، یعنی یا همه اون عملیات‌ها باهم انجام بشن یا هیچکدوم.

چجوری نصب کنیم؟
نصب MySQL خیلی ساده‌ست. اگه سیستم‌عامل لینوکس یا مک داری، با چند تا دستور ساده می‌تونی نصبش کنی. توی ویندوز هم نصب‌کننده گرافیکی داره که کار رو برات راحت می‌کنه. مثلاً برای نصب توی اوبونتو:

sudo apt-get install mysql-server

بعد از نصب، برای ورود به دیتابیس MySQL از این دستور استفاده کن:

mysql -u root -p

چطوری با MySQL کار کنیم؟

بعد از نصب، می‌تونی جداول و دیتاهای موردنظرت رو با SQL مدیریت کنی. مثلاً برای ساخت یه جدول جدید:

CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
email VARCHAR(100)
);

حالا برای اضافه کردن اطلاعات:

INSERT INTO users (name, email) VALUES ('John Doe', '[email protected]');

برای گرفتن اطلاعات:

SELECT * FROM users;

کجا از MySQL استفاده کنیم؟

خب MySQL برای پروژه‌های کوچیک و بزرگ مناسبه، از سایت‌های شخصی گرفته تا اپلیکیشن‌های بزرگ و سیستم‌های پیچیده. اگه نیاز داری یه دیتابیس سبک و سریع داشته باشی که هم اوپن سورسه و هم جامعه بزرگی داره، MySQL گزینه خوبیه. خیلی از سرویس‌های بزرگ مثل Facebook, Twitter, YouTube از MySQL استفاده می‌کنن! 😯

جمع‌بندی 🎯

در کل، MySQL یه دیتابیس رابطه‌ای قدرتمند، سریع و امنه که برای مدیریت اطلاعات توی پروژه‌های مختلف عالیه. چه پروژه‌های کوچیک داشته باشی و چه پروژه‌های بزرگ، MySQL می‌تونه نیازت رو برطرف کنه. اگه دنبال یه دیتابیس اوپن سورس و همه‌کاره هستی، حتماً یه سر به MySQL بزن😎🔥

امید وارم براتون مفید بوده باشه :)

#دیتابیس #mysql #db


@ninja_learn_ir
This media is not supported in your browser
VIEW IN TELEGRAM
مدلهای Phi-3 کمپانی مایکروسافت که جز مدلهای زبانی کوچک (SLMs) حساب میشن واقعا در پرفورمنس عالین و قابل رقابت با مدلهای LLM بزرگ از جمله chatGPT هستند با این تفاوت که میتونید دانلود کنید و رایگان استفاده کنید. اکثرا نیاز به fine tuning هم ندارن
حالا مایکروسافت اومده یک cookbook داده که یک گنج به حساب میاد. از اینکه چطور محیط را آماده کنید تا fine tuning و evaluation از سیر تا پیاز با کد نشون داده. بگم که این مدلها شامل مدلهای vision هم میشه.
یک پروژه که پیشنهاد میدم اینه که با یکی از همین مدلها یک اپلیکیشن RAG درست کنید روی کل این ریپو و به اشتراک بزارید برای سوال و جواب روی این محتوای عالی! محشر میشه.
اینم لینک:
https://github.com/microsoft/Phi-3CookBook

@DevTwitter | <Mehdi Allahyari/>
خب منتظرم اطلاعات رو از سرور ماتریکس بگیره تا منتقل کنم به حساب جدید، بعدش باید برم توی اتاق‌هایی که دسترسی ادمین داشتم خودم رو ادمین کنم و حساب قدیمیم رو غیرفعالش کنم :))



@SohrabContents
Sohrab Behdani changed their name to Sohrab Behdani (Old)
‏یه سری برنامه نویس ها هستند در خلوت خودشان فوق العاده حرفه ای برنامه نویسی میکنند و پروژه های بزرگی هم کار کردند ، اما در مباحث تخصصی همیشه تبادل نظر میکنند نه مخالفت و مجادله !

اینها برعکس نصاب های وردپرس ، اصلا دنبال به رخ کشیدن عملکردشون به بقیه نیستن !

فقط یاد بگیرید ...

@DevTwitter | <‏AliAhkami/>
نمیدونم شما فندوق رو میشناختید یا نه

فندق اولین سکوی ابری عمومی ایران بود

آخرش همشون مهاجرت کردن

اینترنت رو توی ایران کردن رانتی

اینترنت یه شرکت خوبه اینترنت یه شرکت بد

اینترنت یه هاستینگ خوبه
اینترنت یه هاستینگ بد

سرعت دانلود در بعضی مواقع توی سرورای ایران 100 کیلوبایت هم نمیرسه

تازه سایتای پر تراکنش همشون پیام دادن

میگن مشتری پول پرداخت کرده ولی ناموفقه

رفتیم چک کردیم دیدیم وسط کار نتشون قطع میشه یا ارتباطش با سرور قطع میشه

مسئولین ایرانسلم که خوابیدن شایدم کوچ کردن رفتن که مشکل زیر ساخت رو 15 روز حل نمیکنن

@poinair پوینا
Forwarded from Code Module | کد ماژول (𔓙)
بهترین ترفندهای پرامپت نویسی چیه؟ 🐝

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

🕸 هدف پرامپت رو شناسایی کنید.

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

🕸 زمینه‌سازی کنید و جملاتی واضح بنویسید.

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

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

اگر نیاز دارید هوش مصنوعی در سطح وب و گوگل جستجو کنه و اطلاعاتی دقیق پیدا کنه، استفاده از کلمات کلیدی موثر در «بهینه‌سازی موتور جستجو» (Search Engine Optimization | SEO) رو فراموش نکنید.

🕸 پرامپت‌ها رو کوتاه و تمیز نگه دارید.

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

🕸 سوالات استدلالی و خلاقانه بپرسید.

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

به طور کلی اینا برخی از راه حل هایی بود که به ما در نوشتن پرامپت کمک بزرگی میکنن و با جدی گرفتن اون ها، خروجی بهتری از Ai خواهیم داشت 🤖

#tips #ai
@CodeModule
قابلیت جدید Mutation Testing توی نسخه جدید PHP Pest واقعاً منو شگفت زده کرده، به نظرم دیگه نباید کسی برای تست نویسی توی پروژه هاش از PhpUnit استفاده کنه، دیگه وقتشه که تمام تست هاتون رو با Pest بنویسید...
البته تجربه نشون داده اکثر شرکت ها اجازه و زمان تست نویسی ساده هم نمیدن چه برسه به Mutation Testing
اما چی هست این روش تست نویسی؟
این روش یک تکنیک تست نویسی مدرنه و به این صورت که شما تغییرات کوچیکی رو تو کدتون ایجاد میکنید تا ببینید آیا تست های شما اون هارو پیدا میکنه یا نه؟ اینجا تنها جایی که اگه تست شما پاس بشه نشونه خوبی نیست، باید نگران باشید و کاری کنید که تست اتون Fail بشه وقتی تست Fail بشه در واقع Mutation Testing روی تست شما پاس شده و میتونید برید سراغ تست بعدی. حالا فرض کنید همه ی این کارها، چک کردن و حذف کردن بخش های مختلف کد اتون رو Pest براتون انجام میده و نتیجه اشو هم بهتون نشون میده تا شما تست اتون و درستش کنید و بهبودش بدید.

https://laravel-news.com/pest-3?trk=feed-detail_main-feed-card_feed-article-content

@DevTwitter | <Muhsen Maqsudi/>
Forwarded from Accio
SQLite is not a toy database

https://antonz.org/sqlite-is-not-a-toy-database

Personally, I find sqlite to be very convenient. Being simple and serverless, supported by your favorite ORM and easy to setup just contributes to this quality.

#sql #sqlite