مسابقه هوش مصنوعی گوگل

23 10 2010

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

زبانهای برنامه نویسی بسیاری در این دوره پشتیبانی شده اند مانند C#, C++, Java, Python, PHP حتی Lisp هم شامل اونها هست. برای مشاهده لیست زیانهای پشتیبانی شده اینجا مراجعه کنید.

موضوع این دوره جنگ سیارات هست که الهام گرفته از بازی فلش Galcon هست. در این بازی باید تمامی سیارات دشمن رو تسخیر کنید. استراتژی و الگوریتم هوش مصنوعی که برای این منظور به کار می گیرید تعیین کننده پیروزی یا شکست شما خواهد بود. در این میان میتونید از سیاراتی که هنوز تسخیر نشده اند هم کمک بگیرید. به همین سادگی!

دو حریف در حال نبرد

دو حریف در حال نبرد

در صورتی که خواستید شرکت کنید این ابزار تست به درد شما خواهد خورد.

در مورد #C متاسفانه سرور آنها از نسخه قدیمی Mono استفاده می کند که فقط از از C# 2 پشتیبانی می کند و همچنین کامپایلر آن یک باگ دارد که باعث می شود بسیاری از ارسالها بی جهت کامپایل نشوند.

توجه کنید که این سایت از امکانات Html5 استفاده می کند و باید با مرورگرها جدید مانند نسخه جدید کروم و یا فایرفاکس4 این سایت رو مشاهده کنید.

پ.ن 1: ظاهرا گوگل این وسط هیچکاره هست و هیچ کمکی نمی کنه و شرکت کنندگان از وضع سرور خیلی ناراضی هستند و می خوان تا حامی دیگری برای این مسابقه پیدا کنند.

پ.ن 2: این مسابقه هیچ جایزه ای تا الان که این رو مینوسم نداره! گوگل هیچ کارس مثل اینکه!

پ.ن 3: من هم خواستم که شانس خودم رو امتحان کنم و نتیجه اش این شد! ده نفر اول واقعا که دانش بسیار بالایی دارند!

پ.ن 4: لیست ایرانی های حاظر در مسابقه، خیلی کمه!





Closure Tools

18 11 2009
Closure Tools

مدتی نزدیک به دو هفته است که گوگل یکی از پروژه های موفق خودش رو که پشت تعدادی از سرویس هایش یعنی Gmail ، Docs و Maps قرار دارد  رو اوپن سورس کرده.

Closure Tools مجوعه ای از ابزار ها است که برای توسعه دهندگان وب در نظر گرفته شده است. این مجوعه شامل موارد زیر است.

Closure Compiler

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

برای امتحان این ابزار به صورت آنلاین به اینجا مراجعه کنید:

http://closure-compiler.appspot.com/home

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

Closure Inspector

یک افزونه فایرفاکس هست که به افزونه Firebug اضافه می شه. کار اصلی این افزونه ایجاد امکان دیباگ کردن کدهای جاوا اسکریپتی که obfuscated شده هستند است. همچنین این ابزار اماکاتی مانند source mapping و stack trace پیشرفته تر و امکان unit test رو به فایرفاکس شما اضافه خواهد کرد.

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

Closure Library

کتابخانه ای استاندارد شده توسط گوگل برای جاوا اسکریپت هست. این کتابختانه امکانات زیادی مانند طراحی رابط کاربر ، unit testing ، کار با rich-text و تبادل داده ها با سرور و غیره رو فراهم می کنه.

برای کار با کتابخانه حتما مستندات اون رو مطالعه کنید.

Closure Templates

ابزار یا فریم ورکی هست که امکان تولید کد های html دینامیک رو فراهم می کنه. این ابزار هم برای Java و هم برای Javascript پیاده سازی شده است. در صورتی که به صورد دینامیک با جاوا اسکریپت ظاهر صحات رو تغییر می دید این قالب ها کار شما رو سریع تر خواهند کرد.





بررسی کامل Google Webmaster Tools

22 07 2009

Google Webmaster Tools
Webmaster Tools یکی از سرویس های ویژه مدیران سایتها است که با هدف افزایش کیفیت سایتها با توجه به معیارهایی شرکت گوگل است. این کار برای افزایش کیفیت نتیایج مرتبط با عبارات جستجو طراحی شده است. این سرویس مدت چندین سال است که راه اندازی شده و اخیرا بازبینی بر روی برخی امکانات و ظاهر آن صورت گرفته است.

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

  • بررسی ویژگی و مزایا

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

بخش Dashboard

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

در منوی سمت چپ لیستی منویی می بینید که از طریق آن را سایر قسمت های این سرویس می توانید دست پیدا کنید.

مدیریت Sitemap

Sitemap یا به فارسی نقشه سایت، به صورت تعدادی استاندارد عرضه شده که اکثر آنها را گوگل در این سرویس پشتیبانی می کنه. همچنین گوگل این امکان رو میده که نقشه سایت رو به صورت Feed یا «خوراک» ثبت کنید.

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

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

مدیریت دسترسی به قسمتهای سایت (Crawler access)

قبل از پیدایش سرویس هایی مانند Webmaster Tools صاحبان سایت برای جلوگیری از دسترسی و اندیس شدن برخی صفحات مجبور به استفاده از فایلی به نام robots.txt بودند. این فایل فرمت خاصی دارد که این امکان را می دهد که به صفحات خاص دسترسی داد و یا دسترسی را ممنون اعلام کرد.

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

همچنین در این بخش می توان به تولید فایل robots.txt پرداخت و آن را در موتور های جستجوی مختلف گوگل مورد آزمایش قرار داد.

مدیریت SiteLinks

در صورتی که خوش شانس باشید و سایت شما دارای بازدید زیاد و همچنین PageRank بالایی باشد در این صورت ممکن است که گوگل لینک سایت شما را به صورت دیگری نشان بدهد. مانند زیر:

Sitelinks

Sitelinks

در این قسمت می توانید لینکهایی که در Sitelinks داده شده را ویرایش کنید.

تنظیمات کلی سایت (Settings)

این تنظیمات در داخل بخش Site configuration با نام Settings قرار دارند. کارهای می توانید انجام بدهید به شرح زیر است.

Site Settings

Site Settings

اولین مورد انتخاب کشور هدف است. با این انتخاب سایت شما فقط در جستجو هایی که از آن کشور انجام می شود قرار خواهد گرفت. متاسفانه ایران در این لیست قرار ندارد.

همچنین می توانید به گوگل بگویید که آدرس سایت شما را با www نمایش بدهد یا نه و یا اینکه با توجه به لینک ها این کار را انجام دهد. این گزینه با نام Preferred domain مشخص شده است.

و سرانجام تنظیم تعداد دفعات مراجعه موتور کاوشگر گوگل به سایت در قسمت Crawl rate قابل تنظیم است. ممکن است که به علت بزرگ بودن سایت و مشکلات سرور نتوان پاسخ گوی درخواستهای اضافی بود که در این صورت این مقدار باید کم شود. در صورتی هم که از عدم شناسایی به موقع تغییرات سایت ناراضی هستید مقدار آن را افزایش دهید.

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

بهترین کلمات کلیدی – Top search queries
در این قسمت کلمات کلیدی که در موتور جستجو بیشترین مراجعه را به سایت شما کرده است نمایش داده می شود. همچنین موقعیت شما در نتایج جستجو با استفاده از کلمات کلیدی که در سایت استفاده کرده اید نمایش داده می شود.

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

Top search queries

Top search queries

لینک ها به سایت – Links to your site
در این صفحاتی که لینکهایی از سایت های دیگر به آن داده شده است لیست می شوند. همچنین می توان متن لینکی که برای لینک دادن استفاده شده است را مشاهده کرد.

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

کلمات کلیدی – Keywords

در این صفحه لیست پر کاربردترین کلمات کلیدی قرار دارد. برای درک ساختار مطالب صفحات شما برای تنظیم مقادیر Keyword مناسب است.

برای فارسی این مشکل وجود دارد که حروف اضافه مانند «در» در بالاترین مکان قرار می گیرند.

لینک های داخلی – Internal Links

لیست صفحاتی که در داخل سایت به یکدیگر لینک داده اند در این صفحه نمایش داده می شود. تعداد لینکهایی که به یک صفحه خاص داده شده مشخص است و امکان مشاهده صفحات لینک داده شده وجود دارد.

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

مشترکین خوراک – Subscriber stats

در صورتی که سایت شما Feed یا خوراک ارائه میده در این صفحه می تونید وضعیت مشتریک خود را در سرویس Google Reader مشاهده کنید. در صورتی که این feed ها را قبلا در قسمت sitemap ثبت نکرده باشید می توانید آنها را مستقیما از اینجا به لیست Sitemap ها اضافه کنید.

خطاهای موتور کاوشکر – Crawl errors

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

این خطاها در سه گروه عمده Web و Mobile-Chtml و Mobile-Xhtml تقسیم بندی شده که نشان دهنده وجود سه موتور کاوشگر متفاوت برای این نوع صفحات است.

به غیر از Web بقیه موارد زمانی نشان داده می شود که سایت سرویس هایی برای موبایل ارائه کند.

بخش های فرعی شامل جزئیات خطاها هستند که درتصویر مشاهده می کنید:

Crawl Errors

Crawl Errors

همیشه این موارد را دنبال کنید کنید چراکه اگر مشکلی در کاوش صفحه ای پیش بیاید بدان معنی است که ممکن آن صفحه در نتایج جستجو نشان داده نشود و یا اینکه تغییرات در نتایج اعمال نشود.

در این لیست تنها موردی که ممکن شما را به اشتباه بیاندازد و باید به آن توجه کنید قسمت «Restricted by robots.txt» است. صفحات لیست شده در این قسمت دارای اشکال نیستند و فقط توسط robots.txt که قبلا گفته شد، از لیست نتایج حذف شده اند و در نتیجه موتور کاوشکر آنها را کاوش نکرده است. این لیست کمک خواهد کرد که بدانید دقیقا کدام صفحات از نتایج جستجو حذف شده اند.

گزارش موتور کاوشگر – Crawl stats
این گزارش عملکرد موتور کاوشگر بر روی سایت است که شامل میانگین مدت زمان صرف شده برای دریافت صفحات و تعداد روزانه صفحات بازدید شده و همچنین حجم باند مصرفی است.

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

Crawl Stats

Crawl Stats

همچنین در زیر این آمار خلاصه وضعیت سایت از نظر Page Rank نمایش داده شده است. یعنی در حالت کلی سایت بیشتر در بالای نتایج نمایش داده می شود یا نه.

در ادامه صفحه ای که در هر ماه دارای بیشترین Page Rank بوده نیز نمایش داده می شود.

پیشنهادات بهینه سازی – HTML suggestions

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

برای نمونه در صورتی که دو صفحه از یک عنوان استفاده کنند، این مورد در قسمت Duplicate title tags با عنوان وجود یک مشکل نمایش داده خواهد و با ورود به جزئیات امکان مشاهده صفحاتی که دارای اشکال هستند نمایش داده خواهد شد.

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

  • نحوه ثبت سایت در این سرویس

پس از اینکه وارد صفحه Webmaster Tools شدید بر روی گزینه Add site کلیک کرده و آدرس سایت رو وارد کنید. پس از آن آدرس سایت نمایش داده خواهد شد که نیاز به تایید دارد. برای تایید سایت بر روی گزینه Verify this site کلیک کنید:

افزودن سایت به Webmaster Tools

افزودن سایت به Webmaster Tools

تایید هویت سایت را به دو صورت می توانید انجام دهید. اول اینکه یک تکه کد Html را به صفحه اصلی سایت اضافه کنید و راه دوم اینکه یک فایل با نام مشخص در مسیر اصلی سایت قرار دهید.

در صورتی که به ساختار صفحات html آشنایی ندارید بهتر است که از روش دوم و قرار دادم فایل در مسیر اصلی سایت استفاده کنید. این فایل یک فایل خالی خواهد بود که نام آن را با انتخاب گزینه HTML file در قسمت Verification method به شما نمایش خواهد داد. این نام معمولا فرمتی مانند googlee30bf8a27611ecb4.html دارد.

تایید سایت

تایید سایت

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

نکته ای برای وبلاگها: سرویس های وبلاگ در صورتی می توانند از این سرویس گوگل استفاده کنند که اجازه ویرایش صفحه Html وبلاگ را داشته باشند. به این علت که برای تایید سایت نیاز به افزودن کدی به صفحه است. خوشبختانه بیشتر سرویس ها شامل blogfa، mihanblog ، blogspot و غیره این امکان را می دهند. توجه کنید که این امکان در سرویس wordpress.com وجود ندارد.

در صورتی هم که وبلاگ بر روی هسات خودتان قرار دارد که بسیار راحت تر بوده و فقط فایل تایید هویت را باید در سایت قرار دهید.

موفق باشید.





دو مقاله دو ابزار

11 03 2009

چند روز پیش کار بر روی دو تا مقاله  توصیفی برای ابزارهایی که قبلا نوشته بودم روبه پایان رسوندم که لینک آنها رو اینجا میذارم.

ابزار اولی مربوط به کنترل خطاها در Asp.Net و بعدی در مورد کار با thread ها در دلفی است.

در این مقاله به بررسی ابزار CustomErrorHandler می پردازیم که به ما این امکان را می دهد که شیوه نمایش خطاها را در ASP.NET تغییر دهیم. این خطاها از لحاظ ساختار بسیار استاندارد تر و برای گوگل قابل تشخیص تر هستند.

با استفاده ابزار ThreadWorker که برای دلفی نوشته شده است می توانید، وظایف و یا کارهای طولانی خود را بدون وقفه در کار برنامه انجام دهید.





Google Chrome مرورگر جدید از گوگل

2 09 2008

به تازگی گوگل مرورگر وب خودش رو معرفی کرده. این مرورگر که با نام Chrome شناخته می شه و بزودی منتشر خواهد شد.

Google Chrome

Google Chrome

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

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

مرورگر گوگل open source خواهد بود. جالبه بدونید که موتور درونی این نر م افزار WebKit خواهد یود. WebKit همان موتور استفاده شده در مرورگر معروف Safari کمپانی Apple هست.

از امکانات این مرورگر می توان به داشتن tab نام برد. این تب ها برخلاف سایر مرورگر ها در بالای نوار آدرس قرار دارند:

Google Chrome Tabs

Google Chrome Tabs

این مرورگر صفحه پیش فرض خود را speed dial قرار داده است مانند آنچه که در Opera وجود داره:

chrome speed dial

chrome speed dial

ستاره کنار نوار آدرس این امکان می دهد که به سرعت آدرس را به لیست علاقه مندی های خود اضافه کنید، همانند firefox:

chrome fast bookmark

chrome fast bookmark

نوار آدرس هوشمند برای کلمات تایپ شده و یافتن گزینه مناسب. همانند firefox 3 و IE8:

chrome address bar

chrome address bar

این مرور گر از موتور JavaScript با نام V8 استفاده می کنه که به گفته آنها برای بهینه سازی سرعت اجرای کد های جاوا اسکریپت طراحی شده است. این موتور هم به صورت open source در دسترس همه قرار داره و امکان استفاده آن در سایر مرورگر ها هم وجود هست.

همچنین این مرورگر یک حالت امنیتی ویژه خواهد داشت که به کاربر اجازه می دهد در صفحات وب گردش را انجام بدهد بدون اینکه هیچ ردی از آن در کامپیوتر باقی بماند. در حقیقیت هیچ log از کارهای وی گرفته نخواهد شد. این امکان با نام incognito شناخته می شه.

پ.ن: این مرورگر برای دانلود در لینک زیر آماده شد: http://www.google.com/chrome
پ.ن2: دریافت این مرورگر برای ایرانی ها بسته هست و برای دریافت آن باید از پراکسی استفاده کنید.

لینک دانلود بدون محدودیت برای ایرانی ها: http://rapidshare.com/files/142129854/chrome_installer.exe