Как да си направя Website?

Ако 20-ти век беше векът на комуникациите, то 21-ви век е на интернет. Това, което бяха визитни карти, flyers, реклами в медиите всичко в днешни дни се отмества в интернет. Как обаче да си направиме website? Първо трябва да изясним какъв website искаме. Най-опростения вариант е website от тип flyer/business card. Това е website с опростен дизайн, информация за фирмата, контакт и т.н. Такъв сайт е добро начало, но е скучен за посетителите и ако не му се обновява съдържанието пада надолу в rating-a на търсачките. За да бъде по-добре индексиран един сайт трябва постоянно да обновява съдържанието си и колкото е по-посещаван, толкова по-добре ще бъде индексиран. Още по-добре е ако сайта е свързан и със сосциалните медии.

Най-лесният начин е да се използват website builders. Почти всеки host provider в днешно време предлага и website builder. Най-популярните са wix, weebly, jimdo, 1&1, godaddy, strato и т.н. Предимството им, е че без познания в областта на компютрите може да се конфигурира сайт. Недостатъците са, че сайта изглежда, както се казва като от калъп. Освен това много ненужен код се добавя от генераторите. В повечето случаи няма възможност да се експортира и пренесе на друга платформа. И най-сериозният проблем, е че в повечето случаи провайдерите прекратяват поддръжката на продукта, който сте получили на супер изгодна цена и ви предлагат нови продукти, които или са много по-скъпи или са с много орязани параметри.

По-добрата алтернатива според мен е да се използва CMS (Content Management System). Предимствата тук са, че разширяването на сайта е далеч по-лесно, обикновенно множество далеч по-добре изглеждащи templates са на разположение, понякога има даже и готови Blueprints, които директно могат да се вграждат. Естествено и тук имаме джунгла от възможности. Едни от най-популярните и обичани CMS-и са Wordpress, joomla!, drupal, typo3 за онлайн магазини Shopify, prestashop. Adobe също са представени на този пазар, но поради несъгласие с политиката им не искам да ги референцирам. Доколкото знам тук най-обичани са joomla!. Разполагат с множество templates и продукта е лесен за учене. Недостатъците на CMS, както може да се очаква са липса на гъвкавост, лесните неща стават лесно, но колкото по-интересни неща трябва да се имплементират, толкова по-трудно става и човек или трябва да се научи да програмира или да си вземе скъпи програмисти.

Естествено ако искате ултимативен сайт, който да е интересен, да привлича много посетители, да е готов да поеме огромно количество поръчки тогава ви трябват професионалисти. Много хора си нямат представа, но за един професионален website са нужни поне следните роли: графични дизайнери, уеб дизайнери, системни администратори (инфраструктура, администрация, оптимиране), компютерни инжинери (инфраструктура, оптимиране), софтуеърни инжинери (архитектура, имплементиране, оптимиране) и last but not least бизнес инжинери. За да се спестят малко разходи удобно решение е да се използва облак (cloud). Както обикновено и тук имаме на разположение джунгла от продукти и фирми. Ако говориме за PaaS, лидери са Amazon AWS, Google App Engine, Salesforce heroku, DigitalOceal, Microsoft azure, Red hat openshift, Ibm bluemid, PythonAnywhere. Изборът и тук е труден. Лидерите не предлагат беъплатни абонаменти. При Amazon има 12 месеца безплатно, при Google са 300 евро. Моят опит с Google, е че всеки сървис струва почти нищо, но в края на месеца сметката е голяма. Microsoft azure не съм го пробвал, защото типично в техен стил ми го предложиха „безплатно“, но само ако си купя някой техен продукт. Понеже правят този номер откакто ги познавам, от почти 20 години в личния си живот не ги използвам. Моите фаворити тук са heroku, pythonanywhere и openshift. OpenShift е на Red Hat, които ми бяха много любими, но с държанието си в последните години паднаха много ниско. OpenShift типично както бащината фирма Red Hat предлагаха безплатен абонамент в облака с версия 2. Типично за фирмата има много документация, но тя е разпокъсана, лошо структурирана и трудна за проследяване. С версия 3 получихме kubernate, което е много попложително, но документацията продължава да е още по-зле, build and deploy са още по-бавни (типично за Red Hat). Learning curve е доста flat. В първите дни response time беше 8 - 10 секунди, което е нзакакъв ужас в днешно време. Според мен OpenShift не е зле, но има и по-добри. На второ място, но в сърцето ми на първо са PythonAnywhere. Супер малка компания (стискам им палци да станат голяма) продукта и сайта им са супер минималистични, но въпреки това предлагат всичко необходимо (Monogdb още няма, но имам чувството, че скоро ще дойде). Големият плюс тук са упътванията! Написани са МЕГА човешки! На мен повечто обяснения не ми бяха нужни, но за хора с по-малко background си мисля, че е супер. Горещо го препоръчвам, въпреки че честно казано при тях ми липсват доста неща, които имам при heroku. Победителят според мен е heroku na Sealsforce! Тук има безплатен абонамент, хиляди add-ons. добра документация (интуитивна). Работи бързо и надеждно. Единственото ми оплакване, е че за сайт с голямо натоварване цените са ужасно високи. Мога да си представя, че големите провайдери предлагат по-изгодни условия. Сигурно и SalesForce го правят, но цените на сайта им за high available, high load and fault tolerant apps са малко стряскащи.