Gauge yourself as a leader

An effective leader is someone who empowers followers to make visions into reality. Leading is a responsibility, and the effectiveness of this responsibility is reflected in the attitude of those being led. These attitudes consist of four dimensions which make up empowerment. I’ve extracted a few key points from one of my favourite books ‘Leaders – by Warren G Bennis…

Continue Reading

کاربرد رنگ در طراحی برنامک‌‌ها (اپلیکیشن‌ها)

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

Continue Reading

بررسی تجربه‌ی کاربری برنامه «آخرین خبر»

جلسه بررسی تجربه کاربری تاد tod آخرین خبر

تجربه‌ی کاربری اسمی هست که این روزها در دنیای شرکت های تکنولوژی و به خصوص نرم افزاری زیاد میشنویم. تجربه‌ی کاربری (یا همان User Experience) شامل تمامی رفتارها، احساسات و بازخوردهاییست که یک کاربر هنگام مواجه شدن با نرم افزار یا ابزار برایش ایجاد میشود. ما هنوز صنعت نرم افزارهای موبایل را در ایران بسیار نوپا میدانیم و معتقدیم کیفیت…

Continue Reading

معماری قابل گسترش برای سرورهای وب

Scalable WebServer Architecture

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

Continue Reading

شرایط رقابتی و قفل بین‌پروسه‌ای در PHP

[این مقاله در سطح «پیشرفته» و نیازمند آشنایی خواننده با زبان PHP و نرم‌افزار Redis و مفاهیم «شرایط رقابتی» و «Shared Object» است.] کنترل دسترسی چند پروسه به منابع مشترک یا shared object ها از مسائلی است که روزانه در زندگی واقعی برنامه‌نویسان رخ می‌دهد. مدیریت این گونه از مسائل اهمیت بسیار زیادی در پیاده‌سازی نرم‌افزارها و سرویس‌های توزیع‌شده دارد. پیامد مدیریت…

Continue Reading

چطور یک Thread Pool بسازیم!

[این مقاله در سطح «متوسط» و نیازمند آشنایی خواننده با مفهوم «پردازش موازی» و زبان برنامه‌سازی «++C» است.] در پیاده‌سازی سرویس‌دهنده‌ها موارد بسیاری وجود دارد که در آن نیازمند پردازش درخواست‌های کوچک اما متعدد هستیم. برای درک بهتر مسأله یک شعبه‌ی بانک یا یک باجه‌ی فروش بلیت را در نظر بگیرید. در مثال شعبه‌ی بانک، تعداد مراجعان در طول یک روز غالباً…

Continue Reading

۹ دروغی که برنامه‌نویسان معمولاً به خودشان می‌گویند

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

Continue Reading

اسکرام به زبان ساده

اسکرام

اسکرام چی هست و  به چه درد ما می خوره؟ خب! مثل تمام مستند‌های ایرانی همون اول میریم سراغ معنی لغوی اسکرام (Scrum): معنی لغوی نداره و خیالتون راحت، اما اصطلاحاً شروع دوباره تو بازی راگبی رو اسکرام میگن؛ یعنی هر وقت به هر دلیلی، مثل خطا یا بیرون افتادن توپ بازی متوقف بشه، با اسکرام بازی شروع میشه. شاید دیده…

Continue Reading

میزبانی از رمزعبور

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

Continue Reading

همه‌چیز درباره‌ی وب‌سرویس‌های REST – بخش اول، چرا و چطور

haxonite.deviantart.com

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

Continue Reading