<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Posts on Hot For Knowledge</title>
    <link>https://hotforknowledge.com/post/</link>
    <description>Recent content in Posts on Hot For Knowledge</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <copyright>Victor Baybekov</copyright>
    <lastBuildDate>Fri, 15 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://hotforknowledge.com/post/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Introducing Picollo: modern HDR histogram and PMU counters for .NET</title>
      <link>https://hotforknowledge.com/2026/05/15/introducing-picollo/</link>
      <pubDate>Fri, 15 May 2026 00:00:00 +0000</pubDate>
      
      <guid>https://hotforknowledge.com/2026/05/15/introducing-picollo/</guid>
      <description>&lt;div style=&#34;overflow:auto; margin:0;&#34;&gt;
&lt;a href=&#34;https://github.com/picollodev/Picollo&#34; target=&#34;_blank&#34;&gt;
&lt;img title=&#34;Picollo logo: A woodpecker with its crest resembling a mountain peak, with its eyes and peck resembling `ollo`. In French, the word pic stands both for a woodpecker and a peak.&#34; src=&#34;https://hotforknowledge.com/2026/05/15/introducing-picollo/Picollo.png&#34; alt=&#34;Picollo&#34; style=&#34;float:left; width:96px; max-width:20%; margin:0 10px 10px 0;&#34;&gt;
&lt;/a&gt;
&lt;p&gt;Picollo is a new library for serious performance work in .NET. Picollo stands for &lt;em&gt;Performance Instrumentation and Continuous Observation for Low-Level Optimization&lt;/em&gt;. It allows you to measure code performance with cycle-level precision, moving the time resolution to the picosecond level.&lt;/p&gt; &lt;/div&gt;
&lt;p&gt;The initial public release of &lt;a href=&#34;https://github.com/picollodev/Picollo&#34; target=&#34;_blank&#34;&gt;Picollo&lt;/a&gt; &lt;a href=&#34;https://www.nuget.org/packages/Picollo/0.1.0&#34; target=&#34;_blank&#34;&gt;v0.1.0&lt;/a&gt; contains two components. First, a modern version of an HDR histogram, which is much faster for recording data and easier to use. It has a thread-local implementation that allows scaling metrics collection across many threads with minimal impact on performance of the existing code. Second, a set of APIs for &lt;a href=&#34;https://man7.org/linux/man-pages/man2/perf_event_open.2.html&#34; target=&#34;_blank&#34;&gt;`perf_event_open`&lt;/a&gt;, including fast-path reads, that give raw access to PMU counters from .NET on Linux, WSL included.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>1BRC in .NET among fastest on Linux: My Optimization Journey</title>
      <link>https://hotforknowledge.com/2024/01/13/1brc-in-dotnet-among-fastest-on-linux-my-optimization-journey/</link>
      <pubDate>Sat, 13 Jan 2024 00:00:00 +0000</pubDate>
      
      <guid>https://hotforknowledge.com/2024/01/13/1brc-in-dotnet-among-fastest-on-linux-my-optimization-journey/</guid>
      <description>&lt;p&gt;At the start of the New Year, GitHub exploded with &lt;a href=&#34;https://github.com/gunnarmorling/1brc&#34; target=&#34;_blank&#34; &gt;&lt;strong&gt;The One Billion Row Challenge&lt;/strong&gt;&lt;/a&gt;
started by &lt;a href=&#34;https://www.morling.dev/blog/one-billion-row-challenge/&#34; target=&#34;_blank&#34; &gt;Gunnar Morling&lt;/a&gt;. Originally it was a Java-only 
competition, but &lt;a href=&#34;https://github.com/gunnarmorling/1brc/discussions/categories/show-and-tell&#34; target=&#34;_blank&#34; &gt;others wanted to have fun as well&lt;/a&gt;.
Please read these links first if you do not know about this challenge and its rules.&lt;/p&gt;
&lt;p&gt;I also fell down this rabbit hole. &lt;a href=&#34;https://github.com/buybackoff/1brc&#34; target=&#34;_blank&#34; &gt;I wrote one of the fastest managed 1BRC implementation&lt;/a&gt; 
that performs well not only on the specific dataset that everyone was optimizing for but also on more generic data.
Furthermore, at the initial time of writing (the post date) my results were close to the C++ implementation for the default data and were faster in the case of more complex data.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Rust as the new C: building and combining native libs into C API</title>
      <link>https://hotforknowledge.com/2019/07/14/6-rust-the-new-c/</link>
      <pubDate>Sun, 14 Jul 2019 16:12:00 +0300</pubDate>
      
      <guid>https://hotforknowledge.com/2019/07/14/6-rust-the-new-c/</guid>
      <description>&lt;p&gt;In this blog series, I will experiment with Rust as a safer and simpler C/C++ replacement. The idea is to combine a couple
of C dependencies in Rust, to do some work using the dependencies in Rust and to expose a final API
from a Rust library via C ABI. Then I will consume the same exported Rust methods from a number of
modern languages/platforms such as C#, Python, Java, Nodejs, R, Go and even back from C/C++.&lt;/p&gt;</description>
    </item>
    
    <item>
      <title>Data Spreads: Write your Excel Macros In C#</title>
      <link>https://hotforknowledge.com/2016/10/31/5-data_spreads_excel_macros_in_csharp/</link>
      <pubDate>Mon, 31 Oct 2016 19:25:11 +0300</pubDate>
      
      <guid>https://hotforknowledge.com/2016/10/31/5-data_spreads_excel_macros_in_csharp/</guid>
      <description>A week ago, a friend of mine asked me if I could help him with parsing his old Excel files containing orders of Christmas trees. It was his seasonal business every end of a year for a long time, and old orders back to 2006 were kept in quite a free form so that I myself as a human had difficulties to grasp the structure of the worksheets. However, the goal was to export the data into a CRM system, to identify clients who made regular orders and to call them and try selling trees this year as well.</description>
    </item>
    
    <item>
      <title>Functional programming is a tool for thought, imperative programming is a tool for hacking</title>
      <link>https://hotforknowledge.com/2016/10/19/4-functional-for-thought-imperative-for-hacking/</link>
      <pubDate>Wed, 19 Oct 2016 10:50:09 +0300</pubDate>
      
      <guid>https://hotforknowledge.com/2016/10/19/4-functional-for-thought-imperative-for-hacking/</guid>
      <description>TL;DR; F# is great for algorithms and analytics. It could work for libraries, interop and high-performance code as well, but the experience is far from great and I do not want to fight with it anymore. At least I tried&amp;hellip;
I have been functional programming aficionado for a while. At some point, I took its advantages over mutable imperative code almost religiously. I fell in love with F#. Then I fell in love with mechanical sympathy, and F# - by being a multi-paradigm and .</description>
    </item>
    
    <item>
      <title>Migrating to Hugo Engine</title>
      <link>https://hotforknowledge.com/2016/10/15/3-hugo-website-engine/</link>
      <pubDate>Sat, 15 Oct 2016 15:00:12 +0300</pubDate>
      
      <guid>https://hotforknowledge.com/2016/10/15/3-hugo-website-engine/</guid>
      <description>I have migrated my WordPress blog to Hugo. Since I am not a web publishing expert, I have nothing to say other than the experience was very nice and flexibility is awesome. Markdown + VS Code + git rule them all!
I didn&amp;rsquo;t have enough patience to setup Jekyll with all its dependencies hell a while ago. WordPress was easy to install from WebMatrix and to run on IIS in AWS cloud, but I was afraid to touch anything because the entire setup looked fragile.</description>
    </item>
    
    <item>
      <title>How to write the simplest trading strategy using Spreads</title>
      <link>https://hotforknowledge.com/2015/12/29/2-how-to-write-the-simplest-trading-strategy-using-spreads/</link>
      <pubDate>Tue, 29 Dec 2015 17:51:27 +0300</pubDate>
      
      <guid>https://hotforknowledge.com/2015/12/29/2-how-to-write-the-simplest-trading-strategy-using-spreads/</guid>
      <description>I am always amused when retail traders are offered and then do use black boxes with complex frameworks to build automatic trading strategies. Usually, that goes with an explanation how cool those platforms are and how easy to build a strategy using them. They forget about vendor lock-in and the most terrible model of shared state with events hell like &amp;ldquo;OnData&amp;rdquo;, &amp;ldquo;OnOrder&amp;rdquo;, &amp;ldquo;OnBarOpen&amp;rdquo;, &amp;ldquo;OnBarClose&amp;rdquo;, etc. The more I talk with people, the more I realize that CEP is the approach that desks and serious traders use.</description>
    </item>
    
    <item>
      <title>Introducing Spreads library</title>
      <link>https://hotforknowledge.com/2015/12/20/1-introducing-spreads-library/</link>
      <pubDate>Sun, 20 Dec 2015 17:46:36 +0300</pubDate>
      
      <guid>https://hotforknowledge.com/2015/12/20/1-introducing-spreads-library/</guid>
      <description>TL;DR; This post is about background and thoughts on my number-crunching library Spreads, which stands for Series and Panels for Real-time and Exploratory Analysis of Data Streams. The library and its readme are on GitHub: https://github.com/Spreads/Spreads.
While I worked at Goldman Sachs as a research analyst, I got used to internal declarative time series processing language. It was so cool that I could build MSCI index rebalancing methodology with several lines of code.</description>
    </item>
    
    <item>
      <title>My “hacker” background</title>
      <link>https://hotforknowledge.com/2015/08/23/0-hacker-background/</link>
      <pubDate>Sun, 23 Aug 2015 17:41:56 +0300</pubDate>
      
      <guid>https://hotforknowledge.com/2015/08/23/0-hacker-background/</guid>
      <description>On my LinkedIn page, there are almost no endorsements for programming/tech, even though I program since age 12 or so. Probably this is an indication that the endorsement system is broken there or I am not very active there recently. Or this is a reflection of a mild problem I have - very few people from my former professional, mostly investment banking, network know that I can code well beyond VBA scripts.</description>
    </item>
    
  </channel>
</rss>
