EverCode – Telegram
EverCode
96 subscribers
27 photos
3 videos
3 files
49 links
اینجا راجب کامپیوتر، نرم افزار، زبان‌ها و مطالب مرتبط با هم گپ میزنیم

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

dev.to/purejoymind

هم توی سایت شخصیم و هم توی دِو بلاگ هام رو میزارم.
Download Telegram
خب چندوقتی هست که دلم میخواست یجا داشته باشم و به مرور مطالب و نکات جالبی که میبینمو بنویسم توش. کم کم شروع میکنم.😁

@ever_code
1🍾1
این کتاب برای یادگیری مباحث احراز هویت خیلی به من کمک کرد. تا قبلش همش گیج بودم که چیکار کنم oauth چیه؟ openid چیه؟
حجمش نسبتا کمه و خیلی خوب و جزئیات مناسب توضیح میده. توصیه میکنم نگاه کنین حتما!

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

@ever_code
👍3
اگه خبر واقعی باشه
R.I.P github

یکهو میبنی هوش مصنوعی برات اسم ریپو انتخاب میکنه. بدون اجازه کد میخونه میگه اونجاش خرابه میخای عوض کنی؟!

@TorhamDevCH
💔2🤔1
Forwarded from APPXA free
حذف تبلیغات سایت ها و بازکردن محتوای پولی سایت ها مانند مدیوم
https://12ft.io
Bypass Medium Paywall
قبلی
@APPXA
2👍1
یکی از چیزایی که شاید ندونین اینه که اکثر ریپازیتوری های دات نت و مایکروسافت داکیومنت های خیلی خوبی دارن. برای مثال توی پروژه ی runtime رو اگه ببینین کلی اطلاعات جالب راجبش هست.
این هم یه تیکه از مستندات قدیمی تر هست که توی یه ریپازیتوری آرشیو شده ی مایکروسافت برای type system و میتونین اون ریپازیتوری هم ببینین و کلی اطلاعات بدرد بخور توشه.

@ever_code
🔥3
بعنوان یک توسعه دهنده دات نت و سی شارپ بد نیست language specification اش رو هم نگاهی بندازین. برای آشنایی بهتر با زبان و درک درست کار خوبیه و ثواب داره:
https://github.com/dotnet/csharpstandard

@ever_code
🔥1
یکی از تفاوت های سی شارپ با زبان های دیگه که Garbage Collector دارن مثل GO توی نوع bootstrapping اش هست.
حالا Bootstrapping چیه؟
برای مثال، اولین کامپایلر زبان GO با assembly توسعه داده شد، بعد از اون اومدن دوباره کامپایلر رو از اول و با خود زبان GO نوشتن. به این فرایند میگن Bootstrapping.
اما توی سی شارپ یکم قضیه فرق میکنه.
کامپایلر Roslyn با سی شارپ نوشته شده، اما یه بخش قابل توجهی از Common Language Runtime (CLR) با C/C++ نوشته شده. برای مثال یه بخشی از Library های Reflection با استفاده از قابلیت Interop ازین کدها استفاده میکنند و این یکی از دلایل قابل توجه برای کند بودن Reflection میشه.
البته باید بگم که همیشه هدف سرعت نیست. بحث Reflection از اول بصورت آگاهانه، در اهداف خودش سرعت بالا رو هدف قرار نداده و هدف دسترسی امن و قابل اطمینان به یکسری اطلاعات از سمت کامپایلر هست. بعدا مفصل راجب Reflection حرف میزنیم 😉

@ever_code
👍1🔥1
اون زمانی که ما در حال بحث کردنیم که وای چه زبانی برای فلان کار خوبه، سی شارپ برای این کار خوبه برای این بده، یکی اومده با همین سی شارپ یه shell language نوشته!
قسمت جذابش اینه که یه چیزی بین powershell و bash هست! خلاصه که سخت نگیرین، با همه‌ی زبان های general purpose میشه هرکاری کرد وگرنه اسمش اون نبود. اگه عشقش رو دارین و با یه زبان حال میکنین، چرا که نه؟ همه چیز به پرفورمنس و اینا نیست!

https://github.com/PaddiM8/elk

@ever_code
2
https://youtu.be/KZeIEiBrT_w

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

خیلی جالبه که یه سری کارها چجوری مسیر تاریخ رو عوض میکنن!

@ever_code
🔥2
خیلی ها از سینتکس minimal apiها خوششون میاد، اما خیلی ها شاید ندونن که این سینتکس از فریمورک express.js اومده و انقدر معروف شد تو یه دوره که خیلی از فریمورک‌ها سعی کردن ازش الهام بگیرن. اولین شغل برنامه‌نویسی که داشتم بک اند با node js و همین express بود. وقتی وارد دنیای دات نت شدم تازه دات نت ۶ اومده بود و این minimal api های عزیز هنوز اونقدر معروف نشده بودن. اما الان خیلی پیشرفت کردن. اولین باری که دیدمشون خیلی خوشحال شدم!
بنظرم خیلی چیز مثبتیه چون باعث میشه مرز بین زبان ها کم بشه. یادمه اولین بار که با Golang میخواستم یه سرویس بالا بیارم، فریمورک fiber رو پیدا کردم و انقدر سینتکسش آشنا بود که خیلی سریع و راحت تونستم یه پروژه تر تمیز بالا بیارم!
اینکه زبان ها و فریمورک ها از هم یاد میگیرن و تکامل پیدا میکنن اتفاق بشدت جذابیه برام.
بنظرم قشنگی minimal api همونطور که توی اسمشون هست مینیمال بودن و simplicity هست. برای تعریف یک endpoint شما خیلی راحت نیاز دارین فقط توی app تون map کنین:

app.MapGet("/echo", () => "Hello from Minimal Apis!");


آپشین دیگه‌ای که خیلی کاربردی هست قابلیت Group کردن endpointهاست:

var api = app.MapGroup("/api");
api.MapGet("/echo", () => "Hello from Minimal Apis!"); // /api/echo



یکی دیگه از نکاتی که راجب minimal api ها شاید جالب باشه بدونین هدف Microsoft از توسعه‌شون هست. از زبان David Fowler توسعه دهنده SignalR:

Minimal APIs was the final phase in breaking up the monolith MVC framework that was a carry-over from ASP.NET on .NET Framework into "pay for play" pieces that could be used to build applications that scale from a single endpoint to many endpoints in your web application. Over time, we refactored many of the features of MVC like action denoscriptors and routing, different types of filters, model binding, results etc into the core platform. This is one of the reasons why minimal APIs is faster, it's pay for play and less extensible than MVC (by design!).


به زبان خودمون، سعی کردن ماهیت قدیمی تر controller ها رو بشورن. توی minimal api ها نیازمندی ها رو به مرور و وقتی بهشون نیاز دارین اضافه میکنین.
از لحاظ پرفورمنس توی این لینک میتونین ببینین که با استفاده از BenchmarkDotNet و چندتا تست اساسی چه تفاوتی دارن. تفاوت پرفورمنس بین minimal api ها و controller ها خیلی زیاد نیست اما توی این تست ها minimal api ها همیشه یکم سریع تر بودن اما تفاوت اصلیشون توی مقدار memory allocation شون هست.

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

@ever_code
🔥2👍1
pact_minimal_apis_v2_net9.pdf
2.5 MB
اینم یه کتاب کوتاه برای Minimal api ها
@ever_code
🔥1
Forwarded from APPXA free
آموزش فعال کردن هوش‌مصنوعی کوپایلوت پرو ۲ ساله رایگان برای برنامه‌نویسی
Link

#code
@APPXA
2🔥1
بقول جادی اگر نمیخواین اطلاعاتی رو کسی بدونه، دیجیتالیش نکنین. این ویدیو یاد آور خیلی خوبی برای اینه که مقدار اطلاعاتی که یک نفر با OSINT میتونه ازتون پیدا کنه خیلی زیادتر و ترسناک تر از اونیه که فکرش رو میکنین. اگه یکی واقعا بخواد کاری باهاتون داشته باشه، خیلی راحت میتونه.
حالا OSINT چیه؟
Open Source Intelligence
به زبان خودمون میشه گشتن دنبال اطلاعات راجب هدفتون توی اینترنت. مثلا وقتی اسم یکی رو گوگل میکنین دارین OSINT انجام میدین.
خلاصه حواستون باشه چه اطلاعاتی راجب خودتون رو کجا قرار میدین 😉

https://youtu.be/xEdZwLRJttQ?si=OzbPXjuSnbeJYZPw

@ever_code
2🔥1
APPXA free
آموزش فعال کردن هوش‌مصنوعی کوپایلوت پرو ۲ ساله رایگان برای برنامه‌نویسی Link #code @APPXA
برای دوستانی که کنجکاو بودن با کارت دانشجویی خودم که دادم جی پی تی ترجمه کنه و تغییر بده تونستم approve بگیرم.
3👌1
Forwarded from Geek Alerts
کنگره آمریکا یه لایحه پیشنهاد داده که به دولت اجازه میده هکرهای خصوصی کلاه سفید استخدام کنه تا به هکرها و مجرمان سایبری حمله کنن و دارایی‌های دزدیده شده مردم رو پس بگیرن، توی متن لایحه اشاره شده وظایفی مثل «بازیابی دارایی‌های دزدیده شده، جلوگیری از حملات آینده و دفاع از زیرساخت‌های حیاتی» بهشون داده میشه.

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

احتمالش زیاد هست که تصویب بشه چون هر دو حزب آمریکا پشتیبانش هستن. یکی از دلایلش هم اینه که فقط تو ۳ سال گذشته ۱۶.۶ میلیارد دلار از دارایی‌ آمریکایی‌ها به خاطر کلاه‌برداری از دست رفتن. [L]

🤓 @geekalerts
Please open Telegram to view this post
VIEW IN TELEGRAM
2
یه چیز باحالی که توی کامیونیتی Go زیاد دیدم اینه که خیلی از دولوپر هاشون یه دستی هم به Rust زدن. این موضوع رو خیلی درک میکنم چون خود زبان Go خیلی حس Low-Level ای میده، با اینکه اونقدرا هم اونطوری نیست. از یجا به بعد، مغز آدم رو قلقلک میده که بره سمت Low-Level واقعی، یا حداقل بیشتر. این موضوع رو دوست دارم. دو سه تا کانال بزرگ و معروف توی یوتوب تا الان دیدم که تمرکز اصلیشون Go هست اما کنارش یه سری پلی لیست Rust هم دارن.

@ever_code
👍2
اخیرا درگیر یک VPS برای خودم بودم و میخواستم یکی دوتا سرویس رو توش با داکر بالا بیارم. احساس کردم یکی دوتا نکته‌ست که همیشه یادم میره برای همین سرچ کردم و خیلی زود به این ویدیوی خیلی خوب و کامل رسیدم.

https://youtu.be/F-9KWQByeU0?si=-JyJiBdDBdlKXCBh

از راه اندازی اولیه میگه. خودش VPS رو از Hostinger خریده اما از هرجا بگیرین فرقی نداره، برای راه اندازی SSH Key فقط خودتون باید انجام بدین که کار خیلی زیادی نداره. اگر خواستین بعدا یه توضیحی راجبش میدم.
یکی دیگه از دلایلی که خیلی با این ویدیو حال کردم اینه که از Traefik استفاده میکنه. یک Routing Engine که کارهای Reverse-Proxy و Gateway رو میتونین باهاش با ستاپ خیلی کم انجام بدین و توی این ویدیو کاملا قدرتش واضحه که چقدر کار رو آسون میکنه. حتی براتون SSL Certificate هم مدیریت میکنه و با دو خط توی فایل docker-compose میتونین HTTPS راه بندازین و HTTP رو بهش Redirect کنین!
من با استفاده از این اومدم n8n رو بردم پشت SSL تا بتونم از Webhookهاش توی پروداکشن استفاده کنم.

@ever_code
4👍1🔥1
EverCode
اخیرا درگیر یک VPS برای خودم بودم و میخواستم یکی دوتا سرویس رو توش با داکر بالا بیارم. احساس کردم یکی دوتا نکته‌ست که همیشه یادم میره برای همین سرچ کردم و خیلی زود به این ویدیوی خیلی خوب و کامل رسیدم. https://youtu.be/F-9KWQByeU0?si=-JyJiBdDBdlKXCBh از…
برای اینکه یه لیست از کارهایی که خودم انجام دادم بگم که بعدا راجبشون توضیح بیشتر بدم:
* SSH Hardening - Remove Password Login with SSH - Setup SSH Key
* Install TMux
* Install Docker
* Setup Portainer to manage docker
* Install and Config UFW (firewall) - Deny all incoming requests, then open ports for your own services

اینها کارهای اولیه‌ست، بقیه کارها مربوط به سرویس هایی هست که میخواین روی سرورتون بالا بیارین.

@ever_code
👍42