You are currently browsing the monthly archive for سپتامبر 2009.
جشن روز آزادی نرمافزار در تهران برگزار شد اما آنطور که من فکرش را میکردم، نبود و چنگی به دل نزد! این جشن که بیش از 5 پشتیبان و برگزارکننده داشت؛ علیرغم توقعی که جامعهی کاربران واقعی نرمافزارهای آزاد داشتند؛ درخور یک مراسم رسمی و در شان دنیای نرمافزارهای آزاد، نبود. شاید ملاقات دوستان اینترنتی از نزدیک، مهمترین دستاورد این جشن به شمار بیاید. اما پیش از ادامهی کار بگویم این دیدگاه شخصی من نیست؛ بسیاری از دوستان شرکتکننده که پس از مراسم با من صحبتی هرچند کوتاه داشتند، با من همعقیدهاند. مطلبی وجود دارد که باید آنرا عرض کنم. در این جشن، حضور علاقهمندان به نرمافزارهای آزاد بسیار چشمگیر بود و استقبال خوبی به عمل آمد. طوری که من مانند آنرا در سهسال گذشته ندیده بودم. اما مشکل اینجاست که مکان درنظرگرفتهشده برای این جشن، گنجایش اینهمه علاقهمند را نداشت. من نمیدانم اگر مسئولان برگزارکننده از فضای کوچک این سالن درنظرگرفتهشده، اطلاع داشتند؛ چرا همچنان به ثبتنامهای بیشاز حد و بدون مرز در وبسایت مخصوص این جشن اجازه دادند؟
فردی در این جشن بود که ادعای برنامهنویسی میکرد و صحبتهای زیادی دربارهی تخصص شخصیاش به حاضران مجلس ارائه میداد. من از این فرد (که اسمش را مطرح نمیکنم) سوالی دارم: شما که تا این حد بر تخصص شخصیتان تاکید کردید، چطور نتوانستید یک سیستم ثبتنام با تعیین گنجایش محدود برای وبسایت این جشن طراحی کنید؟ امیدوارم پاسخ مناسبی برای این سوال (که در ذهن بسیاری از حاضران پیش آمدهبود) داشتهباشید. لازم به ذکر است که بسیاری از علاقهمندانی که در سایت این جشن به صورت رسمی ثبتنام کردهبودند؛ نتوانستند وارد سالن جشن بشوند! آنهم به دلیل آنکه این سالن کوچک گنجایش این علاقهمندان را نداشت. اما برای اینکه به عمق ماجرا پی ببریم، یک مثال مطرح میکنم. فرض کنید فردی که علاقهمند به دنیای نرمافزارهای آزاد است، تصمیم میگیرد که در جشن روز آزادی نرمافزار شرکت کند. او با رفتن به سایت این جشن، درخواست خود را برای شرکت در این جشن ثبت میکند و کد مربوط به شرکت او در این مراسم صادر میشود. این درحالیاست که محل زندگی این فرد تا مکان برگزاری مراسم، چندین ساعت راهاست. فرد موردنظر ما با کمال خوشحالی از چند ساعت قبل، منزل خود را به قصد شرکت در مراسم روز آزادی نرمافزار ترک میکند اما هنگامی که به فرهنگسرای آیتی (مکان برگزاری جشن) میرسد، به او میگویند که ظرفیت سالن تکمیل شده و او اجازه ندارد در مراسم حاضر شود؛ درحالی که اسم و ایمیل او در سیستم ثبت شده و کد شرکت در مراسم برای او صادر شدهاست. حالا خودتان را جای این شخص بگذارید. از ندانمکاریهای دستندرکاران این جشن، فرد مورد نظر ما، هم وقت خود را برای رسیدن به این جشن تلف کرده، هم هزینهی زیادی را برای رسیدن به این مکان صرف کرده. درحالی که هیچ نتیجهای برای او نداشته! اگر مسئولان میدانستند که ظرفیت سالن این فرهنگسرا چه میزان است، باید سیستم ثبتنامهای خود را به گونهای مینوشتند که در صورت تکمیل ظرفیت سالن، ثبتنام جدید امکانپذیر نشود.
بهخود جشن میرسیم. مجریهای برنامه (که گویا افراد کلیدی انجمن صنفی نرمافزارهای آزاد ایران هم بودند) از همان ابتدا از مسیر معینشده خارج شدند. در لیست برنامهی جشن نوشتهشده بود: “معرفی فلسفه و تاریخچه روز آزادی نرم افزار”، اما خبری از ارائهی تاریخچهی اینروز نبود. فقط مقدمهچینیهایی شنیدیم که آنها را از قبل میدانستیم. این برنامه پشتیبانان زیادی داشت. پس فکر نمیکنم مشکل مالیای وجود داشته. مسئولان میتوانستند از یک مجری مسلط برای این مراسم رسمی دعوتکنند؛ اما متاسفانه خود مسئولان نقش مجری را هم بازی میکردند. من ایرادی به این مورد نمیگیرم، اما ایکاش قبل از حاضر شدن درمقابل مردم، کمی تمرین میکردند تا روانتر صحبت کنند.
مطلب دیگری که باید اشارهکنم، ایناست که درستاست که ما طرفدار نرمافزارهای آزاد هستیم، اما این دلیل نمیشود که جنبش نرمافزارهای اختصاصی را تخریب کنیم. در طی سخنرانیهای دوستان، بارها صحبت از شرکتهای حامی نرمافزارهای اختصاصی به میان آمد از جمله مایکروسافت. کسی که صحبت میکرد، این شرکت و بنیانگزار آن را به نوعی تخریب میکرد که این موضوع به هیچوجه درست نیست.
من شخصا فکر میکنم که دنیای نرمافزارهای آزاد در این جشن، از آزاد بودن خارج شد و محدود شد. یکی از کسانی که در این مراسم صحبت میکرد، دست خود را به سمت نهادهای دولتی دراز کرد تا از آنها برای حمایت از جنبش نرمافزارهای آزاد کمک بگیرد. همین فرد، چندین بار اشاره کرد که دولت میتواند نهادهای زیردست خود را مجبور به استفاده از نرمافزارهای آزاد بکند. به نظر من اجبار به استفاده از نرمافزارهای آزاد، ناقض قوانین تعریف شدهی foss است. او همچنین جامعهی آزادی نرمافزار را به سیاست و اشخاص سیاسی محدود کرد. من عقیدهدارم فردی که از یک نرمافزار آزاد استفاده میکند، باید خودش به این نتیجه رسیدهباشد که نرمافزارهای آزاد مناسبتر هستند؛ نه آنکه مجبور به استفاده شود.
مورد دیگری که من دیدم، محدود کردن نرمافزارهای آزاد به سیستم عامل لینوکس بود. فقط و فقط صحبت از لینوکس مطرح میشد و صحبتی از نرمافزارهای آزاد تحت سایر سیستمعاملها به میان نیامد. استفاده از عبارات ساختگی (مثل: “سورس بسته”!) و تبیلغات زیاد فروشگاههای عرضهکنندهی محصولات آزاد و همچنین کلی گویی در مورد برنامهنویسان php از موارد دیگری بود که بیتجربه بودن سخنران را میرساند. سخنران مذکور که یک انجمن اینترنتی در زمینه php نیز دارد، در صحبتهای خود، اکثر برنامهنویسان php را به آشفتهنویسی محکوم کرد، اما خودش و تیم خودش را جدا از آنها میدانست.
من خواهشی از سخنرانهای آیندهی این جشنها دارم. اگر تلفظ صحیح اصطلاحات کامپوتری را نمیدانید؛ چرا تا اینحد اصرار دارید که از آنها درمیان کلامتان استفاده کنید؟ میتوانید معادلهای فارسی آنها را در صحبتهایتان بهکار ببرید. اگر قرار باشد فیلم یکی از این جشنها به کشورهای توسعهدهندهی نرمافزارهای آزاد فرستاده شود؛ اینهمه اشتباهات تلفظی باعث کاهش اعتبار ما نزد آن کشورها میشود.
از برنامههای این جشن، اجرای موسیقی زنده بود. ضمن اینکه از گروه موسیقی یاران بهخاطر نوازندگی زیبایشان سپاسگذارم؛ از آنها دلخور هم هستم. چرا در یک جشن (که باید شادی در آن حکمفرما باشد) از موسیقی خستهکننده که خوابآلودگی حضار را به همراه داشت؛ استفاده کردید؟ آیا یک جشن نباید با موسیقیهای شاد همراه باشد؟
از آخرین برنامههای این مراسم، معرفی جلوههای ویژهی لینوکس بود، نه صرفا محیط KDE. قرار بود جلوههای ویژهی لینوکس معرفی شود اما نه فقط محیط میزکار kde. متاسفانه بدون اینکه صحبتی از سایر میزکارهای لینوکسی (از جمله gnome که جلوههای ویژهی خوبی هم دارد) به میان بیاید، فقط به معرفی kde بسندهشد.
مطالب زیادی وجود دارد که میتوانستم آنها را هم در این پست بگنجانم، اما تا حدی زیادهروی هم کردم؛ قبول دارم! این جشن خوبیهای بسیاری همداشت، همین که این دنیای آزاد به دیگران معرفی شد، از مهمترین ویژگیهای جشن بود. یا کارهای دیگری که ارائهشد؛ مثل بروشوری دربارهی نرمافزارهای آزاد که بین حاضرین پخش شد یا هفته نامهی “بزرگراه فناوری” که به رایگان در اختیار شرکتکنندگان قرار گرفت و خیلی چیزهای دیگر. در کل، هدف من از جمعآوری مشکلات و نقصهای این جشن، تنها کمک به برگزاری جشنهای بهتر است؛ تا شاهد برگزاری مراسم بهتری در آینده باشیم با کیفیت بهتر و بازده بیشتر.
یک پست جالب: کپی رایت و داعیه داران متن باز ایرانی
تگهای “ویژگی لینک” یا همان تگهای link attribute، تگهایی هستند که به پیوندها در فایلهای HTML مربوط میشوند. شما با تگ زیر آشنایی دارید:
<link rel=’stylesheet’ href=’CSS DOCUMENT ADDRESS’ type=’text/css’ />
با استفاده از آن میتوانید به صفحهی HTML خود، سندهای استایل خود را وارد کنید.
بهتازگی موتورجستجوهای معروف، اعلام کردهاند که از نوع جدیدی از ویژگی لینک، پشتیبانی میکنند. این ویژگی لینک جدید که canonical نام دارد، برای مشخص کردن نسخههای متعارف و غیرمتعارف یک صفحه ساخته شدهاند. برای مثال، فرض کنید که وبسایت بسیار بزرگی دارید که این وبسایت پر از صفحات داخلی است. مثلا سایت شما 120 صفحه دارد و شما در 100 صفحه از وبسایتتان به مقالهی زیر لینک دادهاید:
http://www.mysite.ir/product.php?item=MYITEM&category=MYCAT
اما در 20 صفحهی دیگر به مقالهی زیر لینک دادهاید:
http://www.mysite.ir/product.php?item=MYITEM&trackingid=0000&sessionid=0000
درحالی که هر دو آدرس، یک مقاله را نمایش میدهد. در واقع تفاوت دو آدرس فقط در ظاهر آدرسشان است و هیچ تفاوتی در خود صفحات وجود ندارد. شما به خوبی میدانید که این دو صفحه، یکی هستند و با هم تفاوتی ندارند، اما یک موتورجستجو مثل شما فکر نمیکند و بین این دو صفحه، فرق میگذارد. این مسئله باعث بروز مشکلاتی چون عدم هماهنگی وبسایت با استانداردهای موتورهای جستجو میشود یا مثلا دوستان شما در وبلاگشان به آدرس دومی که نامتعارف است لینک میدهند و این موضوع باعث میشود که آدرس اصلی (که آدرس اولی است) دچار بحران rank در جستجوگرها شود. یا بازدیدکنندگان آدرس دوم را آدرس اصلی مقاله فرض خواهند کرد. اما راه حل جدیدی که جستجوگرها ارائه کردهاند، استفاده از rel=canonical است. شما باید در صفحهای که دچار مشکل دو آدرسی بودن شده، یک تگ جدید به Head اضافه کنید و با استفاده از آن به crawler ها بفهمانید که شما باید به لینک متعارف این مقاله مراجعه کنید. با اینکار مثلا اگر عنوان مقالهی شما توسط شخصی در گوگل جستجو شود؛ آدرس اصلی آن مقاله به عنوان نتیجه نمایش داده میشود نه آدرس فرعی آن. اکنون برمیگردیم به مثال خودمان. در مثال بالا من در صفحهام که دو آدرس دارد، در بخش <Head> تگ زیر را وارد میکنم:
<link rel=’canonical’ href=’http://www.mysite.ir/product.php?item=MYITEM&category=MYCAT‘ />
با اینکار موتورهای جستجو به صفحهای که در تگ بالا مشخص کردم، اهمیت “تعارفی” میدهند، یعنی آدرس اول صفحهی من، متعارف میشود و آدرس دوم نامتعارف.
نکات:
- اینکار باعث حذف آدرس دوم از جستجوگر نمیشود. تنها موجب مشخص شدن آدرس اصلی میشود.
- استفاده از این ویژگی در وبسایتهایی با لینکهای اتفاقی (random) موجب خرابی لینکها در جستجوگرها و شناخته نشدن آنها میشود.
- اگر به دنبال رعایت استانداردها به صورت کامل هستید، باید بگم که این روش هنوز استاندارد نیست.
- گوگل، یاهو، Bing و Ask جستجوگرهایی هستند که این link-tag را پشتیبانی میکنند و آنرا پذیرفتهاند.
- این روش را به توسعه دهندگان سیستمهای wiki نویسی و سیستمهای وبلاگ نویسی، پیشنهاد میکنم.
- در این tag نمیتوانید صفحهای را بهطور کامل به یک دامنهی دیگر ارجاع دهید.
- سیستم وبلاگنویسی وردپرس، برای صفحات داخلی و همچنین لینکهای دائمی، از این روش استفاده میکند.
اگر به اطلاعات بیشتری در این زمینه نیاز دارید، این مقاله بهترین مرجع برای شماست.
همهی مروگرهایی که ما با آنها کار میکنیم، از موتورهایی برای پردازش جزئیات برگه و نمایش آنها به ما استفاده میکنند. این موتورها را Layout engine یا Browser engine مینامند. موتور مرورگر، نرمافزاری است که محتویات صفحهی اینترنتی را در خود پردازش میکند و نتیجهی آن را به شکل یک صفحهی وب به کاربر مروگر تحویل میدهد. محتویات داخل صفحه میتواند کدهای HTML باشد، میتواند طرحهای CSS باشد و یا میتواند تصاویر و عکسهایی باشند که بهعنوان شیء در صفحهی درخواست شده قرار گرفتهاند. هنگامی که کاربر مروگر به برنامه دستور اجرای یکسایت را میدهد، مرورگر به صفحهی خواستهشده میرود و اجزای صفحه را داخل layout engine خود پردازش میکند و نتیجه را روی مانیتور چاپ میکند. تقریبا همهی مرورگرهای پیشرفتهی امروزی از موتور مرورگر برای نمایش صفحه استفاده میکنند.
بنیاد موزیلا (سازندهی مرورگر فایرفاکس) از موتوری به نام Gecko استفاده میکند که بازمتن است و با زبان سیپلاسپلاس نوشتهشدهاست. Gecko ابتدا در آزمایشگاه شرکت Netscape طراحیشد. اصل این موتور برای مرورگر Netscape Navigator نوشتهشدهبود که پس از شروعبهکار پروژهی موزیلا در 1998، نسخهی بازمتن (Open Source) این موتور، منتشر شد. در ابتدا با استانداردهای کنسرسیوم جهانی وب (W3) مشکل داشت، سرعت آن از مرورگر IE بیشتر بود، اما صفحات DHTML را بهخوبی نمایش نمیداد. اینبود که توسعهدهندگان موزیلا تصمیم گرفتند روی این موتور کار کنند تا به یکی از بهترین مروگرهای جهان تبدیل شود. هماکنون این موتور به عنوان یکی از بهترین موتورهای مرورگر جهان، روی مرورگرهایی چون Firefox، Flock، Camino، SeaMonkey درحال استفادهاست. Gecko موتوریاست که با آخرین فناوریهای تولید وبسایت هماهنگ و سازگار است و از HTML 5 ، CSS 3، XML 1.0 و آخرین نسخه DOM پشتیبانی میکند. نام اصلی جکو، NGLayout یا New Generation Layout Engine به معنای نسل جدید موتور طرح (مرورگر) است.
مروگرهای Google Chrome و Apple Safari از موتور Webkit استفاده میکنند؛ موتوری که بازمتن است و تحت لیسانس GNU LGPL منتشر میشود. وبکیت درآغاز توسط شرکت اپل پردهبرداری شد و با هدف سرعت بالا در پردازش و نمایش کدهای صفحه و جاوااسکریپتها ساختهشد. وبکیت که بسیار جوانتر از سایر همنوعان خود بود، بهسرعت پیش رفت و به جایی رسید که هماکنون شرکتهای بزرگی چون Google و Nokia از آن پشتیبانی میکنند. این موتور، یک کپی آزاد از موتور KHTML بود که توسط KDE ساخته شدهبود. KHTML که در مرورگر Konqueror استفادهشده، کاملا متنباز بود و توسعهدهندگان Apple از این خاصیت KHTML استفادهکرده و آنرا توسعه دادند. از جمله توسعههای داده شده اینبود که حجم کدهای Webkit بسیار کمتر از کدهای KHTML شد و موتور جاوااسکریپت Webkit سریعتر و دقیقتر از قبل شد. شرکت نوکیا هم برای سیستم عامل گوشیهای خود (symbian) از Webkit استفاده کرد و هماکنون مرورگرهای گوشیهای نوکیا به این موتور مجهز اند. شرکت گوگل که کار روی سیستم عامل Android را از سال 2005 آغاز کردهبود، برای مرورگر این سیستم عامل، webkit را برگزید. گوگل کروم هم از این موتور طرح برای نمایش وبسایتها استفاده کرد. KTHML تحت فریمورک KPart با زبان سیپلاسپلاس نوشته شده اما گوگل پس از توسعهی webkit برای Chrome، هم از سیپلاسپلاس و هم از Assembly استفاده کردهاست.
اما میرسیم به مرورگر Opera. این مرورگر از موتوری بهنام Presto استفاده میکند که Cross-Platform است اما نرمافزاری غیرآزاد است. بیشتر آن با سیپلاسپلاس نوشتهشده و درسال 2003 ارائه شد. شرکت Opera سازندهی این موتور ادعا میکند که سریعترین موتور را ساخته، آما آزمایشها نشان میدهد مرورگرهای برپایه Webkit سریعترین مرورگرها هستند (×). Presto هیچگاه از نسخههای تحت توسعهی استانداردهای وب پشتیبانی نکردهاست. برای مثال CSS 3 که تحت توسعه به سر میبرد؛ در مرورگر Opera پشتیبانی نمیشود. همچنین سورسهای DLL آن به صورت عمومی منتشر نشده (طبق قوانین نرمافزارهای غیر آزاد) و توسعهی عمومی ندارد.
شرکت مایکروسافت نیز برای مرورگر پیشفرض ویندوزهایش (IE) از موتور Trident استفاده میکند که غیرآزاد است و حتی Cross-Platform هم نیست. از پروژههای تحت توسعه پشتیبانی نمیکند و روی مرورگرهایی چون Internet Explorer و Avant Browser نصب است. مزیت این موتور نسبت به Presto انتشار DLL های Triedent به صورت عمومی است.
برداشت آزاد از مقاله ویکیپدیا: Layout Engine

از تاریخ 4 سپتامبر، لوگوی صفحهی خانگی گوگل به یک لوگوی ویژه تغییر کرد و به صورت لوگوی بالا در آمد و یک UFO یا بشقاب پرنده را نمایش میدهد. اگر روی آن لوگو کلیک کنید متوجه میشوید که عبارت Unexplained Phenomenon به لوگوی جدید گوگل لینک شدهاست و آن عبارت را در جستجوگر گوگل سرچ میکند. معنی عبارت Unexplained Phenomenon به فارسی میشود: “پدیدهی غیرقابل توضیح”. اما برای اینکه داستان از همیشه جالبتر و جذابتر بشود (!)، گوگل یک متن کدگذاریشده را هم در پروفایل گوگل در توییتر، منتشر کردهاست که عبارت کدگذاریشده به این شکلاست:
1.12.12 25.15.21.18 15 1.18.5 2.5.12.15.14.7 20.15 21.19
اما اگر با استفاده از رمزنگاری تقدم حروف، عبارت بالا را به صورت بدون رمز تبدیل کنیم (decrypted) معنی عبارت میشود: “All your O are belong to us”. به فارسی میشود: “همهی o های شما به ما تعلق دارد” یا یه همچین چیزی. در لوگو میبینیم که بشقاب پرندهی غیرقابل توضیح دارد o ی لوگوی google را با خود به آسمان میبرد! مثل همان چیزی که در فیلمهای علمیتخیلی دیدهایم! اما منظور گوگل از اینکار هنوز مشخص نیست. بسیاری از مردم بر این باورند که این لوگو به دلیل مصادف شدن با حادثهی “اکستر” در صفحهی خانگی گوگل قرار گرفتهاست. چون حادثهی اکستر هم در سپتامبر سال 1965 رخدادهاست. البته بعضیها هم فکر میکنند منظور گوگل از اینکار عبارت مقابل بودهاست: “all your OBJECTS belong to us” !
بههر حال این لوگوی عجیب (که در ایران قابل مشاهده نیست البته!) هیاهوی بسیاری در وب انگلیسی بهراه انداختهاست. ممکناست این لوگوی جالب به “Exter UFO Festival” هم ربطی داشته باشد. یک نفر هم ادعا کرده که یک بشقاب پرنده را بالای خانه خود دیده است و فیلمی از آن را روی یوتیوب منتشر کرده. اگر ویدئوی آن به دستم رسید برایتان قرار خواهم داد.
–
پی نوشت: دیکریپت کردن کد رو من انجام ندادم، اینجا بود.
منبع: +
آخرین کتابی که تا زمان نگارش این پست خواندهام، کتاب “پیرمرد و دریا” است؛ نوشتهی ارنست همینگوی. فکر میکنم جزء 10 کتاب برتری که تا بهحال خواندهام، باشد. کتابیاست که در کوبا نوشتهشده، آنهم در 1951. تا جایی که میدانم، اینکتاب آخرین اثر مهم داستانی همینگوی بودهاست. خواندن آن، برای من خیلی لذتبخش بود، علیرغم همهی تلاشهای بینتیجهی کاراکتر اصلی داستان (پیرمرد) که نتیجهی سفرش به دریا، فقط افزایش تجربهاش میشود. نسخهی فارسی این کتاب، توسط استاد نجف دریابندری ترجمهشده که بهنظر من ترجمهی فارسی آن از نسخهی اصلی کتاب (که پیشتر خواندم)، سادهتر و شاید زیباتر است. جالبترین نکتهای که درکتاب بهآن برخوردم؛ اینبود که نویسنده اصلا به تشریح فضاهای بیمورد و بیفایده نپرداخته، یا شاید حوصلهاش را نداشته! که البته یک حسن این کتاب به شمار میآید. یعنی اینکه نویسنده فقط قسمتهایی از محیط داستان را که به درد خواننده بخورد، توصیف کردهاست و از پرداختن به حاشیههای بیمورد و نالازم پرهیز کرده. البته این فقط نظر من نیست، خود مترجم هم در پیشگفتار کتاب بهنحوی به این موضوع رسیدهاست. نکتهی بعدی که در این کتاب دیدم، بر خلاف سایر رمانها، ایناست که کتاب به فصلهای جدا تقسیم نشده و این از همان نکتهی قبلی سرچشمه میگیرد. پس این کتاب در دستهی رمانهای کوتاه جای دارد. مورد دیگر، این بود که در بیشتر داستان، شخصیت اصلی، در تنهایی بهسر میبرد اما تنها نیست؛ در واقع با خواندن کتاب احساس تنهایی نمیکنیم. برای مثال وقتی پیرمرد (شخصیت اصلی) در قایقاش تنها بهسر میبرد، با خودش بلند صحبت میکند یا با پرندهی کوچک و یا حتی با کوسهای که زیر قایقاش شنا کنان درحرکتاست، صحبت میکند. در تمام مدت سفر پیرمرد، آفتاب بر او میتابد، یعنی عنصری که تنهایی را تا حدی دور میکند؛ و حتی دریا آراماست و اثری از طوفانهای سهمگین دیده نمیشود. خواندن این کتاب، حسی در آدم بهوجود میآورد که تاثیرآن تا مدتها در ذهن میماند، یعنی داستانی نیست که بهآسانی آنرا از یاد ببریم. شاید بیخود نبوده که این رمان کوتاه به یکی از مشهورترین رمانهای کوتاه درجهان تبدیل شدهاست.
خواستم کتاب را بهشما هم معرفی کنم شاید با هم، همسلیقه باشیم و شاید از کتاب خوشتان آمد؛ خیلی دوستدارم دیدگاه دیگران را هم دربارهی این اثر بدانم. پس هرچه سریعتر این کتاب رو تهیهکنید و بخوانید.
