Hejto.pl
Dodaj post

Wpisz coś do wyszukania (minimum 2 znaki)

#javascript

Osobistość

w IT

20piorunów

Widzę, że szukanie dziur w oprogramowaniu za pomocą AI musiało w ostatnim czasie wlecieć na pełnej bo zauważyłem, że od jakiegoś czasu co 2-3 dni dostaje powiadomienia o znalezionych podatnościach w moich repo. Jeszcze niedawno to było może raz na miesiąc portem tydzień. A jeszcze wcześniej to była rzadkość. A teraz prawie cały czas. To już się robi upierdliwe xD. To są powiadomienia dla samego next.js z ostatnich 4 dni xD. Odpowiadam za utrzymanie kilku takich aplikacji dla klientów i muszę to ciągle aktualizować, Jezu dajcie żyć...

GURU12piorunów

@Catharsis jest na to sposób podobno xD

https://x.com/g_br_l/status/2054528376841417145?s=20

Osobistość7piorunów

@entropy_ O chuj xD. Zostawili w komentarzach instrukcje dla botów aby napisały wiersz i te to robią xDDD. Ale złoto.

Pokaż więcej komentarzy (4)

Osobistość

w Hydepark

15piorunów

Najpopularniejszy framework świata zmienia właściciela. Meta uwalnia React

Najpopularniejszy framework front-end świata zmienia model zarządzania. React będzie rozwijany pod nadzorem nowo powołanej React Foundation, działającej przy wsparciu Linux Foundation oraz szeregu globalnych firm technologicznych. Decyzja oznacza formalne przekazanie kontroli nad projektem

Lider

w Javascript

5piorunów
If an attacker observes two or three consecutive outputs of Math.random(), they can reverse-engineer the internal state of the generator and predict all future (and past) values with 100% accuracy. This has been demonstrated in multiple research projects and open-source tools.

https://www.reddit.com/r/AskProgramming/comments/1qt1n0i/comment/o2ziocg/
Despite its quality, xorshift128+ is not cryptographically secure. For security-sensitive applications, use crypto.getRandomValues() instead

https://www.reddit.com/r/AskProgramming/comments/1qt1n0i/comment/o2ziocg/

W sumie wiadomo, że to pseudolosowe, ale 2-3 outputy żeby wyliczyć seed to trochę mało.

Pokaż więcej komentarzy (2)

Specjalista

w Programowanie

6piorunów

PHP na ratunek — o generowaniu dużych plików bez gotowania przeglądarki

Frontend czy backend do generowania CSV? :thinking_face:\ Ostatnio stanęłam przed klasycznym dylematem: wygoda JavaScriptu kontra odpowiedzialność backendu w PHP - z dużymi plikami, strumieniowaniem, pamięcią i realnymi konsekwencjami dla użytkownika.\ Jeśli interesują Cię techniczne

Lider

w Javascript

2piorunów

Vite: The Documentary

https://youtu.be/bmWQqAKLgT4

Fanatyk2piorunów

@Deykun - nawet mój ulubiony framework używa Vite.

SvelteKit przeszedł na Vite jako narzędzie do budowy w grudniu 2020 roku, rezygnując z wcześniejszej opcji, którą był Rollup. Ta zmiana została wprowadzona, aby skorzystać z szybszego podglądu w czasie pisania aplikacji, możliwości podmiany modułów oraz ogólnej poprawy wydajności budowania aplikacji, jakie oferuje Vite.

Gruba ryba

w Gównowpis

15piorunów

Biorę po 100zł (mmm, jak pachnie) i słucham Państwa ( ͡° ͜ʖ ͡°)

i w sumie

Fanatyk2piorunów

@vrkr - za duck.ai:
>Oto lista "głupich" rzeczy związanych z operatorami porównywania w JavaScript:
>
>1. Używanie `==` zamiast `===`: Operator `==` wykonuje konwersję typów, co może prowadzić do nieoczekiwanych wyników. Zawsze lepiej używać `===`, aby porównywać zarówno wartość, jak i typ.
>
>2. Porównywanie różnych typów bez zrozumienia: Porównywanie wartości różnych typów (np. liczby i stringi) może prowadzić do zaskakujących wyników, np. `0 == '0'` zwraca `true`, ale `0 === '0'` zwraca `false`.
>
>3. Używanie `!=` zamiast `!==`: Podobnie jak w przypadku `==`, operator `!=` wykonuje konwersję typów, co może prowadzić do błędów. Zawsze lepiej używać `!==`.
>
>4. Porównywanie obiektów: Porównywanie obiektów za pomocą operatorów porównania (np. `obj1 == obj2`) porównuje referencje, a nie zawartość obiektów, co może prowadzić do nieporozumień.
>
>5. Używanie `Object.is()` bez zrozumienia: `Object.is()` ma swoje specyficzne zasady porównywania (np. `NaN` jest równe `NaN`, a `-0` nie jest równe `+0`), co może być mylące.
>
>6. Porównywanie wartości `null` i `undefined`: Używanie `==` do porównania `null` i `undefined` zwraca `true`, co może prowadzić do niejasności, gdy nie jest to zamierzone.
>
>7. Zbyt skomplikowane wyrażenia porównawcze: Tworzenie złożonych wyrażeń porównawczych, które są trudne do zrozumienia, może prowadzić do błędów i utrudniać czytelność kodu.
>
>8. Ignorowanie kontekstu logicznego: Używanie operatorów porównania w kontekście logicznym (np. w instrukcjach warunkowych) bez zrozumienia, jak działają, może prowadzić do błędnych założeń.
>
>9. Porównywanie z `NaN`: `NaN` nie jest równe żadnej wartości, w tym samemu sobie, co może prowadzić do nieoczekiwanych wyników w porównaniach.
>
>10. Używanie operatorów porównania w pętlach bez zrozumienia: Używanie operatorów porównania w pętlach (np. `for`) bez zrozumienia ich działania może prowadzić do nieskończonych pętli lub błędów logicznych.
>
>Unikanie tych pułapek może pomóc w pisaniu bardziej niezawodnego i przewidywalnego kodu w JavaScript.

Fanatyk2piorunów

@vrkr - pociągnąłem tylko temat nie psując zabawy 😛

Gruba ryba0piorunów

>pociągnąłem tylko temat
( ͡° ͜ʖ ͡°)

Fanatyk3piorunów

@vrkr - dobra, AI pociągnęło :face_exhaling:

GURU3piorunów

@vrkr Tak na oko to obstawiłbym C. Myślę, że A zwraca true, B jest ciekawszym przypadkiem bo bez podania argumentów Math.min() będzie infinity, a Math.max() będzie -infinity także również będzie to true. NaN nie jest równy innemu obiektowi NaN i dalej nie muszę myśleć.

Autorytet3piorunów

@nbzwdsdzbcps jeszcze bym obstawiał, że wszystkie są prawdziwe, ale c wygląda zbyt logicznie jak na js XD

Gruba ryba5piorunów

@nbzwdsdzbcps ( ͡° ͜ʖ ͡°)

~ $ node
Welcome to Node.js v23.11.1.
Type ".help" for more information.
> Math.min() > Math.max()
true
> Math.min > Math.max
true

Pokaż więcej komentarzy (12)

Twórca

w Sysops / DevOps

1piorunów

NATS: Wydajny system przesyłania wiadomości - CzarnaOwca.IT

Wiem, że w świecie #programowanie i #linux mocne są #rabbitmq #amazonsqs itd. Czy programujesz w #javascript , #php , #python , #java czy #golang - przyda Ci się jakiś system kolejek. Tylko po co od razu się pchać w #rabbitmq lub #kafka ? Jest #nats NATS - lekki i wydajny system przesyłania

Inspirator

w Hydepark

1piorunów

Jak to jest zrobione?
To specjalny popup, w trybie zawsze na wierzchu.
Na Firefox ta funkcja nie jest dostępna.

https://www.socialmediatoday.com/news/tiktok-floating-player-desktop-facilitate-expanded-viewing/716927/

Działa na wzór Picture in Picture, ale z pełnym HTMLem.

https://www.youtube.com/watch?v=EnlkqSVWheE

Sum0piorunów

@fewtoast To jest picture-in-picture, w obydwu przypadkach, ale przez to, że Chrome wspiera API picture-in-picture, to mogli dodać customowy przycisk, który zmienia stan. Na Firefox przycisk do zmiany stanu picture-in-picture zobaczysz na każdym elemencie video (niekoniecznie tylko na TikTok), jeżeli source jest dłuższy niż 45s (można zmienić to w ustawieniach) i jeżeli nie ma ustawionego atrybutu disablePictureInPicture .

Link do API: https://developer.mozilla.org/en-US/docs/Web/API/Picture-in-Picture_API

HTMLVideoElement: disablePictureInPicture property - Web APIs | MDNThe HTMLVideoElement disablePictureInPicture property reflects the HTML attribute indicating whether the picture-in-picture feature is disabled for the current element.MDN Web Docs
Inspirator0piorunów

@renkeri Ale to nie jest samo wideo. No już mam info że jest PiP dla HTML, nie tylko dla wideo.

Mi się PiP dla wideo w stylu Firefoksa w ogóle nie podoba, to jest bardzo zawodne. Takie pełne, pod kontrolą strony, jest lepsze, stabilniejsze.
Mi YouTube czy inne wideo wywala jak coś net przytnie na przykład i to jest męczące wtedy.

A gdyby cały HTML w to wczedł, własny player, tak jak tu na TikTok, to już w ogóle super by było. A nie taki niedorobiony player wideo PiP, gdzie wszystko Firefox musi ręcznie obsługiwać, dublować. A i tak nie działa za dobrze. A to wszystko niby żeby było bezpieczniej chyba.

Kompletnie pusta zmarnowana robota.

Pokaż więcej komentarzy (2)

Fanatyk

w Hydepark

5piorunów


jaki znacie najlżejszy framework ?
Do tej pory zawsze jak coś pisałem to robiłem to w vanilla js ale to troche masochizm.
Coś absolutnie elementarnego, bo nie planuję iść we frontend ale chce zrobić ładną prostą i lekką stronę wizytówkę

Osobistość0piorunów

@redve Mamy prawie 2k25, naprawdę przy wyborze frameworka nie kierowałbym się jego wydajnością i lekkością bo pomiędzy topką frameworków na współczesnym sprzęcie nie zauważysz większej różnicy. Przepisywałem rok temu projekt z vanilla na Reacta i chodzi identycznie, zużywa może 15mb ramu więcej.

Tak więc polecam Reacta po prostu bo zwyczajnie jest najpopularniejszy, masz do niego najwięcej bibliotek komponentów. custom hooków i tutoriali. Jeżeli chcesz lżejszą wersje reacta to istnieje Preact ale nigdy się tym nie bawiłem. A jak już ogarniesz Reacta to prosta droga do np Next.js i wtedy dopiero zaczyna się zabawa. Owszem są jeszcze np Vue czy Svelte z takich popularniejszych i przyjemniejszych ale generalnie jak nie znasz żadnego frameworka to nie zrobi ci różnicy którego się będziesz uczyć. Ważne jedynie, abyś się uczył z aktualnych materiałów bo te wszystkie frameworki to co jakiś czas dostają jakieś game breaking zmiany które na nowo definiują jak się w nim pisze (np teraz Svelte i jego runy xd).

Fanatyk1piorunów

@Catharsis - ja bym tę listę odwrócił i zaczął od Svelta - teraz z wersją 5 będzie raczej tylko ewolucja - poza tym ze Sveltem migracja do wyższej wersji była w 99% wykonywana automatycznie przez skrypt, który radził sobie nawet z edge cases.
React to kobyła - do tego jak dla mnie nieintuicyjna - nad zrobieniem czegoś średnio prostego musiałem spędzić najwięcej czasu ze wszystkich frameworków - dla początkujących zwłaszcza nie polecam.

Osobistość1piorunów

@koszotorobur Owszem sam start w Reatcie jest dość ciężki, ale jak się już ogarnie podstawy to kod się potem sam pisze. A tak jak mówię, nie widzę różnicy w działaniu małych projektów w Reactcie czy Vanilla a dużego projektu nikt nie będzie pisać Vanilla więc rozmiar frameworka nie ma znaczenia.

No i jest więcej ofert pracy w Reactcie :D. Ale on w sumie potrzebuje tylko do strony wizytówki, to w sumie moja strona wizytówka jest napisana w czystym HTML + CSS +JS bez użycia żadnych dodatkowych bibliotek, jedynie używam Vite do live preview podczas pisania oraz minifikowania kodu podczas budowania i eksportu xd.

Pokaż więcej komentarzy (17)

Gruba ryba

w Programowanie

8piorunów

Stworzyłem projekt, który wyświetla listę serwerów CS2D, zbudowany w Node.js przy użyciu Fastify. Oto najnowsze zmiany:

* Zaktualizowany interfejs UI dla lepszego doświadczenia użytkownika
* Dodano opisy do dokumentacji API
* Wprowadzono nową stronę statystyk
* Optymalizacja kodu dla lepszej wydajności
* Zintegrowano Highlight.js dla lepszego podświetlania składni

Sprawdź to tutaj: https://cs2d-serverlist.erpa.cc/
Zobacz kod na GitHubie: https://github.com/ernestpasnik/cs2d-serverlist

Dajcie znać, co myślicie! 🎉

BTW Fastify > Express.js

Lider

w Heheszki

24piorunów

Dzisiaj minęły 3 dni od kiedy zainstalowałem aplikacje do rzucania palenia.

Nigdy nie paliłem.

:smoking:

Fanatyk17piorunów

@Deykun no to trochę zjebales, trzeba było palić, żebyś mógł teraz rzucić i oszczędzać

GURU2piorunów

@Zielczan ja wczoraj wypiłam jedną puszkę coli, żeby od dziś odstawić słodkie gazowane napoje i schudnąć

Lider0piorunów

@Zielczan ale nie kupiłbym porsche.

Pokaż więcej komentarzy (4)

Zawodowiec

w Programowanie

7piorunów

Wprowadzenie do Puppeteer - devszczepaniak.pl

Puppeteer to biblioteka JavaScript dostarczająca API do pracy z przeglądarką Chrome w trybie headless. Pozwala to między innymi na scraping stron WWW czy uruchamiania skryptów JavaScript wykorzystujących API przeglądarek w środowisku Node.js. W artykule dowiesz się więcej o