Pierwsza appka do CV prośba o feedback

Witam skończyłem pierwsza wersję mojej pierwszej większej aplikacji w ROR. Serwis pozwala na konwersje plików CSV z loggera vag/vcds do formy tabeli a potem udostępnianie ich.

link github
https://dajlogi.herokuapp.com/

Chciałbym zacząć wysyłać CV aby szukać pracy jako junior/staż, czy mając tylko jedną aplikację jak ta jest sens? Czy to jest za mało żeby rekruter zwrócił na CV uwagę? Jest jeszcze klika rzeczy które chce zrobić m.in. testy i rozbudować wyszukiwarkę.

Będę wdzięczy za odpowiedzi.

Rubocop będzie miał wiele podpowiedzi :slight_smile:

w ramach nauki zrobiłem dwie kolejne appki, feedback mile widziany

mikroblog - prosta apka mikrobloga, można dodawać posty/komentarze są tagi można obserwować, można podglądać kto obserwuje dany tag, powiadomienia o dodaniu posta/komentarza z obserwowanym tagiem, plusy i minusy link git, jak ktoś chce zobaczyć jak działa to można przy rejestracji email byle jaki podać nie ma weryfikacji

PriceStats - apka do obserwowania zmian cen w serwisie x-kom, na ten moment mam 25k przedmiotów w bazie będę dodawał następne, baza cen niestety mała bo dopiero co wrzuciłem na produkcję. Stoi na vps za 10zł, przy okazji nauczyłem się trochę o stawianiu serwera i pobawiłem się postgresem. git link na gicie podane jest testowe konto żeby zobaczyć jak to wygląda

Przejrzałem tylko drugą apkę i to pobieżnie, więc pewnie wielu rzeczy nie zauważyłem.

  1. Trzymaj się RESTa https://github.com/artur1313/PriceStats/blob/master/app/controllers/static_pages_controller.rb#L3
  2. before_action :authenticate_user! powinienes wrzucic do application_controller. Powtarzasz to w kazdym kontrolerze.
  3. Kontrolerów devise nie musisz mieć w app jeśli ich nie nadpisujesz
  4. Dodaj do gitignore pliki vcode
  5. Zdecydowanie unikaj callbacków. Trzeba wiedzieć kiedy ich używać, a kiedy nie.
    https://github.com/artur1313/PriceStats/blob/master/app/models/product.rb
  6. Model powinien zawierać wyłącznie relacje. Walidacje wynieś do np reforma.
  7. Model Product nie powinien zawierać metod takich jak set_values, update_params. Możesz to wrzucić do ServiceObject. Pomijając to, że te dwie metody mają maja praktycznie takie same ciało. Poczytaj o DRY.

Poza tym świetnie, że sam próbujesz i chcesz się uczyć.