COMPΞZ 🧬
Ir al canal en Telegram
متخصص کامپیوتر و نرمافزار • سازنده • هنرمند و طراح • مجموعهدار • نویسنده • تحلیلگر • مشاور استارتاپی و ایدهپرداز 𐎲𐎴𐎠𐎼𐎴𐎫𐎹 𐏃𐎢𐎶𐎠𐎫𐎹 We create because the world deserves better code. https://linktr.ee/compez
Mostrar másEl país no está especificadoLa categoría no está especificada
394
Suscriptores
-124 horas
-17 días
+3230 días
Archivo de publicaciones
394
تازه ما ترکها از تورکها هم میکشیم اخه جالبش اینجاست! کاش فقط موضوع سیاست بود و این کله گندهها...یه مشت چپول یه مشت پانایدوئولوژی هم از اونور شدن موی دماغ.
394
ترامپ: مذاکرات با جمهوری اسلامی ایران به خوبی پیش میرود!جمع کن بابا مردک! عین میمون یه چیزو صد بار تکرار میکنی! تو از اینا منگولتر اوناهم از تو منگولتر! دو تا اورانگوتان یه دنیا رو مسخرهٔ خودشون کردن. اینهمه خرابی ویرانی به بار آوردین تازه رسیدین به نقطه سر خط! کل دنیا رو هم مسخرهٔ خودتون کردین. به هر سمت نگاه میکنم هیچ خیری برای این ملت نداشتین و ندارید و نخواهید داشت. توی قرووومساق که اینهمه ملت ملت میکنی سر تا پای ایرانیها رو تحریم کردی به بهونه حکومتش! حکومت کثافتمون هم به بهانهٔ امنیت مارو کرده تو گونی. یکی از یکی تهوعآورتر! کل ماجرا معامله روی منابع ایران است! هیچ ربطی هم به این ملت نداره. بیچاره ملت افتاده بین دو تا کره خر یکی از یکی نفهمتر... دلقکتر. طعم این منابع خوش کرده زیر زبونتون حق ملت رو از دو طرف دارید میکشید بالا با رسانه هم یه دنیارو گیج کردین که بیخبر باشن از اصل ماجرا... تورم هزار درصدی هم کردین تو پاچهٔ ملت یه چندر غاز هم میاندازید جلوشون که یوقتی نگن عه حق خدادادی و حلال واری ما از این منابع کو پس!!! غارتگران بیمصرف!
394
یه نکتهای بهتون بگم بد نیست در جریانش باشید.
سایتهایی مثل Reddit که بسیار حساس هستن به نوع انتقال دادهها، عموماً روی v2ray سختگیرانهتر عمل میکنن و در مراحل ورود یا ایجاد حساب احتمال رد شدن ارتباط هست.
یکی از دلایلی که من جنیکانکت رو ساختم حل این موضوع روی سرویسهای اپل بود که با حساسیت بسیاری ارتباط رو رد میکنن! مخصوصاً وقتی روی QUIC و HTTP/3 باشه.
مطمئن باشید خیلی جاها اگه کانفیگی روی v2ray درست کار نکنه، به واسطهٔ GC بسیار بهتر و مطمئنتر کار خواهد کرد. حتی اگه شما بدترین و مزخرفترین کانفیگ رو داشته باشید به واسطهٔ جنی خیلی بهتره وضعیتش.
دلیلش اینه که من اون پشت مشتا دامنه یا SNI رو دستکاری نمیکنم که هویت اتصال رو تغییر بدم و هیچ چیز اضافهای به هدرها تزریق نمیکنم! اتصال به صورت مطمئن و درست شکل میگیره چیزی که روی npv و امثالش یه مقدار کثیفتره و همون مشکلسازه.
برای همین حتی کسانی که برای خودشون سرور با معماری تونل معکوس دارن اگه امتحان کنن خواهند دید اتصالشون روی GC پایدارتره و بعد از ارسال اندکی داده قطع نمیشن یا xray از کار نمیافته.
از طرفی در نظر داشته باشید؛ این وضعیت فعلی شبکه به فیلترنت قبلی برگرده شک ندارم وضعیت و کیفیت ارتباط با جنیکانکت به مراتب بسیار بسیار بهتر از الآن هم خواهد شد.
چیزی که برای من مهمه افزایش ایمنی و ارتقاء پایداری هست! کیفها و ارتباطات با کوچیکترین چیز در خطره! چون خودم روی وب ۳ کار میکنم اهمیت این موضوع رو میدونم! اصلاً ۹۰٪ دلیل ساختن این ابزار تجربیات تلخ و گذشتهٔ خودم بود که به خاطر ارتباطات بد حسابهام هک شد.
پس چیزی که ساختم، برای دور زدن فیلتر یا تحریم شکن و اینجور چیزها نیست! اصلاً تعریف VPN در جهان (به جز ایران) امنیت و افزایش پایداریه نه فیلتر شکستن یا تحریم دور زدن نیست. هدفش تثبیت ارتباط و افزایش ایمنی هست این رو از سرویسهای معروف مثل ProtonVPN یا Nord میتونید ببینید.
نه فقط برای اینترنت بینالمللی بلکه برای اینترنت داخلی هم بخوایم به شبکه خصوصی و سازمانی خودمون وصل بشیم جنیکانکت بهترین گزینست.
بعداً خواهیم دید چه چیزهایی بهش اضافه میکنم حتی شاید برای همین شبکهٔ داخلی یه سری امکانات بهش اضافه کنم که ملت درگیر DNSهای آلوده نشن و به راحتی ارتباطشون در داخل هم با برنامههای داخلی به خوبی و درست عمل کنه!
حتی یکی از مباحثی که مردم همیشه شاکی هستن عدم دسترسی درست به مخازن Qt هست که همیشه با شکن و امثال اینها درگیرن و باز هم نتیجه درستی نمیگیرن! دلایل من از ساخت این ابزار حل این مسائل هست که در بعد حرفهای تر بسیار مهمه.
دلیل اصلی من هم برای این تصمیم این بود که یه برنامه داشته باشیم نه صد تا برنامه چینی که هیچ کدومشون هم به درد چیزی نمیخورن.
394
یه نکتهٔ آموزشی هم بگم؛ وقتی برای اپلیکیشنتون یک آیکون اصلی با فرمت PNG دارید، بهتره خروجیهای مناسب هر پلتفرم رو هم از همون فایل بسازید.
مثلاً برای macOS باید فایل
.icns داشته باشید، برای Windows فایل .ico و برای لینوکس یا Preview معمولاً همون .png کافیه.
داخل ترمینال، از مسیر پروژه این دستورات رو بزنید:
rm -rf App.iconset
mkdir App.iconset
sips -z 16 16 App.png --out App.iconset/icon_16x16.png
sips -z 32 32 App.png --out App.iconset/icon_16x16@2x.png
sips -z 32 32 App.png --out App.iconset/icon_32x32.png
sips -z 64 64 App.png --out App.iconset/icon_32x32@2x.png
sips -z 128 128 App.png --out App.iconset/icon_128x128.png
sips -z 256 256 App.png --out App.iconset/icon_128x128@2x.png
sips -z 256 256 App.png --out App.iconset/icon_256x256.png
sips -z 512 512 App.png --out App.iconset/icon_256x256@2x.png
sips -z 512 512 App.png --out App.iconset/icon_512x512.png
sips -z 1024 1024 App.png --out App.iconset/icon_512x512@2x.png
iconutil -c icns App.iconset -o App.icns
برای Windows هم اگر ImageMagick نصب باشد:
brew install imagemagick
magick App.png \
-define icon:auto-resize=256,128,64,48,32,16 \
App.ico
به همین سادگی، از یک PNG اصلی، خروجیهای آماده برای پلتفرمهای مختلف ساخته میشه.
بعداً سر فرصت یک نرمافزار میسازم که این کار رو راحتتر انجام بده! فایل رو بدیم براش خروجی برای همهٔ اهداف رو بسازه. 😎
تا پندهایی دیگر به درود. 🙃394
حکمی، مشاور وزیر ارتباطات:
«ما داریم روزانه موضوع بازگشایی اینترنت بینالملل رو پیگیری میکنیم و هماهنگیهای لازم در حال انجامه؛
امیدواریم تا نهایت هفته آینده اینترنت یا بهصورت کامل یا مرحلهبهمرحله به حالت عادی برگرده.
الان هم بخشی از دسترسیها برقرار شده و انشاءالله شرایط عادی میشه، مردم نگران نباشن.ببینیم و تعریف کنیم... البته فیلترنت نه اینترنت.
394
به این طرحها دقت کنید و یک گزینه رو مناسب برای GenyConnect انتخاب کنید.👇🏼👇🏼👇🏼 ممکنه باز هم بهترش کنم...
طرح برگرفته شده از جنی، ژن و DNA و سپر به معنای ایمنی.
رنگ آبی به منظور اطمینان.
394
از صبح برق نیست! آی مملکت ساخلیانین دده به ددسینین اونوندا ددسینین اونوندا ده ده به ددسینین آتاسینیندا اوزونونده نکیواریندا نسلینه لعنت! 🫡👋🏼
394
از چوپانی پرسیدند روزگار چگونه است؟
گفت از روزگار چیزی نمیدانم!
اما پشمهای گوسفندانم را که چیدم دیدم نیمی از آنها گرگاند!
394
روزگاری که پس از دو قرن از سلطهٔ اعراب که کمتر کسی جرأت میکرد به زبان مادری خود صحبت کند! در چنین روزرگاری مردی از طبقهٔ دهقانان تصمیم بر زنده کردن تاریخ ایران در قالب شعر گرفت.
بشنوید از حکیم ابوالقاسم فردوسی طوسی از شاعری که ۳۰ سال رنج کشید تا ایران را نجات دهد.
https://www.youtube.com/watch?v=lXgAGFoiXYA
394
میبینید چه کانال باحالی دارم! به جای تبلیغات شر و ور دیگران؛ هر از گاهی پیامهای بازرگانی اختصاصی خفنترین زبان برنامهنوسی رو پست میکنم.
همینه که هست! 😝
394
اینم بگم کرک و پرتون بریزه!
داخل پرانتز، اتریوم با Go ساخته شده؛ اما بخش بزرگی از performance-critical و low-level صنعت بلاکچین همچنان وابسته به ++C و کتابخانههای نوشتهشده با آن است. از رمزنگاری و موتورهای بانک اطلاعاتیش گرفته تا کامپایلرها و ماشینهای مجازی اتریوم، شبکه و حتی بخشهایی از کلاینتها و و ساختار نودهاش.
حتی چیزی که من باهاش GENY رو ساختم، یعنی Solidity هم با ++C ساخته شده.😎
394
یکی از مهمترین کدهای بیتکوین 💸 در مورد سختی استخراجه که مربوط به سرآیند الگوریتم PoW در کدهای سی++ هست.
این تابعی که میبینید، وظیفش اینه که بگه سختی استخراج بلاک بعدی بیتکوین چقدر باید باشد؟
نکته) بیتکوین هر بلاک سختی را عوض نمیکند. تقریباً هر ۲۰۱۶ بلاک یکبار سختی را تنظیم میکند؛ یعنی حدوداً هر ۱۴ روز.
پس اول بررسی میکند:
(pindexLast->nHeight + 1) % params.DifficultyAdjustmentInterval()اگر هنوز زمان تنظیم سختی نرسیده باشد، معمولاً همان سختی بلاک قبلی را برمیگرداند:
return pindexLast->nBits;
بعد از آن این تابع میگه:
اگر وقت تنظیم سختی نرسیده:
همان سختی قبلی
اگر testnet است و بلاک دیر آمده:
کمترین سختی
و اگر وقت تنظیم سختی رسیده:
زمان ۲۰۱۶ بلاک قبلی را بررسی کن
سختی جدید را محاسبه کن
چرا مهم بود که بیتکوین با ++C ساخته بشه؟
- کنترل کامل روی عددها و بایتها
- سرعت بالا
مناسب به عنوان زیرساخت صنعت بلاکچین
- تعیین دقیق رفتار! این موضوع خیلی مهمه که ++C
- اجازه میده نوع داده و الگوریتم بسیار دقیق محاسبه و مدیریت بشه.
مثلاً با Python/JS:
نوشتنش راحتتر بود، ولی برای Bitcoin Core فاجعه میشد: کندتر، مصرف RAM بیشتر، کنترل کمتر روی بایتها، و وابستگی زیاد به runtime.
با Java/سیشارپ:
قابلساختتر بود، ولی GC میتواند در زمانهای حساس pause بدهد. همچنین کنترل binary/serialization و رفتار دقیق عددها سختتر میشود.
با Go:
برای شبکه خوب است، ولی GC و کنترل کمتر روی memory برای consensus engine ایدهآل نیست.
برای بیتکوین، مشکل فقط «برنامه اجرا شود» نیست. باید میلیونها نود در سراسر دنیا دقیقاً به یک نتیجه برسند. کوچکترین تفاوت در محاسبه difficulty، parsing block، hash یا serialization میتواند باعث fork شود.
با Rust احتمالاً بعضی خطاهای حافظه در سطح زبان سختتر رخ میدادند و بخشهایی از codebase safety بیشتری میگرفت. اما این به معنی سریعتر، بهتر یا کمریسکتر بودن مطلق نسبت به ++C مدرن نیست.
به جرأت میتوان گفت برنامهنویسی دقیق و بدون نقص در این زیر ساخت به همراه سالها آزمایشهای متنوع منجر شده بیتکوین به یکی از پایدارترین و دقیقترین نرمافزارهای زیرساختی دنیا تبدیل شده.394
میدونم خیلیهاتون تعجب میکنید! که چرا این سی++ با اونی که توی کتابها خوندیم متفاوته! وقتی میگم مدرن، یعنی هیچ خبری از
iostream یا اون چرندیات قدیمی printf یا std::cout و اینجور چیزا نیست! اینارو حتی اگه شما تخصص نرمافزار هم نداشته باشی به هر حال یجوری توی دانشگاه به عنوان یه واحد پاس کردی.
این چیزارو هنوز هم که هنوزه توی ایران تدریس میکنن متأسفانه.
صنعت مدرن با چیزهای مدرن پیش میره، حتی داخل کدهایی که نوشتم هم دقت کنی هیچ خبری از سبک قدیم نیست. همین چند سال پیش من شروع کردم برای بهروز رسانی خودم خیلیها گفتن ای بابا کی حال داره ما هنوز تو استاندارد ۱۱ برای سالها پیش موندیم.
خب حالا دیدی چقدر فاصلهٔ عجیب و غریبی ایجاد شده اگه همون وقت که میگفتم یاد بگیرید اقدام کرده بودین زیاد جای تعجب نداشت.
دوست داشتن میتونید اینجا هم عضو باشید! تنها گروهیه که مدیریتش با منه و سالها توش راهنمایی کردم ملت رو.
https://t.me/advancedcpp394
هرچقدر زبان سطحپایین (نزدیک به سطح ماشین) باشه؛ صراحتنویسی مهمتره!
این کد یک ماشین حساب خیلی ساده میسازد که فقط عدد قبول میکند.
مثلاً اینها درست هستند:
calc.add(10, 20);
calc.add(1.5, 2.5);
ولی این اشتباه است:
calc.add("Hello", "World");
چون ما با concept Numeric گفتهایم فقط نوعهای عددی مجاز هستند.
قسمتهای مهم از مدرن نویسی:
export moduleیعنی بهجای فایلهای قدیمی
include از سیستم جدید و سریعتر Modules استفاده میکنیم.
concept Numericمثل نگهبان عمل میکند! بررسی میکند ورودی واقعاً عدد باشد.
constexprاگر مقدارها مشخص باشند، کامپایلر قبل از اجرای برنامه نتیجه را حساب میکند تا سرعت بیشتر شود.
noexceptیعنی این تابع قرار نیست خطای exception تولید کند.
[[nodiscard]]اگر خروجی تابع را نگیری، کامپایلر هشدار از نوع warning میدهد چون احتمالاً اشتباه کردی. خلاصه: این فقط یک جمع ساده نیست؛ نمونهای از سبک برنامهنویسی مدرن در سیپلاسپلاس است که: - سریعتر است - امنتر است - تمیزتر است و برای پروژههای بزرگ حرفهای آیندهدار استفاده میشود. #cpp #example #یادگیری #بهروزرسانی #برنامهنویسی #مثال #تکهکد
394
از بدنهٔ حکومت زنگ زدن میگن چطوری؟؟؟!؟
میگم سلام! چطورید حاج اقا؟ وسلام علیکم و رحمتالله!😂 اهلن و سهله یا اخی! یا سیدی چاکی چونی؟ خوژ بی ایشالا؟ 😂😂😂
میگه خیلی وقته نیستی! این جنگ بهت ضرر نزده که؟ چه میکنی کارو بارت تعطیل نیست که؟ هنوزم ترید میکنی؟ برنامهنویسی میکنی؟ هنوزم میترکونی؟
من: 😐😐😐😐 بقیه مکالمات بماند که چی گفت چی شنیدم! 😄 یعنی همه جوره اعصاب آدمو بریزید بهم فقط!
یعنی قشنگ با مسخره بازی خوشید! 😉
394
یک توصیه که میتونم بر مبنای تجربیات خودم بگم اینه که نباید به AI اجازه بدی زیاد به چرندیاتی که توی پوشهٔ
git. مدام تولید میشه توجه کنه! هرچقدر بیشتر با محتوای log و غیره درگیر باشه بیشتر توکنسوزی میکنه و سریعتر به محدودیت میخورید.
مخصوصاً پوشهٔ objects رو باید کنترل کنید. یهو میبینی ۲۰ گیگ شده حجم تحلیلهای OpenAI و روحتم خبر نداره که چطور شد اینطور شد! 😁 برای همین میگم برای کسانی که میدونن چیکار میکنن خیلی بهتره! چون نباید همه چیرو هم بسپاری به این بیخرد!