OverTheWire – Bandit lvl 1-3

W poprzednim wpisie pokrótce opisałem, na czym polegają i jak się przygotowałem do rozwiązania wyzwań w serwisie OverTheWire Pierwsza seria wyzwań nazywa się Bandit i jak mówi nam jej opis jest przeznaczona dla zupełnie początkujących. Seria 27 zadań powoli pozwoli nam zapoznać się z podstawami pracy w środowisku Linuksowym w trybie tekstowym. Każdy z poziomów wymaga zalogowania się na serwer za pomocą SSH, w każdym zadaniu chodzi o zdobycie hasła do konta o level wyżej. Zabawę zaczynamy oczywiście na poziomie 0.

Podchodząc do rozwiązania tych zadań miałem już jakąś wiedzę dotyczącą powłoki bash i ogólnie Linuksa, jednak muszę przyznać że nie wszystkie zadania były dla mnie proste, co tym bardziej mnie ucieszyło ponieważ miałem okazję zdobyć kilka nowych umiejętności, a czas poświęcony na wertowanie dokumentacji poleceń na pewno jeszcze w przyszłości zaowocuje :). Trzeba pamiętać że do gier tego typu potrzeba przede wszystkim cierpliwości i samodyscypliny lepiej jest odłożyć jakieś zadanie, przejść się na spacer i wrócić do niego za jakiś czas, niż po chwili porażek sprawdzać rozwiązanie w internecie.

Czytając dalszą część tego wpisu możesz zepsuć sobie zabawę, dlatego polecam najpierw samemu rozwiązanie zadań a później ew. przeczytanie tego wpisu aby porównać rozwiązania.
Czytaj dalej

Wargames#00 – Wstęp

Jak zwykle wszystko zaczyna się od serfowania po sieci, przeglądając z tego co pamiętam YouTube trafiłem na dość ciekawy filmik opisujący zadania na stronie http://overthewire.org/wargames/ filmu nie obejrzałem do końca, chciałem dowiedzieć się czegoś o samej stronie.

Po przeczytaniu wstępu już wiedziałem z czym mam do czynienia, jest to zabawa typu Capture The Flag, podzielona na wiele poziomów trudności w przypadku wargames flagą jest hasło pozwalające przejść na poziom wyżej. Pomyślałem że jest to dość interesujący materiał, na tyle wręcz abym mógł dłużej nad tym posiedzieć i zrobić z tego serię wpisów stanowiących niejako Walkthrough dostępnych tam zadań.
W tym wpisie opiszę jak ustawiłem swoje środowisko z którego będę korzystał podczas zabawy. Czytaj dalej

Quick Tips #2 – Responsywny JavaScript

Dziś wszystkie strony jakie powstają powinny być „responsywne” i wyświetlać się poprawnie na wszystkich urządzeniach począwszy od telewizorów / telebimów a na telefonach skończywszy. Takie podejście w 2016 roku nie powinno nikogo dziwić, jednak co ze starymi projektami, no cóż trzeba je przepisać według nowych zasad. Właśnie podczas pracy nad nową wersją jednego z projektów, którym zajmuje się w pracy, przyszło mi zmierzyć się z koniecznością użycia różnego kodu JavaScript w zależności od aktualnych styli używanych przez twitter bootstrap. W tym poście chciałbym przedstawić pokrótce jak można to osiągnąć za pomocą biblioteki Responsive Bootstrap Toolkit. Czytaj dalej

Kod jaki jest każdy widzi

Zdaję sobie sprawę, że tytuł który jednocześnie jest parafrazą opisu konia z pierwszej polskiej encyklopedii może nie mówić wszystkiego. Wyjaśniając, kiedy mówimy o kodzie PHP (czy tez innym języku programowania) zazwyczaj automatycznie myślimy o jego składni, dostępnych narzędziach rozwiązaniach oraz łatwości rozwiązania problemu, który przed nami stoi, oczywiście nie ma w tym nic złego jeżeli piszemy szybkie narzędzie dla siebie wówczas sam pomysł na rozwiązanie problemu powinien wystarczyć. Czytaj dalej

One eternity later

Tytuł tego postu, mniej więcej opisuje czas jaki upłynął od mojej poprzedniej publikacji na blogu, ale do rzeczy choć wpis ten z założenia rzeczowy ma nie być. Od ostatniego wpisu na blogu minął ponad rok, w tym czasie wiele się zmieniło zarówno w samym PHP (mamy PHP 7, które osobiście uważam jest ogromnym krokiem naprzód). Niemałe zmiany przeszły również  frameworki PHP (Symfony 3.2 tuż tuż), dość duże zmiany zaszły również w moim osobistym warsztacie pracy 🙂  (po wielu zastanowieniach zacząłem wreszcie używać PhpStorm).  W świetle tego wszystkiego pomyślałem, że dobrym pomysłem będzie wznowienie pisania bloga.

Skoro wstęp mamy już za sobą to pora na trochę konkretów, jak na razie do głowy przychodzi mi coraz więcej tematów o których chciałbym i czuję się na siłach napisać. Czego więc można spodziewać się po najbliższych wpisach? Zapewne wszystkiego po trochu, główne serie które chciałbym regularnie kontynuować nie uległy zmianie, więc na warsztat raz jeszcze pójdzie próba napisania sensownego kursu/tutoriala/przewodnika po podstawach symfony. Ponadto chciałbym napisać trochę o aplikacjach hybrydowych na Androida, podstawy git i github a co do reszty czas pokaże. Jeszcze nie ustaliłem zasad na jakich miałbym wznowić działanie bloga, ale postaram się aby wpisy były jak najbardziej rzeczowe, wspomagane screenshotami / screencastami lub filmami video tak aby każdy wpis był zrozumiały dla możliwie najszerszego grona odbiorców.

Quick Tips #1 – Obsługa Eventu swipe

Jeżeli zastanawiałeś się kiedyś w jaki sposób za pomocą jQuery obsłużyć popularny gest z urządzeń mobilnych (przeciągnięcie palcem po ekranie) to na całe szczęście istnieje bardzo proste rozwiązanie.

Poniższy link jest efektem poszukiwań przed napisaniem czegoś własnego i w zupełności wystarczył na potrzeby projektu:

http://stephband.info/jquery.event.swipe/

Composer #1 – Wstęp

Jakiś czas się zastanawiałem nad sensownością tego wpisu. Composer to jedna z tych technologii która w mgnieniu oka zyskała wielką aprobatę środowiska programistycznego, dlatego też obawiałem się, że wpis dotyczący technologii która została po raz pierwszy udostępniona w 2012 roku może okazać się w ogóle bezużyteczny. Mam jednak nadzieję że nie do końca jest to prawdą i że wpis ten jednak komuś się przyda.

Tyle słowem wstępu, pierwszy wpis dotyczący Composera będzie czysto teoretyczny, następne powoli pokażą jakie możliwości ma to narzędzie i jak bardzo przydaje się nawet w najmniejszych projektach PHP.

Czytaj dalej