Minimální životaschopný produkt (MVP) je jedním z principů metodiky Lean Startup. Jejím cílem je pomoci podnikatelům co nejdříve zahájit proces učení. Produkt nemusí být nutně malý nebo nekvalitní; MVP je prostě nejrychlejší způsob, jak začít získávat zpětnou vazbu s využitím minimálního úsilí a zdrojů.
Při získávání zpětné vazby a učení se od zákazníků při každé iteraci je nutné přidávat nové funkce a rychle se přizpůsobovat změnám. Nástroj, který jsme si vybrali sestavit MVP má zásadní význam pro snížení množství odpadu.
Proč byste si měli vybrat Ruby on Rails?
Ruby na adrese Rails je dobře známý web aplikační rámec s více než 15letou historií a silnou komunitou.
Filozofie
Ruby on Rails se řídí filozofií, která umožňuje rychlý vývoj usnadňující triviální a opakující se úkoly. tým se zaměřuje především na obchodní výzvy.
● Otevřený zdrojový kód: Kód navržen tak, aby byl veřejně přístupný, kdokoli si může kód prohlédnout, upravit a šířit podle svého uvážení. Často je levnější, flexibilnější a má delší životnost, protože je vyvíjen komunitami, nikoli jedním autorem nebo společností.
● Princip nejmenšího překvapení: Inspirováno Ruby; při práci s Rails se vše chová jako vývojář očekává. Rails je navržen tak, aby poskytoval různé způsoby provádění stejných úkolů co nejintuitivnějším a nejelegantnějším způsobem.
● Neopakujte se: Zahrnuje, kdykoli je to možné, opětovné použití co největšího množství kódu namísto duplikování podobného kódu na více místech.
● Konvence nad konfigurací: Jedná se o rozšíření konceptu výchozího nastavení, tedy nastavení nebo hodnoty automaticky přiřazené bez zásahu uživatele. Některé softwarové systémy, zejména Java frameworky webových aplikací, potřebují více konfiguračních souborů, každý s mnoha nastaveními.
● Rails je názorově vyhraněný: Rails používá soubor zavedených konvencí. Pokud se členové týmu budou řídit konvencemi Rails, budou mít méně rozhodování a zjistí, že více potřebných věcí je již vytvořeno. Výhodou je rychlejší vývoj, lepší spolupráce a snadnější údržba.
● Rails je Omakase: Omakase je japonská fráze, která znamená "nechám to na vás". Tam, kde se Convention over Configuration zabývá tím, jak nejlépe využít jednotlivé frameworky, Omakase se zabývá tím, které frameworky a jak do sebe zapadají, čímž zabraňuje tomu, aby tým při výběru technologického stacku udělal špatná rozhodnutí.
● Hodnotové integrované systémy: Celý systém, který řeší celý problém. To znamená, že Rails se zabývá vším od front-endu až po back-end.
Společenství
Jazyk Ruby je jednoduchý, produktivní a elegantní a má zkušenou, podpůrnou a oddanou komunitu; umístil se v první desítce nejoblíbenějších jazyků v České republice. Žebříček programovacích jazyků RedMonk: leden 2021 V průběhu let komunita vytvořila spoustu zdrojů pro zlepšení výkonu, kvality a urychlení vývoje. Některé z těchto zdrojů jsou podporovány velkými společnostmi, jako jsou Shopify a GitHub.
Oblíbené zdroje:
● ActiveAdmin - administrační framework pro Rails,
● Devise - flexibilní autentizační engine pro Rails,
● Byebug - bohatý ladicí nástroj pro Ruby,
● Pundit - Minimální autorizace pomocí OO návrhu pro Ruby,
● RSpec - TDD a BDD framework pro Ruby,
● Pay - Platební engine pro Rails,
● Simplecov - Nástroj pro pokrytí kódu v jazyce Ruby,
● a Spree - E-commerce platforma pro Rails.
Vliv
Rails vznikl, aby změnil pohled na vývoj webových stránek popularizaci architektury MVC (Model-View-Controller), motorů, generátorů, preprocesorů a konvencí. Moderní mainstreamové frameworky převzaly filozofii a základní myšlenky, za kterými stojí, a protože se způsob vývoje Rails rozšířil mezi různé komunity, mnoho vývojářů ví, jak Rails funguje, i když tuto technologii nikdy nepoužili.
Oblíbení obdivovatelé a dědicové:
● Django - Python,
● Laravel - PHP,
● Phoenix - Elixír,
● ASP.NET MVC - C#,
● Yii Framework - PHP
● a Sails.js - Javascript.
Přítel MVP
Systém Rails je od základu vybaven sadou nástrojů, které urychlí vývoj vašeho MVP a sníží množství odpadu.
● Generátor: Při vývoji je často potřeba vytvořit modely, kontroléry a pohledy pomocí vzoru MVC. Rails to usnadňuje pomocí generátorů; díky bohatému seznamu generátorů tým ušetří čas generováním všech potřebných souborů a kódu pomocí nástroje příkazového řádku. A co víc, tým může vytvářet vlastní generátory pro urychlení opakujících se úloh.
● Motor: Malé aplikace, které poskytují specifické funkce a rozšiřují aplikaci Rails. Díky enginům může tým rychle zahájit vývoj aplikace a soustředit se na podnikání. Dobrými příklady enginů jsou Vymyslet (Ověřování), Spree (elektronický obchod) a Drcené (Fórum).
● Objektové relační mapování: Active Record poskytuje snadný, elegantní a intuitivní způsob práce s obchodními objekty a databázemi bez nutnosti psát přímo příkazy SQL. Jak je uvedeno v dokumentaci Rails, díky Active Record máme možnost
○ představují modely a jejich data,
○ představují asociace mezi těmito modely,
○ reprezentovat hierarchie dědičnosti prostřednictvím příbuzných modelů,
○ ověřit modely před jejich přenesením do systému.
databáze,
○ provádět databázové operace v objektově orientovaném prostředí.
móda.
Úspěšné příběhy
Airbnb stejně jako mnoho dalších startupů začínalo od nuly. Brian Chesky a Joe Gebbia neměli dostatek peněz na zaplacení nárůstu nájemného, ke kterému došlo v San Francisku. Protože San Francisco je město, kde se koná mnoho technologických konferencí, rozhodli se přidat do volného prostoru svého bytu nafukovací matraci a pronajmout ho se snídaní zdarma. Všimli si potenciálu tohoto nápadu a později se k týmu přidal Nathan Blecharczyk. S pouhými třemi členy a omezenými zdroji se rozhodli nastartovat svou projekt s MVP pomocí správného nástroje, Ruby on Rails. Kromě výzev jim Rails umožnil proměnit jejich nápady ve skutečnost a rozšířit jejich produkt mít přibližně 40 milionů uživatelů jen v US v roce 2021.

Mnoho dalších populárních firem oceňuje výhody systému Rails a to, jak jim pomohl v jejich začátcích, jako např. CEO z Shopify zmíněné.

Souhrn
Rails má co nabídnout každé společnosti a vývojářům, kteří vytvářejí MVP. Na adrese
přínosy filozofie, komunity a vlivu, které stojí za systémem Rails, lze shrnout následovně:
● rychlý vývoj,
● vysoká kvalita,
● škálovatelnost,
● zabezpečení,
● a strmá křivka učení.

Zdroje
● The Lean Startup - Eric Ries
● Co je open source? - redhat.com
● Učení Ruby on Rails - rubyonrails.org
● Žebříček programovacích jazyků RedMonk: leden 2021
● MVP Airbnb - fueled.com
● Počet uživatelů Airbnb - statista.com
Přečtěte si více
GraphQL Ruby. Jak je to s výkonem?
Kolejnice a další dopravní prostředky
Vývoj Rails pomocí TMUX, Vim, Fzf + Ripgrep