Poprawki do repo

Wątek przeniesiony 2023-03-06 15:44 z Python przez kq.

PY
PY
  • Rejestracja:ponad 2 lata
  • Ostatnio:około 2 lata
  • Postów:9
0

Dzień dobry.
Byłby ktoś tak łaskaw i rzucił okiem na moje repo, i powiedział co jest do poprawy. Zrobiłem tak ostatnio na facebooku i wszyscy się śmiali. Najbardziej interesuje mnie myshop_project.
https://github.com/tomikoder
God bless

TS
  • Rejestracja:ponad 5 lat
  • Ostatnio:około 3 godziny
  • Postów:853
0

Z czego konkretnie się śniali?

PY
PY
  • Rejestracja:ponad 2 lata
  • Ostatnio:około 2 lata
  • Postów:9
0

Że jest jakiś straszny bajzel, już sam nie pamiętam. Że coś tam w kodzie w Django jest napisane niezgodnie z jakimiś standardami, commity są nazwane commit1 itd. Jakiś koleś napisał mi jakiś elaborat, w którym wszystko wypunktował, i powiedział, że to g**no. Niestety post skasowałem, bo miałem dość hejterów. Dlatego proszę was o pomoc czy coś w tym jest. Jeszcze proszę o zerknięcie na mój projekt. Nie zajmuje się frontem więc nie skaluje się dobrze do urządzeń mobilnych.
https://tomekj344.pl/

Jeszcze zapytam czy serio pracodawcy przywiązują taką wielką rolę do tego jak coś jest poukładane w repo ? Czy to trochę nie przesada. Wystarczy mi powiedzieć w 5 minut jak mam coś robić, bo nie miałem pojęcia, bo nigdy nie pracowałem komercyjnie.

edytowany 3x, ostatnio: pythonowiec
SW
Skoro ktoś wypunktował błędy, to znaczy że chciało mu się zapoznawać. Gdybyś załączył link do repo do CV to nie dostałbyś nawet tyle odpowiedzi. Poza tym z krytyką trzeba sobie radzić. W czasie code review ktoś w firmie może zjechać Twój kod i trzeba z tym żyć :)
Spine
  • Rejestracja:prawie 22 lata
  • Ostatnio:około godziny
  • Postów:6630
0

Jakieś odstepy/paddingi koniecznie trzeba dodać:

screenshot-20230305112952.png

  • Linki trochę w dół od niebieskiej belki.
  • Ikonki linków zbyt blisko tekstu.

Coś się rozjechało (link więcej nachodzi na linię):

screenshot-20230305112857.png


🕹️⌨️🖥️🖱️🎮
edytowany 3x, ostatnio: Spine
PY
PY
  • Rejestracja:ponad 2 lata
  • Ostatnio:około 2 lata
  • Postów:9
0

Dzięki za opinie, ale mnie front nic a nic nie obchodzi. Mnie ciekawi back-end. Pisanie tego w Boostrapie uważałem za mękę i było bardzo nudne.

edytowany 2x, ostatnio: pythonowiec
Spine
  • Rejestracja:prawie 22 lata
  • Ostatnio:około godziny
  • Postów:6630
3

https://github.com/tomikoder/myshop_project/blob/master/myshoop/pages/models.py

Kopiuj
class Book_Review(models.Model):
    html1 = """<p id="%s"><span class="font-weight-bold">Data:</span> %s</p>\n<p><span class="font-weight-bold">Autor:</span>  %s %s</p>\n<h5 class="title">%s</h5>\n<p class"subject">%s</p>\n<p class='pb-6'><small>%s uznało tę recenzję za przydatną.</small>&nbsp;<small><a href="#%s">Link</a></small><hr></p>"""
    html2 = """<p id="%s"><span class="font-weight-bold">Data:</span> %s</p>\n<p><span class="font-weight-bold">Autor:</span>  %s %s</p>\n<h5 class="title">%s</h5>\n<p class"subject">%s</p>\n<p class="index d-flex" index="%s"><a href='' id='report'>Zgłoś</a>&nbsp;&nbsp;<a href='' id='like_review' isliked="0">Polub</a><i class="far fa-thumbs-up pt-1" style="color: Dodgerblue;"></i><small class="ml-auto"></p>\n<p class='pb-6'>%s uznało tę recenzję za przydatną.</small>&nbsp;<small><a href="#%s">Link</a></small><hr></p>"""
    html3 = """<p id="%s"><span class="font-weight-bold">Data:</span> %s</p>\n<p><span class="font-weight-bold">Autor:</span>  %s %s</p>\n<h5 class="title">%s</h5>\n<p class"subject">%s</p>\n<p class="index d-flex" index="%s"><a href='' id='report'>Zgłoś</a>&nbsp;&nbsp;<a href="" id='like_review' isliked="1">Lubisz</a><i class="fas fa-thumbs-up pt-1" style="color: Dodgerblue";></i><small class="ml-auto"></p>\n<p class='pb-6'><span class=rev_num_likes>%s</span> uznało tę recenzję za przydatną.&nbsp;<a href="#%s">Link</a></small><hr></p>"""
    html4 = """<p id="%s"><span class="font-weight-bold">Data:</span> %s</p>\n<p><span class="font-weight-bold">Autor:</span>  %s %s</p>\n<h5 class="title">%s</h5>\n<p class"subject">%s</p>\n<p class="index d-flex" index="%s"><a href="" id="remove">Usuń</a>&nbsp;&nbsp;<a href="" id="edit">Edytuj</a></p>\n<p class='pb-6'><small>%s uznało tę recenzję za przydatną.</small>&nbsp;<small><a href="#%s">Link</a></small><hr></p>"""

Do takich rzeczy pisze się plik CSS i szablony. Nie pakuje się czegoś takiego do kodu aplikacji.

Poza tym słusznie zwrócili Ci uwagę na to jak masz poukładane w repo:

Jeszcze zapytam czy serio pracodawcy przywiązują taką wielką rolę do tego jak coś jest poukładane w repo ? Czy to trochę nie przesada. Wystarczy mi powiedzieć w 5 minut jak mam coś robić, bo nie miałem pojęcia, bo nigdy nie pracowałem komercyjnie.

Pracujesz nad projektem z innymi ludźmi. Oni nie wiedzą co siedzi w Twojej głowie. Musisz nazywać commity tak jak chciałbyś, żeby inni współpracownicy je nazywali, a nie: Parę zmian, Mały bug., Dodałem parę rzeczy., Dodałem parę katalogów..

Dzięki za opinie, ale mnie front nic a nic nie obchodzi. Mnie ciekawi back-end.

Powinien Cię obchodzić. Lekarz potrafi zrobić zastrzyk, pomimo tego, że zazwyczaj zleca pielęgniarce wykonanie go.


🕹️⌨️🖥️🖱️🎮
edytowany 5x, ostatnio: Spine
PY
PY
  • Rejestracja:ponad 2 lata
  • Ostatnio:około 2 lata
  • Postów:9
0

Ja się tak bawiłem kodem. Gdybym pracował z ludźmi to bym wiedział ;) Front dostarcza swój kod i ja go tylko łącze z backendem i tyle. Tych commitów już nie naprawię bo nie chce mi się sprawdzać, co robiłem XD. Poza tym to nie jest jakiś skomplikowany projekt. Dzięki za merytoryczną opinię. Ale jak na pierwszy projekt w backend jak to wygląda ? Ma proste full tex search, API z Ajaxami, modale.

edytowany 4x, ostatnio: pythonowiec
DR
W promilu. Zazwyczaj i tak trzeba być fullstackiem
PY
pythonowiec
Ale w tym sensie, że ja znam html i wiem co oznaczają różne tagi, i wiem co znimi robić. Ale układ strony, grafikę, robią frontowcy chyba ?
DR
Teraz raczej zatrudnia się one man army. Czyli, że znasz np. react/Vue/angular
PY
pythonowiec
To jeżeli chodzi o front to takie JS to też to jest raczej pisania skryptów, jeżeli chodzi o to to mogę to robić. Ale nie grafiką. Grafiką zajmują się raczej wyspecjalizowani ludzie.
TS
  • Rejestracja:ponad 5 lat
  • Ostatnio:około 3 godziny
  • Postów:853
1

Zszywasz pacjentowi dłoń i się go pytasz: „wiem, że trochę krzywo i w ogóle, ale jak na pierwsze szycie to jak to wygląda?”

Spine
  • Rejestracja:prawie 22 lata
  • Ostatnio:około godziny
  • Postów:6630
1

No właśnie... My tu mamy oceniać jak powinien wyglądać projekt ostatecznie, a nie klepać Cię po plecach i mówić "dobra robota jak na pierwszy raz, następny projekt magicznie będzie lepszy".


🕹️⌨️🖥️🖱️🎮
PY
PY
  • Rejestracja:ponad 2 lata
  • Ostatnio:około 2 lata
  • Postów:9
0

A nie wystarczy jako jakieś demo, by pokazać np że umiem Django, bazy danych, API JS. Nie wiem czego oczekiwać od juniora. Jestem bardzo ciekaw. Na tym projekcie szlifowałem umiejętności, robiłem go kompletnie sam. Jakbym coś napisał w pracy to wystarczyło by ktoś zrecenzował to i bym zrobiłbym poprawki.

twoj_stary_pijany napisał(a):

Zszywasz pacjentowi dłoń i się go pytasz: „wiem, że trochę krzywo i w ogóle, ale jak na pierwsze szycie to jak to wygląda?”

Mówisz o układzie strony ? Od backenda nie wymaga się takich rzeczy. Bardziej od full stack developera, do którego nie aspiruje. Ja UI nie znoszę, mogę napisać skrypty coś wymagającego logikę, ale nic z wyglądem. To nie są jakieś wielkie rzeczy. Kod aplikacji działa poprawnie. Rozumiem, ze ważny się porządek. Ja zawsze staram się pisać kod prosto.

edytowany 6x, ostatnio: pythonowiec
Zobacz pozostałe 9 komentarzy
PY
pythonowiec
To proste rzeczy, nie tak trudne jak uczenie się języka programomania, czy algorytmów, które przerabiałem. Wystarczy mi powiedzieć że tak się nie robi to nie będę tak robić. Studiów nie skończyłem uczyłem się z książek.
Spine
Jeśli przy ChessException_4 nie zaświtało Ci, żeby nadawać wyjątkom coś mówiące nazwy, to słabo...
PY
pythonowiec
Ja zrobiłem takiego myka, że nadałem każemu errorowi nr i umieściłem na górze dict by lepiej się czytało. Ale jak zle to zle XD., Ale reszta kodu OK ?
Spine
Czy to się lepiej czyta? raise ChessException_2(possible_errors[2]), czy może raise WrongColorException. Przecież wyjątek może zawierać informację w polu message. Tu masz przykład: https://www.programiz.com/python-programming/online-compiler/?ref=e5ccbcaf
PY
pythonowiec
Mi się dobrze czytało, przewijam na górę i patrze numerek w dict, i wiem, ale czgoś takiego nie zrobiłbym w produkcji oczywiście. Ja tak zrobiłem by ktoś kto czyta ten kod mógłby wygodniej załapać co oznacza, ale może się myliłem.
Spine
  • Rejestracja:prawie 22 lata
  • Ostatnio:około godziny
  • Postów:6630
0

Junior tylko z nazwy brzmi delikatnie. W praktyce powinien być na tyle ogarnięty, żeby wykonywać powtarzalne taski za seniora...

Jakbym coś napisał w pracy to wystarczyło by ktoś zrecenzował to i bym zrobiłbym poprawki.

Jak będziesz pracował nad projektem, to Twój współpracownik nie będzie połowy dnia spędzał na recenzowaniu Twoich poczynań.
Musisz sam zdobyć jakąś wstępną wiedzę. Mniej się liczy efekt, czy rozległość systemu nad którym pracujesz, a bardziej sposób w jaki wykonujesz swoje zadania.
Bo każdy początkujący jest w stanie nabazgrać większy system, nad którym nie da się sprawnie pracować na dłuższą metę.
Dobrych praktyk nie nabędziesz w jeden tydzień i na Twoje miejsce juniora znajdzie się masa ludzi, którzy mają mniejsze braki.


🕹️⌨️🖥️🖱️🎮
TS
  • Rejestracja:ponad 5 lat
  • Ostatnio:około 3 godziny
  • Postów:853
7

Pytasz czy to co pokazałeś wystarczyło by na juniora? Technicznie: może.

Ale prawdopodobnie odsiałbym Cię na umiejętnościach miękkich za te agresywne teksty w stylu "Rozumiesz?" albo "Powiedz mi skąd ja mam to wiedzieć ?". Miałem takich juniorów, nigdy więcej.

PY
pythonowiec
Przepraszam jeżeli Cie obraziłem. Napisz mi co jest złe, z Githuba spróbuję naprawić co się da. Ale powtórzę ja aspirację do stażu, uczyłem się sam, nie miałem styczności z środowiskiem programistycznym i nie znam takich rzeczy. Kod staram się pisać prosto i myślę że potrafię to robić, ale repo to dla mnie tylko służy do wrzucana do neta i by ktoś zobaczył sobie kod. Spróbuję to naprawić.
PY
pythonowiec
Mimo wszystko to są dość proste rzeczy, i nie będę tak robić więcej.
TS
Napisałem Ci co robisz źle. Nie potrafisz przyjmować feedbacku. Reagujesz agresją. Popracuj nad komunikacją.
PY
pythonowiec
Nie reaguję agresją. Mówię tylko, że jestem w tych rzeczach laikiem i mam prawo tego nie wiedzieć. To drobne rzeczy , nie ma sensu z nich robić afery. Napisz mi listę co jest zle. Nazwy komiitów może poprawie.
PY
pythonowiec
Peace
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:około 3 godziny
  • Postów:8406
2

https://github.com/tomikoder/simple_test_web_app_PYTHON

  1. zacommitowałeś i ujawniłeś hasło, tak się nie powinno robić. Nawet jak to jakaś testowa baza, to po czymś takim będziesz raczej spalony na rekrutacji, jak ktoś to zauważy.
  2. commity są po polsku. Powinny być po angielsku, bo nie każdy programista musi być Polakiem

edytowany 1x, ostatnio: LukeJL
kq
To serio przekreśla kandydata na juniora? Dla mnie to raczej błąd którego bym się spodziewał od ludzi na początku ścieżki zawodowej, który należy korygować ale tylko tyle i aż tyle.
Althorion
Ode mnie na juniora wymagali cudów na kiju, więc… 🤷 Powiedziałbym, że tak.
PY
PY
  • Rejestracja:ponad 2 lata
  • Ostatnio:około 2 lata
  • Postów:9
0

Wiem, że czegoś takiego nie wolno , w sklepie internetowym czegoś takiego nie zrobiłem. XD Ten projekt to taka prosta aplikacja w starym stylu robiona bez webowych framerwoków.

@Spine
@twoj_stary_pijany
Spine stary mnie olał. Napiszesz mi krótko zwięźlo wypunktowaną listę co do poprawek. Dzięki.

edytowany 3x, ostatnio: pythonowiec
TS
Spine stary mnie olał - nie olaliśmy Cię. Po prostu nie potrafisz pogodzić się z feedbackiem. Ale spokojnie, kilka razy się przejedziesz to może wrócisz do tego wątku i weźmiesz sobie do serca to co tutaj zostawiliśmy.
PY
pythonowiec
Do po co proszę Cie abyś napisał mi listę do poprawek ? Fora internetowe powinny być zabronione. Napisz zwięźlo listę i poprawię to.
Spine
  • Rejestracja:prawie 22 lata
  • Ostatnio:około godziny
  • Postów:6630
1
pythonowiec napisał(a):

Spine stary mnie olał. Napiszesz mi krótko zwięźlo wypunktowaną listę co do poprawek. Dzięki.

A co ja Twoja sekretarka?
Wypisz sobie na podstawie postów z tego wątku...


🕹️⌨️🖥️🖱️🎮
PY
pythonowiec
XD Czyli commity mają jasno określać co znaczą. Treść html nie powinan być w logice aplikacji. Coś jeszcze ?
PY
pythonowiec
Czyli to takie straszne błędy by mieszać kogoś z gównem.
Ryan_1975
  • Rejestracja:ponad 2 lata
  • Ostatnio:około 9 godzin
  • Postów:24
5

Zauważyłem tutaj przynajmniej 3 tematy:

  1. Prawdopodobnie jesteś młody i nie pracowałeś nigdy w IT albo się jeszcze nie przejechałeś oraz zachowujesz się dosyć dziecinnie.

Ktoś kilka wpisów wyżej próbuje Ci pisać naprawdę wartościowe rady i poświęca na to czas. W tym momencie Ty to olewasz oraz piszesz "tak, tak" i potem tego nie naprawiasz. Podsumowując: dostajesz radę, a następnie mówisz, że nie będziesz tego robił i znowu to robisz. W przypadku gdybyś sam się utrzymywał i to byłaby Twoja jedyna praca to za drugim razie Cię wyrzucają z roboty i się z Tobą nie bawią, a te teksty w stylu "Peace" to możesz zachować dla znajomych z ławki w szkole.
Fora nie powinny być zabronione. Jak sam widzisz na FB miałeś problem i przyszedłeś tutaj. Teraz znowu powtarza się ta sama sytuacja.
Czy problemem są ludzie z FB oraz my czy jednak Ty? Jeśli kilka osób mówi Ci gdzie leży problem, a Ty to zbijasz i znowu jesteś uparty to może Ci być ciężko w dalszym życiu.

  1. Chcesz się dostać na staż i zrobiłeś repozytorium, żeby tylko było.

Zadziwię Cię, ale repozytoriów nie robi się po to, żeby się pochwalić. Tworzy się je, żeby pokazać jakie masz nawyki w pracy. Prawdopodobnie jak trafisz do normalnej pracy też będą tam korzystać z GitHuba i nie będzie czasu na zgadywanie co autor commita miał na myśli. Zapewne HR Cię prześwietli zerknie tylko czy jest GitHub i odpali sobie Twoją przykładową stronkę. Spojrzy i powie: "xD". Aktualnie jest masa stron oraz narzędzi, która robi ładny front automatycznie. Rozumiem, że dla Ciebie liczy się backend i robisz front jako dodatek, ale tu też chodzi o podejście do pracy. Potem ktoś techniczny spojrzy na to repozytorium i widzi, że coś było robione na szybko tylko po to, żeby się załapać na staż.

Ponownie wracamy do tematu wiesz, że czegoś się nie robi, a to robisz. Mówię tutaj o commicie hasła. Myślisz, że na produkcji też sobie tak strzelisz? Prawdopodobnie w najgorszym scenariuszu załapiesz się na incydent bezpieczeństwa i Cię zwolnią albo będziesz mieć nieprzyjemności prawne z tego powodu. Dlatego ważne jest, żeby już na początku stosować dobre praktyki. To nie jest tak, że teraz robisz tak sobie, a potem będzie pięknie. Poczytaj sobie teraz o BFG Repo-Cleaner.

  1. Masz nadzieje, że ktoś bardziej doświadczony da Ci listę co zrobiłeś źle, a Ty to poprawisz i wystarczy na staż.

Świat tak niestety nie działa. Robienie byle jak tego co Ci ktoś każe dobrej przyszłości nie wróży. To jest klasyczny przypadek szkolny.
Wystarczyłoby kilka dni więcej i to wyglądałoby jak porządny sklep, ale prościej powiedzieć, że gość od frontu to zrobi.
Lepiej jakbyś zrobił jeden projekt porządnie niż cztery słabe.

@twoj_stary_pijany: Podziwiam za cierpliwość.

PY
pythonowiec
Rozumiem to. Gdybym ja spotkał kogoś kto jest dobrym programistą, a ma bałagan w repo, to bym mu powiedział zrób porządek w repo, i wziąłbym go na starz. Wkurzają mnie takie komentarze jak twoje. Wystarczy napisać bez spiny co jest zle.
PY
pythonowiec
Ja się tylko tłumacze dlaczego tak robiłem, bo nigdy nie pracowałem zawodowo w IT. Teraz już wiem że tak się nie robi, bo nie którzy pracodawcy to jacyś perfekcjoniści i upierdalają na bzdetach, zamiast powiedzieć jest Ok ale nie rób tak.
Spine
Na kursie na prawo jazdy możesz popełniać błędy i instruktor nie przerywa szkolenia. Ale na egzaminie masz jechać tak jak byś jechał bez egzaminatora i nie zdasz jeśli zrobisz coś nie tak. Dla własnego dobra i dla dobra innych uczestników ruchu wracasz na przeszkolenie.
PY
pythonowiec
Staż to kurs XD Tego właśnie chce. Kod potrafię pisać prosto i logicznie, jak sam widziałeś pewnie w aplikacji szachowej, a to chyba jest ważniejsze od jakiegoś repo.
Eldorad O.
  • Rejestracja:około 6 lat
  • Ostatnio:6 dni
  • Postów:517
0

@pythonowiec: Widziałem komentarz tego kolesia. Opisał ci bardzo dokładnie co jest nie tak z twoim repo,
nie pamiętam żeby użył słowa "g**no", ale jeżeli tak zrobił to było to faktycznie zbędne. Niemniej nie rozumiem
dlaczego nie zastosowałeś się do jego rad.
Poza tym, dajesz swoje repo do recenzji, ale na krytykę - nie mówię tu o bezsensownej krytyce, tylko konstruktywnej - reagujesz jak na atak
zamiast przyjąć porady i się do nich zastosować.
Tak, ludzie patrzą na jakość pisanego kodu, co z tego że zakodujesz super-hiper-ultra wymyślny kod skoro będzie on
totalnie nieczytelny i nieutrzymywalny?

edytowany 1x, ostatnio: Eldorad O.
PY
PY
  • Rejestracja:ponad 2 lata
  • Ostatnio:około 2 lata
  • Postów:9
0

Ja tylko tłumaczę że nie wiedziałem, że tak się nie robi. XD To są drobne rzeczy. Sam kod jest dość dobrze napisany.

edytowany 1x, ostatnio: pythonowiec
Eldorad O.
  • Rejestracja:około 6 lat
  • Ostatnio:6 dni
  • Postów:517
1

@pythonowiec: Po to pytasz o radę innych, aby dowiedzieć się rzeczy o których nie wiedziałeś, nie musisz
się z tego tłumaczyć.

Zobacz pozostałe 15 komentarzy
PY
pythonowiec
Jak umie się dobrze pisać kod i ma się dobre praktyki to język nie ma znacznia.
K5
No fajnie, powtarzasz zasłyszane frazesy - które są prawda. Ale te frazesy nie dadzą Ci pierwszej pracy w branży. ps w Polsce język ma znaczenie - przy fakturze która wystawiasz co miesiąc.
EH
@kixe52: jakbym miał dziś zaczynać to nie polecam. Tzn w innych językach szybciej zarobi się więcej. Poszedł bym w js, node i jakiś framework frontowy tak by być fullstackiem ale bez potrzeby uczenia się wielu języków na początku.
serek
@kixe52: też nie polecam zaczynać w tym, kasa dużo słabsza :P No chyba że się już sporo w tym kodzi i nie ciągnie do innych języków. W PHP dobry senior ma 100zł/h, czyli tyle ile mid w innych językach może dostać :P
EH
@serek: nie no dobry senior ma 120-130, ale architekt/tech lead ledwo 150.
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:około 3 godziny
  • Postów:8406
1

Jeszcze zapytam czy serio pracodawcy przywiązują taką wielką rolę do tego
...
Ja się tak bawiłem kodem. Gdybym pracował z ludźmi to bym wiedział

Protip: jeśli chcesz pracować z ludźmi, to zachowuj się tak, jakbyś już pracował.
Chcesz być profesjonalnym programistą, to stosuj profesjonalne praktyki.

Czyli "dress for the job you want not the job you have".

Dzięki za opinie, ale mnie front nic a nic nie obchodzi. Mnie ciekawi back-end. Pisanie tego w Boostrapie uważałem za mękę i było bardzo nudne.

Jak front cię nie obchodzi, to po co go piszesz? Przecież można zrobić projekt na backendzie bez frontendu. Np. mógłbyś zrobić jakieś API, które by tylko wystawiało JSON zamiast tworzyć widoki w HTML.

Ale o ile rozumiem, że można mieć preferencje (w szczególności to twoje projekty, więc możesz sobie je robić jak chcesz, nawet z byle jakim frontendem), to rzucanie tekstów front nic a nic nie obchodzi. Mnie ciekawi back-end. Pisanie tego w Boostrapie uważałem za mękę i było bardzo nudne. jest nieprofesjonalne i o ile tu na forum sobie tylko luźno dyskutujemy, to jak rzucisz taki tekst na rozmowie to co pokażesz? To, że możesz być konfliktowy. W profesjonalnej pracy często trzeba się komunikować z innymi ludźmi i właśnie ma cię obchodzić wszystko i nic nie powinno być nudne, bo nawet jeśli to nie ty będziesz pisać ten frontend, to możliwe że będziesz musiał o tym dyskutować z innymi i komunikować się z osobami, które to robią.


edytowany 3x, ostatnio: LukeJL
PY
pythonowiec
To co mówisz to jakiś absurd. Idziesz to pracy pierwszego dnia i masz wszystko wiedzieć ?
LukeJL
Przeczytaj jeszcze raz to, co napisałem. Nie masz wszystkiego wiedzieć, tylko powinno cię obchodzić wszystko i nic nie powinno być nudne. Chodzi o aktywną postawę, a nie o wiedzenie wszystkiego.
LukeJL
Np. co najmniej kilka godzin w tygodniu będziesz spędzać na spotkaniach i jeśli obchodzi cię tylko twoja działka, to przez większość czasu nie masz pojęcia o czym będą mówić i będziesz się nudzić na tych spotkaniach. Podobnie jak będziesz współpracować z frontendowcem, to też musisz starać się zrozumieć, czego mu trzeba. Empatia i współpraca to ważne skille miękkie w tym zawodzie
K5
  • Rejestracja:około 6 lat
  • Ostatnio:około 12 godzin
  • Postów:1002
2
pythonowiec napisał(a):

Ja się tylko tłumacze dlaczego tak robiłem, bo nigdy nie pracowałem zawodowo w IT. Teraz już wiem że tak się nie robi, bo nie którzy pracodawcy to jacyś perfekcjoniści i upierdalają na bzdetach, zamiast powiedzieć jest Ok ale nie rób tak.

Nikt Ci tak nie odpowie. Razem z twoją aplikacja dostanie 50 innych, lepszych. Jak myślisz, kogo odrzuci? Dostaniesz feedback że nie spełniasz wymogów i tyle.

Jak przeczytałem Twoje słowa ze usunales post na FB bo masz dość hejterow to aż się zaśmiałem. Czyli co, postujesz swój kod publicznie, prosisz obcych o krytykę a jak się okazuje że jesteś na poziomie maks stażysty to tupiesz noga, usuwasz wątek i idziesz na inne forum (tutaj) licząc że poklepiemy Cie po plecach?

Schowaj swoje ego do kieszeni, zastosuj się do rad uzyskanych tutaj i na FB (sięgnij do pamięci) i zmień swoje podejście.

A jak nie chcesz pracować z frontem to następnym razem nie rób repo z UI tylko samo REST API (skoro webówka)

edytowany 2x, ostatnio: kixe52
Zobacz pozostałe 48 komentarzy
PY
pythonowiec
W Pythonie nie ma chyba tak dużo tych sztuczek, nazywa się je chyba ficzer ? Wybaczcie jeżeli się myle, bo nie siedzę profesjonalnie w branży.
Eldorad O.
Powtarzam po raz 10, krótszy kod nie zawsze oznacza czytelność.
Althorion
@pythonowiec: pokażę Ci kod. Bardzo krótki: x = a^((a^b)&-(b<a)). Nie musisz mi odpowiadać, ale zastanów się, co ten kod robi i czy jest poprawny — tzn. czy istnieją takie dane wejściowe, że nie zadziała. Policz, ile sekund czy minut Ci to zajmie. A potem zastanów, czy jakby napisać to normalnie, to nie byłoby jaśniej.
PY
pythonowiec
@Althorion: Wiem co ten kod robi. To są binarny operacje na liczbach chyba. Jak wiesz co to są binarne operacje to nie masz problemu ze zrozumieniem.
Althorion
Dobrze. Co konkretnie ten kod robi, i ile zajęło Ci dojście do tego? Czy są przykłady danych wejściowych, dla których nie zadziała? Ile zajęłoby Ci napisanie alternatywnej implementacji? Ile zajęłoby Ci zrozumienie alternatywnej implementacji?
TS
  • Rejestracja:ponad 5 lat
  • Ostatnio:około 3 godziny
  • Postów:853
8

@pythonowiec

My nie jesteśmy w stanie wskazać żadnych technicznych mankamentów w kodzie bo Twój kod jest po prostu świetny. Twoje podejście do pracy i feedbacku jest podręcznikowe. Rób dalej to co robisz. Good job :)

TS
Kto jest następny w kolejce?
PY
pythonowiec
Jeżeli mój kod sprawia takie problemy to nie wiem czy dasz rade przeczytać kod do quicksort.
PY
PY
  • Rejestracja:ponad 2 lata
  • Ostatnio:około 2 lata
  • Postów:9
0
twoj_stary_pijany napisał(a):

@pythonowiec

My nie jesteśmy w stanie wskazać żadnych technicznych mankamentów w kodzie bo Twój kod jest po prostu świetny. Twoje podejście do pracy i feedbacku jest podręcznikowe. Rób dalej to co robisz. Good job :)

Co powiesz na challenge? Napisz mi w prostych słowach jak działa quicksort.

Zobacz pozostałe 20 komentarzy
PY
pythonowiec
Wiem, że ty chyba nie wiesz jak działa quicksort więc się nie mądrz.
PY
pythonowiec
To, że sobie klepiesz jakiś g**no kod w jakieś firemce to nie ,że jesteś wielkim programistą.
TS
Kto powiedział, że jestem wielkim programistą i, że piszę kod, który nie jest gównem, bo chyba nie ja? Idę piwko walnąć i lulu bo jutro mam priorytetowych klientów, którzy płacą gażę.
WeiXiao
Co powiesz na challenge? Napisz mi w prostych słowach jak działa quicksort. wtf?
K5
@WeiXiao: Dzieciak ma urażoną dumę bo najpierw na fb a potem tutaj dowiedział się, że jego kod nie jest taki bliski ideału jak myślał.
LB
  • Rejestracja:ponad 7 lat
  • Ostatnio:4 dni
  • Postów:74
1
pythonowiec napisał(a):

Co powiesz na challenge? Napisz mi w prostych słowach jak działa quicksort.

Co powiesz na challenge w 3 krokach?

  1. Napisz konstruktywną krytykę 2 konkretnych rzeczy w swoich obecnych projektach udostępnionych na tym repo, które są w Twojej ocenie babolami największego kalibru wymagającymi poprawy.
  2. Zrób to w formie, którą odebrałbyś jako życzliwą radę, a nie hejt drażniący tak bardzo, że należy go usunąć, niczym we wspomnianym wątku na FB.
  3. Popraw je, zacommituj i daj znać.
M0
  • Rejestracja:ponad 11 lat
  • Ostatnio:około 2 godziny
  • Postów:363
3

Przeczytałem cały wątek wraz z komentarzami i przypomniało mi się coś
Kiedyś przyszedł do nas na rozmowę o pracę pewien student. Był bardzo pewny siebie, uważał się za "debeściaka" i co to on nie umie. Na rozmowie odpowiadał w podobny sposób jak autor, że czegoś tam nie zrobił, bo to kod zabawa, bo on idzie na backend, bo coś tam mu się nie podobało itp.
I to samo widzę w autorze. @pythonowiec podałeś linka do szachów. Wszystko masz w jednym pliku. Idealne miejsce, aby zrobić katalog z figurami, zaś w nim dla każdego z pionków osobny plik. Robisz jakieś dziwne rzeczy w metodzie list_available_moves w klasie Figure, zamiast w tej klasie(która powinna być klasą abstrakcyjną) zrobić metodę do ruchu i nadpisywać ją implementacją odpowiednią dla każdego z pionków (@opiszon o tym wspominał). read.me? Powinno być README.md. Commit1, Commit8. Zdażyło mi się sprawdzać repo kandydatów o pracę. Patrzyłem na nazwę commitów.
ChessException_5, ChessException_7, nic mi nie mówi. ChessException_3(possible_errors[3]) WTF?
Polecam więcej pokory i samokrytyki. Na staż czy juniora to jest słaby kod. Mówisz, że kod działa. Fajnie, ale niech będzie czytelny bez zastanawiania się co to robi przez 15 minut.
Wspominałeś o sztuczkach. Sztuczki wykorzystuje się, jedynie kiedy tworzą wymierne korzyści, który ją akceptowalne mniejszą czytelnością kodu(albo jej brakiem).
Takim przykładem jest Q_rsqrt https://github.com/id-Software/Quake-III-Arena/blob/master/code/game/q_math.c#L552

PY
PY
  • Rejestracja:ponad 2 lata
  • Ostatnio:około 2 lata
  • Postów:9
0

Widzę, że to forum to strata czasu.

Eldorad O.
  • Rejestracja:około 6 lat
  • Ostatnio:6 dni
  • Postów:517
5

@pythonowiec: Stratą czasu jest poświęcanie tobie jakiegokolwiek czasu na recenzję.
Twoje soft skille są na tragicznie niskim poziomie, sugestię poprawy traktujesz jako atak na swoje ego i próbujesz usilnie nas przekonać, że jesteś super-ekstra programistą: patrz np. fragment o wyjaśnianiu quick sorta przez @twoj_stary_pijany, fragment o tym jak ma się długość kodu do czytelności, gdzie z uporem maniaka trzymasz się swojej wersji rzeczywistości, i do tego sugerujesz między wierszami że się nie znamy na pythonie, tylko ty bo przeczytałeś 4000 stron o tym języku xD
Trochę pokory i autorefleksji proponuję. Mam wrażenie, że założyłeś te wątki - tu i na fb - tylko po to aby ktoś cię poklepał po plecach a nie dał obiektywny feedback, na zasadzie - wszystko jest super ekstra, jesteś najlepszy, twój kod nie ma żadnych błędów.
Jeżeli nie popracujesz nad tym to albo nikt cię nie zatrudni albo praca z tobą będzie katorgą, której nie życzę nikomu.

M0
  • Rejestracja:ponad 11 lat
  • Ostatnio:około 2 godziny
  • Postów:363
3

Autor usunął konto, jednak wątek przeniósłbym do Perełek.

Eldorad O.
Miałem wnieść o to samo xD
DN
  • Rejestracja:około 4 lata
  • Ostatnio:3 dni
  • Postów:36
0

Ciekawe gdzie teraz poszedł delikwent :>

TS
Na grupę Problemy Polskiej Branży IT :)
snowflake2137
  • Rejestracja:ponad 2 lata
  • Ostatnio:około 4 godziny
  • Postów:92
0

Dobra, to jak już sobie poszedł to co robi kod x = a^((a^b)&-(b<a))?
EDIT dobra już widzę że zwraca a ale czasem zmienia znak w zależności od znaku b, dalej mi się nie chce analizować

edytowany 1x, ostatnio: snowflake2137
Zobacz pozostałe 2 komentarze
snowflake2137
obstawiam, że zrozumienie OPa ograniczało się do opisania ciągu operacji bez zrozumienia znaczenia końcowego wyniku
M0
Ostatni raz takie operacje na bitach to robiłem jak pisałem kod na mikrokontrolery. Raczej w apkach webowych takiego czegoś się nie robi
Althorion
Potrzebowałem kiedyś nie-branczującego min/maksa, milion lat temu, jak jeszcze branch prediction ssało; a to w sumie łatwy do zapamiętania trick.
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)