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 Gopher Academy
🔵 عنوان مقاله
doWM: A Tiling and Floating Window Manager for X11

🟢 خلاصه مقاله:

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

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


👑 @gopher_academy
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
🎉میز Xfce به Wayland نزدیک‌تر شد!

پیرو این پست قبلیم:
https://t.iss.one/linuxtnt/4313

ادغام کد کامپوزیتور Wayland در Xfwm4 مبتنی بر کتابخانه wlroots

🔹 پشتیبانی داخلی از کامپوزیتور Wayland به‌صورت رسمی در Xfwm4 (مدیر پنجره‌ی محیط دسکتاپ Xfce) اضافه شده. این کامپوزیتور جدید با استفاده از کتابخانه‌ی قدرتمند wlroots توسعه یافته که ابتدا توسط کامپوزیتور Sway معرفی شده بود.

🔹 کاربران Xfce مدت‌ها منتظر چنین تغییری بودند. تا پیش از این، اجرای Xfce روی Wayland نیازمند استفاده از کامپوزیتورهای خارجی بود، اما حالا با این ادغام جدید، Xfwm4 رسماً وارد دنیای Wayland شده است.

🔹 استفاده از کتابخانه‌ی wlroots باعث شده توسعه‌ی این قابلیت برای تیم Xfce بسیار ساده‌تر و سریع‌تر پیش برود. انتظار می‌رود همچنان پشتیبانی از X11 نیز حفظ شود.
به صورت کلی، اگر Dracut رو در پارچ پیاده‌سازی کنیم، میشه پشتیبانی از TPM2 و همینطور Unified Kernel Image رو راحت‌تر آورد.

علت تأخیر در رلیز جدید هم همین موضوع هستش، پروفایل پارچ دستخوش تغییرات زیادی داره میشه و یکمی زمان‌بر میشه این مورد.


https://wiki.archlinux.org/title/Unified_kernel_image


@SohrabContents
حالا این مورد پیاده‌سازی سکیوربوت هم راحت‌تر می‌کنه چون کلا یک فایل هستش که باید امضا بشه :)


@SohrabContents
Forwarded from Linuxor ?
نوشتن کدهای مدرن جاوااسکریپت با سینتکس جدید همیشه یه ریسک داره: چی میشه اگه مرورگر کاربر ازش پشتیبانی نکنه؟ Babel دقیقاً برای همینه. کدهای جدید رو می‌گیره، تبدیل می‌کنه به نسخه‌ای که تو همه‌ی مرورگرها جواب می‌ده. خیال‌راحت‌کن برای کسایی که روی مرورگرهای قدیمی هم حساب باز کردن.

github.com/babel/babel

@Linuxor
Forwarded from Linuxor ?
نوشتن کدهای مدرن جاوااسکریپت با سینتکس جدید همیشه یه ریسک داره: چی میشه اگه مرورگر کاربر ازش پشتیبانی نکنه؟ Babel دقیقاً برای همینه. کدهای جدید رو می‌گیره، تبدیل می‌کنه به نسخه‌ای که تو همه‌ی مرورگرها جواب می‌ده. خیال‌راحت‌کن برای کسایی که روی مرورگرهای قدیمی هم حساب باز کردن.

github.com/babel/babel

@Linuxor
Forwarded from laravel-news
“انسان‌ها به صورت دسته‌بندی شده فکر می‌کنن، کد ما نیز باید بازتابی از همین موضوع باشه”


#book #laravel_beyond_crud
Forwarded from Linuxor ?
وقتی گیت وقتی اشتباه پیش می‌ره، بدجوری داغون می‌شی. مخصوصاً وسط یه پروژه مهم یا توی ددلاین. ریپوی git-flight-rules یه راهنمای بحران‌محور برای کار با گیته. شبیه یه checklist برای خلبان‌هاست که وسط طوفان باید تصمیم بگیرن. مناسب همه، از تازه‌کار تا سینیور

github.com/k88hudson/git-flight-rules

@Linuxor
Forwarded from Gopher Academy
🔴قابلیت `T.Attr`, `B.Attr`, و `F.Attr`. ویژگی های جدید گولنگ نسخه 1.25

در Go نسخه 1.25**، سه متد جدید به پکیج `testing` اضافه شده‌اند: `T.Attr`, `B.Attr`, و `F.Attr`. این‌ها به شما اجازه می‌دهند **اتریبیوت‌های دلخواه (کلید–مقدار) را مستقیماً به خروجی لاگ تست ارسال کنید.

---

🏷 چه کاری انجام می‌دهند؟

با استفاده از T.Attr(key, value) می‌توانید به‌سادگی یک attribute با کلید key و مقدار value اضافه کنید و این در لاگ تست خواهد آمد:

=== ATTR  TestMyFeat myKey someValue


* برای تست‌ها: از T.Attr
* برای بنچمارک‌ها: از B.Attr
* برای فریمورک‌های fuzzing: از F.Attr

---

چرا مفید هستند؟

* دنبال کردن metadata مرتبط با تست‌ها، مثل نسخه پکیج، وضعیت کانفیگ، داده‌های ورودی خاص
* مناسب برای تولید خروجی قابل‌پردازش با test2json
* واضح و مستقیم، بدون نیاز به استفاده از Log یا fmt

---

🌟 مثال ساده

package mypkg_test

import "testing"

func TestSomething(t *testing.T) {
t.Attr("db", "postgres")
t.Attr("featureFlag", "enabled")

t.Log("running test with attributes")
// ... انجام تست اصلی ...
}


خروجی هنگام اجرای go test:

=== RUN   TestSomething
=== ATTR TestSomething db postgres
=== ATTR TestSomething featureFlag enabled
mypkg_test.go:10: running test with attributes
--- PASS: TestSomething (0.00s)


---

📊 ترکیب با test2json

اگر خروجی را با go test -json یا test2json بگیرد، این اتریبیوت‌ها به‌صورت structured می‌روند و ابزارهای CI/CD یا داشبوردها می‌توانند آن‌ها را بخوانند.

---

🛠 مثال برای بنچمارک‌ها

func BenchmarkMyOp(b *testing.B) {
b.Attr("iterations", b.N)
for i := 0; i < b.N; i++ {
// عملیات اصلی ...
}
}


خروجی:

=== BENCH: BenchmarkMyOp
=== ATTR BenchmarkMyOp iterations 1000
...


---

جمع‌بندی

*این T.Attr (و معادل‌های آن برای benchmark/fuzz) روشی ساده برای اضافه کردن metadata به تست‌ها هستند.
* بهبود خوانایی لاگ و قابلیت تجزیه‌ی ساخت‌یافته در ابزارهای خودکار.
* بسیار سبک و بدون overhead، یک ویژگی جزئی ولی کاربردی برای ردیابی و دیباگ.
Forwarded from Linuxor ?
می‌خوای برای تست یا dev، از AWS پول بسوزه؟ راه ساده‌ترش MinIO ـه.
برای خیلی از پروژه‌های dev، مخصوصاً وقتی با S3 سروکار داری، MinIO راهیه که به‌جای سرویس ابری، همون API رو توی سیستم خودت داشته باشی، با سرعت بالاتر و کنترل کامل روی دیتا.

نصبش هم خیلی خیلی سادس :

min.io

@Linuxor
Forwarded from Linuxor ?
وقتی تیم بزرگ مثل گوگل می‌گه "این سبک کدنویسی خوبه"،باید بی چون و چرا گوش بدید،

این یه مرجع برای نوشتن کدی که هم خوانا باشه، هم قابل نگهداری، مخصوصاً وقتی با تیم‌های بزرگ کار می‌کنی هستش

از Python گرفته تا C++ و JavaScript، همه رو پوشش داده

google.github.io/styleguide

@Linuxor
Forwarded from یه شعر (Poem Bot)
سعدی | دیوان اشعار | رباعیات | رباعی شمارهٔ ۸۲

نامردم اگر زنم سر از مهر تو باز
خواهی بکشم به هجر و خواهی بنواز
ور بگریزم ز دستت ای مایه ناز
هر جا که روم پیش تو می آیم باز

#سعدی | گنجور
📍@iipoem
Forwarded from Gopher Academy
🎯 ویژگی های جدید گولنگ نسخه 1.25 رو از اینجا بخونید

🔵synctest
🟢https://t.iss.one/gopher_academy/3910
▫️▪️▫️▪️▫️▪️▫️▪️▫️

🔵 json/v2
🟢https://t.iss.one/gopher_academy/3913
▫️▪️▫️▪️▫️▪️▫️▪️▫️

🔵 Container-aware GOMAXPROCS
🟢https://t.iss.one/gopher_academy/3922
▫️▪️▫️▪️▫️▪️▫️▪️▫️

🔵New GC
🟢 https://t.iss.one/gopher_academy/3925
▫️▪️▫️▪️▫️▪️▫️▪️▫️

🔵Anti-CSRF
🟢https://t.iss.one/gopher_academy/3937
▫️▪️▫️▪️▫️▪️▫️▪️▫️

🔵WaitGroup.Go
🟢https://t.iss.one/gopher_academy/3943
▫️▪️▫️▪️▫️▪️▫️▪️▫️

🔵FlightRecorder
🟢https://t.iss.one/gopher_academy/3939
▫️▪️▫️▪️▫️▪️▫️▪️▫️

🔵os.Root
🟢https://t.iss.one/gopher_academy/3952
▫️▪️▫️▪️▫️▪️▫️▪️▫️

🔵reflect.TypeAssert
🟢https://t.iss.one/gopher_academy/3947
▫️▪️▫️▪️▫️▪️▫️▪️▫️

🔵T.Attr
🟢https://t.iss.one/gopher_academy/3956
▫️▪️▫️▪️▫️▪️▫️▪️▫️

🔵slog.GroupAttrs
🟢https://t.iss.one/gopher_academy/3951
▫️▪️▫️▪️▫️▪️▫️▪️▫️

🔵hash.Cloner
🟢https://t.iss.one/gopher_academy/3946
▫️▪️▫️▪️▫️▪️▫️▪️▫️
1
Forwarded from Aniis
🔹پنجمین دورهمی فعالان حوزه امبدد و اینترنت اشیا، فرصتی برای ارتقا دانش و تعامل با متخصصان

باحضور : مدیر‌عامل و تیم فنی شرکت کرمان صنعت

• تاریـــخ: ۲۵ تیرماه ۱۴۰۴
• ساعت: ۱۷ الــــی ۱۹
• مکــان: کارخانه نوآوری کرمان، بلوار جمهوری اسلامی، خیابان صادقیه، قبل از صادقیه۳

🔸️منتظر حضور ارزشمند شما هستیم.

لینک ثبت‌ نام


شرکت راهکار صنعت آواپرداز
👎1
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
🔰خروج خودکار از ترمینال (bash):

با استفاده از دستور TMOUT میتوانید، برحسب زمان داده شده(ثانیه) از شل جاری به صورت اتوماتیک خارج شوید.( منظورم در اینجا بسته شدن شل است که در ترمینال جاری باز است.)

🔹در دستور زیر بعد از 10 ثانیه شل جاری خارج میشود.
export TMOUT=10

خوب برای کسانی که همیشه حساسیت دارند.میتونید درکدهای شل اسکریپت هم این دستور را استفاده کنید.
نکته آخر: نیاز به وارد کردن sudo قبل دستور نیست.
———————————————————-
نویسنده: حسین سیلانی
منبع : کانال لینوکسی: لینوکس تی ان تی
@linuxtnt
سوالی که پیش اومده برای من در این چندماه اخیر اینه که «فایدش چیه؟» عملاً حتی زمانی که شوقی باقی نمیمونه.





و چیزیه که مثل یک
:(){ :|:& };:

توی ذهن ایجاد میشه و از بین نمیره.


هرکسی از من تجربه بخواد در این زمینه، جواب من بهش نکن عه. حتی برای رزومه هم ارزش نداره. خیلی کارهای بهتری میشه کرد :)



#موقت