Ten artykuł jest częścią serii Daj się poznać! (1 / 5)

Niedawno dzieliłam się z Wami swoimi planami na najbliższe miesiące. No cóż, plany mają to do siebie, że lubią się zmieniać.

Gdy wystartowała rejestracja do konkursu „Daj się poznać”, edycja 2017, nawet się nie zastanawiałam – postanowiłam wziąć udział.

Pamiętacie, wspominałam, że w najbliższym czasie planuję nauczyć się React’a oraz wypuścić przynajmniej jedną Progressive Web App? No to zamierzam połączyć te dwa cele.

Projekt będę rozwijać na Githubie. Na blogu będą pojawiać się tygodniowo dwa wpis – w tym jeden statusowy (tj. jak mi idzie 😉 ).

Z jeden strony będę publikować raporty z projektu, z drugiej postaram się opisywać to, czego się nauczyłam w temacie danych technologii, itp. Taką instrukcję dla kogoś, kto być może ma podobne plany w zakresie rozwijania kwalifikacji programistycznych.

Będzie to niestety kosztem artykułów w tematyce „Od zera”, ale mam nadzieję trochę to pogodzić publikując m.in. od czego zacząć naukę React’a, o co chodzi z Progressive Web Apps, czy też o konfiguracji mojego środowiska pracy (Git, Webpack, itp.).

Tak, ogólny plan wpisów również mam przygotowany. Jak wiecie – lubię planować 🙂 I właśnie narzędzie do planowania będę rozwijać 😉

 

Opis problemu, na który odpowie mój projekt

Będzie to aplikacja, będąca odpowiedzią nie tylko na moje potrzeby.

Prowadzenie bloga w dzisiejszych czasach często wiąże się z obecnością na kanałach Social Media. Wiele osób, zapewne słusznie, twierdzi, że potrzebna jest w tym celu strategia, regularne publikowanie postów. Ostatnio postanowiłam mocniej do tego przysiąść i opracować konkretny plan publikacji. Medium, dzień, post, cykl, itp.

Jak to ja, w celu takiego planowania zaczęłam szukać aplikacji. Wiedziałam mniej więcej czego chcę, bo wcześniej ogólny plan trzymałam w Trello. Nie mogąc znaleźć odpowiedniej aplikacji zwróciłam się w kierunku starego dobrego Excela. I szlak mnie trafił…

Zaczęłam szukać innych rozwiązań. Pytać o nie. Okazało się, że nie ma narzędzia jakiego potrzebuje. Wszyscy obchodzą problem z wykorzystaniem Excela, Trello, kalendarza, notesu albo trzymają plan w głowie. Ewentualnie korzystają z płatnych narzędzi, gdzie jedną z funkcji jest taki kalendarz. No, póki co inwestowanie 30-50$ miesięcznie w takie narzędzia… wolę zainwestować czas i stworzyć swoje 😉

P.S. Na razie nadal korzystam z Excela, nie znalazłam niczego lepszego.

 

Projekt: Kalendarz do planowania postów na kanały Social Media

Wstępne założenia projektu

Będzie to połączenie cech czterech innych aplikacji: Google Calendar, Nozbe, Trello oraz Excel’a. W każdej mi czegoś brakuje, więc postaram się wypełnić te luki i stworzyć narzędzie dedykowane planowaniu postów.

Na chwilę obecną zakładam trzy główne zakładki:

  • Kalendarz
  • Lista
  • Baza pomysłów (również w formie listy)

Dwa pierwsze widoki będą prezentowały w różny sposób te same dane, tj. listę zaplanowanych publikacji. Trzeci widok to taki „magazyn” zapasowych pomysłów z jeszcze niesprecyzowanymi terminami publikacji.

W widoku kalendarza będziemy mogli oczywiście podejrzeć zaplanowane publikacje na dzień, tydzień, miesiąc. Tu przypomina Google Calendar, jednak z możliwością odznaczenia wplanowanych publikacji oraz filtrowania po wielu parametrach. Jakich? Do tego dojdziemy za chwilę.

Aplikacja będzie służyć do planowania, nie ustawiania automatycznych publikacji. To celowe założenie.

Narzędzi do publikacji jest całkiem sporo. Można tam określić plan publikacji (czasem mamy nawet widok kalendarza),ale tylko dla danego narzędzia. Zazwyczaj korzystamy z kilku  – np. Facebook Post Planner, Jetpack (Publicize), Later, Buffer, Hootsuite, itd. Brakuje narzędzia do planowania kalendarza postów niezależnego od aplikacji jaką automatyzujemy publikacje. To właśnie chcę stworzyć.

 

Dla każdego postu będzie można określić:

  • datę publikacji,
  • cykliczność,
  • narzędzie, w którym wplanujemy automatyczną publikację,
  • kanały publikacji: Facebook, Twitter, Instagram, Google+, itd.
  • notatki,
  • (oraz być może przypiąć np. materiały do postu – zdjęcia, pliki, itd.)

 

Posty będziemy mogli filtrować pod kątem:

  • kanału publikacji,
  • narzędzia automatycznej publikacji,
  • statusu: do wplanowania, wplanowane, termin minął.

 

Dzięki temu możemy zaplanować strategię publikacji postów patrząc pod kątem jednego z kanałów, jak i na ogólny plan.

Z kolei filtrowanie po narzędziu przyda się w momencie planowania konkretnych publikacji w innych narzędziach. Np. siadamy do publikacji na Bufferze, więc interesują nas tylko posty do wplanowania w tym narzędziu. Tutaj z kolei przyda się widok Listy.

Baza pomysłów byłaby takim „magazynem” pomysłów na publikacje, zapasem postów, które nie będą jeszcze miały określonej daty. Na przykład staramy się raz na tydzień polecać ciekawe artykuły, podcasty, materiały video. Fajnie byłoby mieć wtedy taki kosz pomysłów na polecenia. Coś nam się spodobało? Ląduje w koszu pomysłów, z krótką notatką, ale bez przydzielonego terminu publikacji. Siadamy do planowania postów na dany tydzień? Przeglądamy taki „koszyk” i przydzielamy terminy publikacji lub pozostawiamy w koszu.

Narzędzie będzie można wykorzystać również do planowania kalendarza publikacji na blogu. Tutaj działaniem będzie mocno przypominać sposób, w jaki od przeszło roku planuję content z Trello. Nie będę się na ten temat rozpisywać tutaj, zapraszam do mojego wpisu na drugim blogu.

Nadal pracuje nad tym jak będzie wyglądać aplikacja. Niestety moim ulubionym sposobem jest kartka papieru i długopis 😉 Swoją drogą znacie jakieś fajne darmowe narzędzia do prototypowania aplikacji?

 

Wszelkie uwagi, pomysły względem aplikacji od strony działania mile widziane.

 

Od strony technicznej: Narzędzia

Będzie to tzw. Progressive Web App. Dość popularne ostatnio podejście w zakresie tworzenia aplikacji. Będzie możliwe dodanie jej do pulpitu telefonu, by ułatwić korzystanie z niej (bez konieczności wchodzenia na konkretną stronę). Tutaj na pewno będę chciała obsłużyć Android’a, zdążyłam już zauważyć, że może być problem z iOS (ale zobaczymy co się da zrobić).

Tak, jak pisałam – Frontend będzie stworzony w oparciu o React, którego zaczęłam się uczyć jakiś czas temu.

Aplikację zamierzam zdeploy’ować na Firebase.

Przewidywany stos technologiczny dla aplikacji?

Tu, żeby uporządkować skorzystałam z artykułu Nowoczesny stos technologiczny dla Front-endu. Ale zastrzegam, że może się zmienić, zwłaszcza na początku pisania aplikacji. Głównie dlatego, że nie mam pojęcia czy to wszystko rzeczywiście warto łączyć 😀 Czasem wykorzystanie jednego wyklucza albo pociąga za sobą wykorzystanie czegoś innego.

Pogrubiłam to, co będzie dla mnie nowością 😉

IDE: Webstorm (polecam!)

Git

NPM

JSLint, JSHint, CSSLint, ESLint

Czysty CSS, ew. Sass

Babel

Webpack

Bootstrap – zastanawiam się jeszcze czy z niego korzystać…

Firebase

Material Design

ES6

JavaScript

Node JS

React JS

Redux

Progressive Web App

 

Wszelkie porady mile widziane 😀 Tak, jak zaznaczyłam wzięłam na tapetę coś, czego jeszcze nie robiłam. Tj. miałam do czynienia z aplikacjami hybrydowymi, zdarzyło mi się pracować nad aplikacją w Ionic’u. Ale React’a zaczęłam się dopiero uczyć. Mam nadzieję, że 3 miesiące wystarczą, by stworzyć coś fajnego 😉

 

Na koniec miejsca, w których można obserwować prace nad projektem:

  • Github
  • Kategoria wpisów na blogu: Daj się poznać 2017
  • Firebase (demo aplikacji 😉 ) – tbd
  • Kanały Social Media:
    • Fanpage
    • Twitter
    • Instagram
    • Świeżutko w tym celu utworzony Snapchat 😉 Obserwuj po nazwie zjazdzyk lub wykorzystując snapkod widoczny poniżej

Życzcie mi szczęścia! 🙂 I czasu… bo z niespełna 9-miesięcznym dzieckiem przy boku nie mam go za dużo 😉

Kolejny wpis jeszcze w tym tygodniu 😉 

Series NavigationKonfiguracja środowiska pracy & uruchomienie projektu >>