-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathindex.xml
130 lines (130 loc) · 14.8 KB
/
index.xml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Yadullah Duman</title><link>http://www.yduman.dev/</link><description>Recent content on Yadullah Duman</description><generator>Hugo</generator><language>en</language><lastBuildDate>Tue, 28 Jan 2025 00:00:00 +0000</lastBuildDate><atom:link href="http://www.yduman.dev/index.xml" rel="self" type="application/rss+xml"/><item><title>Projects</title><link>http://www.yduman.dev/projects/</link><pubDate>Tue, 28 Jan 2025 00:00:00 +0000</pubDate><guid>http://www.yduman.dev/projects/</guid><description><p>Here are some side and open source projects where I am currently investing or have invested some good amount of time. These are mostly projects that either solved my own problems or I found interesting enough for contribution. Besides these projects, I am mainly busy with customer projects that I won&rsquo;t list here for obvious reasons.</p>
<h2 id="currently-active">
Currently Active
<a class="heading-link" href="#currently-active">
<i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"></i>
<span class="sr-only">Link to heading</span>
</a>
</h2>
<p><a href="https://github.com/arc42/quality.arc42.org-site" class="external-link" target="_blank" rel="noopener"><strong>quality.arc42.org</strong></a> Quality requirements and goals for software and system architectures.</p></description></item><item><title>Uses</title><link>http://www.yduman.dev/uses/</link><pubDate>Tue, 28 Jan 2025 00:00:00 +0000</pubDate><guid>http://www.yduman.dev/uses/</guid><description><p>Things I use to create software</p>
<p><em>Last updated: January 28, 2025</em></p>
<h1 id="editor">
Editor
<a class="heading-link" href="#editor">
<i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"></i>
<span class="sr-only">Link to heading</span>
</a>
</h1>
<ul>
<li><a href="https://code.visualstudio.com/" class="external-link" target="_blank" rel="noopener">Visual Studio Code</a> or <a href="https://www.jetbrains.com/idea/" class="external-link" target="_blank" rel="noopener">IntelliJ Ultimate</a></li>
<li>Fonts: <a href="https://www.jetbrains.com/lp/mono/" class="external-link" target="_blank" rel="noopener">JetBrains Mono</a></li>
<li>Theme: <a href="https://draculatheme.com/" class="external-link" target="_blank" rel="noopener">Dracula</a></li>
<li>Icons: <a href="https://github.com/material-extensions/vscode-material-icon-theme" class="external-link" target="_blank" rel="noopener">Material Icon Theme</a></li>
</ul>
<h1 id="terminal">
Terminal
<a class="heading-link" href="#terminal">
<i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"></i>
<span class="sr-only">Link to heading</span>
</a>
</h1>
<ul>
<li>Emulator: <a href="https://ghostty.org/" class="external-link" target="_blank" rel="noopener">Ghostty</a></li>
<li>Shell: <a href="https://ohmyz.sh/" class="external-link" target="_blank" rel="noopener">oh-my-zsh</a></li>
<li>Prompt: <a href="https://starship.rs/" class="external-link" target="_blank" rel="noopener">Starship</a></li>
<li>Theme: <a href="https://draculatheme.com/" class="external-link" target="_blank" rel="noopener">Dracula</a></li>
<li>Font: <a href="https://github.com/tonsky/FiraCode" class="external-link" target="_blank" rel="noopener">Fira Code Nerd Font</a></li>
<li>Tools:
<ul>
<li><a href="https://github.com/atuinsh/atuin" class="external-link" target="_blank" rel="noopener">atuin</a></li>
<li><a href="https://github.com/dandavison/delta" class="external-link" target="_blank" rel="noopener">delta</a></li>
<li><a href="https://github.com/eza-community/eza" class="external-link" target="_blank" rel="noopener">eza</a></li>
<li><a href="https://github.com/jesseduffield/lazygit" class="external-link" target="_blank" rel="noopener">lazygit</a></li>
<li><a href="https://github.com/ajeetdsouza/zoxide" class="external-link" target="_blank" rel="noopener">zoxide</a></li>
<li><a href="https://github.com/zsh-users/zsh-autosuggestions" class="external-link" target="_blank" rel="noopener">zsh-autosuggestions</a></li>
<li><a href="https://github.com/zsh-users/zsh-syntax-highlighting" class="external-link" target="_blank" rel="noopener">zsh-syntax-highlighting</a></li>
</ul>
</li>
</ul>
<h1 id="desktop-apps">
Desktop Apps
<a class="heading-link" href="#desktop-apps">
<i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"></i>
<span class="sr-only">Link to heading</span>
</a>
</h1>
<ul>
<li>Browser: <a href="https://brave.com/" class="external-link" target="_blank" rel="noopener">Brave</a></li>
<li>Password manager: <a href="https://1password.com/" class="external-link" target="_blank" rel="noopener">1Password</a></li>
<li>Window manager: <a href="https://rectangleapp.com/" class="external-link" target="_blank" rel="noopener">Rectangle</a></li>
<li>Keymaps: <a href="https://karabiner-elements.pqrs.org/" class="external-link" target="_blank" rel="noopener">Karabiner Elements</a></li>
<li>Notes: <a href="https://obsidian.md/" class="external-link" target="_blank" rel="noopener">Obsidian</a></li>
<li>Music: <a href="https://open.spotify.com/" class="external-link" target="_blank" rel="noopener">Spotify</a></li>
<li>Todo: Regular macOS Reminders app</li>
</ul>
<h1 id="hardware">
Hardware
<a class="heading-link" href="#hardware">
<i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"></i>
<span class="sr-only">Link to heading</span>
</a>
</h1>
<ul>
<li>MacBook Pro 16&quot; M2 Max 64GB</li>
<li>Monitors: 2x Gigabyte M28U 4K 144Hz</li>
<li>Mic: Blue Yeti</li>
<li>Headphones: Beyerdynamic DT990 Pro</li>
<li>Keyboard: Monsgeek M1W with Monacokeys WoB keycaps and Akko V3 Piano Pro switches</li>
<li>Mouse: Logitech G502</li>
</ul></description></item><item><title>How to turn off logging in NestJS tests</title><link>http://www.yduman.dev/posts/nestjs-testing-disable-logging/</link><pubDate>Mon, 09 Sep 2024 00:00:00 +0000</pubDate><guid>http://www.yduman.dev/posts/nestjs-testing-disable-logging/</guid><description><p>This post will be very short. I want to share one approach on how to deal with the Logger class when running NestJS unit tests. In one of our projects, we had a small issue, that when running tests, the logger would start logging when certain branches of the code were reached. Obviously, these branches should log when running on production, but for tests, we didn&rsquo;t care much.</p>
<h2 id="example-scenario">
Example Scenario
<a class="heading-link" href="#example-scenario">
<i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"></i>
<span class="sr-only">Link to heading</span>
</a>
</h2>
<p>Imagine this very simplified scenario. You want to test all branches of <code>getAllUsers</code>. The error case test would always execute the error log.</p></description></item><item><title>About</title><link>http://www.yduman.dev/about/</link><pubDate>Sun, 11 Aug 2024 00:00:00 +0000</pubDate><guid>http://www.yduman.dev/about/</guid><description><p>Hey, I&rsquo;m Yadu. Welcome to my digital garden! Everything that you see here is written by me and revolves around my own opinion and findings. The purpose is to share knowledge and sometimes some non-trivial topics that you usually encounter in real life projects.</p>
<p>Currently, I work as a Lead Software Engineer at <a href="https://maibornwolff.de" class="external-link" target="_blank" rel="noopener">MaibornWolff</a>.</p>
<p>Over the years, I found a passion for creating tailored software together with talented people. I work primarily in a full-stack/cross-platform landscape, using any programming language that does the job. I am also coaching people, helping them grow in their career and giving them some tips &amp; tricks on how to become a successful engineer. In projects, I care a lot about rich and proactive communication. It&rsquo;s the most important skill any engineer should have in my opinion.</p></description></item><item><title>My first NPM library: rmby</title><link>http://www.yduman.dev/posts/rmby/</link><pubDate>Mon, 17 Aug 2020 00:00:00 +0000</pubDate><guid>http://www.yduman.dev/posts/rmby/</guid><description><p>Recently, I released version 1.0 of my first Node.js library called <a href="https://www.npmjs.com/package/rmby" class="external-link" target="_blank" rel="noopener">rmby</a>. In this post, I want to explain what it is, what it does and how you can use it. On the bottom of this post you will find the respective links.</p>
<h2 id="what-is-rmby">
<strong>What is rmby?</strong>
<a class="heading-link" href="#what-is-rmby">
<i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"></i>
<span class="sr-only">Link to heading</span>
</a>
</h2>
<p>rmby (<em>“remove by”</em>) is a zero-dependency Node.js library for removing files asynchronously on a given directory by certain filter criteria’s. It provides a <a href="https://martinfowler.com/bliki/FluentInterface.html" class="external-link" target="_blank" rel="noopener">fluent interface</a> that guides the user when creating the remove query.</p></description></item><item><title>How to setup WSL with Windows Terminal, ZSH and powerlevel10k</title><link>http://www.yduman.dev/posts/wsl-setup/</link><pubDate>Fri, 12 Jun 2020 00:00:00 +0000</pubDate><guid>http://www.yduman.dev/posts/wsl-setup/</guid><description><p>I wanted to share with you my recent WSL2 setup on my new workstation which was ridiculously easy to do!</p>
<h2 id="what-i-wanted">
<strong>What I wanted</strong>
<a class="heading-link" href="#what-i-wanted">
<i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"></i>
<span class="sr-only">Link to heading</span>
</a>
</h2>
<p>Basically I wanted the same setup that I would run on my MacBook and my Linux machines:</p>
<ul>
<li>A configurable terminal similar to <a href="https://www.iterm2.com/" class="external-link" target="_blank" rel="noopener">iTerm2</a> or <a href="https://gnunn1.github.io/tilix-web/" class="external-link" target="_blank" rel="noopener">Tilix</a></li>
<li>ZSH shell with <a href="https://ohmyz.sh/" class="external-link" target="_blank" rel="noopener">oh-my-zsh</a></li>
<li><a href="https://github.com/romkatv/powerlevel10k" class="external-link" target="_blank" rel="noopener">Powerlevel10k</a> theme</li>
<li>Docker and VS Code support</li>
</ul>
<h2 id="what-you-can-expect">
<strong>What you can expect</strong>
<a class="heading-link" href="#what-you-can-expect">
<i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"></i>
<span class="sr-only">Link to heading</span>
</a>
</h2>
<p>In the following, I will guide you step by step on how I did my setup. A ZSH shell running inside Windows Terminal with powerlevel10k, syntax highlighting, automatic suggestions and Docker support.</p></description></item><item><title>Preact: Alternative to React</title><link>http://www.yduman.dev/posts/preact/</link><pubDate>Thu, 07 Mar 2019 00:00:00 +0000</pubDate><guid>http://www.yduman.dev/posts/preact/</guid><description><p>The <a href="https://www.maibornwolff.de/know-how/preact-alternative-zu-react/" class="external-link" target="_blank" rel="noopener">original post</a> is written in German on the MaibornWolff website.</p>
<p>The following is a plain translation of it.</p>
<hr>
<p>In this blog post, I want to introduce you to <a href="https://preactjs.com/" class="external-link" target="_blank" rel="noopener">Preact</a>. About a year ago, I had the opportunity to test it during a spike. As a React fan, it was exciting to try out a good alternative, and I was impressed by its performance. Recently, the new version 10, &ldquo;Preact X,&rdquo; was released, bringing additional new features.</p></description></item><item><title>How to use the Context API in React with Hooks</title><link>http://www.yduman.dev/posts/react-context/</link><pubDate>Fri, 15 Feb 2019 00:00:00 +0000</pubDate><guid>http://www.yduman.dev/posts/react-context/</guid><description><p>In one of my last posts, I shared the announcement of Hooks by the React team with you. About two weeks ago, the React team finally released the Hooks API with version 16.8. In this blogpost I want to share one approach of how to use the <code>useContext</code> Hook along with <code>useReducer</code> in order to create and update context. I will not explain how the Context or Hooks API work. If you are not familiar with them, then please read the <a href="https://reactjs.org/docs/getting-started.html" class="external-link" target="_blank" rel="noopener">documentation</a>. Furthermore, this post is also just a reference for me, since I was exploring this Hook lately and was fascinated of its ease.</p></description></item><item><title>Get Hooked with React Hooks</title><link>http://www.yduman.dev/posts/react-hooks/</link><pubDate>Fri, 26 Oct 2018 00:00:00 +0000</pubDate><guid>http://www.yduman.dev/posts/react-hooks/</guid><description><p>So yesterday <a href="https://conf.reactjs.org/" class="external-link" target="_blank" rel="noopener">ReactConf</a> started with the opening keynote of Sophie Alpert and Dan Abramov about “React Today and Tomorrow”. Dan Abramov introduced <a href="https://reactjs.org/docs/hooks-intro.html" class="external-link" target="_blank" rel="noopener">Hooks</a>, which is currently in React v16.7.0-alpha and in a RFC status. I was really hooked (pun intended) about the new possibilites with the new API and many library developers immediately started to try it out and they were amazed too.</p>
<h2 id="why-hooks">
<strong>Why Hooks?</strong>
<a class="heading-link" href="#why-hooks">
<i class="fa-solid fa-link" aria-hidden="true" title="Link to heading"></i>
<span class="sr-only">Link to heading</span>
</a>
</h2>
<p>The React team observed over time, that it is hard to reuse stateful logic between components. Many developers used patterns like render props and higher-order components to solve this, but most of the time you ended up in a “wrapper hell”. The Hooks API will allow developers to reuse stateful logic without changing the component hierarchy.</p></description></item></channel></rss>