niedziela, 7 maja 2017

Postownia cz. 10

Cześć,
dzisiaj 10 post o postępach w pracy nad portalem Postownia.

W tym tygodniu nie modyfikowałem kod, ani nie dodawałem żadnych nowych funkcjonalności. W tym tygodniu uczyłem się AngularJS. Tworzenie Postownii w obecnym wyglądzie (wykorzystując tylko JavaScript) uważam za zakończone. Teraz będę chciał przepisać wszystkie funkcjonalności na AngularJS. Będzie to moje pierwsze zetknięcie z tym frameworkiem.

AngularJS uczyłem się z tutoriala dostępnego na na oficjalnej stronie. Bardzo fajnie wprowadza on w tematykę frameworka oraz pokazuje sposób myślenia, jaki trzeba przyjąć, żeby stworzyć  to, co się chce. W tutorialu tworzymy portal o telefonach komórkowych. Pod względem funkcjonalności jest on podobny do Postownii. Dlatego na bieżąco porównywałem sposób tworzenia funkcjonalności w czystym JavaScripcie i AngularJS. Tworzenie aplikacji i stron internetowych w AngularJS jest o niebo prostsze niż w czystym JavaScripcie. Oczywiście nie odkryłem Ameryki, ponieważ po coś ten framework został stworzony. Jak patrzę okiem początkującego, to wydaje mi się, że przeniesienie Postownii na AngularJS będzie proste. Mogę się mylić, ale to wyjdzie w praniu.

Nowy tydzień zaczynam działaniem w Angularze.

Damian

sobota, 6 maja 2017

Wyszperane w Internecie cz. 10

Cześć,
dzisiaj 10 odsłona Wyszperane w Internecie. Dzisiaj będzie o wydarzeniu, na które wybieram się w najbliższym tygodniu.

Rzadko (zwłaszcza kiedy trwa konkurs DSP2017) chodzę na wydarzenia organizowane w Poznaniu, gdzie mieszkam na co dzień. Niestety doba jest za krótka. Ale zawsze staram się znaleźć czas, żeby pójść na kolejne wydarzenie organizowane przez Poznań Android Developer Group.

Zdjęcie użytkownika Poznań Android Developer Group.

Jest to grupa osób, która średnio raz w miesiącu organizuje spotkania na temat szeroko pojętego Androida. Są to na przykład zagadnienia związane z Javą i jej bibliotekami i frameworkami, beacony, uczenie maszynowe na telefonach komórkowych, czy wykorzystaniu niestandardowych języków programowania przy tworzeniu aplikacji mobilnych (LUA, Kotlin). Na każdym spotkaniu są po 3 prezentacje. Po nich następuje część networkingowa oraz poczęstunek. Link do wydarzenia znajdziecie tutaj.

Pewnie teraz sobie zadajecie pytanie, po co gość uczący się JavaScriptu idzie na spotkanie o Javie i Androidzie? To prawda, nie mam doświadczenia w Javie, oprócz projektów na studiach, ale idę tam po to, aby dowiedzieć się nowych rzeczy oraz nowinek, które kto wie, może będą wykorzystywane w mojej pracy. Myślę, że warto poznawać nowe rzeczy, nawet jeśli teraz nie mamy dla nich zastosowania. Zwłaszcza, że rynek mobilny przegania tradycyjny rynek desktopów i laptopów. Prędzej czy później każdy z IT zetknie się z Androidem i platformami mobilnymi, więc już teraz warto zdobywać tą wiedzę. To co dzisiaj jest nowinką, jutro jest standardem. Z drugiej strony można na spotkaniu poznać osoby, które są autentycznie podjarane Androidem. Lubię przebywać w towarzystwie osób, które mają fioła na jakimś punkcie. A już w szczególności jeśli to jest coś z IT.

Może nie każdy temat mnie zainteresuje, nie każdy mnie porwie. Ale półtorej godziny raz w miesiącu? Niech będzie :)

Damian

piątek, 28 kwietnia 2017

Postownia cz. 9

Witam w kolejnej odsłonie bloga poświęconej Postownii.

W tym tygodniu niestety nie za wiele udało mi się zrobić. Niestety brak czasu oraz wyjazd na majówkę w piątek nie pozwolił mi na zrobienie nowych funkcjonalności.

Udało mi się jedynie naprawić kilka bugów oraz dokonać oczyszczenia kodu z powtarzających się komend (podejście DRY). Teraz kod wygląda trochę lepiej (zwłaszcza ten odpowiadający za serwer).

Bugi natomiast pojawiały się w momencie, gdy użytkownik zakładał nowe konto i od razu chciał pisać posty. Po tej akcji nie wyświetlał się jego nick przy poście.Po prostu źle odwoływałem się do zawartości requesta. Ale już to poprawiłem i działa tak, jak miało działać.

Nie mam jeszcze planów, co do dalszych funkcjonalności. Pomyślę o nich, gdy wrócę z Majówki.

Życzę Wam udanej Majówki i wypoczynku!

Damian

poniedziałek, 24 kwietnia 2017

Wyszperane w Internecie cz. 9

Witajcie,
w dzisiejszym poście o rzeczach wyszperanych w Internecie pokażę Wam ciekawą stronę internetową, które pomoże Wam w nauce programowania, jeśli właśnie ją zaczynacie.

Ostatnio przeglądając blogi programistów natknąłem się na stronę FreeCodeCamp. Jest to jedna z wielu stron zawierająca kurs programowania online. Lecz to, co ją wyróżnia, jest przemyślenie materiału, jaki jest do przerobienia. Większość kursów (jak Codeacademy) zawiera zbiór tutoriali do różnych języków. Nie jest to połączone w żaden spójny ciąg. Inaczej sytuacja ma się na FreeCodeCamp. Jest on przygotowany w konwencji boot camp, to znaczy na początku poznajemy podstawy języka programowania oraz narzędzi. Stopniowo poznajemy coraz trudniejsze rzeczy, aż na końcu robimy własne projekty.

We FreeCodeCamp poznajemy podstawy takich języków jak Javascript, HTML, CSS, jQuery, Bootstrap, Ajax, Sass, React, node.js, express.js oraz wielu innych. Jest tego sporo, trzeba przyznać. Następnie zaczynamy tworzyć algorytmy i proste skrypty przechodząc powoli do małych projektów, Cały kurs trwa 2000h według twórców portalu. Najwięcej czasu, bo aż 800h zajmuje końcowy projekt nonprofit.

Portal oferuje certyfikaty poświadczające o ukończeniu danej części kursu - Front End, wizualizacja, Back End.

Wokół FreeCodeCamp zebrana jest całkiem duża społeczność osób uczących się jak i pomagających i odpowiadających na pytania uczestników "obozu". Portal ma własne forum chat, subreddit, kanał na YouTube, repozytorium na Githubie, Facebooka oraz Linkedin. Myślę, że nikt nie zostanie bez odpowiedzi. Trzeba tylko pewnie znać angielski, aby móc się komunikować. Jest to kolejna zaleta tego portalu.

Słowem zakończenia muszę przyznać, że żałuję, że poznałem ten portal tak późno. Podstaw programowania uczyłem się głównie ze stron typu Codeacademy, ale gdybym wiedział, że istnieje taka strona jak FreeCodeCamp, już dawno bym jej stałym bywalcem. Teraz się będę zastanawiał, czy po zakończeniu konkursu Daj się poznać, czy nie zacząć przechodzić tego kursu.

Chcesz zacząć kodzić - rób konto i zaczynaj kurs na obozie! Nie będziesz żałować, bo na prawdę wygląda nieźle i jest zrobione w przemyślany sposób.

Zdecydowanie polecam. 13/10

Damian

Ps Znalazłem na wykopie wpis jednego z użytkowników, który skończył "obóz". Łapcie link. Może Wam bardziej pomoże podjąć decyzję, czy warto.

niedziela, 23 kwietnia 2017

Postownia cz. 8

Witajcie w napisanym na ostatnią chwilę poście o Postownii.

W tym tygodniu dodałem funkcjonalność, bez której nie może się obyć żaden portal zawierający posty - uprawnienia użytkowników.

Wszyscy znamy te sytuacja, gdy wchodzący na artykuły na najpopularniejszych portalach informacyjnych widzimy pod nimi komentarze oraz komunikaty Post został usunięty przez moderację.

Podobną funkcjonalność zaimplementowałem w Postownii.

Są 2 typy użytkowników - user oraz admin. User może tylko dodawać oraz usuwać posty (ale tylko swoje). Admin może dodawać posty, usunąć jakikolwiek post oraz modyfikować uprawnienia innych użytkowników.
Użytkownik o uprawnieniach admin po zalogowaniu widzi pod postami i polem do dania posta nowy przycisk.
Widoczny przycisk zmiany uprawnień

Klikając w Change permissions użytkownik przenoszony jest na nowy widok.
Widok zmiany uprawnień
Jestem zalogowany na użytkowniku Damian, dlatego nie mogę sobie samemu ustawić uprawnień typu user. Jest to zabezpieczenie przed tym, że portal zostanie bez administratorów. Natomiast klikając w przycisk Change przy danym nicku zmieniamy uprawnienia przeciwne do tych, jakie posiada obecnie. Dzięki temu możemy płynnie zmieniać uprawnienia użytkowników.

Poprawka jest dodane na Github. Testujcie kod i dzielcie się wrażeniami w komentarzach.

Damian

sobota, 22 kwietnia 2017

Wyszperane w Internecie cz. 8

Cześć,

dzisiaj kolejna rzecz, którą znalazłem w Internecie. A znalazłem całkiem ciekawą stronę, szczególnie dla front-endowców.

Strona nazywa się Polski Front-End. Zbiera ona najnowsze posty z blogów dotyczących front-endu. Tak więc jesteśmy zawsze na bieżąco z informacjami. Możemy również sami zgłaszać blogi, jakie pojawią się na stronie. Jeśli administracja uzna, że blog powinien się pojawić, to się tam pojawi.

Strona jest o tyle świetna, że możemy swój blog rozpropagować, żebyśmy mieli więcej wejść i większą publiczność. A także być na bieżąco z najnowszymi informacjami.

Serdecznie polecam!

Damian

sobota, 15 kwietnia 2017

Postownia cz. 7

Cześć,

tutaj wielkanocny post o Postownii. A więc co zrobiłem w tym tygodniu w projekcie?

W dalszym ciągu rozwijam funkcjonalność uprawnień. Od tej pory każdy użytkownik, który założy sobie konto, automatycznie dostaje uprawnienia zwykłego użytkownika. Tak jak to jest na każdym portalu. Administrator z kolei może usuwać posty wszystkich użytkowników.
Widok Postownii z poziomu administratora


Tak jak widzicie powyżej, zalogowałem się na konto mające uprawnienia administratora i mogę usunąć wszystkie posty, ale edytować mogę tylko swoje. Również tutaj musiałem zastosować podwójny mechanizm weryfikacji użytkownika. Pierwszym jest wyświetlanie tylko administratorowi wszystkich przycisków Delete, a drugim weryfikacja na serwerze, czy faktycznie użytkownik ma odpowiednie uprawnienia. Dzięki temu nikt niepowołany nie usunie wszystkich postów.

W przyszłym tygodniu chcę dodać stronę, gdzie administrator może edytować uprawnienia innych użytkowników.

Wesołych Świąt Wielkiej Nocy AD 2017

Damian