گزیر

::گاهنوشتهای حمیدرضا محمدی::

دربارهٔ من:

آخرین نظردهندگان:

مشترک شوید:

ایمیل خود را در جعبهٔ زیر وارد کنید و دکمهٔ اشتراک را بزنید.

جستجو:

Valid XHTML 1.0 Transitional RSS Feed

قابلیتهای گوشیهای ایرانی

۸۹/۰۶/۲۳

منبع

نوشته شده در ساعت ۱۶:۲۱

سوایپ برای نوکیا ۵۸۰۰

۸۹/۰۶/۲۲

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

The razor-toothed piranhas of the genera Serrasalmus and Pygocentrus are the most ferocious freshwater fish in the world. In reality they seldom attack a human.

جالب است بدانید که رکورد گینس سرعت در تایپ پیامک برای پاراگراف بالا -گویا- همین یک ماه پیش شکسته شده و ملیسا تامپسون توانسته آن را در ۲۵.۹۴ ثانیه تایپ کند (منبع خبر)!

البته، مسأله‌ای که می‌تواند از میزان شگفت‌زدگی شما از این رکورد بکاهد آن است که او این رکورد را با استفاده از یک موبایل لمسی شکسته (سامسونگ مدل Galaxy S) و خوب، صفحه‌کلید لمسی این موبایل از فناوری سوایپ پشتیبانی می‌کند.

فناوری سوایپ به کاربر این اجازه را می‌دهد که بدون برداشتن دست از روی صفحهٔ نمایش کلمات را تایپ کند. برای نمونه در شکل زیر نحوهٔ تایپ کلمهٔ quick را در یک صفحه‌کلید سوایپ می‌بینید:

swype

این فناوری تا به حال، بیشتر، روی گوشیهای اندروییدی در دسترس بوده. اخیراً یک نسخهٔ آزمایشی از این صفحه کلید، برای گوشیهای لمسی سیمبینی نوکیا در دسترس قرار گرفته و دوستانی که مثل من نوکیا ۵۸۰۰ و گوشیهای همخانوادهٔ آن را دارند می‌توانند این فناوری را روی گوشی خودشان آزمایش کنند (تذکر مهم: این برنامه، حالت آزمایشی دارد و اینطور که از گزارش کاربران برمی‌آید نصب آن روی بعضی گوشیها ایجاد مشکل کرده، لذا آن را با مسئولیت خودتان نصب کنید). صفحهٔ اصلی دریافت این برنامهٔ آزمایشی در سایت نوکیا اینجاست. اما گویا دریافت آن برای کاربران ایرانی امکانپذیر نیست. من آن را از این نشانی دریافت کردم.

بعد از نصب، لازم است گوشی خود را از نو راه‌اندازی کنید، صفحه کلید انگلیسی گوشی حالت سوایپ پیدا می‌کند. کلمات موجود در دیکشنری را عموماً به آسانی می‌شود تایپ کرد و کلمات جدید را نیز می‌شود به آن آموزش داد. تا آنجا که من آزمایش کردم پاک کردن حروف تایپ شده (کلید Backspace) در این نسخهٔ آزمایشی کند عمل می‌کند.

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

نوشته شده در ساعت ۲۱:۳۹
Comments Off on سوایپ برای نوکیا ۵۸۰۰

Guugu Yimithirr

۸۹/۰۶/۲۱

عنوان مطلب، اسم یک زبان است. زبانی مربوط به بومیان استرالیا که واژهٔ «کانگورو» از آن به انگلیسی و دیگر زبانها وارد شده و به استناد ویکی‌پدیا (ببینید: زبان گوگوییمیتیر) ۲۰۰ الی ۳۰۰ نفر کلاً وجود دارند که به این زبان صحبت می‌کنند.

چند وقت است که نیویورک‌تایمز مقاله‌ای روی سایتش گذاشته (اینجا) که موضوع آن تأثیر زبان مادری بر طرز تفکر آدمهاست. بحث از آنجا شروع می‌شود که در سال ۱۹۴۰ زبان‌شناسی به نام بنیامین ورف در مقاله‌ای ادعا کرد محدودیتهای زبان مادری می‌تواند باعث ایجاد محدودیت در توانایی درک و طرز تفکر انسانها شود. مثال ادعای او، سرخپوستها بودند که گویا در درک سیر زمانی وقایع یا تفاوت اشیاء با عمل منتسب به آنها (سنگ با افتادن سنگ) مشکل دارند و این معضل ناشی از آن است که در زبان مادری آنها این مفاهیم به گونه‌ای متفاوت با زبانهای دیگر بیان می‌شود یا اصلاً بیان نمی‌شود.

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

بگذریم، این زبانی که در پاراگراف اول در موردش صحبت کردم هم یکی از مثالهای این مقاله است. در این زبان برای توصیف موقعیت اشیاء قیود مکانی (جلو، عقب، چپ، راست) وجود ندارد و به جای آن کسانی که به این زبان صحبت می‌کنند از قیود جغرافیایی یا قطب‌نمایی استفاده می‌کنند! فرض کنید به جای جملهٔ «کتابی که پشت گلدان است» مجبور باشید بگویید «کتابی که در شمال غربی گلدان واقع شده». در هر حال، به ادعای مقالهٔ نیویورک‌تایمز گویشوران این زبانِ در آستانهٔ انقراض، به خاطر این ویژگی عجیب زبانی، همواره حس درستی از جهت شمال جغرافیایی دارند و رویدادهایی مثل خواب یا حتی چرخاندن چندبارهٔ آنها با چشم بسته به دور خودشان نمی‌تواند در این حس خلل ایجاد کند! برای نمونه برای یک فرد انگلیسی‌زبان دو اتاق روبرویی یک هتل با چینش یکسان لوازم (تلویزیون در مقابل در ورودی، ساعت روی دیوار سمت چپی و …) در صورتی که به نحوی به آن اتاق آورده شود که مسیر را تشخیص ندهد به آسانی قابل تفکیک نیست، اما یک گویشور زبان یاد شده این دو اتاق را کاملاً متفاوت می‌بیند، از نظر او تلویزیون در یک اتاق در شمال قرار داشته و در یکی در جنوب (برای ما در هر دو مورد تلویزیون روبروی در قرار داشته)، ساعت در یکی در شرق و در یکی در غرب و … . کمی باورنکردنی به نظر می‌رسد! اگر وقت داشتید و حوصله اصل مقاله را بخوانید.

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

نوشته شده در ساعت ۲۰:۵۷
Comments Off on Guugu Yimithirr

داستانهایی دربارهٔ اعداد تصادفی

۸۹/۰۶/۲۰

۱) تابع تولید عدد تصادفی

xkcd: Random Number

۲) چرخ چهارگوش

برنامه‌نویس سرشناسی که همچون من و احتمالاً شما، آن روزها که قرار بود موزیلا ویرایش ۳.۵ از مرورگر محبوبش را منتشر کند ذوق دریافت فایرفاکس جدید را داشت در روزهای اول استفاده از این ویرایش مهم فایرفاکس به مشکل آزاردهنده‌ای برخورد کرد:

پس دست به کار شدم و نصاب فایرفاکس را در روز انتشار دریافت کردم و پس از گذر از کثیف‌کاری معمول به‌روزرسانی افزونه‌ها توانستم مرورگر جدید را برای اولین بار اجرا کنم و خدایا من چه می‌بینم: وب -انگارکن- به سال ۱۹۹۴ برگشته: وقتی که هیچ کس جز خوره‌های واقعی سایت نداشت و همه چیز به سرعت برق بود. زندگی شیرین شده بود!

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

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

ایجاد اعداد تصادفی واقعی مشکل است چرا که در یک سیستم کامپیوتری هیچ چیز واقعاً تصادفی نیست: هر چیزی نتیجهٔ یک عمل قابل پیش‌بینی است. پسران و دختران باهوش تیم NSS باید این مسأله را به گونه‌ای حل می‌کردند: چطور اعداد تصادفی واقعی ایجاد کنیم که تا حد ممکن تصادفی باشند؟ به جای استفاده از توابع ارائه شده توسط سیستم عامل (که این قابلیت را به دلیل نیاز پروتکل TCP در خود دارد) آنها این کار را به همان شیوه‌ای که عموماً شرکت موزیلا کارهایش را انجان می‌دهد انجام دادند: چرخ را از نو اختراع کردند. من مشکلی با اختراع مجدد چیزها ندارم، اشتباه برداشت نکنید، هیچ چرخی مثل چرخ دیگر نیست. اگر چه، مشکل اختراع دیگربارهٔ چرخ آن است که علاوه بر آن که در این فرایند شما حق اشتباه کردن ندارید، باید چرخی بسازید که از چرخهای اختراع شدهٔ قبلی بهتر باشد. برای نمونه هیچ کس از چرخ چهارگوش شما استفاده نخواهد کرد.

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

البته، پاراگراف بالا ذهنیت تیم NSS بود. در دنیای واقعی، چیزها یک کوچولو متفاوتند. متوجه هستید که؛ فایرفاکس ویرایش ۳.۵ کش اینترنت اکسپلورر را و پوشهٔ temp ویندوز برای پروفایل کاربر را توسط زیرسیستم NSS خود می‌خواند. این نه تنها به نظر من یک نباید به جهت خواندن داده‌های موقتی برنامهٔ دیگر است، بلکه یک بی‌توجهی شگفت‌آور نسبت به گلوگاه اصلی کامپیوترهای امروزی است: هارد دیسکها. اگر شما ویروس‌کشی داشته باشید که در حالت بددلانه تنظیم شده باشد پیمایش پوشه‌های موقت توسط NSS کندتر هم خواهد بود چرا که دسترسی به هر فایل از سوی فایرفاکس باعث اسکن آن توسط ویروس‌کش می‌شود. و اگر کاربر، با کامپیوترش هیچ کاری غیر از مرور وب با فایرفاکس نکند به گونه‌ای که این پوشه‌های موقت دست‌نخورده یا خالی بمانند، آن وقت چه؟ آیا خواندن فایل بدترین روش ممکن برای تولید نقطه‌های آغاز اعداد تصادفی نیست؟

۳) ماشین تولید اعداد تصادفی

dilbert random generator

– مطمئنید که این تصادفی است؟

– مشکل تصادفی بودن همین است که هیچ وقت نمی‌شود مطمئن بود.

۴) داستان گنجور

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

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

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

نتیجه را احتمالاً می‌توانید حدس بزنید. خیلی از روزها، بیش از ۱۰۰۰ تکه از شعرها بازبینی می‌شد (آمارش هنوز در این صفحه در دسترس است)، اما بعد از دو ماه چیزی حدود ۱۹۰۰۰ تکه بیش از یک بار و حدود ۲۶۰۰۰ تکه تنها یک بار بازبینی شده بودند و ۸۰۰۰ تکه هم اصلاً بازبینی نشده بودند (گزارش تا آن مرحله).

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

خلاصه آن که -با تشکر ویژه از تمامی دوستانی که در این کار مشارکت کردند- مرحلهٔ اول بازبینی خروجیهای OCR گنجور به ثمر نشسته است. برای برداشت محصول نهایی می‌توانید سری به آثار بیدل و قاآنی در گنجور بزنید و اگر گنجور رومیزی دارید مجموعه اشعار متناظر را با شرحی که در این نوشته آمده به برنامه اضافه کنید.

و البته، یادتان باشد که این فقط مرحلهٔ اول بود و نهضت کماکان ادامه دارد.

نوشته شده در ساعت ۲۲:۰۰

رسن بازی

۸۹/۰۶/۲۰

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

عبید زاکانی، رسالهٔ دلگشا

نوشته شده در ساعت ۲۰:۱۶

پیرمردی به اسم بیل

۸۹/۰۶/۱۹

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

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

مجلهٔ دانشمند، شمارهٔ مهرماه ۸۹، صفحات ۳۱ و ۳۲

نوشته شده در ساعت ۲۲:۰۳
Comments Off on پیرمردی به اسم بیل