هفته خواندن کتاب‌های ممنوعه


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

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

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

راستی شما می‌خواهید در طول این هفته کدام متن ممنوعه را بخوانید؟

شوخی کوچک با کسانی که از اینترنت بی‌سیم شما استفاده می‌کنند

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

برای استفاده از این روش اینترنت شما باید از طریق کارت شبکه یک کامپیوتر لینوکسی، به اشتراک گذاشته شده باشد.

برای این شوخی اول باید شبکه را به دو قسمت تقسیم کنید. بخشی که خودتان استفاده می‌کنید و بخشی که همسایه‌ها از شما قرض می‌گیرند. اینکار را از طریق تنظیمات DHCP انجام خواهیم داد. در dhcpd.conf:

ddns-updates off;
ddns-update-style interim;
authoritative;

shared-network local {

       subnet *.*.*.* netmask 255.255.255.0 {
               range *.*.*.* *.*.*.*;
               option routers *.*.*.*;
               option subnet-mask 255.255.255.0;
               option domain-name "XXXXX";
               option domain-name-servers *.*.*.*;
               deny unknown-clients;

               host trusted1 {
                       hardware ethernet *:*:*:*:*:*;
                       fixed-address *.*.*.*;
               }
                }

       subnet 192.168.0.0 netmask 255.255.255.0 {
               range 192.168.0.2 192.168.0.10;
               option routers 192.168.0.1;
               option subnet-mask 255.255.255.0;
               option domain-name-servers 192.168.0.1;
               allow unknown-clients;

       }
}

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

/sbin/iptables -A PREROUTING -s 192.168.0.0/255.255.255.0 -p tcp -j DNAT —to-destination 64.111.96.38

ترافیک مهمان‌ها را به KittenWar خواهد فرستاد ولی این همه شوخی ما نیست. ما می‌توانیم تمام ترافیک مهمان‌ها را از یک پروکسی شفاف رد کنیم. پس اول squid را به عنوان پروکسی نصب می‌کنیم و بعد:

/sbin/iptables -A PREROUTING -s 192.168.0.0/255.255.255.0 -p tcp -m tcp —dport 80 -j DNAT —to-destination 192.168.0.1

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

#!/usr/bin/perl
$|=1;
$count = 0;
$pid = $$;
while (<>) {
       chomp $_;
       if ($_ =~ /(.*.jpg)/i) {
               $url = $1;
               system("/usr/bin/wget", "-q", "-O","/space/WebPages/images/$pid-$count.jpg", "$url");
               system("/usr/bin/mogrify", "-flip","/space/WebPages/images/$pid-$count.jpg");
               print "http://127.0.0.1/images/$pid-$count.jpgn";
       }
       elsif ($_ =~ /(.*.gif)/i) {
               $url = $1;
               system("/usr/bin/wget", "-q", "-O","/space/WebPages/images/$pid-$count.gif", "$url");
               system("/usr/bin/mogrify", "-flip","/space/WebPages/images/$pid-$count.gif");
               print "http://127.0.0.1/images/$pid-$count.gifn";

       }
       else {
               print "$_n";;
       }
       $count++;
}

از این بعد همسایه‌ها خواهند توانست بدون مشکل با اینترنت کار کنند ولی برای اینکه فراموش نکنند مشغول استفاده از اینترنت شما هستند،‌ تمام تصاویر برایشان برعکس خواهد بود:


و البته چون روی GNU هستید، امکانات بی‌نهایت است. مثلا می‌ةوانید به جای برعکس کردن تصاویر، آن‌ها را محو کنید تا لینک سایت خودتان را بالا و زیر هر صفحه نمایش دهید (: حالا دیگر تنها چیزی که جلوی شما را خواهد گرفت، تخیلتان است.

هنر علیه دستگاه اشعه ایکس فرودگاه

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



 منبع

پادکست اول: چگونه می‌توانیم یک برنامه‌نویس خوب بشویم؟


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

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

 پادکست چگونه می‌توان یک برنامه‌نویس خوب شد (کیفیت متوسط؛ سه و نیم مگابایت)

 پادکست چگونه می‌توان یک برنامه‌نویس خوب شد (کیفیت خوب؛ هفت و نیم مگابایت)

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

این هم یکی از اون مباحثی است که خوشحال می شم کامنت‌ها رو ببینم و فیدبک داشته باشم چون ظاهرا علاقمند شدیم که ادامه‌اش بدیم.

شرکت کنندگان در این برنامه به ترتیب ظهور:

 جلال بنایی : برنامه نویس جاوا و مسوول نصب اس ام اس‌ها

 پیام معین افشاری برنامه‌نویس و نویسنده وبلاگ پانوشت

 لیلا: همکار من در تعریف جک و نقل قول

 برمک و ترانه که هر دو جاوا کار هستن و برنامه‌نویس حرفه‌ای

و البته

 فرانتالوت: خواننده سبک NerdCore که آهنگ‌های هی‌پاپ مربوط به دنیای هکرها رو می‌خونه که بدون اینه خودش بدونه، اینجا از آهنگش استفاده کردیم.

کتاب صوتی « عادت می‌کنیم »، فصل اول تا سوم

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


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

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

ممنون وامیدوارم لذت ببرید.

برام عجیبه کسی بدون اسم این زحمت بزرگ رو بکشه. البته به راحتی می‌تونید برای مشکلات یا چیزهای دیگه به من ایمیل بزنید یا کامنت بذارید تا کانال یکطرفه نباشه (: از داستان گفتن بگذریم:

 فصل اول کتاب صوتی عادت می‌کنیم

 فصل دوم کتاب صوتی عادت می‌کنیم

حتما نظرات رو بگین تا در قدم‌های بعدی بهتر و بهتر بشه (:

جواب به چند سوال و فرمول محاسبه فاصله از خوشبختی

اشاره: دوستی یک ایمیل زده و کلی سوال پرسیده. چون سوال‌ها جالب بودند جواب‌ها رو گذاشتم روی سایت

۱- شما از چه زبون برنامه نویسی استفاده می کنی؟

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

۲- چجور برنامه‌ای می‌نویسی (منظورم تجاری، وب،… است)؟

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

گاهی هم برای وب می‌نویسم. مثلا الان یک چیزی درست می‌کنم که ببینه من در چه ماه‌هایی مطلب نوشتم و بعد یک فهرست درست کنه از ماه‌ها که بتونم بذارم کنار وبلاگم و آرشیو ماهانه درست بشه.

۳- از چه سیستم عاملی استفاده می‌کنی؟

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

۴- بک آپ گیری از اطلاعاتتون رو چجوری انجام می‌دین و اونها رو روی چی ذخیره می‌کنین؟

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

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

حالا که خودت بحث رو پیش کشیدی خوبه این رو تکرار کنم: همین الان بک آپ بگرید! بعدا در روز حادثه خواهید گفت: دقیقا فردا می‌خواستم بک آپ بگیرم ها!

۵- چرا صفحه وبلاگ شما توی مرورگر IE 7 ذخیره نمی‌شود؟

این رو دوستان دیگه‌ای هم تذکر دادن. ولی جوابش رو نمی‌دونم (: متاسفم که اینجوریه ولی حداقل فعلا فرصت نمی‌کنم حلش کنم چون به اسکپلورر ورژن ۷ هم دسترسی ندارم. دوست دارم حل بشه ولی خودم دست بکار نخواهم شد فعلا (:

۶- به نظرت خوشبختی چیه؟

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

۷- هدفت در زندگی چیه؟

خوشبختی (: اینکه اگر به گذشته نگاه کنم احساس نکنم که موقع انجام کارها اشتباه کردم. ممکنه به گذشته که نگاه کنم با خودم بگم که اگر فلان کار رو نمی‌کردم بهتر بود ولی این مهم نیست. مهم اینه که در نگاه به گذشته درک کنم که در اون موقع چرا اون کار رو کردم و بدونم که اون موقع به نظرم اون کار درست بود. یک هدف دیگه هم دارم: کاری نکنم که اگر همه بدونن، ناراحت بشم. لازم نیست هر کاری رو جار بزنم ولی کلا دوست ندارم کاری بکنم که حس کنم بقیه نباید بدونن.

این چند جمله رو اینجوری هم می‌شه تفسیر کرد: هدفی ندارم. در لحظه سعی می‌کنم درست حرکت کنم ولی برای آینده دور هدفی ندارم. بخصوص اگر هدف چیزهایی مثل خارج رفتن، استاد دانشگاه درست و حسابی شدن، اختراع کردن، پول زیاد و … باشه. در لحظه راحت و شاد زندگی می‌کنم و معتقدم آینده خودش خوب پیش می‌یاد. نیومد هم مهم نیست چون من فعلا که خوشحالم (:

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

امنیت


آدم‌هایی که آزادی رو فدای امنیت کنند،‌ به هیچ کدوم نمی‌رسند.

کتاب صوتی بازی‌های جنگی: قسمت آخر

واو… آخرین قسمت! حالا که دنیا نجات یافته، در یک فصل کوتاه پنج دقیقه ای دیوید را در مدرسه می‌بینیم. فصل نسبتا جذابی است و با خیلی از واقعیت‌ها هم منطبق.

 موخره کتاب صوتی بازی‌های جنگی

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