<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Programming on runaho.dev</title><link>https://52b71935.runaho-dev.pages.dev/tags/programming/</link><description>Recent content in Programming on runaho.dev</description><generator>Hugo</generator><language>en</language><lastBuildDate>Sun, 10 Dec 2023 00:00:00 +0000</lastBuildDate><atom:link href="https://52b71935.runaho-dev.pages.dev/tags/programming/index.xml" rel="self" type="application/rss+xml"/><item><title>Expertise Alienation</title><link>https://52b71935.runaho-dev.pages.dev/writing/expertise-alienation/</link><pubDate>Sun, 10 Dec 2023 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/writing/expertise-alienation/</guid><description>&lt;p&gt;Expertise alienation is the condition in which an individual, due to possessing more knowledge and skills in a specific field than an average person, finds it challenging to connect or find others who can communicate with them on the same level or assist them. This does not imply that the person has given up on self-improvement; on the contrary, they continue to learn new things and challenge themselves. However, during this process, the number of individuals who can accompany them in both personal and professional life decreases, and the person may experience a sense of loneliness.&lt;/p&gt;</description></item><item><title>Creating the Best Project Obsessed with Perfection</title><link>https://52b71935.runaho-dev.pages.dev/writing/creating-best-project-perfection/</link><pubDate>Tue, 05 Dec 2023 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/writing/creating-best-project-perfection/</guid><description>&lt;p&gt;As software developers, we all aspire to create the best project. We want to write perfect code and deliver an outstanding product by using the latest technologies, the best architectures, and the best practices.&lt;/p&gt;
&lt;p&gt;Think about various structures and architectures you&amp;rsquo;ve heard or experienced: CQRS, Minimal API, Micro Service, SSR, SPA, Rest, GraphQL, and more.&lt;/p&gt;
&lt;p&gt;When learning these technologies or using them in a project, you might have been enchanted by the idea that every project should be done this way. If that&amp;rsquo;s the case, you may have fallen into a misconception.&lt;/p&gt;</description></item><item><title>My 10-Day Journey of Learning Go: Building Web Apps and More!</title><link>https://52b71935.runaho-dev.pages.dev/engineering/my-go-learning-journey/</link><pubDate>Sun, 15 Oct 2023 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/engineering/my-go-learning-journey/</guid><description>&lt;p&gt;I learned Go in 10 days — here&amp;rsquo;s exactly what I built and how.&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
&lt;p&gt;&lt;strong&gt;Getting Started with Go&lt;/strong&gt; (Day 1-2)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;I started my journey by immersing myself in Go. For the first couple of days, I watched tutorial videos, read documentation, and practiced the basics of Go syntax for about 6 hours each day. I was pleasantly surprised by how intuitive and simple the language was, making it easy to grasp the fundamentals quickly.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;a href="https://www.youtube.com/watch?v=YHkBmxpCFAg" target="_blank" rel="noreferrer"&gt;A Tour of Go for the C# Developer - Jeremy Clark - NDC London 2021&lt;/a&gt;&lt;/p&gt;</description></item><item><title>Using HttpResults.Results for Minimal API Methods with MiniValidator in .NET Core</title><link>https://52b71935.runaho-dev.pages.dev/engineering/minimal-api-minivalidator-dotnet/</link><pubDate>Sat, 07 Oct 2023 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/engineering/minimal-api-minivalidator-dotnet/</guid><description>&lt;h1 id="about-the-post" class="relative group"&gt;About the post &lt;span class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100"&gt;&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" style="text-decoration-line: none !important;" href="#about-the-post" aria-label="Anchor"&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h1&gt;&lt;p&gt;In this blog post, I will show you how to use HttpResults.Results for Minimal API Methods in &lt;code&gt;.NET Core HttpResults.Results&lt;/code&gt; is a class that provides a set of typed results for common scenarios, such as Ok, BadRequest, Problem, ValidationProblem, etc. These results can be used to return consistent and meaningful responses from your API methods, without having to write a lot of boilerplate code.&lt;/p&gt;</description></item><item><title>Unveiling the Challenges of Blazor Development: Navigating Through Insufficient Libraries and Unstable Experiences</title><link>https://52b71935.runaho-dev.pages.dev/engineering/blazor-development-challenges/</link><pubDate>Mon, 19 Jun 2023 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/engineering/blazor-development-challenges/</guid><description>&lt;p&gt;Hello, first of all, I should tell you that I have been developing projects for more than 7 years and I really enjoyed blazor.
2 server product, 2 wasm product, 2 maui product i developed.
I would like to share the problems I have experienced in general.&lt;/p&gt;
&lt;h2 id="begining" class="relative group"&gt;Begining &lt;span class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100"&gt;&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" style="text-decoration-line: none !important;" href="#begining" aria-label="Anchor"&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;&lt;p&gt;Initial impression may be positive, but as development progresses, serious problems can arise. I&amp;rsquo;ve developed two applications using Blazor Server, Blazor WASM, and Blazor MAUI.&lt;/p&gt;</description></item><item><title>Which Technique to choose between the Web Development?</title><link>https://52b71935.runaho-dev.pages.dev/notes/web-development-techniques/</link><pubDate>Sat, 18 Mar 2023 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/notes/web-development-techniques/</guid><description>&lt;h2 id="setup" class="relative group"&gt;Setup &lt;span class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100"&gt;&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" style="text-decoration-line: none !important;" href="#setup" aria-label="Anchor"&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;&lt;p&gt;Greetings,
First, let me talk about the project in basic terms.
We aim to try a project that connects to a database with a simple orm and performs crud operations in many technologies and to extract the pros and cons for us.&lt;/p&gt;
&lt;p&gt;What is the real purpose of this experiment?&lt;/p&gt;
&lt;h3 id="this-experiment" class="relative group"&gt;This experiment; &lt;span class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100"&gt;&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" style="text-decoration-line: none !important;" href="#this-experiment" aria-label="Anchor"&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h3&gt;&lt;ul&gt;
&lt;li&gt;It can contribute to choosing which of the .net web patterns to use in which project size.&lt;/li&gt;
&lt;li&gt;It has been developed to find out what can be done in which pattern with little effort while developing projects.&lt;/li&gt;
&lt;li&gt;Of course, we can reach the same results with all patterns by trying hard. But what I want to show here is how we can evaluate and conclude the processes with the natural functioning of the pattern we are trying.&lt;/li&gt;
&lt;li&gt;How the developer evaluated this process and how much workload it created.&lt;/li&gt;
&lt;li&gt;What we are testing is the fastest and easiest method the pattern supports, rather than the best or idealized hardest method.&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id="tested-business" class="relative group"&gt;Tested business; &lt;span class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100"&gt;&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" style="text-decoration-line: none !important;" href="#tested-business" aria-label="Anchor"&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h3&gt;&lt;p&gt;Functionality is what we are testing in this project.
How can we add, remove and update Todo in the fastest and simplest way?&lt;/p&gt;</description></item><item><title>I Developed/Published Application with .NET MAUI Blazor</title><link>https://52b71935.runaho-dev.pages.dev/engineering/maui-blazor-app-published/</link><pubDate>Tue, 06 Dec 2022 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/engineering/maui-blazor-app-published/</guid><description>&lt;p&gt;Hello, first of all, I would like to tell you why I entered this challenging process.&lt;/p&gt;
&lt;p&gt;For those who don’t want to read the article, I will give you the link to the application directly, but I prefer you to read it first and then click on it.&lt;/p&gt;
&lt;p&gt;&lt;a href="https://play.google.com/store/apps/details?id=com.runaho.afup.mauiblazor" target="_blank" rel="noreferrer"&gt;AFUP Google Play&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;a href="https://dotnet.microsoft.com/en-us/apps/aspnet/web-apps/blazor" target="_blank" rel="noreferrer"&gt;Blazor&lt;/a&gt; has always struck me as a great technology.&lt;br&gt;
The idea of publishing native &lt;a href="https://learn.microsoft.com/en-us/aspnet/core/blazor/hybrid/tutorials/maui?view=aspnetcore-7.0&amp;amp;pivots=windows" target="_blank" rel="noreferrer"&gt;Blazor applications with MAUI&lt;/a&gt; is incredible.I immediately said I had to learn this technology and started researching. I wrote small applications, to-do app etc. But then I asked myself why don’t I write an application that people will use. The plan was now ready, I was going to write an app, submit it to all the stores, create a reference for myself and literally take over every stage of an app development from start to finish.&lt;/p&gt;</description></item><item><title>How to access files in the backend on .NET Core?</title><link>https://52b71935.runaho-dev.pages.dev/engineering/dotnet-backend-file-access/</link><pubDate>Fri, 26 Nov 2021 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/engineering/dotnet-backend-file-access/</guid><description>&lt;p&gt;Hi, in this article, we will look at how we can access files when we want to do operations such as reading, writing, etc. with .NET Core.&lt;/p&gt;
&lt;h2 id="how-to-access-a-file-in-wwwroot" class="relative group"&gt;How to access a file in wwwroot? &lt;span class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100"&gt;&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" style="text-decoration-line: none !important;" href="#how-to-access-a-file-in-wwwroot" aria-label="Anchor"&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;&lt;p&gt;The first thing you need to do is to set the IWebHostEnvironment interface as a parameter to the construction field of your page or class and set it as private readonly. In this way, we can use it wherever we want after the page is initialized.&lt;/p&gt;</description></item><item><title>How to Use Session in .NET Core?</title><link>https://52b71935.runaho-dev.pages.dev/engineering/dotnet-core-session/</link><pubDate>Thu, 25 Nov 2021 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/engineering/dotnet-core-session/</guid><description>&lt;p&gt;Hello, in this article we will look at how we can use session with .net core.&lt;/p&gt;
&lt;p&gt;If you, like me, have spent a lot of time with the .net framework for a long time, and a session is a must.&lt;/p&gt;
&lt;h2 id="so-lets-see-how-to-implement-session-in-net-core" class="relative group"&gt;So let’s see how to implement Session in Net Core &lt;span class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100"&gt;&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" style="text-decoration-line: none !important;" href="#so-lets-see-how-to-implement-session-in-net-core" aria-label="Anchor"&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;&lt;p&gt;To use Session in .Net Core, we first need to go to Startup.cs and find the ConfigureServices Method.&lt;/p&gt;</description></item><item><title>Accessing the index of an element when using foreach in C#</title><link>https://52b71935.runaho-dev.pages.dev/engineering/csharp-foreach-index/</link><pubDate>Tue, 23 Nov 2021 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/engineering/csharp-foreach-index/</guid><description>&lt;p&gt;Hi, today I am here with an extremely simple article.&lt;/p&gt;
&lt;p&gt;While writing foreach, you may need to access the index sometimes, although using for blocks makes more sense in such cases, it is possible to access the index while using foreach.&lt;/p&gt;
&lt;p&gt;Normally I wouldn’t write about this topic, but it has been discussed a little on stackoverflow.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;For this, it is necessary to have a little understanding of the using of lists.&lt;/strong&gt;&lt;/p&gt;</description></item><item><title>I left the Web Form and switched to Razor Pages.</title><link>https://52b71935.runaho-dev.pages.dev/engineering/webforms-to-razor-pages/</link><pubDate>Tue, 23 Nov 2021 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/engineering/webforms-to-razor-pages/</guid><description>&lt;p&gt;Hi, in this article, I will talk about my thoughts about .NET Core Razor Pages, its pros, cons and what it adds to me, and I wish you a pleasant reading.&lt;/p&gt;
&lt;p&gt;If you are in the process of change like me or are wondering about my change, it will be a long article.&lt;/p&gt;
&lt;p&gt;If I have to talk about myself, I have been developing web applications with Web Forms technology since 2015. Time and time, I was looking at MVC and finding it too complex for the projects I developed, so I was used in one or two projects and walked away. If you don’t have an old but incredibly large project as an ORM, I would establish my database relations with the LINQ 2 Data Context, which does not cause problems and even saves a lot of time, I would develop Procedure-based database architecture and separate SQL from C# as much as possible.&lt;/p&gt;</description></item><item><title>What is programming for a programmer?</title><link>https://52b71935.runaho-dev.pages.dev/writing/what-is-programming-for-a-programmer/</link><pubDate>Sun, 21 Nov 2021 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/writing/what-is-programming-for-a-programmer/</guid><description>&lt;p&gt;Before that, I want to ask you another question. Why does programming have languages and why do we call c# , java and similar languages as a “languages”?&lt;/p&gt;
&lt;h2 id="what-is-programming-for-me" class="relative group"&gt;What is programming for me? &lt;span class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100"&gt;&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" style="text-decoration-line: none !important;" href="#what-is-programming-for-me" aria-label="Anchor"&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;&lt;p&gt;At first, I saw programming languages as a dictionary and memorized the equivalents of the codes. I’ve been doing this for a long time and developing software has become a very different field for me. After one year of experience, I understood that software development is talking to a computer.&lt;/p&gt;</description></item><item><title>C# 8.0 ??= Null Coalescing Operators &amp; Encapsulation</title><link>https://52b71935.runaho-dev.pages.dev/engineering/csharp-null-coalescing/</link><pubDate>Sat, 20 Nov 2021 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/engineering/csharp-null-coalescing/</guid><description>&lt;p&gt;Hi, in today’s article, I will share my experiences using the ??= operator that came with C# 8.0.&lt;/p&gt;
&lt;p&gt;Sometimes in C# we mean that if an object is empty then set to another object otherwise we want to continue using that object.&lt;/p&gt;
&lt;h2 id="now-lets-make-an-example" class="relative group"&gt;Now let’s make an example. &lt;span class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100"&gt;&lt;a class="group-hover:text-primary-300 dark:group-hover:text-neutral-700" style="text-decoration-line: none !important;" href="#now-lets-make-an-example" aria-label="Anchor"&gt;#&lt;/a&gt;&lt;/span&gt;&lt;/h2&gt;&lt;p&gt;This operator briefly functions as assign the right object if the left object is empty, otherwise return the left one.&lt;/p&gt;</description></item><item><title>Using Native Prompt with .NET MAUI Blazor</title><link>https://52b71935.runaho-dev.pages.dev/engineering/using-native-prompt-with-net-maui-blazor/</link><pubDate>Sat, 20 Nov 2021 00:00:00 +0000</pubDate><guid>https://52b71935.runaho-dev.pages.dev/engineering/using-native-prompt-with-net-maui-blazor/</guid><description>&lt;p&gt;.NET MAUI Blazor Native Prompt&lt;/p&gt;
&lt;p&gt;Hi all, welcome to this short but I think it will be useful for you.&lt;br&gt;
I will show how we can use alerts and prompts in a simple native way when developing applications for Cross Platform.&lt;/p&gt;
&lt;p&gt;This is what we trying to achive:&lt;/p&gt;
&lt;p&gt;






 
 
&lt;figure&gt;&lt;img src="https://miro.medium.com/v2/resize:fit:1388/1*E7_xPLraB_iXonXOyf0z3w.png" alt="example" class="mx-auto my-0 rounded-md" /&gt;
&lt;/figure&gt;
&lt;/p&gt;
&lt;p&gt;First of all we need the create an interface for using all the platform’s named as : IPromptService&lt;/p&gt;</description></item></channel></rss>