Spuštění bashe v docker kontejneru

Docker nabízí příkaz exec, který spustí zadaný příkaz v běžícím kontejneru. V tomto příspěvku jsem si vytvořil kontejner s databází PostgreSQL a k databázi jsem se připojil z lokálního počítače pomocí nástroje psql. Pokud chci v tomto kontejneru spustit bash v pseudoterminálu, použiji tento příkaz:

docker exec -it my-postgres bash

-i, --interactive: interaktivní vstup
-t, --tty: spustí pseudo terminál

Zdroj: stackoverflow.com/…/how-do-i-get-into-a-docker-containers-shell

Scope funkce v Kotlinu

Cílem block functions je vykonat blok kódu v kontextu daného kódu. To znamená, že pokud zavoláte takovou funkci na objektu s lambdou, vytvoří se rozsah (scope), ve kterém můžete k objektu přistupovat bez uvedení jeho jména. Tyto funkce se mezi sebou liší tím, jak je možné k objektu v rámci scope přistoupit a jaký je výsledek celého výrazu.

Číst dálScope funkce v Kotlinu

Peníze vs měna

Měna je konkrétní peněžní jednotka určitého státu. Měnou České republiky je Česká koruna. Peníze jsou prostředek směny. To jest prostředek používaný při směně. Bavíme se zde o nepřímé směně. Přímá směna by byla přímá výměna zboží za jiný druh zboží (např. slepice za boty). Peníze vznikly jako produkt trhu, který zjednodušuje směnu a uchovává (měl by) hodnotu. Peníze můžeme rozdělit do několika skupin:

  • Komoditní peníze
  • Papírové peníze a mince
  • Kryptoměny
  • Fiatové peníze
  • Bankovní peníze
  • Účetní peníze

Číst dálPeníze vs měna

Kam až může vyrůst cena bitcoinu

Jednoduchá odpověď je, že to nikdo neví. Můžeme se ale podívat na jiné prostředky a jejich ocenění.

Zlato
Bitcoin je považován za digitální zlato. Podle odhadů bylo doposud vytěženo okolo 200 000 tun zlata a něco přes 50 000 tun ho obsahují potvrzená naleziště. Pokud budeme vycházet z ceny 1 800$ za trojskou unci, dostaneme se na částku cca 11,5 bilionu dolarů (200 000 tun -> 200 000 000 kg -> 6 400 000 000 oz) * 1 800 = cca 11 500 000 000 000$ [1,152×1013]) jako na hodnotu doposud vytěženého zlata (visualcapitalist.com/chart-how-much-gold-is-in-the-world, gold.org/about-gold/gold-supply/gold-mining/how-much-gold)

Číst dálKam až může vyrůst cena bitcoinu

Kotlin delegated properties

Properties jsou většinou představeny odpovídajícím polem ve třídě (např. val x: Int). Mohou ale být i delegovány. Jejich hodnota je získána od toho, na koho byla tato práce přenesena (delegována). Jinak řečeno getValue a setValue funce zajišťuje delegovaný kód. Delegované vlastnosti se používají deklarováním vlastnosti a delegáta, kterého používají.

Příklad 1

class Example {
    var property: Int by Delegate()
}

class Delegate {
    var random = Random(0)

    operator fun getValue(thisRef: Any?, property: KProperty<*>): Int {
        println("$javaClass - getting random value | thisRef -> $thisRef, property -> $property")
        return random.nextInt()
    }

    operator fun setValue(thisRef: Any?, property: KProperty<*>, value: Int) {
        println("$javaClass creating new random with seed value: $value | thisRef -> $thisRef, property -> $property")
        random = Random(value)
    }
}

fun main() {
    val e = Example()
    println(e.property)
    e.property = 10
    println(e.property)
}

Číst dálKotlin delegated properties

Rozdíl mezi year-of-era a week-based-year

V rámci java.time.format.DateTimeFormatter je možné použít pro formátování roku malá y a velká Y. Špatně zvolené y může znamenat špatně dohledatelnou chybu. Malé y znamená year-of-era, což vytvoří očekávaný výstup, kdy 31.12. bude vždy jako poslední den v daném roce. Velké Y znamená week-based-year, což v případě týdnu, který spadá do více roků, vytvoří neočekávaný výstup. Pokud Silvestr (či pár předchozích dnů) připadnou do týdne, který nemá 31.12. v sobotu, budou dny poslední dny roku z přelomového týdne patřit do následujího roku. Příklad bude nejlepší. Takto to funguje na Linuxu, ale např. na Window byl výstup s velkým Y pro rok 2021 stejný jako pro malé y.

Číst dálRozdíl mezi year-of-era a week-based-year

Máš neuhrazenou platbu.

Spam, který vyděsí, protože „Máte neuhrazenou platbu“. Musím ale uznat, že je edukativní, protože přiměje některé lidi se špatným svědomím k tomu, aby si zjistili informace o bitcoinu :-).

Všechno, co po tobě chci, je jen odeslat na můj účet částku ve výši 40000 Kč (bitcoinový ekvivalent odpovídající směnnému kurzu platnému v době převodu) a poté, co bude transakce úspěšně dokončena, všechny tyhle perverznosti okamžitě smažu … Pokud nevíš, jak nakupovat a odesílat bitcoiny, snadno to můžeš napravit a veškeré související informace si vyhledat na internetu. Zde je moje bitcoinová peněženka: 18QoRGdPTpu6wMVKjf8PA43ZXndAJfrHvM K dispozici máš maximálně 48 hodin počítaných od doby otevření tohoto emailu (přesně 2 dny).

Číst dálMáš neuhrazenou platbu.

Co je bicoin halving

Půlení bitcoinu (halving) je snížení odměny těžařům (ti co potvrzují transakce) o polovinu. Maximální počet mincí bitcoinu (BTC) je 21 miliónů. Nové mince vznikají tzv. těžením, což proces, při kterém dochází k zabezpeční celé sítě bitcoinu. Tento proces je výpočetně náročný a samoregulační v tom, že pokud vzroste výpočetní výkon sítě (zvýšení počtu výpočetních strojů, kvalitativní skok ve výkonností strojů, …) vzroste i výpočetní náročnost úlohy, kterou se potvrdí předchozí blok transakcí v síti a jako odměnou za toto potvrzení (a spálení elektřiny k výpočtu) ten, kdo první toto potvrzení vypočte, dostane nové bitcoiny.

Číst dálCo je bicoin halving