گیک فارسی

نوشته های یک گیک فارسی از فعالیت ها ،‌ علاقه مندی ها و نقد هایش

اتصال و استفاده از پایگاه داده MSSQL در PHP

نویسنده:
۵ اردیبهشت ۹۳

به نظرم خیلی اشتباهه که وقتی با PHP کار میکنیم کلاً از ویندوز و IIS استفاده کنیم که حالا اصلاً بحث استفاده از MSSQL هم مطرح بشه. ولی نمیشه زیاد گلایه کرد و خیلی‌ها هم هستند که با سرویس دهنده های ویندوزی به خاطر آشنایی بیشتر ، راحت‌تر هستند و ترجیح هم میدهند از MSSQL استفاده کنند. ولی قبل از خوندن این مطلب به شدت توصیه میکنم که تجدید نظر کنند و از MySQL یا Maria DB یا Postgre SQL استفاده کنند.

به طور کلی چندین روش برای اتصال به MSSQL وجود داره که من ۵ روش معمول را میگم و یکی را که توصیه میکنم توضیحات و کدش را میگذارم.

روش اول : تا نسخه ۵٫۳ خود php یک Extension به نام mssql داشت که هنوز مستنداتش هم توی سایت php.net موجوده ولی دیگه پشتیبانی نمیشه ، حالا اگه خیلی علاقه دارین میتونید از نسخه های قدیمی تر php استفاده کنید و از این extension استفاده کنید. البته قرار نیست مثلا همه امکانات SQL 2012 را هم پشتیبانی کنه و ممکنه خیلی bug داشته باشه. مستنداتش هم اینجاست.

روش دوم : مایکروسافت مثل اینکه خودش متوجه شده اگه دست به کار نشه توی php واقعا کسی با مشکلات driver های فعلی سراغ mssql نمیره و خلاصه آستین ها را بالا زدند یا سفارشش را دادند. خودش اومده یک extension برای php درست کرده که به نسخه ۳ هم رسیده و اینطور که پیداست خیلی امکانات خوبی داره و mssql را به خوبی پشتیبانی میکنه. مشکلش اینه که فقط روی windows قابل استفاده هست و برای لینوکس تا زمان نوشتن این مطلب وجود نداره. این سایتش و همه اطلاعات مربوطه برای علاقه مندان.

توجه : سه روش بعدی در مورد PDO هست.

روش سوم : یکی از Driver های PDO اسمش PDO_DBLIB هست که امکان اتصال و استفاده از MSSQL و Sybase را از طریق کتابخونه FreeTDS فراهم میکنه. این Extension از نسخه ۵٫۳ PHP به بعد برای ویندوز پشتیبانی نمیشه (وجود نداره) و فقط روی لینوکس قابل استفاده هستش. نکنه اینکه DB-LIB قدیمیه ، Thread un-safe هست و هزار مشکل دیگه که در زمان کار کردن بهش بر میخورین.

روش چهارم : یکی دیگه از driver های PDO اسمش PDO_SQLSRV هستش که شما باید همون extension که توی روش دوم اشاره کردم را بگیرید و با توجه به non thread safe یا thread safe بودن نسخه php با کپی کردن dll های مربوطه و اعمال تغییرات توی php.ini اون را نصب کنید. نکته اینکه فقط روی ویندوز هم جواب میده. اینجا طریقه نصب را بهتر توضیح داده.

روش پنجم : این روش که هم روی ویندوز و هم روی لینوکس جواب میده (بدیهی هست که باید ODBC روی سیستم عامل نصب باشه به همراه Extension مربوطه) از طریق PDO_ODBC هستش.

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

و اما کد :

try{
  $hostname = "host,port";
  $dbname = "database_name";
  $username = "username";
  $pw = "password";
       
  $pdo = new PDO ("odbc:Driver={SQL Server};Server=$hostname;Database=$dbname; Uid=$username;Pwd=$pw;");
       
} catch (PDOException $e) {
  echo "Failed : " . $e->getMessage() . "\n";
  exit;
}
 
$query = $pdo->prepare("select field_name from table");
$query->execute();
 
for($i=0; $row = $query->fetch(); $i++){
  echo ($i + 1)." - ".$row['field_name']."";
}

نکته مهم : یکی از مشکلات اصلی دوستان درست set نکردن hostname$ هستش. متوجه باشین دادن ip یا ادرس FQDN (مثل mssql.mydomain.com) ممکنه خطای timeout بده. اونجاست که شما باید به دو نکته توجه کنید.پورت پیش فرض ۱۴۴۳ هست اما اگه شما چند تا instance داشته باشین اونوقت پورت ها به صورت رندوم اختصاص داده میشه و باید توی host$ از instance name استفاده کنید یا پورت بدین ، اینطوری :

$hostname = "{IP ADDRESS},6688"; // port version
$hostname = "{IP ADDRESS}\SQLEXPRESS"; // instance version

پس حتما از مسئول هاست بپرسین تنظیماتشون چیه و اگه خودتون نصب میکنید از instance name استفاده کنید. (توی SQL server Configuration Manager هست).

باز هم یک سریال فوق‌العاده به نام True Detective از شبکه HBO

نویسنده:
۵ اردیبهشت ۹۳

کمتر پیش میاد شبکه‌های HBO و AMC دست به ساخت سریال بزنند و اون سریال ها توجه نقد کنندگان و بینندگان تلویزیونی را به خودش معطوف نکنه. این بار یک سریال درام – جنایی که دو تا هنرپیشه فوق‌العاده هم به نام های Matthew McConaughey و Woody Harrelson که شاید یکی از بهترین نقش‌های زندگیشون را در این اثر ایفا کرده اند.

سریال True Detective

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

سطح و کلاس این سریال نیاز به تعریف نداره و فقط با دیدن یک قسمت از اون بهش واقف خواهید شد. سریال توی imdb نمره ۹.۵ گرفته و من هم بهش ۱۰ دادم و خیلی اطمینان دارم که سال آینده نامزد Golden Globe خواهد شد.پس اگه اهل سریال هستین و مخصوصاً سبک جنایی و معمایی را دوست دارین ، بهترین انتخاب این روز ها سریال True Detective هستش.

بسته شدن فصل ۹۲-۹۳ برای سپاهان و اندوه یک ساله هواداران

نویسنده:
۳ اردیبهشت ۹۳

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

تیم سپاهان

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

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

گرفتن عکس از صفحات وب (یا همون Webshot) از طریق PHP

نویسنده:
۲ اردیبهشت ۹۳

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

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

به زبان ساده phantomjs یک مروگر خط فرمان با Syntax و API مشابه Javascript هست که برای خیلی موارد مانند آزمون و تست وب سایت‌ها ، عکس گرفتن ،‌ دسترسی به DOM و حتی Jquery جهت اتوماسیون کردن عملیات و همینطور مانیتور و آنالیز کردن به کار میره.ما قصد داریم برای گرفتن عکس از یک وب سایت ازش استفاده کنیم. پس ابتدا از سایت مربوطه آخرین نسخه را دانلود میکنیم و کنار فایل php که میخواهیم عکس را باهاش از سایت بگیریم ذخیره میکنیم.

Phantomjs دستوراتی را که شبیه به javascript هست میگیره و بر اساس اون تفسیر و اجرا میکنه.من اسکریپت زیر را برای phantomjs نوشتم که آدرس ، فایل خروجی ، طول و عرض عکس را میگیره و عملیات دریافت و ذخیره سازی Webshot را انجام میده :

address = phantom.args[0];

output = phantom.args[1];

wt = phantom.args[2];

ht = phantom.args[3];

page.viewportSize = { width: wt, height: ht };

page.open(address, function (status) {

  if (status !== 'success') {

     console.log('Unable to load the address!');

     phantom.exit();

  } else {

      window.setTimeout(function () {

        page.render(output);

        phantom.exit();

      }, ۲۰۰);

  }

});

بعد از دانلود phantomjs این اسکریپت را کپی و توی فایلی به نام geekfarsi.js کنار phantomjs ذخیره میکنیم.حالا کافیه خط زیر را توی فایل php بنویسیم و با مروگر اجراش کنیم :

exec('phantomjs geekfarsi.js http://www.geekfarsi.com geekfarsi.png 1024 768');

نتیجه اینکه عکس ما کنار فایل php قرار گرفته و Webshot ما آماده هستش !

نکته : اگه php شما در حالت safe_mode باشه (مدیر سیستم توی php.ini تعیین میکنه) شما نمیتونین هیچ دستوری را روی سرور اجرا کنید. بعضی از هاست ها شرایطی را برا ی این کار فراهم میکنن. در صورت عدم موفقیت کافیه یک Ticket به مسئول هاست بزنین و ازشون بپرسین.

معرفی و نظر من در مورد سه گانه عاشقانه Richard Linklater تا ۲۰۱۳

نویسنده:
۳۰ فروردین ۹۳

من یکبار حدود ۷ یا ۸ سال پیش به اشتباه فیلم دوم این سه گانه که سال ۲۰۰۴ منتشر شد را دیدم و چون فیلم اول را ندیده بودم و هنوز هم طبع فیلم دیدن من رشد کافی نکرده بود نیمه کاره بی خیالش شدم و حالا یک سال پس از انتشار سومین فیلم تصمیم به دیدن این سه گانه گرفتم.

before midnight

فیلم اول یعنی Before Sunrise توی وینا در اتریش ،‌ فیلم دوم یعنی Before Sunset توی پاریس و فیلم سوم یعنی Before Midnight توی یونان (نام منطقه خاطرم نیست) فیلمبرداری شده.

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

این سه گانه بیشترین تأثیر را در سنین ۴۰ یا ۴۵ خواهد گذاشت و اگه شماره ۴ هم ساخته بشه شاید در سن ۶۵ سالگی. فیلم اصلاً من را خسته نکرد. در برخی سکانس ها کمدی بود ، برخی نوستالژیک و برخی غم انگیز. فیلم را به شدت توصیه میکنم و بهتره هر سه را توی یکی دو روز و پشت سر هم ببینید تا وقایع و دیالوگ ها توی ذهنتون باشه.

من به هر سه فیلم توی Imdb نمره ۹ دادم.

خروجی CSV فارسی برای Excel در PHP

نویسنده:
۲۷ فروردین ۹۳

از زمانی که ویندوز را رها کردم بعضی مشکلات که روی ویندوز بود داره از ذهنم میره و مبنا را بر روی لینوکس و نرم‌افزار های لینوکسی گذاشته‌ام که خوب بعضی جا ها باعث بروز مشکلاتی میشه ، بالاخره بیش از ۹۸ درصد کاربران روی کامپیوتر هاشون ویندوز دارن و از برنامه‌های ویندوزی استفاده میکنند. این مشکل مربوط به نمایش خروجی های CSV توی Excel هست که بسیار توی برنامه نویسی وب پر استفاده هستش و معمولاً خیلی از گزارش ها را به فرمت CSV و Xls میدیم.

من زیاد از فرمت های انحصاری خوشم نمیاد مخصوصاً Xls و ترجیح میدم وقتی CSV به این راحتی هست از Xls استفاده نکنم مگر اینکه واقعاً مجبور بشم.

اما مشکلی که تقریباً همه دارند اینه که وقتی خروجی utf-8 بگیری توسط php و حتی BOM مربوطه را هم بگذاری باز هم Excel نمیفهمه فایل را باید با Encoding درست یعنی utf-8 نمایش بده. خوب با کمی جستجو و استفاده از تجربه دیگران متوجه شدم که Excel تنها وقتی Encoding را روی UTF-16LE میگذاریم و BOM را هم اول فایل قرار میدیم به راحتی فارسی (کلاً یونیکد) را تشخیص و درست نمایش میده.

خوب با این فرض دیگه کد نویسیش سخت نیست و چون نمیخوام این تغییر را دونه به دونه روی هر فیلدی اعمال کنم همون فایل utf-8 را ایجاد میکنم و از روش یک فایل با utf-16le میسازم:

$fh = fopen($utf16le_file,"w");
fwrite($fh, chr(255).chr(254)); //BOM For UTF-16LE
fwrite($fh, mb_convert_encoding(file_get_contents($utf8_file) , 'UTF-16LE', 'UTF-8'));
fclose($fh);

به همین راحتی انجام شد و نیازی به سر و کله زدن با کامپوننت های Excel برای PHP نیست.

پی نوشت ۱: یک نمونه کد برای راهنمایی بیشتر دوستان برای دانلود قرار دادم.

پی نوشت ۲: دو تا نکته هست که اگه دوستان دقت نداشته باشند با مشکل روبرو میشوند. یکی اینکه برای Delimiter باید حتما از TAB یا همون t\ استفاده کنند و نکته دیگه اینکه اگه از تابع fputcsv استفاده میکنید. توجه داشته باشین که مقادیر را داخل تابع به utf16le تبدیل نکنید. کل فایل csv را روی دیسک ذخیره کنید و یکجا همه را به utf16le تبدیل کنید. علتش اینه که fputcsv مقادیر Delimiter و n\ را utf-8 ذخیره میکنه و به مشکل میخورید.

پی نوشت ۳: یکسری دوستان گلایه داشتند که چرا من از فایل متنی به عنوان Data ورودی استفاده کردم که نسخه MySQL به همراه Database و فایل هاش هم به عنوان نمونه قرار داده شد.

عدم دعوت از بهترین دروازه بان حال حاضر ایران «سید مهدی رحمتی»

نویسنده:
۲۶ فروردین ۹۳

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

سید مهدی رحمتی

در مورد صعود به جام جهانی ۲۰۱۴ باید بگم که واقعاً تیم ملی ماموریت غیر ممکن را ممکن کرد و سه تا بازی خیلی خوب انجام داد که نباید از سهم کی‌روش گذشت ولی توی شانس بالای تیم ملی هیچ شکی وجود نداره. برد شانسی ازبکستان در بازی رفت ،‌باخت به لبنان ، برد خفیف و مدیون رحمتی مقابل کره در آزادی ، باخت به ازبکستان خود شخص بنده را کاملاً نا امید کرد و رحمتی که شاید آخرین شانس را برای حضور در جام جهانی داشت را نگران کرده بود.

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

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

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

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

به امید موفقیت تیم ملی در جام جهانی ۲۰۱۴ برزیل

افزایش سرعت بروز رسانی بسته ها در اوبونتو (Ubuntu)

نویسنده:
۲۱ فروردین ۹۳

یکی از موضوعاتی که از ابتدای نصب ubuntu من را اذیت میکرد مشکل سرعت پایین update manager بود. سرعت دانلود بسته ها خیلی خیلی پایین بود. به خاطر اینکه من زندگیم پشت کامپیوترم میگذره و هر روز چند تا بسته را بروز میکردم این موضوع خیلی هم روی اعصاب نبود تا اینکه امروز بعد از تعطیلات عید و حجم بالای update که توی این ۲۰ روز برای سیستم به وجود اومده بود تصمیم گرفتم بررسی کنم که چطور میشه سرعت بروزرسانی را بالا برد.

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

با یک جستجوی ساده به جواب میرسیم و اون هیچ چیز نیست غیر از apt-fast که یک Shellscript Wrapper برای apt-get هست و دانلود ها را با aria2c یا axel انجام میده.

از اونجا که این اسکریپت برای افزایش سرعت از aria2c یا axel و … استفاده میکنه ، بهتره که خودتون aria2c را قبلش (یا حتی بعدش) نصب کنین :

sudo apt-get install aria2c

برای نصب خود apt-fast از دستورات زیر استفاده میکنیم :

sudo add-apt-repository ppa:apt-fast/stable
sudo apt-get update
sudo apt-get install apt-fast

نکته : در زمان نصب ممکنه یک دیالوگ براتون باز بشه و بپرسه مثلاً با چند slot دانلود کنه که میتونید پیش‌فرض را قبول کنید یا خودتون یک عدد بدین. یا ممکنه بپرسه از aria2c استفاده کنه یا از axel که خوب انتخاب میکنید. یا حتی ممکنه بپرسه apt-get را استفاده کنه (کاربران ubuntu) یا aptitude (کاربران دبیان) که باید درست انتخاب کنید ! (البته من توی ۱۲٫۰۴ که نصب کردم فقط تعداد دانلود را پرسید). اگه به هر دلیلی خواستین دوباره این دیالوگ را از ابتدا باز و تنظیمات را انتخاب کنین از دستور زیر استفاده کنید :

sudo dpkg-reconfigure apt-fast

حالا که نصب شد به راحتی با دستورات زیر ابتدا update و سپس upgrade میکنیم :

sudo apt-fast update
sudo apt-fast upgrade -y

نکته : y- به این معنی هست که همه را بدون سؤال از شما دانلود کنه.

توجه داشته باشین که upgrade کرنل شما را به روز نمیکنه و برای این کار باید از دستور زیر استفاده کنید :

sudo apt-fast dist-upgrade

نکته : y- نزدم چون این دستور ریسک داره و میخوام بدونم داره چی کار میکنه. معمولاً فقط برای به روز رسانی کرنل استفاده میکنم (البته اگه با دستور man apt-fast دستور استفاده را بخونید بهتر متوجه میشین).

پی‌نوشت: از اونجا که ممکنه آدرس های مخازن (مخصوصا غیر رسمی ها) تغییر کنند. اگه به مشکل خوردین از github منتشر کننده کمک بگیرید.

چرا لینوکس به اندازه ویندوز کاربر ندارد ؟!

نویسنده:
۱۴ فروردین ۹۳

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

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

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

اگه با من مخالف هستید کافیه از خانواده و دوستان خودتون شروع کنین و ببینید نظر اونها نسبت به لینوکس چی هست !؟

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

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