<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Valacor</title>
    <description>The latest articles on DEV Community by Valacor (@0xvalacor).</description>
    <link>https://dev.to/0xvalacor</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F950450%2F68ea5743-e906-4f50-8359-323fc889900f.jpeg</url>
      <title>DEV Community: Valacor</title>
      <link>https://dev.to/0xvalacor</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/0xvalacor"/>
    <language>en</language>
    <item>
      <title>Rust: A JSON parser</title>
      <dc:creator>Valacor</dc:creator>
      <pubDate>Sat, 27 Sep 2025 19:52:57 +0000</pubDate>
      <link>https://dev.to/0xvalacor/rust-a-json-parser-2i0o</link>
      <guid>https://dev.to/0xvalacor/rust-a-json-parser-2i0o</guid>
      <description>&lt;p&gt;Github: &lt;a href="https://github.com/valyriouc/learning/blob/main/parsing/src/json.rs" rel="noopener noreferrer"&gt;Source file on github&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It's bin a while since I wrote my last Rust code so I thought why not writting a little JSON parser. So I fired up my vscode.&lt;/p&gt;

&lt;p&gt;Json consists of the same types that JavaScript has (well Javascript Object Notation). &lt;/p&gt;

&lt;h2&gt;
  
  
  Json types
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;boolean&lt;/li&gt;
&lt;li&gt;number&lt;/li&gt;
&lt;li&gt;string&lt;/li&gt;
&lt;li&gt;array&lt;/li&gt;
&lt;li&gt;object &lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  Rust representation
&lt;/h2&gt;

&lt;p&gt;So how can I represent these types in Rust? Well &lt;code&gt;enums&lt;/code&gt; have a very cool feature where every entry can wrap one or more types. &lt;br&gt;
Here we go:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#[derive(Debug, PartialEq)]
pub enum JsonType {
    Object(HashMap&amp;lt;String, JsonType&amp;gt;),
    Array(Vec&amp;lt;JsonType&amp;gt;),
    String(String),
    Number(i64),
    Decimal(f64),
    Boolean(bool)
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The properties of an object are stored in a HashMap where JsonType can be any of the other representations inside the &lt;code&gt;enum&lt;/code&gt;. For arrays I use a Vector. This is a growable array type which also holds our &lt;code&gt;JsonType&lt;/code&gt;. I required two entries for numbers because there are different types for floating-point and integer numbers and String/Boolean are represented by the according build-in types.&lt;/p&gt;

&lt;p&gt;There could be parsing errors due to unexpected/missing tokens or a feature is not supported (e.g nested arrays). I represent them by the &lt;code&gt;ParserError&lt;/code&gt; type:&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;#[derive(Debug, PartialEq)]
pub enum ParserError {
    UnexpectedToken(String),
    InvalidSyntax(String),
    MissingToken(String),
    EmptyInput,
    NotSupported(String)
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;h2&gt;
  
  
  Parsing logic
&lt;/h2&gt;



&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;pub fn parse_json(mut input: &amp;amp;str) -&amp;gt; Result&amp;lt;JsonType, ParserError&amp;gt;  {
    if input.trim().is_empty() {
        return Err(ParserError::EmptyInput);
    }

    input = &amp;amp;input.trim_start();

    match input.chars().nth(0).unwrap() {
        '{' =&amp;gt; {
            // Parse JSON object
            match parse_object(&amp;amp;input) {
                Ok(obj) =&amp;gt; Ok(JsonType::Object(obj.0)),
                Err(e) =&amp;gt; Err(e)
            }
        },  
        '[' =&amp;gt; {
            // Parse JSON array
            match parse_array(&amp;amp;input) {
                Ok(arr) =&amp;gt; Ok(JsonType::Array(arr.0)),
                Err(e) =&amp;gt; Err(e)
            }
        },
        _ =&amp;gt; return Err(ParserError::UnexpectedToken(format!("Unexpected token: {}", input.chars().nth(0).unwrap())))
    }
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;What do we have here? This method is our starting point which takes a &lt;code&gt;string slice&lt;/code&gt; as a parameter and returns a &lt;code&gt;Result&amp;lt;JsonType, ParserError&amp;gt;&lt;/code&gt;. Results represent either &lt;code&gt;OK&lt;/code&gt; or &lt;code&gt;Err&lt;/code&gt;. &lt;/p&gt;

&lt;p&gt;JSON's top-level type is either an array or an object. So we take a look at the first character and depending on the sign we parse an array/object or we return a &lt;code&gt;ParserError&lt;/code&gt;.&lt;/p&gt;

&lt;p&gt;Now the code for the implementation of the object parsing function (If you want to see the complete code visit the link included above):&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;fn parse_object(mut input: &amp;amp;str) -&amp;gt; Result&amp;lt;(HashMap&amp;lt;String, JsonType&amp;gt;, &amp;amp;str), ParserError&amp;gt; {
    let mut result = HashMap::new();

    if input.chars().nth(0).unwrap() != '{' {
        return Err(ParserError::InvalidSyntax("Object must start with '{'".to_string()));
    }

    input = &amp;amp;input[1..].trim_start();

    loop {
        // Parse each key-value pair
        if (input.chars().nth(0).unwrap()) == '}' {
            return Ok((result, &amp;amp;input[1..])); // Empty object
        }

        match parse_string(&amp;amp;input) {
            Ok(key) =&amp;gt; {
                // Expect a colon
                input = key.1;

                if input.chars().nth(0).unwrap() != ':' {
                    return Err(ParserError::MissingToken("Expected ':' after key".to_string()));
                }

                input = &amp;amp;input[1..].trim_start();

                let value = if input.chars().nth(0).unwrap() == '{' {
                    match parse_object(&amp;amp;input) {
                        Ok(obj) =&amp;gt; {
                            input = obj.1;
                            JsonType::Object(obj.0)
                        },
                        Err(e) =&amp;gt; return Err(e)
                    }
                } else if input.chars().nth(0).unwrap() == '[' {
                    match parse_array(&amp;amp;input) {
                        Ok(arr) =&amp;gt; {
                            input = arr.1;
                            JsonType::Array(arr.0)
                        },
                        Err(e) =&amp;gt; return Err(e)
                    }
                } else if input.chars().nth(0).unwrap() == '"' {
                    match parse_string(input) {
                        Ok(s) =&amp;gt; {
                            input = s.1;
                            JsonType::String(s.0)
                        },
                        Err(e) =&amp;gt; return Err(e)
                    }
                } else if input.chars().nth(0).unwrap() == 't' || input.chars().nth(0).unwrap() == 'f' {
                    match parse_boolean(input) {
                        Ok(b) =&amp;gt; {
                            input = b.1;
                            JsonType::Boolean(b.0)
                        },
                        Err(e) =&amp;gt; return Err(e)
                    }
                } else if input.chars().nth(0).unwrap().is_digit(10) || input.chars().nth(0).unwrap() == '-' {
                    match parse_number(input) {
                        Ok(n) =&amp;gt; {
                            input = n.1;
                            n.0
                        },
                        Err(e) =&amp;gt; return Err(e)
                    }
                } else {
                    return Err(ParserError::UnexpectedToken(format!("Unexpected token in object value: {}", input.chars().nth(0).unwrap())));
                };

                result.insert(key.0, value);
                input = input.trim_start();

                // Check for comma or end of object
                if input.chars().nth(0).unwrap() == ',' {
                    // Move past the comma
                    input = &amp;amp;input[1..].trim_start();
                } else if input.chars().nth(0).unwrap() == '}' {
                    input = &amp;amp;input[1..].trim_start();
                    break; // End of object
                } else {
                    return Err(ParserError::UnexpectedToken(format!("Expected ',' or '}}' in object, found: {}", input.chars().nth(0).unwrap())));
                }
            },
            Err(e) =&amp;gt; return Err(e)
        }
    }

    Ok((result, &amp;amp;input))
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;I want to explain the concept these methods follow: So each method returns in the success case a tuple containing the parsed element as well as a string slice. &lt;br&gt;
The slice is the remaining json after the parsing logic. This will be used   in the calling parsing method as the point where it should continue.&lt;/p&gt;

&lt;p&gt;For reading a JSON object we need a loop that continues reading properties until it encounters a &lt;code&gt;}&lt;/code&gt;. Every property contains of a name:value pair. The name is always a string so we can reuse our string parsing method. If this was successful we read the &lt;code&gt;:&lt;/code&gt; and then check the next character. Depending on this sign we go into the appropriate reading method. When this operation was successful we set the remaining slice and create the correct &lt;code&gt;JsonType&lt;/code&gt;. The last step is adding the key-value-pair to our hashmap.&lt;/p&gt;

&lt;p&gt;Feel free to send us suggestions, bug reports and improvement ideas🙂 &lt;/p&gt;

</description>
      <category>rust</category>
      <category>json</category>
    </item>
    <item>
      <title>🏆003. Brainstorming is key</title>
      <dc:creator>Valacor</dc:creator>
      <pubDate>Fri, 26 Sep 2025 21:14:57 +0000</pubDate>
      <link>https://dev.to/0xvalacor/003-brainstorming-is-key-24bj</link>
      <guid>https://dev.to/0xvalacor/003-brainstorming-is-key-24bj</guid>
      <description>&lt;p&gt;A few days ago I wrote about burnout and that I feel exhausted. Now I found a way to clear my mind completely so there is more disk space available for new ideas/thoughts.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fme6sahuh19s5fjonbx4j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fme6sahuh19s5fjonbx4j.png" alt=" " width="800" height="533"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  The tool is called &lt;code&gt;brainstorming&lt;/code&gt;
&lt;/h2&gt;

&lt;p&gt;Every day one hour before I go to bed I take my tablet and start OneNote. Then I create a new page and just start to draw/write what currently comes into my mind.&lt;/p&gt;

&lt;p&gt;The most important part is that I don't force myself what to think. I just note everything down that currently comes into my head. &lt;/p&gt;

&lt;h3&gt;
  
  
  This can be:
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Ideas for apps/software systems&lt;/li&gt;
&lt;li&gt;Innovative products/services &lt;/li&gt;
&lt;li&gt;Complex social challenges &lt;/li&gt;
&lt;li&gt;What is currently fucking me up &lt;/li&gt;
&lt;li&gt;What I achieved this day/week&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  This has two advantages:
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;I process ideas by defining them through words &lt;/li&gt;
&lt;li&gt;My head is cleared when I go to sleep giving me a better quality sleep&lt;/li&gt;
&lt;/ol&gt;

&lt;h2&gt;
  
  
  OneNote
&lt;/h2&gt;

&lt;p&gt;For this task I think it's one of the best tools available. While pen and paper gives you more freedom what you can draw/write and how you represent it there is also a space limit. This makes it very difficult to create a big brainstorm page.&lt;/p&gt;

&lt;p&gt;On the other hand digital tools like Notion or Mindmapping software has limits in the representation of the information or ways of creating that are not that intuitively.&lt;/p&gt;

&lt;p&gt;OneNote resolves the different problems by providing an infinite creation space combined with the flexibility of drawing and writing by using a pen. &lt;/p&gt;

</description>
      <category>softwareengineering</category>
      <category>learning</category>
      <category>mentalhealth</category>
      <category>tooling</category>
    </item>
    <item>
      <title>🏆002. HTTP-TO-MCP bridge</title>
      <dc:creator>Valacor</dc:creator>
      <pubDate>Fri, 19 Sep 2025 20:26:10 +0000</pubDate>
      <link>https://dev.to/0xvalacor/002-wins-of-my-week-244n</link>
      <guid>https://dev.to/0xvalacor/002-wins-of-my-week-244n</guid>
      <description>&lt;p&gt;This week my biggest win was the creation of a bridge between the &lt;a href="https://github.com/modelcontextprotocol/csharp-sdk" rel="noopener noreferrer"&gt;.NET MCP SDK&lt;/a&gt; and a custom HTTP stack.&lt;/p&gt;

&lt;h2&gt;
  
  
  The relevant MCP SDK classes
&lt;/h2&gt;

&lt;p&gt;For the implementation I required an interface to get the JSON RPC messages from the HTTP body to the MCP server. I didn't want to implement the complete MCP Server from the ground up so I use the server fromt the SDK. &lt;br&gt;
The creation is handled by the static method &lt;code&gt;McpServerFactory.Create()&lt;/code&gt;. &lt;/p&gt;

&lt;p&gt;The method accepts four parameters:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;code&gt;ITransport&lt;/code&gt; - Represents a channel that the MCP server uses to read and write &lt;code&gt;JsonRpcMessages&lt;/code&gt;.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;McpServerOptions&lt;/code&gt; - Configuration for the MCP server like available tools, prompts or the server name and version.&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;ILoggerFactory&lt;/code&gt; (optional) - Provides logging capabilities to MCP stack&lt;/li&gt;
&lt;li&gt;
&lt;code&gt;IServiceProvider&lt;/code&gt; (optional) - Not important for this system&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;This method returns an instance of the &lt;code&gt;McpServer&lt;/code&gt;class which implements the &lt;code&gt;IMcpServer&lt;/code&gt; interface. We can use the &lt;code&gt;RunAsync()&lt;/code&gt; method to run the MCP stack which basically represents a long-running task which continuesly reads and process JsonRpcMessages and writes the response back to the transport.  &lt;/p&gt;

&lt;p&gt;We run two tasks on different &lt;code&gt;ThreadPool&lt;/code&gt;-Threads. The HttpServer task to process http requests and the McpServer task to process JsonRPC requests.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Problem: How to get the JSON messages from the HTTP body to the MCP server?&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg2i3oz7axt1mgefdnojk.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fg2i3oz7axt1mgefdnojk.png" alt="Two threads running different server implementations sharing different messages" width="800" height="800"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Channels
&lt;/h2&gt;

&lt;p&gt;A channel represents a tunnle from one thread to another allowing the sender thread to write data into it. The other thread can then read the data. &lt;/p&gt;

&lt;p&gt;The channel is basically a queue using the FIFO principle which means the first message that was written to the channel is the first one consumed on the other thread.&lt;/p&gt;

&lt;p&gt;For our problem we need two channels: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;One sending from the HTTP thread to the MCP thread&lt;/li&gt;
&lt;li&gt;Another sending the MCP response back to the HTTP thread&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The 'ITransport' provides two entities that fit very good to this concept.  A &lt;code&gt;ChannelReader&amp;lt;JsonRpcMessage&amp;gt;&lt;/code&gt; which allows the MCP server to read the JSON RPC requests and the &lt;code&gt;SendMessageAsync&lt;/code&gt; to write a RPC response.&lt;/p&gt;

&lt;p&gt;So we just give the Reader from the &lt;code&gt;HttpToMcp&lt;/code&gt; channel to our custom &lt;code&gt;ITransport&lt;/code&gt; implementation and the Writer from the &lt;code&gt;McpToHttp&lt;/code&gt; channel is used in the &lt;code&gt;SendMessageAsync&lt;/code&gt;. The counterpart (HTTP thread) is reading the RPC messages from the body and enqueue them in the &lt;code&gt;HttpToMcp&lt;/code&gt; channel. The reader from the other channel is used in the HTTP thread and then writes the JsonRpcMessages to the &lt;code&gt;NetworkStream&lt;/code&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  Conclusion
&lt;/h2&gt;

&lt;p&gt;This project is not finished yet and is just a stateless implementation but I learned a lot:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;How works the .NET MCP SDK
&lt;/li&gt;
&lt;li&gt;What is streamable HTTP &lt;/li&gt;
&lt;li&gt;What is the streamable HTTP MCP transport &lt;/li&gt;
&lt;li&gt;How works the custom HTTP-Stack&lt;/li&gt;
&lt;li&gt;.NET Channels &lt;/li&gt;
&lt;li&gt;A better understanding for Multi-Threading&lt;/li&gt;
&lt;/ul&gt;

</description>
      <category>wins</category>
      <category>softwareengineering</category>
      <category>mcp</category>
      <category>dotnet</category>
    </item>
    <item>
      <title>Interaction between developers and other departments</title>
      <dc:creator>Valacor</dc:creator>
      <pubDate>Sun, 14 Sep 2025 14:31:13 +0000</pubDate>
      <link>https://dev.to/0xvalacor/interaction-between-developers-and-other-departments-3650</link>
      <guid>https://dev.to/0xvalacor/interaction-between-developers-and-other-departments-3650</guid>
      <description>&lt;p&gt;I'm working in a little company as a Software Engineer. In my daily work I encounter different problems between the development department and the members of the other once (Marketing, Sales, Product Management).&lt;/p&gt;

&lt;h2&gt;
  
  
  What the departments need
&lt;/h2&gt;

&lt;h3&gt;
  
  
  💹 Marketing
&lt;/h3&gt;

&lt;p&gt;Needs to understand what the key benefits of a specific feature/product is. This is required to come up with a strategy on how to market the specific component. What messages will be the best to transport the benefits? &lt;br&gt;
For this reason the marketing collegues need to understand the core working and what problem is solved.&lt;/p&gt;

&lt;h3&gt;
  
  
  📉 Sales
&lt;/h3&gt;

&lt;p&gt;The sales collegues need similar information as the marketing team but with a little more inside knowledge. They do not need some general message they need for a campaign but enough knowledge to adapt to each customer situation and needs. Therefore they must be able to adapt to different use cases and transfer this to the best solution for the client.&lt;/p&gt;

&lt;h3&gt;
  
  
  📦 Product Management
&lt;/h3&gt;

&lt;p&gt;Understands what problems the customers face and have a superficial &lt;br&gt;
understanding of the technical side of our product. This department mostly needs the help from development and their technical knowledge to bring a product feature to life. It is important to show an understanding that they often lack the knowledge of technical insides.&lt;/p&gt;

&lt;h3&gt;
  
  
  👨‍💻 Development
&lt;/h3&gt;

&lt;p&gt;We as software developers need well definied Requirements. How should the feature look like? What is the state that marks the feature as complete? Where in the architecture is the best place to fit in the feature?&lt;/p&gt;

&lt;h2&gt;
  
  
  🚩 The problem
&lt;/h2&gt;

&lt;p&gt;Product management misses some clear requirement definition which is frustrating the developers because they have to get more information from other persons. The developers show this to product management by letting them know what is missing but the tone plays the music. &lt;br&gt;
Also I observe from time to time that engineers love to show off there knowledge often makes the participants in the conversation feel uncomfortable. This created a big gap between engineers and the other departments &lt;/p&gt;

&lt;h2&gt;
  
  
  💡 Possible solutions
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Knowledge transfer between software developers and product management. This will help the product management team to get a better knowledge about the software architecture and the components &lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Create a transfer position. Someone that has a very good technical understanding but is also able to transfer the complex technical details into easy-to-consume information for the other departments. Therefore someone is required with the skil to be able to explain technical details in a simple way&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Training for developers on how to get into the view of collegues from the other departments and how to communicate with someone else in a respectful manner that do not have the same technical knowledge&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Get representatives from every department on one table. There everybody has the chance to speak open about the problems with the other departments. &lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In general I think we lost our ability to talk to persons with other interests/views. We all insist on our mindset and concepts. But talking to each other and consider the ideas of others will bring us far more forward.  &lt;/p&gt;

</description>
      <category>softwareengineering</category>
      <category>discuss</category>
    </item>
    <item>
      <title>🏆001. Wins of my week🏆</title>
      <dc:creator>Valacor</dc:creator>
      <pubDate>Sat, 13 Sep 2025 01:11:40 +0000</pubDate>
      <link>https://dev.to/0xvalacor/001-wins-of-my-week-227o</link>
      <guid>https://dev.to/0xvalacor/001-wins-of-my-week-227o</guid>
      <description>&lt;h2&gt;
  
  
  🎥 Project went into testing
&lt;/h2&gt;

&lt;p&gt;On my 9-5 I had a very big research project. The goal was the development of a custom end-to-end test framework for one of our products. On Wednesday I was finally able to finish this task and it is now waiting for the review of our test engineer. Let's see how it goes...🙂&lt;/p&gt;

&lt;h2&gt;
  
  
  🧪 Experimenting with the .NET MCP SDK
&lt;/h2&gt;

&lt;p&gt;I want to understand the SDK in more detail so I played around with the transport bridge between transport layer and MCP Stack. First I had a look into the different Implementations of the &lt;code&gt;ITransport&lt;/code&gt; interface and played with the &lt;code&gt;StreamServerTransport&lt;/code&gt;. The goal is to connect the MCP stack with a custom HTTP stack.&lt;/p&gt;

&lt;h2&gt;
  
  
  🔎 Deep work
&lt;/h2&gt;

&lt;p&gt;I want to get into this very cool state of flow. Where the time just goes by and everything seems to fit together. When I have to write code I pretty easy get into this state but when I have to learn/read/think it's still a little bit difficult. So I dedicated some time slots where I practised that. &lt;/p&gt;

&lt;h2&gt;
  
  
  📝 Making my first post
&lt;/h2&gt;

&lt;p&gt;This week on thursday I published my first post on dev.to. It feels great to share my ideas here. Let's see what I will learn from blogging.&lt;/p&gt;

</description>
      <category>softwaredevelopment</category>
      <category>winsoftheweek</category>
      <category>programming</category>
      <category>learning</category>
    </item>
    <item>
      <title>🧠Too much on my mind🧠</title>
      <dc:creator>Valacor</dc:creator>
      <pubDate>Thu, 11 Sep 2025 18:32:19 +0000</pubDate>
      <link>https://dev.to/0xvalacor/too-much-on-my-mind-4268</link>
      <guid>https://dev.to/0xvalacor/too-much-on-my-mind-4268</guid>
      <description>&lt;p&gt;&lt;strong&gt;💡I have a lot of ideas in my mind:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Writing my own HTTP server &lt;/li&gt;
&lt;li&gt;Coding some MCP servers to practice&lt;/li&gt;
&lt;li&gt;Participate in hackathons&lt;/li&gt;
&lt;li&gt;Develop my own social network &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The list is endless and then there are the responsibilities in the real world. Working my 9-5, doing a work out and taking care of family/friends. I want to go deep for each topic but unfortunately the day has only 24 hours. Honestly i feel burned out. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;❓The question: How can I manage all this stuff?❓&lt;/strong&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Recently I reduced my 40 hours week to a 32-hour-week
&lt;/h2&gt;

&lt;p&gt;This gives me the time to restore my energy level and buys me more resources for other topics that are currently more important to me. &lt;/p&gt;

&lt;h2&gt;
  
  
  Learn to prioritise
&lt;/h2&gt;

&lt;p&gt;Often it feels like everything should get the highest priority. I never really learned this important skill. I've heard about the Eisenhower Matrix but I actually have not yet got the concept behind it. Lets see where I will stand in a few months.&lt;/p&gt;

&lt;h2&gt;
  
  
  Concentrate on the current most important challenge
&lt;/h2&gt;

&lt;p&gt;I'm not able to shut down my thoughts about the other tasks when im working on the current one. Even when I put them down on paper or into a notebook i can't stop thinking about them. &lt;/p&gt;

&lt;h2&gt;
  
  
  Ideas
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Making some kind of challenge weeks where I go for one project after another and after a week the result I created is just fine. Well the way is more important, right?&lt;/li&gt;
&lt;li&gt;Just fire up a note program and put everything in it what comes into my mind. It doesn't matter in what order the things come out. It's only important to get them out and maybe there are some cool results&lt;/li&gt;
&lt;li&gt;Going for a walk leaving digital devices behind.&lt;/li&gt;
&lt;li&gt;Maybe it's time for a mindset shift. It should not matter that the project is not completed the way it was designed but what new skills/knowledge i achieved &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Do you have similar experience? What are you're strategies to solve those problems?  &lt;/p&gt;

</description>
      <category>softwaredevelopment</category>
      <category>sideprojects</category>
      <category>mentalhealth</category>
    </item>
  </channel>
</rss>
