دسته: آموزش

چی نصب کنم ؟

این مطلب قبلا در وب سایت Hive.ir منتشر شده است.

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

  • برای کار برنامه‌نویسی سیستم عامل چی نصب کنم؟
  • برای کد نویسی چی نصب کنم؟ اتم خوبه یا سابلایم؟
  • برای php بهتره phpStorm نصب کنم یا zend studio؟

و همون طوری که می‌دونید موارد مشابه زیاده، بیایید چند لحظه موارد فنی و آمارها و نمودارها رو کنار بذاریم. آیا دلیل اصلی انتخاب یک سیستم عامل و یا ویرایشگر این نیست که باهاش راحتیم؟ افرادی هستند که در حال حاضر دارن با ویرایشگرهایی مثل notepad++ ،vim و یا emacs کد نویسی میکنن. آیا ما که از sublime استفاده می‌کنیم پیشرفته و خفن هستیم؟ یا اونی که از atom استفاده میکنه خفنتر از همه ما هست؟

به Atom رفتم و بازگشتم: تجربه یک مهاجرت ناکام از sublime text به atom

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

نمایش متن فارسی در atom

نمایش متن فارسی در atom

 

نمایش متن فارسی در sublime text

نمایش متن فارسی در sublime text

 

در اولین حرکت سعی کردم که رنگ بندی محیط atom رو با sublime یکی کنم (چون به اون رنگ بندی عادت کرده بودم.) در این مورد با نصب پوسته itg-dark-syntax تقریبا مرتفع شد.

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

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

پکیج‌های color-picker و emmet هم چیزی بود که باید نصب میشد و فرقی نمیکرد sublime باشه یا atom

مورد بعدی که باهاش مشکل داشتم بحث مشخص کردن انتخاب کلمات مشابه بود. (دقیق نمیدونم اصطلاحش چی میشه). در sublime وقتی یک کلمه رو انتخاب می‌کنیم به صورت خودکار تمام کلمات مشابه اون رو هم نمایش میده. ولی در atom برای این کار حتما باید از جستجو استفاده کنیم.

سمت راست sublime - سمت چپ atom

سمت راست sublime – سمت چپ atom

 

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

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

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

 

و در پایان بحث سنگین بودن اون در باز کردن فایل‌های حجیم هست. اگر یک فایل css که از روی اجبار حدود ۱۱ هزار خط باشه رو با sublime باز کنید بدون مشکل و سریع باز میشه. ولی با atom هم در لحظه باز شدن فایل کرش میکنه و در زمان کار هم به شدت با cpu وصلت میکنه.

در پایان به عنوان یک نادم پشیمان از این که مدتی به sublime text پشت کردم از تمام جامعه عذرخواهی می‌کنم و دوباره به آغوش اون باز میگردم.

از سایت‌های hash generator استفاده نکنید

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

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

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

How To Hide Your Password 1

دیده نشویم: یا چگونه کمی تا قسمتی ابری باشیم

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

  • GPS گوشی رو فقط در مواقع مورد نیاز روشن کنید.
  • تا حد امکان از سرویس‌هایی مانند Foursquare استفاده نکنید.
  • هر عکس رو در اینستاگرام یا جاهای دیگه به اشتراک نذارید.
  • دقت کنید که در داخل عکس محل حضور شما مشخص نباشه.
  • آفلاین موسیقی گوش کنید.
  • هرجایی میرید یا با هرکسی هستید رو تویییت و اعلام عموم نکنید.
  • موارد غیر ضروری رو در فرم‌ها و وبسایت‌‌های شبکه‌های اجتماعی پر نکنید. (کجا درس خوندی – چی دوست داری – از چه فیلمی خوشت میاد و . . . )

من خودم به شخصه تا اونجایی که امکانش وجود داشته باشه سعی می‌کنیم موارد بالا رو رعایت کنم. البته باز هم تاکید می‌کنم که من سعی می‌کنم و حتما و ۱۰۰٪ موارد بالا رو ممکنه رعایت نکنم.

شاد باشید و کمی مرموز « آخه کلاس داره 😉 »

 

پیام به دنبال یک پیامک

چند روزی هست که بعضی از دوستان اعلام می‌کنند که توییتر اکانت اونها رو بلاک کرده و برای باز شدن باید یک شماره تلفن وارد کنند تا با ارسال کدی اکانت اونها رو باز کنه. صبح هم با توجه به تست اولیه و دریافت اس‌ام‌اس توییت زیر رو ارسال کردم. ولی بعد متوجه شدم که سرویس twilio و کلا هیچ سرویس درست و درمورن دیگه‌ای از طرف توییتر مورد تایید نیست. حتی اپلیکشن‌هایی مثل TextPlus رو تست کردم ولی جواب نداد.

screenshot-twitter.com 2015-05-01 13-53-54

اما تونستم مشکل دریافت نشدن اس‌ام‌اس روی توی سرویس Twilio حل کنم. این سرویس به صورت پیش فرض فقط از کشوری که شماره رو به شما داده اس‌ام‌اس دریافت می‌کنه. برای اینکه تمام کشورها رو فعال کنید، بعد از ورود لینک زیر رو باز کنید

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

smsbody

سرویس Twilio در واقع به درد توسعه دهندها می‌خوره که میخوان برای سرویس‌های خارجی سیستم ارسال و دریافت sms راه‌اندازی بکنن. چون APIهای و مثالهای کاملی برای این کار داره.

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

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

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

برچسب‌ها:

کپی بکنیم یا نکنیم، مسئله این است

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

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

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

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

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

  1. پروانه مستندات آزاد گنو
  2. مجوز کرییتیو کامنز
  3. پروانه عمومی همگانی گنو
  4. گنو ال‌جی‌پی‌ال
  5. پروانه‌های بی‌اس‌دی
  6. مجوز آپاچی
  7. پروانه همگانی هر غلطی که دوست داری بکن (مطالب وبلاگ خودم بر پایه این مجوز هست)

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

اولین قدم‌های امنیت در Apache و PHP

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

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

apache01

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

اگر مارک زاکربرگ در استارت‌آپ ویکند شرکت می‌کرد

به داستان زیر دقت کنید :

مارک زاکربرگ در زمان تحصیلش در هاروارد زبان برنامه نویسی Z را پایه گذاری کرد که در حال حاضر بعد از گذشت ۱۰ سال به یکی از بهترین زبان های برنامه نویسی تحت وب تبدیل شده. مارک در یکی از مصاحبه های خود گفته بود که در زمان تحصیلش در هاروارد در یک رویداد دانشجویی شرکت کرده بود و ایده ساختن یک شبکه اجتماعی را داشت. ولی با توجه به این که در آن زمان سایت‌هایی مانند MySpace و یاهو 360 فعالیت خودشان را شروع کرده بودند ورود به این حیطه کار احمقانه‌ای به نظر می‌رسید و ایده مارک کلا از رویداد کنار گذاشته شده بود. او می‌گوید :‌ «در زمان فعالیت سه روزه در این رویداد متوجه ضعف‌هایی در زبان برنامه نویسی php شدم. به همین دلیل پس از رویداد پروژه  ساختن یک زبان برنامه نویسی تحت وب را شروع کردم. من نمی‌خواستم کار خارق العاده‌ای بکنم و فقط می‌خواستم برخی ضعف‌های موجود رو برطرف کنم»
در حال حاضر ۶۰ درصد وبسایت های دنیا با زبان Z ساخته شده‌اند و  زاکربرگ هم علاوه بر تدریس در هاروارد به توسعه این زبان کمک می‌کند.

 

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

چگونه خوب هکر شویم

در دید جامعه عادی هکر کسی هست که آی دی یاهو دوست دختر رو هک میکنه . و یا در درجات بالاتر رمز گم شده لپ تاپ شما رو براتون عوض میکنه. از نگاه افراد دیگری در جامعه هکر فردی هست که در سایتهایی مانند zone-h اکانت داره و در حال آپلود اسکریپت shell روی هاست دیگران هست. در سطوح بالاتر هم این دید وجود داره که این موجودات کاملا به درد این میخورن که در اعتراض به حملات موشکی به غزه سایت های اسرائیل رو هک کنن.

اریک ریموند

مدیریت سرور لینوکس رو از کجا شروع بکنیم ؟

در همین اول اخطار میدم که اصلا شروع نکنید. مدیر سرور بودن یک چیزی تو مایه های آتش نشان بودن هست. مخصوصا سرورهای هاستینگ. اما خوب اگر به این کار علاقه دارید اولین کاری که باید بکنید این هست که به خط فرمان (Command Line) در لینوکس مسلط بشید. یعنی بتونید تمام کارهای خودتون رو باخط فرمان انجام بدید. برای شروع کار با خط فرمان میتونید این فایل رو دانلود کنید. 5 فایل PDF داخل فایل زیپ هست که به ترتیب مطالعه کنید.

sysadmin-a

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

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