See how a minor change to your commit message style can make you a better programmer.
Format: <type>(<scope>): <subject>
<scope>
is optional
// This helper file provides a consistent API for testing Stimulus Controllers | |
// | |
// Use: | |
// import { getHTML, setHTML, startStimulus } from './_stimulus_helper'; | |
// import MyController from '@javascripts/controllers/my_controller'; | |
// | |
// beforeEach(() => startStimulus('my', MyController)); | |
// test('should do something', async () => { | |
// await setHTML(`<button data-controller="my" data-action="my#action">click</button>`); | |
// |
Please consider using http://lygia.xyz instead of copy/pasting this functions. It expand suport for voronoi, voronoise, fbm, noise, worley, noise, derivatives and much more, through simple file dependencies. Take a look to https://github.com/patriciogonzalezvivo/lygia/tree/main/generative
float rand(float n){return fract(sin(n) * 43758.5453123);}
float noise(float p){
float fl = floor(p);
float fc = fract(p);
#include <Windows.h> | |
#include <stdio.h> | |
#define PRINTDEBUG(fmt, ...) printf(fmt "\n", ##__VA_ARGS__) | |
#define NT_SUCCESS(Status) ((NTSTATUS)(Status) >= 0) | |
#define WORKER_FACTORY_FULL_ACCESS 0xf00ff | |
typedef struct _UNICODE_STRING { |
A. Schneider, "Real-Time Volumetric Cloudscapes," in GPU Pro 7: Advanced Rendering Techniques, 2016, pp. 97-127. (Follow up presentations here, and here.)
S. Hillaire, "Physically Based Sky, Atmosphere and Cloud Rendering in Frostbite" in Physically Based Shading in Theory and Practice course, SIGGRAPH 2016. [video] [course notes] [scatter integral shadertoy]
[R. Högfeldt, "Convincing Cloud Rendering – An Implementation of Real-Time Dynamic Volumetric Clouds in Frostbite"](https://odr.chalmers.se/hand
// SPDX-License-Identifier: MIT | |
// Copyright (c) 2023 Rink Springer <rink@rink.nu> | |
// | |
// Based on https://github.com/Neargye/magic_enum/blob/master/include/magic_enum.hpp | |
// Copyright (c) 2019 - 2022 Daniil Goncharov <neargye@gmail.com>. | |
// | |
// Permission is hereby granted, free of charge, to any person obtaining a copy | |
// of this software and associated documentation files (the "Software"), to deal | |
// in the Software without restriction, including without limitation the rights | |
// to use, copy, modify, merge, publish, distribute, sublicense, and/or sell |
from tqdm import tqdm | |
from time import sleep | |
import psutil | |
with tqdm(total=100, desc='cpu%', position=1) as cpubar, tqdm(total=100, desc='ram%', position=0) as rambar: | |
while True: | |
rambar.n=psutil.virtual_memory().percent | |
cpubar.n=psutil.cpu_percent() | |
rambar.refresh() | |
cpubar.refresh() |
<FlatList | |
data={images} | |
horizontal | |
pagingEnabled | |
keyExtractor={...} | |
renderItem={...} | |
onMomentumScrollEnd={(event) => { | |
const index = Math.floor( | |
event.nativeEvent.contentOffset.x / | |
event.nativeEvent.layoutMeasurement.width |
Netboot images are deprecated (not available at all for 20.10+) so debootstrap
utility is used instead. I will install
minimal Plasma desktop and enable OEM mode. Then I can create my user account from within OEM session.
It seems like Chromium DEB is no longer updated, which is a huge security risk (v87 in repos, v89 upstream). "Sources list from 18.04" section is now removed, it is recommended to use Flatpak instead.