Wyrażenia regularne - co może pójść nie tak?

Ktoś kiedyś powiedział: Masz problem, użyj wyrażeń regularnych. Będziesz mieć dwa problemy. To po części prawda. Przynajmniej w niektórych przypadkach. Jako programiści powinniśmy być odpowiedzialni za to, co piszemy, za swój kod. Powinniśmy zatrzymać się i pomyśleć dwa razy o wszystkich możliwych przypadkach użycia swojego kodu. I mieć na to wszystko dowody, czyli testy. Dzisiaj chciałaby podzielić się z Tobą pewnym przypadkiem problemów z wyrażeniami regularnymi. Przypadkiem, gdzie brak dobrego przygotowania i sprawdzenia zaowocował błędem w aplikacji. W tym artykule nie będę poruszać podstaw dotyczących wyrażeń regularnych. Chcę pokazać na co warto zwrócić uwagę, korzystając z wyrażeń regularnych. …

Jak ustawić niestandardowy czas w przeglądarce dla testów aplikacji?

Nie przepadam za zmienianiem ustawień użytkownika, gdy wszystko działa dobrze. Tym razem potrzebowałam przetestować funkcjonalność, która wymagała zrobienia tego w różnych strefach czasowych. Znalazłam sposób by zrobić to bez zmiany moich standardowych ustawień. Pracuję w projekcie, gdzie używamy zewnętrznego API dla danych pogodowych, które później wyświetlamy użytkownikowi. Był tam pewien błąd z brakującymi wartościami dla konkretnych przedziałów czasowych. Gdy użytkownik prosił o dane z października, brakowało mu zawsze ostatniego dnia (31.10). Natomiast prosząc o dane z września wszystko działało poprawnie. Okazało się, że problem wynikał z przesunięcia czasu związanego z przejściem z czasu letniego (CEST) na czas zimowy (CET). W...…

Refaktoring w Ruby krok po kroku - część 2

Ostatnim razem w artykule Refactoring w Ruby krok po kroku - część 1 przeszłyśmy od kodu proceduralnego do kodu bardziej zorientowanego obiektowo. Tym razem będziemy kontynuować naszą podróż przez refaktoring. Będziemy mówić o małych obiektach zastępujących duże klasy, o kompozycji i o wstrzykiwaniu konkretnych zachowań do obiektów. Zaczynajmy! Krok 8 - Bardziej opisowe wyniki Ten krok zaczynamy od kodu i skupimy się na czytelności tej metody: def check return 9 if straight_flush? return 8 if four_of_a_kind? return 7 if full_house? return 6 if flush? return 5 if straight? return 4 if three_of_a_kind? return 3 if two_pair? return 2 if one_pair?...…

Refaktoring w Ruby krok po kroku - część 1

Dużo czasu minęło od mojego ostatniego artykułu technicznego. Przez ten czas próbowałam wielu nowych rzeczy. Założyłam blog Be more, który dotyczy moich przemyśleń na temat życia, Kanał Woman on Rails na YouTube i podróżniczy kanał na Vimeo. To był czas odkrywania, co sprawia mi przyjemność a co nie. Ale wracając do tematu. Do tego artykułu przygotowywałam się naprawdę długo. Może nawet za długo. Pomysł pojawił się już 2015 roku, a teraz możesz zobaczyć jego rezultaty. Zaczynajmy! Refaktoring jest jednym z moich ulubionych tematów. Uwielbiam porządki w prawdziwym życiu, ale też w kodzie źródłowym. Pracowałam i nadal pracuję nad aplikacjami internetowymi....…

Wroclove.rb 2018 - Krótkie podsumowanie

Ostatni raz uczestniczyłam w konferencji Wroclove.rb około 2-3 lata temu. Było to wtedy dla mnie dość smutne doświadczenie. Prawie każda prezentacja mówiła o tym, co jest nie tak z Ruby i Ruby on Rails. Niestety wtedy nikt nie pokazywał rozwiązań dla postawionych problemów. Wiem, że te prezentacje miały być dla nas takim dzwonkiem alarmowym. Miały nam powiedzieć: “Obudźcie się i zacznijcie działać!” Jednak wróciłam do domu po tamtej edycji dość przygnębiona. Tym razem było inaczej. Ludzie przyjechali z pomysłami, co możemy zrobić dalej. Jak możemy poprawić nasz kod pod względem architektury, tak by nawet duże projekty nie były problematyczne. Miło...…

Rozmowa kwalifikacyjna

Od jakiegoś czasu zajmuję się rozmowami kwalifikacyjnymi. Nie jestem osobą z HR. Jestem programistką. Moje zadanie, to sprawdzenie technicznych umiejętności kandydatów aplikujących do naszej firmy. Staram się dowiedzieć czy kandydatka lub kandydat pasuje do naszego zespołu technicznie, ale również pod względem osobowości i temperamentu. Podczas takiej rozmowy nie chodzi o bycie doskonałym. Raczej o bycie szczerym, bycie sobą. Celem jest sprawdzenie czy obie strony chcą podjąć współpracę. Zarówno kandydat jak i zespół powinni do siebie pasować. Dzisiaj chciałabym się podzielić z Wami elementami, na które ja zwracam uwagę podczas prowadzenia rozmowy kwalifikacyjnej. …