PDA

View Full Version : یک بحث فلسفی/اخلاقی!



eshpilen
دوشنبه 11 فروردین 1393, 18:26 عصر
بنظر شما آدم هرچی از علم و فناوری که میتونه بوجود بیاره یا نشر کنه، باید این کار رو بکنه؟
منظورم موارد خاصی هست که ممکنه توسط خیلی ها مورد سوء استفاده قرار بگیرن.
البته این بحث کلا درمورد علم و فناوری است، ولی فکر کنم برای راحتتر شدنش و اینکه بیشتر به احتمالات و کاربردی بودن برای خودمون باید اولویت بدیم، میتونیم اون رو به علوم رایانه و فناوری اطلاعات و برنامه نویسی محدود کنیم.
بذارید براتون مثالهای عملی بزنم تا درک کامل و دقیق باشه و بشه بصورت ملموس روش بحث کرد.
مثلا من یه برنامهء مانیتورینگ/کنترل از راه دور درست میکنم که میشه بصورت مخفی هم نصب کرد که کاربر متوجه وجودش نشه. این برنامه میتونه کاربردهای مشروع و مفید داشته باشه (مثلا مانیتور/کنترل کردن سیستمهایی که مال خود آدم هستن از نظر مالکیت شخصی یا کاری)، ولی اگر چنین برنامه ای رو منتشر کنیم چی میشه؟ طبیعتا ممکنه این برنامه توسط خیلی از جوجه ها و افراد بی سر و پا مورد سوء استفاده قرار بگیره. حالا اینکه احتمالش چقدره که در عمل بیشتر توسط این آدمها مورد سوء استفاده قرار بگیره و چقدر خسارت اخلاقی و اقتصادی و غیره ببار بیاره و درمقابل چقدر برای کاربردهای مشروع و مفید استفاده بشه و ضررش بیشتر از سودش باشه یا بعکس سودش از ضررش بیشتر باشه، خودش میشه یک بحث زیرمجموعه که هرکس ممکنه نسبت بهش یک حدس و برآوردی داشته باشه، ولی اگر بشه بصورت مستدل و مستند هم شاید بشه برآوردهای مطمئن تری رو از طریق احتمالات و آمار داشت.
حالا نظر شما چیه؟ بنظر شما اینطور برنامه ها یا دانشهای خاصی رو که هرکسی نداره، و هرکسی صلاحیت داشتن اونا رو نداره، باید بصورت عمومی منتشر کرد یا نه؟ البته من خودمم شاید صلاحیت نداشته باشم، یا اینطور بگم که سوء استفاده کنم، ولی این با اینکه در ابعاد عمومی یه چیزی منتشر بشه و استفاده ازش طوری راحت بشه که افراد خیلی بیشتری (با سواد و تخصص کمتر) یا حتی همهء افراد بتونن ازش استفاده کنن خب تفاوت میکنه!
همین اخیرا میخواستم یه مقاله توی وبلاگم بذارم درمورد تجربهء اخیرم که نوشتن یک روبات اسپمر بود؛ میتونستم سورس برنامه یا حداقل بخشهایی از اون رو در مقاله درج کنم، ولی فکر کردم این کار درستی نیست و بهتره کد نذارم و فقط یکسری توضیحات کلی بدم که بیشتر در استفاده های مثبت و تامین امنیت میشه استفاده کرد یا حداقل اینکه طرفی که بخونه و بتونه ازش استفاده کنه باید خودش بقدر کافی سواد و توانایی اینطور کارها رو داشته باشه، نه اینکه هر جوجه هکر و هر بی سواد بی سر و پا و عقده ای یا اینکه میخوان خودنمایی کنن بتونه از اون مطالب و کارها استفاده منفی بکنه.
ضمنا هدف خود من از نوشتن این روبات اسپمر درواقع بیشتر یادگیری و کسب تجربه و مهارت بود در کلیت این کار (نوشتن انواع روبات که میدونید استفاده های مشروع/مفید هم دارن) و نه اینکه بخوام هکر و اسپمر بشم و این کار و بارم بشه.

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

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

حمید محمودی
سه شنبه 12 فروردین 1393, 17:38 عصر
اینطور برنامه ها یا دانشهای خاصی رو که هرکسی نداره، و هرکسی صلاحیت داشتن اونا رو نداره، باید بصورت عمومی منتشر کرد یا نه؟

بنظر میرسه بحث از زاویهء کسی که میخواد دانش خاصی رو انتشار بده، جلو رفته؛ از زاویه دیگه میشه گفت مطلبی که بنظرم علامت سوال بود توی گفته های بالا این بود که "a little learning is a dangerous thing" یا "a little knowledge is a dangerous thing"؛ این اصطلاح رو اولین بار alexander pope در قرن هجدهم در an essay on criticism که در سال 1709 به چاپ رسید، بیان کرده؛(گرچه ریشه هایی از این تفکر رو قبل از اون در دههء اول قرن شونزدهم هم میشه دید)؛ به هر حال با این تفکر خواسته بگه "دانش کم میتونه مردم رو گمراه کنه که اونها به اشتباه فکر کنند متخصص تر و/یا خبره تر هستند از اون چیزی که واقعیت وجودی شون هست"؛ به عبارتی دیگه، در حوزه انتشار دانش، دانش های خاص میتونند خطرناک باشند از این جهت که احتمال درست نبودن اونها، ضربه به جامعه یا افراد خاصی بزنه و یا ضررات و مشکلاتش صرفا متوجه شخص انتشار دهنده بشه؛ که قطعا حوزهء این مسئله هرچی وسیع تر باشه مسئله رو میتونه بحرانی تر بکنه....

ایمان اختیاری
چهارشنبه 13 فروردین 1393, 08:09 صبح
من به شخصه نمی تونم خودمو راضی کنم که چیزی بگم یا آموزش بدم که بعدا ازش سو استفاده بشه . اگه طرف مایل هستش بره خودش دنبالش یاد بگیره یا هرچی. اما با توجه به اینکه می دونم یا حداقل حس می کنم از چیزی که می گم یا یاد می دم سواستفاده می شه طبعا سعی می کنم سکوت کنم . لااقل بعدا عذاب وجدان نمی گیرم .
یا نهایت نهایت نهیتش خودمو کار رو انجام می دم که بدونم سطح خرابی یا دامنه گندکاری رو کنترل کنم.

eshpilen
چهارشنبه 13 فروردین 1393, 11:47 صبح
بدون کد سخت میشه با دیگران در زمینهء برنامه ها تعامل و بحث کرد و یادگیری و همفکری (دو طرفه) داشت. البته میشه کد کامل و برنامهء آماده رو نذاشت، ولی بازم خود کد امکان سوء استفاده رو داره کمی تا اندکی، حتی همون ایده هایی که میرسونید هم میتونن خطرناک باشن.
بهرحال از نظر گرفتن فیدبک و کمک و آموزش و روشن شدن تمام مسائل مثل باگها و روشهای مناسبتر و بهینه سازیها و این حرفا، انتشار کامل مفیدتره؛ ولی خب شاید به عوارض و مسئولیتش نیارزه!

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

خلاصه شمشیری است دو لبه!
ولی بالاخره کدوم طرفش میچربه و بهتر کار میکنه نمیدونم!!
مهم اینه که در مجموع سود بیشتر باشه، وگرنه جلوی سایدافکت ها و سوء استفاده ها و هزینه ها رو نمیشه بطور کامل گرفت.