O tym jak zachciało mi się tworzenia własnego portalu społecznościowego – bez umiejętności programistycznych. :)

in #polish6 years ago (edited)

Artykuł ten postanowiłem napisać jako rodzaj tekstu w którym dzielę się doświadczeniem z procesu tworzenia portalu społecznościowego, jakiego pomysł narodził się w mojej głowie jakąś dekadę temu, a do którego realizacji dopiero niedawno dojrzałem.

Będzie to dość ogólny poradnik z informacjami dla wszystkich tych, którzy mają jakiś pomysł na własny serwis internetowy ale nie są pewni jak zacząć i jakie stoją przed nimi decyzje oraz wyzwania - a zapewniam Was, że jest ich więcej, niż na początku może się wydawać.
Tekstem tym jednak nie zamierzam nikogo zniechęcać, a wręcz przeciwnie – chcę zaoszczędzić Wam czasu i nauki na własnych błędach, którą ja przeszedłem. Dodam jednak, że jest to "poradnik dla szaleńców" (takich ja ja :).

CMSy – czyli łatwe stawianie stron jakich są miliony.

Na wstępie obalmy jeden mit. Mówi się, że na darmowych rozwiązaniach nie da się postawić porządnego portalu społecznościowego.
Otóż da się.
Jeszcze parę lat temu takie wynalazki były toporne i ledwo działające ale dziś wygląda to już znacznie lepiej i pojawiło się wiele darmowych narzędzie do tego celu się nadających.

Jeśli nie macie umiejętności programistycznych lub zatrzymały się one u Was podobnie jak u mnie na etapie czasów świetności HTMLa i budowania na nim witryn internetowych to mam dla Was dobrą i złą wiadomość.

Na rynku jest obecnie kilka darmowych CMSów, które każdemu w łatwy sposób pozwalają postawić prosta stronę, swojego bloga etc.
CMS czyli Content Management System to takie narzędzie, które za pomocą odpowiednio przygotowanego interfejsu użytkownika pozwala nam stworzyć stronę internetową, serwis lub nawet portal w relatywnie łatwy sposób bez posiania umiejętności programistycznych. Jest to świetna sprawa, dopóki to co chcemy stworzyć jest proste i chodzi nam jedynie o standardową stronę internetową lub serwis z typowymi funkcjami.

Niestety – jeżeli mamy oryginalny pomysł na jakieś rozwiązania, a w szczególności jeśli przy tym serwis jaki chcemy postawić ma być czymś bardziej złożonym – na przykład jak w moim przypadku ma to być portal społecznościowy zawierający oryginalne rozwiązania – to tu zaczynają się schody i to konkretne.

Jednak od czegoś trzeba zacząć a więc zacznij od zorientowania się w dwóch CMSach: Joomla oraz Wordpress. Oba są darmowe i oba są popularne, stale wspierane etc.

Wordpress kiedyś nadawał się głównie do blogów i do tego był idealny zaś Joomla przodowała jako CMS lepszy do bardziej rozbudowanych serwisów internetowych oraz portali. To się jednak z czasem zmieniło. Obecnie Wordpress stoi moim zdaniem na równi z Joomlą a pod pewnymi względami okazuje się nawet lepszy. Po pierwsze obecny cykl wydawniczy i sposób jego aktualizowania jest bardziej regularny i bezstresowy. Wordpress łatwo się aktualizuje i zazwyczaj po aktualizacji wszystko nadal działa (pluginy – o nich w dalszej części) zaś Joomla niestety aktualizowana jest bardziej skokowo i bywa często, że kolejne jej wersje mają jakieś zgrzyty z dodatkowymi komponentami, więc tu widzę już pierwszy minus. Jeśli mamy mieć rozbudowany serwis zawierający w sobie wiele skomplikowanych komponentów to raczej nie chcemy w pewnym momencie stawać przed dylematem: albo zaktualizuję i wszystko się może sypnąć albo zostanę przy starej wersji z lukami zagrażającymi bezpieczeństwu portalu lub nie będę w stanie zainstalować lub zaktualizować jakiegoś komponentu.

Żmudna nauka Cię nie ominie.

To, że CMSy są dziś relatywnie poste w obsłudze dzięki graficznych interfejsom etc. to nie znaczy, że z marszu będziesz w stanie wszystko zrobić. Nie ominie Cię ślęczenie przed rożnymi tutorialami i poradnikami. To dotyczy tym bardziej całej dalszej części jaka czeka każdego, kto zamarzył sobie o czymś ambitnym i oryginalnym zwłaszcza. Pomimo zwiększenia ilości dostępny i przystępnych narzędzi – cała nauka i proces w ramach którego narodzi się nasze arcydzieło to przede wszystkim godziny spędzone na zapoznawaniu się z interfejsami danych CMSów czy komponentów na nich instalowanych. Większość z tych rzeczy wydaje się prosta na papierze gdy czytamy na przykład opis tego co robi dany komponent jaki chcemy zainstalować ale gdy stajemy przed jego konfiguracją i próbą nakłonienia go do współpracy z innymi elementami naszej strony to już nie zawsze jest tak kolorowo.

Wybór CMSa poprzedź sprawdzeniem dostępnych komponentów.

Powszechnym błędem jest wybierać CMS przed sprawdzeniem jakie komponenty faktycznie są do niego dostępne, na ile są rekomendowane oraz czy są darmowe czy nie. Mówię tu jak Kapitan Oczywistość ale w entuzjazmie zafascynowania odkrywaniem możliwości samego CMSa można łatwo zapomnieć o tym, że przecież wciąż nie znaleźliśmy w nim opcji dodania tego co jest nam potrzebne a przecież od tego zależy, czy dany CMS w ogóle się nam przyda.

Wielkie puzzle dla szaleńców.

Tu dochodzimy do sedna problemu: Jeśli chcesz stawiać portal społecznościowy na darmowych rozwiązaniach (ewentualnie posiłkując się co tańszymi dodatkami co może okazać się nieuniknione – zależnie od realizowanego projektu) to przygotuj się nie tylko na masę czytania i oglądania tutoriali ale na konieczność instalowania wszystkiego i odkrywania metodą prób i błędów czy dane rozwiązanie u Ciebie się sprawdzi i czy dane komponenty będą ze sobą dobrze współpracowały.
Niestety bywa często tak, że choć z opisu komponentu wydaje się, że jest to to czego szukamy to zainstalowaniu go odkryjemy, że jednak niekoniecznie ma te opcje, których dokładnie akurat potrzebujemy. Co więcej czasem po prostu dany komponent wchodzi w konflikt z innymi zainstalowanymi i wtedy pozostaje nam z niego zrezygnować lub posiłkować się pomocą dobrego (i zazwyczaj drogiego) programisty, a przecież aby tego uniknąć właśnie sięgnęliśmy po te rozwiązania.

Daj sobie czas i działaj stopniowo lecz systematycznie.

Potrzeba czasu i cierpliwości przy takim projekcie aby wszystko sprawdzić.
Ja na przykład po kolejnym tygodniu pracy nad portalem i ogarnięciu już działania najważniejszego dla mnie elementu – będę zaraz stawiał trzecią wersję strony by przetestować inny komponent społecznościowy i sprawdzić, czy jednak lepiej się on u mnie nie sprawdzi.
Dlaczego trzecia wersja strony? Ano właśnie – w przypadku instalowania tak zwanych kombajnów czyli co potężniejszych komponentów które zasadniczo wpływają na działanie naszego CMSa bywa niemożliwe lub jest bardzo ryzykowne instalowanie kilku takowych kombajnów na jednej wersji portalu - zwłaszcza jeśli zajmują się tym samym na przykład obsługą profili użytkowników i komponentem społecznościowym. Lepszym pomysłem jest postawić osobną instalkę serwisu dedykowaną testowaniu innego kombajnu i tam zajmować się jego konfigurowaniem oraz instalowaniem wyłącznie dedykowanych mu komponentów. To znowu zajmuje czas i wymaga zapoznawania się z interfejsami i działaniem tychże komponentów.

Szybko odkrywamy też podczas takich eksperymentów, że częstym bywa przypadek, że dane komponenty ze sobą źle współpracują, powodują konflikty lub po prostu nie pasują do naszych potrzeb. Dany komponent może mieć 9/10 potrzebnych nam funkcji ale jeśli zabraknie w nim tej jednjej ale dla nas kluczowej... no właśnie – zaczyna się ponowne szukanie, konfigurowanie etc.

Pomoc programisty – miała nie być potrzebna, a jednak...

Z doświadczania muszę Wam powiedzieć, że może iść dobrze: zapoznamy się z komponentami, po długich poszukiwaniach znajdziemy właściwe i to darmowe rozwiązania, zainstalujemy je, zapoznamy się i nauczymy się konfigurować dany komponent, będziemy mieć już nasz serwis w fazie zdawać by się mogło zaawansowanej, już prawie prawie gotowy. Aż tu nagle coś kluczowego nie działa jednak. Okazuje się, że choć komponenty mają wszystko co chcieliśmy to jednak jakaś funkcja, która działać powinna – nie działa i nie wiemy dlaczego. W mojej wieloletniej praktyce miałem wiele razy takie sytuacje. Czasem po prostu staniemy przed ścianą której sami nie przeskoczymy. Albo mamy kogoś kto nam pomorze to ogarnąć albo może okazać się, że będziemy musieli zaczynać poszukiwania i konfigurację czegoś zupełnie innego, zupełnie od nowa.
Cierpliwości i zawziętości do takiej przygody potrzebujemy na tony! :)

Pozdrawiam serdecznie
Jakub Qba Niegowski ( @sirq )

Sort:  

Mi się wydaje że wykorzystanie STEEM blockchain jako bazy danych jest lepszym rozwiązaniem do budowy własnych stron i społeczności o konkretnych zainteresowaniach. Wczoraj pod moim wpisem odezwał się @nicniezgrublem i zostawił link do swojej strony https://glodniwiedzy.pl/. Moim zdaniem pomysł prosty i genialny. Nieznam się na tym i niewiem jak to zrobił ale wygląda na to że na jego stronie są publikowane tylko posty zatwierdzonych autorów lub posty z wybranych tagów, albo oba te warunki muszą być spełnione równocześnie. Zalety są takie że

  • ma własną stronę wokół której może skupiać społeczność o określonych zainteresowaniach
  • publikując przez steemit zwiększa zasięgi swoich postów
  • może liczyć na upvoty od ludzi którzy używają steemit, busy czy innych aplikacji a nie wiedzą o istnieniu jego strony

pomysł świetny, nie wiedziałem że takie coś jest, a widze tam wiele tematów które mnie interesują
dzięki za info