Skip to content

Instantly share code, notes, and snippets.

View 62mkv's full-sized avatar

Kirill M 62mkv

  • Breakwater Technology
  • Tallinn, Estonia
View GitHub Profile
@62mkv
62mkv / Color_all_inversed_connectors.groovy
Last active February 4, 2025 13:02
Freeplane Scripts
// Import necessary Freeplane and Java classes
import org.freeplane.plugin.script.proxy.Proxy
import org.freeplane.plugin.script.proxy.Proxy.Node
import java.awt.Color
// Function to get all leaf nodes in natural order
def getAllLeafNodes(Node node, List<Node> leaves = []) {
if (node.children.size() == 0) {
leaves << node
} else {
@62mkv
62mkv / README.md
Created September 25, 2024 16:26
How to find a thread that opened a window (Windows 10 x64)
  • run "C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\Tools\spyxx_amd64.exe"
  • click on "Find window" (Ctrl-F)
  • click "Hide Spy", click-press Finder Tool and drag him on the window you want identified
  • click "OK" -> you'll get to see "Property Inspector" for this window
  • if the window in question is not "enough" you can navigate to a "Parent" or "Next" or "Child" windows, using Windows tab in Property Inspector
  • on the window of choice, open "Process" tab
  • open Calc, choose "Programmer" mode, choose "Hex"
  • enter Process ID in Calc, it will be displayed as Dec value on the left hand
  • open Process Explorer
  • navigate to the process by ID (or by using a Find Windows Process - it also works but it only shows Process, not thread)
@62mkv
62mkv / README.md
Last active May 11, 2024 21:32
OpenStreetMap / OverPass cheatsheet

Find all car repairs services, open on Saturday:

Open http://overpass-turbo.eu/ and paste this into query area, then press "Run"

/*
This has been generated by the overpass-turbo wizard.
The original search was:
“shop=car_repair”
*/
@62mkv
62mkv / README.md
Created October 11, 2019 08:46
How to add a custom trusted certificate for making HTTP requests against external sites

Thoughts on how to add trusted store for connection to external sites that use that certificate for HTTPS

Option 1: global configuration

One can just provide the -Djavax.net.ssl.trustStore=<path/to/store> -Djavax.net.ssl.trustStorePassword=<password> options when running the Java application

However, this is not always possible (for example, when run in the cloud).

And if you want to use server.ssl.trust-store/server.ssl.trust-store-password options from Spring Boot, be aware that with those you also have to provide key-store options as well. And, basically that would be an abuse, because this configuration is specifically for server side of your application.

When we have source.json file with a following structure:

{
    "groupId": "bla-bla-bla",
    "members": 25,
    "topics": 25,
    "simple": false,
    "partitionAssignor": "range",
    "state": "STABLE",
@62mkv
62mkv / README.md
Last active December 14, 2023 13:14
Wikidata SPARQL queries

Examples of SPARQL Wikidata queries:

List of hills in Estonia without defined elevation

SELECT ?item ?itemLabel ?geo ?elevation WHERE {
  ?item wdt:P31 wd:Q54050;
    wdt:P17 wd:Q191;
        wdt:P625 ?geo.
    OPTIONAL { ?item wdt:P2044 ?elevation }
    SERVICE wikibase:label { bd:serviceParam wikibase:language "et" } 
@62mkv
62mkv / README.md
Created November 22, 2023 15:34
Postgre recipes

Show table size in bytes with a percentage of all tables size

with t as (select * from pg_catalog.pg_tables
where schemaname = 'public'), 
sizes as (
select t.tablename, pg_total_relation_size(t.tablename::regclass) _size from t
order by 2 desc),
total as (select sum(_size) _size from sizes)
select sizes.tablename, sizes._size, to_char(sizes._size / total._size * 100.0,'999D99%') from sizes, total;
@62mkv
62mkv / README.md
Last active May 28, 2023 10:39
How to run "Zipkin2 + Elasticsearch" with Docker Desktop on Windows 10 with WSL2 backend

Problem

Turns out, Zipkin, when run "simply" with something like docker run openzipkin/zipkin:latest, dies out of OOM very soon, under any meaningful load. To prevent this from happening, one would want to run it together with a storage backend, like Elasticsearch. Unfortunately, Zipkin docs are probably hopelessly outdated, at least, I could not achieve this based on their README alone.

Solution

Create this docker-compose.yaml:

package org.example;
import io.opentelemetry.api.trace.SpanKind;
import io.opentelemetry.api.trace.Tracer;
import io.opentelemetry.api.trace.Span;
import io.r2dbc.proxy.core.*;
import io.r2dbc.proxy.listener.ProxyMethodExecutionListener;
import static java.util.stream.Collectors.joining;
@62mkv
62mkv / README.md
Created March 6, 2020 10:10
Docker Desktop is not respecting proxy settings under Windows 10 Professional

Docker Desktop is not respecting proxy settings under Windows 10 Professional

SOLUTION:

  • Option 1:configure Docker Desktop to use Manual proxy settings: the "whale" context menu / Settings / Resources / Proxies / Manual proxy configuration
  • Option 2: (might work, didn't test) set HTTP_PROXY / HTTPS_PROXY / NO_PROXY as system environment variables, not user ones

In both cases, restart Docker Server

Original Problem: