EverCode
39 subscribers
6 photos
1 video
3 files
14 links
اینجا راجب کامپیوتر، نرم افزار، زبان‌ها و مطالب مرتبط با هم گپ میزنیم
Download Telegram
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 descriptors 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
2👍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
👍32
Hands_On_Network_Programming_with_C_and_NET_Core2019,_Packt_Publishing.pdf
6.7 MB
درک اینکه سی شارپ و فریمورکی که باهاش کار میکنیم برای ارتباط با شبکه چه ابزارهایی بهمون میده، چه حجم کار رو خودش دست میگیره و چه چیزهایی رو برای ما پشت abstraction قرار میده جزو چیزهاییه که در دراز مدت بعنوان توسعه دهنده خیلی به کارمون میاد. این کتاب نسبتا کوتاه میتونه دید خیلی خوبی بهمون بده.
اولاش خیلی کنده و سعی میکنه دید شبکه‌ای بهمون بده و میاد لایه‌های OSI رو توضیح میده و برامون مشخص میکنه که چرا بعنوان یک Network Porgrammer اکثر کارهامون تو لایه‌ی ۷ یعنی لایه‌ی Application  انجام میشه و اینکه چرا هر لایه باید به لایه‌ی قبلش اعتماد کنه تا اطلاعاتی که نیاز داره رو براش فراهم کنه.
بنظرم مبحث جذابیه و خیلی به یک زبان خاص محدود نمیشه. خلاصه به قول خارجیا:
It's an interesting read!

@ever_code
🔥3
EverCode
Hands_On_Network_Programming_with_C_and_NET_Core2019,_Packt_Publishing.pdf
خب متوجه شدم که این کتاب متاسفانه با دات نت کور 3 کار میکنه و کلاس های اصلی که یه سری جاها استفاده میکنه توی دات نت 8 به بعد deprecate شدن. برای مثال این کتاب میاد HttpWebRequest رو یاد میده که توی دات نت 8 دیگه استفاده نمیشه. البته خیلی اطلاعات جالبی بدست آوردم که چرا این اتفاق افتاده و بعدا بیشتر توضیح میدم راجبش.
و اینکه به زودی یه مرجع بهتر برای مطالعه برنامه نویسی شبکه با سی شارپ معرفی میکنم. البته جا داره بگم که حداقل 4 فصل اولش و یه سری فصلاش به صورت مبحثی واقعا جای خوندن داره و چون قدیمیه دلیل بد بودنش نیست. حتی کامل خوندنش هم بد نیست چون ما همیشه شاید با آخرین نسخه دات نت کار نکنیم و صد البته با خوندنش بهتر متوجه دلیل حذف شدنش میشیم

@ever_code
👏3
آخرین روزای من تو کارگزاری مفید بود که یکی از همکارام بهم پیشنهاد داد که کورس های Mehmet Ozkaya که داخل Udemy میذاره رو ببینم راجب Microservice ، DDD و ...
منم یه دو ماهی هست که دوره
.NET 8 Microservices DDD, CQRS, VerticalClean Architecture 2024

را شروع کردم که واقعاً به معنای واقعی عالیه برای کسی که یه مدتی رو پروژه های مختلفی کار کرده و دنبال اینه که به ذهنش یه نظمی بده در توسعه نرم افزار.
الان جای جدیدی که دارم کار میکنم خیلی سعی میکنم از چیز هایی که یادمیگیرم استفاده کنم و به صورت موضوعی با همکارام به اشتراک بذارم
فعلاً این کورس رو داشته باشید من یک سری چک نویس از دوره دارم حالا سعی میکنم تیکه تیکه به اشتراک بذارمش و استفاده کنید 😎✌️
2👍2
Forwarded from .NET Fun
Media is too big
VIEW IN TELEGRAM
یکی از پیچیده‌ترین و در عین حال پرکاربردترین الگوهایی که برای مدیریت تراکنش‌های توی میکروسرویس‌ها و سیستم‌های توزیع‌شده استفاده می‌شه، الگوی Saga هست. این الگو کلی مزیت داره، از جمله:

- می‌تونیم یک Transaction بزرگ رو به چند کار کوچکتر تقسیم کنیم و اون رو مرحله به مرحله با مدیریت خوب جلو ببریم

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

- به سرویس‌های مختلف توی میکروسرویس‌هامون استقلال می‌ده و وابستگی‌ها رو کم می‌کنه (Loose Coupling)

- نسبت به روش‌های دیگه برای مدیریت تراکنش‌های توزیع‌شده راحت‌تره (مثلاً حتماً می‌دونید که Two Phase Commit چه دردسر بزرگیه!)

توی این ویدیو به بررسی کامل این الگو می‌پردازیم و توی یک پروژه واقعی با استفاده از Masstransit و ترکیب اون با RabbitMQ و EF Core پیاده‌سازیش می‌کنیم.

پ‌ن: آدرس ریپوی مربوط به کدهای این قسمت رو هم در انتها قرار دادم. اگه این ویدیو براتون جالب بود، ممنون میشم با دادن ⭐️ از اون حمایت کنید

Code Repo:
https://github.com/babaktaremi/OrderManagement.Saga.Example

Join: https://t.iss.one/DotNetIsFun
2
Forwarded from TechTube 𝕏 تک توب
دیسکورد حداکثر تعداد اعضای سرورهای دیسکوردی (گروه ها) رو از 2.5 میلیون کاربر به 25 میلیون کاربر افزایش داده و حالا جمعیت خیلی از کشورها میشه در هر سرور جا داد!

🔎 discord

📍 @TechTube
TechTube 𝕏 تک توب
دیسکورد حداکثر تعداد اعضای سرورهای دیسکوردی (گروه ها) رو از 2.5 میلیون کاربر به 25 میلیون کاربر افزایش داده و حالا جمعیت خیلی از کشورها میشه در هر سرور جا داد! 🔎 discord 📍 @TechTube
دیسکورد یکی از شرکت‌های خیلی قوی از لحاظ فنی هست. توصیه میکنم بلاگ فنی سایتش رو نگاه کنید، هم تحلیل های سیستم دیزاین میزاره و هم اینکه چالش های فنی‌شون رو چجوری حل میکنن. خیلی جذابه

@ever_code
انقدر ایده برای پست و ویدیو دارم و وقتم کمه که نصفش یادم میره و حتی نمیرسم بنویسم جایی🤦‍♂
3
واقعا باعث میشه قدر کسانی که بطور مستمر تولید محتوا میکنن، بخصوص ویدیویی رو بیشتر بدونم. در کنار این همه مشغله و کار اینکه یه تایم قابل توجهی رو برای مخاطبمون بزاریم و بی منت دانشمون رو، هرچقدرم کم به بقیه انتقال بدیم واقعا کار بزرگیه. من یکی که حداقل خیلی سود بردم از این کارشون و بدون اونا جایی نمی‌رسیدم
3