Gdy zakodowanie czegoś trwa krócej, niż znalezienie właściwej wtyczki
Dzisiejszy wpis nie będzie jakoś szczególnie merytoryczny, a raczej taki z kategorii… przemyśleń 🙂 Otóż ostatnio miałam na głowie sporo projektów, w których słowem przewodnim była INTEGRACJA, a więc sklejanie platformy z kilkunastu wtyczek w jeden funkcjonalny twór o nazwie: platforma kursów online. Pytanie: czy bez umiejętności kodowania można samodzielnie zbudować własną platformę kursów online, sklep, blog itp? Tak, z naciskiem na słowo WŁASNĄ. Bo jeśli tworzysz ją dla siebie, to jesteś w stanie pójść na pewne ustępstwa i zaakceptować mechanizm działania wtyczek, albo brak niektórych funkcjonalności. Tak samo jeśli chcesz stworzyć dla siebie stronę internetową, blog, czy sklep. Jest już sporo kursów w tej tematyce, więc bez problemu dasz sobie radę, jeśli nie jesteś programistą. Oczywiście sprawa inaczej wygląda, gdy chcesz wejść w branżę tworzenia stron internetowych, sklepów, platform edukacyjnych itd.
Czy jeśli nie znam się na kodowaniu…
ale potrafię zainstalować i skonfigurować motyw graficzny, to czy mogę wejść do branży projektowania stron www? Z kolei tutaj moja odpowiedź na to pytanie brzmi: nie. Bo jeśli coś robimy dla siebie, jesteśmy w stanie przełknąć pewne niedogodności. Ok – nie mam skryptu, który po zapisie na kurs automatycznie wrzuci kursanta na listę autorespondera – będę robić to ręcznie. Natomiast jeśli oferujemy usługę dla Klienta i chcemy spełnić jego wymagania – musimy się dopasować.
Branża usług projektowania stron www, czy projektowania platform edukacyjnych działa na podobnej zasadzie. Dopasowujemy swoje rozwiązania, swoje projekty pod wymagania Klienta, a nie odwrotnie. Nie zdarzyło mi się jeszcze w historii mojej działalności (a w IT siedzę już kilkanaście lat…), żeby Klient nie wymagał chociażby drobnej przeróbki motywu graficznego lub jakiejś dodatkowej funkcjonalności. Nawet jeśli jest to jakaś drobna rzecz, bez znajomości kodowania nie będziesz w stanie znaleźć tego określonego miejsca w pliku.
Wracając do projektowania platformy kursów online…
Budowanie platformy z gotowych klocków wcale nie jest takie szybkie jak się wydaje. Jeśli przeczytałeś poradnik Moja platforma kursów online na WordPress to już pewnie wiesz, jakie elementy trzeba wziąć pod uwagę przy projektowaniu własnej platformy i z jakimi kosztami się to wiąże. Nie zawsze dana wtyczka, która pasowała do wcześniejszego projektu, będzie pasować do kolejnego.
Większość platform edukacyjnych działa według podobnego schematu, jeżeli chodzi o główne funkcje, natomiast często-gęsto różni się niuansami. I właśnie o te niuanse się rozchodzi. Można stracić sporo czasu na szukaniu gotowców (darmowych lub płatnych), a i tak w rezultacie może się okazać, że bez większych poprawek się nie obędzie. Należę do tych osób, które nie lubią wymyślać koła na nowo i chętnie korzystają z płatnych rozwiązań, jeśli istnieją i pasują do projektu. Jeśli jednak na poszukiwaniach tracę zbyt dużo czasu to odpalam Sublime (bądź notepad++) i dopisuję to co jest mi potrzebne.
Umiejętność kodowania nie raz uratowała mnie z opresji…
Generalnie nie lubię wykonywać monotonnym czynności. Jeśli zdarza mi się robić to samo przez kilka kolejnych dni lub tygodni, zawsze zapala mi się w głowie lampka pt.: „a może by to jakoś zautomatyzować?„. Po raz pierwszy zapaliła mi się, gdy podjęłam pierwszą pracę na etacie. Miałam sporządzić określone raporty na podstawie danych, znajdujących się w kilkudziesięciu arkuszach kalkulacyjnych. Szef pokazał co i jak „przepisywać” – nie no, robota na 2-3 dni jak nic! I poszedł.
Rzeczywiście, idąc za metodą, którą pokazał, te 3 dni mogłyby nie wystarczyć. Późne lata 90-te, trochę inna mentalność i przekonanie, że pewnych rzeczy nie da się inaczej zrobić jak „na piechotę”. Tyle, że taka robota na piechotę może nam dostarczyć sporej ilości błędów. Ciężko jest się nie pomylić przy przepisywaniu n-tego rekordu. Natomiast dobrze skonstruowany skrypt pogrupuje, posortuje dane z różnych plików i wyciągnie z nich najistotniejsze informacje. I co najważniejsze: taki mechanizm można powielać przy kolejnych, rutynowych czynnościach.
Automatyzacja jest kluczem
Takich przykładów mogłabym mnożyć, a z perspektywy czasu wiem na pewno, że jeżeli istnieje szansa zautomatyzowania nawet najdrobniejszej, najmniej istotnej czynności, która zabiera Ci czas (nawet te 5 min w ciągu dnia…), to i tak warto jest ją zautomatyzować. Jeżeli chodzi o moją platformę kursów online – stale ją rozwijam i optymalizuję. Testuję różne rozwiązania i odrzucam „kombajny”. Bo często ważniejszy jest chłodny minimalizm niż ciężka, aczkolwiek estetyczna „kobyła”. A jak brakuje jakiegoś drobiazgu, bądź „mostu” łączącego z inną aplikacją, po prostu siadam i klepię kod.
I znowu coś trzeba zakodować
Po raz kolejny przyszła mi z pomocą umiejętność kodowania, gdy potrzebowałam określonej funkcjonalności w sprzedaży kursów. Po zakupie kursu w wersji PREMIUM Klient powinien być przypisany do dodatkowej roli, np. Klient kursu X (domyślnie dla każdego jest Subskrybent). Dzięki takiemu przypisaniu kursant widzi dodatkowe pliki w swoim profilu (inne niż te, związane z określonym kursem). Dodatkowo zależało mi też na możliwości ręcznego przypisania określonych plików konkretnej grupie osób.
W normalnych warunkach należałoby kombinować z wtyczkami typu Buddy Drive, Profile Builder, jakąś User Role Editor, a i tak w ostateczności nie osiągnęłabym zamierzonego celu. Nie chciałam tracić za dużo czasu na poszukiwaniu jakiegoś istniejącego modułu, po przeanalizowaniu tego co mam stwierdziłam, że po prostu załatwię to po swojemu. Bez zbędnych fajerwerków, tylko to co jest mi niezbędne do działania.
Dlaczego o tym piszę?
Otóż nie chodzi mi o to, żeby nagle wszyscy zaczęli kodować 🙂 Ważne, żeby wiedzieć w którym momencie korzystać ze swoich umiejętności i nie utknąć na którymś etapie swojego projektu. Jeśli mam coś do zakodowania i nie zajmie mi więcej niż 1-2 dni, po prostu siadami i to robię. A jeśli wiem, że potrzebuję rozbudowanego modułu – szukam czegoś gotowego lub zlecam zewnętrznej firmie. Ktoś, kto dysponuje zespołem ludzi, jest w stanie szybko to ogarnąć niż ktoś, kto działa w pojedynkę (inna sprawa jeśli chciałabym swoje rozwiązanie sprzedawać dalej – wtedy faktycznie praca przez 1-2 miesiące nad budową własnej aplikacji ma sens).
Natomiast, jeśli np. robisz ładne zdjęcia, możesz samodzielnie tworzyć oprawę graficzną swoich produktów/kursów/artykułów na blogu. Jeśli zależy Ci na profesjonalnej sesji zdjęciowej (tło, oświetlenie itp.) – to po prostu zleć to zewnętrznej firmie. Ważne, żeby usuwać wszelkie przeszkody, które nie pozwalają Ci iść dalej. A co więcej, nie marnować czasu na kolejne próby, testy i poszukiwania.
Inna sprawa, że nie wszystko musi być od razu perfekcyjne…