نصب نرم افزارهای ویندوز روی لینوکس

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

البته از حق نگذریم هنوز آنطور که باید نرم افزارهای لینوکسی به پای برنامه های ویندوز نرسیده اند.در این میان بیشترین کم لطفی نصیب بازی های لینوکسی شده است. شاید تعدادی از بازی های حرفه‌ای مانند Wolfenstein: Enemy-Territory ،  Savage و… برای لینوکس ارائه شده باشند اما به جرئت میتوان گفت هنوز هیچ کدام از بازی های پرطرفدار برای لینوکس عرضه نشده اند.

کارکشته گان دنیای متن باز  بهترین راه برای اجرای نرم افزارهای ویندوزی را از طریق Wine میدانند(البته این بزرگان هیچ وقت نیازی به اینکار ندارند[superemotions file="icon_wink.gif" title="Wink"]). Wine یکی شبیه ساز محیط ویندوز است که این اجازه را میدهد تا نرم فزارهای مخصوص ویندوز در محیط لینوکس اجرا شوند. اما خوب نصب نرم افزارها از طریق Wine آنچنان هم آسان نیست. در بهترین حالت نرم افزار مورد نظر با کمی تلاش اجرا خواهد شد، اما خوب همیشه ماجرا به این خوبی ختم نخواهد شد و در بعضی مواقع شما مجبورید بسیاری از فایلهای DLL ویندوز را از روی یک نسخه ویندوز به صورت دستی قرض بگیرید.

اما بسته نرم افزاری Play on Linux که یک بسته الحاقی به Wine است، کار نصب و راه اندازی بسیاری از برنامه های ویندوزی را به صورت کاملا خودکار انجام خواهد داد. Play on Linux که هم به صورت مستقل و هم به صورت پکیج در مخازن اوبونتو یافت میشود پروسه نصب برنامه ها را بدون نیاز به دخالت کاربر انجام خواهد داد. البته باید مد نظر داشت که فقط برنامه هایی از این طریق قابل نصب خواهند بود که عملیات تبدیل یا به اصطلاح پورت آنها توسط تیم Play on Linux انجام شده باشد.

پس از نصب این برنامه شما میتوانید لیستی از برنامه های قابل نصب از طریق Play on Linux را دریافت کرده و به انتخاب، هر کدام را که خواستید نصب کنید. البته نیاز به نگرانی نیست. در این لیست بلند بالا بسیاری از نرم افزارهایی که ممکن است هرکس به دنبالش بگردد وجود دارد. نرم افزارهای پرطرفداری مانند Photoshop, Flash, Internet Explorer, Auto CAD و… و همچنین بسیاری از بازی های پرطفدار مانند WarCraft, Assassin’s Creed (II), Call of Duty, GTA, Prince of Persia و … نیز در این فهرست موجودند.

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

با جاوا اسکریپت نقاشی کنید

Raphaelبه عنوان یک طراح وب بسیاری مواقع پیش آمده که در کارهایم به کشیدن انواع نمودارها و تصاویر تعاملی  نیاز پیدا کرده‌ام. برای ایجاد گرافیک ساده  میتوان به راحتی از CSS و HTML استفاده نمود. کارهای کمی پیچیده تر را نیز میتوان با استفاده از جاوا اسکریپت و به کمک کتابخانه های بی نظیرش ماند jQuery ,mootools , scriptacoulus و … انجام داد. اما تا همین چند وقت پیش اگر نیاز به نمودارهای پیشرفته و تعاملی بود راهی به جز استفاده از فلش در صفحات وب وجود نداشت.

اما جدیدا کتابخانه‌ای به جمع کتابخانه های JavaScript پیوسته که حرفهای بسیاری در زمینه گرافیک وب و خصوص گرافیک برداری و یا وکتوری (Vector Graphic) دارد. این کتابخانه که Raphael نام دارد با قابلیتهای بسیار خود جایگزین قدرمتندی برای فلش خواهد بود.

با استفاده از رافائل میتوان انواع و اقسام نمودارها و تصاویر تعاملی را تنها با استفاده از کد ایجاد کرد. Raphael با کمک گیری از قابلیتهای جدید HTML5 و فرمت تصویر SVG از تمامی مرورگرهای مدرن پشتیبانی کرده و با قابلیت انعطاف بالای خود میتواند به راحتی با انواع کتابخانه های دیگر ترکیب شده و قابلیتهایی از جمله انیمیشن را نیز پیاده سازی کند. برای دیدن قابلیتهای بی نظیر این کتابخانه میتوانید از دموهای متنوعی که در سایت اصلی رافائل قرار داده شده دیدن کنید.

Raphael Demos

برای ورود به وبسایت سازنده Raphael روی این لینک کلیک کنید.

قالب جدید وبلاگ با نام obscure

تقریبا یک سال است که در این وبلاگ مشغول نوشتن هست و از همان ابتدا نیز قالب وبلاگ, همان قالب سبزرنگ webby-green بود که تا دیروز تغییری نکرده بود. از آنجا یک سال و یک ماه است که تغییری در ظاهر وبلاگ نداده‌ام تصمیم بر این شد که قالب جدیدی را برای سیستم وردپرس پیدا کنم که از این پس به مدت نامعلومی قالب پیشفرض این وبلاگ باشد.

قالبی که هم اکنون ۷ سال را با آن میبینید قالب obscure نام دارد که یکی از محصولات سایت wpcrunchy.com است که با آخرین تکنیک‌های طراحی وب نوشته شده و تم تیره و کلاسیک خود ظاهر شیکی را به وبلاگ داده است. فارسی سازی این قالب نیز توسط خود بنده انجام شده و به دلیل پیشرفته بودن قالب هنوز برخی قسمت‌ها کامل فارسی نشده‌اند که به مرور این قالب تکمیل میگردد.

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

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

به کار انداختن فشرده سازیGZIP

با یقین میگویم که این مورد مهمترین موردی است که در این مطلب میخوانید. gzip که مخفف Gnu Zip میباشد ابزاری برای فشرده سازی انواع مختلف فایل است که گاها میتواند تا حدود ۸۰ درصد از حجم صفحات وب شما بکاهد. اگر برای فایلهای js و css خود این قابلیت را فعال کنید کاهش حجم زیادی را در صفحات خود خواهید و در اینترنت کاهش حجم یعنی سرعت و سرعت یعنی همه چیز.

برای فعال کردن gzip در سرورهای apache میتوانید تکه کد زیر را  به فایل .htaccess که در روت هاست شما وجود دارد اضافه کنید.

1
2
3
4
5
6
7
8
9
AddOutputFilterByType DEFLATE text/plain
AddOutputFilterByType DEFLATE text/html
AddOutputFilterByType DEFLATE text/xml
AddOutputFilterByType DEFLATE text/css
AddOutputFilterByType DEFLATE application/xml
AddOutputFilterByType DEFLATE application/xhtml+xml
AddOutputFilterByType DEFLATE application/rss+xml
AddOutputFilterByType DEFLATE application/javascript
AddOutputFilterByType DEFLATE application/x-javascript
1
SetOutputFilter DEFLATE

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

افزودن http Expire Headers

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

برای فعال سازی کش از طریق سرور باید خطوط زیر را به فایل .htaccess خود اضافه کنید.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
# cache images and flash content for one month
<filesmatch ".(flv|gif|jpg|jpeg|png|ico|swf)$">
Header set Cache-Control "max-age=2592000"
</filesmatch>

# cache text, css, and javascript files for one week
<filesmatch ".(js|css|pdf|txt)$">
Header set Cache-Control "max-age=604800"
</filesmatch>

# cache html and htm files for one day
<filesmatch ".(html|htm)$">
Header set Cache-Control "max-age=43200"
</filesmatch>

# implement minimal caching during site development
<filesmatch "\.(flv|gif|jpg|jpeg|png|ico|js|css|pdf|swf|html|htm|txt)$">
Header set Cache-Control "max-age=5"
</filesmatch>

# explicitly disable caching for scripts and other dynamic files
<filesmatch "\.(pl|php|cgi|spl|scgi|fcgi)$">
Header unset Cache-Control
</filesmatch>

 

 

استفاده از سرورهای تحویل محتوا (Content Delivery Networks)

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

1
http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js

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

ترکیب کردن جاوا اسکریپت و CSS در یک فایل

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

بهینه سازی تصاویر

به جرات میتوان گفت امروزه تصاویر بیشترین حجم صفحات وب را بخود اختصاص داده اند و روزانه هزاران گیگابایت پهنای باند را مصرف میکنند. تصاویری که گاها بدلیل استاندارد نبودنشان برای وب حجمی بسیار بیشتر از آنچه نیاز دارند اشغال میکنند. در بسیاری موارد میتوان حجم تصاویر را تا ۸۰ درصد بدون افت کیفیت کاهش داد. ابزارهای زیادی نیز برای اینکار موجود هستند. درسیستمهای لینوکسی دو ابزار بسیار مفید jpegoptim و optipng میتوانند تعداد زیادی تصویر را در زمان کمی بدون افت کیفیت بهینه کنند. برای ویندوز نیز ابزارهای مخصوصی وجود داردند.+ + +

کوچک کردن JavaScript و CSS

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

 

و در آخر این نکته را متذکر میشوم که گرچه افزایش سرعت برای سایتها بسیار مفید خواهد بود اما نباید محتوا را فدای سرعت کرد. به یاد داشته باشید محتوای خوب ارزش منتظر ماندن را خواهد داشت.

کدهای خود را آنلاین کامپایل کنید!

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

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

این سایت از هرگونه زبانی که من تا به حال شنیده ام پشتیبانی میکند. حتی زبان سطح پایینی مثل Assembly تا زبانهای سطح متوسط (C/C++) و زبانهای سطح بالایی مانند Python, Perl, VB .NET, C#, Java, Ruby, PHP و حتی زبان تازه متولد شده گوگل با نام Go !

پس از ورود به سایت شما ابتدا باید زبان مورد نظر خود را از لیست انتخاب کنید. سپس در کادر اول کدهای خود را بنویسید و اگر برنامه شما نیاز به ورودی دارد در کادر آخر هر ورودی را در خطی جدید وارد کنید. سپس روی Compile and Execute کلیک کنید و برنامه خود را اجرا کنید. سیستم پس از اجرا خروجی برنامه را تحویلتان خواهد داد. علاوه بر این شما میتوانید کدهای خود را درون یک فایل آپلود کرده و آن را اجرا کنید.

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

MuktoSource | Your Online Code Compiler

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

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

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

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

Key Hero

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

سرویس بعدی ابزاری چند زبانه است که علاوه بر زبان انگلیسی زبانهای راست به چپ از جمله فارسی را نیز پشتیبانی میکند. سرویس 10-fast-fingers به این صورت عمل میکند که شما در زمان ۶۰ ثانیه باید تعدادی کلمه که به صورت اتفاقی نمایش میابند را تایپ کنید. در پایان ۶۰ ثانیه سیستم به شما آماری کلی از سرعت و میزان اشتباهات شما ارایه خواهد کرد.

10 fast fingers