# Home Hi, I'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 also write about mathematics and physics. I'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's probably going to be related to embedded engineering in some way. I use [[gnu-linux|GNU/Linux]] as my main OS and I have experience in maintaining infrastructures running GNU/Linux systems. Most commonly, I use one of my many [[thinkpad|ThinkPad]] laptops to do my computing. I like working directly with hardware or low-level software. This includes stuff like soldering electronics, programming microcontrollers (PIC, STM32, ESP32, Arduino, Raspberry PI Pico), and writing code running within RTOS (FreeRTOS, ZephyrOS, etc.). I also like working software that uses parallel computing in some way (CUDA). ## List of articles - [[list-of-tools]] - [[list-of-paths]] - [[list-of-commands]] - [[list-of-hardware]] - [[list-of-c-headers]] - [[list-of-c-concepts]] - [[list-of-cpp-headers]] - [[list-of-cpp-concepts]] - [[list-of-embedded-engineering-concepts]] - [[list-of-parallel-computing-concepts]] - [[list-of-quantum-computing-concepts]] - [[list-of-software-engineering-concepts]] - [[list-of-data-structures]] - [[list-of-algorithms]] - [[list-of-miscellaneous-topics]] ## Projects I used to tutor multithreading and created [EasyMT](https://github.com/yanevskiv/easymt) to make it easy to demonstrate multithreading concepts. I created [struct](https://github.com/yanevskiv/struct), a C programming language templating library. This website is a project in and of itself and uses a modified version of [DokuWiki](https://www.dokuwiki.org/dokuwiki). ## Disclaimer This website is not an authoritative source. It is written by one person -- me. It's not meant to serve as documentation or a definitive guide to the technology I talk about. I write about topics that interest me and I explain them in the way I understand them -- thus the website may contain outright misconceptions, mistakes, and factual inaccuracies. I reserve the right to be wrong. This website is not generated by AI. One of the reasons I made this website is to improve my writing skills. Using AI would defeat that purpose. If I ever decide to include articles fully written by AI, I will make sure to appropriately tag them as AI-generated. This website is a continuous work in progress. I reserve the right to modify any parts of it, including deleting it altogether. Articles may evolve, appear and disappear on a whim. They may also go outdated. I bear no responsibility of keeping the articles up to date. Except where otherwise noted, content on this wiki is licensed under the following license: [CC Attribution-Share Alike 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/deed.en)