Dev Perfects – Telegram
Dev Perfects
41 subscribers
9.23K photos
1.26K videos
468 files
13K links
بخوام خیلی خلاصه بگم
این کانال میاد مطالب کانالای خفن تو حوزه تکنولوژی و برنامه نویسی رو جمع میکنه

پست پین رو بخونید
https://news.1rj.ru/str/dev_perfects/455


ارتباط:
https://news.1rj.ru/str/HidenChat_Bot?start=936082426
Download Telegram
Forwarded from Agora (Alireza Azadi)
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
گذری بر تاریخ لینوکس:
گرفته شده از کتاب فلسفه لینوکس و یونیکس:

در اوایل دهه 1980، Onyx Systems شروع به فروش ایستگاه‌های کاری یونیکس مبتنی بر میکروکامپیوتر کرد که نمایانگر اولین تلاش‌ها برای تجاری‌سازی یونیکس در مقیاس کوچک‌تر بود. در پی این، Sun Microsystems که در ابتدا به‌عنوان یک پروژه دانشجویی در دانشگاه استنفورد تأسیس شده بود، در سال 1982 شروع به فروش ایستگاه‌های کاری رومیزی مبتنی بر یونیکس کرد. این ایستگاه‌های کاری، که اساساً برای استفاده در محیط‌های تجاری طراحی شده بودند، نمونه‌ای از تجاری‌سازی سیستم‌عامل یونیکس در زمینه سخت‌افزار میکروکامپیوتر بودند. در حالی که این ایستگاه‌ها از سخت‌افزارهای اختصاصی استفاده می‌کردند، به‌ویژه از نرم‌افزارهای رایگان و متن‌باز مانند لینوکس که بعدها برای آن توسعه یافت، بهره نمی‌بردند.

با گسترش تجاری‌سازی یونیکس و قفل شدن آن به‌عنوان یک محصول اختصاصی، پروژه گنو (GNU) که در سال 1983 توسط ریچارد استالمن آغاز شد، هدف خود را ایجاد یک "سیستم نرم‌افزاری کامل سازگار با یونیکس" با استفاده از نرم‌افزارهای آزاد قرار داد. این پروژه که در سال 1984 شروع شد، قصد داشت یک سیستم عامل کاملاً آزاد و قابل توزیع برای کاربران ایجاد کند. پس از آن، استالمن در سال 1985 بنیاد نرم‌افزار آزاد را راه‌اندازی کرد و مجوز عمومی عمومی گنو (GNU GPL) را در سال 1989 نوشت. هدف این مجوز این بود که نرم‌افزارهایی که تحت آن منتشر می‌شدند، همواره آزاد و قابل توزیع مجدد باقی بمانند. در اوایل دهه 1990، بسیاری از برنامه‌های ضروری برای یک سیستم‌عامل، از جمله کتابخانه‌ها، کامپایلرها، ویرایشگرهای متن، پوسته خط فرمان و سیستم‌های پنجره‌سازی، تکمیل شدند. با این حال، بعضی از عناصر سطح پایین مانند درایورهای دستگاه، دیمون‌ها و هسته به نام گنو هرد هنوز ناتمام و ناقص بودند.

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

در این بین، توسعه 386BSD، که منجر به ایجاد سیستم‌عامل‌هایی چون NetBSD، OpenBSD و FreeBSD شد، پیش از لینوکس آغاز شد. با وجود پیچیدگی‌های قانونی که مانع از انتشار این پروژه در ابتدا شدند، 386BSD به‌عنوان یک پروژه مهم در دنیای سیستم‌های عامل آزاد شناخته می‌شود. این پروژه به توسعه‌دهندگان و علاقه‌مندان به سیستم‌های عامل متن‌باز امکانات زیادی را ارائه داد.

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


🔸متن گرفته شده از :کتاب فلسفه لینوکس و یونیکس
🔸ترجمه حسین سیلانی
هر دولوپری باید این چیت‌شیت‌ها رو داشته باشه، وگرنه نصف عمرش بر فناست! توی این پست، یه لیست خفن از مهم‌ترین چیت‌شیت‌هایی که کارتو سریع‌تر، حرفه‌ای‌تر و راحت‌تر می‌کنه رو برات آوردم! از Git و Regex گرفته تا Docker و JavaScript – اینا همون تقلب‌هایی هستن که هر برنامه‌نویسی باید بلد باشه!

1. چیت‌شیت‌ GIT :
https://education.github.com/git-cheat-sheet-education.pdf

2. چیت‌شیت‌ SQL :
https://websitesetup.org/wp-content/uploads/2020/04/MySQL-Cheat-Sheet-websitesetup.org_.pdf

3. چیت‌شیت‌ Regex :
https://adprice.fedorapeople.org/regular-expressions-cheat-sheet-v1.pdf

4. چیت‌شیت‌ Docker :
https://dockerlabs.collabnix.com/docker/cheatsheet/

5. چیت‌شیت‌ UI/UX :
https://lawsofux.com/

6. چیت‌شیت‌ Grid css :
https://css-tricks.com/snippets/css/complete-guide-grid/

7. چیت‌شیت‌ Flexbox css :
https://css-tricks.com/snippets/css/a-guide-to-flexbox/

8. چیت‌شیت‌ JS Methods :
https://maktabkhooneh.org/mag/javanoscript-methods/

9. چیت‌شیت‌ Bootstrap :
https://websitesetup.org/wp-content/uploads/2020/03/Bootstrap-Cheat-Sheet-websitesetup.org_.pdf

10. چیت‌شیت‌ VS code Keywords :
https://code.visualstudio.com/shortcuts/keyboard-shortcuts-windows.pdf

11. چیت‌شیت‌ Emmet :
https://docs.emmet.io/cheat-sheet/

12. چیت‌شیت‌ OOP in PHP :
https://www.w3schools.com/php/php_oop_what_is.asp

13. چیت‌شیت‌ NPM :
https://docs.npmjs.com/

@DevTwitter | <Amirreza Riahi/>
Forwarded from Gopher Academy
🔵 عنوان مقاله
Feluda: A Tool to Analyze the Licences of Dependencies

🟢 خلاصه مقاله:
این مقاله به معرفی پروژه‌ای می‌پردازد که با استفاده از زبان برنامه‌نویسی Rust انجام شده است، اما برای پردازش وابستگی‌های پروژه‌های Go، Rust یا Node.js قابل استفاده است. این ابزار قادر به ارائه گزارشی در مورد محدودیت‌های احتمالی مربوط به مجوزهای نرم‌افزاری یا نمایش یک رابط کاربری مبتنی بر متن موسوم به "TUI" است. گزارش یا رابط TUI به کاربران امکان می‌دهد تا درک بهتری از جنبه‌های حقوقی و مجوزهای مرتبط با کتابخانه‌ها و ماژول‌های مورد استفاده در پروژه‌های نرم‌افزاری خود به دست آورند. استفاده از این ابزار می‌تواند به توسعه‌دهندگان کمک کند تا از پیچیدگی‌های قانونی اجتناب کنند و تصمیم‌گیری‌های آگاهانه‌تری در مورد انتخاب مجوزها و کتابخانه‌ها داشته باشند.

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


👑 @gopher_academy
Forwarded from Md Daily (Mahan)
+ دواپسمون همش داره ماینکرفت بازی میکنه

- اونایی که میدونن: 💀


داکر یه پروژه ی باحال داره به نام Dockercraft که میتونید مستقیم توی ماینکرفت کانتینر های داکرتون رو مدیریت کنید :)

اما چطوری کار میکنه؟

اومدن از Cuberite، یک سرور ماینکرفت متن‌باز و نوشته‌شده با C++، برای پیاده‌سازی Dockercraft استفاده کردن. این سرور از پلاگین‌های Lua پشتیبانی میکنه، بنابراین یک پلاگین اختصاصی برای تعامل با Docker توسعه دادن.

🔹 اجرای عملیات در سمت سرور

کلاینت ماینکرفت بدون تغییر باقی میمونه و تمام پردازش‌ها سمت سرور انجام میشه. پلاگین Lua که در مسیر world/Plugins/Docker قرار داره، یک تب مدیریتی در WebAdmin سرور ایجاد میکنه:

Plugin:AddWebTab("Docker", HandleRequest_Docker)

این باعث میشه درخواست‌های POST به مسیر http://127.0.0.1:8080/webadmin/Docker/Docker ارسال بشن.

🔹 اتصال به Docker Remote API

رویدادهای داکر از طریق سرویس Goproxy که با Golang نوشته شده پردازش شده و به پلاگین Lua منتقل میشن. این سرویس درخواست‌ها را به سرور ارسال می‌کنه:

func MCServerRequest(data url.Values, client *http.Client) {
req, _ := http.NewRequest("POST", "http://127.0.0.1:8080/webadmin/Docker/Docker", strings.NewReader(data.Encode()))
req.Header.Set("Content-Type", "application/x-www-form-urlencoded")
req.SetBasicAuth("admin", "admin")
client.Do(req)
}

🔹 اجرای دستورات از طریق ماینکرفت

پلاگین Lua میتونه از طریق os.execute() با این سرویس ارتباط برقرار کنه. مثلاً موقع ورود یه بازیکن، اطلاعات کانتینرهای داکر بروزرسانی میشن:

function PlayerJoined(Player)
r = os.execute("goproxy containers")
end

این روش امکان مدیریت کانتینرهای Docker را مستقیماً از داخل ماینکرفت فراهم می‌کنه


گیت هاب پروژه:

🔗 https://github.com/docker/dockercraft

---

مثل همیشه کنجکاو بمونید :)

🆔 @MdDaily
تصور کن توی یه سیستم مالی، چند نفر هم‌زمان بخوان همون مبلغ رو برداشت کنن! نتیجه؟ فاجعه‌ای شبیه یه قرعه‌کشی نامنظم!

راه‌حل؟ استفاده از lockForUpdate در Laravel!
چرا؟ چون:
- جلوی برداشت‌های تکراری رو می‌گیره.
- امنیت تراکنش‌های مالی رو تضمین می‌کنه.
- عملکرد سیستم رو توی تراکنش‌های همزمان بهبود می‌ده.

اگه به امنیت و پایداری سیستم مالی اهمیت می‌دی، lockForUpdate رو فراموش نکن!

@DevTwitter | <Navid Vakili/>
🍌1
Forwarded from  (Amiria Maher)
محمد جرجندی به کلاهبردارهای بزرگ می‌پردازه ولی آیا کلاهبردارهای کوچیک که مردم تو nospam.ir و جاهای دیگه، گزارش کردن، ارزش رسانه‌ای شدن رو ندارن؟

#note #موقت
Forwarded from 🎄 یک برنامه نویس تنبل (  MΞ)
🔸Rust(Axum) vs. Go(Gin) Performance Benchmark

https://www.youtube.com/watch?v=31R8Ef9A0iw

@TheRaymondDev
Forwarded from کانال علی شیردستیان (Ali Shirdastian‌ ‌)
استخدام گرافیست برای تیم سوشال برنامه ۱۰۰۱ 🎬🎨

ما به یه نیروی گرافیست خلاق و سریع برای تیم سوشال برنامه ۱۰۰۱ نیاز داریم.

🔹 مهارت‌های لازم:
تسلط به فتوشاپ و ایلاستریتور
آشنایی ابتدایی با پریمیر
سرعت عمل و دقت بالا
روحیه کار تیمی

🔹 وظایف:
🎨 طراحی کاور پست‌های پیج‌های مرتبط با برنامه
🖼 طراحی پوسترهای برنامه
📸 ادیت قاب عکس‌های برنامه
🎬 تدوین و جداسازی بخش‌های مهم برنامه در قالب ویدیوهای کوتاه

📍 محل کار: گرمدره
زمان کاری: براساس آفیش پروژه
🚗 مزایا: سرویس رفت‌وبرگشت + وعده‌های غذایی
📅 استراحت: یک یا دو روز آف در هفته

🔗 رزومه‌ها بعد از بررسی و اعتبارسنجی توسط من، به تیم تهیه‌کننده منتقل می‌شه:

@shirdastian
Forwarded from Persian LUG
پرشین‌لاگ
برلین، سه‌شنبه ۴ فوریه ساعت ۱۸:۳۰

موضوع: زبان Monkey C و بحث آزاد


📍 Cafe Chagall, Kollwitzstraße 2, Berlin


🌐 http://persianlug.com
📢 @persianlug
💬 @persianlug_chat
Forwarded from Yasha
من موقع نوشتن داکیومنت پروژه:

@Yasha
Forwarded from FouXi (ERFouX)
توی آپدیت جدید Zen Browser به صورت پیشفرض بجای باز شدن یک New Tab شما فقط Address bar رو خواهید داشت.

( دکمه NewTab و میانبر CTRL + T هردو Address bar رو براتون باز میکنن )

برای حل این مشکل کافیه about:config رو باز کنید و zen.urlbar.replace-newtab رو به false تغییر بدید. ✔️


🔖@TheFouX
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Geek Alerts
در مورد data annotation بیشتر شغل دوم هست، توی دو دسته جذب میکنن، دسته عمومی معمولا تنها چیزی که میخواد تسلط به نگارش زبان انگلیسی و تو بعضی از موارد زبان دوم هم میخوان.
و دسته تخصصی با مدرک دانشگاهی میگیرن تو تخصص‌های خاص مثل ریاضی و ...

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

بعضی از پلتفرم‌ها مثل dataannotation. tech نوشتن ساعتی ۲۰ دلار پرداخت میکنن، از جاهایی مثل آمریکا، کانادا، انگلیس، ایرلند، نیوزیلند و استرالیا میشه داخلشون ثبت‌نام کرد.

ولی محدود به پلتفرم‌ها نباشیم میشه داخل خود شرکت‌ها هم کار کرد که یه جور رزومه هم باشه، مثلا xAI امسال تصمیم داره چند هزار نفر data annotation رو به صورت تمام وقت یا پاره وقت استخدام کنه، بیشتر هم آدم‌های دو زبانه میخوان که شانس بیشتری با اروپایی‌ها و آسیایی‌ها هست.

businessinsider
@geekalerts
Forwarded from Linuxor ?
توی سال 2017 دیپ مایند موتور بازی شطرنج AlphaZero رو معرفی کرد که با یادگیری تقویتی و شبکه‌های عصبی، فقط با چند ساعت بازی با خودش، به سطحی فراتر از انسان رسوندنش. در برابر Stockfish که یکی از قوی‌ترین موتورهای سنتی که بر پایه جست‌وجوی درختی و هرس آلفا-بتا کار می‌کرد قرارش دادن...

نتیجه؟ AlphaZero تونست Stockfish رو کاملا نابود کنه از 100 تا بازی 28 تا برد 0 تا باخت و 72 تا مساوی؛ این نتیجه نشون داد که یادگیری تقویتی و شبکه‌های عصبی می‌تونه بر روش‌های کلاسیک جست‌وجوی درختی به راحتی غلبه کنه.





@Linuxor
حالا اگر کتاب کلین کد رو نخوندید و احساس میکنید تو ۴۶۰ صفحه، احتمالا حرفهای خیلی بیشتری زده شده و آماده هستید که یک نفر همهی اونها شسته رفته و به زبان فارسی + توضیحات و مثالهای بیشتر بهتون بگه؛ در عین حال از اونجایی که کتاب رو screen share کرده میبینید که هیچ آیتمی رو هم الکی رد نمیکنه... میتونید به پلیلیستی که درست کردم سر بزنید و اونها رو ببینید و کدتون رو چند پله بهتر کنید!

https://www.youtube.com/playlist?list=PLvComYym9Hg3mXWX4hjIEAnqo5vv4ccS-&themeRefresh=1

@DevTwitter | <Amin Bazgir/>
Forwarded from Linuxor ?
توی آمریکا سکه های 1 و 5 و 10 و 25 و 50 سنتی داریم این انتخابشون خیلی هوشمندانه و قشنگ بوده چون موقع بقیه پول دادن می‌شه کمترین تعداد سکه رو جابجا کرد در واقع الگوریتم حریصانه روش بهینه کار می‌کنه و مغز ما هم تقریبا مثل الگوریتم حریصانه کار میکنه

مثلا بخوایم به یکی 16 سنت بدیم کافیه از بالا شروع کنیم و هرکدوم کمتر بود برداریم که می‌شه 10 و 5 و 1 در واقع کمتر از 3 تا سکه برای ساخت 16 غیر ممکنه.

حالا فرض کنید آمریکا یه سکه 12 سنتی هم بسازه بده دست مردم، دیگه نمی‌شه به صورت حریصانه و ساده حساب کتاب کرد چون اگه اول بزرگ ترین حالت ممکن که 12 هستش رو برداریم و بعدی 5 که نمی‌شه مجبور می‌شیم چهار تا 1 سنتی بدیم تا بشه 16. که اینجا 5 تا سکه ردو بدل شده اما توی حالت اول 3 تا.


@Linxuor