سال بدون شلوار: معرفی

اینم یه تجربه پراکنده دیگه!

اول از همه باید اعتراف کنم که برخلاف علاقه‌ی درونیم خیلی کم کتاب می‌خونم و این من رو خجالت زده می‌کنه. الان یه مدت هست که کتاب the year without pants یا «سال بدون شلوار»، که در مورد تجربه یکی از مدیران میانی شرکت اتوماتیک هست میخونم و دوست دارم اونرو معرفی کنم. این شرکت توسعه دهنده اصلی wordpress هست. اول از همه باید بگم که این کتاب خیلی خوب هست و خوندنش رو به همه اونهایی که دوست دارند بدونن حال و هوای دور کاری و توسعه محصول چطوریه پیشنهاد می‌کنم.

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

فعلا همین!

OpenWrt اولین برخورد!

اینم یه تجربه پراکنده!

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

در قدم اول باید بدونید که هر روتر وایرلسی سخت افزار خاص خودش رو داره و برخی از این روترها هستند که میشه روشون OpenWrt نصب کرد. پس اولین کاری که من انجام دادم این بود که بگردم و یه مدل روتر وایرلس ارزون پیدا کنم که رسیدم به TP-Link TL-701ND بود که قیمتش زیر ۸۰ هزار تومن هست و تست من رو میشه باهاش انجام داد. مدلهای دیگه هم هستن ولی همه از این مدل گرونتر هستن یا اصلا دیگه تولید نمیشن. نکته دیگه اینکه میشه اون رو روی روتربردهای Mikrotik و Raspberry Pi نصب کرد.

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

سومین مورد قابل توجه اینه که هنگام انتخاب مدل دستگاه به فضای محدود این دستگاه‌ها دقت کنید. یعنی فضای Flash دستگاه شما بسیار براتون حیاتی خواهد بود. یعنی روی این دستگاهی که من خریدم و ۴ مگ بیشتر Flash نداشت من فقط و فقط حدود ۶۴۰ کیلو بایت فضا خالی داشتم. هنگامی که میخواستم بسیاری از پکیج‌ها رو نصب کنم با مشکل جا مواجه میشدم. پیشنهاد اینه که دستگاه شما حداقل ۸ مگ Flash داشته باشه. اما اگه دستگاه USB داشته باشه میشه بخش‌های از سیستم عامل رو به اون منتقل کرد و پکیج‌ها روی یک حافظه خارجی نصب بشن. پس دقت کنید که دستگاه که میخرید یا بالای ۴ مگ Flash داشته باشه و یا از USB پشتیبانی کنه.

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

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

همین!

فیلدهای استاندارد iso 8583 قسمت دوم

اینم یه تجربه پراکنده دیگه

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

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

  • عددی (n): که شامل اعداد هست
  • حروف (a): شامل تمامی حروف و فاصله
  • کاراکترهای ویژه (s): تمامی کارکترهای ویژه
  • حرفی عددی (an)
  • عدد و کارکترهای ویژه (ns)
  • حروف و کارکترهای ویژه (as)
  • باینری (b)
  • اطلاعات شیار دوم و سوم کارت (z)

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

  • با طول ثابت
  • با طول یک رقمی LVAR
  • با طول دو رقمی LLVAR
  • با طول سه رقمی LLLVAR

حداکثر تعداد فیلدها هم ۶۴ یا ۱۲۸ فیلد هست که هر فیلد طبق استانداد معنی خاصی داره.

همچنین یک فیلد bitmap هم وجود داره که نشون میده‌ کدوم فیلد در پیغام وجود داره که بسته به فیلدهای موجود در پیغام ۸ یا ۱۶ بایت هست.

امیدوارم این پست کوتاه تونسته باشه یکم این استاندارد رو توضیح بده!

شاید اگر عمری بود بازهم در این مورد بنویسم

همین!

همه ایده‌های من: ایده زود بازده آموزش دادن!

اینم یه تجربه پراکنده دیگه!

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

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

چرا آموزش

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

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

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

مزایا و معایب آموزش دادن

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

معایب آموزش هم اینه که
* خیلی قابل توسعه نیست و شما بیشتر از ۸ ساعت در روز نمیتونی درس بدی
* بصورت فصلی میتونی روش حساب کنی و دائم نیست

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

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

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

چه چیزهایی رو آموزش خواهم داد

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

  • نحوه کار و استفاده از pfsense: چون از نظر من یه روتری هست که کل کارهای یه شرکت به نسبت بزرگ تقریبا ۲۰۰ نفره رو الان دارم باهاش انجام میدم و خیلی کم هزینه تر و بهتر از مشابه‌هاش عمل می‌کنه
  • به دیگران python یاد میدم: به نظر من python یه زبان بسیار ساده و خوبه که خیلی از کارها توش به سادگی و راحتی انجام میشه و ارزش داره که همه اونهایی که توی نرم‌افزار کار میکنن یه سری بهش بزنن.
  • دروپال یاد میدم: چون تقریبا یک سال و نیم ازش استفاده کردم و میدونم قابلیت‌هایی داره که به درد خیلی از آدمها میخوره. لازم به ذکر میدونم که بگم کلاس بار طراحی و وبش کمتر از دورپال خواهد بود چون من خیلی وب و front end بلد نیستم
  • به آدمها سی توی لینوکس یاد میدم: یکی از جاهایی که آدم واقعا عمق کامپیوتر رو درک میکنه وقتیه که داری با سی سرو کله میزنی

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

جمع بندی و نتیجه گیری

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

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

فعلا همین!