نقشه راه معشوقه نرم افزار ( آپدیت )


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

به همین خاطر هم تصمیم گرفته ام که دیگر کمتر به مباحث حاشیه ای توجه کنم.سعی من بر این است که بیشتر از مباحث تخصصی بنویسم. 

 در این وبلاگ از تکنیک های برنامه نویسی خبری نیست. از این که یک برنامه را چگونه بنویسیم یا یک کد را چگونه به یک تابع وصل و پینه کنیم. چون همین وصله پینه کردن ها باعث این ویرانی ها شده است. 

ویرانی هایی که اکثر آنها از عدم توجه به ریشه و کُنه حاصل شده است. 

به همین علت هم سعی می کنم که مسائلی رو بررسی کنم که مشکلات بازار و صنعت نرم افزار رو شامل میشه. نه مشکلات سطحی. 

سبک نوشتن من هم خیلی خیلی خودمونیه. بیشتر سعی می کنم همین سبک رو داشته باشم.

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

این فهرست هر ماه بروز میشود و مطالب مرتبط با موضوعات ، در دسته های خودشان قرار میگیرند. 

۰ نظر
سعید فعله گری

انسان در جستجوی خویشتن : داستان یافتن خودم( معرفی کتاب ها)


 نکته :  این متن طولانی و بالغ بر 2700 کلمه است. ممکن است وقت گرانبهای شما را بگیرد. اما من توصیه می کنم که این متن را در زمانی بخوانید که دغدغه فکری و زمانی نداشته باشید.

پیش نوشت: مدتی است که خوانندگان وبلاگ به من ایمیل می زنند که چه شد و چگونه شد که راه خودت را پیدا کردی؟ چگونه توانستی بفهمی که چه از دنیا می خواهی؟ چطوری توانستی در این آشوب بازار مسیر خودت را پیدا کنی؟ 

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

۲ نظر
سعید فعله گری

مدیران فورچه سوار و کلاه قرمزی : حکایت ERP های ایرانی


نکته : این مطلب را به عنوان یک شوخی و طنز در نظر بگیرید. چون هیچ زیرساخت علمی و فرهنگی و شعوری را ندارد.

اولش با یک خاطره شروع می کنم.

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

اولش که اومد دنبالم ، ندونستم که ایشونه. چون اولش با یه پراید میومد دنبالم. اما الان با فورچه.بعد از کمی دور زدن، گفته که  که بیا بشین پشت فرمون ببین باهاش حال می کنی یا نه؟

استغفرالله. مگه میشه با ماشین هم حال کرد؟!!!

۰ نظر
سعید فعله گری

تابوی نرم افزاری از نوع چشم آبی


نکته : تمامی این نوشته بر اساس تجربه شخصی شخص نویسنده اش نوشته شده است.پس ممکن است مانند نوشته های هر انسانی مملو از خطا و لبریز از اشکال باشد.

مقدمه :

در صعنت کامپیوتر یا بهتر بگویم بازار نرم افزار ایران و دنیا نوعی بت پرستی از نوع چشم آبی اش وجود دارد.

حال تابو از نوع چشم آبی یعنی چه ؟

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

۰ نظر
سعید فعله گری

برنامه من تا 28 سالگی


بعد از دو هفته وقفه در کارهایم و پس از جستجو های فراوان و ملاقات با تعدادی از دوستانم که تازه از بلادهای مختلف به ایران برگشته بودند ، بلاخره امروز تصمیم گرفتم که برنامه ام را تا 28 سالگی تنظیم کنم.

از قسمت های شخصی این برنامه گذر می کنم.

قبل از این برنامه ریزی ، در سن 15 سالگی ام برنامه ریزی هایی را  تا سن 20 سالگی ام کرده بودم که اکثر آن ها به علت خام بودن خودم، شکست خوردند.

از رد شدن ویزایم تا ورشکستگی پدرم.

از گم شدن خودم بعد از کلی تلاش تا 18 ساعت کار روزانه در ونک تهران.

از فوت پدربزرگم یک روز قبل از آمدن  جواب کنکور 91  که آرزوی این را داشت که من مهندسی قبول شوم تا سرگردانی من برای ورود به دانشگاه.

اما امسال تمامی برنامه ریزی هایم را با مدیریت ریسک انجام داده ام. یعنی طوری برنامه ریزی کرده ام که اگر به هیچ کدام یک از هدف هایم نرسم، بازهم افسوس نمی خورم.

۲ نظر
سعید فعله گری

یکسال ویرانی ، نعمت های بی نظیر پلکان ها


ویرانی ها :

درست یکسال می گذرد از زمانی که عمل های پدرم ومادرم تمام شد و به خانه بازگشتم. 15 ماه پیش تصمیم گرفتم هر چه دارم و ندارم را بدهم تا بتوانم پدر و مادرم را سرپا ببینم و دوباره صدای خنده هایشان را بشنوم.

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

استعفای کار زیمنس. رد کردن اقامت آلمان. رد کردن دعوتنامه های دانشگاه های آمریکایی و چندین موقعیت شغلی.خالی شدن حساب بانکی ام.

از همه مهمتر ویرانی خودی که 18 سال زمان برایش صرف کرده بودم.

 

۴ نظر
سعید فعله گری

چرا نرم افزار؟ چرا دینامیک سیستم؟ (قسمت دوم)


نکته : تمامی این نوشته  و نوشته های این وبلاگ بر اساس تجربیات و نظرات شخصی من است.مثل همیشه پر از اشکال و ایراد.


اصلا سیستم یعنی چه ؟

در قسمت های دوم و سوم از  رادیو کد در این مورد به طور کل توضیح داده ام و لازم نمی دانم که بار دیگری به آن بپردازم.

حال چرا نرم افزار به عنوان یک سیستم دینامیک ؟

به زبان ساده در سیستم های دینامیکی دید چرخه ای وجود دارد. یعنی به همه پدیده ها در این علم دینامیک از منظر چرخه نگاه می شود.

حال این چرخه در نرم افزار یعنی چه ؟

بگذارید با یک سوال شروع کنم : آیا   وقتی اطلاعاتی را به سیستم اضافه یا کم می کنیم ، باعث نمی شود که سیستم تغییر حالت پیدا کند ؟

شرح با یک مثال خیلی خیلی ساده :

۰ نظر
سعید فعله گری

نرم افزار یک دینامیک سیستم پیچیده است؟ قسمت اول


نکته : تمامی این نوشته ها حاصل تجربه ها و برداشت های شخصی است. ممکن است مثل همیشه پر از ایراد و اشکال باشد و در آینده این حق را نیز دارم که این نوشته ها را به طور تمام و کمال رد کنم.


یک سوال همیشه پیش می آید اینست که چرا اکثر نرم افزارها شکست می خورند و تعداد نرم افزارهایی که از ابتدا بدون شکست به بقای خود ادامه می دهند، بسیار کم است ؟

به نظر من پاسخ اینست  کمتر به نرم افزار به عنوان یک  سیستم پیچیده دینامیکی نگاه می شود.

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

۰ نظر
سعید فعله گری

هرزه رانی تکنولوژی های جدید


نکته : این نوشته هم مانند تمام نوشته های دیگر من بر اساس تجربه و دیدگاه شخصی نوشته شده است. پس ممکن است پر از اشکال و خطا باشد.


چند وقت که نه چند سالی است که تکنولوژی های جدید بر سرزبان ها افتاده است. تا اونجایی که یادمه اولیش بیگ دیتا بود. بعدش دیپ لرنینگ بود. بعدش بیت کوین و الان شده بلاک چین.

هر کسی که از من در مورد اینها می پرسد ، فقط یک پاسخ به آنها می دهم. " به درد من و کسب و کار من نمی خورد."

من در کشوری دارم زندگی می کنم که فعلا در ساخت سیستم های نرم افزاری درست حسابی در زمینه سازمان و معماری های سازمانی ، لنگ می زند. 

فعلا در ایران کسی نتوانسته ERP درست و حسابی را راه اندازی کند. مرا چه به بلاک چین؟ 

۱ نظر
سعید فعله گری

تقلید کن ، اما گند نزن (2)


 نکته : تمامی این نوشته ، مانند تمامی نوشته های این وبلاگ بر اساس تجربه شخصی و سوادِ کمِ یک خر حاصل شده است.  


 در قسمت قبل کمی توضیح دادم که درست و حسابی تقلید کنیم. در این قسمت می خواهم در مورد ادعاها و گند هایی که منِ خرِ نوعی می توانم بزنم ، صبحت یا عر عر کنم. 

یک تفاوت اساسی  بین تست (TEST ) و دیباگ (DEBUG)  وجود دارد.  اگر آن را نمی دانید ، کلید های ترکیبی ALT +F4 را فشار دهید و دیگر به این سری نوشته ها سر نزنید.

۲ نظر
سعید فعله گری

تقلید کن ، اما درست و حسابی( قسمت اول )


نکته : مانند تمامی نوشته های این وبلاگ ، این متن هم بر اساس نظر و تجربه شخصی نوشته شده است. پس مثل همیشه پر از اشکال و ایراد است. 


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

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

اما کپی کردن ، یعنی منتقل کردن تمامی  هر آنچه که در دنیای خارج وجود دارد به دنیا تعریف شده خودمان. بدون کم و کاست. 

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

۰ نظر
سعید فعله گری

Ultra-large-scale systems (برای آتنا )


مقدمه : آتنای عزیز از من در مورد سیستم های نرم افزاری پیچیده و پیشرفته سوال کرده بود.

آتنای عزیز هر چقدر خواستم که خودم بنویسم ، دیدم قد و قواره ام اجازه نمی دهد. 

مبحث خیلی گنده تر از این حرف هاست.  اما لینک هایی را برایت مشخص کرده ام که می توانی با استفاده از آنها ، آشنایی نسبی پیدا کنی.

۱ نظر
سعید فعله گری

رادیو کُد : سیستم های نرم افزاری (قسمت دوم و سوم )


این بار نشستم و دو قسمت از رادیو کُد رو ضبط کردم. 

حقیقتش یک انگیزه می خواستم که یاور مشیرفر عزیز اون رو به من داد تا دو قسمت رو باهم ضبط کنم.

یاور عزیز توی این مطلب(+) یک کامنت طولانی برام نوشت. من هم بهش قول دادم که پاسخم رو با پادکست بدم. اون هم با توضیحات کامل.

خب سرتون رو به درد نیارم. بریم سراغ پادکست ها و سایر موضوعات مربوطه در ادامه.

۴ نظر
سعید فعله گری

اتفاقی عجیب در تمام عمر کاری من


چند وقت پیش جناب آقای Mike Cohn(+) که یکی از بزرگان دنیای طراحی نرم افزاره ، یک ایمیل دادن که یک وبینار روی برای دسترسی شما ، رایگان کردم. نمی دونم که فقط برای من رایگان بوده یا برای هر کسی ؟ 

وبینار دیشب بود و سرم من هم خیلی خیلی شلوغ و در حقیقت یادم رفت که این وبینار رو تماشا کنم. قبلش ثبت نام کرده بودم. نمیدونم این چند وقته چم شده که بعضی از چیزها یام میره. پیر شدم رفت.
شرکت Moutain Goat Software(+) یکی از بهترین شرکت های طراحی و معماری نرم افزار آمریکا و دنیاست. داستان از این قراره که حدود یک سال پیش ، برای این شرکت یه چندتایی مقاله و رزومه فرستادم. اونها هم قبول کردن و برام نوشتند که هر جوری شده خودت رو برسون به اینجا. منظورم آمریکاست. 
۶ نظر
سعید فعله گری

ای کاش لهجه نداشتم


این ویدئو را ببینید و نظر خودتان را بگویید و یا برایم بنویسید.

۹ نظر
سعید فعله گری

پس از 35 هزار صفحه کتاب


چند روز پیش توانستم که مطالب دور اول خودم را به اتمام برسانم. در ابتدای کار فکر می کردم که بتوانم شش ماهه این وظیفه را تمام کنم. 

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

در مدت 11 ماه توانستم که 35 هزار صفحه را مطالعه کنم. البته اگر صفحات اینترنت و وبلاگ های دوستان را حساب نکنم. در غیر اینصورت نمی دانم که آمار دقیق صفحات مطالعه من چقدر است ؟
۵ نظر
سعید فعله گری

چون نیروی متخصص این کار را نداریم؟ (2)


نکات :
1) برای اینکه بدانید موضوع بحث چیست ، لطفا قسمت قبلی را بخوانید. 

2) دیگر لازم نیست که برای چندمین بار بنویسم که این مطالب بر اساس تجربه شخصی هستند و امکان دارد که درست نباشد. پس این را به عنوان تجربه یک فرد بیسواد در نظر بگیرید. 

3) امروز یک تماس تلفی با حسن کشاورز(+) عزیز داشتم که به موضوعی در رابطه با وبلاگ من اشاره کرد که خیلی مفید بود. آن هم ساده نویسی مطالب بود. به همین دلیل ، از این به بعد مطالب من دراز و طویل خواهند شد و تفسیر ها و توضیحات مختلف را هم در میان نوشته هایم قرار می دهم. بیشتر سعی می کنم از جوانب متفاوتی به این مقوله نرم افزار نگاه کنم. از همین جا هم بابت مطالب تخصصی پیچیده  خودم عذر خواهی می کنم. الان که خودم آنها را دوباره خوانی می کنم ، به این مشکل پی می برم. از شما دوستان عزیز هم می خواهم که هر کجا برای شما عزیزان گنگ بود ، من را با از طریق کامنت باخبر نمایید. 

 در قسمت قبلی(+) به اینجا رسیدیم که مدیر با کارجویان مواجه می شود که به هیچ باره حاضر نیستند سیستم کسی دیگر را دستکاری کنند یا حتی نگاهی به سیستم بیاندازند. 
۲ نظر
سعید فعله گری

چون بزرگ فکر نمی کنیم ؟ (1)


نکات : 
1)  یک فصل جدید هم به نقشه راه معشوقه نرم افزار با عنوان نرم افزارهای بزرگ ، اضافه شد.  

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


چون بزرگ فکر نمی کنیم ؟ 
۲ نظر
سعید فعله گری

طراحیِ یک طراحی : معماری و طراحی نرم افزار


کتاب The Design of Design(+) ( طراحیِ یک طراحی ) ، نوشته Frederick Phillips "FredBrooks Jr (+) ، یکی از بهترین و جامع ترین کتاب های موجود در زمینه طراحی نرم افزار است . 



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

طراحی نرم افزار یکی از بهترین  و زیربنایی ترین شغل های مربوط به صنعت نرم افزار است. فیلد طراحی نرم افزار در اکثر مواقع با طراحی فتوشاپ و طراحی وب اشتباه گرفته می شود. 

در زمینه طراحی نرم افزار بیشتر به این می پردازیم که یک نرم افزار

۰ نظر
سعید فعله گری

مهندس نرم افزار : نیاز سنجی (3)


این مطلب رو میشه به عنوان یک مقدمه ای بر نیاز سنجی نرم افزار یا Software Requirements  در نظر گرفت. 

در مطلبی تحت عنوان مهندسی نیاز ها(+) ، یک کتاب رو برای این کار معرفی کردم.  اکثر گرفتاری ها و مشکلات نرم افزاری از Requirementها  منشاء میگیره. 

توی این مقاله(+)  هم به طور کلی شرح دادم که چه مشکلاتی کجا و چطور ، توسط نادیده گرفتن نیازسنجی ها  بروز می کنند. 

مطالب این قسمت خیلی خیلی زیاده و مشکلات اون هم به دسته ها و گروه های مختلفی ربط و وابستگی داره. به همین خاطر هم توی نقشه راه وبلاگ برای این قسمت یک فصل جداگانه قرار داده ام.

 خب بریم سر اصل مطلب . 

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

خب برای شروع از این کتاب شروع می کنم. کتاب (+)software Requirements  ویرایش سوم ، انتشارات مایکروسافت. نوشته کارل ویگرز و جوی بیتی. 


۰ نظر
سعید فعله گری