Wybór technologii, która wesprze startup jest z jedną z kluczowych decyzji, jaką będzie dane Tobie podjąć. Dobrze dobrane rozwiązanie IT może zapewnić szybkość działania, skalowalność, możliwość szybkiej modernizacji oraz reagowania na potrzeby i zachowania klientów.

Zdjęcie główne artykułu pochodzi z pl.depositphotos.com

Zły wybór może za to położyć kres młodemu biznesowi. W tym artykule przedstawię 11 technologii, które powinieneś rozważyć, zanim zlecisz stworzenie swojej aplikacji webowej czy serwisu www.

Ustal zapotrzebowanie swojego startupu i jego klientów

Każdy twórca startupu powinien doskonale znać potrzeby swoich użytkowników i wymagania, które musi spełniać, aby osiągnąć sukces. Przykładowe kryteria oceny technologii:

1. Stabilność to obowiązkowy punkt. Problemy ze stabilnością przełożą się na straty finansowe.

2. Szybkość działania, istotna szczególnie przy dużej liczbie użytkowników.

3. Bezpieczeństwo ważnych danych powierzanych Wam przez użytkowników.

4. Skalowalność - możliwość i szybkość rozszerzania serwisu na m.in. nowe branże czy grupy klientów.

5. Rozwojowość - szybkość i łatwość wdrażania nowych rozwiązań zgodnie z potrzebami klientów i wyzwaniami konkurencji.

6. Popularność - wielkość społeczności zebranej wokół technologii wpływa na ułatwienie realizacji i utrzymania serwisu, a także pozyskanie deweloperów.

7. Szybkość realizacji - zależy m.in. od ilości i zakresu gotowych rozwiązań do zastosowania.

8. Elastyczność - możliwość dostosowania technologii do Waszego projektu.

9. Innowacyjność - perspektywa wykorzystania nowych rozwiązań, dających nowe możliwości.

Mam nadzieję, że powyższa lista pomoże wyznaczyć kryteria i hierarchię oceny dostępnych rozwiązań. Kilka z nich przytoczę poniżej.

Technologie, które warto użyć tworząc startup

1. 2. 3. Oddaj aplikację w ręce Klienta: Angular, React, Vue.js (Front-end - strona klienta)

Dzięki tym trzem frameworkom JavaScript jesteśmy w stanie stworzyć chociażby świetnie działającą i angażującą użytkowników aplikację webową. W założeniu większość operacji będzie wykonywana po stronie przeglądarki klienta, przez co odciążymy nasz serwer, zyskując na szybkości działania i zwiększając liczbę obsługiwanych użytkowników równolegle.

Jeśli planujecie stworzenie aplikacji mobilnej dla swojego startupu, ale będzie ona pobocznym celem, warto postawić na Angulara, ponieważ bez większych problemów można przenieść kod aplikacji webowej do hybrydowej aplikacji mobilnej.

Zastosowanie: Szerokie, ale przede wszystkim do aplikacji webowych

Przykłady realizacji:

Angular: freelancer.com, udemy.com, upwork.com

React: instagram.com, dropbox.com, imdb.com

Vue.js: laravel.com, laracasts.com, gitlab.com.

4. Piekielnie szybki Node.js (Back-end - strona serwera)

Patrząc na ostatnie zestawienia najpopularniejszych technologii, JavaScript jest niezmiennym liderem. Dlatego wielu deweloperów przyjęło pod swoje technologiczne skrzydła framework back-endowy Node.js, który zapewnia niezwykłą skalowalność i świetną obsługę wielu wątków równocześnie.

Warto rozważyć tzw. MEAN stack, czyli zestaw Node.js. MongoDB (baza danych), Express (framework do aplikacji webowych w Node.js) oraz wcześniej wspomniany Angular. Ten kwartet w rękach dobrego fachowca daje bardzo dużo możliwości, jednakże z drugiej strony dla mniej zaawansowanych programistów bywa frustrujący.

Zastosowanie: Serwis lub aplikacja mająca za zadanie szybko obsłużyć wiele zadań od sporej liczby użytkowników równocześnie.

Przykłady realizacji: paypal.com, linkedin.com, netflix.com.

5. 6. 7. 8. Kontrowersyjny szarak PHP: CakePHP, Laravel, Symfony, Zend...

Język PHP jest jednym z najpowszechniejszych w sieci, możliwe że dzięki niezwykłej popularności Wordpressa i często stosowanych frameworków takich jak Laravel, Symfony, Zend i wielu, wielu innych. Mimo licznej krytyki jest często używany przez programistów. Duża popularność wpływa na sporą społeczność zebraną wokół PHP, dzięki czemu znajdziemy w sieci mnóstwo gotowych rozwiązań, które przyspieszą realizację naszego projektu i obniżą jego koszty. 

Wśród frameworków PHP warto przyjrzeć się m.in. Laravel, CakePHP, Codelgniter, Symfony, Yii2. Każde z tych rozwiązań cechuje różna szybkość, ograniczenia zastosowania, elastyczność, wsparcie społeczności. Nie ukrywam, że wybór może być ciężki i w dużej mierze zależeć od preferencji programistów. Warto pamiętać o tym, aby te preferencje skonfrontować z wymaganiami Waszego startupu.

Zastosowanie: Do dobrego, uniwersalnego i solidnego rozwiązania.

Przykłady realizacji: sjp.pwn.pl (CakePHP), laracasts.com (Laravel), turbobit.net (Kohana), Drupal i Magento (Symfony), buffer.com (Codeigniter).

9. Startupowy Ruby: Ruby on Rails (Back-end)

Głównymi założeniami RoR jest szybkość, łatwość i przyjemność pisania kodu, co przekłada się na czas, jakość realizacji i wdrażania nowych rozwiązań. Jednak poważną wadą tego rozwiązania jest wolne działanie w porównaniu do konkurencji. Wymagania wobec serwera oraz wskazywane przez deweloperów problemy ze skalowalnością. Warto jednak zauważyć, że wiele udanych i znanych startupów zaufało RoR i może dzięki niemu osiągnęło sukces.

Zastosowanie: Do dynamicznie tworzonego, dobrze zaplanowanego projektu.

Przykłady realizacji: airbnb.com, ask.fm, couchsurfing.net, kickstarter.com, shopify.com.

10. 11. Uniwersalny Python: Django, Flask (Back-end)

Wieloplatformowość Pythona powinna być główną zaletą dla każdego, komu zależy na udostępnieniu swojej usługi/produktu na wielu platformach. Język ten możemy zastosować do tworzenia gier, programów, aplikacji mobilnych, aplikacji webowych czy stron internetowych. Coraz więcej programistów sięga po niego z uwagi na przyjemność pisania kodu, łatwość dbania o jego przejrzystość i czystość.

Django oraz Flask są jednymi z najpopularniejszych webowych frameworków napisanych w Pythonie i warto, abyście dowiedzieli się o nich więcej jeśli zainteresował Was ten język.

Zastosowanie: Uniwersalne na wielu platformach.

Przykłady realizacji: youtube.com, Blender3D, Cywilizacja IV, World of Tanks, Bitly, Google, Pinterest, Bitbucket.

Ilu programistów tyle wersji…

Współpracując z doświadczonymi fachowcami, dobrze znającymi dany język lub framework, możecie liczyć na świetne efekty. Jednak warto myśleć przyszłościowo i upewnić się, czy za jakiś czas nie staniemy oko w oko z ograniczeniami wybranej technologii, co zahamuje rozwój naszego startupu.

Im mniejszy budżet posiadamy i im mniej doświadczonych programistów możemy zatrudnić tym bardziej warto zastanowić się nad rozwiązaniami, które znacznie zawężają pole do samodzielnych decyzji, a tym samym ograniczają z góry możliwość popełnienie błędów. Proponuje w tym temacie sprawdzić duet Lumen i Laravel.

Oczywiście przedstawiłem tylko skromną część aktualnie dostępnych technologii, ale mam nadzieję, że pomogłem Wam nakreślić kurs Waszych dalszych poszukiwań idealnego, technologicznego rozwiązania dla Waszego startupu. Liczę, że w komentarzach podzielicie się z innymi czytelnikami swoimi doświadczeniami, a także propozycjami technologii wartych rozważania.

Bartosz Wojdon

CEO, Designer, Developer w Codenest

Webdeveloper z zawodu. Podróżnik z zamiłowania. Nieudany reżyser z pasji. Inżynier Budownictwa z wykształcenia. Na co dzień wysiaduje kod w codenest.pl, gdzie wykluwają się świeżutkie strony internetowe i aplikacje webowe dostosowane do wymagań Waszych Klientów.

Komentarze (0)