بایگانی

بایگانی سپتامبر

حمله‌ی بوووووووووووووووووووووغ به ایران

۳۱ شهریور ۱۳۸۸ ۳ دیدگاه

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

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

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

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

* البته حالا که ذغال خوب در دسترس است، از خواند کتاب تاریخی بدمان که نمی‌آید، هدیه‌ی تولد هم کتاب تاریخی می‌گیریم :) .

Categories: روزمره Tags:

آرسنو موتون

۳۰ شهریور ۱۳۸۸ ۱ دیدگاه

امروز دوباره از این ای‌میل‌های افشاگری و تجاوز و کهریزک و این‌جور چیزها برایم آمد. خیلی به ندرت پیش می‌آید که چنین ای‌میل‌‎هایی را باز کنم، چه برسد به اینکه بخوانشان.  ولی امروز حوصله‌ام بد جوری سر رفته بود و از درد ناچاری ای‌میل را باز کردم. آقا ۲ خط از ای‌میل را نخوانده‌بودم که با کلمه‌ی عجیب و غریب «آرسنو موتون» برخورد کردم. آقا ما بی‌سوادیم توی این وبلاگ هم هزار بار فریاد زدم که بی‌سوادم!! اما از آنجایی که خدا برای بی‌سوادی درمان‌های زیادی آفریده از جمله گوگل، رفتم و به دنبال کلمه‌ی «آرسنو موتون» گشتم، گوگل ۱۹۹ تا نتیجه بر گرداند که با به جز ۲ تا بقیه کپی- پیست مطلب اصلی بودند. از آن ۲ تا هم که یکی به صورت بدیهی کسی است که همه دارند از روی آن کپی-پیست می‌کنند و یکی هم که مثلا برداشته خبر را تفسیر کرده. ولی برای من همچنان معلوم نشد که این کلمه‌ی «آرسنو موتون» یعنی چه؟!

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

حکم شرعی

۲۴ شهریور ۱۳۸۸ ۳ دیدگاه

آقا کسی اینجا هست که بدونه حکم شرعی خریت کسی که در معامله با یک فرد کلاهبردار، کلاهش برداشته شده چیست؟ لازم به ذکر است که نامبرده نسبت به کلاهبردار بودن کلاهبردار کاملا واقف بوده ولی فکر می‌کرده خیلی زنگه ;)

Categories: روزمره, پتانه Tags:

هنر

۲۴ شهریور ۱۳۸۸ ۱ دیدگاه

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

«هنر» از ریشه‌ی اوستایی hunara به معنای عظمت، استعداد و قابلیت است.* در زبان پهلوی hunara به معنای فضیلت (virtue)، توانایی (ability)، و مهارت (skill) است.**

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

هنر باید و گوهر نامدار،
خرد یار و فرهنگش آموزگار.

چو این چار گوهر به جای آورد،
به مردی جهان زیر پای آورد.

یا

چنین گفت با او یل اسفندیار
که «تخمی که هرگز نروید مکار!

تو فردا بینی ز مردمان هنر،
چو من تاختن را ببندم کمر.»

و یا معروف‌تر از همه

هنر نزد ایرانیان است و بس
ندارند شیر ژیان را به کس****

و یا امام محمد غزالی*** در نصیحة الملوک می‌نویسد

نبینی که چون از شهری صفت کنند که آباد است و مردم آن شهر آسوده و راحت از پادشاه خویش بی‌رنج، بدان که از هنر ونیکو نیِّتیِ پادشاه است نه از رعیت

خلاصه‌ی همه‌ی این حرف‌ها این که دلم خیلی سوخت که ای قدر در بحث زبان ضعیف هستم، باید فکری بکنم

* حاشیه‌ی محمد معین بر برهان قاطع
** D. N. Mackenzie, A Concise Pahlavi Dictionary, Oxford University Press, 1971
*** احتمالا در چند وقت آینده پستی خواهم نوشت در خصوص آرا و تفکرات امام محد غزالی و ربط آن‌ها با شرایط امروز کشور، که احتمالا خواندن آن خالی از لطف نخواهد بود.
**** من این شعر را بلد نبودم. ممنون از سوفیا  و کامنتش

خستگی

۲۳ شهریور ۱۳۸۸ ۲ دیدگاه

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

Categories: روزمره Tags:

بهینه‌سازی سرعت اجرای برنامه‌ها در Matlab -قسمت اول

۲۲ شهریور ۱۳۸۸ ۲ دیدگاه

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

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

موارد ۱ و ۲ را که در پست قبلی نوشته بودم. پس حالا می‌رویم سراغ مورد سوم:

۳- مشخص کردن گلوگاه‌های برنامه را می‌توان به عنوان گام بعدی برای هر گونه بهینه‌سازی بیان کرد. زیرا معمولا در هر برنامه یک یا چند نقطه‌ی گلوگاهی وجود دارد که باعث می‌شوند بهینه‌سازی سایر نقاط تاثیر چندانی بر عملکرد برنامه نداشته باشند.  به عنوان مثال، تصور کنید که برنامه‌ی شما ۲  تابع داشته باشد. که یکی ۹۸% زمان اجرا را به خود اختصاص بدهد و دیگری فقط ۲%. اگر شما حدس بزنید که با یک ساعت کلنجار رفتن با کد تابع اول می‌توانید آن را ۲ برابر سریع‌تر کنید و یا با صرف همین زمان بر روی تابع دوم  می‌توانید آن را ۲۰ برابر سریع‌تر کنید، ترجیح می‌دهید بر روی بهینه‌سازی کدام تابع کار کنید؟ ( بهینه‌سازی تابع اول زمان کلی را تفریبا نصف می‌کند ولی بهینه‌سازی تابع دوم تقریبا تاثیری روی زمان اجرای برنامه ندارد). وقتی شما یک تکه کد نوشته شده و آماده دارید دستور profiler در matlab می‌‌تواند بسیار کارگشا باشد. روش کار هم بسیار ساده است.

ابتدا در خط دستور بنویسید

>>profiler on
>>profiler clear

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

>>profiler view

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

حالا که گلوگاه مشخص شد، باید دید چگونه می‌توان آن را بر طرف کرد.

۳- شاید ساده‌ترین و اولین گامی که باید در راستای تسریع برنامه‎‌های matlab برداشت، تخصیص حافظه به آرایه‌ها و ماتریس‌ها قبل از شروع محاسبات باشد که اصطلاحا preallocation نامیده می‌شود. در matlab این امکان وجود دارد که در حین اجرای برنامه، سایز آرایه‌ها و ماتریس‌ها آن را تغییر داد. ولی از آنجایی که این عمل خیلی بهینه نمی‌باشد و تغییر اندازه آرایه‌ها به صورت پویا و در حین اجرای برنامه  بسیار کند انجام می‌شود، انجام مکرر آن به راحتی می‌تواند تبدیل به گلوگاه اجرای برنامه شود.

۴- یکی از توانمندی‌های مهم matlab انجام محاسبات برداری و ماتریسی با سرعت و بازده بالا می‌باشد و بر خلاف این گونه محاسبات، اجرای حلقه‌ها (مانند for و یا while) و دسترسی به خانه‌های یک آرایه از طریق اندیس‌ به شدت کند و غیر بهینه می‌باشد. به همین دلیل با حذف دسترسی با اندیس به المان‌های آرایه‌ها و ماتریس‌ها و همچنین حذف حلقه‌ها و به جای آن‌ها پیاده سازی الگوریتم به کمک عملیات برداری می‌توان سرعت اجرا به مقدار قابل توجهی افزایش داد.

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

*قسمت بعدی احتمالا قسمت آخر این مجموعه می‌باشد.

دختر رز

۲۰ شهریور ۱۳۸۸ بدون دیدگاه

امشب، پی جام یک منی خواهم کرد
خود را به دو جام می غنی خواهم کرد

اول سه طلاق عقل و دین خواهم گرفت
سپس دختر رز را به زنی خواهم گرفت

Categories: شعر Tags:

بهینه‌سازی سرعت اجرای برنامه‌ها در Matlab -مقدمه

۱۲ شهریور ۱۳۸۸ ۱ دیدگاه

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

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

حالا از این حرف و حدیث‎ها که بگذریم و بیاییم سر اصل مطلب:

۱-  قبل از هر کاری، سعی کنید که دستورات matlab را به خوبی یاد بگیرید. عموما دستورات built-in بسیار بهینه نوشته شده‌اند و به درستی عملکردشان هم به خوبی می‌توان اعتماد کرد. پس گاهی بد نیست به جای اینکه سریع مشغول کد زدن بشویم، در ابتدای کار کمی هم وقت به یادگیری بیشتر matlab اختصاص بدهیم.

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

ادامه دارد ...

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

عقاب

۴ شهریور ۱۳۸۸ ۴ دیدگاه

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

یادش بخیر، تقریبا همه‌ی بچه‌های گروه کوه  این شعر را حفظ بودند من فقط  چند بیت اول و آخر این را حفظ بودم، این چند بیت آخر را همیشه برای خودم در چند قدمی قله می‌خواندم

سوی بالا شد و بالاتر شد
راست با مهر فلک، هم سَر شد

لحظه یی چند بر این لوح کبود
نقطه یی بود و سپس هیچ نبود

[audio:oghab_khanlari.mp3]

و اما خود شعر

گشت غمناک دل و جان عقاب
چو ازو دور شد ایام شباب
دید کش دور به انجام رسید
آفتابش به لب بام رسید

باید از هستی دل بر گیرد
ره سوی کشور دیگر گیرد

خواست تا چاره ی ناچار کند
دارویی جوید و در کار کند

صبحگاهی ز پی چاره ی کار
گشت بر باد سبک سیر سوار

گله کاهنگ چرا داشت به دشت
ناگه از وحشت پر ولوله گشت

وان شبان ، بیم زده ، دل نگران
شد سوی بره ی نوزاد دوان

کبک ، در دامن خاری آویخت
مار پیچید و به سوراخ گریخت

آهو استاد و نگه کرد و رمید
دشت را خط غباری بکشید

لیک صیاد سر دیگر داشت
صید را فارغ و آزاد گذاشت

چاره ی مرگ، نه کاریست حقیر
زنده را دل نشود از جان سیر

صید هر روز به چنگ آمده زود
مگر آن روز که صیاد نبود

آشیان داشت در آن دامن دشت
زاغکی زشت و بد اندام و پلشت

سنگ ها از کف طفلان خورده
جان ز صد گونه بلا در برده

سال ها زیسته افزون ز شمار
شکم آکنده ز گند و مردار

بر سر شاخ ورا دید عقاب
ز آسمان سوی زمین شد به شتاب

گفت که : ‹‹ ای دیده ز ما بس بیداد
با تو امروز مرا کار افتاد

مشکلی دارم اگر بگشایی
بکنم هر چه تو می فرمایی ››

گفت : ‹‹ ما بنده ی در گاه توییم
تا که هستیم هوا خواه توییم

بنده آماده بود ، فرمان چیست؟
جان به راه تو سپارم ، جان چیست ؟

دل، چو در خدمت تو شاد کنم
ننگم آید که ز جان یاد کنم ››

این همه گفت ولی با دل خویش
گفت و گویی دگر آورد به پیش

کاین ستمکار قوی پنجه ، کنون
از نیاز است چنین زار و زبون

لیک ناگه چو غضبناک شود
زو حساب من و جان، پاک شود

دوستی را چو نباشد بنیاد
حزم را باید از دست نداد

در دل خویش چو این رای گزید
پر زد و دورترک جای گزید

زار و افسرده چنین گفت عقاب
که :‹‹ مرا عمر، حبابی است بر آب

راست است این که مرا تیز پر است
لیک پرواز زمان تیزتر است

من گذشتم به شتاب از در و دشت
به شتاب ایام از من بگذشت

گر چه از عمر، ‌دل سیری نیست
مرگ می آید و، تدبیری نیست

من این شوکت و این شهپر و جاه
عمر از چیست بدین حد کوتاه ؟

تو بدین قامت و بال ناساز
به چه فن یافته ای عمر دراز ؟

پدرم از پدر خویش شنید
که یکی زاغ سیه روی پلید

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

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

لیک هنگام دم بازپسین
چون تو بر شاخ شدی جایگزین

از سر حسرت با من فرمود
کاین همان زاغ پلید است که بود

عمر من نیز به یغما رفته است
یک گل از صد گل تو نشکفته است

چیست سرمایه ی این عمر دراز؟
رازی این جاست، تو بگشا این راز››

زاغ گفت : ‹‹ ار تو در این تدبیری
عهد کن تا سخنم بپذیری

عمرتان گر که پذیرد کم و کاست
گنه کَس نه، که تقصیر شماست

ز آسمان هیچ نیایید فرود
آخر از این همه پرواز چه سود ؟

پدر من که پس از سیصد و اند
کانِ اندرز بُد و دانش و پند

بارها گفت که بر چرخ اثیر
بادها راست فراوان تاثیر

بادها کز زبر خاک وَزَند
تن و جان را نرسانند گزند

هر چه ا ز خاک، شوی بالاتر
باد را بیش گزندست و ضرر

تا بدانجا که بر اوج افلاک
آیت مرگ بود ، پیک هلاک

ما از آن، سال بسی یافته ایم
کز بلندی، ‌رخ برتافته ایم

زاغ را میل کند دل به نشیب
عمر بسیارش از آن نصیب

دیگر این خاصیت مردار است
عمر مردار خوران بسیار است

گند و مردار، بهین درمان ست
چاره ی رنج تو، زان آسان ست

خیز و زین بیش، ‌ره چرخ مپوی
طعمه ی خویش بر افلاک مجوی

ناودان، جایگهی سخت نکوست
به از آن کنج حیاط و لب جوست

من که صد نکته ی نیکو دانم
راه هر برزن و هر کو دانم

خانه ای در پس باغی دارم
وندر آن باغ سراغی دارم

خوان گسترده ی الوانی هست
خوردنی های فراوانی هست ››

***

آن چه ز آن زاغ همی داد سراغ
گندزاری بُوَد اندر پس باغ

بوی بد ،رفته از آن، تا ره دور
معدن پشه، مُقام زنبور

نفرتش گشته بلای دل و جان
سوزش و کوری دو دیده، از آن

آن دو همراه رسیدند از راه
زاغ بر سفره ی خود کرد نگاه

گفت : ‹‹ خوانی که چنین الوان ست
لایق محضر این مهمان ست

می کنم شکر که درویش نیم
خجل از ما حضر خویش نیم ››

گفت و بنشست و بخورد از آن گند
تا بیاموزد از او مهمان پند

****

عمر در اوج فلک بُرده به سر
دم زده در نفس ِ باد سحر

ابر را دیده به زیر پر خویش
حیوان را همه فرمانبر خویش

بارها آمده شادان ز سفر
به رهش بسته فلک طاق ظفر

سینه ی کبک و تذرو و تیهو
تازه و گرم شده طعمه ی او

اینک افتاده درین لاشه و گند
باید از زاغ بیاموزد پند

بوی گندش دل و جان تافته بود
حال بیماری دق یافته بود

دلش از نفرت و بیزاری، ریش
گیج شد، بست دمی دیده ی خویش

یادش آمد در آن اوج سپهر
هست زیبایی و آزادی و مهر

فر و آزادی و فتح و ظفرست
نفس خرم باد سحرست

دیده بگشود و به هر جا نگریست
دید گردش اثری زین ها نیست

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

بال بر هم زد و بر جست ز جا
گفت : که ‹‹ ای یار ببخشای مرا

سال ها باش و بدین عیش بناز
تو و مردار، تو و عمر دراز

من نیم در خور این مهمانی
گند و مردار تو را ارزانی

گر در اوج فلکم باید مرد
عمر در گند به سر نتوان برد ››

****

شهپر شاه هوا ، اوج گرفت
زاغ را دیده بر او مانده شگفت

سوی بالا شد و بالاتر شد
راست با مهر فلک، هم سَر شد

لحظه یی چند بر این لوح کبود
نقطه یی بود و سپس هیچ نبود

Categories: شعر Tags:

راه سبز

۲ شهریور ۱۳۸۸ ۲ دیدگاه

Categories: ایران Tags: