<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://yanevskiv.com/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://yanevskiv.com/feed.php">
        <title>Ivan&#039;s wiki</title>
        <description></description>
        <link>https://yanevskiv.com/</link>
        <image rdf:resource="https://yanevskiv.com/_media/logo.png" />
       <dc:date>2026-04-22T12:18:28+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://yanevskiv.com/115200?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/arduino-uno-r4-wifi?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/assert.h?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/bash-internal?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/c-headers?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/c-standard-library?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/ci-cd?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/complex.h?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/coreutils?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/ctype.h?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/do-while-0?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/docker?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/embedded-glossary?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/eof?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/eqn-electromagnetism?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/errno.h?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/exit-status?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/function-macro?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/gist-docker?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/gist-git?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/gist-semaphores?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/git?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/gitignore?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/gnu-linux?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/home?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/hpc?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/ifupdown?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/landauers-principle?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/latex-syntax?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/latex?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-algorithms?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-c-concepts?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-c-headers?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-commands?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-concepts?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-cpp-concepts?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-cpp-headers?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-data-structures?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-hardware?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-headers-cpp?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-latex-commands?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-mathematical-topics?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-miscellaneous-topics?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-parallel-computing-concepts?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-paths?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-software-engineering-concepts?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-software-engineering-tools?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-syntaxes?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-system-commands?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/list-of-tools?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/main-return?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/mathematical-maturity?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/my-bookmarks?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/name-mangling?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/net-config?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/nih-syndrome?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/numbers-every-programmer-should-know?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/path-usr?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/path-var?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/pdflatex?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/perf?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/posix-headers?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/pragma-once?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/qubit-gates-in-c?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/qubit?rev=1776805192&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/ruin-theory?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/rule-of-5?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/schrodinger?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/semaphore.h?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/semaphore?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/shell?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/ssh?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/stdbool.h?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/string.h?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/strunk-and-white?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/terminal?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/test-driven-development?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/thinkpad?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/tmux?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/todo?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/topics?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/util-linux?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/vps?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/wip-example?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/writing-style?rev=1776801200&amp;do=diff"/>
                <rdf:li rdf:resource="https://yanevskiv.com/yanevskiv-wiki?rev=1776801200&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://yanevskiv.com/_media/logo.png">
        <title>Ivan's wiki</title>
        <link>https://yanevskiv.com/</link>
        <url>https://yanevskiv.com/_media/logo.png</url>
    </image>
    <item rdf:about="https://yanevskiv.com/115200?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>115200</title>
        <link>https://yanevskiv.com/115200?rev=1776801200&amp;do=diff</link>
        <description>115200

115200 is the default baud rate for Arduino USB-UART communication.

picocom

You specify the baudrate using -b option.



 $ picocom /dev/ttyACM0 -b 115200


To exit picocom, use Ctrl + A, X. This means holding control and pressing &#039;A&#039; and &#039;X&#039;. Don&#039;t release control while switching from &#039;A&#039; to &#039;X&#039;.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/arduino-uno-r4-wifi?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Arduino Uno R4 WiFi</title>
        <link>https://yanevskiv.com/arduino-uno-r4-wifi?rev=1776801200&amp;do=diff</link>
        <description>Arduino Uno R4 WiFi

Documentation:

	* &lt;https://docs.arduino.cc/hardware/uno-r4-wifi/&gt;</description>
    </item>
    <item rdf:about="https://yanevskiv.com/assert.h?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title></title>
        <link>https://yanevskiv.com/assert.h?rev=1776801200&amp;do=diff</link>
        <description>&lt;assert.h&gt;

In C programming language, &lt;assert.h&gt; is a header which is part of the C standard library. It provides assert(), which is used for runtime assertions.

A runtime assertion is when you want to exit the program early because important condition isn&#039;t met. For example, you tried to allocate memory with</description>
    </item>
    <item rdf:about="https://yanevskiv.com/bash-internal?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of internal Bash shell commands</title>
        <link>https://yanevskiv.com/bash-internal?rev=1776801200&amp;do=diff</link>
        <description>List of internal Bash shell commands</description>
    </item>
    <item rdf:about="https://yanevskiv.com/c-headers?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>C headers</title>
        <link>https://yanevskiv.com/c-headers?rev=1776801200&amp;do=diff</link>
        <description>C headers

C headers offer an interface to the C standard library.

List of headers

	* &lt;assert.h&gt;
	* &lt;complex.h&gt;
	* &lt;ctype.h&gt;
	* &lt;errno.h&gt;
	* fenv.h
	* float.h
	* inttypes.h
	* iso646.h
	* limits.h
	* locale.h
	* math.h
	* setjmp.h
	* signal.h
	* stdalign.h
	* stdarg.h
	* stdatomic.h
	* stdbit.h
	* &lt;stdbool.h&gt;
	* stdckdint.h
	* stddef.h
	* stdint.h
	* stdio.h
	* stdlib.h
	* stdmchar.h
	* stdnoreturn.h
	* &lt;string.h&gt;
	* tgmath.h
	* thread.h
	* time.h
	* uchar.h
	* wchar.h
	* wctype.h

Links

	* &lt;…</description>
    </item>
    <item rdf:about="https://yanevskiv.com/c-standard-library?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>C standard library</title>
        <link>https://yanevskiv.com/c-standard-library?rev=1776801200&amp;do=diff</link>
        <description>C standard library

C standard library is one library that&#039;s always linked by default when you compile C programs.

To use the library, a set of headers is offered which you can include by default.

For example, &lt;stdlib.h&gt; and &lt;stdio.h&gt; in this code are headers from the C standard library (but there are also headers which are</description>
    </item>
    <item rdf:about="https://yanevskiv.com/ci-cd?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>CI/CD</title>
        <link>https://yanevskiv.com/ci-cd?rev=1776801200&amp;do=diff</link>
        <description>CI/CD

CI/CD stands for “continuous integration / continuous delivery”. It is a term used for a set of pratcies you put in place in order to simultaneously accomplish the following two:

	* Quickly integrate changes you make to your software into production (</description>
    </item>
    <item rdf:about="https://yanevskiv.com/complex.h?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title></title>
        <link>https://yanevskiv.com/complex.h?rev=1776801200&amp;do=diff</link>
        <description>&lt;complex.h&gt;

In C programming language, &lt;complex.h&gt; is a header which is part of the C standard library (specifically, C99). It implements the algebra of complex numbers $\mathbb C$.

You need at least version C99 to use this header, so compile with gcc -std=c99 main.c -o program$2 + i3$$i$$z = 2 + i3$$|z|$$e^z$$\log(z)$$\sin(z)$$\cos(z)$$\tan(z)$</description>
    </item>
    <item rdf:about="https://yanevskiv.com/coreutils?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of coreutils commands</title>
        <link>https://yanevskiv.com/coreutils?rev=1776801200&amp;do=diff</link>
        <description>List of coreutils commands

coreutils (or GNU core utilities) are a set of commands inherited from Unix and implemented by the GNU project.

These commands are pretty much available on all GNU/Linux systems, no matter the distro.

The following is a table of coreutil commands. You can use</description>
    </item>
    <item rdf:about="https://yanevskiv.com/ctype.h?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title></title>
        <link>https://yanevskiv.com/ctype.h?rev=1776801200&amp;do=diff</link>
        <description>&lt;ctype.h&gt;

In C programming language, &lt;ctype.h&gt; is a header which is part of the C standard library. It gives you functions related to the character type char. Although it does sound like it&#039;s something about C types (like short, int, float, double) rather than strictly about</description>
    </item>
    <item rdf:about="https://yanevskiv.com/do-while-0?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>do { ... } while (0)</title>
        <link>https://yanevskiv.com/do-while-0?rev=1776801200&amp;do=diff</link>
        <description>do { ... } while (0)

In C programming language,do { ... } while (0) is a loop which does a single iteration. A compiler will optimize it away completely, so the syntax produces no actual machine code.

Most commonly, it&#039;s used to make function-macros.

Example:


/*
 * - clearing psr.i is implicitly serialized (visible by next insn)
 * - setting psr.i requires data serialization
 * - we need a stop-bit before reading PSR because we sometimes
 *   write a floating-point register right before rea…</description>
    </item>
    <item rdf:about="https://yanevskiv.com/docker?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Docker</title>
        <link>https://yanevskiv.com/docker?rev=1776801200&amp;do=diff</link>
        <description>Docker

What is docker?

Docker is a tool for managing containers. Containers are somewhat like virtual machine instances except a lot more lightweight.

Think of an application e.g. a web app. You want to run the application, but you don&#039;t want to pollute your host</description>
    </item>
    <item rdf:about="https://yanevskiv.com/embedded-glossary?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Embedded engineering glossary</title>
        <link>https://yanevskiv.com/embedded-glossary?rev=1776801200&amp;do=diff</link>
        <description>Embedded engineering glossary

	* QNX (Quantum Network eXecutive) - A proprietary real-time operating system (RTOS)
	* Lock-free queue - An efficient MT-safe queue implemented only using atomic instructions with no spinlocks, semaphores or mutexes.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/eof?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>EOF</title>
        <link>https://yanevskiv.com/eof?rev=1776801200&amp;do=diff</link>
        <description>EOF

EOF is an acronym that stands for “End of file”

Shell

In shell, EOF is commonly used as a terminator in what is called a heredoc (“here document”).
It&#039;s when you want to supply a multiline text to a command to its standard output, using &lt;&lt;.



 $ cat &gt; hello.txt &lt;&lt; EOF
Here, you can write anything you like.
It&#039;s not over until you actually type E-O-F.
You can cancel with Ctrl + C.
EOF</description>
    </item>
    <item rdf:about="https://yanevskiv.com/eqn-electromagnetism?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>(WIP) Equations of Electromagnetism</title>
        <link>https://yanevskiv.com/eqn-electromagnetism?rev=1776801200&amp;do=diff</link>
        <description>(WIP) Equations of Electromagnetism

Electrostatics

Coulomb&#039;s law

Attractive force $Q_2$ feels thanks to $Q_1$&#039;s electric field:
$$\mathbf F_ = \frac{1}{4\pi\varepsilon_0}\frac{Q_1Q_2}{r^2}\mathbf r_{012}$$

Electric field

Electric field created by a single point charge $Q$:
$$\mathbf E = \frac{1}{4\pi\varepsilon_0}\frac{Q}{r^2}\mathbf r_0$$

Electric field created by multiple point charges $Q_1, Q_2, ..., Q_N$:
$$\mathbf E = \frac{1}{4\pi\varepsilon_0}\sum_{i=1}^{N}\frac{Q_i}{r^2_i}\mathbf r…</description>
    </item>
    <item rdf:about="https://yanevskiv.com/errno.h?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title></title>
        <link>https://yanevskiv.com/errno.h?rev=1776801200&amp;do=diff</link>
        <description>&lt;errno.h&gt;

In C programming language, &lt;errno.h&gt; is a header that&#039;s part of the C standard library. 

It defines all the ENAME constants used to name errors and gives access to the global int errno;. 

Constants

Standard POSIX errors:



E2BIG            EACCES           EADDRINUSE       EADDRNOTAVAIL  
EAFNOSUPPORT     EAGAIN           EALREADY         EBADF          
EBADMSG          EBUSY            ECANCELED        ECHILD         
ECONNABORTED     ECONNREFUSED     ECONNRESET       EDEADLK   …</description>
    </item>
    <item rdf:about="https://yanevskiv.com/exit-status?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Exit status</title>
        <link>https://yanevskiv.com/exit-status?rev=1776801200&amp;do=diff</link>
        <description>Exit status

Exit status lets the user of your program know if the program ended in success or failure.

Commonly, 0 is success, any other value is failure (most commonly, failure is 1 -- a bit counter intuitive at first!)

Your users can inspect it with</description>
    </item>
    <item rdf:about="https://yanevskiv.com/function-macro?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Function macro</title>
        <link>https://yanevskiv.com/function-macro?rev=1776801200&amp;do=diff</link>
        <description>Function macro

Function macro is a C preprocessor macro that looks like a function call when you use it.

This is a basic example with a single expression. sqr(x) looks and feels like a function even though it&#039;s a macro. A good habit to get into is to always enclose arguments into parenthesis when you define function macros. For example,</description>
    </item>
    <item rdf:about="https://yanevskiv.com/gist-docker?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Docker (Reference)</title>
        <link>https://yanevskiv.com/gist-docker?rev=1776801200&amp;do=diff</link>
        <description>Docker (Reference)

This page includes a myriad docker commands for reference.

Basic

Containers

Run ubuntu:latest image (will do docker pull automatically if you don&#039;t have it)



docker run -it --rm ubuntu:latest


Images

Pull ubuntu:latest image</description>
    </item>
    <item rdf:about="https://yanevskiv.com/gist-git?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Git (Examples)</title>
        <link>https://yanevskiv.com/gist-git?rev=1776801200&amp;do=diff</link>
        <description>Git (Examples)

Basics

Creating a repository with an initial commit:



git init


Adding a file to the staging area:



git add file.txt


Un-adding a file from the staging area:



git restore --staged file.txt


Showing what&#039;s in the staging area:</description>
    </item>
    <item rdf:about="https://yanevskiv.com/gist-semaphores?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>(WIP) Semaphores (Examples)</title>
        <link>https://yanevskiv.com/gist-semaphores?rev=1776801200&amp;do=diff</link>
        <description>(WIP) Semaphores (Examples)

This page includes some examples of semaphores in multi-threading environments. The syntax is borrowed from EasyMT.

Basic

Synchronization

Two threads a() and b() alternate their execution regardless of the scheduler.

Output: $B$$B$</description>
    </item>
    <item rdf:about="https://yanevskiv.com/git?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Git</title>
        <link>https://yanevskiv.com/git?rev=1776801200&amp;do=diff</link>
        <description>Git

Git is a tool for managing repositories. Repositories are like folders, except it&#039;s easier to track the changes that happen inside them.

Think of a project you&#039;ve been working on e.g. a game in written in C++.

You&#039;ve been working on your game for weeks and now you have quite a bit of code. You&#039;re starting to be a little afraid of making changes</description>
    </item>
    <item rdf:about="https://yanevskiv.com/gitignore?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>.gitignore</title>
        <link>https://yanevskiv.com/gitignore?rev=1776801200&amp;do=diff</link>
        <description>.gitignore

.gitignore is a file 

You can ignore everything in a given di

F.A.Q.

How do I ignore a directory without making a commit?

Just put * in .gitignore of the directory you want to ignore (e.g. ./local directory) 



# ./local/.gitignore
# Ignore everything in directory `./local`

*</description>
    </item>
    <item rdf:about="https://yanevskiv.com/gnu-linux?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>GNU/Linux</title>
        <link>https://yanevskiv.com/gnu-linux?rev=1776801200&amp;do=diff</link>
        <description>GNU/Linux

GNU/Linux is a free operating system that replaced the older operating system called Unix. It&#039;s ubiquitous on servers and supercomputers. It&#039;s an increasingly popular choice for desktops, but not yet common. It&#039;s also the operating system behind SteamOS.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/home?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Home</title>
        <link>https://yanevskiv.com/home?rev=1776801200&amp;do=diff</link>
        <description>Home

Hi, I&#039;m Ivan! This website is my encyclopedia about various technical topics. The topics I cover on this wiki are mostly related to technology, but sometimes I&#039;ll also write about science and mathematics.

I&#039;m an embedded software engineer. Therefore, most of the articles on this website are going to be written from that lens. For example, if I make an analogy, it&#039;s probably going to be related to embedded engineering in some way. I use</description>
    </item>
    <item rdf:about="https://yanevskiv.com/hpc?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>HPC</title>
        <link>https://yanevskiv.com/hpc?rev=1776801200&amp;do=diff</link>
        <description>HPC

HPC (High-performance computing) is an area of programming concerned with performance optimization. It&#039;s about making the most out of hardware.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/ifupdown?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ifupdown</title>
        <link>https://yanevskiv.com/ifupdown?rev=1776801200&amp;do=diff</link>
        <description>ifupdown

ifupdown is the traditional network manager on GNU/Linux systems. It has since been replaced by systemd-networkd. 

It was especially commmon in Debian systems before Debian 12 (Bookworm).

The “if” part is short for “interface”. “up” and “down” refer to</description>
    </item>
    <item rdf:about="https://yanevskiv.com/landauers-principle?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Landauer&#039;s principle</title>
        <link>https://yanevskiv.com/landauers-principle?rev=1776801200&amp;do=diff</link>
        <description>Landauer&#039;s principle

Landauer&#039;s principle establishes the thermodynamic lower bound on energy required to erase information from a physical system (e.g. a computer register).

At temperature $T$, the minimum energy needed to erase information is:

$$E = (\text{bits erased}) \times k_B T \ln 2$$

Where $k_B$ is the Boltzman&#039;s constant.$S_0 = 64\times k_B\ln 2$$S_1 = 0$$\Delta S = S_0 - S_1$$Q = T \Delta S$$T = 300K$$$ E_\text{bit} \approx 2.9\times 10^{-21} J$$$$ E_\text{bit} \approx 0.018 \text…</description>
    </item>
    <item rdf:about="https://yanevskiv.com/latex-syntax?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LaTeX syntax</title>
        <link>https://yanevskiv.com/latex-syntax?rev=1776801200&amp;do=diff</link>
        <description>LaTeX syntax

For addition, you use the + symbol e.g. a + b = c:
$$ a + b = c$$

For subtraction, you use the - symbol e.g. a - b = c
$$ a - b = c$$

For multiplication, you just write ab or put a dot in between with \cdot (meaning: “centered dot”) like a \cdot b.
Using a * b$a * b$$$a\cdot b = c$$$a / b$$${a \over b} = c$$$$ a = b \pmod{N}$$$$e^{i\phi} = \cos(\phi) + i\sin(\phi)$$$$\ln(1 + x) = 1 + x + $$$$\int \iint \iiint \oint \oiint \oiiint$$</description>
    </item>
    <item rdf:about="https://yanevskiv.com/latex?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>LaTeX</title>
        <link>https://yanevskiv.com/latex?rev=1776801200&amp;do=diff</link>
        <description>LaTeX

Latex (stylized as $\LaTeX$) is a markup language used to create scientific papers. It&#039;s the language used to produce PDF documents, like the ones you&#039;ll commonly see on arXiv.

Latex has a simple declarative syntax that looks like \command[opt1][opt2]...[optN]{arg1}{arg2}...{argN}</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-algorithms?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of algorithms</title>
        <link>https://yanevskiv.com/list-of-algorithms?rev=1776801200&amp;do=diff</link>
        <description>List of algorithms

	* selection-sort
	* bubble-sort
	* insert-sort
	* merge-sort
	* quick-sort
	* 3d-rotation</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-c-concepts?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of C concepts</title>
        <link>https://yanevskiv.com/list-of-c-concepts?rev=1776801200&amp;do=diff</link>
        <description>List of C concepts

	* C standard library
	* #pragma once
	* do { ... } while (0)
	* Function macro
	* main() return
	* Exit status
	* header-guard
	* Embedded engineering glossary</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-c-headers?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of C headers</title>
        <link>https://yanevskiv.com/list-of-c-headers?rev=1776801200&amp;do=diff</link>
        <description>List of C headers

	* &lt;assert.h&gt;
	* &lt;complex.h&gt;
	* &lt;ctype.h&gt;
	* &lt;errno.h&gt;
	* fenv.h
	* float.h
	* inttypes.h
	* iso646.h
	* limits.h
	* locale.h
	* math.h
	* setjmp.h
	* signal.h
	* stdalign.h
	* stdarg.h
	* stdatomic.h
	* stdbit.h
	* &lt;stdbool.h&gt;
	* stdckdint.h
	* stddef.h
	* stdint.h
	* stdio.h
	* stdlib.h
	* stdmchar.h
	* stdnoreturn.h
	* &lt;string.h&gt;
	* tgmath.h
	* thread.h
	* time.h
	* uchar.h
	* wchar.h
	* wctype.h
	* curses.h
	* getopt.h</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-commands?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of commands</title>
        <link>https://yanevskiv.com/list-of-commands?rev=1776801200&amp;do=diff</link>
        <description>List of commands

	* List of util-linux commands
	* List of coreutils commands
	* List of internal Bash shell commands
	* List of LaTeX commands
	* List of system commands
	* arduino-cli</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-concepts?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of concepts</title>
        <link>https://yanevskiv.com/list-of-concepts?rev=1776801200&amp;do=diff</link>
        <description>List of concepts

	* C
		* header-guards
		* #pragma once

	* C++
		* Name mangling
		* Rule of 5

	* Miscellaneous
			* Numbers every programmer should know</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-cpp-concepts?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of C++ concepts</title>
        <link>https://yanevskiv.com/list-of-cpp-concepts?rev=1776801200&amp;do=diff</link>
        <description>List of C++ concepts

	* Name mangling
	* Rule of 5
	* CRTP
	* constexpr</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-cpp-headers?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of C++ headers</title>
        <link>https://yanevskiv.com/list-of-cpp-headers?rev=1776801200&amp;do=diff</link>
        <description>List of C++ headers

	* opencv.hpp
	* imgui.h
	* catch2.hpp
	* doctest.hpp</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-data-structures?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of data structures</title>
        <link>https://yanevskiv.com/list-of-data-structures?rev=1776801200&amp;do=diff</link>
        <description>List of data structures

	* array
	* forward-list
	* linked-list
	* dynamic-array
	* stack
	* queue
	* circular-buffer
	* matrix
	* binary-tree
	* heap
	* red-black-tree
	* b-tree
	* b-plus-tree
	* hash-map
	* graph</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-hardware?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of hardware</title>
        <link>https://yanevskiv.com/list-of-hardware?rev=1776801200&amp;do=diff</link>
        <description>List of hardware

	* ThinkPad
	* Arduino Uno R4 WiFi
	* weller-we-1010</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-headers-cpp?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of headers in C++</title>
        <link>https://yanevskiv.com/list-of-headers-cpp?rev=1776801200&amp;do=diff</link>
        <description>List of headers in C++

&lt;https://en.cppreference.com/w/cpp/headers.html&gt;</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-latex-commands?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of LaTeX commands</title>
        <link>https://yanevskiv.com/list-of-latex-commands?rev=1776801200&amp;do=diff</link>
        <description>List of LaTeX commands

	* pdflatex</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-mathematical-topics?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of mathematical topics</title>
        <link>https://yanevskiv.com/list-of-mathematical-topics?rev=1776801200&amp;do=diff</link>
        <description>List of mathematical topics

	* set
	* monoid
	* vector-space
	* hilbert-space</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-miscellaneous-topics?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of miscellaneous topics</title>
        <link>https://yanevskiv.com/list-of-miscellaneous-topics?rev=1776801200&amp;do=diff</link>
        <description>List of miscellaneous topics

	* Numbers every programmer should know
	* bytebeat
	* code-golf</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-parallel-computing-concepts?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of parallel computing concepts</title>
        <link>https://yanevskiv.com/list-of-parallel-computing-concepts?rev=1776801200&amp;do=diff</link>
        <description>List of parallel computing concepts

	* synchronization-primitve
	* Semaphore
	* mutex
	* Qubit
	* Qubit gate
	* amdahls-law
	* gustafsons-law
	* cache-coherence
	* cuda
	* openmp
	* queuing-theory
	* lock-free-queue
	* numa
	* false-sharing
	* aba-problem
	* trace-monoid
	* hazard-pointer
	* cache-coherence
	* roofline-model
	* numa
	* embarrassingly-parallel
	* fork-join-model
	* rcu
	* lock
	* lock-convoy
	* lock-contention
	* spinlock
	* smp
	* memory-order
	* cas</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-paths?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of paths</title>
        <link>https://yanevskiv.com/list-of-paths?rev=1776801200&amp;do=diff</link>
        <description>List of paths

	* /bin
	* /dev
	* /boot
	* /etc
	* /home
	* /lib
	* /mnt
	* /opt
	* /proc
	* /root
	* /sbin
	* /srv
	* /tmp
	* /usr
	* /var</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-software-engineering-concepts?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of software engineering concepts</title>
        <link>https://yanevskiv.com/list-of-software-engineering-concepts?rev=1776801200&amp;do=diff</link>
        <description>List of software engineering concepts

	* brooks-law
	* parkinsons-law
	* kanban
	* xp-programming
	* agile
	* Test-driven development
	* CI/CD
	* devops
	* blue-green-deployment
	* canary-release
	* unit-test
	* regression
	* test-automation
	* kanban
	* feature-flag
	* production
	* ab-testing
	* hotfix
	* feature-branch
	* eat-your-own-dog-food
	* spike-solution
	* solid
	* liskov-substitution-principle
	* smart-and-vapid
	* devops
	* incremental-build-model
	* prototype
	* artifact
	* goodha…</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-software-engineering-tools?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of software engineering tools</title>
        <link>https://yanevskiv.com/list-of-software-engineering-tools?rev=1776801200&amp;do=diff</link>
        <description>List of software engineering tools

	* jira
	* confluence
	* ms-teams
	* harvestapp
	* notion</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-syntaxes?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of syntaxes</title>
        <link>https://yanevskiv.com/list-of-syntaxes?rev=1776801200&amp;do=diff</link>
        <description>List of syntaxes

	* c-syntax
	* cpp-syntax
	* LaTeX syntax</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-system-commands?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of system commands</title>
        <link>https://yanevskiv.com/list-of-system-commands?rev=1776801200&amp;do=diff</link>
        <description>List of system commands

	* ifupdown</description>
    </item>
    <item rdf:about="https://yanevskiv.com/list-of-tools?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of tools</title>
        <link>https://yanevskiv.com/list-of-tools?rev=1776801200&amp;do=diff</link>
        <description>List of tools

	* Git
	* Docker
	* systemd
	* Terminal
	* Shell
	* LaTeX
	* Tmux
	* SSH
	* VPS
	* qemu
	* gcc
	* gdb
	* nvim</description>
    </item>
    <item rdf:about="https://yanevskiv.com/main-return?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>main() return</title>
        <link>https://yanevskiv.com/main-return?rev=1776801200&amp;do=diff</link>
        <description>main() return

The return value of int main(); function is called the program&#039;s exit status.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/mathematical-maturity?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Mathematical Maturity</title>
        <link>https://yanevskiv.com/mathematical-maturity?rev=1776801200&amp;do=diff</link>
        <description>Mathematical Maturity

Trivial example

One of the earliest awakenings of my mathematical maturity was when I was a kid, thinking one of the simplest equations there is:

$$ a\cdot x = b$$

I knew how to solve this 99% of the time:

$$x = b / a$$

Is this correct? Let&#039;s take the equation $2\cdot x = 6$$b = 0$$x = 0$$a = 0$$a = 0$$b = 3$$x$$0 = 3$$a = 0$$b = 0$$x$$0 = 0$$a\cdot x = b$$a\cdot x = b$</description>
    </item>
    <item rdf:about="https://yanevskiv.com/my-bookmarks?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>My bookmarks</title>
        <link>https://yanevskiv.com/my-bookmarks?rev=1776801200&amp;do=diff</link>
        <description>My bookmarks

C++

	* &lt;https://en.cppreference.com/w/&gt;
	* &lt;https://json.nlohmann.me/api/basic_json/&gt;

LaTeX

Online tools:

	* &lt;https://openai.com/index/introducing-prism/&gt;
	* &lt;https://www.mathcha.io/&gt;
	* &lt;https://www.overleaf.com/&gt;

Documentation PDFs:

	* &lt;https://pgfplots.sourceforge.net/pgfplots.pdf&gt;
	* &lt;https://www.bu.edu/math/files/2013/08/tikzpgfmanual.pdf&gt;
	* &lt;https://feog.github.io/chap1dm.pdf&gt;

Wikipedia

Related to mathematics:

	* &lt;https://en.wikipedia.org/wiki/Siamese_neural_network…</description>
    </item>
    <item rdf:about="https://yanevskiv.com/name-mangling?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Name mangling</title>
        <link>https://yanevskiv.com/name-mangling?rev=1776801200&amp;do=diff</link>
        <description>Name mangling

Name mangling is how C++ compilers encode object types then and reconstruct the type back.

Let&#039;s say we got a following piece of C++ code.


namespace Hello {
    struct World {
      template &lt;typename T&gt; T add(T x, T y) {
          return x + y;
      }
    };
}</description>
    </item>
    <item rdf:about="https://yanevskiv.com/net-config?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Network Configuration</title>
        <link>https://yanevskiv.com/net-config?rev=1776801200&amp;do=diff</link>
        <description>Network Configuration

This article is about network configuration in GNU/Linux systems

ifupdown

Dynamic configurations

Dynamic configuration with ifupdown (IPv4)



# /etc/network/interfaces
iface ens3 inet dhcp


Dynamic configuration with ifupdwon (IPv6)</description>
    </item>
    <item rdf:about="https://yanevskiv.com/nih-syndrome?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>NIH syndrome</title>
        <link>https://yanevskiv.com/nih-syndrome?rev=1776801200&amp;do=diff</link>
        <description>NIH syndrome

NIH syndrome stands for “Not invented here” syndrome. It&#039;s when you deliberately avoid using a premade solution in favor of your own.

For example, you might prefer to implement your own dynamic array even though std::vector&lt;int&gt; already exist. The commonly given rationale is that you&#039;ll probably find the implementation you made easier to understand (you wrote it!) and you&#039;ll be able easily make it fit your needs.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/numbers-every-programmer-should-know?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Numbers every programmer should know</title>
        <link>https://yanevskiv.com/numbers-every-programmer-should-know?rev=1776801200&amp;do=diff</link>
        <description>Numbers every programmer should know

Numbers every programmer should know is a short document listing latencies of various computer operations. The list is given by a computer scientist Jeff Dean.

It illustrates how various high-level operations exponentially take longer time to perform compared to various low-level operations.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/path-usr?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>/usr</title>
        <link>https://yanevskiv.com/path-usr?rev=1776801200&amp;do=diff</link>
        <description>/usr

	* /usr/bin
	* /usr/include
	* /usr/lib
	* /usr/share
	* /usr/src</description>
    </item>
    <item rdf:about="https://yanevskiv.com/path-var?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>/var</title>
        <link>https://yanevskiv.com/path-var?rev=1776801200&amp;do=diff</link>
        <description>/var

	* /var/cache
	* /var/db
	* /var/empty
	* /var/lib
	* /var/local
	* /var/lock
	* /var/log
	* /var/opt
	* /var/run
	* /var/www
	* /var/spool
	* /var/tmp</description>
    </item>
    <item rdf:about="https://yanevskiv.com/pdflatex?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>pdflatex</title>
        <link>https://yanevskiv.com/pdflatex?rev=1776801200&amp;do=diff</link>
        <description>pdflatex

pdflatex is the most common LaTeX compiler.

You compile latex source code by running pdflatex main.tex. This creates a PDF file main.pdf. It also creates a log file main.log and an auxiliary file main.aux used to build references. You can ignore these latter two and</description>
    </item>
    <item rdf:about="https://yanevskiv.com/perf?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>perf</title>
        <link>https://yanevskiv.com/perf?rev=1776801200&amp;do=diff</link>
        <description>perf

perf is a profiling tool used in high-performance computing. You


int main() {
    
}


stat

ls

Common issues

&quot;Error: No supported events found&quot;</description>
    </item>
    <item rdf:about="https://yanevskiv.com/posix-headers?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>POSIX headers</title>
        <link>https://yanevskiv.com/posix-headers?rev=1776801200&amp;do=diff</link>
        <description>POSIX headers

POSIX headers are C programming language headers as defined by POSIX.

Links

	* &lt;https://pubs.opengroup.org/onlinepubs/9799919799/idx/head.html&gt;</description>
    </item>
    <item rdf:about="https://yanevskiv.com/pragma-once?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>#pragma once</title>
        <link>https://yanevskiv.com/pragma-once?rev=1776801200&amp;do=diff</link>
        <description>#pragma once

In C and C++ programming languages #pragma once is a non-standard preprocessor directive that is equivalent to header guards.

You just put #pragma once at the top, rather than wrapping the entire header within header guards.

Header guards:


// image.h
#ifndef __IMAGE_H__
#define __IMAGE_H__

struct Image {
    ...
};

#endif /* __IMAGE_H__ */</description>
    </item>
    <item rdf:about="https://yanevskiv.com/qubit-gates-in-c?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Qubit gate</title>
        <link>https://yanevskiv.com/qubit-gates-in-c?rev=1776801200&amp;do=diff</link>
        <description>Qubit gate

Simulation

In C99, a header &lt;complex.h&gt; is provided that implements complex numbers.

State

As we&#039;ve seen, a qubit is a two-state configuration with complex probability amplitudes distributed between the two states.
This gives us the following implementation of a single qubit:
$$\lvert\psi\rangle = \alpha\lvert 0\rangle + \beta\lvert 1\rangle,\qquad \alpha,\beta\in\mathbb C$$$$\lVert\psi\lVert^2 = |\alpha|^2 + |\beta|^2 = \alpha\bar{\alpha} + \beta\bar{\beta}$$$$\lvert\psi\rangle\r…</description>
    </item>
    <item rdf:about="https://yanevskiv.com/qubit?rev=1776805192&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T20:59:52+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Qubit</title>
        <link>https://yanevskiv.com/qubit?rev=1776805192&amp;do=diff</link>
        <description>Qubit

Qubit is the quantum computing equivalent of a bit.

A classical bit can be 0 or 1. There are no probabilities involved at all. If a bit is 1, then it&#039;s 1 with 100% probability and 0 with 0% probability. Conversely if a bit is 0, then it&#039;s 1 with 0% probability and $\lvert 0\rangle$$\lvert 1\rangle$$\lvert 0\rangle$$\lvert 1\rangle$$\lvert\psi\rangle$$$\lvert\psi\rangle = a\lvert 0\rangle + b\lvert 1\rangle$$$a$$b$$\lvert 0\rangle$$a = \frac{\sqrt 2}{2} + i\frac{\sqrt 2}{2}$$\lvert 1\rang…</description>
    </item>
    <item rdf:about="https://yanevskiv.com/ruin-theory?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Ruin theory (personal finance)</title>
        <link>https://yanevskiv.com/ruin-theory?rev=1776801200&amp;do=diff</link>
        <description>Ruin theory (personal finance)

This article is supposed to illustrate using Cramer-Lundberg model from actuarial science and applying to personal finance. This model was invented in 1930s for insurance companies. Insurance companies never seem to go bankrupt yet ordinary people are often get financial struggles. While it&#039;s easy to blame insurance companies for cheating at the game and ripping us off (and there is certainly a lot of truth to that), perhaps we can also learn the game they&#039;re play…</description>
    </item>
    <item rdf:about="https://yanevskiv.com/rule-of-5?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Rule of 5</title>
        <link>https://yanevskiv.com/rule-of-5?rev=1776801200&amp;do=diff</link>
        <description>Rule of 5

In C++, rule of 5

	* Destructor
* Copy constructor
* Move constructor
* Copy assignment operator
* Move assignment operator


#pragma once

struct Image {
public:
    Image();
    /* Todo */
};


Links

	* &lt;https://en.cppreference.com/w/cpp/language/rule_of_three.html&gt;</description>
    </item>
    <item rdf:about="https://yanevskiv.com/schrodinger?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Schrödinger equation</title>
        <link>https://yanevskiv.com/schrodinger?rev=1776801200&amp;do=diff</link>
        <description>Schrödinger equation

In quantum mechanics, wave function is a mathematical object used to  describe a quantum particle. This wave function evolves according to the Schrödinger equation. For a single particle, the time-dependent 3-dimensional Schrödinger equation is stated as the following:$$ i\hbar \frac{\partial}{\partial t}\Psi = \left(-\frac{\hbar^2}{2m}\nabla^2 + V\right) \Psi$$$i$$i^2 + 1 = 0$$\hbar$$\hbar = h/2\pi$$\hbar \approx 1.054 571 817\times 10^{-34}J\cdot s$$\partial / \partial t$…</description>
    </item>
    <item rdf:about="https://yanevskiv.com/semaphore.h?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title></title>
        <link>https://yanevskiv.com/semaphore.h?rev=1776801200&amp;do=diff</link>
        <description>&lt;semaphore.h&gt;

In C, &lt;semaphore.h&gt; is a header that offers POSIX semaphores.

Manual

	* &lt;https://pubs.opengroup.org/onlinepubs/7908799/xsh/semaphore.h.html&gt;</description>
    </item>
    <item rdf:about="https://yanevskiv.com/semaphore?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Semaphore</title>
        <link>https://yanevskiv.com/semaphore?rev=1776801200&amp;do=diff</link>
        <description>Semaphore

Semaphore is a synchronization primitive. It&#039;s used to control thread execution in multithreaded environments.

A semaphore acts like an integer. An integer supports two well-known opeartions: increment i++ and decrement i--. A semaphore works in a similar way, except a semaphore cannot be decremented below zero. This is because semaphore takes action to protect its value against bankrupcy by taking hostage of threads that attempt to make it negative.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/shell?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Shell</title>
        <link>https://yanevskiv.com/shell?rev=1776801200&amp;do=diff</link>
        <description>Shell

What is a shell?

Shell is a program that lets you to run other programs in the terminal. 

Shell allows you to pass command line arguments, set environment variables and redirect the program&#039;s stardard input / output / error. It allows you to chain programs, such that output from one program is redirected as input to another program. It also allows you to run the programs in the background. Basically, a shell allows you to easily orchestrate programs in the terminal.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/ssh?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>SSH</title>
        <link>https://yanevskiv.com/ssh?rev=1776801200&amp;do=diff</link>
        <description>SSH

What is ssh?

SSH (Secure shell) is a tool that allows you to remotely control another computer from your own. 

Login without password

On the client, you should run the following command:



ssh-keyring


This command is going to generate two files in your</description>
    </item>
    <item rdf:about="https://yanevskiv.com/stdbool.h?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title></title>
        <link>https://yanevskiv.com/stdbool.h?rev=1776801200&amp;do=diff</link>
        <description>&lt;stdbool.h&gt;

In C programming language, &lt;stdbool.h&gt; is a header that&#039;s part of C standard library. It defines a boolean type bool as well as constants  true and false.

You need at least version C99 to use this header, so compile with gcc -std=c99 main.c -o program.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/string.h?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title></title>
        <link>https://yanevskiv.com/string.h?rev=1776801200&amp;do=diff</link>
        <description>&lt;string.h&gt;

In C programming language, &lt;string.h&gt; is a header for void* and char* types, presumably spanning many consequtive characters.

Functions


/* Memory functions */
void    *memccpy(void *, const void *, int, size_t);
void    *memchr(const void *, int, size_t);
int      memcmp(const void *, const void *, size_t);
void    *memcpy(void *, const void *, size_t);
void    *memmove(void *, const void *, size_t);
void    *memset(void *, int, size_t);

/* String functions */
char    *strcat(cha…</description>
    </item>
    <item rdf:about="https://yanevskiv.com/strunk-and-white?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Strunk &amp; White</title>
        <link>https://yanevskiv.com/strunk-and-white?rev=1776801200&amp;do=diff</link>
        <description>Strunk &amp; White

Strunk &amp; White is a guide on writing text in the English language. The guide is contained in a book  titled “The Elements of Style”. It was written written by William Strunk Jr. in the 1910s and later expanded by E. B. White in the 1950s.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/terminal?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Terminal</title>
        <link>https://yanevskiv.com/terminal?rev=1776801200&amp;do=diff</link>
        <description>Terminal

Terminal is conceptually anything that looks like a keyboard + a screen attached to a teletype device (TTY). It gives humans the ability to use the teletype device.

When you type something in a terminal, the terminal sends your characters to the teletype device. When a teletype device responds, the terminal prints the result back to you. A terminal can also reinterpret the characters coming from the teletype device and change its behavior in some way (e.g. change cursor location or tu…</description>
    </item>
    <item rdf:about="https://yanevskiv.com/test-driven-development?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Test-driven development</title>
        <link>https://yanevskiv.com/test-driven-development?rev=1776801200&amp;do=diff</link>
        <description>Test-driven development

Test-driven development (or TDD) is a practice where you apprach software development in the following way:

	* You write a test. This test fails immediately, as you haven&#039;t even written any code yet.
* You write the smallest piece of code that passes your test</description>
    </item>
    <item rdf:about="https://yanevskiv.com/thinkpad?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>ThinkPad</title>
        <link>https://yanevskiv.com/thinkpad?rev=1776801200&amp;do=diff</link>
        <description>ThinkPad

X-series
x220ai</description>
    </item>
    <item rdf:about="https://yanevskiv.com/tmux?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Tmux</title>
        <link>https://yanevskiv.com/tmux?rev=1776801200&amp;do=diff</link>
        <description>Tmux

What is tmux?

Tmux is a terminal multiplexer. It allows you to run multiple terminals in a single terminal. In this sense, it is an alternative to screen command.

Tmux runs a background session that you can attach to. It gives you the ability to create multiple windows within a session. Then it also gives you the ability to create multiple panes within a window, and tile them. Each pane contains a terminal. Thus, you can think of tmux as a</description>
    </item>
    <item rdf:about="https://yanevskiv.com/todo?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>To do</title>
        <link>https://yanevskiv.com/todo?rev=1776801200&amp;do=diff</link>
        <description>To do

This page contains articles which I&#039;m in the process of writing or plan to write about.

Website

The following are some features I need to implement on the site:

	* Editor:
		* Add: Live preview while editing (requires backend API support)
		*</description>
    </item>
    <item rdf:about="https://yanevskiv.com/topics?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Topics I plan to write about</title>
        <link>https://yanevskiv.com/topics?rev=1776801200&amp;do=diff</link>
        <description>Topics I plan to write about

Wikipedia

	* Trace theory
	* Pi calculus
	* History monoid

Concepts

	* Hazard pointer
	* ABA problem
	* Cache coherence (MSI MESI MOESI DragonFly)</description>
    </item>
    <item rdf:about="https://yanevskiv.com/util-linux?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>List of util-linux commands</title>
        <link>https://yanevskiv.com/util-linux?rev=1776801200&amp;do=diff</link>
        <description>List of util-linux commands

util-linux is a collection of commands provided by the Linux Kernel Organization.

A similar set of commands is GNU core utilities. 

The following are commands provided by until-linux.
You can do man &lt;command&gt; or use the --help option to see what each command does.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/vps?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>VPS</title>
        <link>https://yanevskiv.com/vps?rev=1776801200&amp;do=diff</link>
        <description>VPS

What is a VPS?

VPS (Virtual private server) is a virtual computer that you can buy from a cloud provider. It can do almost anything a real computer can. A VPS slice is often a virtual machine (QEMU + KVM) given to you by a cloud privder, with GNU/Linux pre-installed.</description>
    </item>
    <item rdf:about="https://yanevskiv.com/wip-example?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>(WIP) Work in Progress</title>
        <link>https://yanevskiv.com/wip-example?rev=1776801200&amp;do=diff</link>
        <description>(WIP) Work in Progress</description>
    </item>
    <item rdf:about="https://yanevskiv.com/writing-style?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Writing style</title>
        <link>https://yanevskiv.com/writing-style?rev=1776801200&amp;do=diff</link>
        <description>Writing style

Writing style is about you approaches writing a document for other people to read. This document can be a blog post, a piece of documentation, or code. This particular page talks about how I approach writing this website. It&#039;s going to evolve over time.$E_n$$n$$\Delta E$$E_{n+1} = E_n + \Delta E$$E_n$$\Delta E$$n$$G_n$$k = 1, 2, \dots, n$</description>
    </item>
    <item rdf:about="https://yanevskiv.com/yanevskiv-wiki?rev=1776801200&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2026-04-21T19:53:20+00:00</dc:date>
        <dc:creator>Anonymous (anonymous@undisclosed.example.com)</dc:creator>
        <title>Wiki</title>
        <link>https://yanevskiv.com/yanevskiv-wiki?rev=1776801200&amp;do=diff</link>
        <description>Wiki

This is a meta article about this website.

This website is my creation 

Challenges

Writing this website presents some unique challenges. How do I write down my notes but also make the information useful to the reader? If this website was only about putting my notes, I wouldn&#039;t have to use words at all. I could make articles where I just slap some links and call it a day. That would be useful to me, but not to the wider audience.</description>
    </item>
</rdf:RDF>
