Forwarded from Code Module | کد ماژول (genix)
علتش چیه؟ 😠
چند وقت پیش داشتم الگوریتم مرتب سازی insertion رو پیاده سازی میکردم و برام سوال شد، چجوری میتونم سرعت مرتب سازی رو بیشتر کنم (در حد کنجکاوی). در هنگام پیادهسازی الگوریتم مرتبسازی Insertion Sort در جاوااسکریپت، معمولاً این الگوریتم به صورت زیر نوشته میشه:
در اینجا، زمان اجرای الگوریتم با استفاده از console.time() و console.timeEnd() اندازهگیری میشه. معمولاً زمان اجرای این کد بین ۱۰ تا ۱۵ میلیثانیه متغیر هست. به این صورت:
حالا اگر خروجی آرایه رو به یک رشته تبدیل کنیم و سپس اون رو برگردونیم:
خروجی:
با انجام این تغییر، زمان اجرای الگوریتم به صورت چشمگیری کاهش پیدا میکنه و بین ۸ تا ۱۰ میلیثانیه متغیر میشه.
سوال اصلی اما اینجاست:
چرا تبدیل آرایه به رشته باعث کاهش زمان اجرای الگوریتم مرتبسازی Insertion میشه؟ آیا این تغییرات قابل توجه هستن و باید در برنامه هایی که میسازیم نگران چنین تفاوتهای جزئی ای باشیم؟
#nodejs #array
@CodeModule
چند وقت پیش داشتم الگوریتم مرتب سازی insertion رو پیاده سازی میکردم و برام سوال شد، چجوری میتونم سرعت مرتب سازی رو بیشتر کنم (در حد کنجکاوی). در هنگام پیادهسازی الگوریتم مرتبسازی Insertion Sort در جاوااسکریپت، معمولاً این الگوریتم به صورت زیر نوشته میشه:
function insertionSort(arr) {
for (let i = 1; i < arr.length; i = i + 1) {
let cE = arr[i];
let j = i;
while (j > 0 && arr[j - 1] > cE) {
arr[j] = arr[j - 1];
j = j - 1;
}
arr[j] = cE;
}
return arr;
}
console.time();
const uArray = [20, 10, 4, 51, 0, 0xd3, 0x42, 0.4, 0.00002, 0x2];
const sArray = insertionSort(uArray);
console.log("Sorted array:", sArray);
console.timeEnd();در اینجا، زمان اجرای الگوریتم با استفاده از console.time() و console.timeEnd() اندازهگیری میشه. معمولاً زمان اجرای این کد بین ۱۰ تا ۱۵ میلیثانیه متغیر هست. به این صورت:
Sorted array: [ 0, 0.00002, 0.4, 2, 4, 10, 20, 51, 66, 211 ]
default: 10.793ms
حالا اگر خروجی آرایه رو به یک رشته تبدیل کنیم و سپس اون رو برگردونیم:
return String(arr);
خروجی:
Sorted array: 0,0.00002,0.4,2,4,10,20,51,66,211
default: 8.899ms
با انجام این تغییر، زمان اجرای الگوریتم به صورت چشمگیری کاهش پیدا میکنه و بین ۸ تا ۱۰ میلیثانیه متغیر میشه.
سوال اصلی اما اینجاست:
چرا تبدیل آرایه به رشته باعث کاهش زمان اجرای الگوریتم مرتبسازی Insertion میشه؟ آیا این تغییرات قابل توجه هستن و باید در برنامه هایی که میسازیم نگران چنین تفاوتهای جزئی ای باشیم؟
#nodejs #array
@CodeModule
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from 🎄 DevTwitter | توییت برنامه نویسی
Forwarded from 🎄 DevTwitter | توییت برنامه نویسی
تو روز قیامت اونجا که کل زندگیمون مثل یک فیلم پخش میشه در محضر خداوند زندگی ما اندروید دولوپرها به این شکله که خدا هی میزنه جلو میبینه نشستیم زل زدیم به gradle تا بیلد شه هی میزنه جلو هی همینه اخر خسته میشه میندازتمون جهنم
@DevTwitter | <Bug Maker/>
@DevTwitter | <Bug Maker/>
Forwarded from Armon technical logs (armon Taheri)
این سایت رو حتما چک کنین خیلی دید خوبی نسبت به روابط بین انسانها میده
https://hamed.github.io/trust/
https://hamed.github.io/trust/
hamed.github.io
تکامل اعتماد
یک راهنمای تعاملی برای نظریه بازی درباره اینکه چرا به یکدیگر اعتماد میکنیم
Forwarded from ⚝
ourworldindata.org
Research and data to make progress against the world’s largest problems, open access and open source:
#info #learn #data #معرفی
@amiria703_channel
Research and data to make progress against the world’s largest problems, open access and open source:
#info #learn #data #معرفی
@amiria703_channel
Forwarded from Things that I like (Maedeh)
فرق clang و gcc چیه؟
https://www.incredibuild.com/blog/gcc-vs-clang-battle-of-the-behemoths
https://www.incredibuild.com/blog/gcc-vs-clang-battle-of-the-behemoths
incredibuild
GCC vs Clang: Battle of the Behemoths - incredibuild
This blog post should help you understand the major differences considering GCC Vs Clang. Both are excellent software but there are differences to discuss.
Forwarded from محتوای آزاد سهراب
وبلاگ فارسیمو آپدیت کردم. تمش رو عوض کردم یک سری تغییرات دادم، تاریخ همه مطالبم روهم برگردوندم به شمسی.
https://sohrabbehdani.ir/blogfa/
@SohrabContents
https://sohrabbehdani.ir/blogfa/
@SohrabContents
sohrabbehdani.ir
محتوای آزاد سهراب
در اینجا از ایده هایم میگویم :)
Forwarded from 🎄 DevTwitter | توییت برنامه نویسی
تو دنیای تکنولوژی همه "مهندس نرمافزار" و "توسعهدهنده نرمافزار" رو یکی میدونن، ولی فرقهای زیادی دارن.
مهندس نرمافزار یا Software Engineer:
- مهندس نرم افزار با استفاده از اصول مهندسی، نرمافزار میسازه
- بیشتر روی طراحی سیستمها، معماری و مقیاسپذیری تمرکز داره
- توی کل چرخهی توسعه نرمافزار دخیله و مطمئن میشه که سیستمها پایدار و قابل نگهداری باشن
- کارش خیلی ساختارمند و اصولی پیش میره، مثلاً از روشهایی مثل Agile یا DevOps استفاده میکنه
توسعهدهنده نرمافزار یا Software Developer:
- توسعهدهنده بیشتر روی کدنویسی و ساخت اپلیکیشنهای کاربردی تمرکز داره.
- مشکلگشا هست و کد مینویسه، دیباگ میکنه و اجرا میکنه.
- معمولا روی بخشهای خاصی از پروژه نرمافزاری کار میکنه، مثل فرانتاند یا بکاند.
- نقشش منعطفتره و بیشتر شامل حل خلاقانهی مشکلات و بهبود تدریجی پروژهها میشه.
به طور خلاصه، هر دوتا نقش برای ساخت نرمافزار ضروریان، ولی مهندسای نرمافزار مثل معمار پروژهان و طراحی کلی رو انجام میدن، در حالی که توسعهدهندهها با کدنویسی این طراحیها رو به واقعیت تبدیل میکنن.
@DevTwitter | <Soheil Amini/>
مهندس نرمافزار یا Software Engineer:
- مهندس نرم افزار با استفاده از اصول مهندسی، نرمافزار میسازه
- بیشتر روی طراحی سیستمها، معماری و مقیاسپذیری تمرکز داره
- توی کل چرخهی توسعه نرمافزار دخیله و مطمئن میشه که سیستمها پایدار و قابل نگهداری باشن
- کارش خیلی ساختارمند و اصولی پیش میره، مثلاً از روشهایی مثل Agile یا DevOps استفاده میکنه
توسعهدهنده نرمافزار یا Software Developer:
- توسعهدهنده بیشتر روی کدنویسی و ساخت اپلیکیشنهای کاربردی تمرکز داره.
- مشکلگشا هست و کد مینویسه، دیباگ میکنه و اجرا میکنه.
- معمولا روی بخشهای خاصی از پروژه نرمافزاری کار میکنه، مثل فرانتاند یا بکاند.
- نقشش منعطفتره و بیشتر شامل حل خلاقانهی مشکلات و بهبود تدریجی پروژهها میشه.
به طور خلاصه، هر دوتا نقش برای ساخت نرمافزار ضروریان، ولی مهندسای نرمافزار مثل معمار پروژهان و طراحی کلی رو انجام میدن، در حالی که توسعهدهندهها با کدنویسی این طراحیها رو به واقعیت تبدیل میکنن.
@DevTwitter | <Soheil Amini/>
Forwarded from دستاوردهای یادگیری عمیق(InTec)
امروز دیدم یکی از شرکتهایی که مشاور هستم توی تست مدل مونده
نمیتونه مدل رو از روی
بدتر از اون
نمیدونم اوضاع چطوری هست ولی اگر فکر میکنید نیاز هست آموزش بدم؛
مثل همون قضیه افزایش
اگر reaction لایک بیشتر از پست قبلی شد؛ آموزشش رو مینویسم میذارم اگر نشد که هیچی.
نمیتونه مدل رو از روی
HF ببره روی Ollama برای تست شدن توسط نیروهاش و ...بدتر از اون
Quantize کردنش رو هم بلد نبود.نمیدونم اوضاع چطوری هست ولی اگر فکر میکنید نیاز هست آموزش بدم؛
مثل همون قضیه افزایش
Context length هست که قبلا آموزش دادم روی Ollamaاگر reaction لایک بیشتر از پست قبلی شد؛ آموزشش رو مینویسم میذارم اگر نشد که هیچی.
Forwarded from Python Hints
یک اتفاق جالب:
برای یک شرکتی نیاز به یک
و دوستی که بهم سپرده بود شرایطش رو گفت و گفت که تیم
رفتم روی گیتهاب خودم؛ توی
روی ایمیلی که داشتن بهشون ایمیل زدم و یکی از افراد فرداش جواب داد؛ رزومه گرفتم و معرفی کردم به شرکت.
امروز گفتند همکاری رو شروع کردند.
قسم میخورم من فقط روی کد پابلیکی که توی گیتهابش گذاشته بود تاییدش کردم.
باس بزنم تو کار
برای یک شرکتی نیاز به یک
Junior-Mid Python Software Engineer داشتم البته خودم توی شرکت کار نمیکنم.و دوستی که بهم سپرده بود شرایطش رو گفت و گفت که تیم
HR نتونسته آدم مناسبی رو پیدا کنه؛ منم بجای درخواست رزومه کردن و به آشنایان گفتن اومدم یک کار جدید کردم.رفتم روی گیتهاب خودم؛ توی
Follower ها و کسانی که به پروژههای پایتونی Star دادند رو پیدا کردم (البته بعضی پروژههای خاص) و گیتهابشون رو دیدم؛ ۲ مورد خوب پیدا کردمروی ایمیلی که داشتن بهشون ایمیل زدم و یکی از افراد فرداش جواب داد؛ رزومه گرفتم و معرفی کردم به شرکت.
امروز گفتند همکاری رو شروع کردند.
قسم میخورم من فقط روی کد پابلیکی که توی گیتهابش گذاشته بود تاییدش کردم.
باس بزنم تو کار
HR؛ چون ۲ ماه قبل هم ی تریک به یکی گفتم (ایران نیست) واسه اینکه شرکتهای خارجی پیداش کنند و دعوت به مصاحبه بشه اون بنده خداهم جواب داده بود براش (این تریک رو آموزش نمیدم دست زیاد نشه؛ خودمم برای استخدام استفاده میکنم ولی خیلی کم.)Forwarded from Python Hints
#موقت
از مانیتور مخصوص برنامه نویسی
بهترین سایز مانیتور هست.
ایول به
این تنها مانیتور برای برنامهنویسی هست؛ پس راحت پیدا میشه ولی اگر خواستید لینک :
BenQ Coding Monitor
از مانیتور مخصوص برنامه نویسی
BenQ خوشم اومد.بهترین سایز مانیتور هست.
ایول به
BenQ و اینکه بالاخره یکی مانیتور مخصوص برنامهنویسی م زد.این تنها مانیتور برای برنامهنویسی هست؛ پس راحت پیدا میشه ولی اگر خواستید لینک :
BenQ Coding Monitor
BenQ
Best Monitor for Programming: Clear Code, Full Focus
Programmers' top choice, RD Series monitors offer expert-approved clarity, helping you maintain focus. Get ready to dive into coding like never before!
Forwarded from محتوای آزاد سهراب
دوستان زحمت کشیدن روی ریسکفایو اومدن ویچر ۳ اجرا کردن😂
https://box86.org/2024/08/box64-and-risc-v-in-2024/
@SohrabContents
https://box86.org/2024/08/box64-and-risc-v-in-2024/
@SohrabContents
Box86 / Box64
Box64 and RISC-V in 2024
What It Takes to Run The Witcher 3 on RiSC-V
Forwarded from CleverDevs (Mahdi)
Bye Bye try-catch blocks!
?=
مثل اینکه یه آپدیت برای Js قراره بیاد و ارور هندلینگ رو متحول کنه.
الان، برای ارور هندلینگ از try-catch استفاده میکنیم، ولی توی این آپدیت قراره
Safe Assignment Operator
اضافه شه، که خیلی سینتکس تمیز تری داره:
async function getData() {
const [error, response] ?= await fetch("https://api.example.com/data");
if (error) return handleError(error);
return response;
}چندتا مزیتش:
👈 نستینگ و تودرتو بودن کدها کمتر میشه.
👈 ایپیآی های مختلف، ممکنه ارور هندلینگ متفاوتی داشته باشن، و با این روش دیگه نیاز نیست توی بلاک catch شرطهای مختلف بذاریم.
👈 میتونیم با استفاده از Symbol.result ارور
هندلینگ سفارشی داشته باشیم، اینجوری:
function example() {
return {
[Symbol.result]() {
return [new Error("Error message"), null];
},
};
}
const [error, result] ?= example();// البته فعلا چیزی برای جایگزینی بلاک finally گفته نشده که میتونه یکی از معایبش باشه.
#Js #Es Source
@CleverDevs @CleverDevsGp
Forwarded from LearnPOV | لرن پی او وی (Mohammad hossein)
Forwarded from Syntax | سینتکس (Daimon)
استخدام شدن برنامه نویسا تو سال 2020:
تسلط به روشن و خاموش کردن سیستم. بقیه چیزا مهم نیست خودمون بهت یاد میدیم🎉
استخدام شدن برنامه نویسا تو سال 2024:
😥 😳
#fun
@Syntax_fa
تسلط به روشن و خاموش کردن سیستم. بقیه چیزا مهم نیست خودمون بهت یاد میدیم
استخدام شدن برنامه نویسا تو سال 2024:
#fun
@Syntax_fa
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1
Forwarded from Woland's Linux Journal (Woland)
Forwarded from 🎄 یک برنامه نویس تنبل (Raymond Dev)
🔶 براساس گزارش رویترز، در پی افزایش نگرانیها و اعتراضهای عمومی به انتشار تصاویر و ویدئوهای غیراخلاقی دیپفیک در تلگرام، دولت کرهجنوبی تصمیم گرفته است تا بهطور جدی به این موضوع رسیدگی کند. این تصمیم پس از گزارشهای متعدد رسانههای داخلی این کشور و دستگیری پاول دوروف، بنیانگذار تلگرام، به اتهاماتی مشابه در کشور فرانسه اتخاذ شده است.
#خبر
@TheRaymondDev
#خبر
@TheRaymondDev
Reuters
South Korea vows tougher stance after outcry over sexual deepfakes in Telegram chatrooms
South Korean President Yoon Suk Yeol on Tuesday called for digital sex crimes to be thoroughly investigated after media reported that sexually explicit deepfake images and videos of South Korean women were often found in Telegram chatrooms.
Forwarded from محتوای آزاد سهراب
Forwarded from محتوای آزاد سهراب
Woland's Linux Journal
مایکروسافت پروژه Mono رو به واین اهدا کرد مونو، یک فریمورک اوپن سورس و Cross Platform برای دات نت است. 👈🔗 لینک خبر #خبر
اهدای مونو به واین و همینطور مرج شدن آپاستریم کدهاش با کدهای واین مونو باعث میشه تا پشتیبانی از برنامههای داتنتی توی واین بیشتر بشه.
امیدوارم از این قبیل اهداها زیاد رخ بده :)))
@SohrabContents
امیدوارم از این قبیل اهداها زیاد رخ بده :)))
@SohrabContents