January 2009

مهمترین رخدادهای وب در سال 2008 - بخش سوم: Live Mesh

بخش دوم: Mozilla Weave
بخش نخست: سیستم عامل Android گوگل
سرویس Live Mesh به دست مایکروسافت در آپریل سال 2008 پرده‏برداری شد و نخست به عنوان یک «پیش‏نمایش فن‏آوری» نشان داده شد. Live Mesh راهکار مایکروسافت برای یکی کردن و گره زدن داده‏های گوناگون و توزیع‏شده ما است. Live Mesh اطلاعات را از ابزارهای مختلفی جمع کرده و با هم یکسان‏سازی (Synchronize) می‏کند. در حال حاضر Live Mesh تنها داده‏های کامیپوترهای ویندوزی را یکسان‏سازی می‎‏کند ولی امکان توسعه Live Mesh برای به کارگیری در موبایل و ابزارهای دیگر و همچنین داده‏های Web پراکنده در سایتهای مختلف اینترنتی در آینده وجود دارد. این ابزار اجازه می‏دهد تا داده‏ها در ابزارهای گوناگون به دست یک کاربر به کار برود یا اینکه در بین چند کاربر به اشتراک گذاشته بشود.

در واقع Live Mesh مجموعه‏ای از Feedها است. این Feedها می‏تواند به فرمت ATOM، JSON، FeedSync، RSS، WB-XML یا POX باشد. اینها هر کدام یکی از فرمتهای شناخته شده انتقال داده‏های خام است. برای نمونه Feed این وبلاگ با فرمت RSS هست و در آدرس http://i.jamejamins.ir/rss.xml هم در دسترس است. هر بخش از داده‏های کاربران که به Mesh یک کاربر وارد بشود (چه یک فایل، شاخه، یک پیام، اجازه دسترسی یک کاربر یا یک ابزرا جدید باشد) به عنوان بخشی از اطلاعات در یک Feed قرار خواهد گرفت. این Feedها می‏تواند پس از این بین کاربران ابزارهای دیگر یکسان‏سازی بشود.

مایکروسافت پیش از این هم ایده‏ای را برای یکسان‏کردن Authentication یا مجوزهای کاربران (خیلی ساده یعنی نام کاربری و رمز و سطح دسترسی‏ها) را با نام Microsoft Passport داده بود که عملا از آن استقبالی نشد و چندان هم طرفدار پیدا نکرد و در غیر از سایتهای Microsoft و چند سایت دیگر به طور جدی استفاده نشد. اگر چه Live Mesh تنها کار Microsoft Passport را انجام نمی‏دهد و کارش بیشتر یکسان‏سازی داده‏های کاربران در ابزارهای مختلفی است که هر روز باهاش سر و کار دارند، ولی به نظر می‏رسد که این تلاش مایکروسافت هم چندان به نتیجه نرسد.

تلاشهای این چنین باید به صورت کنسرسیومی و با توافق شرکتهای بزرگ و همچنین به صورت متن‏باز و با حمایت یک بنیاد غیرتجاری صورت بگیرد تا شاید بتواند فراگیر بشود. برای نمونه می‏توان به OpenID اشاره کرد که با بودن همه این شرایط هم، هنوز نتوانسته است چندان فراگیر بشود.

از شر دردسرهای داونلود از Rapidshare رهایی یابید

من خیلی اهل داونلود بازی و این حرفها نیستم ولی گاهی پیش می‏آید که دنبال یک کتاب یا برنامه‏ای می‏گردی و لینکش را فقط در Rapidshare یا سایتهای مشابه آن مانند MegaUpload پیدا می‏کنی. با خوشحالی لینک را کلیک می‏کنی که داونلود کنی ولی یا Slotهای کشور تو تمام شده است، یا اینکه به دلیل بزرگ بودن فایل و سرعت کند اینترنتهای ما و نداشتن قابلیت Resume در سرویس رایگان Rapidshare داونلود نیمه‏کاره قطع شده و تو انگشت به دهن در حسرت این فایل می‏مانی.
امروز بالاخره به این نتیجه رسیدم که باید در این زمینه به یک راهکار برسم و چون در این اینترنت به این بزرگی آدمهای خیلی زیادی هستند که مشکلاتی مشابه به مشکلات ما دارند گفتم شاید بد نباشد کمی از آقای گوگل پرس و جو کنم و بالاخره رسیدم به برنامه RapidLeech. این برنامه که در واقع یک اسکریپت PHP است، نصب می‏شود روی هاست شما و فایلها را از روی هاست با آن سرعت رویایی که در سرور شما هست داونلود می‏کند و بعد شما می‏توانید فایل را از روی سرورتان داونلود کنید. به همین سادگی:

یک نکته خیلی مهم

RapidLeech یک Script نوشته شده با PHP است و برای اجرا شما باید یک سرور داشته باشید. بنابراین اگر سرور ندارید، بی‏خیال این برنامه بشوید. یا این که سرور رایگانی را پیدا کنید که به شما اجازه اجرای PHP بدهد؛ اگر چه ممکن است این سرور اجازه اجرای RapidLeech را به شما ندهد یا حجم کافی برای داونلود را در اختیار شما نگذارد. اگر هم می‏توانید برای این مساله هزینه کنید، می‏توانید با هزینه نه چندان پایین یک سرور معمولی دست و پا کنید. ولی قبلش باید مطمئن بشوید که سرور شما اجازه اجرای RapidLeech را به شما می‏دهد. برای این کار هم کافی است قبل از خرید با آنها تماس بگیرید و ازشون بپرسید. من از سرورهای اینجا استفاده می‎‏کنم و آنها اجازه نصب این Script را به من داده‏اند.

راهنمای نصب

نصب RapidLeech خیلی ساده است:
1- آخرین نسخه برنامه را از فایلهای پیوست همین نوشته بارگزاری کنید.
2- فایلها را در یکی از شاخه‏های سرورتان Extract کنید. این کار را یا می‏توانید از طریق Control Panel تان انجام دهید یا این که با FTP فایلها را ارسال کنید. اگر کنتر پانل سرور شما CPanel باشد می‏تواند فایل را zip کنید و فایل zip شده را آنجا Extract کنید.
3- شاخه files موجود در شاخه برنامه را به CHMOD کنید به 777 تا دسترسی Write برای RapidLeech باشد.

سایتهای پشتیبانی‏شده RapidLeech

سایتهایی که RapidLeech پشتیبانی می‏کند، اینها هستند: 2shared.com, 4shared.com, adrive.com, depositfiles.com, downtown.vc, easy-share.com, filefactory.com, fileflyer.com, filego.net, files.to, filesend.net, gigasize.com, ifolder.ru, imageshack.us, letitbit.net, mediafire.com, megashare.com, megashares.com, megaupload.com, netload.in, rapidshare.com, rapidshare.de, savefile.com, sendspace.com, share-online.biz, sharebase.to, sharedzilla.com, speedyshare.com, turboupload.com, uploaded.to, uploading.com, uploads.bizhat.com, youtube.com, ziddu.com, zippyshare.com, zshare.net

همچنین RapidLeech به شما اجازه داونلود فایلهای mp4 فیلم‏های Youtube را هم می‏دهد.

خراب کاری تازه مایکروسافت در سال تازه میلادی: Zune از کار افتاد

پخش‏کننده‏های شرکت مایکروسافت که به نام Zune مشهور هستند، در آغاز سال 2009 میلادی از کار افتاد. مسئله خیلی ساده است. شرکت مایکروسافت در درایوری که برای اتصال Zune به PC نوشته، فکر سالهای کبیسه را نکرده و در آغاز سال 2009 که یک سال کبیسه است، این دستگاه از کار افتاد. جالب این جاست که مایکروسافت برای حل مشکل به کاربران یک راه حل خیلی مسخره و خنده‏دار را پیشنهاد کرده است: دستگاه Zune خودتان را خاموش کنید و منتظر بمانید تا اول ژانویه تمام بشود. یعنی عملا روز اول سال کسانی که می‏خواستند با پخش‏کننده خودشان موسیقی گوش بدهند یا آن موزیک‏هایشون را روش کپی کنند و با خودشان به مسافرت ببرند، خراب شد.

این مشکل دستگاههای Zune مردم را به یاد مشکل Y2K یا مشکل سال 2000 انداخته است. پیش از این Mainboardها جوری طراحی شده بودند که برای نگه داشتن عدد سال تنها 2 بایت کنار گذاشته بود و وقتی سال 99 میلادی تمام شد و کامپیوترها وارد سال 2000 شدند، سال 00 سال جاری شد. به خاطر شبیه بودن مشکل Y2K به این مشکل Zune برخی از خبرگزاری‎‏ها اسم Z2K9 را بر این اشکال گذاشتند.

در حالی که مایکروسافت به شدت در حال تلاش است تا به بازارهای Apple وارد بشود و با آن رقابت کند، این آبروریزی بدنامی بزرگی را برای پخش‏کننده‏های مایکروسافت در برابر پخش‏کننده‏های iPod شرکت Apple برایش درست کرده است.

مهمترین رخدادهای وب در سال 2008 - بخش چهارم: رونمایی نسخه وب Office مایکروسافت

بخش سوم: Live Mesh
بخش دوم: Mozilla Weave
بخش نخست: سیستم عامل Android گوگل

مایکروسافت در اوکتوبر سال 2008، نسخه تحت وب Word، Excel و Powerpoint را که به طور کامل داخل Browser اجرا می‏شوند در Microsoft PDC یا کنفرانس برنامه‏نویسان حرفه‏ای مایکروسافت رونمایی کرد. اگر چه مایکروسافت اعلام کرده که نسخه beta این برنامه در سال 2009 منتشر خواهد شد، ولی از آنجایی که خیلی‎ها مدتها منتظر منتشر شدن Office تحت وب مایکروسافت بودند و در سال 2008 هم از این محصول رونمایی شده است، آن را در سال 2008 به حساب آورده‏ام.

Office تحت وب قرار است که بخشی از مجموعه Office 14 باشد و خدمات آن هم به صورت رایگان یا به همراه تبلیغات عرضه نخواهد شد. در واقع کاملا بر خلاف Google Apps که نسخه رایگان دارند، این Office رایگان نیست.

یک پیش‎‏نمایش ویدیویی از این Office جدید را اینجا ببینید. (برای دیدن این ویدیو باید اول Silverlight را نصب کنید. اگر چه با کلیک بر تصویر ویدیو، Silverlight به راحتی بارگزاری و نصب می‏شود و تازه در Firefox هم بدون نیاز به Restart کردن مروگر کار می‏کند)

به نظر می‏رسد که مایکروسافت با Office تحت وب خودش دنبال مشتریان Enterprise است و بر خلاف Google Apps که افزون بر مشتریان Enterprise، کاربران معمول وب را هم هدف قرار داده است، مایکروسافت برنامه‏ای برای کاربران معمولی وب ندارد. کند بودن زیاد مایکروسافت و نگاه به شدت کمال‏گرایانه این شرکت در این باره، معمولا فرصت‏های زیادی را از آن برای رقابت با شرکتهایی مثل Google که خیلی فرزتر هستند از آن گرفته است. من تا جایی که یادم است، مایکروسافت از سال 2006 دارد از Office تحت وب خودش حرف می‏زند و الان که سال 2008 پایان یافته است هم هنوز منتشر نشده است و تازه در اواخر سال 2008 رونمایی شده و تصاویری از آن منتشر شده است

درست کردن Image Rollover بدون Javascript و تنها به کمک CSS

من در وبلاگم منوهایی دارم که با بردن نشانگر ماوس بر آنها تصویرشان تغییر می‏کند. رایج است که این منوها را با JavaScript و با کمک رویداد OnMouseOver انجام بدهند. روش کار با JavaScript چندان دشوار نیست. کافی است برای Elementی که می‎خواهیم تصویر آن تغییر کند، یک ID منحصر به فرد مثل imgHome درست کنیم و بعد در رویدار OnMouseOver با کمک توابع DOM این Element مورد نظرمان را پیدا کنم و دست آخر هم ویژگی background-image آن را عوض کنیم. از لحاظ فنی کار چندان سختی نیست ولی زمان‏بر است و کمی هم شلوغ است و نیاز به JavaScript هم دارد.

همین کار را خیلی ساده‏تر و بدون به کارگیری حتی یک خط JavaScript و تنها و تنها با کمک CSS می‏شود انجام داد. روش کار خیلی ساده است. نخست لازم است تا تصویر حالت اول و تصویر حالت دوم‏تان را به هم بچسبانید و هر دو کنار هم کار کنید:

حالا در HTML صفحه‏تان لینکهایتون رو به این شکل تعریف کنید:

1 <div id="menu">
2 <ul>
3 <li id="home"><a href="/"></a></li>
4 <li id="projects"><a href="/projects"></a></li>
5 <li id="tutorials"><a href="/tutorials"></a></li>
6 <li id="about"><a href="/about"></a></li>
7 <li id="contact"><a href="/contact"></a></li>
8 </ul>
9 </div>

حالا برای تک تک منوهایی که برایشان ID تعریف کرده‏ایم باید در CSSتان کدهای مشابه زیر را بنویسید:

1 #menu #home a {
2 background:url(images/itm-home.png);
3 width:38px; height:30px;
4 display:block;
5 }
6
7 #menu #home a:hover {
8 background:url(images/itm-home.png) 0 -30px;
9 }

مهمترین بخش این ترفند همان -30px است که در ویژگی background مربوط به a:hover می‏بینید. خیلی ساده است. ما ویژگی top این image را منفی 30 داده‏ایم تا تصویر ما 30 پیکسل به سمت بالا کشیده بشود و تصویر دوم ما نشان داده بشود.
حجم کدهای مورد نیاز برای این کار خیلی خیلی کمتر از کدی است که باید برای این مسئله در JavaScript بنویسید و تازه خیلی هم تر و تمیزتر است و بدون نگرانی از ناهماهنگی‏های JavaScript در مرورگرهای مختلف می‏توانید مطمئن باشید که این CSSها در همه مرورگرهای رایج بدون هیچ مشکلی کار می‏کنند.

به کارگیری سیستم عامل Android گوگل برای لپتاپها

چند روز پیش در نوشته‏ای درباره سیستم عامل Android به عنوان یکی از مهمترین رخدادهای وب در سال 2008 نوشته شودم. اگر چه Android سیستم عاملی برای موبایلها است ولی از آنجایی که ویژگی‏های وبی بسیاری دارد و شرکت گوگل به عنوان یک شرکت بزرگ وب پشت سر آن هست، این سیستم عامل را یکی از رخدادهای وب به شمار آورده بودم. امروز در یک وبلاگ خواندم که گوگل تصمیم دارد از Android نه تنها در موبایل‏ها بلکه در ابزارهای دیگر مثل لپتاپها هم استفاده کند.


این خبر برای من خیلی عجیب بود. باور این که بشود از یک سیستم عاملی که برای موبایل طراحی شده است، در لپتاپ‏ها هم استفاده کرد خیلی جالب بود. به هر روی تصویری هم که می‏بینید لپتاپ Asus EEEPC 1000H است که رویش سیستم عامل Android گوگل اجرا شده است. توجه داشته باشد که گوگل با تولید Google Chrome و جاسازی این مرورگر در سیستم عامل Android خودش پتانسیل خیلی خوبی را برای ارائه یک محیط جامع فراهم کرده است. دیگر لازم نیست خیلی از برنامه‏ها (برای نمونه برنامه پردازشگر متنی Word یا برنامه صفحه گسترده Excel) حتما به صورت Offline برای این سیستم عامل نوشته بشود. مرورگر Google Chrome این ابزارها را به صورت Online ارائه می‏دهد. آن طور که در این نوشته گفته شده است، این لپتاپها در سال 2010 بیرون خواهند آمند.
جالب این جاست که از همین حالا برخی از سقوط Windows Mobile سخن می‏گویند هر چه هست به قول نویسنده این وبلاگ، گوگل آمده است که در این بازار بماند.

پیدا کردن یک دوست تازه برای PuTTY یا خوش‏آمدگویی به Poderosa

من چندان لینوکس بلد نیستم. شاید بهتر است بگویم اصلا لینوکس بلد نیستم ولی به هر حال گاهی لازم می‏شود تا کارهایی بر روی سرورم انجام بدهم که با CPanel چندان راحت نیست یا حتی شاید امکان پذیر نیست. از آنجای یکه سرور من SSH پشتیبانی می‏کند، من هم مدتها است هر وقت بخواهم کار خاصی انجام بدهم، با PuTTY این برنامه 500 کیلوبایتیِ کوچولویِ دوست داشتنیِ تحت ویندوز به سرورم SSH می‏کنم.

تا این که امروز در یک وبلاگ با برنامه Poderosa آشنا شدم. پادروسا، برنامه خیلی خوش آب و رنگ‏تری است و امکان Tab-Browsing دارد. خوب راستش این امکان Tab-Browsing که به درد من نمی‏خورد. چون من یک سرور بیشتر ندارم.

رنگ پیش‏فرض این برنامه هم سیاه روی سفید بود. (رنگ پس‏زمینه سفید، رنگ متن سیاه) من چون در PuTTY با برعکسش عادت کرده بودم، رنگها را عوض کردم. راستش این برنامه به غیر از Tab Browsing چندان امکان خاصی ندارد که مثلا PuTTY نداشته باشد. اگر چه همین امکان Tab Browsingاش برای کسانی که سرورهای مختلفی را مدیریت می‏کنند و می‏خواهند همزمان به همه SSH داشته باشند، خیلی به درد بخور است. مثل Internet Explorer 6 بدون امکان Tab Browsing با Internet Explorer 7.

مردها بیشتر از زنها دندان دارند؟!

دانشمندان 2000 سال بر این باور بودند که چیزهای سنگین‏تر زودتر از چیزهای سبکتر سقوط می‏کنند؛ چون که ارسطو این طور گفته بود و او هم 2 دقیقه وقت نگذاشته بود تا خودش این باور را آزمون کند. جالب این جاست که همین جناب ارسطو کتاب می‏نوشت و در آن ادعا می‏کرد که مردها، دندانهای بیشتری نسبت به زنها دارند. باز جناب ارسطو وقت داشت تا ساعتها در این باره درازه‏نویسی کند ولی 2 دقیقه وقت نداشت تا دندانهای یک زن و مرد را بشمرد و ببیند که برابر هستند.

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

دنیای تازه‏ای به سوی طراحان وب: CSS 3

W3 در حال کار کردن بر نسخه تازه‏ای از CSS است. تا به حال پیش‏نویس خیلی از بخشها کامل شده است و برخی از مرورگرها هم اندک اندک دارند، به سمت پشتیبانی از ویژگی‏های جدید CSS 3 می‏روند.

CSS 3 ویژگی‏های جالب زیادی دارد. چند تا از این ویژگی‏ها به نظر من اینها هستند:

  • گوشه‏های دایره‏ای: درست کردن این گوشه‏ها به طور معمولی کار سختی است و باید تصاویر زیادی را ذخیره کرد و DIVهای زیادی را درست کرد که کار را سخت می‏کند. اما با Selector تازه‏ای که در CSS 3 به نام border-radius درست شده، این کار به راحتی دادن یک عدد به این Selector است.
  • امکان کم و زیاد کردن Opacity یک DIV: در CSS 2 این کار تنها با یک فایل PNG 24 Bit و Background کردن آن امکان‏‎پذیر بود. اگر چه این روش هم در IE6 به دلیل پشتیبانی نکردن از PNG 24 Bit کار نمی‏کرد. در CSS 3 به سادگی می‏شود با Selector تازه‏ای به نام Opacity، این تغییر را ایجاد کرد.
  • امکان انداختن سایه به DIVها: این کار هم به سادگی با Box-shadow امکان پذیر است. می‏شود این سایه را به هر یک از چهار طرف یک DIV داد.
  • تغییر اندازه DIVها: این ویژگی واقعا فوق‏العاده است. با مقداردهی ویژگی resize به both امکان تغییر اندازه یک DIV توسط کاربر وجود دارد. من نمی‏دانم که آیا این تغییر اندازه Constraint خاصی هم می‏تواند داشته باشد یا نه.

(همین طور که چیزهای بیشتری درباره CSS 3 و ویژگی‏های جدید آن خواندم، این لیست را به روز می‏کنم)

در همین زمینه:

هنر برگرداندن مردم به زندگی

مدتها بود که فیلم ندیده بودم. چندان هم تماشاگر حرفه‏ای نیستم. اما این روزها فرصتی شد و فیلم Reign Over Me (بر من چیره شو) را دیدم. فیلم، داستان چارلی، مردی است که همسر و سه دخترش را در یک حادثه هواپیمایی در New York از دست داده است. اگر چه این حادثه هواپیمایی در واقع، رخدادهای 11 سپتامبر هستند؛ ولی به هیچ وجه خود یازده سپتامبر یا جنبه سیاسی آن در فیلم جایگاهی ندارد. چارلی، پس از این ماجرا به یک آدم منزوی تبدیل می‏شود که هیچ دوستی هم ندارد. در این بین، سر و کله یکی از دوستان قدیمی چارلی به نام جانسن پیدا می‏شود. جانسن یک دندانپزشک و یک مرد متاهل و پایبند به خانواده است. جانسن تصمیم می‏گیرد که به چارلی در بازگرداندنش به زندگی کمک کند. اگر چه چارلی تمایلی به این کمک ندارد. به هر روی دوستی جانسن و چارلی سبب می‏شود که کودک درون جانسن بیدار بشود و جانسن هم بدش نیاد که زندگی یلخی و باری به هر جهت چارلی را در پی بگیرد و همین مساله سبب می‏شود که جانسن با همسرش بگو و مگوهایی داشته باشد. اما با این حال جانسن تلاش زیادی می‏کند تا به چارلی کمک کند. در این بین جانسن از خانم روانپزشکی که دفتر او هم در ساختمان جانسن هست، کمک می‏خواهد.

خوب فکر کنم که سر نخ داستان دستتان آمده است. بقیه‏اش را تعریف نمی‏کنم که داستانِ فیلم لو نرود. یکی از مسائل جالبی که در این فیلم هست، سوء تفاهم‏های زیادی است که جانسن دارد. از یک طرف، یکی از مشتری‏های او، در ابتدای فیلم قصد سوء استفاده از او را دارد، از طرف دیگر همین خانم هم در ابتدای فیلم، فکر می‏کند که بیرون آمدن جانسن و خودش از ساختمان اتفاقی نیست.

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