فنی

توسعه نرم افزار و فنی

معادله طراحی نرم افزار

در حال خواندن کتاب Code Simplicity هستم. بخشی از کتاب راجع به معادله طراحی نرم افزار است که به این شکل تعریف می شود که مطلوبیت نرم افزار برابر است با نسبت ارزشی که نرم افزار ایجاد می کند به هزینه ای که برای تولید آن صرف می شود. فرمول با اضافه کردن ارزش آتی …

برنامه نویس عملگرا

مقدمه کتاب برنامه نویس عملگرا (The Pragmatic Programmer) یکی از معروف ترین کتاب های دنیای برنامه نویسی است که بیست سال پیش در سال 1999 نوشته شده است. اخیرا ویرایش بیست سالگی این کتاب منتشر شده و نویسندگان کتاب به همین مناسبت مصاحبه های زیادی انجام داده و در پادکست های زیادی صحبت کرده اند. …

تست کد و نرم افزار

automation-testing

چند وقت پیش شنیدم که شهرداری برای تحویل پروژه های نرم افزاری از پیمانکارها از TFS استفاده می کند. یعنی به جای آن که DLL و نسخه اجرایی دریافت کند، آنچه که پیمانکار روی سرور TFS کامیت کرده را دریافت و خودش Build و در محل مورد نظر نصب می کند. اگر این موضوع واقعا …

چند تا امکان جدید برای به روز آوری

keep-in-touch

حدود یک ماه اخیر چند تا چیز جالب در موضوع برنامه نویسی و مهندسی نرم افزار پیدا کرده ام که ممکن است بقیه دوستان هم از دانستن راجع به آنها خوشحال شوند. پلتفرم انتشار محتوای DEV با آدرس dev.to که هنوز توسط هیچ کدام از طرفین فیلتر نشده است، اولین مورد این یافته ها است. …

Data Warehouse

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

اشتباه میلیونی

سوتی دادن در بحث IT و توسعه نرم افزار خیلی زیاد پیش می آید و دلیل آن هم این است که تاثیر تغییرات خیلی وسیع و سریع است. بیشتر برنامه نویس ها هم خاطراتی از این اشتباهات دارند، از پاک شدن اتفاقی فلان جدول دیتابیس عملیاتی مشتری تا مورد ارسال وسیع SMS از دل یک …

ارزیابی امنیتی افتا

چند وقتی است که یکی از مشتری ها، پول ما را نمی دهد چون محصول ما گواهی نامه امنیتی «افتا» ندارد. اما این افتا چیست؟ از کجا آمده و چطور می شود گواهی آن را گرفت؟مشکل سال قبل ما این بود که OWASP را تا سطح مورد نظر مشتری اجرا نکرده بودیم. همان وقت شروع …

آشنایی با Microsoft Power BI

چند سالی است که BI (Business Intelligence) ورد زبان ها شده و فضای رقابت را برای توسعه نرم افزارهای داده محور -مثل اکثر نرم افزارهای مالی اداری- تنگ کرده است. مشتری ها و مدیران برای توصیف عملکرد سیستمی که می خواهند، به کرات از واژه BI استفاده می کنند. مایکروسافت هم ابزار خودش را برای …

ابزار ارتباطی تیمی: تلگرام یا اسلک؟

می‌خواهیم برای ارتباط درون گروهی یک تیم توسعه نرم‌افزار یک ابزار ارتباطی مناسب انتخاب کنیم. قدیم تر ها از Yahoo Messenger استفاده می شد. بعضی تیم ها از Chatroom در TFS استفاده می کنند. خیلی‌ها هم از تلگرام استفاده می‌کنند در حالی که بعضی تیم ها هم از Slack استفاده می کنند. توی یکی دو …

تصمیم کبری: جانگو یا دات نت؟

اوایل ۲۰۱۵ بود که به طور جدی تصمیم گرفتم یک مقدار اوبونتو را امتحان کنم و به همان واسطه سعی کنم از دات نت به یک پلتفرم غیر مایکروسافتی مهاجرت کنم. با هر کدام از پلتفرم های رایج یک مقدار کار کردم تا دید بهتری پیدا کنم. اما هنوز بعد از دو سال و هشت …