تنظیمات BloGTK برای کار با وردپرس

من در زندگی‌ام تنها و تنها یک نرم‌افزار رو خودم واقعا خریدم و از اون هم هیچ وقت استفاده نکردم! چی بود؟ نرم‌افزار وبلاگنویسی رومیزی اکتو تحت مک. بعدش سوییچ کردم و حتی یکبار هم ازش استفاده نکردم. به هرحال خاطره شد (:

نرم افزار‌های وبلاگنویسی رومیزی‌ برنامه‌هایی هستن که مثل مسیر و اطلاعات ورود به وبلاگ شما رو می‌گیرن و بعد مثل یک نرم‌افزار عادی روی کامپیوتر شما اجرا می‌شن و می‌تونین توی پنجره‌شون پست وبلاگتون رو بنویسید و با فشار دادن دگمه «ارسال» اون مطلب رو به وبلاگ ارسال کنین؛ بدون نیاز به ورود به وب. این قابلیت اصلیه. حالا ممکنه هر برنامه یکسری کار ژانگولر دیگه بکنه، مثلا اکتو خودش عکس‌ها رو به سایت می‌فرستاد، مطالب قبلی رو برای ادیت می‌اورد و …

توی لینوکس من فعلا می‌خوام از برنامه بازمتن و آزاد بلاگ جی تی کی برای کاربرد مشابه استفاده کنم. ظاهرا به قدرت اکتو نیست (دقت کنید که اکتو حتما یک چیزی بوده که من حاضر شدم برنامه بخرم) ولی بدون شک کار من رو راه می‌ندازه. برای تنظیم این برنامه برای کار با وردپرس باید اونو اینجوری تنظیم کرد:

بعله (:‌ کافیه مووبل تایپ رو انتخاب کنید و اون آدرس رو بدید که به فایلی به اسم xmlrcp.php ختم به خیر می‌شه. این فایل به همراه وردپرس و خیلی سیستم‌های وبلاگنویسی می‌یاد و راهیه برای ارسال، ادیت و حذف مطلب از وبلاگ. در واقع برنامه وبلاگنویسی رو میزی از طریق ارتباط با این برنامه مطالب شما رو ارسال یا ادیت یا حذف می‌کنه.

گنو/لینوکس رو دوست دارم چون ایده‌هام توش عملی می‌شن

خب الان ساعت 22:31 است و من به ذهنم رسیده که یک متن برای وبلاگ بنویسم. اما برای اینکار لازم داشتم یک عکس رو یک سرور آپلود کنم تا توی مقاله نشونش بدم. این کار یک کار تکراری هر روزه است و چون یک هفته‌ای می شه که اومدم لینوکس، دیگه کار تکراری بکن نیستم (: منطقی ترین چیز چیه؟ روی عکس راست کلیک کنم و بگم به سرورم آپلود بشه.

سه تا گزاره انجام کارم رو مطمئن می‌کنن:

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

کارم منطقیه پس قبلا یک نفر بوده که شبیه‌اش رو کرده باشه.

لینوکسی ها جامعه زیبایی هستن. پس کسی که قبلا اینکار رو کرده حتما راه رو برای بقیه ساده کرده.

با این سه تا گزاره، دلگرم می شم که برم جلو.

صورت مساله: ساعت 22:33 است و من می خوام به منوی کلیک راست «ارسال به سایت جادی» رو اضافه کنم.

یک جستجوی ساده توی اینترنت منو به یک راهنما می‌رسونه. لازمه برنامه‌ای به اسم ناتیلوس اکشن رو داشته باشم که ندارم. توی لینوکسم پس فقط تایپ می‌کنم sudo apt-get install nautilus-actions و برنامه خود به خود پیدا، دانلود، نصب و تنظیم می‌شه. حالا ساعت 22:35 است و من آماده کارم.

توی خونه خودم یک دایرکتوری به اسم bin می‌سازم و توش فایل upload2jadiir.sh رو می‌سازم و اونو اجرایی می‌کنم: chmod 755 upload2jadiir.sh . حالا (یعنی 22:38 ) برنامه ناتیلوس اکشن رو اجرا می‌کنم و بهش میگم به کلیک راست من یک منو اضافه کنه که اون برنامه کوچیک رو اجرا کنه. اینجوری:

درست؟ الان ساعت شده 22:46 و رسیده ام به اینجا. یک مشکل کوچیک داشتم و این بود که باید بعد از اضافه کردن این منو، ناتیلوس رو دوباره استارت می‌کردم. حالا کافیه توی اون فایل برنامه آپلود رو بنویسم. یک کپی ساده به سرور. چیزی شبیه به همین دستور اصلی scp $1 jadi.ir:public_html/jadiir/pics/

خلاص (:‌ ساعت 23:00 است. البته یک اشتباه کوچیک در تنظیمات داشتم (باید بین d% و f% یک اسلش می‌ذاشتم ) که باعث شد ده دقیقه ای عقب بیافتم. حالا کافیه روی هر چیزی کلیک راست کنم و بگم آپلود بشه تا یک جعبه کوچیک پسورد رو از من بپرسه و فایل رو به سرور بفرسته.

جذاب نیست؟ به همین دلایل است که لینوکس رو دوست دارم. شما یک ایده ساده دارید که زندگی و دنیا رو یک قدم بهتر می ‌کنه و در کمتر از نیم ساعت چیزی که خودتون ایده دادین و لازم دارین رو می‌سازین و در این بین کلی هم چیز یاد می‌گیرین (: حین این کار از جامعه کمک می‌گیرین و بعد از انجامش به جامعه کمک می‌کنین (:

از امروز دیگه راحت می‌تونم عکسهام رو راحت و سریع روی سرورم آپلود کنم.

نکته فرعی : ادیتور من توسط استفاده کنندگان برای استفاده کنندگان طراحی شده. خود به خود چپ به راست و راست به چپ می‌شه و هر وقت هم بهش بگم خودش تایپ می‌کنه که الان چه ساعتی است (: من GEdit رو دوست دارم (:

لینوکس ویندوز نیست (قسمت سوم)

آنچه گذشت:

– لینوکس ویندوز نیست (قسمت اول)

– لینوکس وندوز نیست (قسمت دوم)


مشکل ۶: تقلید در برابر همگرایی

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

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

تئوری بانمک، ولی اشتباهی است: اولین X Windowing System در سال ۱۹۸۴ نوشته شد که ادامه راه سیستم W Windowing System بود که پیش از این در دنیای یونیکس وجود داشت. ویندوز نسخه ۱، در سال ۱۹۸۵ منتشر شد که تازه تا سال ۱۹۹۰ که نسخه ۳ ویندوز آمد، کاربرد خاصی نداشت. در ۱۹۹۰ سیستم ایکس،‌ به X11 رسیده بود که تقریبا همان چیزی است که این روزها هم استفاده می‌شود. توجه کنید که پروژه لینوکس تازه در سال ۱۹۹۱ شروع شد. نتیجه؟ لینوکس GUI (رابط گرافیکی) را از ویندوز کپی نکرده: لینوکس از رابط گرافیکی‌ای استفاده کرده که مدت‌ها پیش از ویندوز، وجود داشته.

ویندوز ۳، جایش را به ویندوز ۹۵ داد که تغییری عظیم در رابط گرافیکی مایکروسافت بود. این نسخه تعداد زیادی ابداع و خصوصیت جید داشت:‌ درگ و دراپ (بگیر/بنداز)، نوارابزار و … . لینوکس هم کمی بعد، این قابلیت‌ها را به خودش اضافه کرد…


اپل در ۱۹۸۴

… نه (: همه این قابلیت‌ها و خصوصیت‌های جدید، از قبل هم وجود داشته‌اند. NeXTSTep یا قدم بعدی که عموی سیستم عامل امروزی اپل / مک محسوب می‌شود‌، تمام این قابلیت‌ها را داشت و نسخه اول آن‌ها مدت‌ها پیش از ویندوز ۹۵، یعنی در سال ۱۹۸۹ نوشته شد. این سیستم عامل آخرین نسخه خود را در سال ۱۹۹۵ به بازار عرضه کرد.

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

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

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

به همین روش به مدیرپنجره‌های اولیه لینوکس مثل FVWM و TWM نگاه کنید و ببینید چطور به نمونه‌های امروزی‌تری مثل Gnome و KDE با همه تسک‌بارها و آیکون‌ها و جینگولک‌بازی‌های امروزی مزین شده‌اند. هیچ شکی هم نیست که این تغییرات شبیه تغییراتی است که در ویندوز حاصل شده. خود ویندوز هم دقیقا همنطور است. ویندوز ۳ هم نه تسک بار داشت و نه دگمه استارت.


یونیکس مجهز به X در ۱۹۹۰

لینوکس در ابتدا میزکاری شبیه به میز کار ویندوزهای امروزی نداشت. مایکروسافت هم نداشت. حالا هر دو دارند. ایا این نشان دهنده چیزی به جز تکامل است؟‌

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

مشکل ۷: جریان نرم‌افزار آزاد و بازمتن یا همان FOSS

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

در بحث‌های قبلی به چند مورد از این تفاوت‌ها اشاره کرده‌ایم. مثلا اینکه در اینجا مردم به اشتباه فکر می‌کنند که دیگران وظیفه دارند به آن‌ها کمک کنند. اما بحث از این گسترده‌تر است.

شعار تبیین کننده هدف مایکروسافت این است «یک کامپیوتر روی هر میز کار» و مشخص است که این کامپیوتر باید از ویندوز استفاده کنند. هم مایکروسافت و هم اپل، سیستم عامل می‌فروشند و تمام تلاش آن‌ها این است که مردم بیشتر و بیشتر از محصولات آن‌ها استفاده کنند. این شرکت‌ها، تجاری هستند و به دنبال پول بیشتر.

اما ما فاس (نرم افزار آزاد و بازمتن) را داریم که حتی امروز هم در بیشتر موارد غیرتجاری است.

قبل از اینکه ایمیل بزنید یا کامنت بگذارید و در مورد زوزه و ردهت و لینسپایر و .. بگویید، خودم باید بنویسم که که می‌دانم این شرکت‌ها لینوکس «می‌فروشند». آن‌ها دوست دارند که لینوکس در تمام دنیا مشهور شوند، آنهم لینوکس خاص خوشان. اما نباید ارائه دهنده‌ها را با سازنده‌ها قاطی کنیم. هسته (کرنل) لینوکس در یک شرکت نوشته نشده و کسی هم نمی‌خواهد از آن پول در بیاورد. ابزارهای گنو ، تجاری نیستند و توسط آدم‌هایی که سود مادی از اینکار نمی‌برند، توسعه داده می‌شوند. سیستم X11 که تا امروز، مشهورترین فراهم کننده امکانات گرافیکی است هم همینطور. در مورد نرم‌افزارهای کاربردی و میزهای کار هم همینطور: گنوم،‌فلاکس باکس، اینلایت‌منت و غیره. می‌بینم که آدم‌هایی هستند که در دنیای لینوکس کار تجاری بکنند ولی فعلا در اقلیتند.

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

لینوس توروالدز از اینکه مردم بیشتر و بیشتر از لینوکس استفاده کنند، استفاده مادی نمی‌برد. ریچارد استالمن با بیشتر شدن استفاده گنو، پولدار نمی‌شود. تمام سرورهایی که از اپن بی اس دی و اپن اس اس اچ نصب می‌کنند، یک ریال هم نصیب پروژه اوپن بی اس دی نمی‌کنند. این ایجاد کننده یکی از مشکلات‌ پیچیده دنیا است:

تازه واردهای دنیای بازمتن کشف می‌کنند که کس مشتاق دیدن آن‌ها نیست.

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

بله! کمی اغراق کردم. ولی مطمئن هستم اگر با کسانی که به لینوکس آمده و برگشته‌اند گپ بزنید، این چیزی است که از خیلی از آن‌ها خواهید شنید.

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

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

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

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

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

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

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

اگر فقط به دنبال یک ویندوز هستید که مشکل امنیتی نداشته باشد و ویروس نگیرد سراغ چند راهنمای کامپیوتر بروید و برنامه ضدویروس درستی نصب کنید که فایروال بگذارید و مواظب بدافزارهای باشید و به جای اینترنت اکسپلورر از یک برنامه امن‌تر مثل فایرفاکس استفاده کنید و همه به روزرسانی‌های امنیتی را نصب کنید. آدم‌هایی هستند (از جمله خودم) که از زمان ویندوز ۳.۱ تا به XP از آن استفاده کرده‌اند بدون اینکه یکبار مشکل حاد ویروس یا دردسر امنیتی داشته باشند. شما هم می‌توانید همین احساس را تجربه کنید. اگر به دنبال یک ویندوز بدون ویروس هستید، لینوکس شما را ناامید خواهد کرد.

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


مرتبط:

 دلایلی که به خاطر آن‌ها نباید اپل مک بخرید

قسمت‌های قبلی:

– لینوکس ویندوز نیست (قسمت اول)

– لینوکس وندوز نیست (قسمت دوم)

لینوکس وندوز نیست (قسمت دوم)


دیگر قسمت‌ها:

– لینوکس ویندوز نیست (قسمت اول)

– لینوکس ویندوز نیست (قسمت سوم)


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

مشکل چهار: طراحی شده برای طراح

در صنعتی مثل صنعت اتوموبیل، تقریبا محال است ببینید همان کسی که موتور خودرو را طراحی کرده، بدنه را هم رنگ‌آمیزی کند. همین مساله در دنیای نرم‌افزار هم صادق است؛ در اکثر موارد کسی که اصل برنامه را می‌نویسد با کسی که رابط گرافیکی را طراحی می‌کند متفاوت است.

اما در دنیای لینوکس، پروژه‌ها معمولا توسط یک نفر شروع می‌شوند و به عنوان یک سرگرمی (: در ابتدای کار یک نفر همه کارها را می‌کند و به همین دلیل او بیشتر دنبال نوشتن برنامه‌های حرفه‌ای است تا درست کردن رابط‌های کاربر پسند: کاربر اول این برنامه خود برنامه‌نویس اس تو همه چیز در مورد برنامه را می‌داند. سادگی استفاده برای او اصلا مهم نیست. مثلا vi را در نظر بگیرید. این برنامه دقیقا برای کسی طراحی شده که کار با آن را بلد است. یک کاربر تازه وارد ممکن است برای خارج شدن از آن، مجبور شود کامپیوترش را بوت کند!

یک تفاوت مهم دیگر هم بین نرم‌افزارهای آزاد و بازمتن (FOSS) و نرم‌افزارهای تجاری هست: برنامه بازمتن معمولا به خاطر استفاده برنامه‌نویس توسعه پیدا می‌کند در حالی که برنامه تجاری برای استفاده شدن توسط مشتری نوشته می‌شود. این مساله تیغ دو لبه است: از یک طرف کاربر با برنامه‌ای مواجه است که استفاده از آن چندان راحت نیست ولی در مقابل کاربر نهایی مطمئن است که این برنامه برای استفاده خود نویسنده طراحی شده و در نتیجه او تمام تلاش خود برای بالا بردن کیفیت برنامه را کرده است. در عین حال در این حالت کاربرنهایی دقیقا می‌داند که نویسنده برنامه درک می‌کند کاربرنهایی چه می‌خواهد چون خودش هم یکی از کاربران برنامه خواهد بود؛ درست برعکس یک برنامه تجاری.

بازهم به vi نگاه کنید؛ رابط کاربری آن بسیار برای یک کاربر تازه کار سخت است اما در عوض آنقدر قوی است که هنوز هم به عنوان اصلی‌ترین ویرایشگر متن، استفاده می‌شود.

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

پس برای جلوگیری از مشکل ۴: به سراغ برنامه‌هایی بروید که برای راحتی کاربر طراحی شده‌اند یا بپذیرید که در این دنیا روند یادگیری استفاده از برنامه‌ها ممکن است کندتر باشد. ایراد گرفتن از این که چرا استفاده از vi راحت نیست، باعث خواهد شد همه باور کنند که شما اصولا نکته را نگرفته اید (:

مشکل ۵: افسانه کاربرپسندی

یک مساله جدی. عبارت کاربرپسند یا User Friendly آنقدر مهم است که یکی از سایت‌های کاریکاتور بسیار مشهور هم اسمش را همین گذاشته (در ایران فیلتر است، چون در مورد برنامه نویسی است). اما این عبارت، عبارت ناجوری است.

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

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

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

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

جواب ساده: کاربرپسندی، لغت ناواضحی است که سعی می‌کند یک مفهوم پیچیده را ساده جا بزند.

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

زیرمشکل ۵الف: آشنا، مورد پسند است

واقعیت این است که این روزها در اکثر ویرایشگرهای متن آشنا و کاربرپسند شما می‌توانید با Ctrl+X و Ctrl-V متون را Cut و Paste کنید. این‌ دو کلید واقعا بی‌ربط به کاری می‌کنند که هستند اما چون آشنا هستند، کاربرپسند به نظر می‌رسند.

حالا اگر کسی سراغ vi بیاید و ببیند که d برای cut استفاده می‌شود و p برای paste، این به نظرش ناکاربرپسند خواهد رسید چون به آن عادت ندارد.

حالا کدام مفیدتر است؟ vi (:

با داشتن Ctrl+X، چطور می‌توانید با کیبرد یک کلمه را cut کنید؟ اول باید به اول کلمه بروید و بعد Ctrl+Shift+Right را بزنید و بعد از اینکه انتخاب شد، Ctrl+X را فشار دهید.

در vi؟ dw یا در اصل delete word.

حالا اگر بخواهید پنج کلمه را Ctrl+X کنید چه؟ به اول کلمه بروید و بعد Ctrl+Shift+Right را فشار دهید و بعد

Ctrl+Shift+Right
Ctrl+Shift+Right
Ctrl+Shift+Right
Ctrl+Shift+Right
Ctrl+X

و در vi؟ d5w که در اصل همان Delete 5 words است.

می‌بینید که روش vi کاملا سریعتر و منطقی‌تر است. X و V هیچ ربطی به cut و paste ندارند اما d و w حروف اول delete و word هستند. اما… اما ما به x و v عادت کرده‌ایم و vi به نظرمان غیردوستانه می‌آید و اگر ادیتوری ببینید که شبیه ویندوز باشد، به نظرتان دوستانه خواهد‌ آمد. یادتان هست؟‌ مشکل شماره ۱ این بود که لینوکس عین ویندوز نیست؛ دقیقا به همین خاطر برای یک تازه وارد لینوکس در اوایل غیردوستانه‌تر می‌آید.

برای غلبه بر مشکل ۵الف، باید به یاد داشته باشید که «کاربر پسند» به معنی «چیزی که کاربر به آن عادت دارد» نیست.

زیرمشکل ۵ب: کاربرپسند، غیرکارا است

این یک واقعیت دوست نداشتنی است. متاسفانه هر چقدر راه دستیابی به کارکرد مورد نظر دورتر باشد، برنامه کاربرپسندتر به نظر خواهد رسید. چرا؟ چون اصولا کاربرپسندی، با اضافه کردن نشانه‌های تصویری به قابلیت اصلی اضافه می‌شود و هر چقدر این نشانه‌ها بیشتر باشند، برنامه کاربرپسندتر می‌شود. فرض کنید یک تازه وارد کامل به دنیای دیجیتال، پشت یک ویرایشگر متن ویزیویگ بنشیند (ویزیویگ یعنی برنامه‌ای که دقیقا چیزی را پرینت خواهد گرفت که شما روی صفحه می‌بینید، مثل برنامه ورد مایکروسافت یا رایتر اوپن آفیس) و بخواهد بخشی از یک متن را سیاه‌تر / بولد کند. احتمالا:

 باید حدس بزند که فشردن Ctrl+B متن را سیاه‌تر می‌کند، که بعید است.

 باید دنبال نشانه‌ها بگردد. احتمالا از منوی Edit شروع می‌کند و وقتی موفق نمی‌شود به سراغ منوی Format خواهد رفت و از آنجا Font را انتخاب خواهد کرد و به گزینه Bold خواهد رسید!

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


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

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

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

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

چرا اینطور است؟ اول اینکه بعضی از کارایی‌های «کاربرپسند» مجبورند قدرت را پایین بیاورند: مانند مثال cut و paste که در بالا زدیم. مساله دوم این است که اکثر قابلیت‌های نرم‌افزاری مثل ورد در منوهایی هستند که در هر صورت مجبور به استفاده از آن هستید. شما فقط توانایی‌های عمومی را در میانبرها و تولبارها پیدا می‌کنید و هنوز باید برای کاربردهای حرفه‌ای که معمولا حرفه‌ای ها به آن نیاز دارند، به سراغ منوهای پر دردسر بروید.

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

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

یا بگذارید سراغ تبدیل یک CD صوتی به MP3 (یا بهتر از آن Ogg) بروید: در خط فرمان باید از برنامه cdparanoia استفاده کنید تا فایل‌های دیسک را بخوانید. بعد باید از یک کد کننده استفاده کنید که (حداقل به نظر من) کار پچیده‌ای است. پس اگر من باشم چیزی مثل Grip را نصب می‌کنم تا با یک رابط گرافیکی دوبرنامه قبلی را در پشت صحنه اجرا کند و تبدیل سی.دی. به فایل صوتی را به کاری ساده تبدیل کند.

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


دیگر قسمت‌ها:

– لینوکس ویندوز نیست (قسمت اول)

– لینوکس ویندوز نیست (قسمت سوم)


لینوکس ویندوز نیست (قسمت اول)


دیگر قسمت‌ها:

 لینوکس ویندوز نیست (قسمت دوم)

– لینوکس ویندوز نیست (قسمت سوم)


این چند وقت بحث زیادی در مورد لینوکس و ویندوز در گرفته. من اصولا این بحث را زیاد مربوط نمی‌دانم چون کامپیوتر و به تبع آن سیستم عامل یک ابزار است و تا وقتی ما هدف از استفاده را نشناسیم، انتخاب ابزار بی‌معنی است. من از لینوکس استفاده می‌کنم و برای اینکار حجم زیادی دلیل دارم. در عین حال به نظرم در آینده مردم بیشتر و بیشر از گنو/لینوکس استفاده خواهند کرد اما در عین حال معتقدم بدترین کاری که برای لینوکس می‌شود کرد این است که جوی بوجود بیاوریم که افراد بدون درک از اینکه هدفشان چیست،‌ آن را نصب کنند به این امید که همه مشکلاتشان حل شود. به هرحال… به عنوان مشارکت در این بحث‌ها،‌ این مقاله مشهور (
Linux is NOT windows
) را در دو قسمت ترجمه می‌کنم.

Linux
=! Windows

(لینوکس ویندوز نیست)

مشکل ۱: لینوکس دقیقا وینددوز نیست

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

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

اما یک مشکل هست.

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

به عنوان مثال، به مساله به روز رسانی درایورها دقت کن. در ویندوز آدم‌ها برای به روز رسانی درایورها به وب سایت تولید کننده می‌روند و نسخه جدید را دانلود و اجرا می‌کنند. در لینوکس این کار با به روز رسانی کرنل انجام می‌شود.

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

یا مثلا به فایرفاکس نگاه کنید که این روزها مشهورترین نمونه موفقیت نرم‌افزارهای بازمتن است. این نرم‌افزار مشهور شد چون از اکسپلورر بهتر بود. اگر قرار بود شبیه آن باشد هیچ وقت نمی‌توانست جایش را بگیرد. فایرفاکس از همان اول از برگه‌ها (تب‌ها) پشتیبانی می‌کرد، بوک‌مارک زنده داشت، امکان جستجو داشت، تصاویر PNG را نشان می‌داد، می‌توانست جلوی تبلیغات ناخواسته را بگیرد و … فایرفاکس یک find در زیر پنجره دارد که حین تایپ کردن شما در صفحه جستجو می‌کند و نتایج پیدا شده را قرمز می‌کند و اگر به جایی برسد که چیزی پیدا نشود، متنی که دارید تایپ می‌کند قرمز می‌شود. در عوض IE تب که ندارد، از RSS سر در نمی‌آورد، خودش جای جستجو در گوگل و یاهو و … ندارد و اگر بخواهید چیزی را جستجو کنید باید یک پنجره باز کنید و بعد OK را بزنید و اگر چیزی پیدا نشد ایراد Not Found را ببینید. این نمونه‌ای است از اینکه چرا یک نرم‌افزار بهتر، با تفاوتی که دارد پیروز می‌شود. اگر فایرفاکس، کپی آی.ای. بود هیچ امیدی نداشت. دقیقا همانطور که اگر قرار بود لینوکس عین ویندوز باشد، به هیچ دردی نمی‌خورد.

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

مشکل ۲: لینوکس خیلی با ویندوز فرق دارد

حالا با کسانی طرفیم که پذیرفته‌اند لینوکس و ویندوز دقیقا یک چیز نیستند، اما تفاوتی که می‌بینند بیشتر از آن است که انتظارش را دارند. شاید بهترین مثال، حق انتخاب بسیار وسیع در انتخاب باشد. اگر کسی به شما بگوید که یک کامپیوتر ویندوز XP خریده، کاملا می‌دانید که بعد از زدن به برق با چه شکلی و چه نرم‌افزارهایی روبرو خواهد شد: آن پس‌زمینه تکراری، وردپد، اکسپلورر، آوت لوک اکسپرس و … . اما همچین چیزی در مورد لینوکس غیرممکن است. حتی کل رابط گرافیکی ممکن است متفاوت باشد. از گنوم و کی.دی.ای. گرفته تا فلاکس‌باکس و اوپن‌باکس از اوپرا و فایرفاکس گرفته تا کانکوئرور و گالئون و دیلو و .. .

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

رفتن از یک ویندوز به یک یندوز دیگر مثل عوض کردن یک ماشین معمول به یک ماشین معمول دیگر است (:‌ اما تغییر از ویندوز به لینوکس مثل عوض کردن خودرو با موتورسیکلت، ماشین کورسی و … است. هنوز هم از برنامه‌ای برای اجرای برنامه‌های دیگر استفاده می‌کنید اما دیدگاه کاملا عوض شده است. مثلا در خودروی ویندوز لازم بود حتما آنتی ویروس نصب کنید تا از شر مزاحمان در امان بمانید اما مزاحمان جاده (چه ویروس‌ها، چه هکرها و چه تبلیغات) از نظر فنی امکان ورود به کاروان لینوکسی شما را ندارند.

یا از یک زاویه دیگر:

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

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

اما چیزهایی هم هستند که تفاوت دارند. در ماشین لازم نیست کلاه ایمنی بگذارید، موتورسوارها کمربند ایمنی ندارند، ماشین‌ها با چرخاندن فرمان دایره‌ای کنترل می‌شوند و موتورها با چپ و راست کردن یک دسته و وزن بدن و …

مشکل سوم: شوک فرهنگی

زیرمشکل ۳ الف: فرهنگی که از قبل وجود دارد

این قسمت چندان به ایران مربوط نیست. من و شما در اکثر موارد برای نرم افزار پول نمی‌دهیم و حتی اگر هم بدهیم، از پشتیبانی نمی‌توانیم استفاده کنیم.

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

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

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

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

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

در این جهان، یک تازه وارد ویندوزی ممکن است حس کند برنامه‌ای که استفاده می‌کند قابلیت‌های فنی لازم را ندارد و شروع به غر زدن کند. تصور کنید جوابی مثل این بشنود که «اگر نمی خواهی، همانقدر که پول داده‌ای را پس بگیر و برو!» و به این نتیجه برسید که چه حسی به این تازه وارد دست خواهد داد.

برای فائق آمدن به این مشکل به یاد داشته باشید که نرم افزار را رایگان دریافت کرده‌اید و به کسی هم برای پشتیبانی پول نداده‌اید.

زیرمشکل ۳ ب : جدید در مقابل قدیم




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

این یک مزیت ایجاد می‌کند: اگر با سخت افزار یا نرم افزار مشکلی داشته باشید، کلی گیک در دنیا هستند که حاضرند روی مشکل شما کار کنند.

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

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

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

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

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

بذارید با لگو مثال بزنم. همان مکعب‌های کوچکی که با وصل شدن به هم می‌توانند هر چیزی بسازند. این صحنه را تصور کنید:

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

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

تازه وارد: چی؟ من چه می‌دانم چطور باید ماشین ساخت! من که مکانیک نیستم. از کجا قرار است ماشین ساختن بلد باشم؟

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

تازه وارد: آه درست است. راهنما اینجاست. ولی درست کردنش ساعت‌ها طول می‌کشد! خب چرا یک ماشین کامل در جعبه نگذاشته‌اند؟ مگر من باید ماشین را درست کنم؟

قدیمی: خب تو حتما لازم نیست بخواهی ماشین درست کنی. اما کسانی که دوست دارند، لگو می‌خرند. خوبیش این است که می‌توانی از لگو هر چیز دیگری هم درست کنی. کل ایده همین است.

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

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

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

قدیمی: خب لعنتی! پس چرا لگو خریده‌ای؟!!

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

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

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

پس برای جلوگیری از زیرمشکل ۳ ب باید به یاد داشته باشید که این روزها لینوکس دقیقا آن چیزی که قدیم‌ها بود نیست. اما کماکان حجم زیادی از جامعه پشت لینوکس – از جمله هکرها و توسعه دهندگان آن – آن را به همان دلایل قدیمی دوست دارند.


دیگر قسمت‌ها:

 لینوکس وندوز نیست (قسمت دوم)

– لینوکس ویندوز نیست (قسمت سوم)


شیوه به روز رسانی یک سایت مبتنی بر اسپیپ

چرا؟

ایمنی یک برنامه شدیدا وابسته به این است که به روز باشد. اگر می خواهید سایت یا کامپیوتر یا سرور شما نسبت به تمام حملات کشف شده در جهان ایمن باشد باید از یک نرم افزار بازمتن (مثل لینوکس، وردپرس، اسپیپ، دروپال و … ) استفاده کنید و

قدم اول

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

حرکت

برای ارتقاء یک سایت اسپیپی به بالاترین نسخه موجود کافی است فایل به آدرس http://www.spip.net/spip-dev/INSTAL… را دانلود و در دایرکتوری ای که اسپیپ در آن نصب شده‌ است، آپلود کنید. حالا به صفحه مدیریت سایت خود لاگین کنید و بعد فایل spip_loader.php را صدا بزنید؛ مثلا با صدا زدن آدرسی مثل: http://yourdomain.com/spip_loader.php .

صفحه ای مثل این ظاهر می‌شود.


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


سیستم به شما می‌گوید که به روز شده است و نوبت آن است که بانک اطلاعاتی را به روز کند. روی نوشته Click on this link کلیک کنید تا این کار هم انجام شود. ممکن است در طول کار لازم شود یکی دو بار دیگر کلید submit یا next را فشار دهید. شما که قبلا از سیستم پشتیبان گرفته‌اید، نباید نگران این کار باشید. توجه کنید که ممکن است لازم باشد یکی دوبار این مرحله را تکرار کنید.


در صورتی که مشکل خاصی پیش نیامده باشد، سیستم شما به نسخه جدید ارتقاء خواهد یافت. در صورتی که مشکل بدی پیش بیاید، از روی پشتیبان باید به نسخه قبلی برگردید (:

چگونه یک هاست بخریم


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

هاست دقیقا یک فضا روی دیسک یک کامپیوتر متصل به اینترنت است که به شما اختصاص پیدا کرده. معمولا شما این امکان را دارید که از طریق یک اتصال FTP به این سرور وارد شوید (کلمه عبور و نام کاربر) و روی آن فایل کپی کنید. مثلا اگر شما دامین Jadi.ir را داشته باشید و یک هاست برایش بخرید، شرکت فروشنده هاست کامپیوترش را طوری تنظیم می‌کند که هر کس به آدرس Jadi.ir آمد، فایل درون دایرکتوری home/jadi/public_html/ را ببیند. حالا وظیفه شما خواهد بود که از طریق FTP (مثلا برنامه آزاد و بازمتن http://filezilla-project.org/) به هاست خودتان متصل شوید و یک فایل به نام index.html در آن دایرکتوری بگذارید تا به بازدید کنندگان نشان داده شود.

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

Web Space یعنی روی این هاست چند مگ فایل می‌توانید بریزید. البته فضای بانک اطلاعاتی هم به حجم فایل‌های شما اضافه خواهد شد. مثلا اینجا من فقط حق دارم ۱۰۰ مگ از هارد میزبانم را اشغال کنم. برای یک وبلاگ معمولی، این عدد کافی است (:

Bandwidth هر کسی که برای دیدن سایت من بیاید، از سایت من متن، عکس و بقیه چیزها را دانلود خواهد کرد. اصلا هم لازم نیست حتما دگمه دانلود را بزند. همین که یک عکس در سایت من دیده می‌شود، یعنی از سایت من به کامپیوتر طرف منتقل شده است. پهنای باند یا همین Bandwidth می‌گوید که من در ماه حق دارم ۲ گیگابایت (۲۰۴۸ مگابایت) فایل منتقل کنم. این یکی از مشکل‌زا ترین بخش‌های هاست است. چرا؟ فرض کنید حجم صفحه اول سایت من (یعنی عکسها و متن‌های صفحه اول)‌ در مجموعه ۳۰۰ کیلوبایت باشد. هر سه نفر که به سایت بیایند، یک مگ از پهنای باند ماهانه من مصرف شده. من کلا ۲۰۰۰ مگ پهنای باند ماهانه دارم (یعنی دو گیگ در ماه). نتیجه؟ در ماه کلا ۶۰۰۰ نفر می‌توانند صفحه من را باز کنند! این تقریبا آمار یک روز بازدید کیبرد آزاد است و نتیجه این است که من باید هاست گرانتری بخرم ! این عددی است که موقع خرید هاست به آن توجه کنید. البته لازم نیست خیلی هم سخت بگیرید. کمترین را بخرید و هر لحظه که کم آمد، اختلاف را پرداخت کنید و به یک سطح بالاتر بروید.

MailBoxes چند تا ای میل می‌توانید روی این هاست تعریف کنید؟ الان ۱۰ تا است. یعنی من می توانم ه ایمیل به شکل jadi@jadi.ir یا admin@jadi.ir یا … داشته باشیم. این در ظاهر مهم است ولی در واقع یک ایمیل هم زیاد است چون این روزها همه ایمیل‌های قرص و محکم روی یاهو و جیمیل و دیگر سرویس‌های تجاری را به این ایمیل‌های غیرقابل اطمینان ترجیح می‌دهند (: مگر اینکه به طور خاص به دنبال کاربری خاصی باشید.

subdomains یعنی چیزهایی مثل blog.jadi.ir یا news.jadi.ir و … اینها می‌توانند سایت‌هایی کاملا جدا باشند یا بخش‌های مختلف یک سایت. در واقع شما با خرید هر دامین می‌توانید بی‌نهایت زیردامین تعریف کنید ولی سرویس‌های تجاری شما را به تعدادی خاص، محدود می‌کنند.

FTP Account برای انتقال فایل به سرور (مثلا برای نصب یک وبلاگ) نیازمند یک شناسه اف تی پی هستید. همین یکی برای هر کاری کافی است مگر اینکه کاربرد خاصی برایش داشته باشید.

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

PHP سرور از زبان PHP پشتیبانی می‌کند. یعنی اگر فایلی با پسوند PHP به سرور منتقل کنید، روی آن «اجرا» خواهد شد. این روزها تقریبا همه برنامه‌های آشنای ما با PHP نوشته می‌شوند و همه سرورها هم از آن پشتیبانی می‌کنند. آخرین سروری که بدون پشتیبانی از PHP دیده‌ام، تقریبا مال ۸ سال قبل بوده.

CGI یک شیوه برنامه‌نویسی است و در واقع اگر کسی بگوید از آن پشتیبانی می‌کند یعنی یک دایرکتوری به نام cgi-bin هست که اگر فایل‌های اجرایی در آن بریزید (مثلا پرل با پسورند pl) اجرا خواهند شد. این کار کمی پچیده‌تر از کار کردن با PHP است و نیاز به کمی تجربه دارد (: تنها برنامه بسیار مرسومی که این روزها از این روش استفاده می‌کند، مووبل تایپ است که پیشنهاد می‌کنم سراغش نروید و از وردپرس استفاده کنید.

JSP جاوا و این چیزها. من سررشته‌ای ندارم (:‌

Support پشتیبانی (: 24/7 یعنی هفت روز هفته روزی بیست و چهار ساعت جوابتان را می‌دهند (: احتمالا در این سرویس با ایمیل. ممکن است اگر به سرویس‌های بالاتر بروید یک شماره تلفن هم به شما بدهند که بیست و چهار ساعته بتوانید به آن زنگ بزنید و حل مشکل کنید. در واقع اگر من بخواهم یک دلیل برای خرید سرویس از یک جای خوب بیاورم، پشتیبانی است (: راستش را بخواهید هنوز هم که هنوز است، بهترین پشتیبانی را در پرشین تولز دیده‌ام (:

Price که همان قیمت است. فکر کنم از ۱۰ تومن هم بتوانید سرویس پیدا کنید ولی گول قیمت را نخورید. قیمت معقول بدهید برای سرویس معقول. نه لازم است چیز عجیبی بخرید نه لازم است دنبال ارزان‌ترین سرویس باشید. من سرویسی مثل این که اینجا را می‌بینید را خوب می‌بینم. البته به جز پهنای باند ۲ گیگ که واقعا کم است. به نظرم اگر همین سرویس، پهنای باند ۵ گیگ بده (مثلا به اسم سرویس دانشجویی!) خیلی خوب خواهد بود (:

دیگر چیزها بعله!‌ هنوز مانده. گاهی از Dedicated IP و تعدادشان حرف می‌زنند. یعنی شما چند آدرس IP خواهید داشت. در بسیاری از مواقع همین یکی بس است و اگر کسی نمی‌داند «آی پی اختصاصی» به چه دردی می‌خورد، معنش‌اش این است که به دردش نمی‌خورد. نکته مهم دیگر CPanel است. انجام خیلی از کارها توسط یک کاربر معمولی راحت نیست. مثلا اگر شما یک دامین جدید بخرید به سختی می‌توانید آن را به هاست فعلی متصل کنید. یا اگر لازم باشد یک بانک اطلاعاتی My SQL تعریف کنید،‌ احتمالا علاقه‌ای ندارید وارد خط فرمان شوید و دستورات لازم را تایپ کنید. شما یک صفحه می‌خواهید که با کلیک روی آن تعداد کاربران را ببینید، اسکیوال تعریف کنید، حتی وبلاگ نصب کنید و …. این صفحه گرافیکی معمولا یا CPanel است یا Plesk و در آدرسی مثل این قرار دارد: http://jadi.ir/cpanel و برای ورود به آن باید نام کاربر و کلمه عبور را تایپ کنید. تقریبا اکثر سیستم‌های تجاری، این امکان را دارند ولی خوب است قبل از خرید از این نکته اطمینان حاصل کنید (:

چه سیستم عاملی؟

خب انتخاب خیلی ساده نیست. FreeBSD پایداری بهتری برای وب سرور داره ولی کنترل حرفه‌ای تری می‌خواد و ممکنه ایرانی‌ها گرون‌تر بفروشنش. لینوکس راحت‌تر و همه‌گیرتر است و اکثر وب سرورهای جهان ازش استفاده می‌کنن. البته نهایتا انتخاب‌های مختلف لینوکس برای کاربر نهایی فرق چندانی نداره. من خودم Debian رو ترجیح می‌دم ولی CentOS هم کاملا مرسومه (:‌ به هرحال انتخاب سیستم عامل، تا وقتی که قرص و محکم باشه تفاوت چندانی ایجاد نمی‌کنه (:

ضریب جیم یا چرا در مورد تونل دی ان اس می نویسم

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

حالا که ضریب جیم رو داریم، می تونیم به راحتی تصمیم بگیریم چه مطلبی رو باید در وبلاگ نوشت و چه مطلبی رو نه. مد‌ت‌ها قبل یکی از دوستانی که من خیلی خیلی کم دیده‌امش ولی یکی از بهترین دوستانم است (هه هه! ضریب جیم اینجا هم خودش رو نشون می ده!) لینک http://dnstunnel.de/ رو برام فرستاد. من هیچ وقت نمی‌دونستم باید در موردش چی و چقدر بنویسم اما همیشه برام بسیار جالب بود و جذاب و مفید. حالا که ضریب جیم رو معرفی کردم، می‌دونم که این مطلب باید نوشته بشه. حتی اگر فقط به درد یک نفر بخوره (: شدیدا پیشنهاد می‌کنم دیگران هم بخوننش. البته فقط صورت مساله رو:

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

غیرطبیعی است؟ اصلا (: اکثر فرودگاه‌ها، مکان‌های عمومی، هتل ها و … که اینترنت پولی دارند، با این روش کار می‌کنند.

راه حل؟ http://dnstunnel.de/

من توضیح فنی نمی‌دهم. کار خیلی راحتی هم نیست ولی احتمالا برای بعضی‌ها واقعا ارزش خواندن دارد و برای بعضی‌ها از نظر فنی واقعا جذاب. مطمئنا آدم‌های خیلی کم با علاقه خیلی زیاد که باعث متعادل شدن ضریب جیم می‌شود (:‌

نکته: این کار احتمالا غیرقانونی است. حواستان باشد. احتمالا همه شما هم مثل من اعتقاد دارید که Internet Should be Free / اینترنت باید رایگان باشد ولی به هرحال این ایده همه نیست (: