<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Codings on The Daily Scrum</title>
    <link>/coding/</link>
    <description>Recent content in Codings on The Daily Scrum</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <managingEditor>info@salvatorecattano.it (Salvatore Cattano)</managingEditor>
    <webMaster>info@salvatorecattano.it (Salvatore Cattano)</webMaster>
    <copyright>This work is licensed under a Creative Commons Attribution-NonCommercial 4.0 International License.</copyright>
    <lastBuildDate>Wed, 12 Mar 2025 00:09:05 +0100</lastBuildDate><atom:link href="/coding/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Optimizing SQL Server Views</title>
      <link>/coding/slq-optimization-refactoring/</link>
      <pubDate>Wed, 12 Mar 2025 00:09:05 +0100</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/slq-optimization-refactoring/</guid>
      <description>Introduction Optimizing SQL Server Views: The Battle Against Subqueries, Casts, and IN Working with SQL Server views can sometimes feel like cleaning up after a tornado—especially when you stumble upon excessive subqueries,and poorly optimized filters.
Today, I took on the challenge of refactoring some views, and here’s what I learned! 🚀
1. Killing the Subquery Overload ⚔️ Subqueries might seem like a convenient way to fetch data, but when overused, they turn into performance nightmares.</description>
    </item>
    
    <item>
      <title>SQL Query Optimization: Tips and Tricks</title>
      <link>/coding/slq-optimization/</link>
      <pubDate>Mon, 10 Mar 2025 23:01:01 +0100</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/slq-optimization/</guid>
      <description>Introduction Optimizing SQL queries is crucial for improving database performance and reducing application response times. In this article, we will explore techniques to make queries more efficient, with practical examples and detailed explanations.
1. Use Indexes Indexes speed up search and filtering operations by reducing the number of rows to scan. However, they should be used wisely because too many indexes can slow down write operations (INSERT, UPDATE, DELETE).
Example: Creating an index on a frequently filtered column</description>
    </item>
    
    <item>
      <title>How-To: MemoryCache in CSharp</title>
      <link>/coding/memory-cache-csharp/</link>
      <pubDate>Fri, 23 Feb 2024 17:48:17 +0100</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/memory-cache-csharp/</guid>
      <description>Introduction to MemoryCache in C# MemoryCache is a fundamental component for caching management in C#. It resides in the System.Runtime.Caching library and is used to temporarily store data in memory to improve application performance, reducing the time it takes to access data compared to retrieval from a slower data source such as a database or network call.
What is MemoryCache? MemoryCache provides an in-memory caching implementation that allows developers to store data in the application process memory.</description>
    </item>
    
    <item>
      <title>Hugo Error - Can’t evaluate field ContentDir in type *langs.Language</title>
      <link>/coding/hugo-error-langs.language/</link>
      <pubDate>Mon, 09 Oct 2023 14:35:42 +0200</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/hugo-error-langs.language/</guid>
      <description>Intro Recently, I found myself on an unexpected journey - the reimaging of my work notebook. This was not a decision I made voluntarily, but rather a task assigned by my company due to a domain change. I was part of a team that offered up their notebooks for the reimage process, and it was quite an adventure.
The Fresh Start The process began with formatting my computer, which gave me that sense of rejuvenation as if I had a brand-new PC.</description>
    </item>
    
    <item>
      <title>Markdown Supported Languages</title>
      <link>/coding/markdown-supported-languages/</link>
      <pubDate>Mon, 04 Sep 2023 23:19:03 +0200</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/markdown-supported-languages/</guid>
      <description>Introduction For markdown texts, we need to specify the languages for corresponding syntax highlighting.
Following is an example for highlighting c++ codes in markdown texts:
```cpp bool getBit(int num, int i) { return ((num &amp;amp; (1&amp;lt;&amp;lt;i)) != 0); }``` Which becomes:
bool getBit(int num, int i) { return ((num &amp;amp; (1&amp;lt;&amp;lt;i)) != 0); } More settigns Please, follow this repo on GitHub</description>
    </item>
    
    <item>
      <title>NuGet ~ UpdatePackage Commands</title>
      <link>/coding/nuget-updatepackage-commands/</link>
      <pubDate>Mon, 04 Sep 2023 23:04:03 +0200</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/nuget-updatepackage-commands/</guid>
      <description>Introduction I often have to import solutions into the main project. Usually, each solution may use different versions of some components or, sometimes, new libraries. I have seen that a common practice is to run the Update-Manager on the whole project when, for example, it would be enough to run it only for the solution concerned.
Here are some of the commands to use in certain situations.
List of (some) parameters Param Description -ProjectName Specifies the name of the project in which packages should be updated.</description>
    </item>
    
    <item>
      <title>Optimization Code - StringBuilder</title>
      <link>/coding/optimization-code-stringbuilder/</link>
      <pubDate>Thu, 06 Jul 2023 01:06:48 +0200</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/optimization-code-stringbuilder/</guid>
      <description>Intro Use StringBuilder for String Manipulation: When you need to concatenate or modify strings in a loop or a frequently executed code block, using the StringBuilder class instead of directly manipulating strings can significantly improve performance.
Strings in C# are immutable, which means that each time a modification is made, a new string object is created in memory, leading to unnecessary memory allocations and performance overhead.
StringBuilder provides a mutable string buffer that efficiently handles string modifications.</description>
    </item>
    
    <item>
      <title>Optimization Code - Dictionaries</title>
      <link>/coding/optimize-code-p1/</link>
      <pubDate>Thu, 06 Jul 2023 00:56:36 +0200</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/optimize-code-p1/</guid>
      <description>Introduction A common computer technique to improve performance in C# is the use of efficient data structures such as optimized dictionaries or lists. These data structures reduce the time for data access and searching, thereby improving the overall application performance.
Optimized dictionaries, such as Dictionary&amp;lt;TKey, TValue&amp;gt;, provide fast and efficient data access through a data structure called a hash table.
This structure allows storing data in key-value pairs, providing near-constant access time regardless of the dictionary&amp;rsquo;s size.</description>
    </item>
    
    <item>
      <title>How-To: Join multiple files</title>
      <link>/coding/howto-join-multiple-files/</link>
      <pubDate>Thu, 12 Jan 2023 23:03:13 +0100</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/howto-join-multiple-files/</guid>
      <description>Introduction It often happens that we have split files, such as text files, which contain a set of information split for a reason.
Let me give you an example:
I needed to upload some IP addresses to my firewall blacklist. Unfortunately I had more than one hundred files, containing this information, splitted by geographical area. To be honest, I didn&amp;rsquo;t want to upload the files one at a time.
For this reason, I had thought of creating a single file by unifying all the others.</description>
    </item>
    
    <item>
      <title>GIT Error - Cannot lock existing info/refs</title>
      <link>/coding/git-error-cannot-lock/</link>
      <pubDate>Fri, 16 Dec 2022 15:12:23 +0100</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/git-error-cannot-lock/</guid>
      <description>Introduction I received a strange issue during the Fetch and Pull actions in Visual Studio. The error is:
Error Error: cannot lock existing info/refs/blablabla Fix The fix consist to remove references to remote branches in the folder .git/refs/remotes/origin
$ git remote prune origin This fix will not affect the local branches, just update the local references. So.. it&amp;rsquo;s safe!</description>
    </item>
    
    <item>
      <title>Create a Logger</title>
      <link>/coding/create-a-logger/</link>
      <pubDate>Sat, 26 Nov 2022 00:24:34 +0100</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/create-a-logger/</guid>
      <description>Introduction When we are developing a new application, for sure, we need to create a Logger.
Log an info/warning/error is useful for the user but, of course, much more for the developer to investigate on an issue. Or, maybe, because the application has to provide a report of an investigation (performance or comparison test are just two examples).
Sometimes the existing Logger is not enough for our purposes and, for this reason, it’s necessary to write our own custom logger.</description>
    </item>
    
    <item>
      <title>GIT - Checkout TAGS</title>
      <link>/coding/git-checkout-tags/</link>
      <pubDate>Sat, 12 Nov 2022 01:17:58 +0100</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/git-checkout-tags/</guid>
      <description>Introduction It is quite common for developers to create tags in order to have reference points in their development. Sometimes the tags are used also to mark a version of the code.
It happen often that the code that we are maintained is used in other solutions as library.
And, of course, each solutions can use different version of our deployed code.
Real case If different applications used different version of our deployed code (as library, for example), means that we have to maintain &amp;ldquo;all&amp;rdquo; the versions (maybe it is better to define from which version there is a maintenance support).</description>
    </item>
    
    <item>
      <title>PowerShell Not Digitally Signed</title>
      <link>/coding/powershell-not-digitally-signed/</link>
      <pubDate>Sat, 12 Nov 2022 00:57:35 +0100</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/powershell-not-digitally-signed/</guid>
      <description>Introduction When you run a .ps1 PowerShell script you might get the message saying “PowerShell is not digitally signed. The script will not execute on the system.”
Fix To fix it you have to run the command below to run Set-ExecutionPolicy and change the Execution Policy setting.
Set-ExecutionPolicy -Scope Process -ExecutionPolicy Bypass Explanation This command sets the execution policy to bypass for only the current PowerShell session after the window is closed.</description>
    </item>
    
    <item>
      <title>Deploy Script for Hugo[Mac-Linux-Win]</title>
      <link>/coding/deploy-script-for-hugo/</link>
      <pubDate>Thu, 06 Oct 2022 00:51:59 +0200</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/deploy-script-for-hugo/</guid>
      <description>Introduction The scope of this article is to show you how to create a simple script to speed-up some operations for the deploy of the web-site.
Of course, we need to move all the files (in the public folder) into the remote folder through an FTP service.
Install an FTP Mac/Linux I have tried many command line clients, but the only one that allowed me to move all the contents of the public folder (including folders), to the remote one, was ncftp [link]</description>
    </item>
    
    <item>
      <title>Create Static WebSite</title>
      <link>/coding/create-static-site/</link>
      <pubDate>Mon, 03 Oct 2022 23:54:50 +0200</pubDate>
      <author>info@salvatorecattano.it (Salvatore Cattano)</author>
      <guid>/coding/create-static-site/</guid>
      <description>Introduction The content of this post is to show you how to create a static website in an easy way, using a framework and themes. The post will be very easy and short&amp;hellip; so, let&amp;rsquo;s proceed..
Framework The Framework that we will to use is HUGO. I don&amp;rsquo;t want to stress you with a lot of info about it. If you are curious, you can check:
Hugo WebSite Wikipedia GitHub repo Go, programming language that HUGO is based for.</description>
    </item>
    
  </channel>
</rss>
