در حال بارگزاری

سلام به همهٔ خواننده‌های خوب وبلاگ کرم‌های کامپیوتر. توی این مطلب می‌خوام بهتون بگم که چرا ما(من، بهنام، و فاروق) توی این موضوع تعداد کمی مطلب داشتیم و به تازگی این دسته‌بندی رو به کلی حذف کردیم. من و فاروق سال‌هاست داریم توی دنیای کامپیوتر می‌چرخیم و تقریباً هر روز ترفندهای جدید رو یاد می‌گیریم و چه‌بسا اون‌ها رو امتحان می‌کنیم! اما دوست نداریم از اون‌ها برای اذیت و آزار مردم استفاده کنیم.

من خودم حتی اقدام به نوشتن ویروس و اجرای اون در محیط ایزوله کردم ولی دلیل اون‌ها فقط جنبهٔ آموزشی برای خودم و امتحان نظریه‌های مختلف در مورد خرابکاری و نفوذ بوده. اما با همهٔ این‌ها بازخوردی که از اطرافیان و عامّهٔ مردم می‌گیریم این نیست که بخوان به هک و نفوذ به جنبهٔ آموزش و چه‌بسا امنیت خودشون نگاه کنن. متأسفانه اکثر مردم در اینترنت به دنبال یادگیری یک وِرْد جادویی در کامپیوتر و استفادهٔ اون عموماً در جهت اهداف ناپسند هستند. این مسئله باعث می‌شه که با وجود تأثیری که می‌تونه در سئوی سایتمون داشته باشه، انگیزهٔ ما رو برای نوشتن در این مورد کم کنه.

الان ممکنه با نوشتن این مطلب یک عده بیان و بخوان که براشون واتساپ و اینستا هک کنیم! این موضوع حتی از مسئله‌ای که بالا گفتم هم بدتر و کثیف‌تره! این مسئله رو برای همیشه روشن کنم که امتحان رمزهای مختلف و حمله با فهرست رمزعبور(Password list) و Brute Force هک حساب نمی‌شه! و دارای ارزش علمی خیلی اندکی هست! پس بدونید که اگر یک موقعی حساب تلگرام یا اینستاتون لو رفت، مشکل از خودتون بود که رمز ناایمن استفاده کردید و درواقع کرک شدید و کلمهٔ هک رو به کار نبرید!

بهنام سیم‌جو22-11-1402 عمومی

چند هفته پیش تولد ۹ سالگی وبلاگ‌مون بود و توی این مطلب می‌خوام از تاریخچه ۹ ساله وبلاگمون براتون بگم. من و فاروق از دوران راهنمایی(نسل‌های جدید بخوانند متوسطه اول) با هم دوستیم و جفتمون به کامپیوتر و الکترونیک علاقه داشتیم. اولین وبلاگمون رو به اسم pcdanesh روی سرویس بلاگفا ایجاد کردیم و کمی بعد به بلاگ از شرکت بیان منتقلش کردیم.

اون زمان فاروق یک کتابچه از مجموعه‌ی کلید داشت که در مورد وبلاگ‌نویسی گفته بود؛ نوشته بود که در ابتدا شما برای هیچ‌کس می‌نویسید و کسی مطالبتون رو نمی‌خونه، نباید این مسئله دلسردتون کنه. کم‌کم بازدیدکننده‌ها بیشتر می‌شن و … به همین خاطر تعداد کم بازدیدها ما رو از نوشتن مطلب منصرف نکرد.

۱۶ دی ماه سال ۹۴ تاریخ اولین مطلبمون روی وبلاگ pcdanesh.blog.ir هست. کمی که مطلب نوشتیم متوجه شدم اسمی که انتخاب کرده بودیم (pcdanesh) به شدت تکراری هست. اینجا بود که تصمیم گرفتیم یه ایده نو بدیم که کسی تا به‌حال بهش نرسیده!

من و فاروق کریمی‌زاده و محمدرضا رضوانی (از دوست های قدیمی‌مون که الان توی گروه‌مون خیلی فعاله) با هم داشتیم در مورد اسم وبلاگ‌مون فکر می‌کردیم. رضوانی می‌گفت ایده‌مون باید خلاقانه باشه، مثل برند butterfly در پینگ‌پونگ که الهام گرفته از راکت‌ها هست. اینجا بود که به شوخی به ذهنم زد پروانه قبل از پروانه شدن کرم هست و ما می‌تونیم کرم باشیم! در ابتدا به شوخی بود ولی یهو یاد بدافزار هایی موسوم به کرم افتادیم. کرم‌ها بدافزار‌هایی هستند که در شبکه‌های محلی تکثیر میشن، در واقع در یک شبکه مثل کافی‌نت از یک سیستم استفاده می‌کنن تا سیستم های آسیب‌پذیر رو پیدا و بهش نفوذ کنن.

از اونجایی که من و فاروق در اون زمان زیاد روی برنامه‌نویسی تمرکز نداشتیم و بیشتر توی کامپیوتر می‌گشتیم و اکتشاف می‌کردیم دیدیم جالب میشه که این شوخی رو با خودمون کنیم و بگیم:

ما کرم‌های کامپیوتر هستیم و براتون از تجربیات خودمون می‌نویسیم

و به این ترتیب اسم کرم‌های کامپیوتر (pcworms) به وجود اومد. البته pc مخفف personal computer به معنی رایانه شخصی هست، ولی خب اسم کرم‌های کامپیوتر شخصی زیاد جالب نیست 😄

اسم و آدرس وبلاگ pcdanesh رو تغییر دادیم. در واقع تاریخ دقیق این جابه‌جایی مشخص نیست برامون، و یطورایی چون pcdanesh و pcworms از هم جدا نیستن و اولین مطلب هر دو ۱۶ دی ماه هست این تاریخ رو به عنوان تولد وبلاگمون در نظر می‌گیریم.

ما سال ها روی سرویس blog.ir مطلب نوشتیم و کلی خاطرات شیرین داریم. مثلا یکبار فاروق بعد از نوشتن مطلب توی وبلاگ از سیستم خارج نشد و برادرش که اون موقع سن زیادی نداشت اومد و از روی شیطنت یه مطلب نوشت و پست کرد و توش به یکی از هم‌کلاسی هاش که باهاش زیاد خوب نبود بد و بیراه گفته بود اون موقع ما یه ربات داشتیم که پست های جدید رو از روی RSS می‌خوند و تو تلگرام می‌فرستاد. من متوجه شدم که چنین مطلبی منتشر شده و سریع تمام دسترسی های حساب فاروق رو بستم، رمزش رو عوض کردم، مطلب رو پاک کردم و به فاروق زنگ زدم، فاروق که تازه رفته بود بیرون فهمید جریان چیه و برگشت و داداشش رو سرزنش کرد! 😂

سیر تکاملی چت ها هم جالب بود، خیلی وقت پیش‌ها فقط یک چت-روم IRC روی شبکه freenode داشتیم. الان دیگه حتی شبکه freenode هم مثل سابق دیگه نیست! من هم همونطور که گفتم یه بات تو تلگرام داشتم که مطالب رو می‌فرستاد. اون زمان تلگرام هنوز فیلتر یا سانسور نبود و یه طورایی پیام‌رسان رسمی بود! بعد‌ها فاروق یک سرور ماتریکس روی Nano Pi خودش اجرا کرد و عضویت در اون با محدودیت بود و برای گرفتن اکانت باید به فاروق ایمیل ارسال میشد. یه طورایی اون گروه فقط برای دنبال کننده های قدیمی وبلاگمون بود که از خیلی وقت پیش با نظراتشون رو وبلاگ بهمون دلگرمی می‌دادن! بعدا تصمیم گرفتیم که گروه رو بزرگ‌تر کنیم و به سرور های ماتریکس موزیلا رفتیم و علاوه بر اون توی تلگرام هم گروه ساختم و این دو تا رو بهم پل کردیم.

دانشجو شدیم و کلی اتفاقات رو تجربه کردیم! تا سال ۱۴۰۰ که تصمیم گرفتیم از بلاگ جدا بشیم و یک سایت وردپرس داشته باشیم. با بلاگ (بیان) خداحافظی کردیم، بار و بندیل رو جمع کردیم و اومدیم اینجا!

در حال حاضر هم دستاورد جدیدمون دورهمی‌های کرم‌های کامپیوتر هست که به صورت هفتگی با موضوعات مختلف برگذار میشه.

تجربیات‌ما در زمینه وبلاگ نویسی

وبلاگ‌نویسی خصوصا برای ما که مطالب تخصصی می‌نویسیم و افراد خاصی خواننده وبلاگمون هستن همیشه از روی عشق و علاقه بوده. درواقع تا وبلاگ نویس نباشید این رو درک نمی‌کنید! درواقع ما با هزینه شخصی‌مون پول دامنه و سرور رو می‌دیم و برای دل خودمون و کمک به دیگران مطلب می‌نویسیم. از طرفی نوشتن مطلب برای ما هم تاثیر خوبی داشته، علاوه بر این که افراد بیشتری رو در این زمینه شناختیم و شاید شناخته شدیم! شیوه نوشتن من و فاروق هم تغییر کرده و حتی خودمون بعضی اوقات خواننده وبلاگ خودمون می‌شیم و چیز هایی که اینجا آموزش دادیم رو دوره می‌کنیم! ممکنه یک ترفندی رو پیدا کرده باشیم، و توی وبلاگ نوشته باشیم. و بعدش یادمون رفته که ترفنده چی بوده. یک جستجو در وبلاگ انجام میدیم و تمام!

بهنام سیم‌جو13-11-1402 عمومی

حدود ۴ سال پیش با پروژهٔ آواهای مشترک موزیلا آشنا شدم. آن زمان مجموعه داده‌ٔ (Dataset) فارسی پروژه تنها حدود ۲ گیگابایت بود. الآن زبان فارسی تقریبا ۱۰ گیگابایت مجموعه داده دارد. در این مطلب راجع به پروژه و اهمیت آن برای پروژه‌های یادگیری ماشینی و هوش مصنوعی توضیح می‌دهم. البته موضوع دورهمی نهم کرم‌های کامپیوتر هم در همین مورد بود.

فاروق کریمی‌زاده30-10-1402 عمومی

الگوریتم کوله‌پشتی، یک الگوریتم از نوع حریصانه هست. در این مطلب در مورد الگوریتم کوله‌پشتی یک و صفر (0/1 knapsack algorithm) می‌نویسم. برای مثال فرض کنید یک کوله پشتی با حجم ۹۰ لیتر دارید؛ و وسایلی که دارید علاوه بر حجم برای شما یک ارزش یا اهمیت دارند و احتمالا همه آن‌ها جا نمی‌شوند. حال به چه صورت وسایل را انتخاب می‌کنید تا بیشترین ارزش را در کوله پشتی خود داشته باشید؟ در الگوریتم کوله‌پشتی یک و صفر یا یک شی انتخاب می‌شود و یا خیر! امکان برش و تکه کردن نیست.

بهنام سیم‌جو28-10-1402 تخصصی

سلام! به مسئله‌ای برخوردم که نیاز داشت یه آرایه با طول نامعلوم رو از کاربر بگیریم. اینطوری که کاربر شروع می‌کنه به وارد کردن ورودی‌ها تا زمانی که کلمه end رو بزنه و تموم کنه. مسئله ساده‌ای هست و در کل زیاد چیز شاخی نیست!!

چالشش اینه که ما تعداد اعضا رو نمی‌دونیم و طول آرایه هم ثابته کنه، پس در حالت عادی مجبوریم ورودی‌ها رو بریزیم تو یه لیست تا آخرش که کار کاربر تموم شد همه رو مثلا منتقل کنیم به یه آرایه با طول لیسته، یعنی داریم دو بار هر عضو رو بررسی می‌کنیم که هزینه زمانی اینجا میشه 2n(معادل O(n)) از طرفی توی زبانی مثل C که اصلا لیست نیست و باید مثلا از SLL(به انگلیسی: Singly Linked List و به فارسی: فهرست پیوندی یک‌طرفه) استفاده کرد.

#include <stdio.h>
#include <stdlib.h>

double* rec(int i) {
    char input[100];  // Adjust the input string size as needed
    fgets(input, sizeof(input), stdin);
    
    if (strcmp(input, "end\n") == 0) {
        double* result = (double*)malloc(i * sizeof(double));
        return result;
    }

    double* arr = rec(i + 1);
    sscanf(input, "%lf", &arr[i]);
    return arr;
}

int main() {
    double* result = rec(0);

    // Printing the result
    for (int i = 0; result[i] != 0.0; ++i) {
        printf("%lf ", result[i]);
    }

    free(result);    // Free the allocated memory

    return 0;
}

مشابه این کد در پایتون به این شکل نوشته می‌شود(برای آرایه از numpy استفاده شده).

from numpy import np


def rec(i=0):
    inp = input()
    if inp == "end":
        return np.zeros(i)
    arr = rec(i + 1)
    arr[i] = int(inp)
    return arr

در واقع این شیوه به شکلی هوشمندانه از پشته(به انگلیسی: stack) خود سیستم برای ذخیره موقتی اعضا و شمارش آن ها استفاده می‌کنه. اما باید دقت کنید که این روش نامحدود هم نیست چون به اندازه پشته محدود میشه.

کد این سیستم‌عامل را می‌توانید از اینجا دانلود کنید!

دانلود

بهنام سیم‌جو22-10-1402 عمومی

تصمیم گرفتیم که جمعه هر هفته ساعت ۱۸ یک دورهمی دوستانه داشته باشیم. در این دورهمی ها هر هفته یکی از اعضا داوطلب میشه در درمورد موضوعی صحبت کنن و اطلاعات‌مون رو رد و بدل کنیم. علاوه بر اون در انتهای هر دورهمی بحث آزاد داریم و کلی می‌خندیم!

هر هفته اطلاعیه دورهمی رو تو meet.pcworms.ir می‌زاریم و جمعه ها ساعت ۶ قبل از شروع لینک دورهمی رو توی گروه‌هامون می‌فرستیم.

تا الان که این مطلب رو می‌نویسم ۶ دورهمی برگزار شده که به ترتیب موضوعات زیر رو داشتن:

  1. معرفی دورهمی و این که می‌خواییم چیکار کنیم
  2. فاروق کریمی‌زاده: صفحه‌نمایش کاغذ الکترونیک
  3. فاروق کریمی‌زاده: سخت‌افزار‌های متن‌باز
  4. بهنام سیم‌جو: توصیه هایی برای برنامه‌نویسان تازه‌وارد
  5. جعفر فرقانلوژ: فراجستجوگر‌های سرکس و موآ + بحث راجع به معادل های فارسی در کامپیوتر!
  6. پرسش و پاسخ درمورد فراجستجوگر‌های سرکس و موآ و بحث گفت‌وگو راجع به مطلب حریم خصوصی و عصر اطلاعات

بهنام سیم‌جو27-08-1402 عمومی

با پی در پی سانسور شدن پیام‌رسان‌های مختلف در کشورمان ایران، مردم به دنبال پیام‌رسان‌های دیگر می‌گردند. از طرفی، با توجه به این که داده‌های ارسالی از طریق پیام‌رسان باید خصوصی بین فرستنده و گیرنده یا گیرنده‌ها بمانند، امن بودن پیام‌رسان مهم است. و البته پیش‌نیاز امن بودن یک پیام‌رسان،‌ آزاد بودن آن است. اگر یک پیام‌رسان نرم‌افزار آزاد یا متن‌باز یا دست‌کم با کد منبع در دسترس نباشد، نمی‌توانیم در مورد امن یا ناامن بودن آن نظر دهیم. به همین صورت نمی‌توانیم در مورد امن بودن واتس‌اپ نظر دهیم چرا که کد منبع آن در دسترس نیست. واتس‌اپ ادعا می‌کند که از رمزنگاری سراسری استفاده می‌کند و این‌گونه، تنها فرستنده و گیرنده می‌توانند داده‌های رد و بدل شده را بببنید؛ اما در حالی که کد منبع واتس‌اپ در دسترس نیست، چطور می‌توانیم مطمئن شویم که واتس‌اپ واقعا حقیقت را می‌گوید؟

روبوکد یک بازی برنامه‌نویسی است که در آن با زبان جاوا، اقدام به برنامه‌نویسی کردن روبات‌های کوچکی می‌کنید که با بقیهٔ روبات‌ها باید بجنگند. مبارزه می‌تواند به صورت تک‌به‌تک با یک روبات دیگر یا به صورت گروهی با مثلاً ۹ روبات دیگر باشد. هرچند که باید روبات‌های خود را به زبان جاوا بنویسید، اما دانش عمیقی از این زبان مورد نیاز نیست و در صورتی برنامه‌نویس یکی از زبان‌ها از همین خانواده باشید، می‌توانید به‌راحتی یک روبات بسازید.

فاروق کریمی‌زاده31-06-1402 تخصصی

من به عنوان یه متخصص کامپیوتر در پاسخ به هشدارم در مورد جمع‌آوری اطلاعات توسط شرکت‌هایی مثل گوگل و… همیشه یک پاسخ تکراری می‌شنوم: «من که هیچ اطلاعات مهم و سرّی‌ای ندارم!»

با توجه به این که امروزه در عصر ارتباطات و اطلاعات هستیم و استفاده از چنین خدماتی بسیار فراگیر شده، لازم می‌دونم در این مطلب بگم که «چرا اطلاعات شما مهم هستند؟» و «جامعهٔ نرم‌افزارهای آزاد چه تأثیری بر این مورد دارند؟»

اطلاعات شما مهم نیستند!

اطلاعات خودشون به تنهایی ارزش آن‌چنانی ندارند اما پردازش آن‌ها بسیار با ارزش خواهند بود. بذارید براتون توضیح بدم. شاید شما یک مامور اطلاعاتی یا یه فرد مهم در یک جایگاه دولتی نباشید اما وقتی اطلاعات شما پردازش شوند، می‌تواند به افراد دیگر آسیب برساند.

برای مثال خدمات گوگل می‌توانند حتی در صورت غیرفعال بودن GPS، موقعیت تقریبی شما را بدانند. این امکان چیزی مخفی و سری نیست، خود گوگل این مورد رو اعلام و در گوشی‌ها امکان استفاده از اون هست! در کل چیز بدی هم نیست، اگه جایی بودید که به ماهوارهٔ GPS دسترسی نبود، باز هم یه موقعیت تقریبی دارید، اما گذشته از این که می‌تونه برای یه‌سری افراد بد بشه، جالبه بدونید این امکان با پردازش داده‌هایی که از افراد عادی به دست اومده، فراهم شده.

چه‌طوری؟ با استفاده از موقعیت نسبی و دکل‌های مخابراتی. هر دکل مخابراتی یک سریال مخصوص داره که گوشی شما هم اون رو دریافت می‌کنه. امروزه هر گوشی همزمان به بیش از یک دکل وصل هست و اگر در این حین مکان‌یابی گوشی هم فعال باشه به همراه قدرت سیگنال اتصال یک موقعیت تقریبی از اون دکل داریم. از طرفی با استفاده از یه شبکه (گراف) از اسامی وای‌فای‌ها و بلوتوث‌های نزدیک می‌شه هم موقعیت نسبی افراد و هم موقعیت وای‌فای ها رو پیدا کرد.

از طرفی تا به حال متوجه شدید که گوگل می‌تونه حدس بزنه خونه‌تون کجاست؟! من متوجه چنین موردی شدم، اگه برید به نقشه google maps احتمالا یه جایی توی نقشه به عنوان خونهٔ شما مشخص شده. حدس من اینه که احتمالاً از مدت زمانی که در یک مکان هستم و هم جاهایی که می‌رم و برمی‌گردم به یک نقطهٔ ثابت متوجه این مسئله شده!

حمایت و گسترش

با استفاده از این خدمات، درواقع شما دارید از اون ها حمایت می‌کنید و بهشون خوراک اطلاعاتی می‌دید، اون‌ها با پردازش اطلاعاتی که شما بهشون دادید، آمارها و اطلاعات رو استخراج می‌کنن و اون‌ها رو می‌فروشن، البته همیشه این اطلاعات چیزهای شخصی نیستند، گاهی سلیقهٔ مصرف‌کننده‌های یه محصول و چیزهای این‌چنینی که ارزش تجاری دارند، هستند. این‌طوری قدرتشون بیشتر می‌شه. از طرفی خودبه‌خود به فراگیر شدن استفادهٔ دیگران از این خدمات کمک می‌کنید، افراد دیگه که قالباً از چیزهایی که تو این مطلب گفتیم بی اطلاع هستند، مجبور و یا ترغیب به استفاده از چنین خدماتی می‌شن، در نتیجه کم‌کم هم قدرت این خدمات و هم مصرف‌کننده‌های اون‌ها بیشتر می‌شه. مثلا نرم‌افزار Shareit که همه می‌شناسیمش، این نرم‌افزار به تمام پرونده‌ها دسترسی داره و به حریم خصوصی کاربران هم زیاد پایبند نیست، بعد اون وقت هر کسی که می‌خواد پرونده‌ای برای کسی بفرسته، اولین جمله‌ای که می‌گه اینه که «shareit نصب کن»!

تأثیرگذاری

از مواردی که گوگل به صورت شفاف گفته که نتایج و تبلیغات رو مطابق سلیقهٔ شما بهتون نشون می‌ده. این هم می‌تونه مفید و کمک‌کننده باشه و هم می‌تونه به هدایت شما به سمت یک هدف خاص منجر بشه. نمی‌خوام از توهم توطئه و کنترل شما توسط این خدمات بگم! ولی فیلتر نتایج یا نمایش هدفمند بعضی از اون‌ها زیاد چیز جالبی نیست! این کار برای این خدمات معمولاً سود تجاری به همراه داره.

یا مثلاً اینستاگرام هم با توجه به علاقهٔ شما، فرسته‌ها رو بهتون نشون میده. حتی بعضی اوقات لابه‌لای صفحاتی که دنبال می‌کنید از جاهای دیگه هم فرسته بهتون نشون می‌ده، منجر می‌شن به این که یه چیزی مثلاً یه مد، یه رفتار یا یه فرهنگ (گاهاً درست و گاهاً غلط) ترند (فراگیر) بشه. یا حتی به یه تحلیل از سلیقهٔ جمعی برسن.

برای مثال در زمان انتخابات در کشورهای بیگانهٔ غربی 😄 با کمک اینفواِنسرها (influencer: افرادی که قدرت تأثیر بر افکار مردم رو دارن، همون شاخ‌های مجازی!) می‌تونن تأثیراتی روی دیدگاه و طرز فکر مردم داشته باشن (تعجبی هم نداره؛ تعریف کلمه همینه!) یا مثلاً تأثیری که اون‌ها روی صنعت مد، پوشاک و صنایع آرایشی دارن کاملاً مشخصه.

علاوه بر اون، این روزها الگوریتم‌ها دارن تمام تلاششون رو می‌کنن که شما رو هر چه بیشتر پای این پلتفرم‌ها نگه دارن که این عوارض بدی براتون به همراه داره.

پ.ن: مواردی که در مورد «تأثیرگذاری» گفته شده تا حدود زیادی مربوط به سواد رسانه‌ای هستن. دانشی که برای هر کسی لازمه که بدونه هر رسانه‌ای چه هدفی داره و برای رسیدن به اون هدفش از چه تکنیک‌ها و ترفندهایی استفاده می‌کنه

شناخت ارتباطات

بسیاری از شبکه‌های اجتماعی با تخمین نسبتاً دقیقی می‌تونن ارتباطات شما با اطرافیانتون رو بسنجن، باز هم شاید این مورد در پیدا کردن دوست‌هاتون توی شبکه‌های اجتماعی کمکتون کنه ولی روی تحلیل اطلاعاتی که می‌خوان از یه شخص خاص جمع کنن تاثیر مستقیم داره.

اعتماد کاذب!

شما (یا خیلی‌های دیگه) شاید به نصب یه نرم‌افزار از یه شرکت ناشناس مثلاً روسی یا چینی مخصوصاً متن‌بسته شک می‌کنید ولی خیلی ها به شرکت‌هایی مثل گوگل یا مایکروسافت اعتماد دارن. اما اگر از مرورگر کروم استفاده می‌کنید و اون رو به عنوان یه مرورگر امن می‌شناسید باید بگم که گوگل کروم در ابتدا یک نرم افزار متن‌باز بود تا زمانی که گوگل تصمیم گرفت یه‌سری اطلاعات نامعلوم (که شاید چیزهایی نباشن که دوست داشته باشیم!) رو اون پشت‌مشت‌ها بفرسته به سرورهای خودش یا حتی بدون اطلاع شما به بهونهٔ اسکن ویروس‌ها پرونده‌ها رو اسکن کنه؛ با این که کروم اصلاً یه پادویروس نیست! چنین سرویسی رو خودم خیلی وقت پیش‌ها زمانی که کروم داشتم دیدم، به صورت خودکار در پس‌زمینه اجرا می‌شد و امکان غیرفعال کردنش هم نبود! برای همین چیزها بود که عده‌ای از توسعه‌دهنده‌های کروم گفتند که ما نمی‌خواییم دیگه گوگل کروم رو توسعه بدیم و chromium که متن‌باز هست رو توسعه می‌دن (اگر می‌خوایید از کرومیوم استفاده کنید بگم که من این مرورگر رو پیشنهاد یا تبلیغ نکردم و پیشنهاد می‌کنم که صرفاً به من اعتماد نکنید و خودتون کرومیوم رو قبل از استفاده بررسی کنید!)

جامعهٔ نرم افزارهای آزاد

آزاد به معنی متن‌باز بودن نرم‌افزارها نمی‌تونن به تنهایی تضمینی برای حفظ حریم خصوصی شما باشه، ولی می‌تونه روی این موضوع تأثیرگذار باشه. اولاً خیلی از استفاده‌کننده‌ها وقت نمی‌گذارند کدها رو بررسی کنن! دوماً که بعضی از خدمات مثل تلگرام همون‌طوری که فاروق جان تو مطلب «آیا تلگرام امن و آزاد است» گفت، متن باز بودن نرم‌افزار گاهی اوقات تأثیری رو حفظ حریم خصوصی‌تون نداره.

اما این که ارائه‌دهنده‌های اون خدمت سخاوتمندانه منبع رو باز گذاشتند و ترسی از لو رفتن هیچ رازی ندارن چیز خوبیه! از طرفی می‌تونیم بفهمیم که درآمد این خدمات از کجا تأمین می‌شه (از فروش اطلاعات! یا دونیت یا…) و هم این که می‌تونیم روی این نرم‌افزارها تأثیر بگذاریم و اگر برای حریم خصوصی خودمون و دیگران ارزش قائل هستیم اون‌ها رو ویرایش کنیم.

سخن پایانی

این طومار بلند و بالا حرف‌ها و حقایقی هستند که شاید به واسطهٔ موضوع بحث و در کنار هم قرار گرفتنشون کمی بوی توهم توطئه بگیرن یا حتی با درگیر کردن ذهن شما ناخواسته بهتون انرژی منفی وارد کرده باشم! ولی متأسفانه این‌ها حقایق تلخی هستند که امکان دارند و هم در حال استفاده هستند. این مطالب برای یک بحث سرپایی با اون دوستی که می‌گه «اطلاعات من ارزش ندارن» طولانی و با جزئیات هستند ولی لازمه که مردم از اون آگاه باشن.

بهنام سیم‌جو29-03-1402 عمومی

قبلاً راجع به کتاب‌خوان اونیکس بوکس پوک پرو صحبت کردم و راجع به این که چرا تصمیم گرفتم یک تبلت اندرویدی با صفحه‌نمایش جوهر الکترونیکی (E-ink) کاغذ الکترونیکی (e-paper) داشته باشم و این تصمیمم چه تأثیری در سلامت چشمانم دارد. متأسفانه تبلت قبلی از میکروفون پشتیبانی نمی‌کرد و با وجود اندروید ۶ نمی‌توانستم از نرم‌افزار‌های جدید‌تر روی تبلتم استفاده کنم. و البته از همه مهم‌تر خراب‌کاری بنده حین تعمیر کتاب‌خوان باعث آسیب به صفحه‌اش و در نتیجه غیرقابل استفاده شدنش شد و مجبور شدم آن را در ایسام با قیمتی بسیار پایین به عنوان معیوب به فروش برسانم!

به عنوان یک نتیجهٔ این خراب‌کاری، باید دنبال وسیله‌ای جدید به عنوان تبلت اندرویدی می‌بودم و این بار از همان شرکت قبلی تبلت Boox Leaf را خریداری کردم که با صفحه ۷ اینچ کمی بزرگ‌تر از پوک بود. البته در زمان تصمیم من برای خرید، یک سال از ورود لیف به بازار می‌گذشت و Leaf 2 جدید‌ترین محصول این شرکت با اندروید ۱۱ بود. اما به دلیل دو برابر بودن تعداد هسته‌های پردازندهٔ لیف، قید اندروید ۱۱ را زدم و نهایتاً Boox Leaf را خریدم.

در این مطلب، مواردی که در مطلب قبلم راجع به پوک پرو نوشته‌ام را تکرار نمی‌کنم و روی تغییرات لیف نسبت به پوک تمرکز می‌کنم.

تعریف کلی کاراکتر یا نویسه در کامپیوتر یعنی کوچک‌ترین واحد نمایش اطلاعات که می‌تونه یک حرف یا علامت باشه. نویسه‌ها شامل فاصله، عددها و علامت‌ها‌ هم هستند!

نویسه در دنیای دیجیتال

در دنیای دیجیتال برای انتقال اطلاعات چیزی جز خاموش و روشن نداریم! جریان‌های الکتریکی که قطع و وصل می‌شن، نوری که چشمک می‌زنه یا حتی تغییر جهت قطب‌های مغناطیسی توی هاردها دنیای دیجیتال‌ما رو می‌سازن!

به این خاموش‌ها و روشن‌ها می‌تونیم غلط و صحیح یا صفر و یک رو نسبت بدیم. این صفرها و یک‌ها به کمک قوانین مبنای عددی در ریاضیات معنا پیدا می‌کنن. یعنی مثلاً عدد ۲ توی کامپیوتر می‌شه ۰۰۱۰، عدد ۱۱ توی کامپیوتر می‌شه ۱۰۱۱ و عدد ۵ می‌شه ۰۱۰۱. در واقع هر عدد، کد مخصوص به خودش رو داره که قابل محاسبه هست. این محاسبه بین مبنای ده (اعداد خودمون) و مبنای دو (اعداد کامپیوتر) به سادگیِ انجام چند تقسیم هست.

برای انتقال اعداد مشکلی نداریم اما اگر بخوایم نویسه‌ها رو منتقل کنیم مشکل خواهیم داشت. برای این کار مجبوریم جدولی بسازیم و برای هر نویسه یک کد تعیین کنیم.

بهنام سیم‌جو27-02-1402 عمومی

توضیح خاصی ندارم…

let father: &Individual = loop {
    i = rng.gen_range(0..pop_size);
    if rng.gen_bool(self.population[i].ft() / total_ft) as f64){
        break &self.population[i];
    }
}

فاروق کریمی‌زاده01-02-1402 تخصصی

امروز می‌خوام براتون از رمزنگاری دوسویه یا دو کلیده بگم، این رمزنگاری دنیای اطلاعات رو زیر و رو کرده! تو جهان امروز هر جا رو که نگاه می‌کنی ردپای این رمزنگاری هست! HTTPS ،SSH، ارز های دیجیتال، شبکه‌های مجازی و … همه و همه دارن از این روش برای حفظ امنیت استفاده می‌کنن.

آنچه خواهید خواند!

  • در ابتدا خواهم گفت در صورت نبود رمزنگاری اطلاعات چطور لو می‌روند
  • بعد یه دید کلی از رمزنگاری میدم و میگم چرا نمیشه از روش های رایج استفاده کرد
  • سپس روش رمزنگاری دوسویه رو به زبون ساده توضیح می‌دهم
  • در ادامه از چگونگی استفاده آن در وب می‌گم
  • چند خط کد می‌نویسیم و در پایتون از این روش استفاده می‌کنیم

بهنام سیم‌جو10-12-1401 عمومی

از بزرگ‌تر‌ها می‌شنوم که صفحه‌نمایش‌های قدیمی‌تر اشعه‌هایی از خود ساطع می‌کردند که باعث آسیب زدن به چشم و بروز سرطان می‌شدند. البته منظور از بروز سرطان اینجا به این معنی نیست که هرکس که با آن صفحه‌نمایش‌های غول‌آسا کار می‌کرد سرطان می‌گرفت اما به این معنی است که شانس ابتلا به سرطان در افرادی که بیشتر در معرض صفحه‌نمایش‌های CRT بودند، بیشتر می‌شد. صفحه‌نمایش‌های امروزی بسیاری از مشکلات صفحه‌نمایش‌های قدیمی را ندارند. در عین حال که سبک‌تر و نازک‌تر و کم‌مصرف‌تر هستند به چشم نیز کمتر آسیب می‌زنند. اما هنوز هم خیره‌شدن طولانی مدت به صفحه‌نمایش می‌تواند به چشم‌ما آسیب بزند.

ما اهالی کامپیوتر ساعت‌ها جلو صفحه‌ی کامپوتر هستیم و این مسئله دغدغه خیلی ها از جمله خود من هست؛ برای همین، راهکار ها و مواردی که پیدا کردم را در این مطلب با شما به اشتراک خواهم گذاشت.

فاروق کریمی‌زاده03-12-1401 عمومی