روزمه، رزومه و رزومه

نخست تعریف رزومه یا آنگونه که در ویکی‌پدیای فارسی آمده کارنامک:

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

درآمد: مدتی است که چند دوستِ شرکت‌دار را در مصاحبه و گزینش نیرو  ( برنامه‌نویس، برنامه‌ساز و  مهندس نرم‌افزار) یاری می‌کنم. از دیگر سو چندباری هم چند دوست نادیده  رزومه‌ی خود را برای بررسی یا بازبینی برایم فرستاده‌اند.
چیزی که در این مدت برایم جالب بوده است، این بوده که بدبختانه بسیاری از دوستان به ویژه دوستان تازه‌کار یا دانشجو نمی‌دانند که چگونه رزومه بنویسند و نیز اهمیت بسیارِ آن‌را  هنوز به‌درستی درنیافته‌اند.
دقت کنید کسانی که نیرو بکار می‌گیرند تصمیم نخستین خود را  بر اساس رزومه می‌گیرند. (البته بسیاری همه تصمیم خود را)
رزومه‌نویسی ترفندهایی دارد که من وارد آن‌ها نیز نمی‌خواهم بشوم ولی انتظار دارم  رزومه‌ای که به دستم می‌رسد، دست‌کم دارای ساختار (ی نزدیک به استاندارد) باشد.

کوتاه سخن اینکه با اندک زمان و حوصله‌ای که داشتم یه نمونه قالب رزومه ساختم که دوستان می‌توانند آن را  از اینجا بارگیری کرده و  بکار بگیرند. دوستانی هم که از ورد مایکروسافت استفاده می‌کنند می‌توانند نسخه doc این نمونه رزومه را از اینجا بارگیری نمایند.
یادآوری: این قالب در اُپن آفیس ساخته شده است و نمی‌دانم که آیا در ورد مایکروسافت جواب می‌دهد یا خیر. دوستان لینوکس کار با آن آشنایی دارند، ولی اگر ویندوز کار هستید توصیه می‌کنم آنرا  از اینجا بارگیری کرده و از آن لذت ببرید.

گوشزد ۰: بسیار روشن است که این رزومه باید پرگردد، به بیان دیگر باید چیزی داشته باشید که رزومه را با آن پر کنید. اگر تازه دانش‌آموخته شده و یا هنوز دانشجو هستید و به این رسیده‌اید که مهارت‌ها و دانش‌تان اندک است پیشنهاد می‌کنم این دو دیگر نوشته را نیز به‌دقت بخوانید:

گوشزد ۱: روشن است که این یک نمونه است، پس خود می‌توانید بخش‌های را به آن افزوده یا از آن کم کنید.
گوشزد ۲: برای اینکه ببینید چه چیزهایی را خوب است در رزومه بنویسید یا داشته باشید، بهتر است این  نمودار جالب و طنزآلود را نیز ببینید.

پ.ن ۰: پیشنهادهای شما را برای بهبود این قالب نمونه صمیمانه پذیرا هستم.
پ.ن۱: ناصر حاجلو هم در نوشته « راهنمای نگارش رزومه برای برنامه نویسان» چند نکته را برای نوشتن رزومه یادآورد شده است که پیشنهاد می‌کنم آن را نیز بخوانید.

اگر می خواهید بار دیگر که  مطلبی نوشته شد، آگاه گردید. عضو خوراک (feed) این بلاگ شوید(فید چیست و نحوه استفاده از فید.) همچنین می توانید مرا در تویتر دنبال کنید. «فهرست همه نوشته‌ها»ی من را اینجا ببینید.

دسته بندی شده در: بازمتن, مدیریت و کارآفرینی, نرم افزار, کسب‌وکار نرم‌افزار,

تعریف رایانش ابری

درباره «رایانش ابری» یا آنچه گاهی ، به نادرست، «محاسبات ابری» نیز خوانده می‌شود، سخن زیاد گفته می‌شود. که البته همان‌گونه که درباره هر فناوری روز دیگری سخن گفته می‌شود چیزی طبیعی است.

اما در فارسی کمتر تعریف مناسبی از این فناوری دیده می‌شود. در ویکی پدیای فارسی  زیر درآیند(مدخل)  رایانش ابری نوشته است:

رایانش ابری (به انگلیسی: Cloud Computing ) به معنی توسعه و به‌کارگیری فناوری کامپیوتر بر مبنای اینترنت است. این عبارت شیوه‌هایی از محاسبات کامپیوتری در فضایی است که قابلیت‌ھای مرتبط با فناوری اطلاعات به عنوان سرویس یا خدمات برای کاربر عرضه می‌شود و به او امکان می‌دھد به سرویس‌ھای مبتنی بر فناوری در اینترنت دسترسی داشته باشد، بدون آن‌که اطلاعات تخصصی در مورد این فناوری‌ھا داشته باشد و یا بخواھد کنترل زیرساخت‌ھای فناوری که از آنھا پشتیبانی می‌کند را در دست بگیرد. سرویس‌های رایانش ابری برنامه‌های کاربردی را به صورت برخط فراهم می‌کنند که قابل دسترسی با مرورگر وب هستند درحالی‌که نرم‌افزار و داده روی سرورها ذخیره شده‌اند. (بازیابی شده در ۲۱ تیرماه)

همین. که این البته تعریفی کمینه است و شاید کافی نباشد. در اینترنت تعریف‌های مختلفی برای رایانش ابری وجود دارد ولی من یکی از بهترین‌های آن‌ها را تعریف «موسسه ملی استاندارد و فناوری» آمریکا (NIST) دیدم (اینجا)، که تلاش کرده‌ام نسخه ۱.۴ آن را به فارسی برگردانم:

گوشزد ۱: رایانش ابری هنوز مفهومی در حال رشد و پرورش است. تعریف، موارد کاربرد، فناوری‌های زیربنایی، مسایل و برتری‌های آن در بحث‌هایی داغ توسط بخش‌های خصوصی و عمومی بهبود داده خواهد شد. این تعریف‌ها، خاصیت‌ها و ویژگی‌ها به مرور زمان رشد و تغییر خواهد کرد.
گوشزد ۲: صنعت رایانش ابری اکوسیستمی بزرگ از بسیاری مدل‌ها، ارایه‌دهندگان و بازار را ارایه می‌کند. این تعریف تلاش می‌کند که تمام رویکرهای ابری مختلف را در بر بگیرد.

تعریف رایانش ابری:

رایانش ابری مدلی است برای داشتن دسترسی آسان و بنا‌به‌سفارشِ شبکه به مجموعه‌ای از منابع رایانشی پیکربندی‌پذیر (مثل: شبکه‌ها، سرورها، فضای ذخیره‌سازی، برنامه‌های کاربردی و سرویس‌ها) که بتوانند با کمترین کار ‌و زحمت یا نیاز به دخالت فراهم‌کننده سرویس به سرعت فراهم شده یا آزاد (رها) گردند. این مدل ابری از  در دسترس بودن پشتیبانی کرده و از پنج ویژگی اساسی، سه شکل ارایه و چهار شکل آماده‌سازی ترکیب یافته است.

ویژگی‌های اساسی:

سلف‌سرویس درخواستی (بنابه‌سفارش): مشتری می‌تواند یک‌سویه امکانات رایانشی همچون سرور و فضای ذخیره‌سازی در شبکه را همین‌که نیاز بود از هر فراهم‌کننده  به صورت‌خودکار و بدون نیاز به دخالت انسان بدست آورد.
دسترسی فراگیر شبکه: امکانات روی شبکه در دسترس هستند و می‌توان با سازوکارهایی استاندارد به آن‌ها دست یافت، سازوکارهایی که استفاده  شدن برای بسترهایی ناهمگون کلاینت‌های ضعیف و قوی (مثل: گوشی‌های موبایل، لپ‌تاپ‌ها و PDAها) را پشتیبانی می‌کنند.
یک‌کاسه‌سازی نابسته به مکانِ منابع: منابع رایانشیِ فراهم کننده یک‌کاسه شده‌اند تا با بکارگیری مدل چندمشتریه به همه مشتریان خدمت‌رسانی کنند، این کار بوسیله منابع فیزیکی یا مجازی مختلف که به شکلی پویا و بنابه‌درخواست مشتری واگذار و پس‌گرفته می‌شوند صورت می‌گیرد. مشتری معمولا کنترل یا دانشی درباره محل دقیق منابع فراهم شده ندارد ولی ممکن است در سطوح بالاتر انتزاعی بتواند محل را تعیین کند (مثل: کشور، استان یا مرکز داده). برای نمونه منابع شامل فضای ذخیره‌سازی، توان پردازشی، حافظه، پهنای باند شبکه و ماشین‌های مجازی می‌شود.
انعطاف‌پذیری سریع (درجا): می‌توان امکانات را  به سرعت و انعطاف‌پذیرانه بدست آورد تا به سرعت گسترش داده شده (از دید مقیاس) یا درجا آزاد شوند تا به سرعت به مقیاس کوچکتری دست یابند. از دید مشتری امکاناتی که برای بدست آمدن در دسترس هستند اغلب نامحدود به نظر می‌آیند و می‌توانند به هر مقدار و در هر زمان خریداری شوند.
سرویس‌های اندازه‌گیری شده: سیستم‌های ابری منابع را خودکار کنترل و بهینه می‌کنند، این کار با بکارگیری توانایی اندازه‌گیری در سطحی از تجرید که مناسب گونه‌ی آن سرویس(مثل: فضای ذخیره‌سازی، توان پردازشی، پهنای باند و شمارِ کاربران فعال) است انجام می‌شود. میزان استفاده از منابع می‌تواند به شکلی شفاف هم برای مشتری و هم برای فراهم‌کننده زیر نظر گرفته، کنترل شده و گزارش داده شود.

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

شکل‌های ارایه:

نرم‌افزار ابری به عنوان سرویس (SaaS). چیزی که برای مشتری فراهم شده است برنامه کاربردیِ فراهم کننده است که بر روی زیرساخت ابری، در حال اجراست و توسط  دستگاه‌های کلاینت‌ مختلف  از طریق یک رابط برای کلاینت ضعیف همچون مرورگر وب (مثل: ایمیل وبی) در دسترس است. مشتری زیرساخت ابری، شبکه، سرورها، سیستم‌های عامل، فضای ذخیره سازی زیرین یا حتا نرم‌افزار کاربردی را مدیریت یا کنترل نمی‌کند، البته به جز تنظیمات محدود پیکربندی‌های  برنامه در سطح کاربر.
بستر ابری به عنوان سرویس (PaaS). مشتری امکان دارد که برنامه‌کاربردی ساخته شده توسط خود را  بر روی  زیرساخت ابری قرار دهد. این برنامه  با استفاده از زبان‌های برنامه‌نویسی و ابزارهایی که توسط فراهم‌کننده پشتیبانی می‌شوند (مثل: جاوا، پایتون، دات‌نت) ساخته شده است. مشتری زیرساخت ابری، شبکه، سرورها یا  فضای ذخیره‌سازی زیرین را مدیریت یا کنترل نمی‌کند اما بر روی برنامه کاربردی قرارداده شده و احتمالا پیکربندی محیط میزبانی (هاست) برنامه کنترل دارد.
زیرساخت ابری به عنوان سرویس (IaaS). امکانی که برای مشتری فراهم آوری شده توان پردازشی، فضای ذخیرسازی، شبکه‌ها و دیگر منابع پایه‌ای رایانشی است به گونه‌ای که مشتری می‌تواند نرم‌افزار دلخواه خود که می‌تواند شامل سیستم‌های عامل و برنامه‌های کاربردی باشد را قرار داده و اجرا کند. مشتری زیرساخت ابری زیرین را مدیریت یا کنترل نمی‌کند ولی بر روی سیستم‌های عامل، فضای ذخیره‌سازی، برنامه‌های قرارداده شده و احتمالا گزینش اجزا شبکه‌بندی (مثل: دیواره‌های آتش، همسنگ(متعادل) کننده بار) کنترل دارد.

شکل‌های آماده‌سازی:

ابر خصوصی (Private cloud). زیرساخت ابری تنها برای یک سازمان کار می‌کند و ممکن است توسط خود سازمان یا شرکتی دیگر مدیریت شود، نیز  می‌تواند درون یا بیرون سازمان جای بگیرد.
ابر گروهی (Community cloud). زیرساخت ابری بین چند سازمان به اشتراک گذاشته شده و یک گروه مشخص که وظیفه‌ایی مشترک (مثل: ماموریت، نیازهای امنیتی، سیاست‌گذاری و ملاحضات قانونی) دارند را پشتیبانی می‌کند. این ابر می‌تواند توسط این سازمان‌ها یا یک شرکت دیگر مدیریت شود، همچنین می‌تواند درون یا بیرون سازمان جای بگیرد.
ابر عمومی (Public cloud). زیرساخت ابری برای عموم یا برای دسته بزرگی از مشتریان در دسترس است و مالک آن سازمانی است که این خدمات ابری را  می‌فروشد.
ابر آمیخته (Hybrid cloud). زیرساخت ابری آمیزه‌ای است از دو یا بیشتر ابر (خصوصی، گروهی یا عمومی) که هر کدام ویژگی‌های یکتای خود را نگه می‌دارند ولی بوسیله‌ی فناوری‌های‌ استاندارد شده یا انحصاری که داده‌ها و برنامه‌های کاربردی را جابجاپذیر (پرتابل) می‌کند به یکدیگر وصل شده‌اند.

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

پ.ن ۰: نسخه ۱۵ این تعریف بیرون آمده که تلاش خواهم کرد پس از ترجمه به‌صورت PDF و خواناتر در آورم.
پ.ن ۱: کسی می‌داند برگردان مناسب برای Utility Computing چیست؟ مفهوم را می‌دانم برابر خوب نمی‌یابم.
پ.ن۲: یک بنده خدایی بر اسای این تعریف و برای فهم بهتر چارتی طراحی کرده است (اینجا) که من با اجازه وی آن را به فارسی برگردانده‌ام:

چارت رایانش ابری

برای دیدن تصویر بزرگتر بر روی این تصویر کلیک کنید.

اگر می خواهید بار دیگر که  مطلبی نوشته شد، آگاه گردید. عضو خوراک (feed) این بلاگ شوید(فید چیست و نحوه استفاده از فید.) همچنین می توانید مرا در تویتر دنبال کنید. «فهرست همه نوشته‌ها»ی من را اینجا ببینید

دسته بندی شده در: linux, بازمتن, رایانش ابری, لینوکس, نرم افزار, وب

هیات مدیره شرکت نوپا، بخش دوم: ساختار

در نوشته پیشین درباره‌ی نقش هیات مدیره نوشتم، در این نوشته درباره ساختار و چگونگی آن می‌نویسم.
گوشزد: پیش از ادامه سخن نکته‌ای را یادآور می‌شوم و آن اینکه در دیگر جاها درباره گزینش مدیرعامل دو گونه رفتار می‌شود، در گونه نخست موسس یا یکی از موسسان مدیرعامل می‌شود، در گونه دوم هیات مدیره مدیرعاملی از بیرون شرکت می‌آورد. گونه دوم در اینجا جا افتاده نیست، چون هم چنین افرادی را کم داریم (درست‌تر: نداریم) که بیایند و مدیرعامل شرکت بشوند و نیز خود ما نمی‌توانیم بپذیریم کسی از بیرون شرکت بیاید و مدیریت شرکت «ما» را بر عهده بگیرد. شاید خود من هم هنوز آمادگی چنین کاری را نداشته باشم.

شمار:
شمار اعضای هیات‌مدیره می‌تواند ۳، ۵ یا ۷ نفر باشد. هیات مدیره بیش از ۷ نفر معمولا کارایی خود را از دست می‌دهد. از دید خود من ۵ مناسب‌تر است، حتا در تیم‌های برنامه‌نویسی هم معمولا ۵ عدد بهینه است.

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

چند نکته:

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

یک جلسه نمونه:
جلسه‌های هیات مدیره هدف‌های کاملا مشخصی دارند. یکی از مهمترین عناصر یک چنین نشستی این است که بخش‌هایی بسته در آغاز و پایان دارد که در آن اعضا با هم رک‌وراست ،و بی‌پروا سخن می‌گویند.

  • پیش‌درآمد(جلسه بسته، هیچ مدیر اجرایی جز مدیرعامل نباشد): مدیر عامل ارزیابی راست  و  دقیق از وضعیت شرکت و اینکه اکنون کجاست ارایه می‌دهد. آنگاه از اعضا می‌پرسد که آیا می‌خواهند در مورد چیزی بیشتر بدانند و مطمئن شوند. ۱۵ دقیقه.
  • بازبینی راهبرد: مدیر عامل یا یک مدیر اجرایی درباره یکی از راهبردهای اصلی شرکت مطلب ارایه می‌کند. ۶۰ دقیقه.
  • بازبینی عملکرد (کارکرد): مدیران اجرایی در  ارایه‌هایی کوتاه درباره هدف‌هایشان از جلسه پیشین تاکنون سخن می‌گویند، پیشرفت در رسیدن به آن هدف‌ها و هدف‌هایشان تا جلسه‌ی آینده. چهار جلسه ۱۵ دقیقه‌ای.
  • کسب‌وکار: اینجا جایی است که کارهای رسمی پایان یافته و معمولا به سهام، حساب‌ها، اسناد حقوقی و برنامه سود رسیدگی می‌شود. ۳۰دقیقه‌.
  • پایان جلسه (جلسه بسته، تنها اعضای خارجی حاضرند یعنی مدیر عامل هم نیست): رییس هیات مدیره جلسه را بدون مدیر عامل پیش می‌برد تا ببیند که اعضا جلسه را چگونه دیده‌اند و چه دغدغه‌هایی دارند که باید تا پیش از جلسه آینده به آن‌ها رسیدگی شود. خیلی مهم است که مدیر عامل در این جلسه حضور نداشته باشد، تا دیگر اعضا بتوانند به‌راحتی درباره دغدغه‌هایشان صحبت کنند. همینطور همین‌اندازه مهم است که پس از آن رییس با مدیرعامل این دغدغه‌ها را در میان بگذارد و با او درباره رسیدگی به آن‌ها بحث کند. ۱۵ دقیقه.
  • جمع ۳ ساعت.

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

اگر می خواهید بار دیگر که  مطلبی نوشته شد، آگاه گردید. عضو خوراک (feed) این بلاگ شوید(فید چیست و نحوه استفاده از فید.) همچنین می توانید مرا در تویتر دنبال کنید. «فهرست همه نوشته‌ها»ی من را اینجا ببینید.


دسته بندی شده در: Business, مدیریت و کارآفرینی, نرم افزار, نوپا, کسب‌وکار نرم‌افزار

هیات مدیره شرکت نوپا، بخش نخست: نقش

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

Keene, Christopher. How to build a board
Wilson, Fred. How To Build A Good Board

درآمد

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

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

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

هیات‌مدیره (Board of Directors) یکی از مهمترین ستون‌های هر شرکتی است، به ویژه شرکت‌های نوپا و می‌تواند نقش بسیار مهمی در اداره بهتر شرکت داشته باشد. اما نقش آن چیست و چگونه هیات مدیره‌ای کارا و اثربخش داشته باشیم:

نقش هیات مدیره

کار مدیرعامل خلق یک راهبرد (استراتژی) برای بیشینه کردن ارزش شرکت و مدیریت اجرای این راهبرد است.

کار هیات‌مدیره کمک به موفقیت مدیرعامل در خلق و اجرای راهبرد است.

هیات‌مدیره به سه روش این کار را انجام می‌دهد:

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

اگر می خواهید بار دیگر که  مطلبی نوشته شد، آگاه گردید. عضو خوراک (feed) این بلاگ شوید(فید چیست و نحوه استفاده از فید.) همچنین می توانید مرا در تویتر دنبال کنید. «فهرست همه نوشته‌ها»ی من را اینجا ببینید.

دسته بندی شده در: Business, مدیریت و کارآفرینی, نرم افزار, نوپا, کسب‌وکار نرم‌افزار

فناوری اطلاعات و بازار خراب‌کن‌ها

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

تعریف بازار خراب کن: در بازار به کسی که محصول/خدماتی را به قیمت (خیلی) پایین تر از روال بازار بفروشد بازار خراب کن می‌گویند. در فناوری اطلاعات افزون بر تعریف یاد شده گونه  دیگری از بازار خراب کن هم داریم.

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

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

از گونه نخست فراوان می‌توان دید و چیزی روزمره شده است. من نمی‌دانم این دوستان روی چه حسابی قیمت می‌دهند البته روشن است که اصلا روی حساب نیست. برای نمونه چندی پیش جایی پروژه‌ای به ما پیشنهاد کرد. پایه قیمت‌گذاری ما بر اساس نفر/ماهی است که برای انجام پروژه نیاز است. من نیز پروژه را به برنامه‌ساز ارشدمان دادم و وی پس از چند روز به من گفت که اجرای این پروژه فلان نفر/ماه زمان می‌خواهد. من بر اساس آن و اینکه چندی پیش پروژه‌ای مشابه انجام داده بودیم قیمت هشت میلیون تومان را به‌دست آوردم. دوباره پیشنهاد دهنده را دیدم پیش از آنکه چیزی بگویم گفت فلانی رقم یک‌ونیم میلیون تومان را پیشنهاد کرده! من نیز البته بدون اینکه مبلغ مورد نظر خودمان را بگویم با آرامش گفتم که به همان بدهید. که البته با توجه به تجربه می‌دانم او نمی‌تواند در این مدت، با این ویژگی‌ها و کارآمدی پروژه را  در زمان یاد شده دربیاورد. از سوی دیگر قیمت پایین دادن ذهنیت مشتری را هم خراب می‌کند وی گیج می‌شود و دیگر نمی‌تواند قیمت بالاتر را بپذیرد چون از نظر دهنی پذیرفته که این پروژه ارزش کمتری دارد. در این موارد راضی کردن مشتری کار حضرت فیل است و استدلال و منطق و صحبت درباره کیفیت و کارایی راه به جایی نمی‌برد.

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

صحبت از این دست زیاد است و حوصله کم. به همین بسنده می‌کنم.

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

پ.ن: من البته روی گونه دوم پافشاری بیشتری می‌کنم، چرا که ذهنیت‌ها را خراب می‌کند. بگذارید از اینجا آغاز کنیم. طرف تا به حال با CMS کار نکرده، می‌خواهد «برای یک اداره دولتی» سایت طراحی کند. خوب نتیجه مشخص است و پس از مدتی آنها می‌گویند اصلا سایت نمی‌خواهیم.

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

پ.ن ۲: بسیاری زمان‌ها «مشکل اصلی از مشتریان» نیست. بسیار پیش می‌آید که ما (صنف ما) مشتری را بد عادت می‌کنیم. بسیاری از مشتریان، به ویژه برای بار نخست، هیچ درکی از ارزش یک پروژه ندارند. مشکل دیگری که در فناوری اطلاعات وجود دارد ناملموس بودن کیفیت آن است. مشتری، اگر خود فناوری اطلاعات‌کار نباشد، نمی‌تواند درک درستی از کیفیت یک محصول در این زمینه بدست بیاورد و مجبور است به گفته‌های ماها اکتفا کند.

از دیگر سو بسیار پیش می‌آید که ما مشتری را گیج می‌کنیم. فرض مشتری برای کاری مشخص دو پیشنهاد دریافت می‌کند، یکی ۲۰۰ میلیون تومان و دیگری ۳۰ میلیون (اعداد از دو پیشنهاد واقعی برای یک پروژه برداشته شده) مشتری باید چه کار کند ؟ جالب اینکه اگر دولتی باشد مجبور است قانونا ۳۰ میلیونی را انتخاب کند.

اگر می خواهید بار دیگر که  مطلبی نوشته شد، آگاه گردید. عضو خوراک (feed) این بلاگ شوید. همچنین می توانید مرا در تویتر دنبال کنید. «فهرست همه نوشته‌ها»ی من را اینجا ببینید.

دسته بندی شده در: Business, marketing, بازاریابی, مدیریت و کارآفرینی, نرم افزار, نوپا, کسب‌وکار نرم‌افزار

پرسش‌های نابخردانه نپرسیم

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

۰- شما نام این نوشته را بخوانید «پرسش‌های احمقانه نپرسیم»

۱- پیشگفتار

اریک ریموند مقاله‌ای پرآوازه دارد به نام «چگونه هوشمندانه بپرسیم» (How To Ask Questions The Smart Way) بدبختانه این مقاله بسیار سودمند هنوز به فارسی برگردانده نشده است (به جز خلاصه‌ای بسیار کوتاه). چندی است که در دیدگاه‌های بلاگ‌ها (کامنت) و انجمن‌های اینترنتی (فروم‌ها) پرسش‌هایی می‌بینیم که نه تنها هوشمندانه نیستند، بلکه بسیار هم احمقانه هستند. نمونه این‌ها بسیار است و نمی‌دانم برای آن‌ها چه باید کرد.

بدبختی بزرگ‌تر اینکه – تا آنجا که به ما مربوط است و در فروم‌های کامپیوتری می‌بینیم- بسیاری از این پرسش‌ها را کامپیوتری‌ها (IT را هم بیفزایید) می‌پرسند که زمانی نشانه و نماد بودند برای به‌روز بودن، منطقی بودن و آگاه بودن. (گرچه این بلا گریبانگیر دیگر رشته‌ها نیز هست ولی ما به رشته‌های مرتبط خودمان کار داریم)

جدا از اینکه بسیاری از پرسش‌هایی که پرسیده می‌شود را می‌توان با اندک جستجویی در همان انجمن یا اینترنت بدست آورد، چندی از این پرسش‌ها بسیار نابخردانه هستند. در بخش پسین اندکی از این پرسش‌ها که نمونه خروار آن‌هاست را می‌آورم.

۲- درآمد: این چند سناریو را ببینید، این چند سناریوها از انجمن (فروم) های فارسی بدست آمده‌اند. فقط هرچه فکر می‌کنم یادم نمی‌آید یکمی را در کدام فروم دیده‌ام.

سناریو ۰ (الگو):

چگونه می‌توانم در مسابقه‌های اتومبیل‌رانی رالی شرکت کنم. البته من هنوز رانندگی بلد نیستم.

سناریو ۱:

فرد الف: میخواهم لینوکس سرور نصب کنم که کارهای y،x و z  را انجام دهد.

فرد ب در پاسخ: کارهای ۱و ۲ و ۳ را انجام می‌دهی سپس در ترمینال فلان چیز را می‌نویسی.

الف: ترمینال! ترمینال در لینوکس چیست و چگونه می‌توان به آن دسترسی پیدا کنم.

سناریو ۲:

الف: می‌خواهم در  C++ فلان کار را بکنم. «من خیلی C++ بلد نیستم.»

ب: «برای اعداد خیلی بزرگ باید از آرایه استفاده کنی و یه کلاس جدید برای کار با اون بنویسی …. »

الف: «میشه بیشتر توضیح بدید. من چیزی از کلاس نمی دونم . همین طور میشه بگید.»

سناریو ۳:

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

ب: «دوست عزیز در حال حاضر تقریبا هیج سایتی … نیست که بدون استفاده از سامانه‌های مدیریت محتوی (cms) پیاده‌سازی شده باشد. …»

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

سناریو ۴:

الف: خوشحالم که با شما آشنا شدم. من همه‌ی نوشته‌های بلاگ شما را بادقت خوانده‌ام. اما سوالی دارم. چگونه می‌توانم کار X را انجام دهم.

ب: نوشته‌ی Y من را با دقت بخوان.

الف: خوانده‌ام. اما جواب پرسش من در آن نیست.

ب: پاراگراف دوم خط سوم …

الف: آها. راست میگید. حالا چطور می‌تونم کار Z را انجام بدم.

ب: همان نوشته پاراگراف سوم.

الف: آها. یه سوال دیگه….

و این داستان ادامه دارد

————–

چیزی که برای من جالب است این است که بسیاری افرادی که پرسش‌های هوشمندانه ندارند این سه صفت را دارند. (به ویژه دوستان جوان‌تر و دانشجو)

  • کم صبر هستند
  • نوشته‌ها را بادقت، درست و کامل نمی‌خوانند
  • جستجو نمی‌کنند

با کمی کار روی این‌ها می‌توان پرسش‌های هوشمندانه‌تری پرسید. چیزی که نمی‌دانم این است این است که با افرادی که پرسش‌های احمقانه می‌پرسند چه باید کرد. به ویژه برای سناریوهای ۲،۱ و ۳٫

اگر می خواهید بار دیگر که  مطلبی نوشته شد، آگاه گردید. عضو خوراک (feed) این بلاگ شوید. همچنین می توانید مرا در تویتر دنبال کنید. «فهرست همه نوشته‌ها»ی من را اینجا ببینید.

دسته بندی شده در: بازمتن, خودنوشت, لینوکس, مقاله, نرم افزار, وب

راهنمای کوچک برنامه‌نویسی با codeblocks

۰- درآمد:

اگر شتاب دارید، می‌توانید از این بخش گذر کنید.

در «پندهایی به دانشجویان کامپیوتر: چشمان خود را باز کنید» و چندین جای دیگر بارها گفته‌ام که دانشجویان باید بسیار کُد/برنامه بنویسند. اگر پیگیر بلاگ من باشید می‌دانید که من برنامه‌نویس یا گیک نیستم و رویکردم بیشتر مدیریتی است. آنچه مرا بر آن داشته تا این نوشته را بنویسم مساله‌ای که تازگی بسیار می‌بینم؛ چندی پیش دانشجویی که در پایان ترم ۳ و درس برنامه‌سازی پیشرفته بود از من خواست تا به رسم همسایگی پروژه‌های پایان ترم این درس را برایش بنویسم، که البته ننوشتم. تلاش کردم تا این کار را با هم انجام دهیم. پس از آنکه- برای آموزش- برنامه‌ها را بر روی کاغذ نوشتیم، از او خواستم تا آنها را تایپ و اجرا کند. آنها را تایپ کرد ولی پس از آن چیزی گفت که برایم جالب بود: او تا آن روز حتا یک برنامه C/C++ را کامپایل/اجرا نکرده بود. به زودی دانستم که این مشکل بسیاری از دانشجویان است. جالب‌تر آنکه دانستم هنوز بسیاریTurbo C++ را برای این کار بکار می‌گیرند که البته بهتر است بگویم بکار نمی‌گیرند. ایرادی به این برنامه وارد نیست ولی دیگر زمان این برنامه گذشته است و محیطی دلچسب ندارد. ما هم زمان دانشجویی این برنامه را بکار می‌گرفتیم(ده-یازده سال پیش.) امروزه «محیط های یکپارچه برنامه‌سازی» (IDE) بسیار کاربر پسندتر به بازار آمده است. یکی از این محیط‌ها Code::Blocks است که زیبا، ساده، بازمتن و رایگان است. بسیاری از دانشجویان به بهانه محیط بد سراغ برنامه‌نویسی نمی‌روند. دوستانی برآنند که باید برنامه‌نویسی و کامپایل را،دست کم برای مدتی، از خط فرمان انجام داد. من همین همین عقیده را دارم اما برای عاشقان برنامه‌نویسی. امروز می‌گویم مهم لذت از  برنامه‌‌نویسی و ادامه آن است. اگر کسی لذت برنامه‌‌نویسی را حس کند، آنرا پی گرفته و در آن ژرف‌تر می‌شود. دلیل دیگری هم دارد: یکی از دغدغه‌های من به‌عنوان مدیر/مشاور، بکارگیری (استخدام) نیرو است و فکر می‌کنم بارها گفته‌ام که نیروی کاربلد بسیار کم است، این پست را نوشتم شاید تعداد بیشتری علاقه‌مند شده و سراغ برنامه‌نویسی روند.

۱- آغاز: بارگیری و نصب

اگر کاربر ویندوز هستید به اینجا بروید. برای ویندوز دو نسخه موجود است که بهتر است شما نسخه همراه با کامپایلر MinGW را بگیرید. حجم این نسخه حدود ۲۰ مگابایت است. پس از بارگیری بر روی آن کلیک کنید. اگر پیشتر کامپایلری روی سیستم شما نباشد، نیازی به هیچ تنظیمی نیست و برنامه به‌سادگی نصب می‌شود. پس از نصب می‌توانید برنامه را از منوی Start  اجرا کنید.

در لینوکس کار کمی آسان‌تر است. به طور کلی لینوکس بهشت برنامه‌نویسان است. بیشتر توزیع‌های لینوکس آن‌را در مخازن رسمی خود دارند. به‌راحتی می‌توانید برنامه را از مخازن نصب کنید. برای نمونه در اوبونتو کافی است در خط فرمان بنویسید:

sudo apt-get install build-essential codeblocks

یادتان باشد که کامپایلر را هم نصب کنید، که من این کار را با نصب build-essential انجام داده‌ام. در اوبونتو برنامه از نشانی زیر اجرا می‌شود.

۲- اجرا:

به

File -> New -> Projet…

بروید و  Console application را بزنید. در گام دیگر زبانتان را (C/C++) بگزینید. در گام دیگر به ترتیب نام پروژه، پوشه‌ای که می‌خواهید پروژه در آن ذخیره شده و نام فایل را بنویسید.(البته هنگام نوشتن نام پروژه، خودش نام فایل را می‌گزیند).

درگام دیگر نام کامپایلر را می‌خواهد که به‌صورت پیش فرض GNU GCC Compiler است، اگر نیست آن‌را انتخاب کنید. کار تمام است. پروژه ساخته می‌شود. زیر نام پروژه به زیر sources بروید و روی main.cpp کلیک نمایید. کد برنامه نمایش داده می‌شود. همانگونه که می بینید CodeBlocks خودش یک برنامه ساده برای شما نوشته است.

برای اجرای این برنامه کافی است دو کار انجام دهید. به منوی Build بروید و به ترتیب

Build ->Build

و سپس

Build->Run

را بزنید. یکمی برنامه را کامپایل می‌کند و دومی ،اگر در مرحله پیشین خطایی یافت نشود، برنامه را اجرا می‌کند. من متن را تغییر داده Build و Run را دوباره تکرار کردم. اینک می‌توانید  خروجی را ببینید.

حالا می‌توانید برنامه‌هایی را پیشتر نوشته‌اید یا در کتاب‌ها دیده‌اید را تایپ و اجرا کنید.

۳- بیشتر:

تا همین حد برای یادگیری و اجرای برنامه‌ها کافی است. هرچه با این محیط بیشتر کار کنید، بیشتر با آن آشنا شده و ویژگی‌های آن دستتان می‌آید. codeblocks ویژگی‌های بسیار بیشتری دارد که با خواندن راهنمای آن با آن‌ها آشنا می‌شوید. از برنامه نویسی با codeblocks لذت ببرید و تا آنجا که می‌توانید برنامه بنویسید.

تبریک می‌گویم اکنون دیگر برنامه‌نویس شدید، پس وقت آن است که این نوشته را بخوانید.

اگر می خواهید بار دیگر که  مطلبی نوشته شد، آگاه گردید. عضو خوراک (feed) این بلاگ شوید. همچنین می توانید مرا در تویتر دنبال کنید. «فهرست همه نوشته‌ها»ی من را اینجا ببینید.

دسته بندی شده در: بازمتن, نرم افزار

یک درس اجباری دیگر: کارآفرینی یا اقتصاد؟

نکته: می‌دانم همین حالا هم چندی می‌گویند درس‌ها زیادند و باید کم شوند، من در این باره هیچ دیدی ندارم و البته نمی‌خواهم صدای آنها را در بیاورم.

امروز صبح داشتم نوشته‌های یکی از ستون‌نویسان فوربس را می‌خواندم، وی پیش‌تر یادآور شده بود که گونه‌ای از فرار مغزها از رشته‌های فنی /مهندسی به رشته‌های مالی (اقتصاد/مدیریت) در حال شکل‌گیری است. اینک در نوشته‌ای او برآن است که درس «مبانی کارآفرینی» باید جزو درس‌های اجباری رشته‌های فنی/مهندسی شود. اما آنجا آمریکا است (گرچه وی از آنجا که در اصل هندی است، همیشه نیم‌نگاهی نیز به هند دارد).

من گونه دیگری می‌اندیشم، البته در اینکه «مبانی کارآفرینی»، درس مفیدی است هیچ‌گونه شکی ندارم. اما فکر می‌کنم اگر قرار است که تنها یک درس دیگر افزوده شود، بهتر است درس «مبانی اقتصاد» باشد. چون درسی است که به‌درد همه‌کس می‌خورد کما اینکه ما در ایران به شدت از نبود دید علمی اقتصادی در مردم رنج می‌بریم. افزودن چنین درسی افرون بر مفید بودن برای یک مهندس، اندک اندک دید اقتصادی جامعه را هم بالا می‌برد، چرا که درصد بسیار بالایی از دانشجویان ما اکنون دانشجوی رشته‌های فنی/مهندسی هستند. در «پندهایی به دانشجویان کامپیوتر»یادآور شدم که یکی از مهارت‌های بایسته برای یک دانشجوی کامپیوتر دانستن اقتصاد خرد است.

حالا که «مبانی اقتصاد» جزو درس‌ها نیست، چه کنیم؟

یک روش می‌تواند این باشد که با پیگیری و پشتکار فراوان به مدیران گروه بپذیرانیم که این درس را با استادی خوب، اقتصاد خوانده‌ و اقتصاد‌دان ارایه کنند. از آنجا که اقتصاد امروز بسیار بر پایه ریاضیات است، بهتر است که پیش‌نیاز این درس درسی‌هایی چون ریاضی ۲ و آمار و احتمالات باشند. هم‌اکنون بهترین کتاب برای این درس ویرایش پنجم Principles of Economics است که به فارسی ترجمه نشده است. این کتاب محبوب‌ترین نوشته اقتصاددان بسیار معروف و استاد دانشگاه هاروارد «گریگوری منکیو» است. خوشبختانه کتاب دیگری از این نویسنده که برای این درس نیز مناسب است به فارسی برگردانده شده، که بهترین گزینه‌ی فارسی موجود است:

  • مبانی علم اقتصاد، گریگوری منکیو، حمیدرضا ارباب، نشر نی.

این کتاب همچنین برای کسانی که می‌خواهند خودشان اقتصاد بخوانند، سودمند است. (درباره کتاب بیشتر بخوانید)

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

همچنین می‌توانید دوره یا کلاس‌های فشرده برای این درس بگذارید، برای نمونه  به‌شکل ۳ -۴ هفته، یک روز در هفته (اگر کار می‌کنید: پنجشنبه یا جمعه) و روزی ۸ ساعت.

اگر می خواهید بار دیگر که  مطلبی نوشته شد، آگاه گردید. عضو خوراک (feed) این بلاگ شوید. همچنین می توانید مرا در تویتر دنبال کنید. «فهرست همه نوشته‌ها»ی من را اینجا ببینید.

دسته بندی شده در: Business, مدیریت و کارآفرینی, نرم افزار, کتاب

سلام مهندس، روزت مبارک

یادم است آن زمان که دانشجو بودیم این بیماری تنها گریبانگیر دانشجویان پزشکی بود، اکنون می‌بینم که به دانشجویان مهندسی نیز سرایت کرده!
یادم است آن هنگام، تنها دانشجویان پزشکی بودند که از ترم‌های آغازین همدیگر را «خانم دکتر/آقای دکتر» صدا می‌کردند. این بیماری در دانشجویان مهندسی دیده نمی‌شد. درست بخاطر دارم – من کمی زودتر از دیگر دوستان نزدیکم درسم تمام شد- پس از آنکه درسم تمام شد،  تا مدت‌ها دوستان برای اذیت من واژه مهندس را به کار می‌بردند، یا تا چند سال، من و نزدیک‌ترین دوستانم که آنها نیز مهندسند برای ناسزا گفتن به هم واژه مهندس را بکار می‌بردیم. برای نمونه اگر از هم دل‌آزده می‌شدیم، می‌گفتیم «چطوری مهندس، خوبی مهندس!» و باور کنید چندین سال طول کشید تا به این واژه، پیش از نام خود خو بگیرم. اکنون به شکلی فراگیر و جاهایی که فکر می‌کنم نیاز است آن‌را پیش از نام خود بکار می‌برم و از بکار بردن این واژه ابایی ندارم، اما این گونه جمله‌ها  را تازگی بسیار می‌شنوم «مهندس، ریاضی ۲ را پاس کردی؟» یا «مهندس، برنامه‌سازی پیشرفته چند شدی؟»

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

اما براستی هرکسی «مهندسی» خواند،  مهندس می‌شود!؟
نگاهی به ویکی‌پدیا می‌اندازم (باور کنید هنوز دانشجویان/ مهندسان کامپیوتر بسیاری هستند که نمی‌دانند ویکی‌پدیا چیست) در ویکی‌پدیای فارسی آمده «مهندس کسی است که در یکی از رشته‌های مهندسی آموزش دیده‌باشد و یا به طور حرفه‌ای در آن رشته مشغول به کار باشد. مهندسان از فناوری، ریاضیات، و دانش برای حل مسائل کاربردی استفاده می‌کنند.»  من امروزه کمتر مهندسی را می‌بینم که بتواند مسایل را تحلیل و حل کند. راستش را بخواهید تقریبا قدرت تحلیل / آنالیز مساله دیده نمی‌شود. برگردیم به رشته خودمان، این نوشته خوب و بسیار گویا درباره مهارت‌های بایسته یک مهندس کامپیوتر را که از اینجا نقل آورده‌ام، بخوانید:

A computer engineer needs excellent problem solving skills, a good theoretical grounding in the fundamentals of engineering and the practical skills to put theory into practice. Computer engineers may design computer hardware, write computer programs, integrate the various subsystems together or do all three. Computer engineers need good management skills as they often get quickly promoted to project manager type positions. Furthermore, computer engineers need good people skills, as they have to sell their ideas to other engineers, other professionals and members of the public.

گاهی فکر می‌کنم هنوز برایم بسیار زود است که واژه مهندس را بکار برم. خوب است نگاهی به خودمان بیندازیم، کدامیک از این مهارت‌ها را داریم و چقدر!؟ همچنین تعریف‌های دیگری درباره مهندس نرم‌افزار را در ویکی‌پدیا و اینجا می‌توان دید، نیز فکر میکنم نوشته‌های ویکی‌پدیا درباره مهندسی نرم‌ افزار و تاریخچه مهندسی نرم افزار بسیار آگاهی بخش باشند.

اگر می خواهید بار دیگر که  مطلبی نوشته شد، آگاه گردید. عضو خوراک (feed) این بلاگ شوید. همچنین می توانید مرا در تویتر دنبال کنید.

دسته بندی شده در: خودنوشت, نرم افزار

راهنمای کوچک همکاری در پروژه‌های بازمتن

درآمد: حدود یک سال و چهارماه پیش «چرا دانشجویان ایرانی باید در پروژه های آزاد/بازمتن مشارکت کنند!؟» را نوشتم (نخست آن‌را بخوانید)، تا این که چند روز پیش یه این نوشته برخوردم، ترجمه نام اصلی نوشته «توصیه شغلی به مهندسان نرم‌افزار تازه فارغ‌التحصیل شده یا در شرف آن» (پارسی‌تر: پندهای کاری به مهندسان نرم‌افزار دانش‌آموخته یا در آستانه دانش‌آموختگی) است. اما چون سریع و گذرا همکاری در پروژه‌های بازمتن را نیز یادآور شده، این نام را برگزیدم.

نوشته اصلی:
به این مقاله در Slashdot برخوردم و مرا به یاد آن پندهایی انداخت که به چند تازه دانش‌آموخته که با آنها کارکردم، دادم. همیشه می‌بینم بزرگترین مساله‌ای که استخدام‌کننده‌ها با کسانی که مستقیم از دانشگاه آمده‌اند (یا می‌خواهند که کارشان را به برنامه‌نویسی تغییر دهند) دارند،  این است که آن‌ها دقیق نمی‌دانند در چه مهارت دارند. گرچه بیشتر وقت‌ها می‌توان بدست آورد که آیا آنها باهوش هستند یا خیر و این بخش مهمی از کار است، اما همیشه خوب است که چیزی ملموس برای بررسی در دست داشت، چیزی بیشتر از کَُد «Hello World»  از دوران دانشجویی.

خوشبختانه در دنیای امروز این چیز بوسیله دنیای بازمتن و کمی سخت‌کوشی دست‌یافتنی است. به سادگی یک پروژه بازمتن خوب، کمی نامدار که خوشتان بیاید، بیابید (خود من در پروژه‌های Solr و Mahout ،Lucene همکاری می‌کنم) و در آن همکاری (مشارکت) کنید. با چند بسته (Patch) کوچک و به‌خوبی تست‌شده آغاز کنید، حتا می‌تواند درست‌کردن خطای ساده (Bug Fix) یا تصحیح مستندات باشد. سپس، همینطور که پیشرفت کرده و دانش شما بیشتر می‌شود، در لیست‌های پستی به پرسش‌ها پاسخ دهید و در بسته‌های بزرگتری همکاری کنید. با انجام کارهایی (سطح پایین) که دیگران دوست ندارند انجام دهند با دیگرهمکاری کنندگان دوست شوید. دوستانه و مودبانه برخورد کنید و پاسخ پرسش تازه‌کاران را با ادب و احترام بدهید، همزمان هرچه می‌توانید کارهای سخت‌تر بردارید. این کار را برای دست‌کم شش ماه یا بیشتر انجام دهید، اینگونه مشخص می‌شود که می‌توانید به یک ایده بچسبید و به بار نشستن آن را می‌بینید.

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

در واقع اگر این کار را انجام دهید، در اندک زمانی یک همکاری کننده قوی (Committer) خواهید شد، شرکت‌ها به سراغ شما خواهند آمد و بدون توجه به سن و سابقه پیشین، به شما پیشنهاد کار می‌دهند.

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

اگر می خواهید بار دیگر که  مطلبی نوشته شد، آگاه گردید. عضو خوراک (feed) این بلاگ شوید. همچنین می توانید مرا در تویتر دنبال کنید. «فهرست همه نوشته‌ها»ی من را اینجا ببینید.

دسته بندی شده در: بازمتن, لینوکس, نرم افزار