لذت یادگیری: استارت آپ بعد از start up engineering

اینم یه تجربه پراکنده دیگه

گفته بودم که در مورد درسهایی که در coursera  میبینم و نه میگذرونم یکم مینویسم. دلیل اینکه میگم میبینم اینه که واقعا من در جریان درس نیستم و تنها فیلم‌ها رو میبینم و اسلایدها و فایل‌های مرتبط رو یه نگاهی میندازم.

یکی از جذاب ترین درس‌هایی که گذرونم start up engineering‌ هست. این درس کلا به این اختصاص داره که اگه خواستید یه کسب و کار جدید راه‌بندازید آیا اصلا به اون میشه گفت استارت آپ یا نه؟ و اگه میشه بهتره چه روندی رو برای برپا کردنش از نقطه نظر تکنولوژی طی کنید.

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

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

نکته مهم دیگه‌ی این درس اینه که تا حدی هم در مورد تکنولوژی‌های مورد استفاده به شما راهنمایی میده یعنی پیشنهاد میکنه مثلا برای واسط کاربری از bootstrap استفاده کنید یا برای سمت سروی از Node.js استفاده کنید که حداقل من رو با تکنولوژی‌های بسیار خوبی آشنا کرد که احتمالا در آینده از اون‌ها استفاده خواهم کرد.

یه بخش دیگه از درس هم اختصاص داره به اینکه از نظر مدیریتی و کسب و کار شما بایستی چطوری یه کسب کار رو راه‌اندازی و مدیریت کنید. و اینکه از نظر تئوری استارت‌آپ یعنی چی. نکته‌ای هم که از این بخش تو ذهنم مونده که به نظرم مهمتر هم هست اینه که شما بایستی برای اینکه یه استارت‌آپ راه بندازیند بایستی یه آدم همه کاره باشید یعنی بتونید خودتون به عنوان مدیر استارت‌آپ باحفظ سمت نظافت‌چی، بازاریاب و برنامه‌نویس شرکت خودتون هم باشید.

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

فعلا همین!

شنا در سطح یا غواصی در اعماق: نیاز به دانایی در بازار نرم افزار ایران

خب اینم یه تجربه پراکنده دیگه

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

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

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

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

همین!

لذت برنامه نویسی یا برنامه نویسی بر بال ابرها با openshift

اینم یه تجربه پراکنده دیگه!

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

سرویس openshift که توسط غول دنیای متن باز redhat تاسیس شده و اتفاقا یه سرویس اولیه مجانی هم داره سعی میکنه بستر برنامه نویسی مورد نیاز رو در اختیار برنامه نویسان قرار بده و بعدش برنامه نویسی بتونن با استفاده از git نرم افزارهاشون بدون نگرانی در مورد بستری که قرار این نرم افزار رو اجرا کنه مورد آزمایش و تست قرار بدن.

اتفاقا پلتفرمهای پشتیباین شده تقریبا کامل هستند node.js، j2ee، python، django، perl، ruby، ruby on rails رو پشتیبانی میکنه و پایگاه داده‌هایی هم که داره  mySql، postgreSql و monogoDB هست. که تقریبا ۹۰ درصد نیازهای یک برنامه نویس رو پشتیبانی میکنه. اتفاقا چون از git هم برای نصب و راه‌اندازی  هر برنامه استفاده میشه نسخه‌های قبلی اون هم  نگه داشته میشه و این خودش بسیار خوبه.

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

البته باید بگم که سیستم های دیگه ای مثل heroku هم برای اینکار وجود داره اما من این openshift بیشتر خوشم و اگه بازم عمری بود در مورد سیستم‌های مشابه یکم می‌نویسم.

شراب طهور یا لذت یادگیری با coursera

اینم یه تجربه پراکنده دیگه!

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

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

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

همین!