عمومی ۱۳ اردیبهشت ۱۴۰۱
روز معلم

روز معلم را به همه‌ی معلمان و استادان عزیزم و همه‌ی بزرگوارانی که برای من معلم بودند تبریک عرض می‌کنم و صمیمانه از آنها برای تک‌تک نکاتی که به من آموختند قدردانی می‌کنم. امیدوارم که شاگرد خوبی برای آموزه‌های شما بوده باشم. «می‌توانید اسم یک پرنده را در تمام زبانهای دنیا یادبگیرید اما وقتی این […]

چابک Agile ۱۰ اردیبهشت ۱۴۰۱
گربه کد من را خورد (۳)

قسمت اول را اینجا و قسمت دوم را اینجا بخوانید. به جای بهانه، گزینه‌ها و راه‌کارهای جدیدی پیشنهاد کنید. نگویید که این کار شدنی نیست؛ توضیح دهید که چه کاری می‌توان برای نجات از شرایط کنونی انجام داد. آیا بهتر است کد را حذف کنیم (delete)؟ اگر به این نتیجه رسیدید،‌ این موضوع را با […]

چابک Agile ۶ اردیبهشت ۱۴۰۱
گربه کد من را خورد (۲)

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

خاطرات ۲ اردیبهشت ۱۴۰۱
بهار دانشگاه

و برف می‌بارد در بهار آن هم چه برفی ۲ اردیبهشت ۱۴۰۲ ۲۲ اپریل ۲۰۲۲

چابک Agile ۲ اردیبهشت ۱۴۰۱
گربه کد من را خورد (۱)

یکی از پایه‌های فلسفه عمل‌گرایی این است که مسئولیت اقدامات خود را در مورد پیشرفت شغلی، یادگیری و آموزش، پروژه و کار روزانه‌ بپذیرید. برنامه‌نویسان عملگرا (Pragmatic Programmers) مسئولیت حرفه‌ای خود را می‌پذیرند و از اعتراف به ناآگاهی یا اشتباه هراسی ندارند. بی‌شک این خوشایندترین جنبه برنامه‌نویسی نیست، اما شک نداشته باشید که اتفاقی است […]

مهندسی نرم‌افزار ۲۹ فروردین ۱۴۰۱
برنامه ۱۲ عاملی (۳)- عامل دوم: وابستگی‌ها

عامل ۲: وابستگی ها (Dependencies) وابستگی ها را به صورت شفاف و صریح بیان کنید و آن ها را ایزوله کنید (Explicitly declare and isolate dependencies) اکثر زبان‌های برنامه‌نویسی دارای سیستم بسته‌بندی (packaging system) یا مدیریت بسته‌ها (package manager) برای توزیع و پخش کتابخانه‌ها هستند، مانند npm برای جاوا اسکریپت، pip برای پایتون و NuGet […]

مهندسی نرم‌افزار ۲۴ فروردین ۱۴۰۱
برنامه ۱۲ عاملی (۲)- عامل اول: پایگاه کد

عامل ۱:‌ پایگاه کد (code base) برای کنترل نسخه‌های کد یک برنامه، فقط و فقط یک پایگاه کد (کد بیس) وجود دارد، ولی در عین حال می‌تواند نسخه‌های استقراریافته (deploy) متعددی از آن وجود داشته باشد. یک برنامه‌ی دوازده عاملی همیشه به کمک سیستم‌های کنترل نسخه (version control) مانند Git، Mercurial یا Subversion کنترل و […]