توضیحات
🤝 در این سری جلسات کتاب Designing Data-Intensive Applications (THE BIG IDEAS BEHIND RELIABLE, SCALABLE, AND MAINTAINABLE SYSTEMS) از نشر o'reilly را بررسی خواهیم کرد. آرشام در این پست بیشتر در مورد این کتاب توضیح داده.🧠 در جلسات قصد هست همانطور که کتاب هم تاکید داره تبیین درستی از کلمه Data در حوزه #توسعه #نرم_افزار برای خودمون ایجاد کنیم. هر چند همین ابتدا تاکید می کنیم، این کلمه Data محدود به حوزه توسعه نرم افزار قطعا نیست.✨در انتها یک جلمه هم از پیش گفتار کتاب اینجا بیاریم و یادآوری کنیم که یکی از اهداف از سلسه جلسات قبل یعنی بررسی #فلسفه_علم دقیقا فهم چرایی جمله زیر هست که در اونجا با #یادگیری و جداسازی #علم از #ابزار می تونیم با درک عمیق پرسش ها، #تصمیم_سازی های با کیفیت تری داشته باشه.Software keeps changing, but the fundamental principles remain the same.مواردی که خارج از کتاب مطرح گردید:- اهمیت تعریف صحیح نیازمندی ها در کد. مثال زدیم که چرا در کتابخانه الحاقی به زبان گو با تعریف یک پکیچ به نام time تعریف یک کپسول به نام Duration اشتباه هست که باعث شد هزاران کپسول صرفا در گیت هاب حتی به اشتباه شکل بگیره. پیشنهاد خود ما اینه که به پکیچ duration داریم و که در این پکیچ کپسول هایی مثل Second وجود داشته باشه. متغییری که در پکیچ time خود گو هم تعریف شده عملا در ذات نام گذاری بدی شده و بایستی مثلا NanoSecondInSecond نام گذاری بشه.- در خصوص مطالعه کلمات مختلفی که در کتاب باهاشون روبرو میشیم در علم مرتبط به خودش هم صحبت کردیم. مثلا گفتیم کلمه percentile یا صدک در اصل مرتبط به علم آمار هست که خوب در علوم دیگه مثل اقتصاد یا علوم کامپیوتر ازش استفاده می کنیم. برای درک صحیح و بهتر و قطعا برای استفاده در نیازهای مرتبط به جز موارد گفته شده در کتاب در خصوص latency بهتره بریم در خود منابع آن علم مطالعه را انجام بدیم.- بعد از جلسه هم کلی در مورد اهمیت درک و جلوگیری از خطاهای شناختی صحبت کردیم.