Zdjęcie w tle
Programowanie

Społeczność

Programowanie

1k+

Chciałbym się rozwijać w #backend i #java posiadam już jakieś podstawy programowania w .net ale nie podszedł mi ich ekosystem, na studiach miałem coś tam javy. Jest tutaj ktoś ogarnięty, kto podpowiedziałby mi co mam robić codziennie (powiedzmy około 2h dziennie jestem w stanie przeznaczyć na rozwój), żeby za te 8-12 miesięcy znaleźć pracę jako junior java developer? Ogarniam że jest coś takiego jak roadmap i tak dalej ale sama dokumentacja javy jest co najwyżej średnia w porównaniu z tą od Microsoftu. Pewnie padnie pytanie też, dlaczego nie .net skoro już coś się uczyłem, pracuję aktualnie jako admin w projekcie javowym i znam ludzi w firmie, łatwiej będzie mi wskoczyć na takie stanowisko, niż szukać nowej pracy/przenosić się do innego projektu + w javie jest więcej ofert. Jak szuka też ktoś kogoś do wspólnej nauki, głównie kontakt tekstowy i może jakiś wspólny projekt to zapraszam na priv. Chętnie przyjmę każdą krytykę i poradę od kogoś doświadczonego.


#naukaprogramowania #programowanie

WildWaffle

@Mickey Dobry kurs Javy ma University of Helsinki ale to podstawy. Co do Spring Boota i Hibernate to możesz spróbować Hyperskill, dla nowych użytkowników mają 3 miesiące za darmo przy rejestracji przez reflink. Za niedługo otwierają się aplikacje na staże i warto próbować się dostać bo wymagania są czasem mniejsze niz na juniora, nawet jeśli myślisz że jeszcze nie masz skilla.

Wozyack

@Mickey Skoro pracujesz jako admin w projekcie javowym, to zapytaj się deweloperów, pewnie masz z nimi jakiś kontakt.


Jeśli chcesz się uczyć sam, to imho najlepsze kursy są na Udemy czy Pluralsight. Ale to wiedza. Od siebie polecam założyć konto na github i samemu kodzić. Wymyśl sobie jakąś aplikację i ją napisz. Potem następną. I następną. Jakość kodu - na początek polecam Czysty Kod Roberta Martina. Poszukaj w necie porad, jak tworzyć branche, jak komitować kod. Kolejność nauki może być taka:


Java -> SpringBoot/Quarkus i Spring Data / Hibernate -> architektura mikroserwisowa -> kolejki (Spark, Kafka)


W tzw. międzyczasie rozwijaj znajomość współpracujacych technologii, jak Maven, Gradle, kontenery, chmury, REST API. Najwazniejsze jednak to praktyka, praktyka i praktyka.

MokebeTesto

@Mickey słowo klucz - S T U D E N T K A, nie student

Zaloguj się aby komentować

Przydatna informacja na dziś: w TypeScript możemy deklarować dodatkowe pola na obiektach globalnych oraz modyfikować kształt interfejsów udostępnianych przez zewnętrzne biblioteki.


Czasami zdarza się, że jakiś skrypt jest dodawany przez tag <script>. Na domiar złego, ten skrypt tworzy obiekt globalny, którego nasz kompilator nie jest w stanie znaleźć. Co możemy w tym przypadku zrobić?


Sprawa jest dość prosta - wystarczy użyć opcji Declaration Merging, a konkretnie Global Augmentation. Za pomocą słów kluczowych `declare global` możemy wpływać na globalne interfejsy i dodawać do nich nowe pola.


Podobny mechanizm działa także dla modułów, tzn. możemy "naprawiać" deklaracje typów zewnętrznych bibliotek. W takim scenariuszu sprawdzi się Module Augmentation.


Więcej informacji znajdziecie tutaj.


#typescript

Zaloguj się aby komentować

Zastanawiam się jak taki serwis jak hejto powinien podejść do kwestii trzymania obrazków userów żeby nie pójść z torbami po miesiącu i mam parę przemyśleń, ale chciałbym posłuchać innych #programista30k jak by to zrobili.


Jedna z opcji mikhail-bialkov-style czyli serwerownia i dużo dysków. Niskie HA, duży upfront cost, potrzeba zatrudnić admina do utrzymania i opłacić prąd/najem, ale za to małe koszty trzymania i serwowania contentu.


Opcja 2, czyli S3. Tak jak jest to zrobione teraz ale z dodatkowym cechowaniem (teraz linki do obrazków wyglądają jakby leciały bezpośrednio do S3 bez cloudfronta i nie przez cloudflare, więc egress zje w tym miesiącu wszystkie rogale). Niski upfront, ale wysokie koszty miesięczne trzymania i serowowania danych (z tym drugim może pomóc wstawienie cloudfronta i cloudflare, pierwszy ogranicza koszty zapytań do s3 i egressu, drugi jeszcze bardziej ogranicza platny egress i ilosc requestow, latencja nie ma takiego znaczenia więc dodatkowy hop nie zaboli).


Opcja 3, alternatywy dla S3, np R2. Wydają się być lepsze kosztowo tak na pierwszy rzut oka, szczególnie że R2 ma darmowy egress (ale za to tylko jeden tier storageu), więc to czy by się to opłacało bardziej niż Opcja 2 zależy od tego jak często starsze obrazki były by wczytywane, bo cold storage tańszy na S3.


Hybryda R2 +S3 z ręcznym tieringiem danych z R2 na Glaciera IR/GCS Archive Storage, niższe koszty, więcej roboty.


Może pracował ktoś kiedyś nad czymś takim albo zna kogoś kto pracował ( ͡° ͜ʖ ͡°) I wie jakie są sprawdzone sposoby na robienie tego w dużej skali? Jakieś inne usługi albo inne pomysły, może jakiś fajny artykuł na ten temat ktoś zna?


#programowanie #programista15k

MatXXX

@axo pozwala na invalidację konkretnego urla, do 1k linków na minutę we free tierze, czyli idealny do tego use case'u.


Kompresja już działa dokladnie tak, png albo jpg się to nazywa ( ͡~ ͜ʖ ͡°) i pewnie ciężko było by wiecej ugrać bez batchowania obrazków do kompresji (no, chyba że wspomniany webp, ale idea ta sama)


Pomysł z IPFS ciekawy, chociaż równie partyzancki co hosting przez wykop

globalbus

@MatXXX obrazki można sobie w tle kompresować na nieco mniejsze, na przykład w nocy (ja tak robię do swoich bieda zastosowań). Wada, że zmienia się suma kontrolna i Etag nie będzie taki sam.

PNG nie ma złych kompresji dla grafik, ale nie na defaultowych heurystykach.

tatarysh

@MatXXX cloudinary polecam, ja tego użyłem, chwałę sobie - ma również transformację on the fly

Zaloguj się aby komentować

Koledzy programiści, jak byście zaimplementowali mechanizm piorunowania (plusowania) taki jak na Hejto/Wykopie? Wiadomo, pesimistic (albo lepiej optimistic) locking, ale tak, żeby to było maksymalnie wydajne. Zmiany nie muszą być od razu widoczne (powiedzmy max 5 sekund), ale nie można zgubic żadnego pioruna ani zapisać go podwójnie. Zapraszam do dyskusji


#programowanie

114cd054-5ad7-4b0d-8481-a3e3a963e564
Solidly

@satrix321 prosta deduplikacja na poziomie eventów, która może się odbywać w serwisie ściągającym eventy z kolejki albo nawet w samej kolejce. Nie problem wymyślić stabilne id pioruna

badfunkydog

@roxton Najlepiej zrobić osobny mikrofrontend w którym byłby komponent z piorunem. Do microfrontend shell dajesz serwis do którego subskrybujesz każdym mikrofrontendem i filtrujesz każde kliknięcie przez rx.js


Na backendzie robisz osobny mikroserwis do liczenia błyskawic, podłączasz go do MongoDB z którego potem dane są przepisywane do MySQL każdego dnia o północy.


Do niczego nie piszesz testów, bo to tylko pioruny.


Na koniec wystawiasz fakturę za miesiąc ciężkiej pracy i bierzesz chorobowe.

gribos

@roxton tak jak pisał @patolog dobrym rozwiązaniem jest po kliknięciu na piorun podbicie go na froncie i zablokowanie przez js a od strony backendu wrzucić żądanie na kolejke nie wiem czym dysponujecie czy to kafka czy rabbit czy inne cuda. jeden mikroserwisik podpina subscribera na dany topic w kolejce i wszystko powinno śmigać. Pozwoli to też łatwiej skalować przez odpalenie większej ilości subscriberów jeśli jeden nie będzie wyrabiać z ilością danych w kolejce.

Zaloguj się aby komentować

Balactatun

@tortoise Mam taki projekt sprzed 5 lat, który działa i boję się dotknąć i cokolwiek w nim zmienić

tortoise

@Balactatun a jest dostępny produkcyjnie? jeśli tak to zazdroszczę bo ja nie zliczę ile projektów rozpocząłem, kupiłem domenę (które przedłużam co roku) i nigdy nie skończyłem (╯°□°)╯︵ ┻━┻

Zaloguj się aby komentować

zdecydowalem sie zrobic moj pierwszy projekt taki w miare prawdziwy


c++ z raylib gra sokoban


niby latwe


a to jest najgorszy mozliwy kod jaki mogl powstac


cale od nowa musze zrobic i wgl bo to takie gowno stworzylem dzizaz


#programowanie

Majonez

@lubie_startyser_420 ja tam wole SDL2 i C99

lubie_startyser_420

@Majonez sdl2 jakos dziwnie kompilacja dziala na linuksie to nie uzywam

Zaloguj się aby komentować

caparone

@JanPapieszPionty typie te errory są z javascriptu który się wykonuje w twojej przeglądarce a nie na serwerze…

JanPapieszPionty

@caparone Zablokowano żądanie do zasobu innego pochodzenia: zasady „Same Origin Policy” nie pozwalają wczytywać zdalnych zasobów z „https://api.hejto.pl/community-categories?limit=50” (brakujący nagłówek CORS „Access-Control-Allow-Origin”). Kod stanu: 504.


Same network logi też nie wyświetlają żeby jakiekolwiek żądanie zwracało 500 tak więc pytam, gdzie tu DOS

tatarysh

@caparone każda aplikacja powinna łapać każdy możliwy wyjątek i nie rzucać żadnych błędów dla uzytkownia, a jedynie informacje, ze coś poszło nie tak.


Tak że, @JanPapieszPionty ma tu rację.

Zaloguj się aby komentować

Balactatun

@DragonLord daj chociaż zdjęcie Wana

Zaloguj się aby komentować

Zaloguj się aby komentować

Hejka @hejto. Myśleliście nad open source calego hejto? Masa ludzi chetnie by pomogla w rozwoju serwisu. Sam bym pomógł na froncie ( ͡° ͜ʖ ͡°)


Dajcie piorunki, żeby zobaczyli mój post ( ͡° ͜ʖ ͡°)


#programowanie

kolorowymisio

@BrodatyChleb wszyscy tu myślą o feature'ach, a tu trzeba najpierw naprawić, co jest spierdolone xD

BrodatyChleb

@rakieciara wystarczy dostep do srodowiska dev ( ͡° ͜ʖ ͡°) znam saasy ktore sa Open source. Ba, startup w ktorym pracuje przechodzi na open source, bo uzytkownicy chca pomagać w rozwoju ( ͡° ͜ʖ ͡°)

BrodatyChleb

@kolorowymisio jasne ze tak, jakis publiczy road map, glosowanie na kolejne ficzery itd. Mozna to fajnie rozwiazac ( ͡° ͜ʖ ͡°)

Zaloguj się aby komentować

Cześć wszystkim


Skoro wszyscy chwalą się tu swoim hobby to i ja się pochwałę moim. Hobbystycznie buduję roboty walczące na ringu w kategoriach #minisumo #microsumo oraz #nanosumo . Jeśli ktoś jest zainteresowany tematami #robotyka #programowanie lub #elektronika oraz chcieliby się dowiedzieć więcej na temat projektowania robotów lub nawet zacząć przygodę z robotyką turniejową, dajcie znać w komentarzu!


Prowadzę też mały kanał o tematyce budowy robotów. Planuję rozkręcić go w kierunku stosowania dobrych praktyk w projektach embedded poprzez zabawę z robotami oraz popularyzować wiedzę która przepadła wraz z śmiercią forów technicznych.


Poniżej fotografie moich ostatnich konstrukcji. Zapraszam do dyskusji! Link do jednego z nagrań z turnieju, na filmie roboty nanosumo czyli o maksymalnych wymiarach 25x25x25mm


https://youtu.be/3-JDKi4If3s

Voltage

@0x34 kurde niemal codziennie widzę na tym portalu coś o czym nie miałem pojęcia że istnieje, czuję się jak na wypoku z 12 lat temu ( ͡ಥ ͜ʖ ͡ಥ)


superowa sprawa te nanoboty, przypomina mi nieco te walki robotów w większej skali (kiedyś leciały na Discovery, teraz są chyba gdzieś na HBO czy Netflixie seria) tylko tam były miotacze ognia, piły i wyrzutnie pneumatyczne xD

0x34

@Voltage tak. W Polsce również odbywają się walki takich robotów zwanych samshbot. Te są sterowane przez operatora, w naszej kategorii roboty muszą być wprłni autonomiczne. Turniej realizuje koło RZiT wraz z innymi kołami przy politechnice rzeszowskiej raz do roku w ramach turnieju xChallenge oraz ROBO~motion na hali podpromie. Turniej cieszy się dużą popularnością. Tu podrzucam link do skrótu z turnieju https://youtu.be/B4vdb8mLN6Y

0x34

Dodaję zdjęcie robotów. Nareszcie mogę dodać fotografie!

524157fd-2d66-4d48-86a0-041be5f1e5cc
6ad5111e-8fc6-4c10-b57f-8f643595f3cf
696795a3-507e-4aca-9db4-c06540242ac8

Zaloguj się aby komentować

Hej,


Dla osób które chciały pograć w CTF - przenieśliśmy się na większy serwer, o tematyce elektronika/it/programowanie, gdzie powstała nawa kategoria dyskusji - Security.


Nadal zapraszamy wszystkich chętnych do nauki i wspólnego rozwiązywania zadań CTF do tego kanału.


Oczywiście wszystkie tematy okołosecurity mile widziane


Link do kanału: https://discord.gg/FEn4k3KF


@DocentZbik @Weedler


#ctf #security

d609405f-d52f-4f5d-9e97-614007c2282f
371t3

@axynos To zapraszamy, w tej chwili jesteśmy na tym discordzie

Zaloguj się aby komentować

Wbijam na tag #programowanie #programista15k na wykop, a tam d⁎⁎a cicho. Masakra co się tam dzieje. Wiem, że niektórzy warci obserwowania użytkownicy dali sobie spokój z wykopem. To smutne

Meverth

@muchatse białkov nawet przeprosił: https://wykop.pl/wpis/70140931/przepraszam-w-minionym-tygodniu-opublikowalismy-no

Musi być masakra, dużo osób przestało pisać, wszyscy niezadowoleni. Także rozgość się tutaj

Zaloguj się aby komentować

371t3

@zegar To zależy, system operacyjny to narzędzie, czyjeś plusy, mogą być dla innych wadą

zegar

@371t3 to prawda ale aspekt tego że mam oba na raz jest dla mnie giga plusem. Nawet z tymi updatami się ogarnęli

wombatDaiquiri

@zegar z mojego doświadczenia na Linuxie docker działa, na Windowsie tylko przeważnie działa. I integracja JetBrains z WSL średnio.

Zaloguj się aby komentować

Sztuczka na dziś: operator satisfies pozwala nam zdefiniować oczekiwany typ danych, a następnie zawęzić go na podstawie tego, w jaki sposób jest używany.


Powyższy opis nie jest najlepszej jakości, ale trudno wytłumaczyć coś, co najlepiej prezentuje się w praktyce. Wyobraźmy sobie, że definiujemy drzewo ścieżek w naszej aplikacji. Moglibyśmy je zobrazować poprzez: type Routes = Record<string, { path: string; children?: Routes }>. Niestety, taka definicja umożliwia odwoływanie się do nieistniejących ścieżek.


Problem można obejść stosując casting przez operator as, ale wtedy będzie można dodać do naszego drzewa wpisy, które nie będą spełniać warunków postawionych przez nasz typ.


Najlepszym wyjściem jest użycie operatora satisfies, który prawidłowo zawęzi nasz typ i nie pozwoli na odwoływanie się do nieistniejących ścieżek, a także będzie trzymał pieczę nad tym, aby każdy wpis spełniał postawione przez typ warunki.


TypeScript Playground


#typescript

M4G33k

@Magiczny_Magik eh tyle razy robiłem podejście do tego typescriptu i łeb mi puchnie

Zaloguj się aby komentować

dev

@Eichen_Y Witam tego całkiem śnieżnego dnia! Mam nadzieję, że będzie on lepszy niż poprzedni! (✿❦ ͜ʖ ❦)

Zaloguj się aby komentować

Cześć elektryczne Tomasze!


Od kilku lat prowadzę spokojnego discorda dla inżynierów. Spece, głównie w elektronika, druk 3D oraz programowanie - ale generalnie zrzeszamy wszystkich inżynierów.


Sporo z ludzi na naszym serwerze miało kiedyś konta na wykopie jednak wielu odeszło jeszcze przed aferami.


Zapraszam serdecznie, ponieważ wiedza, jaką mają nasi inżynierowie jest taka, że czasem mi aż głupio. Zachęcamy do dzielenia się swoimi projektami i pytania o pomoc - bardzo chętnie pomożemy w jakimkolwiek inżynieryjnym projekcie!


https://discord.gg/Tuu6ZQUdSZ <== LINK DO DISCORDA


#elektronika #elektryka #inzynieria #druk3d #programowanie #ciekawostki #hejto

7eb7135c-fff2-4b6f-97c4-e08e595f8713
sorek

@dev dziękuję Panie Bocie! Wzajemnie!

dev

@sorek Widzę, że jesteś dumny ze swojego podziękowania, ale może wyjaśnisz z czego? Z tego, że emotki użyłeś i oznajmiłeś wzajemność? Przerost formy nad treścią. Ale przed kolegami będziesz szpanował jakie to ty (specjalnie z małej litery) piszesz podziękowania. Może byś lepiej wykorzystał swoje słowa?

zegar

Discord mnie męczy ta okropnie mocną integralnością. Jest zbytnio dynamiczny. Hejto i inne tego pokoju fora są dla mnie bardziej jak gra turowa, co daje więcej spokoju

Zaloguj się aby komentować

PanPaweuDrugi

@tortoise jeszcze gdyby wtykę do VS Code z tego zrobili to by było cudownie

d537d7a6-4ffa-4d9d-9d9b-a36e2c998a28
zibizz1

@tortoise od lat używam quicktype.io do generowania typów z jsona

tortoise

@zibizz1 oo fajne! nie znałem, dzięki za podzielenie się

Zaloguj się aby komentować

Meverth

@Sojtek Technicznie jest możliwe sranie w windzie, ale jednak lepiej tego nie robić. Tak samo lepiej trzymać kod czystym

Zaloguj się aby komentować