Skip to content

Instantly share code, notes, and snippets.

View azdanov's full-sized avatar

Anton Ždanov azdanov

View GitHub Profile
@azdanov
azdanov / concurrency.md
Last active October 10, 2025 07:55
Java Secrets of Concurrency from Dr. Heinz Kabutz JavaSpecialists Newsletter

The Secrets of Java Concurrency

These laws originate from Dr. Heinz Kabutz's acclaimed "Secrets of Concurrency" series published in the JavaSpecialists Newsletter.


Law 1: The Law of the Sabotaged Doorbell

Statement: Instead of arbitrarily suppressing interruptions, manage them properly and respect the interrupt mechanism.

{
"timeStamp": 1759821642014,
"version": "1.66.4",
"userSettings": {
"advancedUserEnabled": true,
"cloudStorageEnabled": true,
"externalLists": "https://raw.githubusercontent.com/brave/adblock-lists/refs/heads/master/brave-lists/yt-shorts.txt",
"importedLists": [
"https://raw.githubusercontent.com/brave/adblock-lists/refs/heads/master/brave-lists/yt-shorts.txt"
],
{
"$schema": "https://raw.githubusercontent.com/microsoft/vscode-CSS-languageservice/refs/heads/main/docs/customData.schema.json",
"version": 1.1,
"atDirectives": [
{
"name": "@import",
"description": "Use the @import directive to inline import CSS files, including Tailwind itself",
"references": [
{
"name": "Documentation",

Project Infrastructure Guide

Version 1.0

This style guide covers the best practices and conventions for developing on our NextJS/React application.

This is a template document for you and your team to review. You don't need to answer all the questions. They are meant to spark discussion and help you document your team's best practices. Feel free to add, remove, or modify the questions to better fit your team's needs. Then remove the questions (and this paragraph) and replace it with your team's answers.

Some questions can be answered early on in the project, while others may require more time to implement. We recommend revisiting this document regularly to ensure it stays up to date.

Developer Setup

@azdanov
azdanov / .ideavimrc
Last active July 11, 2025 12:08
IdeaVim configuration based on AstroNvim mappings
" .ideavimrc configuration based on AstroNvim mappings
" Enable IdeaVim plugins
set ideajoin
set highlightedyank
set surround
set nerdtree
set which-key
set matchit
set commentary
@azdanov
azdanov / keymap.json
Created March 26, 2025 04:20
Zed keymap insipred by AstroNvim
[
{
"context": "Editor",
"bindings": {
"ctrl-h": ["workspace::ActivatePaneInDirection", "Left"],
"ctrl-j": ["workspace::ActivatePaneInDirection", "Down"],
"ctrl-k": ["workspace::ActivatePaneInDirection", "Up"],
"ctrl-l": ["workspace::ActivatePaneInDirection", "Right"],
"ctrl-s": "workspace::Save"
}
@azdanov
azdanov / meta_reloader.js
Last active March 6, 2025 20:04
Reloads Facebook and Messenger pages when leaving the tab to prevent high CPU usage
// ==UserScript==
// @name Facebook & Messenger Auto-Reloader
// @namespace http://tampermonkey.net/
// @version 1.1
// @description Reloads Facebook and Messenger pages when leaving the tab to prevent high CPU usage
// @author Me
// @match https://*.facebook.com/*
// @match https://*.messenger.com/*
// @grant none
// @run-at document-idle
@azdanov
azdanov / messenger.css
Created February 26, 2025 19:28
Reduce the space used on meta messenger
/* ==UserStyle==
@name Messenger reduce space
@author Me
@description Reduce the space used on messenger
@version 1.0.0
@license MIT
==/UserStyle== */
@-moz-document domain("messenger.com"), domain("www.messenger.com") {
div.__fb-dark-mode,
div.__fb-light-mode {
@azdanov
azdanov / yt-hover.js
Created February 26, 2025 19:26
Hover a thumbnail on YouTube to quickly mark "Not interested" or "Don't recommend channel"
// ==UserScript==
// @name YT: not interested in one click
// @description Hover a thumbnail on YouTube to quickly mark "Not interested" or "Don't recommend channel"
// @version 1.4.0
//
// @match https://www.youtube.com/*
//
// @noframes
// @grant none
//
@azdanov
azdanov / custom_emoji2.js
Created February 21, 2025 13:08
Replace Facebook's favicon with an emoji or custom SVG
// ==UserScript==
// @name Facebook Favicon
// @namespace http://tampermonkey.net/
// @version 1.0
// @description Replace Facebook's favicon with an emoji or custom SVG
// @author azdanov
// @match https://*.facebook.com/*
// @grant none
// @run-at document-start
// ==/UserScript==