---
title: "Blog - Muhammad Rehan Saeed"
description: "Blog posts and more authored by Muhammad Rehan Saeed."
canonical_url: "https://rehansaeed.com/3/"
meta:
  author: "Muhammad Rehan Saeed"
  "og:description": "Blog posts and more authored by Muhammad Rehan Saeed."
  "og:image": "https://rehansaeed.com/_og/s/o_ff19700887f897bb.png"
  "og:image:alt": "Blog - Page 3 - Muhammad Rehan Saeed"
  "og:image:height": "630"
  "og:image:type": image/png
  "og:image:width": "1200"
  "og:title": Blog
  "twitter:image": "https://rehansaeed.com/_og/s/o_ff19700887f897bb.png"
  "twitter:image:alt": "Blog - Page 3 - Muhammad Rehan Saeed"
---

> Index of every page on this site: [llms.txt](https://rehansaeed.com/llms.txt)

![Muhammad Rehan Saeed](https://rehansaeed.com/_ipx/f_png&s_240x240/images/author/Muhammad-Rehan-Saeed/Logo-192x192.png)

# [Muhammad Rehan Saeed](https://rehansaeed.com)

Software Developer at Microsoft, YouTuber, Open Source Contributor and Blogger

[Youtube](https://www.youtube.com/c/MuhammadRehanSaeed) [Twitch](https://www.twitch.tv/rehansaeeduk) [GitHub](https://github.com/RehanSaeed) [LinkedIn](https://www.linkedin.com/in/muhammad-rehan-saeed) [Stack Overflow](https://stackoverflow.com/users/1212017/muhammad-rehan-saeed) [Bluesky](https://bsky.app/profile/rehansaeed.bsky.social) [Mastodon](https://hachyderm.io/@RehanSaeed) Email [RSS](https://rehansaeed.com/rss.xml)

![Static Site-Generators](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Static-Site-Generators-1600x900.png)

## [Choosing a Static Site Generator](https://rehansaeed.com/choosing-a-static-site-generator/)

I choose a static site generator from among a long list including Jekyll, Gatsby, Statiq, Hugo, VuePress, Next.js, Nuxt.js and Gridsome.

Posted 9 June 2020 - **7 min read**

[Static Site Generator](https://rehansaeed.com/tag/static-site-generator/) [WordPress](https://rehansaeed.com/tag/word-press/) [Jekyll](https://rehansaeed.com/tag/jekyll/) [Gatsby](https://rehansaeed.com/tag/gatsby/) [Statiq](https://rehansaeed.com/tag/statiq/) [GraphQL](https://rehansaeed.com/tag/graph-ql/) [Hugo](https://rehansaeed.com/tag/hugo/) [VuePress](https://rehansaeed.com/tag/vue-press/) [Next.js](https://rehansaeed.com/tag/next-js/) [Nuxt.js](https://rehansaeed.com/tag/nuxt-js/) [Gridsome](https://rehansaeed.com/tag/gridsome/)

![Microsoft .NET](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Microsoft-.NET-1366x768.png)

## [ASP.NET Core Integration Testing & Mocking using Moq](https://rehansaeed.com/asp-net-core-integration-testing-mocking-using-moq/)

Mocking services using Moq while integration testing ASP.NET Core applications in memory.

Posted 3 January 2020 - **4 min read**

[ASP.NET Core](https://rehansaeed.com/tag/asp-net-core/) [Integration Tests](https://rehansaeed.com/tag/integration-tests/) [Mock](https://rehansaeed.com/tag/mock/) [Moq](https://rehansaeed.com/tag/moq/) [xUnit](https://rehansaeed.com/tag/x-unit/)

![Dotnet Boxed](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Dotnet-Boxed-1366x768.png)

## [What dotnet new Could Be](https://rehansaeed.com/what-dotnet-new-could-be/)

What the 'dotnet new' CLI command could be if some effort was spent on developing it. I compare it to other templating engines and suggest ideas.

Posted 31 December 2019 - **5 min read**

[dotnet](https://rehansaeed.com/tag/dotnet/) [dotnet new](https://rehansaeed.com/tag/dotnet-new/) [dotnetcore](https://rehansaeed.com/tag/dotnetcore/) [NuGet](https://rehansaeed.com/tag/nu-get/) [Visual Studio](https://rehansaeed.com/tag/visual-studio/) [Vue CLI](https://rehansaeed.com/tag/vue-cli/)

![Microsoft .NET](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Microsoft-.NET-1366x768.png)

## [Unit Testing dotnet new Templates](https://rehansaeed.com/unit-testing-dotnet-new-templates/)

It's difficult to know if your 'dotnet new' based project will work if they have lots of options, in this post I show how to unit test them.

Posted 21 August 2019 - **3 min read**

[.NET](https://rehansaeed.com/tag/net/) [dotnet](https://rehansaeed.com/tag/dotnet/) [dotnet new](https://rehansaeed.com/tag/dotnet-new/) [NuGet](https://rehansaeed.com/tag/nu-get/) [Project Template](https://rehansaeed.com/tag/project-template/)

![Git](https://rehansaeed.com/_ipx/f_png&s_2560x1638/images/hero/Git-1366x768.png)

## [.gitattributes Best Practices](https://rehansaeed.com/gitattributes-best-practices/)

Best practices for configuring Git in the .gitattributes file. Configuring CRLF and LF line endings. Configuring Git Large File System (LFS) for binary files.

Posted 22 July 2019 and updated 4 August 2020 - **7 min read**

[Git](https://rehansaeed.com/tag/git/) [Git LFS](https://rehansaeed.com/tag/git-lfs/) [gitattributes](https://rehansaeed.com/tag/gitattributes/) [GitHub](https://rehansaeed.com/tag/git-hub/) [gitignore](https://rehansaeed.com/tag/gitignore/)

![Windows](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Windows-1366x768.png)

## [Git Cloning the Windows OS Repo](https://rehansaeed.com/git-cloning-the-windows-os-repo/)

My experiences of cloning and working on the Windows OS Git repository.

Posted 24 June 2019 - **4 min read**

[Git](https://rehansaeed.com/tag/git/) [GVFS](https://rehansaeed.com/tag/gvfs/) [OS](https://rehansaeed.com/tag/os/) [Windows](https://rehansaeed.com/tag/windows/)

![Docker](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Docker-1366x768.png)

## [Securing ASP.NET Core in Docker](https://rehansaeed.com/securing-asp-net-core-in-docker/)

How to secure your ASP.NET Core Docker image by setting the file system to be read-only. First in a series of blog posts covering Docker image security.

Posted 25 March 2019 - **1 min read**

[ASP.NET Core](https://rehansaeed.com/tag/asp-net-core/) [Docker](https://rehansaeed.com/tag/docker/) [Docker Swarm](https://rehansaeed.com/tag/docker-swarm/) [Kubernetes](https://rehansaeed.com/tag/kubernetes/)

![Dotnet Boxed](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Dotnet-Boxed-1366x768.png)

## [A Simple and Fast Object Mapper](https://rehansaeed.com/a-simple-and-fast-object-mapper/)

.NET Boxed mapper is an object to object mapper that is simpler and faster than Automapper and makes zero allocations of memory, thus making the garbage collector do less work.

Posted 5 March 2019 - **9 min read**

[.NET Boxed](https://rehansaeed.com/tag/net-boxed/) [.NET Core](https://rehansaeed.com/tag/net-core/) [Automapper](https://rehansaeed.com/tag/automapper/) [Benchmarks](https://rehansaeed.com/tag/benchmarks/) [Entity Framework Core](https://rehansaeed.com/tag/entity-framework-core/)

![Rocket](https://rehansaeed.com/_ipx/f_jpg&s_2560x1440/images/hero/Rocket-1366x768.jpg)

## [Is ASP.NET Core now a Mature Platform?](https://rehansaeed.com/is-asp-net-core-now-a-mature-platform/)

ASP.NET Core a large developer base, a large number of GitHub projects, Stack Overflow questions, bloggers and companies who use it. It's a mature platform.

Posted 18 December 2018 and updated 12 January 2019 - **9 min read**

[.NET Core](https://rehansaeed.com/tag/net-core/) [ASP.NET Core](https://rehansaeed.com/tag/asp-net-core/) [HTTP/2](https://rehansaeed.com/tag/http-2/) [HTTP/3](https://rehansaeed.com/tag/http-3/) [Lets Encrypt](https://rehansaeed.com/tag/lets-encrypt/)

![Online Learning](https://rehansaeed.com/_ipx/f_png&s_2560x1440/images/hero/Online-Learning-1366x768.png)

## [PluralSight vs LinkedIn Learning vs FrontendMasters vs Egghead.io vs YouTube](https://rehansaeed.com/pluralsight-vs-linkedin-learning-vs-frontendmasters-vs-egghead-io-vs-youtube/)

A comparison between PluralSight, LinkedIn Learning, Frontend Masters, Egghead.io, YouTube and other resources for software developers.

Posted 12 November 2018 - **7 min read**

[Channel9](https://rehansaeed.com/tag/channel9/) [Egghead.io](https://rehansaeed.com/tag/egghead-io/) [Frontend Masters](https://rehansaeed.com/tag/frontend-masters/) [Learning](https://rehansaeed.com/tag/learning/) [LinkedIn Learning](https://rehansaeed.com/tag/linked-in-learning/) [Lynda.com](https://rehansaeed.com/tag/lynda-com/) [PluralSight](https://rehansaeed.com/tag/plural-sight/) [YouTube](https://rehansaeed.com/tag/you-tube/)

[Previous](https://rehansaeed.com/2/)

**Page 3 of 11**

[Next](https://rehansaeed.com/4/)

```json
{"@context":"https://schema.org","@graph":[{"@id":"https://rehansaeed.com/#website","@type":"WebSite","description":"Software Developer at Microsoft, YouTuber, Open Source Contributor and Blogger","inLanguage":"en-GB","name":"Muhammad Rehan Saeed","url":"https://rehansaeed.com/","author":{"@id":"https://rehansaeed.com/#identity"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://rehansaeed.com/?search={search_term_string}"},"query-input":"required name=search_term_string"}],"publisher":{"@id":"https://rehansaeed.com/#publisher"}},{"@id":"https://rehansaeed.com/3/#webpage","description":"Blog posts and more authored by Muhammad Rehan Saeed.","name":"Blog","url":"https://rehansaeed.com/3/","@type":["WebPage","CollectionPage"],"breadcrumb":{"@id":"https://rehansaeed.com/3/#breadcrumb"},"isPartOf":{"@id":"https://rehansaeed.com/#website"},"potentialAction":[{"@type":"ReadAction","target":["https://rehansaeed.com/3/"]}]},{"@id":"https://rehansaeed.com/#identity","@type":"Person","name":"Muhammad Rehan Saeed","url":"https://rehansaeed.com/about/","image":{"@id":"https://rehansaeed.com/#/schema/image/1"},"sameAs":["https://github.com/RehanSaeed","https://www.linkedin.com/in/muhammad-rehan-saeed","https://stackoverflow.com/users/1212017/muhammad-rehan-saeed","https://www.youtube.com/c/MuhammadRehanSaeed","https://www.twitch.tv/rehansaeeduk"]},{"@id":"https://rehansaeed.com/#publisher","@type":"Organization","logo":"https://rehansaeed.com/images/schema/Publisher-600x60.png","name":"Muhammad Rehan Saeed","url":"https://rehansaeed.com"},{"@id":"https://rehansaeed.com/3/#/schema/item-list/1","@type":"ItemList","itemListElement":[{"@type":"ListItem","name":"Choosing a Static Site Generator","url":"https://rehansaeed.com/choosing-a-static-site-generator/","position":1},{"@type":"ListItem","name":"ASP.NET Core Integration Testing & Mocking using Moq","url":"https://rehansaeed.com/asp-net-core-integration-testing-mocking-using-moq/","position":2},{"@type":"ListItem","name":"What dotnet new Could Be","url":"https://rehansaeed.com/what-dotnet-new-could-be/","position":3},{"@type":"ListItem","name":"Unit Testing dotnet new Templates","url":"https://rehansaeed.com/unit-testing-dotnet-new-templates/","position":4},{"@type":"ListItem","name":".gitattributes Best Practices","url":"https://rehansaeed.com/gitattributes-best-practices/","position":5},{"@type":"ListItem","name":"Git Cloning the Windows OS Repo","url":"https://rehansaeed.com/git-cloning-the-windows-os-repo/","position":6},{"@type":"ListItem","name":"Securing ASP.NET Core in Docker","url":"https://rehansaeed.com/securing-asp-net-core-in-docker/","position":7},{"@type":"ListItem","name":"A Simple and Fast Object Mapper","url":"https://rehansaeed.com/a-simple-and-fast-object-mapper/","position":8},{"@type":"ListItem","name":"Is ASP.NET Core now a Mature Platform?","url":"https://rehansaeed.com/is-asp-net-core-now-a-mature-platform/","position":9},{"@type":"ListItem","name":"PluralSight vs LinkedIn Learning vs FrontendMasters vs Egghead.io vs YouTube","url":"https://rehansaeed.com/pluralsight-vs-linkedin-learning-vs-frontendmasters-vs-egghead-io-vs-youtube/","position":10}]},{"@id":"https://rehansaeed.com/3/#breadcrumb","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","name":"Blog","item":"https://rehansaeed.com/","position":1},{"@type":"ListItem","name":"Page 3","item":"https://rehansaeed.com/3/","position":2}]},{"@id":"https://rehansaeed.com/#/schema/image/1","@type":"ImageObject","contentUrl":"https://rehansaeed.com/images/author/Muhammad-Rehan-Saeed/Logo-512x512.png","inLanguage":"en-GB","url":"https://rehansaeed.com/images/author/Muhammad-Rehan-Saeed/Logo-512x512.png"}]}
```

## Sitemap

See the full [sitemap](https://rehansaeed.com/sitemap.md) for all pages.
