<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Math on Hillel Wayne</title>
    <link>https://www.hillelwayne.com/tags/math/</link>
    <description>Recent content in Math on Hillel Wayne</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en-us</language>
    <lastBuildDate>Mon, 22 Jan 2024 00:00:00 +0000</lastBuildDate>
    
	<atom:link href="https://www.hillelwayne.com/tags/math/index.xml" rel="self" type="application/rss+xml" />
    
    
    <item>
      <title>An RNG that runs in your brain</title>
      <link>https://www.hillelwayne.com/post/randomness/</link>
      <pubDate>Mon, 22 Jan 2024 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/post/randomness/</guid>
      <description>Humans are notoriously bad at coming up with random numbers. I wanted to be able to quickly generate &amp;ldquo;random enough&amp;rdquo; numbers. I&amp;rsquo;m not looking for anything that great, I just want to be able to come up with the random digits in half a minute. Some looking around brought me to an old usenet post by George Marsaglia:
 Choose a 2-digit number, say 23, your &amp;ldquo;seed&amp;rdquo;.
Form a new 2-digit number: the 10&amp;rsquo;s digit plus 6 times the units digit.</description>
    </item>
    
    <item>
      <title>Two workers are quadratically better than one</title>
      <link>https://www.hillelwayne.com/post/queueing-prism/</link>
      <pubDate>Mon, 02 Nov 2020 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/post/queueing-prism/</guid>
      <description>For latency, anyway.
A common architecture pattern is the &amp;ldquo;task queue&amp;rdquo;: tasks enter an ordered queue, workers pop tasks and process them. This pattern is used everywhere from distributed systems to thread pools. It applies just as well to human systems, like waiting in line at a supermarket or a bank. Task queues are popular because they are simple, easy to understand, and scale well.
There are two primary performance metrics for a task queue.</description>
    </item>
    
    <item>
      <title>J Notation as a Tool of Thought</title>
      <link>https://www.hillelwayne.com/post/j-notation/</link>
      <pubDate>Fri, 14 Aug 2020 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/post/j-notation/</guid>
      <description>Kenneth Iverson&amp;rsquo;s 1964 language, APL, won him the Turing Award. His award lecture, Notation as a Tool of Thought, argued that better notations would lead people to deeper insights about mathematics. He provided a number of examples ranging across linear algebra, arithmetic, probability, and logic.
Unfortunately, most of the mathematics he covers isn&amp;rsquo;t relevant to programming. However, his core idea still applies, and changing how we describe programs changes how we think about them.</description>
    </item>
    
    <item>
      <title>Hypermodeling Hyperproperties</title>
      <link>https://www.hillelwayne.com/post/hyperproperties/</link>
      <pubDate>Mon, 13 Jan 2020 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/post/hyperproperties/</guid>
      <description>When we design programs, we usually look for two kinds of properties: that &amp;ldquo;bad things&amp;rdquo; never happen and that &amp;ldquo;good things&amp;rdquo; are guaranteed to happen. These are called safety and liveness properties, respectively. These are properties that we want to hold true for every possible program behavior. &amp;ldquo;We always complete every request&amp;rdquo; is a liveness property. If our system has it, every program trace will complete every request. If it doesn&amp;rsquo;t hold, I can give you a example behavior where the server never responds.</description>
    </item>
    
    <item>
      <title>1/0 = 0</title>
      <link>https://www.hillelwayne.com/post/divide-by-zero/</link>
      <pubDate>Fri, 10 Aug 2018 00:00:00 +0000</pubDate>
      
      <guid>https://www.hillelwayne.com/post/divide-by-zero/</guid>
      <description>Have a tweet:
 img {border-style: groove;} I have no idea if Pony is making the right choice here, I don&amp;rsquo;t know Pony, and I don&amp;rsquo;t have any interest in learning Pony.1 But this tweet raised my hackles for two reasons:
 It&amp;rsquo;s pretty smug. I have very strong opinions about programming, but one rule I try to follow is do not mock other programmers.2 Programming is too big and I&amp;rsquo;m too small to understand everything.</description>
    </item>
    
  </channel>
</rss>