<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Documentation on Brandon Pugh&#39;s Blog</title>
    <link>https://www.brandonpugh.com/tags/documentation/</link>
    <description>Recent content in Documentation on Brandon Pugh&#39;s Blog</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <lastBuildDate>Wed, 18 Oct 2023 00:00:00 +0000</lastBuildDate><atom:link href="https://www.brandonpugh.com/tags/documentation/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Zeal offline documentation browser</title>
      <link>https://www.brandonpugh.com/til/documentation/zeal/</link>
      <pubDate>Wed, 18 Oct 2023 00:00:00 +0000</pubDate>
      <guid>https://www.brandonpugh.com/til/documentation/zeal/</guid>
      <description>&lt;p&gt;Today I learned about a cool project called &lt;a href=&#34;https://zealdocs.org/&#34;&gt;Zeal&lt;/a&gt; that let&amp;rsquo;s download and browse the documentation for a bunch of projects.
I&amp;rsquo;ve always liked the idea being able to continue working even without internet.&lt;/p&gt;

       &lt;hr&gt; &lt;p&gt;Thank you for keeping RSS alive. You&#39;re awesome.&lt;/p&gt; &lt;p&gt;&lt;a href=&#34;mailto:blogrss@bpugh.dev&#34;&gt;Reply by email&lt;/a&gt;&lt;/p&gt;
        &lt;img src=&quot;https://blog.bpugh.workers.dev/cdn/images?p=/til/documentation/zeal/feed&quot;&gt;
      </description>
    </item>
    
    <item>
      <title>The C4 model for visualizing software architecture</title>
      <link>https://www.brandonpugh.com/til/documentation/c4-model/</link>
      <pubDate>Wed, 02 Aug 2023 00:00:00 +0000</pubDate>
      <guid>https://www.brandonpugh.com/til/documentation/c4-model/</guid>
      <description>&lt;p&gt;Today I learned about the &lt;a href=&#34;https://c4model.com/&#34;&gt;C4 model&lt;/a&gt; for visualizing software architecture.
It looks like a nice framework for thinking hierarchically about the architecture of a system and how best to go about conveying it visually.&lt;/p&gt;

       &lt;hr&gt; &lt;p&gt;Thank you for keeping RSS alive. You&#39;re awesome.&lt;/p&gt; &lt;p&gt;&lt;a href=&#34;mailto:blogrss@bpugh.dev&#34;&gt;Reply by email&lt;/a&gt;&lt;/p&gt;
        &lt;img src=&quot;https://blog.bpugh.workers.dev/cdn/images?p=/til/documentation/c4-model/feed&quot;&gt;
      </description>
    </item>
    
    <item>
      <title>Sequence Diagrams</title>
      <link>https://www.brandonpugh.com/til/documentation/sequence-diagrams/</link>
      <pubDate>Thu, 20 Jul 2023 00:00:00 +0000</pubDate>
      <guid>https://www.brandonpugh.com/til/documentation/sequence-diagrams/</guid>
      <description>&lt;p&gt;I learned how to correctly &lt;a href=&#34;https://www.lucidchart.com/pages/uml-sequence-diagram&#34;&gt;read sequence diagrams&lt;/a&gt;.
I came across a recent post that suggests &amp;ldquo;&lt;a href=&#34;https://www.mermaidchart.com/blog/posts/sequence-diagrams-the-good-thing-uml-brought-to-software-development&#34;&gt;Sequence diagrams are the only good thing UML brought to software development&lt;/a&gt;&amp;rdquo;.
I&amp;rsquo;d never thought they were that useful but it turns out that was because I&amp;rsquo;d been misreading them.&lt;/p&gt;
&lt;p&gt;There&amp;rsquo;s probably been a few instances over the years where I&amp;rsquo;ve made a flowchart where a sequence diagram would have been better.
For example, I tend to add a high-level overview of how a request moves through our application especially since &lt;a href=&#34;https://mermaid.js.org/&#34;&gt;Mermaid.js&lt;/a&gt; makes it really easy to add to markdown documentation (&lt;a href=&#34;https://github.blog/2022-02-14-include-diagrams-markdown-files-mermaid/&#34;&gt;Github and Azure DevOps&lt;/a&gt; will both render them).&lt;/p&gt;
&lt;p&gt;Here&amp;rsquo;s a quick example of a typical &lt;a href=&#34;https://github.com/jbogard/ContosoUniversityDotNetCore-Pages&#34;&gt;vertical slice architecture&lt;/a&gt; we would use at Headspring.
Adding this code block to a markdown file will render a sequence diagram using Mermaid:&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;  sequenceDiagram
    UI-&amp;gt;&amp;gt;api: http request
    participant api as API controller
    Note over UI,api: This gets bound to a viewModel &amp;lt;br/&amp;gt;(*[Query|Command].cs)
    participant mediatr as Mediatr handler
    api-&amp;gt;&amp;gt;mediatr: Mediatr request
    mediatr-&amp;gt;&amp;gt;DB: Entity framework query
    DB--&amp;gt;&amp;gt;mediatr: DB records
    Note over mediatr: Business logic/validation
    mediatr--&amp;gt;&amp;gt;api: Response data
    Note over api,mediatr: viewModel (*[Response|Command].cs)
    api--&amp;gt;&amp;gt;UI: http response
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Rendered on Github:&lt;/p&gt;
&lt;p&gt;&lt;img alt=&#34;sequence diagram as rendered on github&#34; loading=&#34;lazy&#34; src=&#34;sequence-diagram.png&#34;&gt;&lt;/p&gt;

       &lt;hr&gt; &lt;p&gt;Thank you for keeping RSS alive. You&#39;re awesome.&lt;/p&gt; &lt;p&gt;&lt;a href=&#34;mailto:blogrss@bpugh.dev&#34;&gt;Reply by email&lt;/a&gt;&lt;/p&gt;
        &lt;img src=&quot;https://blog.bpugh.workers.dev/cdn/images?p=/til/documentation/sequence-diagrams/feed&quot;&gt;
      </description>
    </item>
    
  </channel>
</rss>