TIL, że twórcy NewPipe, aplikacji klienckiej do Youtube’a przyjmują datki W ramach głosowania portfelem przelałem już pierwszą daninę
TIL, że można overclockować card reader w RaspberryPi: https://www.jeffgeerling.com/blog/2016/how-overclock-microsd-card-reader-on-raspberry-pi-3
TIL, że docker-compose
może się zwiesić przy użyciu jakiejkolwiek podkomendny (yep, nawet help
) przy zbyt małym poziome entropii! ref
TIL, że przy uruchamianiu Postgresa w Dockerze z bind mountem w stylu:
.db:/var/lib/postgresql/data
i ustawionym dla Dockera id usera (opcja --user
żeby zapobiec problemom z permissionami np. przy zmianie brancha w Gicie nie zadziała to out-of-the-box. Komendy postgresowe owszem mają w tyłku na jakim userze się je odpala, ale initdb
już nie (będzie na nas krzyczał, że dany user nie istnieje w systemie). Najprostszym (i chyba najlepszym, bo to środowisko lokalne) rozwiązaniem jest zbindowanie /etc/passwd
:
'/etc/passwd:/etc/passwd:ro'
TIL, że istnieje fajny firewall na poziomie systemu pod linux’a: GitHub - evilsocket/opensnitch: OpenSnitch is a GNU/Linux port of the Little Snitch application firewall
TIL o rozszerzeniu accessibility dt symulacji tzw color blindness w FF 70: https://developer.mozilla.org/en-US/docs/Tools/Accessibility_inspector/Simulation
TIL: https://devhints.io/ “ściągawki” do wybranej technologii z której korzystacie
TIL wyformatowanie wybranych plików przez prettiera:
prettier --write \"**/*.{js,jsx}\"
warto dodatkowo utworzyć plik .prettierignore
z wskazaniem na node_modules
:
**/node_modules
TIL: świetna libka do budowania funkcjonalnych tabel z stylem materialowym w reactcie:
TIL: polecenie inxi
potrafi wyświetlić bardzo zadowalające logi na temat naszego hardware’u:
$ inxi -Fxxx
System: Host: thinkpad-x270 Kernel: 5.2.11-1-MANJARO x86_64 bits: 64 compiler: gcc v: 9.1.0 Desktop: Xfce 4.14.1
tk: Gtk 3.24.10 info: xfce4-panel wm: xfwm4 dm: LightDM 1.30.0 Distro: Manjaro Linux
Machine: Type: Laptop System: LENOVO product: 20HN0057PB v: ThinkPad X270 serial: <root required> Chassis: type: 10
serial: <root required>
Mobo: LENOVO model: 20HN0057PB v: 0B98417 WIN serial: <root required> UEFI: LENOVO v: R0IET57W (1.35 )
date: 03/25/2019
Battery: ID-1: BAT0 charge: 17.1 Wh condition: 17.1/23.5 Wh (73%) volts: 12.7/11.4 model: LGC 45N1113 type: Li-ion
serial: 5426 status: Full cycles: 131
ID-2: BAT1 charge: 19.4 Wh condition: 19.4/23.5 Wh (83%) volts: 12.7/11.4 model: LGC 45N1127 type: Li-ion
serial: 1509 status: Full cycles: 311
CPU: Topology: Dual Core model: Intel Core i7-7500U bits: 64 type: MT MCP arch: Kaby Lake rev: 9 L2 cache: 4096 KiB
flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx bogomips: 23240
Speed: 3374 MHz min/max: 400/3500 MHz Core speeds (MHz): 1: 3466 2: 3330 3: 3394 4: 3317
Graphics: Device-1: Intel HD Graphics 620 vendor: Lenovo driver: i915 v: kernel bus ID: 00:02.0 chip ID: 8086:5916
Display: x11 server: X.Org 1.20.5 driver: intel unloaded: modesetting alternate: fbdev,vesa
resolution: 1920x1080~60Hz, 1920x1200~60Hz, 1920x1200~60Hz
OpenGL: renderer: llvmpipe (LLVM 8.0 256 bits) v: 3.3 Mesa 19.1.5 compat-v: 3.1 direct render: Yes
Audio: Device-1: Intel Sunrise Point-LP HD Audio vendor: Lenovo driver: snd_hda_intel v: kernel bus ID: 00:1f.3
chip ID: 8086:9d71
Sound Server: ALSA v: k5.2.11-1-MANJARO
Network: Device-1: Intel Ethernet I219-V vendor: Lenovo driver: e1000e v: 3.2.6-k port: efa0 bus ID: 00:1f.6
chip ID: 8086:15d8
IF: enp0s31f6 state: up speed: 1000 Mbps duplex: full mac: 54:e1:ad:9c:48:c3
Device-2: Intel Wireless 8265 / 8275 driver: iwlwifi v: kernel port: efa0 bus ID: 03:00.0 chip ID: 8086:24fd
IF: wlp3s0 state: down mac: b2:03:48:0d:b6:6c
IF-ID-1: br-bdcc85918ae0 state: down mac: 02:42:74:a5:d2:3f
IF-ID-2: docker0 state: down mac: 02:42:10:00:15:88
IF-ID-3: wwp0s20f0u3 state: down mac: 6e:0e:bc:5d:84:63
Drives: Local Storage: total: 476.94 GiB used: 64.31 GiB (13.5%)
ID-1: /dev/nvme0n1 vendor: Toshiba model: N/A size: 476.94 GiB speed: 31.6 Gb/s lanes: 4 serial: X7SS10RGTR4T
rev: 51045KLA scheme: GPT
Partition: ID-1: / size: 115.20 GiB used: 64.29 GiB (55.8%) fs: ext4 dev: /dev/nvme0n1p6
Sensors: System Temperatures: cpu: 64.0 C mobo: N/A
Fan Speeds (RPM): cpu: 4878
Info: Processes: 213 Uptime: 3h 34m Memory: 15.56 GiB used: 9.23 GiB (59.3%) Init: systemd v: 242 Compilers: gcc: 9.1.0
clang: 8.0.1 Shell: bash v: 5.0.9 running in: xfce4-terminal inxi: 3.0.36
TIL: Można użyć CSS’a w consoli przeglądarki:
console.log('%c Oh my heavens! ', 'background: #222; color: #bada55');
Dokładnie mówiąc to nie jest rozszerzenie, tylko funkcja wbudowana w FF
Wsparcie ma również pod Chrome
TIL o istnieniu elementu base
w HTML. Element ten po umieszczeniu w <head>
zmienia główny adres, względem którego są resolvowane adresy relatywne:
Defaultowo korzysta z tego @angular-cli
, jednak sprawia problemy przy zagłębionym routingu kiedy pod wybraną ścieżką kierujemy do innej aplikacji angularowej
TIL: Napotkałem problem https://reactjs.org/warnings/invalid-hook-call-warning.html dzięki pomocy @kuba-orlik okazało się że problem dotyczył wielu instancji Reacta w projekcie, wystarczyło usunąć react
oraz react-dom
z package.json
jednego z modułów.
TIL: Świetna biblioteka do tworzenia własnych modułów reactowych: https://github.com/transitive-bullshit/create-react-library
coś na wzór create-react-app
, ale dla bibliotek
Jednolinijkowiec do generowania mieszanki brązowego i różowego szumu, przypominającej dźwięk nadmorskich fal:
play -n synth brownnoise synth pinknoise mix synth sine amod 0.1 20
Dobre do odcięcia się od zewnętrznych bodźców dźwiękowych podczas pracy! ref.
TIL, kiedy musicie czekać na API, możecie użyć tego mocka np.
TIL, jeszcze lepsze narzędzie do mocków API, wspiera paginację, searcha, etc.
TIL o istnieniu n8n.io - self-hostowanej, open-source’owej apce do automatyzowania procesów pomiędzy różnymi aplikacjami (coś jak IFTTT):
TIL:
Kiedy przeklepujemy jakąś krótką funkcję operującą na dużych intach (64 bity) oraz na unsigned intach trzeba na to uważać.
Jeżeli chodzi o duże inty to mamy typ BigInt
(trzeba go potem jawnie konwertować na Number), jest wspierany od Node’a 10
W przypadku potrzeby trybu unsigned prostym rozwiązaniem jest skorzystaniem z zero fill right shift:
value_we_want_to_be_represented_as_unsigned_int >>> 0
TIL o nowym property w CSS: contain
. Może być użyty do przyspieszania renderownia CSS-a na stronie
TIL, że tsc --watch
nie daje takich samych plików wynikowych co tsc --build
. --watch
jest flagą, którą możemy dodać zarówno do komendy tsc
, jak i do komendy tsc --build
(wtedy mamy tsc --build --watch
).