یاد و خاطره استیو جابز

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

پول ویندوز را بدهیم یا ندهیم؟

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

فردا پرداز

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

تغییر روش

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

کاهش تمرکز مهارتی و خلاقیت در کار شرکتی

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

اصرار بی‌فایده بر کیفیت کد

جالب است که تعداد قابل توجهی از برنامه‌نویس‌ها روی مواردی اصرار می‌کنند که در عین مفید بودن به حال شرکت یا تیم متبوعشان، به خود آنها چندان مربوط نیست. تعدادی از این موارد عبارت هستند از: ۱- کیفیت کد (خوانایی، انجام unit test و…)۲- بالا بودن امکان نگهداری کد برای افزایش قابلیت تغییر در آینده۳- …

عدم قدرت جذب فنی

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

تمرین تغییر مداوم و تست واحد

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

کاهش مشکلات خروج افراد از تیم

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

‫‫خلاقیت و طراحی/تولید محصول

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