Siema programiści 15k. Jako, że nie mam kolegów chciałbym dopytać się was, z waszego doświadczenia jakie są plusy i minusy B2B? Będę zarabiał pomiędzy ~14k brutto ~ 16k brutto. Interesuję mnie czy to mi się opłaci.

Społeczność
Programowanie
@SluchamPsaJakGra @NORIVOTSET @Argony
Nie mam konkretnej firmy jeszcze na oku, próbuję się zdecydować czy B2B mi się opłaci. Odnośnie chorobowego i urlopu to kwestia dogadania z pracodawcą z tego co pamiętam, prawda?
A jak wygląda kwestia lekarzy na NFZ? Podobno składka zdrowotna teraz jest obowiązkowa?
@SuperSzturmowiec Interesowałem się też pracą zagranicą, słyszę o "kontraktach", ale moja wiedza na ich temat jest zerowa i trochę mnie to bardziej pcha w stronę B2B.
@Bulczano Składka zawsze była obowiązkowa. Nowy Ład trochę pozmieniał w kontekście odliczenia jej od podatku. Ogólnie jesteś normalnie ubezpieczony jak każdy inny. Ja mam np. normalne dni urlopowe jak UoP, ale chorobowego już nie. Kosztów nie narobisz na tyle, aby iść w zasady ogólne, także zostaje ryczałt 12% lub jak lubisz żyć na krawędzi i ewentualnie sądzić się z urzędem skarbowym to IPBOX.
Zaloguj się aby komentować
#hejto #aplikacja
Czy wiadomo kiedy będzie oficjalna apka na Androida?
dzisiaj pisali ze troche obsuwa z apka jest
ale jest nieoficjalne hejtter i dziala nawet dobrze
@lubie_startyser_420 No właśnie ten hejter taki sobie jest, przez stronę jest zdecydowanie lepiej. A że nie lubię przez stronę, to czekam na apkę :)
@lubie_startyser_420 @Dr_Acula ogólnie to ja znam tych ziomków co tworzą hejto i oni są strasznie zamknięci, nie chcą w ogóle nowych osób chociaż masa się zgłaszała, chcą zrobić wszystko sami i widać, że się nie wyrabiają i myślę, że będzie coraz gorzej bo są tylko w 3.
Zaloguj się aby komentować
elo ludzie, #chatgpt pisze do mnie po angielsku, a wcześniej był PL.
co jest grane?
Jak odświeżysz stronę/rozpoczniesz nowy czat to się przestawia na PL. Nie wiem dlaczego tak, ale w ten sposób to omijałem.
Możesz też mu napisać na końcu pytania żeby odpowiedź była po polsku
spróbuj go poprosić o zmianę języka. u mnie to zadziałało. Coś w stylu 'can we switch to polish?' i myślę, że będzie git.
Zaloguj się aby komentować
Hej, jest tu ktoś kto programuje w #web3 #blockchain ?
#programowanie
#kryptowaluty
Zaloguj się aby komentować
W jaką stronę zmierza ta cała technologia? Z czasem powinno być prościej, a jest odwrotnie. Taki wykop, niby w działaniu nie jest jakiś skomplikowany, a tu nowy release i wielka wtopa. Nowe frameworki, narzędzia, języki, metodyki, technologie i jaki jest efekt? Taki że jak jakaś firma chce wypuścić komunikator to potrzebuje wielomilionowego budżetu. Przepisanie wykopu okazuje się wielkim wyzwaniem. A kiedyś takie rzeczy po prostu działały, były fora internetowe, miały otwarte silniki i to wszystko po prostu działało. GG był świetnym komunikatorem, bo po prostu działał i był prosty. W jakim kierunku to teraz zmierza, na prawdę nie wiem. Co chwile powstają jakieś rewolucyjne narzędzia które finalnie są jeszcze bardziej problematyczne w użyciu niż ich poprzednicy.
@DexterFromLab Weź też pod uwagę, mówiąc np. o Wykopie, że kiedyś strony internetowe były prostsze. Tworzyłeś szablon w HTMLu z CSSem i jakimiś minimalnym JS (a nawet bez) i potem serwer zwracał go wypełniony treścią. Cała komunikacja przy np. przesyłaniu formularzy POSTem szła przez przeładowanie całej strony. Z czasem pojawił się AJAX (era jQuery), potem SPA (era AngularJS, potem React, Angular, Vue), teraz mamy powrót do renderowania przez serwer, ale równocześnie tak, żeby mieć UX zbliżony do SPA (Next.js, Nuxt.js). To wszystko komplikuje sprawy. Do tego, jakieś 15 lat temu większość ludzi miała rozdzielczość typu 1024x768, to pod taką się tworzyło strony i tyle. Dziś trzeba robić responsywność, do tego biorąc pod uwagę, że nieco inaczej działa telefon a nieco inaczej komputer. Jedyne, co jest faktycznie prostsze to fakt, że już IE jest martwe.
Zresztą otwarte silniki stron dalej istnieją i ba, są dalej wykorzystywane. Chociażby Wordpress - większość internetu na nim stoi
@DexterFromLab @marmot Ale wykop spieprzył przenoszenie podstawowych funkcjonalności. Ja nie wiem jak to przeszło. Nie działają np. linki do komentarzy. Albo zrobienie paginacji... 21 wiek. Piszą, że trzy lata zajęło im napisanie wszystkiego od nowa, to ja nie wiem jaki zespół nad tym pracował, 5 osób? Przecież tam nie ma aż takich cudów wianków, żeby się z tym tyle grzebać. W ogóle, kto tam wymyślił, żeby 3 lata pracować nad serwisem społecznościowym. Przecież w takim czasie mocno zmieniają się trendy i oczekiwania. Ten projekt musiał być tragicznie prowadzony. Będzie kiedyś podawany jako przykład błędnego zarządzania.
@czupki Tu mogło dużo procesów nawalić, o czym my z zewnątrz możemy tylko spekulować - rotacja ludzi, jakość dokumentacji, jakość kodu, zebranie i analiza wymagań, testy. A nie zdziwiłbym się, jakby pracował nad tym wszystkim mały zespół. To się może wydawać, że tu nie ma dużo funkcjonalności, ale jest sporo takich drobnych i tego by się nawarstwiło na przynajmniej rok-półtora pracy developerskiej. Do tego okres zebrania/analizy wymagań, przygotowania designów, testów... Te trzy lata mogłyby nawet wyjść przy normalnym zarządzaniu (pamiętajmy, że ktoś może mówić 3 lata od momentu wymyślenia "o zrobię nową stronę").
Zaloguj się aby komentować
Nie wytrzymie, znowu wylogowalo i znowu nie dziala (╯ ͠° ͟ʖ ͡°)╯┻━┻ #hejto @hejto

Zaloguj się aby komentować
Widząc ostatnie problemy z hejto zacząłem się zastanawiać - co siedzi pod spodem?
Na froncie mamy nexta, ale na backendzie? Wczoraj widziałem przez chwilę 500 idący bezpośrednio z API i zauważyłem, że wygląda on podobnie jak ten z laravel lub symfony.
Co obstawiacie, że siedzi pod spodem?

@shrine08 jest gdzieś zapis streama?
@axo poszukałem na szybko ale teraz nie jestem pewien czy to nie był jakiś klon albicli jednak. Może @dev coś wie i powie
@shrine08 Z tego co pamiętam, to był stream tylko z Xepo. Samo Hejto nie do końca powstało w 24h, bo spora część kodu była już napisana wcześniej. Ale to dawne dzieje, ktoś musiałby przekopać się przez stare posty tutaj i na Wykopie.
Zaloguj się aby komentować
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
@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.
@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.
@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
@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
@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.
@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

@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
@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.
@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ć
#programowanie #programista15k #memy #heheszki

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
Zaloguj się aby komentować
Oj @hejto to chyba nie tylko DOS się tu wyprawia (jeśli w ogóle to DOS a nie napływ użytkowników :D) Tylko nie wrzucajcie całości w try-catcha ( ͡° ͜ʖ ͡°)

@JanPapieszPionty typie te errory są z javascriptu który się wykonuje w twojej przeglądarce a nie na serwerze…
@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
@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ć
#programowanie
Ile lat zawodowo programujesz?
Zaloguj się aby komentować
> C is a Spartan language, and so should your naming be
Fajna "lektura" polecam
https://www.kernel.org/doc/html/v4.10/process/coding-style.html
#linux #programowanie
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
@BrodatyChleb wszyscy tu myślą o feature'ach, a tu trzeba najpierw naprawić, co jest spierdolone xD
@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 ( ͡° ͜ʖ ͡°)
@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
@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
@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
Dodaję zdjęcie robotów. Nareszcie mogę dodać fotografie!



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
@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ć
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
Zaloguj się aby komentować