Forwarded from DevTwitter | توییت برنامه نویسی
یه هلپری هست که میتونید تاریخ فارسی رو اضافه کنید به چارت های amchart
البته پول ریکوئست زدم گفتن که تحریم هستیم نمیتونیم اضافه کنیم
https://github.com/mohammadhasananisi/amcharts5
@DevTwitter | <Mohammad Hasan/>
البته پول ریکوئست زدم گفتن که تحریم هستیم نمیتونیم اضافه کنیم
https://github.com/mohammadhasananisi/amcharts5
@DevTwitter | <Mohammad Hasan/>
Forwarded from a pessimistic researcher (Kc)
"صحبتی با دانشجویان رشتهی ریاضی"
من اولین باری که توی علوم کامپیوتر، ریاضی واقعی دیدم سر دیتابیس بود. و اونجا واقعا برام ریاضی جدی شد. یکمی که جلوتر رفتم، یه روز سر کلاس مهندسی نرمافزار ۲ استاد روحانی، صحبت ازفرمال متد شد. ایشون یه جملهای گفت که چند سال طول کشید تا من به واقعیتش پی ببرم. اگر بخوام واژه به واژه نقل قول کنم حرفشون این بود : کسی که ریاضی بلد نیست نباید توی Software زر بزنه :) برخلاف ادعایی که بچههای هوش مصنوعی دارن و فکر میکنن از همه بیشتر ریاضی میفهمن و استفاده میکنن، سافتور همش ریاضیه. ریاضیش هم خرکیه :) عمری بچههای هوش مصنوعی ریاضیش رو نمیفهمن.
شاید اون لحظه هیچکس با حرفای ایشون در کلاس موافق نبود. شاید الانم هم خیلیهاتون با حرفاش موافق نباشید، ولی از اون زمان میتونم بگم که روز به روز باورم به این عقیده در حال بیشتر شدنه. ببینید تئوری علوم کامپیوتر به عقیدهی من یکی از نزدیکترین شاخههای علوم بنیادی به ریاضیات هست. شماها تو کارشناسی و ارشد کلی جبر و ترکیبیات و گراف و احتمال و معادلات دیفرانسیل و توپولوژی و منطق و نظریه اعداد میخونید. بچههای علوم کامپیوتر شاید حتی ۱۰ درصد مطالبی که شما یاد میگیرید رو بلد نیستن منتهی با همین ۱۰ درصد وارد مقاطع بالاتر میشن و حتی کار ریسرچشون میشه تئوری علوم کامپیوتر. تصور کنید اگر شما با این دانش ریاضی برید سراغ نظریه محاسبه، آتوماتا و نظریه پیچیدگی اون وقت چه کارهای خارق العادهای که نمیتونید انجام بدید. جهت جلوگیری از ایجاد ابهام خدایی نکرده من نمیخوام بگم رشتهی علوم کامپیوتر از ریاضی محض بهتره، منتهی میگم که یک مسیری هست که خیلی بهش بیتوجهی میشه. تئوری علوم کامپیوتر ۲ تِرک داره. توی این پست مفصل راجع بهش صحبت کردم. ترک B علوم کامپیوتر که بنده و دیگر دوستانم درش کار میکنیم به شدت مهجور مونده و شما صرفا با یادگیری سه تا چهار درس جدید میتونید واردش بشید. این صرفا یک دعوته به مسیری که خیلی از هم رشتهای های شما بهش ورود نمیکنند و به نظرم بزرگترین دلیلش نبود اساتید حاذق در حوزهی TCS B در ایرانه. این نکته هم گفتنیست که خیلی از اساتید ترک B تئوری علوم کامپیوتر دنبال دانشجوهایی هستند که بکگراند ریاضی داشته باشن و ریاضی محض خونده باشه.
در آخر برای دادن کمی انگیزه شما رو دعوت میکنم که این مقالات رو بررسی کنید و ببینید که چطور نظریه اعداد و هندسه جبری در مسائل ترک B مورد استفاده قرار گرفتن.
On the p-adic Skolem Problem
On the Monniaux Problem in Abstract Interpretation
The Monadic Theory of Toric Words
هر ۳ این مقالات نتیجهی کارهای اخیر آقای Joël Ouaknine به همراه دانشجویان و همکاران شون هستش.
من اولین باری که توی علوم کامپیوتر، ریاضی واقعی دیدم سر دیتابیس بود. و اونجا واقعا برام ریاضی جدی شد. یکمی که جلوتر رفتم، یه روز سر کلاس مهندسی نرمافزار ۲ استاد روحانی، صحبت ازفرمال متد شد. ایشون یه جملهای گفت که چند سال طول کشید تا من به واقعیتش پی ببرم. اگر بخوام واژه به واژه نقل قول کنم حرفشون این بود : کسی که ریاضی بلد نیست نباید توی Software زر بزنه :) برخلاف ادعایی که بچههای هوش مصنوعی دارن و فکر میکنن از همه بیشتر ریاضی میفهمن و استفاده میکنن، سافتور همش ریاضیه. ریاضیش هم خرکیه :) عمری بچههای هوش مصنوعی ریاضیش رو نمیفهمن.
شاید اون لحظه هیچکس با حرفای ایشون در کلاس موافق نبود. شاید الانم هم خیلیهاتون با حرفاش موافق نباشید، ولی از اون زمان میتونم بگم که روز به روز باورم به این عقیده در حال بیشتر شدنه. ببینید تئوری علوم کامپیوتر به عقیدهی من یکی از نزدیکترین شاخههای علوم بنیادی به ریاضیات هست. شماها تو کارشناسی و ارشد کلی جبر و ترکیبیات و گراف و احتمال و معادلات دیفرانسیل و توپولوژی و منطق و نظریه اعداد میخونید. بچههای علوم کامپیوتر شاید حتی ۱۰ درصد مطالبی که شما یاد میگیرید رو بلد نیستن منتهی با همین ۱۰ درصد وارد مقاطع بالاتر میشن و حتی کار ریسرچشون میشه تئوری علوم کامپیوتر. تصور کنید اگر شما با این دانش ریاضی برید سراغ نظریه محاسبه، آتوماتا و نظریه پیچیدگی اون وقت چه کارهای خارق العادهای که نمیتونید انجام بدید. جهت جلوگیری از ایجاد ابهام خدایی نکرده من نمیخوام بگم رشتهی علوم کامپیوتر از ریاضی محض بهتره، منتهی میگم که یک مسیری هست که خیلی بهش بیتوجهی میشه. تئوری علوم کامپیوتر ۲ تِرک داره. توی این پست مفصل راجع بهش صحبت کردم. ترک B علوم کامپیوتر که بنده و دیگر دوستانم درش کار میکنیم به شدت مهجور مونده و شما صرفا با یادگیری سه تا چهار درس جدید میتونید واردش بشید. این صرفا یک دعوته به مسیری که خیلی از هم رشتهای های شما بهش ورود نمیکنند و به نظرم بزرگترین دلیلش نبود اساتید حاذق در حوزهی TCS B در ایرانه. این نکته هم گفتنیست که خیلی از اساتید ترک B تئوری علوم کامپیوتر دنبال دانشجوهایی هستند که بکگراند ریاضی داشته باشن و ریاضی محض خونده باشه.
در آخر برای دادن کمی انگیزه شما رو دعوت میکنم که این مقالات رو بررسی کنید و ببینید که چطور نظریه اعداد و هندسه جبری در مسائل ترک B مورد استفاده قرار گرفتن.
On the p-adic Skolem Problem
On the Monniaux Problem in Abstract Interpretation
The Monadic Theory of Toric Words
هر ۳ این مقالات نتیجهی کارهای اخیر آقای Joël Ouaknine به همراه دانشجویان و همکاران شون هستش.
Forwarded from Agora (Alireza Azadi)
a pessimistic researcher
"صحبتی با فارغ التحصیلان مقطع کارشناسی" صحبتم با شما بزرگواران خیلی کوتاهه :) اگر میخواید تو آکادمیک بمونید، هر طوری شده اپلای کنید. ارشد خوندن تو ایران با شرایطی که اساتید دانشگاهامون دارن کار سختیه. خیلی از دوستام رو میشناسم که مثل خودم معتقدن با ارشد خوندن…
یک خاطرهی شخصی منم بگم در راستای حرف kc:
وقتی که شایان رفت آلبرتا (سال ۹۵-۹۶)، به نظرم خیلی زود بود. ۱۷ سالش بود و واسه بچلر رفت (من ۱۹ سالم بود). تقریبا هر بار که باهم ویدیو کال میکردیم بهم میگفت که واسه ارشد ایران نمون. من همیشه فکر میکردم شاش شایان تنده. هرچی گذشت و رفت و رفت دیدم که هیچچیز شبیه به دورانی نیست که نسلهای قبل ما واسه phd میرفتند. حتی اونهایی که این رو بهونه میکردن که فقط خارج بشند. و دیدن این تغییر اصلا نیازمند بصیرت خاصی نبود. شایان تنها کسی بود که تو دانشگاه و توی اطرافیانم رفته بود. درواقع تنها کسی بود تو اطرافیانم که اینقدر نزدیک بود که میتونستم ازش بیپرده اطلاعات بگیرم.
آخرش هم واسه مستر رفتم و دیدم که خیلیهای دیگه هم واسه مستر رفتند و میرند و من خبر نداشتم.
هرچند که من درس و دانشگاه رو ول کردم (و این داستانیه مفصل که چرا اینطور شد) ولی از این که دیرتر نرفتم خوشحالم.
پینوشت: مخاطب حرفم، کسایی نیستند که تصمیم گرفتند بمونند. یا حتی شرایط رفتند رو به هر دلیلی ندارند. مخاطب حرفم کساییند که میخوان برن ولی تو دوراهی کلاسیک ارشد خوندن تو ایران و phd رفتن یا بیرون از ایران مستر خوندن موندند.
پینوشت دو: احساس میکنم خیلی وقته که این تصمیم واسه خیلیها از قبل گرفته شدهس. گواهش هم تعداد ورودیهای جدید که میخوان از همون دانشگاه کارشناسی من واسه ارشد برند در قیاس با باهمورودیهای خودم که میخواستند برند. اختلاف عجیب و غریب زیاده و البته که این هم طبیعیه.
وقتی که شایان رفت آلبرتا (سال ۹۵-۹۶)، به نظرم خیلی زود بود. ۱۷ سالش بود و واسه بچلر رفت (من ۱۹ سالم بود). تقریبا هر بار که باهم ویدیو کال میکردیم بهم میگفت که واسه ارشد ایران نمون. من همیشه فکر میکردم شاش شایان تنده. هرچی گذشت و رفت و رفت دیدم که هیچچیز شبیه به دورانی نیست که نسلهای قبل ما واسه phd میرفتند. حتی اونهایی که این رو بهونه میکردن که فقط خارج بشند. و دیدن این تغییر اصلا نیازمند بصیرت خاصی نبود. شایان تنها کسی بود که تو دانشگاه و توی اطرافیانم رفته بود. درواقع تنها کسی بود تو اطرافیانم که اینقدر نزدیک بود که میتونستم ازش بیپرده اطلاعات بگیرم.
آخرش هم واسه مستر رفتم و دیدم که خیلیهای دیگه هم واسه مستر رفتند و میرند و من خبر نداشتم.
هرچند که من درس و دانشگاه رو ول کردم (و این داستانیه مفصل که چرا اینطور شد) ولی از این که دیرتر نرفتم خوشحالم.
پینوشت: مخاطب حرفم، کسایی نیستند که تصمیم گرفتند بمونند. یا حتی شرایط رفتند رو به هر دلیلی ندارند. مخاطب حرفم کساییند که میخوان برن ولی تو دوراهی کلاسیک ارشد خوندن تو ایران و phd رفتن یا بیرون از ایران مستر خوندن موندند.
پینوشت دو: احساس میکنم خیلی وقته که این تصمیم واسه خیلیها از قبل گرفته شدهس. گواهش هم تعداد ورودیهای جدید که میخوان از همون دانشگاه کارشناسی من واسه ارشد برند در قیاس با باهمورودیهای خودم که میخواستند برند. اختلاف عجیب و غریب زیاده و البته که این هم طبیعیه.
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
🔶 ریزش ۴۰۰ میلیونی کاربران ویندوز
بر اساس گزارش ZDNET، کاربران بهتدریج استفاده از کامپیوترهای شخصی را کنار میگذارند و به گوشیها و تبلتهای قدرتمندتر روی میآورند. بازار مصرفی اصلی ویندوز اکنون به گیمرها و متخصصانی محدود شده که به نرمافزارهای خاص ویندوز وابستهاند. همهگیری کرونا باعث رشد موقتی فروش رایانهها شده بود؛ اما روند کلی کاهش تقاضا ادامه دارد.
#خبر
@TheRaymondDev
بر اساس گزارش ZDNET، کاربران بهتدریج استفاده از کامپیوترهای شخصی را کنار میگذارند و به گوشیها و تبلتهای قدرتمندتر روی میآورند. بازار مصرفی اصلی ویندوز اکنون به گیمرها و متخصصانی محدود شده که به نرمافزارهای خاص ویندوز وابستهاند. همهگیری کرونا باعث رشد موقتی فروش رایانهها شده بود؛ اما روند کلی کاهش تقاضا ادامه دارد.
#خبر
@TheRaymondDev
ZDNET
400 million Windows PCs vanished in 3 years. Where did they all go?
Back in 2019, the global PC market was showing signs of shrinking. Then the pandemic came along and made PCs and Macs relevant again. New data from Microsoft suggests that the PC market has resumed its steady decline.
Forwarded from Shayan GeeDook🐧
لیست mirrorهای ارائهشده توسط سایتهای ایرانی
معرفی پروژه:
یک مجموعهی جامع و سریع از میرورهای عمومی نرمافزاری و مخازن بستههای نرمافزاری داخل کشور ایران است.
هدف این پروژه فراهمکردن دسترسی آسان، سریع و پایدار به بستههای نرمافزاری بهروزشده برای توسعهدهندگان، شرکتها و کاربران ایرانی است.
این پروژه لیستی کامل و بهروز از میرورهای داخلی بستههای نرمافزاری معتبر فراهم کرده که در شرایط محدودیت اینترنت بینالملل میتونه دسترسی سریع، پایداری بالا و ادامه فعالیت بدون قطعی رو ممکن کنه — بهخصوص در شرایط نت ملی یا قطعی اینترنت خارجی.
با تشکر از حمایتهاتون!
با تشکر از آرمان طاهری بابت چندین لینک میرور
https://github.com/GeeDook/mirava
@shayangeedook
معرفی پروژه:
یک مجموعهی جامع و سریع از میرورهای عمومی نرمافزاری و مخازن بستههای نرمافزاری داخل کشور ایران است.
هدف این پروژه فراهمکردن دسترسی آسان، سریع و پایدار به بستههای نرمافزاری بهروزشده برای توسعهدهندگان، شرکتها و کاربران ایرانی است.
این پروژه لیستی کامل و بهروز از میرورهای داخلی بستههای نرمافزاری معتبر فراهم کرده که در شرایط محدودیت اینترنت بینالملل میتونه دسترسی سریع، پایداری بالا و ادامه فعالیت بدون قطعی رو ممکن کنه — بهخصوص در شرایط نت ملی یا قطعی اینترنت خارجی.
با تشکر از حمایتهاتون!
با تشکر از آرمان طاهری بابت چندین لینک میرور
https://github.com/GeeDook/mirava
@shayangeedook
GitHub
GitHub - GeeDook/mirava: Mirava is a curated list of Iranian package mirrors, providing reliable and fast access to essential software…
Mirava is a curated list of Iranian package mirrors, providing reliable and fast access to essential software resources within Iran. - GeeDook/mirava
Forwarded from DevTwitter | توییت برنامه نویسی
بعد از جنگ اولین روزیه که تونستم خودم را جمع کنم، یکم کد بزنم، کار پژوهشی را شروع کنم، جلسه بگذارم و بچه های گروه را جمع کنم که کار پروژه را پیش ببریم.
نتیجه کدکلک هام شد اسکریپت کوچیک زیر برای این که از اطلاعات پاورپوینت در Chat GPT استفاده کنید.
https://github.com/Ho3seinTork/Slide-to-Markdown
@DevTwitter | <Diss Obedience/>
نتیجه کدکلک هام شد اسکریپت کوچیک زیر برای این که از اطلاعات پاورپوینت در Chat GPT استفاده کنید.
https://github.com/Ho3seinTork/Slide-to-Markdown
@DevTwitter | <Diss Obedience/>
Forwarded from Linuxor ?
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
Media is too big
VIEW IN TELEGRAM
🔶 اگر قصد دارید با ویرایشگر Neovim پروژه لاراول توسعه دهید این ویدئو را ببینید.
برای نئوویم افزونه لاراول منتشر شده است.
Neovim Config: https://github.com/adibhanna/nvim
Laravel Plugin: https://github.com/adibhanna/laravel.nvim
#لاراول
@TheRaymondDev
برای نئوویم افزونه لاراول منتشر شده است.
Neovim Config: https://github.com/adibhanna/nvim
Laravel Plugin: https://github.com/adibhanna/laravel.nvim
#لاراول
@TheRaymondDev
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
Media is too big
VIEW IN TELEGRAM
🔶 اگر قصد دارید با ویرایشگر Neovim پروژه لاراول توسعه دهید این ویدئو را ببینید.
برای نئوویم افزونه لاراول منتشر شده است.
Neovim Config: https://github.com/adibhanna/nvim
Laravel Plugin: https://github.com/adibhanna/laravel.nvim
#لاراول
@TheRaymondDev
برای نئوویم افزونه لاراول منتشر شده است.
Neovim Config: https://github.com/adibhanna/nvim
Laravel Plugin: https://github.com/adibhanna/laravel.nvim
#لاراول
@TheRaymondDev
Forwarded from یک برنامه نویس تنبل (Lazy 🌱)
Media is too big
VIEW IN TELEGRAM
🔶 اگر قصد دارید با ویرایشگر Neovim پروژه لاراول توسعه دهید این ویدئو را ببینید.
برای نئوویم افزونه لاراول منتشر شده است.
Neovim Config: https://github.com/adibhanna/nvim
Laravel Plugin: https://github.com/adibhanna/laravel.nvim
#لاراول
@TheRaymondDev
برای نئوویم افزونه لاراول منتشر شده است.
Neovim Config: https://github.com/adibhanna/nvim
Laravel Plugin: https://github.com/adibhanna/laravel.nvim
#لاراول
@TheRaymondDev
Forwarded from Linuxor ?
برادرا خواهرا وقتی میآین پی وی سوالی چیزی بپرسین واقعا لازم نیست احول پرسی اینا کنین هر روز مجبورم کلی احوال پرسی کنم و میدونم قصد شما هم از روی خیره ولی من اصلا ناراحت نمیشم که بگم وای فلانی احوال پرسی نکرد؛ سوالتون رو مستقیم و رک حتی "بدون سلام" بپرسین در حد خودم راهنمایی میکنم منو مثل هوش مصنوعی در نظر بگیرید من هر روز میآم یه تعدادی سوال واضح رو جواب میدم و دیگه درگیر حاشیه ها نمیشم خلاصه اگه دیدین بعضی حرف هاتون رو جواب نمیدم ناراحت نشین چون زیاده مجبورم فقط سوالات واضح رو جواب بدم❤️
@Linuxor
@Linuxor
Forwarded from Curious Geek ⚡️
Forwarded from Gopher Academy
🔵 عنوان مقاله
Eliminating Dead Code in Go Projects
🟢 خلاصه مقاله:
در سال 2023، تیم توسعهدهنده زبان برنامهنویسی Go ابزاری بنام "deadcode tool" را منتشر کرد که به شناسایی کدهای غیرقابل دسترس یا مرده در پروژههای نرمافزاری کمک میکند. این ابزار با اسکن کدهای Go، قسمتهایی که هرگز اجرا نمیشوند را شناسایی کرده و به توسعهدهندگان در حذف آنها کمک میکند. استفاده از این ابزار موجب بهبود عملکرد و خوانایی برنامهها شده و بازخورد مثبتی از جامعه توسعهدهندگان دریافت کرده است. این ابزار همچنین در بهینهسازی سیستمهای قدیمی و در زمان بازنویسیهای اساسی بسیار مفید است.
🟣لینک مقاله:
https://golangweekly.com/link/170933/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
Eliminating Dead Code in Go Projects
🟢 خلاصه مقاله:
در سال 2023، تیم توسعهدهنده زبان برنامهنویسی Go ابزاری بنام "deadcode tool" را منتشر کرد که به شناسایی کدهای غیرقابل دسترس یا مرده در پروژههای نرمافزاری کمک میکند. این ابزار با اسکن کدهای Go، قسمتهایی که هرگز اجرا نمیشوند را شناسایی کرده و به توسعهدهندگان در حذف آنها کمک میکند. استفاده از این ابزار موجب بهبود عملکرد و خوانایی برنامهها شده و بازخورد مثبتی از جامعه توسعهدهندگان دریافت کرده است. این ابزار همچنین در بهینهسازی سیستمهای قدیمی و در زمان بازنویسیهای اساسی بسیار مفید است.
🟣لینک مقاله:
https://golangweekly.com/link/170933/web
➖➖➖➖➖➖➖➖
👑 @gopher_academy
mfbmina.dev
Eliminating dead code in Go projects
As the software we work on grows, the code tends to undergo various changes and refactorings. During this process, we might simply forget pieces of code that were once used but no longer make sense in the project, the infamous dead code. A very common example…
Forwarded from یک برنامه نویس تنبل ( MΞ)
GitHub
GitHub - barnamenevisi/free-resources: آرشیو منابع رایگان آموزش برنامه نویسی به زبان فارسی ( هر کسی باید بتونه برنامه نویسی رو…
آرشیو منابع رایگان آموزش برنامه نویسی به زبان فارسی ( هر کسی باید بتونه برنامه نویسی رو یاد بگیره، مهم نیست پول داره یا نداره، به امید اینکه کسی به خاطر نداشتن پول از آموزش عقب نمونه ) - barnamenev...
Forwarded from linuxtnt(linux tips and tricks) (hosein seilany https://seilany.ir/)
بررسی سلامت باتری لپتاپ در لینوکس
۱. دستورupower
✅ خروجی مهم:
-
-
-
۲. دستور
✅ مثال خروجی:
۳. روش فایلهای سیستمی (بدون نیاز به نصب ابزار)
💡 نکته: اگر دستورها کار نکردند، بستههای
۱. دستورupower
upower -i /org/freedesktop/UPower/devices/battery_BAT0 | grep -E "capacity|state|percentage"
✅ خروجی مهم:
-
percentage: درصد شارژ فعلی -
capacity: سلامت باتری (%) -
state: وضعیت (شارژ/دشارژ) ۲. دستور
acpi (ساده و سریع) acpi -i
✅ مثال خروجی:
Battery 0: Full, 100%
Battery 0: design capacity 5000 mAh, last full capacity 4500 mAh = 90%
۳. روش فایلهای سیستمی (بدون نیاز به نصب ابزار)
echo " healthy: $(cat /sys/class/power_supply/BAT0/capacity)%"
💡 نکته: اگر دستورها کار نکردند، بستههای
acpi یا upower را نصب کنید: sudo apt install acpi upower # برای دبیان/اوبونتو
Forwarded from Gopher Academy
🔴قابلیت json/v2 ویژگی های جدید گولنگ نسخه 1.25
در Go 1.25، بستهٔ `json/v2` (همراه با
یک نسخهٔ اساسی و پیشرفتهتر نسبت به
🔑 مزایای کلیدی
1. انعطافپذیری در Marshal/Unmarshal
* دیگر محدود به یک رفتار یکنواخت نیستید؛ با
2. افزایش قابلتوجه در سرعت
* بهویژه در عملیات خواندن (unmarshal)، تا ۱۰ برابر سریعتر از نسخهٔ فعلی گزارش شده است .
3. این API جدید برای تولید و مصرف جریانهای داده
* امکان مستقیم خواندن از
4. ویژگیهای جدید همچون برچسبهای سفارشی و رفتار پیشفرض بهبود یافته
* امکانات گستردهای برای تنظیم سفارشی JSON وجود دارد (برچسبها، inlining، skip کردن فیلدها و غیره) .
✨ یک مثال مفهومی
فرض کنید میخواهید برای بولینها (
در این مثال:
*
*
* و رشتهٔ
📌 وضعیت کنونی و توصیهها
*این Experimental: این ویژگی آزمایشی است و باید با
* نسخه فعلی
* توصیه شده: پروژههایی که وابسته به عملکرد JSON هستند، با فعالسازی این flag تست شوند تا مشکلات ناسازگاری احتمالی شناسایی شود .
---
✅ جمعبندی
*این
* با قابلیتهایی مانند سفارشیسازی عمیق Marshal/Unmarshal و I/O مستقیم همراه است.
* هنوز آزمایشیست؛ اگر پروژهای دارید که نیاز به performance یا JSON پیچیدهتری دارد، توصیه میشود با
➖➖➖➖➖➖➖➖
👑 @gopher_academy
در Go 1.25، بستهٔ `json/v2` (همراه با
jsontext) معرفی شده استیک نسخهٔ اساسی و پیشرفتهتر نسبت به
encoding/json قبلی که با فعالسازی آزمایشی از طریق متغیر محیطی GOEXPERIMENT=jsonv2 کار میکند 🔑 مزایای کلیدی
json/v21. انعطافپذیری در Marshal/Unmarshal
* دیگر محدود به یک رفتار یکنواخت نیستید؛ با
MarshalToFunc و UnmarshalFromFunc میتوانید رفتار سفارشی خود را برای هر نوع داده بنویسید 2. افزایش قابلتوجه در سرعت
* بهویژه در عملیات خواندن (unmarshal)، تا ۱۰ برابر سریعتر از نسخهٔ فعلی گزارش شده است .
3. این API جدید برای تولید و مصرف جریانهای داده
* امکان مستقیم خواندن از
io.Reader و نوشتن به io.Writer فراهم شده (MarshalWrite, UnmarshalRead) بدون نیاز به شیء Encoder/Decoder جداگانه.4. ویژگیهای جدید همچون برچسبهای سفارشی و رفتار پیشفرض بهبود یافته
* امکانات گستردهای برای تنظیم سفارشی JSON وجود دارد (برچسبها، inlining، skip کردن فیلدها و غیره) .
✨ یک مثال مفهومی
فرض کنید میخواهید برای بولینها (
bool) بهجای true/false از کاراکترهای ویژه مثل ✓ و ✗ استفاده کنید.import (
"fmt"
"encoding/json/v2"
"encoding/json/v2/jsontext"
)
// Marshal custom برای bool:
boolMarshaler := json.MarshalToFunc(
func(enc *jsontext.Encoder, val bool) error {
if val {
return enc.WriteToken(jsontext.String("✓"))
}
return enc.WriteToken(jsontext.String("✗"))
},
)
// Marshal برای stringهای شبیه bool:
strMarshaler := json.MarshalToFunc(
func(enc *jsontext.Encoder, val string) error {
if val == "on" || val == "true" {
return enc.WriteToken(jsontext.String("✓"))
}
if val == "off" || val == "false" {
return enc.WriteToken(jsontext.String("✗"))
}
return json.SkipFunc
},
)
marshalers := json.JoinMarshalers(boolMarshaler, strMarshaler)
vals := []any{true, "off", "hello"}
data, err := json.Marshal(vals, json.WithMarshalers(marshalers))
fmt.Println(string(data), err)
// خروجی: ["✓","✗","hello"]
در این مثال:
*
true به ✓*
"off" به ✗* و رشتهٔ
"hello" به حالت پیشفرض تبدیل میشود 📌 وضعیت کنونی و توصیهها
*این Experimental: این ویژگی آزمایشی است و باید با
GOEXPERIMENT=jsonv2 فعال شود* نسخه فعلی
encoding/json وقتی flag فعال باشد از json/v2 استفاده میکند و عملکرد قدیمی حفظ شده تا سازگاری کامل برقرار شود ([github.com][5]).* توصیه شده: پروژههایی که وابسته به عملکرد JSON هستند، با فعالسازی این flag تست شوند تا مشکلات ناسازگاری احتمالی شناسایی شود .
---
✅ جمعبندی
*این
json/v2 در Go 1.25 یک نسخهی کاملاً بازطراحیشده است: سریعتر، انعطافپذیرتر و پیشرفتهتر.* با قابلیتهایی مانند سفارشیسازی عمیق Marshal/Unmarshal و I/O مستقیم همراه است.
* هنوز آزمایشیست؛ اگر پروژهای دارید که نیاز به performance یا JSON پیچیدهتری دارد، توصیه میشود با
GOEXPERIMENT=jsonv2 امتحانش کنید.➖➖➖➖➖➖➖➖
👑 @gopher_academy
Forwarded from DevTwitter | توییت برنامه نویسی
اینم برای دوستانی که مک دارن و میخوان با راست کلیک برنامه های مختلف رو باز کنن
۳ تا نمونه گذاشتم بقیه رو هم میتونید الگو برداری کنید و بزنید
https://github.com/mohammadhasananisi/mac-os-quick-action
@DevTwitter | <Mohammad Hasan/>
۳ تا نمونه گذاشتم بقیه رو هم میتونید الگو برداری کنید و بزنید
https://github.com/mohammadhasananisi/mac-os-quick-action
@DevTwitter | <Mohammad Hasan/>
Forwarded from Linuxor ?
یه نفر یه API میکروسرویس کاملاً نیتیو برای فضای ابری ساخته : Auth با Laravel، مدیریت لیست شغلها با Flask، و اپلای کردن با FastAPI. امنیتش با JWT هندل میشه و Redis برای نگهداری JTI استفاده شده تا توکنها قابل ابطال باشن. برای هندل کردن ترافیک، Traefik رو آورده وسط با امکاناتی مثل rate limiting، circuit breaker و کلی middleware جذاب.
دیپلوی کامل روی AWS EKS انجام شده، CI با Jenkins و CD با ArgoCD به صورت اتومات پیادهسازی شده. یه معماری تمیز و حرفهای برای اپهای مقیاسپذیر توی فضای میکروسرویس.
کدش اینجاست دوست داشتین برین یه چکی کنید :
github.com/EmmyAnieDev/Job-Microservice
@Linuxor
دیپلوی کامل روی AWS EKS انجام شده، CI با Jenkins و CD با ArgoCD به صورت اتومات پیادهسازی شده. یه معماری تمیز و حرفهای برای اپهای مقیاسپذیر توی فضای میکروسرویس.
کدش اینجاست دوست داشتین برین یه چکی کنید :
github.com/EmmyAnieDev/Job-Microservice
@Linuxor
Forwarded from code2 - تکنولوژی و فناوری
🛡💻 چکلیست کامل و حرفهای ایمنسازی سرورهای HPE Gen9
اگر از سرورهای HPE ProLiant Gen9 استفاده میکنید (یکی از پرکاربردترین نسلها)، بدون ایمنسازی صحیح، میتونن تبدیل به نقطه ضعف بزرگی در شبکه شما بشن. این چکلیست کامل، شما رو از لایه سختافزار تا نرمافزار و شبکه پوشش میده.
✅ ۱. امنیت فیزیکی
🔒 اولین خط دفاعی همیشه فیزیکی هست!
سرورها در دیتاسنتر یا اتاق سرور با دسترسی محدود و دوربین مداربسته.
قفل فیزیکی رکها.
ثبت ورود و خروجها (لاگ فیزیکی یا کارتخوان).
✅ ۲. ایمنسازی iLO (Integrated Lights-Out)
🎛 کنترل از راه دور اگر درست مدیریت نشه، تبدیل به خطر جدی میشه.
آپدیت iLO به آخرین نسخه موجود (برای Gen9 معمولا iLO 4).
محدود کردن دسترسی به iLO به شبکه مدیریت اختصاصی یا محدوده IP مشخص.
غیرفعال کردن پروتکلها و سرویسهای غیرضروری:
غیرفعال کردن SSL/TLS قدیمی (مثل TLS 1.0 و 1.1).
غیرفعال کردن SNMP اگر نیاز ندارید یا استفاده از SNMPv3.
غیرفعال کردن Virtual Media در صورت عدم نیاز.
استفاده از پسوردهای قوی و پیچیده (حداقل ۱۵ کاراکتر، ترکیبی).
غیرفعال کردن حسابهای پیشفرض و ایجاد حسابهای نقشمحور.
فعال کردن لاگ و آلارمها، و بررسی مداوم رخدادها.
تنظیم Timeout برای سشنها.
اگر امکانپذیر، اتصال iLO به سیستمهای مانیتورینگ مرکزی (SIEM).
✅ ۳. سیستم BIOS و ROM
⚙️ کنترل مستقیم سختافزار از طریق BIOS خطرناکترین نقطه حمله.
آپدیت BIOS و System ROM به آخرین نسخه (برای جلوگیری از آسیبپذیریهای فریمور).
فعالسازی Secure Boot برای جلوگیری از بوت شدن سیستم با کدهای مخرب.
فعال کردن TPM برای پشتیبانی از رمزنگاری سطح پایین و تشخیص تغییرات غیرمجاز.
تنظیم پسورد قوی برای BIOS/ROM.
غیرفعال کردن سختافزارها و پورتهای غیرضروری (مثل Serial Port، USB جلو در صورت عدم نیاز).
✅ ۴. ایمنسازی سیستمعامل
🖥 چه ویندوز چه لینوکس، سیستمعامل بدون پچ = خطر جدی.
بروزرسانی مداوم سیستمعامل و نصب وصلههای امنیتی.
غیرفعال کردن سرویسها و پکیجهای غیرضروری (اصل مینیمالیسم).
محدود کردن حسابهای ادمین و استفاده از Principle of Least Privilege (کمترین سطح دسترسی).
فعالسازی فایروال و تعریف دقیق رولها.
استفاده از آنتیویروس/EDR معتبر و آپدیتشده.
غیرفعال کردن پروتکلهای قدیمی مثل SMBv1، Telnet، FTP.
فعالسازی لاگگیری کامل (auditd در لینوکس یا Windows Event Logs).
پیادهسازی رمزنگاری دیسک کامل (BitLocker، LUKS، یا معادل).
✅ ۵. سختگیری در سطح Hypervisor (اگر استفاده میکنید)
☁️ برای مجازیسازی، ایمنسازی Hypervisor حیاتیست.
آپدیت مرتب به آخرین نسخه ESXi، Hyper-V، یا KVM.
جدا کردن شبکه مدیریت Hypervisor از شبکه عمومی (Management VLAN).
محدود کردن دسترسی مدیریتی با استفاده از ACL یا VPN.
استفاده از RBAC (Role-Based Access Control) برای کنترل دسترسیها.
غیر فعال کردن سرویسهای اضافی مانند SSH (یا محدود به IP مشخص).
ایمنسازی vMotion، Storage vMotion و کنسول VM با VLAN مجزا.
فعال کردن لاگهای دقیق و مانیتورینگ تغییرات.
✅ ۶. ایمنسازی ذخیرهسازی و کنترلر RAID
💽 داده = ارزشمندترین دارایی.
آپدیت فریمور کنترلر RAID و هاردها به آخرین نسخه.
استفاده از ویژگی Secure Erase هنگام جایگزینی یا ریتایر هارد.
استفاده از دیسکهای Self-Encrypting (SED) یا رمزنگاری نرمافزاری.
ایزوله کردن شبکه SAN یا NAS و محدود کردن دسترسی با zoning.
✅ ۷. ایمنسازی شبکه
🌐 ورود به شبکه = ورود به قلب سیستم.
استفاده از VLAN برای جداسازی: Management، Production، Backup، Storage.
تعریف ACL دقیق برای محدود کردن دسترسی بین VLANها.
غیرفعال کردن پورتهای غیرضروری روی سوئیچها و سرورها.
استفاده از Port Security یا 802.1X روی سوئیچها.
مانیتور کردن ترافیک با IDS/IPS یا سیستمهای NDR.
✅ ۸. مانیتورینگ، هشدار و نگهداری
📡 امنیت بدون مانیتورینگ = بیمعنی.
یکپارچهسازی لاگها با SIEM (مثل Splunk، ELK، QRadar).
فعالسازی SNMPv3 و محدود کردن سرور مانیتورینگ به IP مشخص.
تعریف آلارم برای رخدادهای بحرانی (مثل دسترسی غیرمجاز یا تلاشهای ناموفق).
مرور دورهای بولتنهای امنیتی HPE و سیستمعامل.
✅ ۹. بکاپ و بازیابی
🌀 همیشه فرض کنید روزی حمله رخ میدهد.
داشتن بکاپ منظم و تست شده (Full, Incremental, Snapshot).
رمزنگاری بکاپها (در transit و at rest).
نگهداری نسخههای آفلاین یا immutable (ضد باجافزار).
تعریف و تست مرتب سناریو Disaster Recovery.
✅ ۱۰. مستندسازی و مدیریت تغییرات
🗂 نداشتن مستند یعنی نداشتن امنیت واقعی.
ثبت دقیق تمام تنظیمات و تغییرات.
داشتن فرآیند Change Management با تایید مدیر امنیت یا CTO.+
مستندسازی سیاستهای دسترسی، رمز عبور، و بهروزرسانیها.
آموزش تیم فنی درباره رویههای امنیتی.
@code2_ir
اگر از سرورهای HPE ProLiant Gen9 استفاده میکنید (یکی از پرکاربردترین نسلها)، بدون ایمنسازی صحیح، میتونن تبدیل به نقطه ضعف بزرگی در شبکه شما بشن. این چکلیست کامل، شما رو از لایه سختافزار تا نرمافزار و شبکه پوشش میده.
✅ ۱. امنیت فیزیکی
🔒 اولین خط دفاعی همیشه فیزیکی هست!
سرورها در دیتاسنتر یا اتاق سرور با دسترسی محدود و دوربین مداربسته.
قفل فیزیکی رکها.
ثبت ورود و خروجها (لاگ فیزیکی یا کارتخوان).
✅ ۲. ایمنسازی iLO (Integrated Lights-Out)
🎛 کنترل از راه دور اگر درست مدیریت نشه، تبدیل به خطر جدی میشه.
آپدیت iLO به آخرین نسخه موجود (برای Gen9 معمولا iLO 4).
محدود کردن دسترسی به iLO به شبکه مدیریت اختصاصی یا محدوده IP مشخص.
غیرفعال کردن پروتکلها و سرویسهای غیرضروری:
غیرفعال کردن SSL/TLS قدیمی (مثل TLS 1.0 و 1.1).
غیرفعال کردن SNMP اگر نیاز ندارید یا استفاده از SNMPv3.
غیرفعال کردن Virtual Media در صورت عدم نیاز.
استفاده از پسوردهای قوی و پیچیده (حداقل ۱۵ کاراکتر، ترکیبی).
غیرفعال کردن حسابهای پیشفرض و ایجاد حسابهای نقشمحور.
فعال کردن لاگ و آلارمها، و بررسی مداوم رخدادها.
تنظیم Timeout برای سشنها.
اگر امکانپذیر، اتصال iLO به سیستمهای مانیتورینگ مرکزی (SIEM).
✅ ۳. سیستم BIOS و ROM
⚙️ کنترل مستقیم سختافزار از طریق BIOS خطرناکترین نقطه حمله.
آپدیت BIOS و System ROM به آخرین نسخه (برای جلوگیری از آسیبپذیریهای فریمور).
فعالسازی Secure Boot برای جلوگیری از بوت شدن سیستم با کدهای مخرب.
فعال کردن TPM برای پشتیبانی از رمزنگاری سطح پایین و تشخیص تغییرات غیرمجاز.
تنظیم پسورد قوی برای BIOS/ROM.
غیرفعال کردن سختافزارها و پورتهای غیرضروری (مثل Serial Port، USB جلو در صورت عدم نیاز).
✅ ۴. ایمنسازی سیستمعامل
🖥 چه ویندوز چه لینوکس، سیستمعامل بدون پچ = خطر جدی.
بروزرسانی مداوم سیستمعامل و نصب وصلههای امنیتی.
غیرفعال کردن سرویسها و پکیجهای غیرضروری (اصل مینیمالیسم).
محدود کردن حسابهای ادمین و استفاده از Principle of Least Privilege (کمترین سطح دسترسی).
فعالسازی فایروال و تعریف دقیق رولها.
استفاده از آنتیویروس/EDR معتبر و آپدیتشده.
غیرفعال کردن پروتکلهای قدیمی مثل SMBv1، Telnet، FTP.
فعالسازی لاگگیری کامل (auditd در لینوکس یا Windows Event Logs).
پیادهسازی رمزنگاری دیسک کامل (BitLocker، LUKS، یا معادل).
✅ ۵. سختگیری در سطح Hypervisor (اگر استفاده میکنید)
☁️ برای مجازیسازی، ایمنسازی Hypervisor حیاتیست.
آپدیت مرتب به آخرین نسخه ESXi، Hyper-V، یا KVM.
جدا کردن شبکه مدیریت Hypervisor از شبکه عمومی (Management VLAN).
محدود کردن دسترسی مدیریتی با استفاده از ACL یا VPN.
استفاده از RBAC (Role-Based Access Control) برای کنترل دسترسیها.
غیر فعال کردن سرویسهای اضافی مانند SSH (یا محدود به IP مشخص).
ایمنسازی vMotion، Storage vMotion و کنسول VM با VLAN مجزا.
فعال کردن لاگهای دقیق و مانیتورینگ تغییرات.
✅ ۶. ایمنسازی ذخیرهسازی و کنترلر RAID
💽 داده = ارزشمندترین دارایی.
آپدیت فریمور کنترلر RAID و هاردها به آخرین نسخه.
استفاده از ویژگی Secure Erase هنگام جایگزینی یا ریتایر هارد.
استفاده از دیسکهای Self-Encrypting (SED) یا رمزنگاری نرمافزاری.
ایزوله کردن شبکه SAN یا NAS و محدود کردن دسترسی با zoning.
✅ ۷. ایمنسازی شبکه
🌐 ورود به شبکه = ورود به قلب سیستم.
استفاده از VLAN برای جداسازی: Management، Production، Backup، Storage.
تعریف ACL دقیق برای محدود کردن دسترسی بین VLANها.
غیرفعال کردن پورتهای غیرضروری روی سوئیچها و سرورها.
استفاده از Port Security یا 802.1X روی سوئیچها.
مانیتور کردن ترافیک با IDS/IPS یا سیستمهای NDR.
✅ ۸. مانیتورینگ، هشدار و نگهداری
📡 امنیت بدون مانیتورینگ = بیمعنی.
یکپارچهسازی لاگها با SIEM (مثل Splunk، ELK، QRadar).
فعالسازی SNMPv3 و محدود کردن سرور مانیتورینگ به IP مشخص.
تعریف آلارم برای رخدادهای بحرانی (مثل دسترسی غیرمجاز یا تلاشهای ناموفق).
مرور دورهای بولتنهای امنیتی HPE و سیستمعامل.
✅ ۹. بکاپ و بازیابی
🌀 همیشه فرض کنید روزی حمله رخ میدهد.
داشتن بکاپ منظم و تست شده (Full, Incremental, Snapshot).
رمزنگاری بکاپها (در transit و at rest).
نگهداری نسخههای آفلاین یا immutable (ضد باجافزار).
تعریف و تست مرتب سناریو Disaster Recovery.
✅ ۱۰. مستندسازی و مدیریت تغییرات
🗂 نداشتن مستند یعنی نداشتن امنیت واقعی.
ثبت دقیق تمام تنظیمات و تغییرات.
داشتن فرآیند Change Management با تایید مدیر امنیت یا CTO.+
مستندسازی سیاستهای دسترسی، رمز عبور، و بهروزرسانیها.
آموزش تیم فنی درباره رویههای امنیتی.
@code2_ir