Zdjęcie w tle

Społeczność

Programowanie

1k+

Zaloguj się aby komentować

Zaloguj się aby komentować

Hej Tosie, hej Tomki, hej @hejto


Bardzo przyjemnie się siedzi na Hejto, jednak widać że portal potrzebuje jeszcze wiele funkcjonalności. Wiadomo, że zasoby są ograniczone, a kodu źródłowego do całego repo oddawane społeczności nie każdy ma ochotę. Wpadłem na pomysł, że może wydzielilibyście nam jakiś fragment portalu w postaci mikrofrontendu i mikroserwisu komunikującego się z API. Myślę, że chętnych pomóc w rozwoju nie będzie brakowało przy okazji ucząc się w ramach społeczności. Wam odejdzie część pracy, a społeczność będzie miała większy wpływ na Hejto


Kod byłby dostępny na Githubie i każdy mógłby wystawić PullRequest.


#programowanie #opensource #hejto

Co sądzisz o pomyśle modułu pisanego przez społeczność?

50 Głosów

Zaloguj się aby komentować

Cześć Hejto!


Ostatnio wpadłem na pomysł stworzenia Discorda dla osób, które tworzą w internecie różnego rodzaju treści, np.: video, grafikę, audio, aplikacje. Dzisiaj postanowiłem zrobić pierwszy krok i stworzyłem nowy serwer, na który chciałbym Was zaprosić.


Chciałbyś się wymienić pomysłami, pochwalić co ostatnio udało Ci się zrobić, albo zapytać jak coś osiągnąć? Może chciałbyś zapytać po prostu feedback lub pogadać w przerwie na kawę podczas home offiece'u? Licze na to, że wszystko to uda Ci się znaleźć tutaj: https://discord.gg/Z63hYDZj


PS Nie jest to wpis bezpośrednio związany z programowaniem ale wiem z doświadczenia jak wiele osób, próbuje swoich sił w tworzeniu aplikacji webowych i mobilnych.


Pozdrawiam,


Jakub


#programowanie

3809331f-adfb-49fe-b8a9-a3f309e9493a

Zaloguj się aby komentować

Troche #it, troche #pokazbiurko - uwazam, ze wygladaja ze soba bardzo dobrze ; )


Perixx Periboard-106M + Kensington Orbit


#hardware #trackball #keyboard #retro

fd9a0fd8-0f18-4acd-888e-a528f539f91c

Zaloguj się aby komentować

Wpis dotyczy #java #spring


Cześć.


Chciałbym Was zapytać o jedną dość laicką kwestię.


Studiuję sobie trochę jak Spring działą pod spodem i ogólnie budowanie appek pure MVC / RESTful.


Ciekawi mnie jedna kwestia. W momencie kiedy tworzymy powiedzmy apkę opartą o architekturę czysto MVC, czyli mamy:


- Model (dane),


- View (JSP lub jakieś zewnętrze biblioteki np. Thymeleaf etc.)


- Controller (tu ogarniamy dane z modelu i przesyłamy te dane wraz ze wskazanie, który widok ma być wyświetlony).


Załużmy, że używamy Spring Boota ze starterem web, który konfiguruje Nam:


- DispatcherServleta (nie musimy mapować serwletów, wkazywać root configuracji itp.)


- ViewResolvera 


+ nie musimy generalnie config klasy dowozić wraz z @EnableWebMvc, @ComponentScan, @Configuration itd. 


Jeśli używamy Spring Bootowej domyślnej auto-konfiguracji to odpada Nam tworzenie beanów itd. 


Spring Boota ma wbudowany kontener servletów Tomcat, więc to również Nam odpada + mamy spakowane dependencje w startery. 


Świetnie. Teraz załużmy, że startujemy Naszą apkę. Mamy napisane wszystkie warstwy MVC. 


Nasza apka jest z automatu deployowana jako war na serwer Tomcat. 


(Wiem, że Spring Boot ogarnia większość tych rzeczy sam, ale żeby zadać odpowiednie pytanie, muszę to jakoś opisać ( ͡o ͜ʖ ͡o) )


Ok, to lecimy. 


- User wysyła requesta


- Nasza apka odbiera requesta, zczytuje konfigurację z web.xml lub java-based-config.class gdzie skonfigurowany jest DispatcherServlet.


- Teraz ten DispatcherServlet (innymi słowy Front Controller) tworzy tzw. WebApplicationContext container (ten kontekst rozszerza ApplicationContext) z pliku, który w XML musi wyglądać następująco "nazwaServletu-servlet.xml" np. "frontcontroller-dispacher-servlet.xml". W tym pliku konfiguracyjnym wskazujemy ścieżkę do zeskanowania, w której będziemy trzymać klasy z adnotacją @Controller. W momencie kiedy taka klasa zostanie znaleziona, to trafia do wspomnianego kontenera. 


- teraz powiedzmy, że user wykonał rządanie pod adresem /test.com/hello. Ścieżka w pliku konfiguracyjnym web.xml była następująca /test.com/*, a więc ten adress łapie się w zakresie danego DispatcherServleta. Jeśli się łapie, to uderzamy do konfiguracji dispachera, czyli pliku "frontcontroller-dispatcher-servlet.xml". W tym pliku jak już wyżej wspomniałem mamy ścieżkę, która jest skanowana pod kątem klas z @Controller. 


- teraz tzw. Handler Mapping znajduje pasujący controller na podstawie URL i tak jakby zwraca go z powrotem do DispatcherServletu. 


- teraz tzw. Handler Adapter egzekwuje/wywołuje logikę biznesową wewnątrz controllera.


- controller woła serwis 


- serwis woła warstwę DAO 


- DAO łączy się z baza danych i lecimy z powrotem do góry


- DAO -> service


- service -> controller 


- controller -> Handler Adapter 


- Handler Adapter -> Dispatcher


- teraz na podstawie zwróconego ModelAndView (lub samego Stringa wskazującego na nazwę widoku) Dispatcher komunikuje się z tzw. ViewResolverem. 


- ViewResolver znajduje po prefixie i sufixie odpowiedni View i zwraca lokację widoku do Dispatchera


- Dispatcher znając lokację docelowego widoku przesyła do niego model (dane) i następnie ten widok jest zwracany jako Response.


Czy dobrze rozumiem workflow MVC? 


Natomiast moje docelowe pytanie, to jak wewnętrznie wygląda workflow dla właśnie aplikacji RESTfulowej. Nie mamy wtedy żadnych widoków, używamy właśnie @RestController, który zawiera w sobie adnotacje @Controller + @RequestBody. Dzięki temu wiemy, że taki controller zwracać ma response w postaci JSON lub XML. Klient w headerze ("Accept") wysyła info o tym, w jakiej postaci chce uzyskać odpowiedź i wtedy uruchamiany jest odpowiedni HttpMessageConverter, np. MappingJackson2HttpMessageConverter. 


Okej, ale co z działaniem pod spodem. Coś musi wykrywać, do jakiego controllera uderzyć. Czy działa to na podobnej zasadzie, tylko pomijany jest po prostu widok i od strzała wysyłany jest JSON/XML?


Z góry dziękuje każdemu, któremu chciało się powyższy esej przeczytać.

Zaloguj się aby komentować

@Holter Inoreader nie trzeba szukać bo wszystko w jednym miejscu Szukajka podpowiada strony na podstawie aktualnie obserwowanych. Jest potem tyle niusow że człowiek tego nie czyta

Zaloguj się aby komentować

Zaloguj się aby komentować

Piszę aplikacje we fluterze na androida, chcę wyświetlić w niej czy urządzenie o podanym mac adresie jest aktualnie podłączone z telefonem za pomocą bluetootha. Da się jakoś uzyskać taką informację? Mam wrażenie że nie i że wszystkie biblioteki działają na zasadzie: skanuj urządzenia -> połącz z którymś ze znalezionych urządzeń -> jak biblioteka połączy się z urządzeniem to wtedy można uzyskać jakieś informacje o urządzeniu. Ja potrzebuję tylko informacji połączone z urządzeniem / niepołączone z urządzeniem. Bez żadnego skanowania itp. #programowanie #programista15k

@dzana dzięki za odpowiedź :), no właśnie chyba nie za bardzo wiem jaka jest różnica między zwykłym bluetooth a BLE. Ogólnie urządzenie z którym chce się połączyć to jest skaner kodów kreskowych z wbudowaną baterią. Jak to rozpoznać przez który bluetooth jest połączenie?

Edit: jak skanowałem urządzenia za pomocą biblioteki flutter_blue_plus to nie znajdowało mi tego skanera, znalazło telewizor, opaskę mi band itp. Ogólnie bluetooth znajduje ten skaner i się z nim łączy. To jest takie urządzenie https://www.netum.net/products/w6-x-bluetooth-ccd-barcode-scanner-read-1d-code z tego co widzę to tam jest Bluetooth 2.0 czyli to stare.

@dzana już chyba wszystko wiem, dzięki twojej krotkiej odpowiedzi, pytaniu dowiedziałem się więcej niż googlujac cały dzień Dzięki jeszcze raz.

@diofantos Cieszę się bardzo

Ja jestem iOSowcem wiec i tak więcej bym Ci nie pomógł, bo iOS udostępnia tylko bibliotekę do BLE, a tu ewidentnie masz 'stary bluetooth' więc z nim nigdy nic nie robiłem.

Zaloguj się aby komentować

Pamiętacie mój wpis gdzie mówiłem że jestem po pierwszej rozmowie o pracę?


Jeśli nie, przypomnienie https://www.hejto.pl/wpis/jestem-po-chyba-pierwszej-w-zyciu-normalnej-rozmowie-rekrutacyjnej-dostalem-jaki


No więc, efekt jest taki że


.


.


.


PODPISAŁEM WCZORAJ UMOWE!


Od marca zaczynam. Nie mam do końca pojęcia co właściwie mam robić. Na rozmowie mi powiedziano że na początku będę supportem, a docelowo programistą, tym czasem nazwa stanowiska to Big Data Engineer xD


Teraz najlepsza część:


dostałem masę pakietów pokroju karty multisport czy ubezpieczenie, ale najlepsza jest wypłata. Prosiłem o 5-6k brutto (tyle wówczas mi oferowano w firmie do której miał mnie wkręcić znajomy), a dostałem 8. MInus tego jest tylko taki, że przez 18-24 miesięcy nie dostanę podwyżki.


Podczas rozmowy moją reakcją było "Jestem bardzo usatysfakcjonowany tą ofertą", ale sekundę po rozłączeniu się wydarłem się na całe mieszkanie xDD.


Nie mogę w to dalej uwierzyć, ale nie znalazłem do tej pory żadnych haczyków. Dosłownie 2 tygodnie dzieliły najgorszą ofertę jaką usłyszałem (4 miesiące pracy za darmo dla Johnnusha z USA), od spełnienia snów.


I to wszystko bez doświadczenia, na drugim roku studiów. Po miesiącach szukania pracy, los się zlitował


#programowanie #chwalesie

Zaloguj się aby komentować

Wyjaśni mi ktoś dlaczego te wszystkie szkoły programowania muszą wbijać szpile w studenciaków?. Czytam wywiad z kimś z kodilla i twierdzi, że ich szkoła to nie jakieś tam studia, oni są lepsi. Wchodzisz na ich stronę i widzisz to co poniżej, jako przykład reklamy satysfakcji z ich kursu


#programowanie #programista15k

bfbb8d24-4350-4caa-b722-899e5c8a2515

@nezka92 razi każdego kto ma jakieś pojecie o IT bo to scam jak nabieranie starych ludzi na garnki. Ty za to brzmisz jak pracownik jednego z takich scamów albo ktoś kto ma jakieś powiązania ponieważ tak zaciekle bronisz czegoś co jest gównem i śmierdzi więc trzeba to piętnować. Nie zamierzam się wstydzić takiego zdania więc to mój trzeci wpis i pojawią się kolejne.


A mówileś koledze, jakie masz zdanie na temat jego kursu?


mówiłem mu. Mówiłem mu, że wydaje tyle hajsu i jednocześnie kupuje kursy z udemy to chyba powinien się zastanowić ale jest omamiony wizją dużych pieniędzy, nie wiem co mu tam nagadali

@muchatse spoko, widzę że obrałeś sobie za misję uświadomienie ludzi, jaki jest jedyny słuszny sposób nauki programowania, więc powodzenia

Człowiek człowiekowi nie równy. Fakt, przy rozmowach kwalifikacyjnych mam bardzo duży bias na osoby po kursach/bootcampach. Nie wiem czego oni ich tam uczą, ale na 100% nie programowania zgodnego ze sztuką. Potem padały sakramentalne pytania o podstawy i wychodziło jedno wielkie kupsko. Raz mnie nawet dziewczyna chciała zwyzywać, bo skoro nie uczyli jej tego na kursie to w sumie to nie jest do niczego potrzebne i próbuję ją po prostu „zniszczyć” na rozmowie. ᕦ( ͡° ͜ʖ ͡°)ᕤ

Zaloguj się aby komentować

Witam i o zdorwie pytam,


przymierzam się do zmiany pracy i zastanawiam się czy rozważać oferty z B2B, czy póki nie mam 26 lat (zerowy PIT) szukać jeszcze UoP. Ktoś ma jakieś doświadczenie? Jaka jest granica przy której będzie opłacało się B2B? Jak wygląda sytuacja z kredytami?


#programowanie #programista15k #praca #b2b

Jeśli planujesz hipotekę w przeciągu roku to bym poczekał z B2B. Pewnie pójdziesz na ryczałt, więc zdolność będzie znacznie niższa niż na uopie. Jeśli dopiero się przymierzasz to pewnie na b2b szybciej zarobisz na wkład, bo łatwiej o pracę dodatkową po godzinach

Zaloguj się aby komentować

Zaloguj się aby komentować

Dlaczego avatarem społeczności #programowanie jest symbol końca znacznika html, skoro html nie jest językiem programowania?


#pytanie #kiciochpyta

Zaloguj się aby komentować

Cześć. Piszę sobie projekt i mam pytanie odnośnie tego jak rozwiązać następujący problem. Mam formularz na froncie, który może wysłać dane o użytkowniku jak i jego dane kontaktowe w jednym post requeście. Dane kontaktowe są opcjonalne więc można je wprowadzić również później. Jak zaprojektowalibyście backend do takiego formularza?


  1. tworzę jeden endpoint, UserDto, które zawiera w sobie ContactDto i jeśli ContactDto jest poste/null to po prostu go nie tworzę. Tutaj zastanawiam się czy swagger byłby dobrze udokumentowany z opcjonalnymi polami do wypełnienia

  2. tworzę dwa osobne endpointy, dwa Dto dla Usera. Jeden taki sam jak w pkt. 1 i drugi bez relacji do ContactDto. Front end w zależności od tego co ma na wejściu, wybiera gdzie zrobić request

  3. robię dwa osobne endpointy, pierwszy tworzy zasób User, drugi zasób Contact. Front end uderza najpierw do Usera, później ze zwróconym id usera robi request by utworzyć kontakt. Problem, gdy user się utworzy, a kontakt nie, co wtedy powinien zwrócić taki formularz.


Jakieś inne opcje?


#programowanie #naukaprogramowania #java

@otsochodzi Relacje powinieneś tworzyć w odpowiedniej warstwie, DTO najlepiej jak jest po prostu płaskie i zawiera dane które przenosisz między warstwami aplikacji. Najlepiej jak jest ich jak najmniej, wtedy nie musisz mieć od groma mapowań, więc jak chcesz zamieszczać kolejne klasy w DTO (jak np. wymieniłeś w pkt 1) to już trochę kłóci się z ideą DTO, przynajmniej tą purystyczną.

@otsochodzi IMO to trochę zależy od przypadku.

Jak masz prosty obiekt np. userName, password, email, phoneNumber, language - to nie ma sensu nic wydzielać. Ale jakbyś miał sporo pól, które można pogrupować i wydzielić, to ja bym już wydzielił, np.

userName,

password,

contanct: email, phoneNumber,

permanentResidenceAddress: country, city, streetName, streetNumber,

residenceAddress: country, city, streetName, streetNumber,

preferences: theme, language, timeZone


Ale to ja bym tak zrobił, może być to błędne myślenie i zaraz ktoś mnie wyjaśni ¯\_(ツ)_/¯

@otsochodzi 3. Nie rób tego, próba polegania na zrobieniu transakcji przez front jest fajna na localhoscie, później już nie


  1. To po prostu przeniesienie logiki z backendu na frontend, ja generalnie wolę jak to backend jest 'mądrzejszy', wtedy po prostu można pisać mniej jsa i mniej pchać do userów

  1. Jeden dto, używaj optionali, na podstawie tego dto możesz mieć 2 osobne metody w serwisie na 'czystego' usera albo nie, ale ta logikę możesz ładnie zenkapsulować już w kodzie aplikacji, natomiast wiadomo że tworzenie będzie postem, a update jeżeli całości to put, a tylko części to patch

Dla mnie DTO (jeżeli mówimy o takim serializowanym do jsona i używanym przez UI) powinno działać jak backend for frontend, czyli zawierać to co klient oczekuje w danym miejscu, bez dociągania requestami, np. jeżeli usera zawsze wyswietlasz z danymi do kontaktu, wpakuj razem, jeżeli dane to odrębny byt który czasem pokazujesz, a czasem nie, to osobno


Premature optimization is the root of all evil, dopóki nie wrzucasz kilku relacji z listami po setki obiektów, będzie dobrze

Zaloguj się aby komentować

Zaloguj się aby komentować

Hejtownicy, muszę się trochę wyżalić.


Jestem na ostatnim roku inżynierki informatyki i... Pracuję u Janusza jako HelpDeskowiec i nie mogę znaleźć nowej pracy.


Na studiach 3/4 projektów napisalem bez niczyjej pomocy, byłem tylko ja, kąkuter i dokumentacja i za każdym razem sobie radziłem przed terminami. Kolokwia z matmy? Tylko raz mi się powinęła noga przez głupotę.


Wysyłam multum cefałek na 3 stanowiska: tester, analityk sys. i junior java dev i w ogóle nikt nie dzwoni nawet żeby mnie zaprosić gdzieś na rozmowe. Ostatnio dostałem zadanie na analityka sys. gdzie musiałem zrobić kilka rzeczy, spodobało się to rekruterowi i zostałem zaproszony na rozmowe. Na rozmowie wypadłem świetnie, na spotkaniu był team leader i analityk gdzie team leader na koniec rozmowy powiedział, że jestem super obiecującą osobą, że wszystkie zadania zrobiłem jak prawdziwy analityk i że ma jeszcze 2 rozmowy rekrutacyjne. Za kilka dni dopiero dostanę informację zwrotną co dalej ze mną.


Jestem już straszliwie podłamany bo pracuje za jakieś 4,5k gdzie widzę, że mam jakieś skillsy żeby się po prostu wykazać.


Co robić Hejtownicy żeby odnieść choć mały sukces i się nie czuć jak kupa?


#programowanie #it

@toord Nie łam się, początki w każdej branży są trudne. Ja swoją pierwszą pracę w IT znalazłem przez biuro karier mojej polibudy gdzie różne firmy szukały stażystów do gównoroboty, może w takim miejscu poszukaj. Najtrudniej jest zdobyć te kilka miesięcy komercyjnego expa, potem już jest dużo łatwiej.

@toord Skoro rekruter ma do ciebie zadzwonić to czym ty się łamiesz? Myślisz, że będzie jak w filmie "You're hired!" i pokażą ci biurko? To chyba ten objwa pokolenia instant. Wyluzuj. Umiesz coś i możesz to udowodnić? Świetnie. Bombarduj CV firmy, zrób trochę własnych projektów w Java żeby było jakieś portfolio i szafa gra. Robota w końcu będzie. A u Janusza się nie męcz. Rób tyle ile masz w umowie, nie angażuj się w pomysły firmy, nie poświęcaj się. Wolny czas na rozwój swoich projektów.

@Mamut Nie, to raczej nie objawa pokolenia instant a całkiem mała wiara w siebie która była gdzieś tam podkopywana przez długi czas xD Na szczęście już się wyleczyłem z brania wszystkiego do siebie więc robię progress na wszystkich płaszczyznach.

Zaloguj się aby komentować

Czytałam, że pojawiają się ogłoszenia pracy odnośnie freelancerów którzy potrafią korzystać z botów sztucznej inteligencji.


Na czym tak naprawdę polega praca takiego freelancera? Do jakich celów się go używa? Bo rozumiem, że nie do pisania wypracowań.


#pytanie #pracbaza #programista15k

To można wykorzystywać z powodzeniem do copywritingu. Kiedyś dorabiałem sobie pisząc takie teksty, które nie musiały być merytoryczne, ale tylko poprawne gramatycznie. Takie coś się wykorzystuje, żeby podnieś stronę w wyszukiwaniach. W okolicach 2017 boty były jeszcze na tyle niedopracowane, że teksty tego typu musieli pisać ludzie. Ostatnio sobie sprawdzałem z ciekawości czy dalej tak się da i nie ma takich ofert prawie w ogóle albo są ake za kompletne grosze. Bardziej skomplikowane teksty też na pewno da się już tworzyć używając AI patrząc jak wygląda przeciętny wpis blogowy xD

@StarozytnyKosmita właśnie widziałem na początku boomu na chatGPT jak jakiś koleś najpierw poprosił AI żeby wygenerowała mu 10 tytułów wpisów blogowych do sklepu z czymśtam (już nie pamiętam z czym), a potem na podstawie tych tytułów generował już pełne wpisy blogowe. Imo do takich rozwiązań genialne rozwiązanie.

Zaloguj się aby komentować