<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">

 <title>KholdCode</title>
 <link href="https://kholdstare.github.io/atom.xml" rel="self"/>
 <link href="https://kholdstare.github.io/"/>
 <updated>2020-05-31T06:59:22+00:00</updated>
 <id>https://kholdstare.github.io/</id>
 <author>
     <name>Alexander Kondratskiy</name>
     <email>kholdstare0.0@gmail.com</email>
 </author>

 
 
 <entry>
   <title>Faster Integer Parsing</title>
   <link href="https://kholdstare.github.io/technical/2020/05/26/faster-integer-parsing.html"/>
   <updated>2020-05-26T00:00:00+00:00</updated>
   <id>https://kholdstare.github.io/technical/2020/05/26/faster-integer-parsing</id>
   <summary type="html">Back with a post after 6 years of silence. If you had to parse a microsecond-resolution epoch timestamp as quickly as possible, how would you do it?  We'll take a look at using compiler intrinsics to do it in log(n) time.
</summary>
 </entry>
 
 
 
 <entry>
   <title>Slides for VR Talks</title>
   <link href="https://kholdstare.github.io/technical/2014/06/16/vr-presentations.html"/>
   <updated>2014-06-16T00:00:00+00:00</updated>
   <id>https://kholdstare.github.io/technical/2014/06/16/vr-presentations</id>
   <summary type="html">During the past two [Toronto VR Meetups](https://www.meetup.com/TorontoVR/) I have presented talks about Virtual Reality. The slides are now available online [here](/presentations/vr-scale) and [here](/presentations/vr-jam-post-mortem).
</summary>
 </entry>
 
 
 
 <entry>
   <title>Moves demystified</title>
   <link href="https://kholdstare.github.io/technical/2013/11/23/moves-demystified.html"/>
   <updated>2013-11-23T00:00:00+00:00</updated>
   <id>https://kholdstare.github.io/technical/2013/11/23/moves-demystified</id>
   <summary type="html">In this article, I will try to explain move semantics in C++11 using a more pragmatic approach, by answering specific questions developers may ask. We'll start with why moves are needed in the first place, then see how to use them, and eventually move onto common misconceptions and pitfalls.
</summary>
 </entry>
 
 
 
 <entry>
   <title>A Sense of Scale in VR</title>
   <link href="https://kholdstare.github.io/technical/2013/10/06/sense-of-scale-vr.html"/>
   <updated>2013-10-06T00:00:00+00:00</updated>
   <id>https://kholdstare.github.io/technical/2013/10/06/sense-of-scale-vr</id>
   <summary type="html">The future is here! I recently got my hands on a pair of the awesome Oculus Rift  VR goggles, and I am extremely excited. While the demo software is impressive out  of the box, a lot of factors must come together to create a compelling experience.  In this post I will discuss the mechanisms behind the sense of scale in VR, highlight  its importance and propose new ways to explore this effect.
</summary>
 </entry>
 
 
 
 <entry>
   <title>Perfect Forwarding to Async Lambdas (Part 2)</title>
   <link href="https://kholdstare.github.io/technical/2012/12/19/perfect-forwarding-to-async-2.html"/>
   <updated>2012-12-19T00:00:00+00:00</updated>
   <id>https://kholdstare.github.io/technical/2012/12/19/perfect-forwarding-to-async-2</id>
   <summary type="html">In Part 1, the &quot;value of rvalues&quot; was discussed, as well as their use in the context of &lt;code&gt;std::async&lt;/code&gt;. A problem was observed with how lvalues are handled, so in this part I will introduce perfect forwarding to deal with rvalues and lvalues generically and try to provide an optimal approach in that context.
</summary>
 </entry>
 
 
 
 <entry>
   <title>Perfect Forwarding to Async Lambdas (Part 1)</title>
   <link href="https://kholdstare.github.io/technical/2012/12/18/perfect-forwarding-to-async-1.html"/>
   <updated>2012-12-18T00:00:00+00:00</updated>
   <id>https://kholdstare.github.io/technical/2012/12/18/perfect-forwarding-to-async-1</id>
   <summary type="html">Perfect forwarding allows template functions to forward the arguments &quot;as is&quot; to any other function they call. This helps minimize the number of unnecessary copies and conversions when delegating information to other functions. In a quest to get rid of copying completely in a &lt;a href=&quot;https://github.com/KholdStare/plumbingplusplus&quot;&gt;library&lt;/a&gt; I was writing, I came across the problem of perfect forwarding to functions launched on a separate thread.
</summary>
 </entry>
 
 
 
 <entry>
   <title>Functionality != Semantics</title>
   <link href="https://kholdstare.github.io/technical/2012/10/08/functionality-not-equal-semantics.html"/>
   <updated>2012-10-08T00:00:00+00:00</updated>
   <id>https://kholdstare.github.io/technical/2012/10/08/functionality-not-equal-semantics</id>
   <summary type="html">Very rarely, a case comes up where a new function is required even if it is functionally identical to another one. In these cases another meaning is attached to these functions beyond their interface, and machine instructions; reusing it will actually be counterproductive. We examine such a case I encountered at my workplace.
</summary>
 </entry>
 
 
 
 <entry>
   <title>Objects and Threads in C++ and Qt (Part 2)</title>
   <link href="https://kholdstare.github.io/technical/2012/08/31/objects-and-threads-in-cpp-2.html"/>
   <updated>2012-08-31T00:00:00+00:00</updated>
   <id>https://kholdstare.github.io/technical/2012/08/31/objects-and-threads-in-cpp-2</id>
   <summary type="html">Last time I explained how plain C++ objects and their methods interact with threads. This time around, we will look at &lt;code&gt;QObjects&lt;/code&gt;, and their &quot;thread affinity&quot;.
</summary>
 </entry>
 
 
 
 <entry>
   <title>Objects and Threads in C++ and Qt (Part 1)</title>
   <link href="https://kholdstare.github.io/technical/2012/08/21/objects-and-threads-in-cpp-1.html"/>
   <updated>2012-08-21T00:00:00+00:00</updated>
   <id>https://kholdstare.github.io/technical/2012/08/21/objects-and-threads-in-cpp-1</id>
   <summary type="html">When I first started working on a team using Qt (in a C++ environment), I would hear co-workers talk about &quot;objects being on threads&quot;, and then immediately talk about how several threads are accessing the same object. These two seemingly opposite ideas confused me at first. Let's untagle the mystery!
</summary>
 </entry>
 
 

</feed>
