چند سال پیش، این وبسایت راهاندازی شد تا محلی برای افرادی باشد که در پی یادگیری زبان برنامهنویسی روبی هستند. متاسفانه، از آنجایی که در دنیای امروز، روبی تقریبا جایگاه خود برای توسعه نرمافزارهای پردازش متن را از دست داده و بیشتر به عنوان زبانی برای توسعه وب و همچنین مدیریت سیستم شناخته میشود، استقبال خوبی از این وبسایت نشد چرا که تمرکزی روی توسعه وب با روبی نداشتیم و همچنین به ابزارهایی مانند chef که برای مدیریت سیستم به کار میروند، نپرداختیم.
پس از مدت نسبتا طولانی، حالا قرار است این وبسایت محلی باشد برای این که افراد بتوانند کارکرد روبی در راهاندازی یک کسب و کار اینترنتی را فرا بگیرند. در سلسله مطالب جدید وبسایت، قرار است که جوانب مختلف یک کسب و کار اینترنتی را بررسی کرده و سپس شروع به توسعه وبسایت آن با روبی آن ریلز کنیم.
چرا روبی آن ریلز؟
روبی آن ریلز (به انگلیسی: Ruby On Rails) که به اختصار به آن ریلز هم گفته میشود (و جهت اطلاعات بیشتر میتوانید به وبسایت آن مراجعه کنید) یک چارچوب (framework) برای توسعه نرمافزارهای مبتنی بر وب با زبان روبی است که در سال ۲۰۰۵ توسط شخص «دیوید هاینمایر هنسون» (به انگلیسی: David Heinmier Hansson) که به نام DHH نیز شناخته میشود، در حاشیه ایجاد کمپانی Basecamp ارائه شد.
در واقع شخص DHH به هنگامی که در حال کار بر روی بیسکمپ بود، چارچوبی که بیسکمپ را به یک نرمافزار قابل اجرا در محیط وب تبدیل میکرد را به صورت جداگانه و به صورت آزاد و متنباز (با مجوز MIT) به جهان عرضه کرد. این چارچوب در واقع معماری MVC را به جهان معرفی میکرد (که در این مطلب میتوانید پیرامون آن بخوانید و در این مطلب نیز با مزایا و معایب آن آشنا شوید.) و همین امر باعث شد افراد زیادی، ترجیح دهند که کسب و کارها و نرمافزارهای اینترنتی خود را مبتنی بر ریلز ارائه کنند.
در سال ۲۰۰۶ نخستین نسخههای شبکه اجتماعی توییتر و پس از آن وبسایتهایی چون گیتهاب و کسب و کارهایی چون Shopify و AirBnB نیز به استفاده از این چارچوب روی آوردند و هجوم جامعه استارتاپی سیلیکون ولی به ریلز به عنوان چارچوبی برای توسعه، توسعهدهندگان دیگری مانند تایلر اوتول (سازنده فرمورک لاراول) را برانگیخت تا مفاهیم MVC را در زبانهای دیگر نیز پیادهسازی کنند.
از آنجایی که این وبسایت نیز با هدف گردهمایی توسعهدهندگان روبی ایجاد شده است، تصمیم شد تا فرایند توسعه کسب و کار اینترنتی با استفاده از این فرمورک بررسی شود.
پروسه سلسله مقالات «روبی آن ریلز برای کسب و کار»
در این سلسله مقالات، ما پروسه ایجاد یک کسب و کار را بررسی خواهیم کرد. البته توجه داشته باشید که این موضوع اصلا و ابدا به این معنا نیست که قرار است آموزشها، رنگ و بوی استارتاپی داشته باشد. ما در این سلسله مقالات، فرض را بر آشنایی پیشین شما با کسب و کارهای اینترنتی و استارتاپها گذاشتهایم و صرفا قرار است که در این مقالات، شما را با نحوه پیادهسازی آشنا کنیم.
برای این مقالات، بخشهای مختلفی در نظر گرفته شده است که در ادامه با آنها آشنا میشویم:
استارتاپ در هفت روز
استارتاپ در هفت روز، نام کتابی است به قلم دن نوریس که در آن، داستان ایجاد کسب و کار خود در هفت روز را توضیح میدهد. البته ما قرار نیست در هفت روز همهچیز را به نتیجه برسانیم، اما قرار است از آموزشهای این کتاب بهره لازم و کافی را به جهت ایجاد یک کسب و کار اینترنتی ببریم.
در این کتاب، تقریبا تمامی مفاهیم مرتبط با استارتاپ به خلاصهترین شکل ممکن توضیح داده شده است. به همین خاطر، این کتاب به عنوان الگوی این سلسله مقالات انتخاب شد. اگرچه توصیه شخصی نگارنده این است که اگر آشنایی لازم و کافی با استارتاپها را ندارید، بهتر از است از کتابهایی مانند Lean Startup (نوپای ناب) آغاز کنید و سپس به سراغ کتابهای آموزش سریع بروید.
پیادهسازی محصول کمینه ارزشمند (MVP) با MVC در ریلز
پس از آن که یاد گرفتیم که چطور میتوانیم کسب و کار خود را راهاندازی کنیم و طرحی برای کسب و کار خود آماده کردیم، لازم است تا پیادهسازی MVP خود را آغاز کنیم. در ابتدا قرار است که MVC را بررسی کنیم و یک MVP بسیار ساده با آن ایجاد کنیم. این مرحله، صرفا برای آشنایی ما با روبی آن ریلز خواهد بود.
پیادهسازی محصول کمینه ارزشمند با REST
در دنیای امروز عمده وبسایتها و سرویسهای اینترنتی، از معماری REST استفاده میکنند. ما پس از آن که به قدر کافی با ریلز آشنا شدیم، به این معماری مهاجرت میکنیم تا محصول خود را به استانداردهای بازار شبیهتر کنیم. البته باید توجه کنید که پس از این که MVP خود را با معماری REST پیادهسازی کنیم، نیاز خواهیم داشت تا بخش front-end آن را نیز طراحی کنیم.
پیادهسازی front-end
در این بخش، قرار است که یاد بگیریم چطور میتوانیم یک front-end زیبا برای وبسایت خود طراحی کنیم. در بسیاری از آموزشها از چارچوبها و کتابخانههایی چون next, nuxt, react یا vue استفاده میشود، اما به احتمال بسیار زیاد، ما از Svelte استفاده خواهیم کرد. یکی از دلایل انتخاب Svelte نیز سادگی فراگیری آن است.
استقرار MVP روی سرور و ارائه آن به جهان بیرون
در نهایت، پس از پیادهسازی MVP و تست کردن آن روی سیستم محلی (Local) نوبتی هم باشد، نوبت انجام مراحل Dev Ops یا استقرار و توسعه عملیات است (چنانچه با DevOps آشنایی ندارید توصیه میشود این مطلب را مطالعه کنید). پس از آن که back-end و front-end را ساختیم، آنها رو روی یک یا چند سرور قرار داده، دامنهای برایشان انتخاب میکنیم و سپس دامنه را به سرور خود متصل کرده، پیکربندیهای وبسرور را انجام میدهیم و به این شکل، یک کسب و کار اینترنتی داریم.
سخن آخر
این سلسله مقالات گرچه ممکن است بخش خوبی از ایجاد و برپاسازی یک کسب و کار اینترنتی را برای شما روشن کند، اما همه مسیر نخواهد بود. توصیه شخصی نگارنده، این است که پس از خواندن هر قسمت، خودتان نیز مفاهیم و اصطلاحاتی که در مقالات مطرح میشوند را جست و جو و بررسی کنید و دانش خود را پیرامون کسب و کارهای اینترنتی محک بزنید.
همچنین، امید است که نوشتن این سلسله مقالات، باعث شود افراد بیشتری برای خود شغل ایجاد کنند و در شرایط اقتصادی فعلی، بتوانند با استفاده از دانش، هنر و محصولات خود؛ کسب درآمد کنند.
موفق باشید.