Forwarded from Webinarfarsi | Soheib Kiani | وبینار فارسی
لیست یکی از کامل ترین منابع برای Software Engineer ها
نکات و سورس های زیادی در این لینک ها جمع آوری شده
. Important Software Engineering Principles:
– SOLID - https://lnkd.in/gXJ_JAPX
– ACID - https://lnkd.in/gk98CBGw
– YAGNI - https://lnkd.in/grAd8zdP
– KISS - https://lnkd.in/gHm-y8HM
– DRY - https://lnkd.in/guu9XBq6
– Design Patterns - https://lnkd.in/ghW-VYsi
– Separation Of Concerns - https://lnkd.in/ghjd75Rk
– Modularity - https://lnkd.in/gwhd-K97
. System Design Resources:
1. Primer: https://lnkd.in/eVhC6dTV
2. Resources: https://lnkd.in/eWcNwskN
3. LLD Resourceshttps://lnkd.in/eFNUU9zg
. Coding Interview Resources:
– 900+ DSA Problems: https://lnkd.in/gBe9skqv
– Coding Patterns: https://lnkd.in/gG77UBc5
– Blind 75: https://lnkd.in/gBGV2TFB
– Grind 169: https://lnkd.in/gVRxYejX
– Grind 75: https://lnkd.in/gDGVpq83
– Leetcode 150: https://lnkd.in/gviu_EhN
کانال فرصت های شغلی IT و ارتقای برنامه نویسی:
https://news.1rj.ru/str/webinar_farsi
کانال فرصت های کارآموزی بین المللی و تحصیلی در زمینه IT:
https://news.1rj.ru/str/applyfarsi30
نکات و سورس های زیادی در این لینک ها جمع آوری شده
. Important Software Engineering Principles:
– SOLID - https://lnkd.in/gXJ_JAPX
– ACID - https://lnkd.in/gk98CBGw
– YAGNI - https://lnkd.in/grAd8zdP
– KISS - https://lnkd.in/gHm-y8HM
– DRY - https://lnkd.in/guu9XBq6
– Design Patterns - https://lnkd.in/ghW-VYsi
– Separation Of Concerns - https://lnkd.in/ghjd75Rk
– Modularity - https://lnkd.in/gwhd-K97
. System Design Resources:
1. Primer: https://lnkd.in/eVhC6dTV
2. Resources: https://lnkd.in/eWcNwskN
3. LLD Resourceshttps://lnkd.in/eFNUU9zg
. Coding Interview Resources:
– 900+ DSA Problems: https://lnkd.in/gBe9skqv
– Coding Patterns: https://lnkd.in/gG77UBc5
– Blind 75: https://lnkd.in/gBGV2TFB
– Grind 169: https://lnkd.in/gVRxYejX
– Grind 75: https://lnkd.in/gDGVpq83
– Leetcode 150: https://lnkd.in/gviu_EhN
کانال فرصت های شغلی IT و ارتقای برنامه نویسی:
https://news.1rj.ru/str/webinar_farsi
کانال فرصت های کارآموزی بین المللی و تحصیلی در زمینه IT:
https://news.1rj.ru/str/applyfarsi30
lnkd.in
LinkedIn
This link will take you to a page that’s not on LinkedIn
Forwarded from Linuxor ?
بعضیا کانتینر داکر رو با ماشین مجازی اشتباه میگیرن، توی ماشین های مجازی واقعا پراسس ها توی ماشین ایزوله هستن ولی پراسس های کانتینر های داکر روی هاست اجرا میشه و با یه فیچر لینوکس به اسم namespace ها و cgroup ها مدیریت میشه
با دستور زیر میتونید ببینید PID اون کانتینر داخل هاستتون چیه :
docker inspect -f '{{.State.Pid}}' my-container
@Linuxor
با دستور زیر میتونید ببینید PID اون کانتینر داخل هاستتون چیه :
docker inspect -f '{{.State.Pid}}' my-container
@Linuxor
Forwarded from Webinarfarsi | Soheib Kiani | وبینار فارسی
17 هزار پرامپت آماده منتظر توئن ؛ دیگه تو استفاده از Ai دچار مشکل نمیشی...!
اگه با هوشهای مصنوعی مثل ChatGPT، Midjourney یا DALL·E کار میکنی، این سایت یه گنج واقعی برات حساب میشه:
یه آرشیو عظیم از 17.000 پرامپت دستهبندیشده، منظم و قابل سرچ برای هر مدل هوش مصنوعی که فکرشو بکنی!
چیا توش داره؟
- پرامپتها همراه با مثال و توضیح
- دستهبندیشده بر اساس موضوع و سبک
- امکان ذخیره، ویرایش و اشتراکگذاری پرامپتها
- افزونه کروم برای دسترسی سریعتر
- و از همه مهمتر: کاملاً رایگان
آدرسش اینه:
https://promptport.ai
#کاربردی
اگه با هوشهای مصنوعی مثل ChatGPT، Midjourney یا DALL·E کار میکنی، این سایت یه گنج واقعی برات حساب میشه:
یه آرشیو عظیم از 17.000 پرامپت دستهبندیشده، منظم و قابل سرچ برای هر مدل هوش مصنوعی که فکرشو بکنی!
چیا توش داره؟
- پرامپتها همراه با مثال و توضیح
- دستهبندیشده بر اساس موضوع و سبک
- امکان ذخیره، ویرایش و اشتراکگذاری پرامپتها
- افزونه کروم برای دسترسی سریعتر
- و از همه مهمتر: کاملاً رایگان
آدرسش اینه:
https://promptport.ai
#کاربردی
promptport.ai
PromptPort - Navigate the Sea of Creativity with the Best Writing Prompts Around!
PromptPort provides a universe of creative writing prompts to inspire your next story, poem, or essay. Explore our collection and find your inspiration today!
Forwarded from Linuxor ?
با ابزار Uptime Kuma میتونین به طرز زیبایی سرورتون رو مانیتور کنید و زمانی که مشکلی پیش اومد مثلا از ایمیل یا تلگرام بهتون خبر بده
github.com/louislam/uptime-kuma
@Linuxor
github.com/louislam/uptime-kuma
@Linuxor
I'm attending Camino internships. Join me on May 4, 2026.
https://www.linkedin.com/events/megajobandinternshipfair7251609615648317442
https://www.linkedin.com/events/megajobandinternshipfair7251609615648317442
LinkedIn
LinkedIn Login, Sign in | LinkedIn
Login to LinkedIn to keep in touch with people you know, share ideas, and build your career.
Forwarded from Code Module | کد ماژول
چطور اکانت گیتهابم رو حفظ کنم؟ مروری بر 2FA و اهمیت مدیریت دسترسیها 🔥
چند روز پیش یک مشکلی با سیستم 2FA داشتم که خیلی به موقع خودش رو نشون داد. به اپ 2FA در گوشیم دسترسی نداشتم و از اون بدتر، ریکاوری کدهایی که باید ذخیره میکردم رو اصلاً نداشتم! (که خب معمولاً خیلیا همینطوری هستن). این شد که یک وضعیت بحرانی پیش اومد و من به از تمام اکانتهای گیتهابم اومده بودم بیرون. تنها راه دسترسی به اکانتم هم یه PAT یا (Personal Access Token) بود که به سختی ساعتها گشتم تا پیداش کنم و در نهایت تونستم وارد بشم. ولی این اتفاق به من یادآوری کرد که چقدر مهمه چند تا نکته امنیتی ساده رو برای اکانت گیتهابمون فعال کنیم تا مثل من یهو از زندگی ناامید نشین!
1- سیو کردن ریکاوری کدها
اولین و مهمترین چیزی که باید انجام بدید اینه که ریکاوری کدها رو دانلود کنید و حتما یه جایی ذخیره کنید. نوشتن اونا توی جایی که به راحتی بهش دسترسی داشته باشید (مثلاً یه فایل امن یا یه اپ مخصوص ذخیرهسازی پسورد) خیلی میتونه کمککننده باشه. این کار رو حتما انجام بدید که اگر روزی روزگاری به اپ 2FA دسترسی نداشتید، راحت بتونید وارد بشید.
2- فعال کردن SSH
یکی دیگه از کارهایی که به شدت توصیه میکنم، فعال کردن SSH برای اکانت گیتهاب هست. این کار کمک میکنه که بدون نیاز به وارد کردن پسورد یا توکن، بتونید به راحتی به گیتهاب دسترسی پیدا کنید.
نحوه فعال سازی SSH:
- ابتدا باید یک کلید SSH بسازید (با استفاده از
- بعد از ساخت کلید، باید اون رو به گیتهاب اضافه کنید از طریق تنظیمات SSH Keys در گیتهاب.
3- اکسس توکن (PAT)
همچنین به جای استفاده از پسورد برای احراز هویت، میتونید از اکسس توکنها (PAT) استفاده کنید. این توکنها برای ارتباط امنتر با گیتهاب خیلی مفید هستند.
نحوه فعال سازی PAT:
- به تنظیمات اکانت گیتهاب برید.
- در قسمت Developer Settings، گزینه Personal Access Tokens رو پیدا کنید.
- توکن جدید بسازید و سطوح دسترسی مورد نظر رو انتخاب کنید.
مهم:
اگر هیچ کدوم از این روشها رو برای اکانتتون فعال نکردید، گیتهاب هیچ تضمینی نمیده که بتونید اکانتتون رو بازیابی کنید. نهایتاً ممکنه مجبور میشید ایمیل رو unlink کنید و یه اکانت جدید بسازید، ولی حتی در این صورت هم تاریخچه کامیتها و اطلاعات دیگه رو ممکنه از دست بدید.
#github
@CodeModule
چند روز پیش یک مشکلی با سیستم 2FA داشتم که خیلی به موقع خودش رو نشون داد. به اپ 2FA در گوشیم دسترسی نداشتم و از اون بدتر، ریکاوری کدهایی که باید ذخیره میکردم رو اصلاً نداشتم! (که خب معمولاً خیلیا همینطوری هستن). این شد که یک وضعیت بحرانی پیش اومد و من به از تمام اکانتهای گیتهابم اومده بودم بیرون. تنها راه دسترسی به اکانتم هم یه PAT یا (Personal Access Token) بود که به سختی ساعتها گشتم تا پیداش کنم و در نهایت تونستم وارد بشم. ولی این اتفاق به من یادآوری کرد که چقدر مهمه چند تا نکته امنیتی ساده رو برای اکانت گیتهابمون فعال کنیم تا مثل من یهو از زندگی ناامید نشین!
1- سیو کردن ریکاوری کدها
اولین و مهمترین چیزی که باید انجام بدید اینه که ریکاوری کدها رو دانلود کنید و حتما یه جایی ذخیره کنید. نوشتن اونا توی جایی که به راحتی بهش دسترسی داشته باشید (مثلاً یه فایل امن یا یه اپ مخصوص ذخیرهسازی پسورد) خیلی میتونه کمککننده باشه. این کار رو حتما انجام بدید که اگر روزی روزگاری به اپ 2FA دسترسی نداشتید، راحت بتونید وارد بشید.
2- فعال کردن SSH
یکی دیگه از کارهایی که به شدت توصیه میکنم، فعال کردن SSH برای اکانت گیتهاب هست. این کار کمک میکنه که بدون نیاز به وارد کردن پسورد یا توکن، بتونید به راحتی به گیتهاب دسترسی پیدا کنید.
نحوه فعال سازی SSH:
- ابتدا باید یک کلید SSH بسازید (با استفاده از
ssh-keygen در ترمینال).- بعد از ساخت کلید، باید اون رو به گیتهاب اضافه کنید از طریق تنظیمات SSH Keys در گیتهاب.
3- اکسس توکن (PAT)
همچنین به جای استفاده از پسورد برای احراز هویت، میتونید از اکسس توکنها (PAT) استفاده کنید. این توکنها برای ارتباط امنتر با گیتهاب خیلی مفید هستند.
نحوه فعال سازی PAT:
- به تنظیمات اکانت گیتهاب برید.
- در قسمت Developer Settings، گزینه Personal Access Tokens رو پیدا کنید.
- توکن جدید بسازید و سطوح دسترسی مورد نظر رو انتخاب کنید.
مهم:
اگر هیچ کدوم از این روشها رو برای اکانتتون فعال نکردید، گیتهاب هیچ تضمینی نمیده که بتونید اکانتتون رو بازیابی کنید. نهایتاً ممکنه مجبور میشید ایمیل رو unlink کنید و یه اکانت جدید بسازید، ولی حتی در این صورت هم تاریخچه کامیتها و اطلاعات دیگه رو ممکنه از دست بدید.
#github
@CodeModule
Forwarded from Linuxor ?
یکی از روش هایی که میتونین کد رو کنار متن بنویسید مارکدونه این ادیتور بهتون یه محیط پیشرفته میده که باهاش میتونین تقریبا هر چیزی رو نوت برداری کنید کد یا عکس یا جدول و فرمول داخلش بزارید :
https://github.com/marktext/marktext
@Linuxor
https://github.com/marktext/marktext
@Linuxor
Forwarded from Ninja Learn | نینجا لرن (Denver)
خب خب خب، Background Task ها توی FastAPI🚀
گاهی اوقات نیاز داریم که یه کاری بعد از ارسال پاسخ به کاربر انجام بشه. مثل ارسال ایمیل خوشامد گویی، ثبت لاگ یا آمار توی دیتابیس، پردازش فایل آپلود شده و .... توی این شرایط میتونیم از Background Task ها استفاده کنیم، اینجوری میتونیم بدون معطل کردن کاربر اون کارهارو جداگانه انجام بدیم.
استفاده از Background Task ها🛠
خب اول باید کلاس
حالا FastAPI میاد یه آبجکت با نوع
بعد از اینکه فانکشن تسکمون رو ایجاد کردیم میتونیم با استفاده از متود
Background Tasks و Dependency injection💉
Background Tasks به خوبی با سیستم تزریق وابستگی FastAPI سازگاره. میتونیم توی سطح های مختلف برنامه(فانکشن route، یه وابستگی و...) از Background Task استفاده کنیم.
توی این مثال بعد از اینکه پاسخ به کلاینت ارسال شد، یه تسک میاد ایمیل کاربر رو توی فایل
نکته مهم⚠️
این ابزار فقط برای کارهای سبک وسریع مناسبه. مثل همین لاگ نوشتن، ارسال ایمیل یا پردازش های خیلی کوچیک و سبک. برای کارهای سنگین تر مثل پردازش تصویر بهتره که از سیستم هایی مثل Celery استفاده بشه.
جمع بندی✍️
Background Task یه ابزار ساده ولی کاربردیه. میتونه توی پروژه هایی که تسک های سنگینی ندارن از Celery بی نیازتون کنه و کارهارو بعد از پاسخ دهی به صورت غیرهمزمان انجام بده.
➖➖➖➖➖➖➖➖➖➖
گاهی اوقات نیاز داریم که یه کاری بعد از ارسال پاسخ به کاربر انجام بشه. مثل ارسال ایمیل خوشامد گویی، ثبت لاگ یا آمار توی دیتابیس، پردازش فایل آپلود شده و .... توی این شرایط میتونیم از Background Task ها استفاده کنیم، اینجوری میتونیم بدون معطل کردن کاربر اون کارهارو جداگانه انجام بدیم.
استفاده از Background Task ها🛠
خب اول باید کلاس
BackgroundTasks رو ایمپورت کنیم و یه پارامتر از همین نوع برای فانکشن route بنویسیم.from fastapi import BackgroundTasks, FastAPI
app = FastAPI()
def write_notification(email: str, message=""):
with open("log.txt", mode="w") as email_file:
content = f"notification for {email}: {message}"
email_file.write(content)
@app.post("/send-notification/{email}")
async def send_notification(email: str, background_tasks: BackgroundTasks):
background_tasks.add_task(write_notification, email, message="some notification")
return {"message": "Notification sent in the background"}
حالا FastAPI میاد یه آبجکت با نوع
BackgroundTasks برامون ایجاد میکنه و به اون پارامتر پاس میده.بعد از اینکه فانکشن تسکمون رو ایجاد کردیم میتونیم با استفاده از متود
()add_task از همون پارامتر اون فانکشن رو به صف اجرا اضافه کنیم. همچنین میتونیم آرگومان های مورد نیازمون رو هم با استفاده از همین متود به تسکمون پاس بدیم.Background Tasks و Dependency injection💉
Background Tasks به خوبی با سیستم تزریق وابستگی FastAPI سازگاره. میتونیم توی سطح های مختلف برنامه(فانکشن route، یه وابستگی و...) از Background Task استفاده کنیم.
from typing import Annotated
from fastapi import BackgroundTasks, Depends, FastAPI
app = FastAPI()
def write_log(message: str):
with open("log.txt", mode="a") as log:
log.write(message)
def get_query(background_tasks: BackgroundTasks, q: str | None = None):
if q:
message = f"found query: {q}\n"
background_tasks.add_task(write_log, message)
return q
@app.post("/send-notification/{email}")
async def send_notification(
email: str, background_tasks: BackgroundTasks, q: Annotated[str, Depends(get_query)]
):
message = f"message to {email}\n"
background_tasks.add_task(write_log, message)
return {"message": "Message sent"}
توی این مثال بعد از اینکه پاسخ به کلاینت ارسال شد، یه تسک میاد ایمیل کاربر رو توی فایل
log.txt مینویسه. اگه یه کوئری پارامتر هم به API ارسال بشه یه تسک دیگه اون رو هم توی فایل مینویسه.نکته مهم⚠️
این ابزار فقط برای کارهای سبک وسریع مناسبه. مثل همین لاگ نوشتن، ارسال ایمیل یا پردازش های خیلی کوچیک و سبک. برای کارهای سنگین تر مثل پردازش تصویر بهتره که از سیستم هایی مثل Celery استفاده بشه.
جمع بندی✍️
Background Task یه ابزار ساده ولی کاربردیه. میتونه توی پروژه هایی که تسک های سنگینی ندارن از Celery بی نیازتون کنه و کارهارو بعد از پاسخ دهی به صورت غیرهمزمان انجام بده.
#️⃣ #fastapi #python #backend
➖➖➖➖➖➖➖➖➖➖
🥷🏻 CHANNEL | GROUP
Forwarded from تهلاگ / Tehlug
جامعهی تهلاگ با کمکهای داوطلبانهی اعضاش زندهست؛ حمایت شما میتونه تأثیر زیادی تو رشد و پیشرفت این جمع دوستداشتنی داشته باشه. از طریق فرم زیر میتونید آمادگی خودتون رو برای کمک اعلام کنید.
🔗 tally.so/r/wA0aLy
@TehranLUG
🔗 tally.so/r/wA0aLy
@TehranLUG
اگر عزیزی پستی رو جایی منتشر کرده که این حجم ممبر اومده
نهایت تشکر رو میکنم😁❤️
نهایت تشکر رو میکنم😁❤️
😁3
Forwarded from Webinarfarsi | Soheib Kiani | وبینار فارسی
لیست 15 نکته مهم حین کار با GIT
زیاد دیدم از اینا ترجیح دادم مواردی رو که خودم بهتر درک میکنم رو اینجا بنویسم
1. بگو چرا این کار رو انجام دادی
❌ننویس اضافه کردن endpoint
✅ بنویس اضافه کردن endpoint برای اینکه کاربران بتونن سوابق خریدشون رو دانلود کنن
2. فقط بگو چی کار میکنه، نه چطوری
❌ ننویس رنگ دکمه رو با تغییر فایل CSS عوض کردم
✅ بنویس رنگ دکمه اصلی رو برای Contrast بهتر عوض کن
3. از زمان حال استفاده کن و به شکل دستور بده
❌ ننویس حذف کردم
✅ بنویس حذف کن
4. لینک آیتم کار رو اضافه کن
❌ ننویس باگ ورود رو وقتی کاربر غیرفعال باشه تعمیر کن
✅ بنویس d342da: باگ ورود رو وقتی کاربر غیرفعال باشه تعمیر کن
5. نام فایلها رو ننویس، چون تو جزئیات Git هستن
❌ ننویس وابستگیها رو در package.json بهروزرسانی کن
✅ بنویس وابستگیها رو برای حل مشکلات امنیتی بهروزرسانی کن
6. توضیح بده که این تغییر چطور به پروژه کمک میکنه
❌ ننویس اضافه کردن فیلد جدید به فرم
✅ بنویس اضافه کردن فیلد جدید به فرم برای بهبود تجربه کاربری
7. از کلمات کلیدی استفاده کن تا جستجوی کامیتها راحتتر باشه
❌ ننویس تغییرات کوچکی انجام دادم
✅ بنویس بهروزرسانی عملکرد جستجو برای بهبود سرعت
8. اگر تغییرات چندگانه داری، کامیتها رو جدا جدا بنویس
❌ ننویس همه چیز رو بهروزرسانی کردم
✅ بنویس بهروزرسانی عملکرد جستجو و بهروزرسانی رنگ دکمهها
9. اگر تغییرات مربوط به یک ایشو خاصه، اون رو مشخص کن
❌ ننویس باگ رو تعمیر کردم
✅ بنویس d1234: باگ رو تعمیر کردم
10. سعی کن کامیتهات کوتاه و واضح باشن
❌ ننویس یک تغییر خیلی بزرگ و پیچیده انجام دادم که توضیحش سخته
✅ بنویس بهروزرسانی عملکرد اصلی برنامه برای بهبود کارایی
11. از استفاده از کلمات عام و کلی خودداری کن
❌ ننویس تغییرات انجام دادم
✅ بنویس بهروزرسانی عملکرد جستجو برای بهبود سرعت
12. کامیتها رو به زبان سوم شخص ننویس
❌ ننویس او باگ رو تعمیر کرد
✅ بنویس باگ تعمیر شد
13. از استفاده از علائم تعجب یا خنده در کامیتها خودداری کن
❌ ننویس باگ رو تعمیر کردم!!!
✅ بنویس باگ تعمیر شد
14. کامیتها رو به صورت سوال ننویس
❌ ننویس آیا باگ رو تعمیر کردم؟
✅ بنویس باگ تعمیر شد
15. از استفاده از عبارات طولانی و پیچیده در کامیتها خودداری کن
❌ ننویس یک تغییر بسیار پیچیده و مهم انجام دادم که توضیحش خیلی طولانیه
✅ بنویس بهروزرسانی عملکرد اصلی برنامه برای بهبود کارایی
منتظر پیشنهادات شما هستم، اگر با توضیحات بالا هم موافق نیستید شما ایده آل خودتون رو بنویسید
کانال تلگرامی ارتقای برنامه نویسی:
https://news.1rj.ru/str/webinar_farsi
زیاد دیدم از اینا ترجیح دادم مواردی رو که خودم بهتر درک میکنم رو اینجا بنویسم
1. بگو چرا این کار رو انجام دادی
❌ننویس اضافه کردن endpoint
✅ بنویس اضافه کردن endpoint برای اینکه کاربران بتونن سوابق خریدشون رو دانلود کنن
2. فقط بگو چی کار میکنه، نه چطوری
❌ ننویس رنگ دکمه رو با تغییر فایل CSS عوض کردم
✅ بنویس رنگ دکمه اصلی رو برای Contrast بهتر عوض کن
3. از زمان حال استفاده کن و به شکل دستور بده
❌ ننویس حذف کردم
✅ بنویس حذف کن
4. لینک آیتم کار رو اضافه کن
❌ ننویس باگ ورود رو وقتی کاربر غیرفعال باشه تعمیر کن
✅ بنویس d342da: باگ ورود رو وقتی کاربر غیرفعال باشه تعمیر کن
5. نام فایلها رو ننویس، چون تو جزئیات Git هستن
❌ ننویس وابستگیها رو در package.json بهروزرسانی کن
✅ بنویس وابستگیها رو برای حل مشکلات امنیتی بهروزرسانی کن
6. توضیح بده که این تغییر چطور به پروژه کمک میکنه
❌ ننویس اضافه کردن فیلد جدید به فرم
✅ بنویس اضافه کردن فیلد جدید به فرم برای بهبود تجربه کاربری
7. از کلمات کلیدی استفاده کن تا جستجوی کامیتها راحتتر باشه
❌ ننویس تغییرات کوچکی انجام دادم
✅ بنویس بهروزرسانی عملکرد جستجو برای بهبود سرعت
8. اگر تغییرات چندگانه داری، کامیتها رو جدا جدا بنویس
❌ ننویس همه چیز رو بهروزرسانی کردم
✅ بنویس بهروزرسانی عملکرد جستجو و بهروزرسانی رنگ دکمهها
9. اگر تغییرات مربوط به یک ایشو خاصه، اون رو مشخص کن
❌ ننویس باگ رو تعمیر کردم
✅ بنویس d1234: باگ رو تعمیر کردم
10. سعی کن کامیتهات کوتاه و واضح باشن
❌ ننویس یک تغییر خیلی بزرگ و پیچیده انجام دادم که توضیحش سخته
✅ بنویس بهروزرسانی عملکرد اصلی برنامه برای بهبود کارایی
11. از استفاده از کلمات عام و کلی خودداری کن
❌ ننویس تغییرات انجام دادم
✅ بنویس بهروزرسانی عملکرد جستجو برای بهبود سرعت
12. کامیتها رو به زبان سوم شخص ننویس
❌ ننویس او باگ رو تعمیر کرد
✅ بنویس باگ تعمیر شد
13. از استفاده از علائم تعجب یا خنده در کامیتها خودداری کن
❌ ننویس باگ رو تعمیر کردم!!!
✅ بنویس باگ تعمیر شد
14. کامیتها رو به صورت سوال ننویس
❌ ننویس آیا باگ رو تعمیر کردم؟
✅ بنویس باگ تعمیر شد
15. از استفاده از عبارات طولانی و پیچیده در کامیتها خودداری کن
❌ ننویس یک تغییر بسیار پیچیده و مهم انجام دادم که توضیحش خیلی طولانیه
✅ بنویس بهروزرسانی عملکرد اصلی برنامه برای بهبود کارایی
منتظر پیشنهادات شما هستم، اگر با توضیحات بالا هم موافق نیستید شما ایده آل خودتون رو بنویسید
کانال تلگرامی ارتقای برنامه نویسی:
https://news.1rj.ru/str/webinar_farsi
Telegram
Webinarfarsi | Soheib Kiani | وبینار فارسی
کانال کاریابی و ارتقای برنامه نویسان
حمایت از ما
https://www.coffeete.ir/soheibkiani
کانال یوتیوب
https://shorturl.at/aSxJk
حمایت از ما
https://www.coffeete.ir/soheibkiani
کانال یوتیوب
https://shorturl.at/aSxJk
Forwarded from Byteforge / بایــت فورج 🛸
اجرای کانتینر بدون داکر! | تبدیل Docker Image به فایل اجرایی با dockerc .
یه ابزار متن بازه که تصاویر داکر رو به فایل اجرایی مستقل تبدیل میکنه ؛ بدون نیاز به نصب داکر یا دسترسی root . این ابزار اجرای کانتینرها رو بسیار سادهتر و قابلحملتر میکنه .
آپشن هایی که بهتون میده :
یه مثال اولیه :
نحوه نصب با استفاده از zig :
ریپو پروژه :
dockerc
یه ابزار متن بازه که تصاویر داکر رو به فایل اجرایی مستقل تبدیل میکنه ؛ بدون نیاز به نصب داکر یا دسترسی root . این ابزار اجرای کانتینرها رو بسیار سادهتر و قابلحملتر میکنه .
آپشن هایی که بهتون میده :
تبدیل Docker Image به فایل اجرایی (standalone)
اجرا بدون نیاز به داکر یا دسترسی root
پشتیبانی از معماریهای x86_64 و ARM64
قابل اجرا روی لینوکس، مک و ویندوز
امکان تعریف متغیر محیطی و Mount کردن ولو
یه مثال اولیه :
dockerc --image docker://oven/bun --output bun
نحوه نصب با استفاده از zig :
git clone --recurse-submodules https://github.com/NilsIrl/dockerc.git
cd dockerc
zig build -Doptimize=ReleaseSafe -Dtarget=x86_64-linux-musl
ریپو پروژه :
https://github.com/NilsIrl/dockerc
#tools
#dockerc
#byteforge
@byteforge_chan 🛸
GitHub
GitHub - NilsIrl/dockerc: container image to single executable compiler
container image to single executable compiler. Contribute to NilsIrl/dockerc development by creating an account on GitHub.
🔥1
Forwarded from Datafog
Web Check چیست؟
Web Check یک ابزار رایگان و آنلاین است که به شما امکان میدهد در مدت زمانی کوتاه، اطلاعات فنی و امنیتی کاملی از هر وبسایتی به دست آورید. تنها کافیست آدرس سایت مورد نظر را وارد کنید و این ابزار، گزارش جامعی را برای شما تولید میکند.
مواردی که بررسی میکنه :
نحوه تست و استفاده :
اینجا میتونه مفید واقع بشه :
@datafogg
Web Check یک ابزار رایگان و آنلاین است که به شما امکان میدهد در مدت زمانی کوتاه، اطلاعات فنی و امنیتی کاملی از هر وبسایتی به دست آورید. تنها کافیست آدرس سایت مورد نظر را وارد کنید و این ابزار، گزارش جامعی را برای شما تولید میکند.
مواردی که بررسی میکنه :
آدرس IP و تنظیمات DNS
گواهینامههای SSL و نسخههای TLS
پورتهای باز و مسیر شبکه (Traceroute)
تنظیمات ایمیل دامنه (MX Record)
فایلهای robots.txt و sitemap.xml
کوکیها و هدرهای HTTP
فناوریها و فریمورکهای استفادهشده در سایت
اطلاعات دامنه (WHOIS) و رتبه جهانی سایت
بررسی وجود سایت در لیستهای سیاه امنیتی
وضعیت هدایت (ریدایرکت) و در دسترس بودن سایت
نحوه تست و استفاده :
وارد سایت web-check.as93.net بشید
آدرس وبسایت مورد نظرتونو وارد کنید
اینجا میتونه مفید واقع بشه :
بررسی امنیت و تنظیمات فنی سایت خود یا مشتری
تحلیل ساختار سایت رقبا
جمعآوری اطلاعات برای پروژههای تحلیل اطلاعات (OSINT)
یادگیری مفاهیم امنیت وب برای دانشجویان و علاقهمندان به حوزه سایبری
#cybersecurity #osint #public_data #webcheck
@datafogg
🔥1