<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>C++ on Ryan Orban</title><link>https://ryanorban.com/categories/c++/</link><description>Recent content in C++ on Ryan Orban</description><generator>Hugo</generator><language>en-us</language><managingEditor>me@ryanorban.com (Ryan Orban)</managingEditor><webMaster>me@ryanorban.com (Ryan Orban)</webMaster><copyright>Ryan Orban</copyright><lastBuildDate>Thu, 06 Dec 2012 00:00:00 +0000</lastBuildDate><atom:link href="https://ryanorban.com/categories/c++/index.xml" rel="self" type="application/rss+xml"/><item><title>SNAP: Stanford Network Analysis Project Manual</title><link>https://ryanorban.com/notes/snap-graph-analysis-manual/</link><pubDate>Thu, 06 Dec 2012 00:00:00 +0000</pubDate><author>me@ryanorban.com (Ryan Orban)</author><guid>https://ryanorban.com/notes/snap-graph-analysis-manual/</guid><description>&lt;p&gt;&lt;img
 src="https://ryanorban.com/images/notes/snap-graph-analysis-manual.png"
 alt="SNAP: Stanford Network Analysis Project Manual" class="note-hero-img"
 loading="lazy"
/&gt;
&lt;/p&gt;
&lt;h3 id="summary" class="scroll-mt-8 group"&gt;
 Summary
 
 &lt;a href="#summary"
 class="no-underline hidden opacity-50 hover:opacity-100 !text-inherit group-hover:inline-block"
 aria-hidden="true" title="Link to this heading" tabindex="-1"&gt;
 &lt;svg
 xmlns="http://www.w3.org/2000/svg"
 width="16"
 height="16"
 fill="none"
 stroke="currentColor"
 stroke-linecap="round"
 stroke-linejoin="round"
 stroke-width="2"
 class="lucide lucide-link w-4 h-4 block"
 viewBox="0 0 24 24"
&gt;
 &lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" /&gt;
 &lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" /&gt;
&lt;/svg&gt;

 &lt;/a&gt;
 
&lt;/h3&gt;
&lt;p&gt;SNAP (Stanford Network Analysis Project) is a general-purpose graph analysis library written in C++ by Jure Leskovec and colleagues at Stanford University. Version 0.15 in 2012 represented the toolkit in its early research release stage — before it became a standard reference for network science and social network analysis research.&lt;/p&gt;</description></item><item><title>Writing Lock-Free Code: A Corrected Queue</title><link>https://ryanorban.com/notes/writing-lock-free-code/</link><pubDate>Sun, 19 Aug 2012 00:00:00 +0000</pubDate><author>me@ryanorban.com (Ryan Orban)</author><guid>https://ryanorban.com/notes/writing-lock-free-code/</guid><description>&lt;h3 id="summary" class="scroll-mt-8 group"&gt;
 Summary
 
 &lt;a href="#summary"
 class="no-underline hidden opacity-50 hover:opacity-100 !text-inherit group-hover:inline-block"
 aria-hidden="true" title="Link to this heading" tabindex="-1"&gt;
 &lt;svg
 xmlns="http://www.w3.org/2000/svg"
 width="16"
 height="16"
 fill="none"
 stroke="currentColor"
 stroke-linecap="round"
 stroke-linejoin="round"
 stroke-width="2"
 class="lucide lucide-link w-4 h-4 block"
 viewBox="0 0 24 24"
&gt;
 &lt;path d="M10 13a5 5 0 0 0 7.54.54l3-3a5 5 0 0 0-7.07-7.07l-1.72 1.71" /&gt;
 &lt;path d="M14 11a5 5 0 0 0-7.54-.54l-3 3a5 5 0 0 0 7.07 7.07l1.71-1.71" /&gt;
&lt;/svg&gt;

 &lt;/a&gt;
 
&lt;/h3&gt;
&lt;p&gt;A Dr. Dobb&amp;rsquo;s article on implementing correct lock-free data structures, using a concurrent queue as the case study. Lock-free programming is one of the most notoriously difficult areas of concurrent programming — the naive version of almost every lock-free algorithm is wrong, and the bugs are timing-dependent, making them nearly impossible to reproduce with testing.&lt;/p&gt;</description></item></channel></rss>