<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
	>

<channel>
	<title>Mark Gilbert&#039;s Blog</title>
	<atom:link href="https://markegilbert.wordpress.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://markegilbert.wordpress.com</link>
	<description>Science and technology, served light and fluffy.</description>
	<lastBuildDate>Sun, 06 Apr 2025 19:27:13 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>http://wordpress.com/</generator>
<site xmlns="com-wordpress:feed-additions:1">1585811</site><cloud domain='markegilbert.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
		<url>https://s0.wp.com/i/buttonw-com.png</url>
		<title>Mark Gilbert&#039;s Blog</title>
		<link>https://markegilbert.wordpress.com</link>
	</image>
	<atom:link rel="search" type="application/opensearchdescription+xml" href="https://markegilbert.wordpress.com/osd.xml" title="Mark Gilbert&#039;s Blog" />
	<atom:link rel='hub' href='https://markegilbert.wordpress.com/?pushpress=hub'/>
	<item>
		<title>Letters, Words, and Math</title>
		<link>https://markegilbert.wordpress.com/2025/04/06/letters-words-and-math/</link>
		
		<dc:creator><![CDATA[markegilbert]]></dc:creator>
		<pubDate>Sun, 06 Apr 2025 19:27:13 +0000</pubDate>
				<category><![CDATA[Uncategorized]]></category>
		<category><![CDATA[games]]></category>
		<guid isPermaLink="false">http://markegilbert.wordpress.com/?p=3877</guid>

					<description><![CDATA[My wife and I have played Words with Friends for nearly 10 years now, and frequently on Saturday mornings over breakfast when our schedules allow for it. Yesterday, I got a rack of letters that I don&#8217;t think I&#8217;ve ever had before, and that got me thinking about how many possible racks are there in [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>My wife and I have played Words with Friends for nearly 10 years now, and frequently on Saturday mornings over breakfast when our schedules allow for it. Yesterday, I got a rack of letters that I don&#8217;t think I&#8217;ve ever had before, and that got me thinking about how many possible racks are there in the game. That led my wife and I down a rabbit hole.</p>



<p>When you start a game, there are 7 letter-tiles on your rack, 7 on your opponent&#8217;s rack, and 90 tiles in the bag, for a total of 104 tiles. To find the possible combinations of what your opening rack could be, we have to go back to our middle school math classes, and use factorials:</p>



<p>Number of possible opening rack combinations = 104! / (104-7)!<br>= 104! / 97!<br>= 104 * 103 * 102 * 101 * 100 * 99 * 98<br>= 1.07 x 10^14</p>



<p>Or roughly 10 quadrillion possible combinations.</p>



<p>My wife next asked what the average value (in points) for the opening rack. We had a brief detour, talking about running simulations of possible combinations of letters to find the average point value.</p>



<p>But wait! High point-value letters on the rack don&#8217;t necesarily translate to a high-point word. We quickly agreed that the letter on your rack represent the POTENTIAL points earned, but you earn those points only when you play a word with them, and those points become ACTUAL. To get the highest number of points on the rack, you&#8217;d have to load it up with consonants since the vowels are only worth 1-2 points each. Anyone can get a rack filled with Z&#8217;s, Q&#8217;s, X&#8217;s and other high-point letters, but there are precious few words you can make with only consonents in the game (e.g., &#8220;sh&#8221;, &#8220;hm&#8221;, &#8220;pfft&#8221;).</p>



<p>Then there is the matter of being able to see the possible words your rack can make. I can&#8217;t tell you how many times I&#8217;ve played a word, then used the &#8220;hindsight&#8221; feature to see what was the best word using that rack, and then groan when it&#8217;s a word I knew.</p>



<p>Mind you, this is all just on the first word played, when the board is completely empty and the only tiles you have available to work with are the ones on your rack. Once the first word is played, you now have another level of complexity of joining your word to the tiles on the board, and that increases the possibilities by at least an order of magnitude.</p>



<p>It was a fun mental game, played out over breakfast. Yes, we are both math nerds.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">3877</post-id>
		<media:content url="https://0.gravatar.com/avatar/cdd1ff8582f800aae5726bcda65725898c8e0e115c35194378bf7bef0941ebcb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">markegilbert</media:title>
		</media:content>
	</item>
		<item>
		<title>Bunny Living Space</title>
		<link>https://markegilbert.wordpress.com/2022/10/23/bunny-living-space/</link>
		
		<dc:creator><![CDATA[markegilbert]]></dc:creator>
		<pubDate>Sun, 23 Oct 2022 18:50:28 +0000</pubDate>
				<category><![CDATA[Math]]></category>
		<guid isPermaLink="false">http://markegilbert.wordpress.com/?p=2590</guid>

					<description><![CDATA[For more than a year now, two indoor bunnies – Nutmeg (left) and Tila (right) – have been part of our family.&#160; Our bunnies are very inquisitive and get along with each other only MOST of the time.&#160; As a result, they spend most of their time in separate, adjacent pens that take up most [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>For more than a year now, two indoor bunnies – Nutmeg (left) and Tila (right) – have been part of our family.&#160; </p>
<p><a href="https://markegilbert.wordpress.com/wp-content/uploads/2022/10/bunnies.jpg"><img title="Bunnies" style="display:inline;background-image:none;" border="0" alt="Bunnies" src="https://markegilbert.wordpress.com/wp-content/uploads/2022/10/bunnies_thumb.jpg" width="644" height="279" /></a></p>
<p>Our bunnies are very inquisitive and get along with each other only MOST of the time.&#160; As a result, they spend most of their time in separate, adjacent pens that take up most of our living room, each with her own custom-built 3-story &quot;condo&quot; (the white, wire-mesh, structure at the back):</p>
<p><a href="https://markegilbert.wordpress.com/wp-content/uploads/2022/10/pens.jpg"><img title="Pens" style="display:inline;background-image:none;" border="0" alt="Pens" src="https://markegilbert.wordpress.com/wp-content/uploads/2022/10/pens_thumb.jpg" width="644" height="484" /></a></p>
<p>I wondered how large a space does this &quot;feel&quot; like to them, compared to the humans in the house?&#160; To put it another way, if you were to shrink a human down to the size of the bunnies, how large of a house would this feel like?</p>
<p></p>
<h2>Measuring the Pens</h2>
<p>First, I needed to figure out how many square feet of space the pens actually take up.&#160; The walls of the pens are flexible, so I choose one of the simplest configurations to compute:</p>
<p><a href="https://markegilbert.wordpress.com/wp-content/uploads/2022/10/pen-diagram.png"><img title="Pen Diagram" style="display:inline;background-image:none;" border="0" alt="Pen Diagram" src="https://markegilbert.wordpress.com/wp-content/uploads/2022/10/pen-diagram_thumb.png" width="644" height="359" /></a></p>
<p>The condos take up 14&#215;42&quot; of space per level.&#160; 6 levels result in 3,528in<sup>2</sup> of space.</p>
<p>Each condo has a front porch, which allows the bunnies to climb up or go under, doubling the floorspace provided.&#160; Each porch has an additional 196in<sup>2</sup> of space.</p>
<p>I&#8217;ve broken the pen itself into three blocks – A, B, and C.</p>
<p>A: 140 x 33 = 4620in<sup>2</sup>    <br /> B: 76 x 32 = 2432in<sup>2</sup>    <br /> C: 0.5 x 32 x 32 = 512in<sup>2</sup></p>
<p>So, the total space is</p>
<table cellspacing="0" cellpadding="2" border="1">
<tbody>
<tr>
<td valign="top"><strong>Floor Space</strong></td>
<p>       <strong></strong>        </p>
<td valign="top"><strong>Area</strong></td>
</tr>
<tr>
<td valign="top">3528</td>
<td valign="top">Condos</td>
</tr>
<tr>
<td valign="top">196</td>
<td valign="top">Condo Porch 1</td>
</tr>
<tr>
<td valign="top">196</td>
<td valign="top">Condo Porch 2</td>
</tr>
<tr>
<td valign="top">4620</td>
<td valign="top">Pen Area A</td>
</tr>
<tr>
<td valign="top">2432</td>
<td valign="top">Pen Area B</td>
</tr>
<tr>
<td valign="top">512</td>
<td valign="top">Pen Area C</td>
</tr>
<tr>
<td valign="top"><strong>11484</strong></td>
<td valign="top"><strong>Total</strong></td>
</tr>
</tbody>
</table>
<p>11,484in<sup>2</sup> works out to 79.8ft<sup>2</sup>.</p>
<p></p>
<h2>Bunny:Human Ratio</h2>
<p>Next I needed a bunny-to-human ratio.&#160; I came up with a few possible approaches here.</p>
<p>The first was simply measuring the bunnies&#8217; feet compared to my own.&#160; With my shoe on, my foot is exactly 12 inches long.&#160; The bunnies REALLY don&#8217;t like me touching their feet, let alone measuring them, so I decided to estimate them at 1in long, which gives a nice ratio of 12:1.&#160; Converting &quot;human feet&quot; to &quot;bunny feet&quot;, then:</p>
<blockquote>
<p>12<sup>2</sup> / 1<sup>2</sup> = x / 79.8</p>
<p>x = 79.8ft<sup>2</sup> * 144</p>
<p>x = 11,491ft<sup>2</sup></p>
</blockquote>
<p>So, if we shrank a human to be 5.9&quot; tall (1/12 my current height), would the pens feel like an 11,491ft<sup>2</sup> home?&#160; Possibly, but to me that seems too large.</p>
<p> A second is to compare our relative heights.&#160; I&#8217;ll use Tila&#8217;s dimensions here since she was the more accessible one when I took this photo:</p>
<p><a href="https://markegilbert.wordpress.com/wp-content/uploads/2022/10/tilaloafed.jpg"><img title="TilaLoafed" style="display:inline;background-image:none;" border="0" alt="TilaLoafed" src="https://markegilbert.wordpress.com/wp-content/uploads/2022/10/tilaloafed_thumb.jpg" width="644" height="484" /></a></p>
<p>This is probably their most common snoozing positions – the &quot;loaf&quot;.&#160; When loafed, Tila is 6&quot; tall at her highest point.</p>
<p>I stand 71&quot; tall, which means there is a ratio of 11.8:1 between us.&#160; Using the second formula above, we get:</p>
<p>&#160;&#160;&#160; x = 79.8ft<sup>2</sup> * (11.8)<sup>2</sup>    <br />&#160;&#160;&#160; x = 11,111ft<sup>2</sup></p>
<p>A pleasantly repeating solution, but subjectively it still seems too large.</p>
<p> A third possible approach is to compare the bunny&#8217;s <u>length</u> to my height.&#160; I walk upright, but bunnies spend virtually all of their time with &quot;four on the floor&quot;.&#160; When loafed, Tila is 10&quot; long.&#160; Compared to my 71&quot; of height, that&#8217;s a ratio of 7.1:1.&#160; Using the formula above:</p>
<p>&#160;&#160;&#160; x = 79.8ft<sup>2</sup> * (7.1)<sup>2</sup>    <br />&#160;&#160;&#160; x = 4,023ft<sup>2</sup></p>
<p>So, at the bunny&#8217;s scale, their pens are the equivalent to a 4,000ft<sup>2</sup> home with each bunny getting roughly half of that.&#160; Would each pen feel like a 2,000ft<sup>2</sup> home to a 10&quot; tall person?&#160; I think that&#8217;s closer to what I was expecting.    </p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2590</post-id>
		<media:content url="https://0.gravatar.com/avatar/cdd1ff8582f800aae5726bcda65725898c8e0e115c35194378bf7bef0941ebcb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">markegilbert</media:title>
		</media:content>

		<media:content url="https://markegilbert.wordpress.com/wp-content/uploads/2022/10/bunnies_thumb.jpg" medium="image">
			<media:title type="html">Bunnies</media:title>
		</media:content>

		<media:content url="https://markegilbert.wordpress.com/wp-content/uploads/2022/10/pens_thumb.jpg" medium="image">
			<media:title type="html">Pens</media:title>
		</media:content>

		<media:content url="https://markegilbert.wordpress.com/wp-content/uploads/2022/10/pen-diagram_thumb.png" medium="image">
			<media:title type="html">Pen Diagram</media:title>
		</media:content>

		<media:content url="https://markegilbert.wordpress.com/wp-content/uploads/2022/10/tilaloafed_thumb.jpg" medium="image">
			<media:title type="html">TilaLoafed</media:title>
		</media:content>
	</item>
		<item>
		<title>Squares Squared</title>
		<link>https://markegilbert.wordpress.com/2022/10/03/squares-squared/</link>
		
		<dc:creator><![CDATA[markegilbert]]></dc:creator>
		<pubDate>Mon, 03 Oct 2022 23:52:35 +0000</pubDate>
				<category><![CDATA[Math]]></category>
		<guid isPermaLink="false">http://markegilbert.wordpress.com/?p=2436</guid>

					<description><![CDATA[Let’s say we’re going to calculate the product, P, of two integers, X and Y, each of which are squares.&#160; Their product will also be a square: P = X • Y But since X and Y are squares, they can each be broken down into their roots, Xr and Yr, and the problem rewritten [&#8230;]]]></description>
										<content:encoded><![CDATA[<p><font size="3">Let’s say we’re going to calculate the product, P, of two integers, X and Y, each of which are squares.&#160; Their product will also be a square:</font></p>
<blockquote>
<p><font size="3">P = X • Y</font></p>
</blockquote>
<p><font size="3">But since X and Y are squares, they can each be broken down into their roots, X<sub>r</sub> and Yr, and the problem rewritten as follows:</font></p>
<blockquote>
<p><font size="3">P = X<sub>r</sub> • X<sub>r</sub> • Y<sub>r</sub> • Y<sub>r</sub></font></p>
</blockquote>
<p><sub></sub><font size="3">Next, we can rearrange the terms like so:</font></p>
<blockquote>
<p><font size="3">P = X<sub>r</sub> • Y<sub>r</sub> • X<sub>r</sub> • Y<sub>r</sub></font></p>
<p><sub></sub><font size="3">P = (X<sub>r</sub> • Y<sub>r</sub>) • (X<sub>r</sub> • Y<sub>r</sub>)</font></p>
<p><font size="3">P = (X<sub>r</sub> • Y<sub>r</sub>)<sup>2</sup></font></p>
</blockquote>
<p><sup></sup><font size="3">Therefore, P will be a square.</font></p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2436</post-id>
		<media:content url="https://0.gravatar.com/avatar/cdd1ff8582f800aae5726bcda65725898c8e0e115c35194378bf7bef0941ebcb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">markegilbert</media:title>
		</media:content>
	</item>
		<item>
		<title>More Positive</title>
		<link>https://markegilbert.wordpress.com/2022/05/27/more-positive/</link>
		
		<dc:creator><![CDATA[markegilbert]]></dc:creator>
		<pubDate>Fri, 27 May 2022 15:45:28 +0000</pubDate>
				<category><![CDATA[Math]]></category>
		<guid isPermaLink="false">http://markegilbert.wordpress.com/?p=2099</guid>

					<description><![CDATA[Here’s a numerical curiosity I came across.  I checked out a book from the library, and while the librarian correctly recorded the due date as “6/10/22”, the latter &#8220;2&#8221; looked like a 0 from a distance, so I read it as &#8220;6/10/20&#8221;.  I wondered if there was a clever way to relate the three numbers [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Here’s a numerical curiosity I came across.  I checked out a book from the library, and while the librarian correctly recorded the due date as “6/10/22”, the latter &#8220;2&#8221; looked like a 0 from a distance, so I read it as &#8220;6/10/20&#8221;.  I wondered if there was a clever way to relate the three numbers together.</p>
<p>There are probably many ways, but what I came up with was “If you add 6 and 10, and then add the difference between those two, you&#8217;ll get 20”.  Then I started playing with other pairs of numbers – 3 and 5, 1 and 4, and so on.  All of the results came out even.  Was that a general rule?  Given 2 integers a and b, will this always produce an even result?</p>
<p>Let a and b be positive integers, and r the result of our arithmetic machinations.  Our formula becomes:</p>
<blockquote><p>r = a + b + |a – b|</p></blockquote>
<p>Now, let’s consider the possibilities:</p>
<ul>
<li>If a is larger, then the absolute value portion reduces to simply &#8220;a &#8211; b&#8221;, the b&#8217;s cancel, and what’s left is 2a</li>
<li>If b is larger, then the absolute value portion reduces to simply &#8220;b &#8211; a&#8221;, the a&#8217;s cancel, and what’s left is 2b</li>
<li>If a and b are the same, then the absolute value portion is 0, leaving 2a (or alternatively, 2b)</li>
</ul>
<p>Interestingly, not only will this always produce a positive result, it will always be twice the larger integer.</p>
<p>That works if we start with positive integers.  What happens if we introduce other combinations?</p>
<ul>
<li>Two negative integers: the result ends up being twice the smaller of the two negatives.  For example –6 and –10 produce a result of –12.  You can also define “the result will be twice the more positive value”.</li>
<li>One positive and one negative: The result is still twice the more positive.</li>
<li>One positive and 0?  Still twice the more positive number.</li>
</ul>
<p>What about one negative and 0?  That interestingly follows the same rule – the result will continue to be the more positive of the two, which is 0 in this case.  If we let a be the negative number and b be 0, the formula reduces to</p>
<blockquote><p>r = a + |a|</p></blockquote>
<p>With a being negative, this will always cancel out, leaving 0.</p>
<p>Is there a name for any of this?</p>
<p>* Edited to correct the origin story of this proof.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">2099</post-id>
		<media:content url="https://0.gravatar.com/avatar/cdd1ff8582f800aae5726bcda65725898c8e0e115c35194378bf7bef0941ebcb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">markegilbert</media:title>
		</media:content>
	</item>
		<item>
		<title>Nesso Technologies, Epilogue</title>
		<link>https://markegilbert.wordpress.com/2022/01/20/nesso-technologies-epilogue/</link>
		
		<dc:creator><![CDATA[markegilbert]]></dc:creator>
		<pubDate>Fri, 21 Jan 2022 00:40:26 +0000</pubDate>
				<category><![CDATA[Nesso]]></category>
		<guid isPermaLink="false">http://markegilbert.wordpress.com/?p=1987</guid>

					<description><![CDATA[From 2015 through early 2022, I worked on a side project called &#8220;Nesso&#8221;. Its goal was to build a system that could find gaps &#8211; potentially missing datapoints &#8211; in a given dataset. I made the decision in April 2020 to form a company around this idea &#8211; Nesso Technologies. While I made some great [&#8230;]]]></description>
										<content:encoded><![CDATA[
<p>From 2015 through early 2022, I worked on a side project called &#8220;Nesso&#8221;. Its goal was to build a system that could find gaps &#8211; potentially missing datapoints &#8211; in a given dataset. I made the decision in April 2020 to form a company around this idea &#8211; Nesso Technologies.</p>



<p>While I made some great progress in those seven years taking a very vague idea and turning it into real software, I wasn&#8217;t able to generate much outside interest in it, let alone paying customers. So, in January 2022, I decided to close the company and the project down. I think the idea still has merit, but despite the time and energy I had put into it, I had to admit I was not up to the challenge of executing on it.</p>



<p>Following that decision, there was a little sadness, some disappointment, but mostly a sense of relief. There are a lot of other activities and projects that I&#8217;ve put on hold over the years, and now that I am no longer working on Nesso I&#8217;ll have the capacity to pursue them. That sense of relief reinforced that I made the right choice.</p>



<p>To the people who cheered for me, encouraged me, and gave me feedback along the way &#8211; thank you.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1987</post-id>
		<media:content url="https://0.gravatar.com/avatar/cdd1ff8582f800aae5726bcda65725898c8e0e115c35194378bf7bef0941ebcb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">markegilbert</media:title>
		</media:content>
	</item>
		<item>
		<title>The Last Word</title>
		<link>https://markegilbert.wordpress.com/2020/03/05/the-last-word/</link>
		
		<dc:creator><![CDATA[markegilbert]]></dc:creator>
		<pubDate>Thu, 05 Mar 2020 12:08:31 +0000</pubDate>
				<category><![CDATA[General]]></category>
		<guid isPermaLink="false">http://markegilbert.wordpress.com/?p=1357</guid>

					<description><![CDATA[Yesterday, I installed Office 365, and retired some of the oldest pieces of software I ran on my home machine &#8211; Office 2007: That particular suite spanned: 13 years 2 different machines 3 versions of Windows 3 jobs 1.5 kids (my younger daughter hadn&#8217;t even been born when I first installed it) Word and Excel [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Yesterday, I installed Office 365, and retired some of the oldest pieces of software I ran on my home machine &#8211; Office 2007:</p>
<p><a href="https://markegilbert.wordpress.com/wp-content/uploads/2020/03/10-1.png"><img title="10" style="display:inline;background-image:none;" border="0" alt="10" src="https://markegilbert.wordpress.com/wp-content/uploads/2020/03/10_thumb-1.png" width="428" height="225" /></a></p>
<p>That particular suite spanned:</p>
<ul>
<li>13 years</li>
<li>2 different machines</li>
<li>3 versions of Windows</li>
<li>3 jobs</li>
<li>1.5 kids (my younger daughter hadn&#8217;t even been born when I first installed it)</li>
</ul>
<p>Word and Excel were by far the most used components of the suite, but PowerPoint was sprinkled in there as well.&#160; Word ran like a champ all that time.&#160; Excel, though, developed a tic in the last couple of years.&#160; Somewhere along the way, it decided it needed to try to install itself again every time I booted it up.&#160; The first couple of times I tried to let it finish, thinking that something had gotten corrupted and it was trying to run a Repair.&#160; What I found, though, is that it didn&#8217;t matter if I let it finish or not &#8211; it would run through it again the next time I started it.&#160; So, I took to cancelling the installation, which required 3-4 extra clicks (depending on whether I caught it soon enough after it started), and several additional seconds.&#160; I dealt with it, but I&#8217;m not sorry to be finally rid of that extra boot-up sequence.</p>
<p>With Office 2007 gone, I think the title of &quot;oldest piece of software&quot; falls to Visio 2007.&#160; I&#8217;ll get around to that one eventually.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1357</post-id>
		<media:content url="https://0.gravatar.com/avatar/cdd1ff8582f800aae5726bcda65725898c8e0e115c35194378bf7bef0941ebcb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">markegilbert</media:title>
		</media:content>

		<media:content url="https://markegilbert.wordpress.com/wp-content/uploads/2020/03/10_thumb-1.png" medium="image">
			<media:title type="html">10</media:title>
		</media:content>
	</item>
		<item>
		<title>Pumping iron to keep the headache at bay</title>
		<link>https://markegilbert.wordpress.com/2020/03/01/pumping-iron-to-keep-the-headache-at-bay/</link>
		
		<dc:creator><![CDATA[markegilbert]]></dc:creator>
		<pubDate>Mon, 02 Mar 2020 02:19:22 +0000</pubDate>
				<category><![CDATA[Science]]></category>
		<guid isPermaLink="false">http://markegilbert.wordpress.com/?p=1339</guid>

					<description><![CDATA[Back in October 2017 I ran an experiment where I determined that not staying hydrated throughout the day aggravated my headache.&#160; This past month, I tested another couple of variables.&#160; Just as before, for the several days leading up to the beginning of Week 1, I stopped taking all Excedrin, and didn&#8217;t take it at [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>Back in <a href="https://markegilbert.wordpress.com/2017/10/27/my-headaches-are-now-driving-me-to-drink/" target="_blank">October 2017</a> I ran an experiment where I determined that not staying hydrated throughout the day aggravated my headache.&#160; This past month, I tested another couple of variables.&#160; Just as before, for the several days leading up to the beginning of Week 1, I stopped taking all Excedrin, and didn&#8217;t take it at all during the experiment so it wouldn&#8217;t interfere with my results.</p>
<p><strong> Week 1 – Establishing Baseline</strong>    <br /> I tracked my headache for this first week, striving for a pain reading every 15 minutes.&#160; My scale runs from 0-10, where 0 is no headache at all, and 10 is &quot;curled up in a ball, whimpering&quot;.</p>
<p><strong> Week 2 – Windows Nightlight Mode</strong>    <br /> For the second week, I switched Windows Nightlight Mode on, to cut down on the amount of blue light I was seeing on my monitors during the evenings.&#160; I configured it to be enabled on my laptop and my phone from 7:30 until midnight.&#160; Since I am very frequently on my computer until just before I go to bed, I was curious to see if the blue light from my screens was contributing to my headache at all.</p>
<p>As it turns out, I felt no perceivable difference in my headache pain with Nightlight on or off.</p>
<p><a href="https://markegilbert.wordpress.com/wp-content/uploads/2020/03/10.png"><img title="10" style="display:inline;background-image:none;" border="0" alt="10" src="https://markegilbert.wordpress.com/wp-content/uploads/2020/03/10_thumb.png" width="710" height="348" /></a></p>
<p>After Week 2, I turned this mode off.</p>
<p><strong> Week 3 – Iron Supplements</strong>    <br /> A friend of mine mentioned that an iron deficiency can contribute/cause headaches.&#160; I did a bit of research into that angle, and sure enough, there are ample references to the link between these two (for example, see <a href="https://www.mayoclinic.org/diseases-conditions/iron-deficiency-anemia/symptoms-causes/syc-20355034" target="_blank">this article</a> or <a href="https://www.hematology.org/Patients/Anemia/Iron-Deficiency.aspx" target="_blank">this article</a>).&#160; So, for Week 3, I started taking a daily iron supplement.</p>
<p>The results here were much more interesting.&#160; </p>
<p><a href="https://markegilbert.wordpress.com/wp-content/uploads/2020/03/20.png"><img title="20" style="display:inline;background-image:none;" border="0" alt="20" src="https://markegilbert.wordpress.com/wp-content/uploads/2020/03/20_thumb.png" width="682" height="350" /></a></p>
<p>On average, I saw a 0.4 drop in my headache rating when I was on the iron supplement (compared to Week 1&#8217;s baseline).</p>
<p><strong>Week 4 – Blood pressure</strong>    <br /> On more than one occasion, I&#8217;ve noticed that bending over to tie my shoes, or doing something very strenuous aggravates my headache.&#160; I began to wonder if there was a correlation between my blood pressure and my headaches.&#160; I had an automatic home blood pressure monitor, so during Week 4 I intended to record my blood pressure alongside my headaches, and see if there was a relationship.</p>
<p>Unfortunately, I stopped this part of the way through the week, for two reasons.&#160; First, I was getting consistently higher readings for my blood pressure than any of the times I&#8217;ve had it measured by a professional.&#160; I wondered if a) I was either not placing the cuff on my arm correctly (too high/too low on the arm, too tight around it, etc.), or b) the machine needed to be recalibrated.</p>
<p>Second, and more seriously, I didn&#8217;t want to take readings every 15 minutes because it would have driven my co-workers nuts.&#160; So, I tried taking a couple of readings in the mornings before I went to work and a couple in the evenings after I got home.&#160; I was initially concerned that only getting 3-4 readings a day wouldn&#8217;t be enough to really determined correlation.&#160; That thought continued to nag me until I decided to stop the experiment.&#160; Perhaps I&#8217;ll revisit this later.</p>
<p><strong> Summary</strong>    <br /> So, to date, I&#8217;ve found that the following aggravate my headaches:</p>
<ul>
<li>Not staying sufficiently hydrated throughout the day</li>
<li>Too much sodium</li>
<li>Not enough iron in my diet</li>
</ul>
<p>That&#8217;s progress.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1339</post-id>
		<media:content url="https://0.gravatar.com/avatar/cdd1ff8582f800aae5726bcda65725898c8e0e115c35194378bf7bef0941ebcb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">markegilbert</media:title>
		</media:content>

		<media:content url="https://markegilbert.wordpress.com/wp-content/uploads/2020/03/10_thumb.png" medium="image">
			<media:title type="html">10</media:title>
		</media:content>

		<media:content url="https://markegilbert.wordpress.com/wp-content/uploads/2020/03/20_thumb.png" medium="image">
			<media:title type="html">20</media:title>
		</media:content>
	</item>
		<item>
		<title>What am I doing on Twitter?</title>
		<link>https://markegilbert.wordpress.com/2018/12/17/what-am-i-doing-on-twitter/</link>
		
		<dc:creator><![CDATA[markegilbert]]></dc:creator>
		<pubDate>Tue, 18 Dec 2018 02:14:58 +0000</pubDate>
				<category><![CDATA[Nesso]]></category>
		<guid isPermaLink="false">http://markegilbert.wordpress.com/?p=1087</guid>

					<description><![CDATA[What can you expect from me on Twitter?&#160; I start by posing questions, every day.&#160; Some will be silly.&#160; Most will be about science fiction, science, or technology.&#160; Hopefully they will all inspire some thought, and perhaps a conversation. A good question, crafted from a place of curiosity, can cut through the noise and lead [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>What can you expect from me on Twitter?&#160; I start by posing questions, every day.&#160; Some will be silly.&#160; Most will be about science fiction, science, or technology.&#160; Hopefully they will all inspire some thought, and perhaps a conversation.</p>
<p>A good question, crafted from a place of curiosity, can cut through the noise and lead to the signal.&#160; Let&#8217;s learn to ask better ones.&#160; Follow me <a href="http://Twitter.com/NessoAsks" target="_blank">@NessoAsks</a>.</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1087</post-id>
		<media:content url="https://0.gravatar.com/avatar/cdd1ff8582f800aae5726bcda65725898c8e0e115c35194378bf7bef0941ebcb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">markegilbert</media:title>
		</media:content>
	</item>
		<item>
		<title>Tweet, tweet?</title>
		<link>https://markegilbert.wordpress.com/2018/12/10/tweet-tweet/</link>
		
		<dc:creator><![CDATA[markegilbert]]></dc:creator>
		<pubDate>Mon, 10 Dec 2018 13:00:00 +0000</pubDate>
				<category><![CDATA[Nesso]]></category>
		<guid isPermaLink="false">http://markegilbert.wordpress.com/?p=1083</guid>

					<description><![CDATA[I&#8217;ve written on my personal blog about a project I started called &#34;Nesso&#34; (https://markofquality.wordpress.com/category/nesso/ ).&#160; That project has grown into something much larger than just my headaches.&#160; At its core, Project Nesso is about asking better questions.&#160; For the last two years I&#8217;ve been developing ways to ask questions about a given dataset. This weekend [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>I&#8217;ve written on my personal blog about a project I started called &quot;Nesso&quot; (<a href="https://markofquality.wordpress.com/category/nesso/">https://markofquality.wordpress.com/category/nesso/</a> ).&#160; That project has grown into something much larger than just my headaches.&#160; At its core, Project Nesso is about asking better questions.&#160; For the last two years I&#8217;ve been developing ways to ask questions about a given dataset.</p>
<p>This weekend I started a new one.&#160; You can now follow me on Twitter <a href="https://twitter.com/NessoAsks" target="_blank">@NessoAsks</a>.&#160; My goal is to tweet at least one question a day, which forces me to be more mindful of what is going on around me every day.&#160; I&#8217;m curious to see how my questions improve over time, and if those questions can spur some interesting discussion.</p>
<p>Join the conversation!   </p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1083</post-id>
		<media:content url="https://0.gravatar.com/avatar/cdd1ff8582f800aae5726bcda65725898c8e0e115c35194378bf7bef0941ebcb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">markegilbert</media:title>
		</media:content>
	</item>
		<item>
		<title>Formatting Terms and Operations</title>
		<link>https://markegilbert.wordpress.com/2017/11/20/formatting-terms-and-operations/</link>
		
		<dc:creator><![CDATA[markegilbert]]></dc:creator>
		<pubDate>Mon, 20 Nov 2017 12:00:00 +0000</pubDate>
				<category><![CDATA[Game - Algebra]]></category>
		<category><![CDATA[Unity]]></category>
		<guid isPermaLink="false">http://markegilbert.wordpress.com/?p=1069</guid>

					<description><![CDATA[I mentioned in my last post that the logic for displaying terms and operations was much more complicated than I originally anticipated.&#160; The logic evolved as the game development progressed, and CJ and I identified new and interesting edge cases to be addressed. I&#8217;ll begin with the logic behind the operations.&#160; Both ConstantOperation and VariableOperation [&#8230;]]]></description>
										<content:encoded><![CDATA[<p>I mentioned in my last post that the logic for displaying terms and operations was much more complicated than I originally anticipated.&#160; The logic evolved as the game development progressed, and CJ and I identified new and interesting edge cases to be addressed.</p>
<p>I&#8217;ll begin with the logic behind the operations.&#160; Both ConstantOperation and VariableOperation have their ToString() methods overridden.&#160; ConstantOperation is the simpler of the two:</p>
<blockquote>
<p><font face="Courier New">public override string ToString()       <br /> {        <br />&#160;&#160;&#160; return Utility.ToConstantOperationString(this.Numerator, this.Denominator, this.Operand);        <br />}</font></p>
</blockquote>
<p>The ToConstantOperationString method does all of the heaving lifting here:</p>
<blockquote>
<p><font face="Courier New">public static string ToConstantOperationString(int Numerator, int Denominator, Operands Operand)       <br /> {        <br />&#160;&#160;&#160; string OperandSymbol, Sign;        <br />&#160;&#160;&#160; OperandSymbol = &quot;&quot;;        <br />&#160;&#160;&#160; Sign = &quot;&quot;;        <br />&#160;&#160;&#160; switch (Operand)        <br />&#160;&#160;&#160; {        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; case Operands.Add:        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; OperandSymbol = ((float)Numerator / (float)Denominator &lt; 0 ? &quot;-&quot; : &quot;+&quot;);        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Sign = &quot;&quot;;        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; break;        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; case Operands.Subtract:        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; OperandSymbol = ((float)Numerator / (float)Denominator &lt; 0 ? &quot;+&quot; : &quot;-&quot;);        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Sign = &quot;&quot;;        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; break;        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; case Operands.Multiply:        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; OperandSymbol = &quot;*&quot;;        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Sign = ((float)Numerator / (float)Denominator &lt; 0 ? &quot;-&quot; : &quot;&quot;);        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; break;        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160; case Operands.Divide:        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; OperandSymbol = &quot;/&quot;;        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Sign = ((float)Numerator / (float)Denominator &lt; 0 ? &quot;-&quot; : &quot;&quot;);        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; break;        <br />&#160;&#160;&#160; }</font></p>
<p>   <font face="Courier New"></font>    </p>
<p><font face="Courier New">&#160;&#160;&#160; return string.Format(&quot;{0}{1}{2}{3}{4}{5}{6}&quot;,       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; OperandSymbol,        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Sign,        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (Math.Abs(Denominator) == 1 ? &quot;&quot; : &quot;(&quot;),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Math.Abs(Numerator),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (Math.Abs(Denominator) == 1 ? &quot;&quot; : &quot;/&quot;),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (Math.Abs(Denominator) == 1 ? &quot;&quot; : Math.Abs(Denominator).ToString()),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (Math.Abs(Denominator) == 1 ? &quot;&quot; : &quot;)&quot;));        <br /> }</font></p>
</blockquote>
<p>The switch statement sorts out which operand and which sign will be displayed.&#160; The latter is dependent on the former.&#160; For adds &amp; subtracts, the operand and the sign end up effectively merged with each other.</p>
<ul>
<li>Adding a positive 4: &quot;+4&quot;</li>
<li>Adding a negative 4: &quot;-4&quot;</li>
<li>Subtracting a positive 4: &quot;-4&quot;</li>
<li>Subtracting a negative 4: &quot;+4&quot;</li>
</ul>
<p>Multiplication and division, however, preserve both the operand and the sign (at least when the number is negative):</p>
<ul>
<li>Multiplying a positive 4: &quot;*4&quot; </li>
<li>Multiplying a negative 4: &quot;*-4&quot;</li>
<li>Dividing by a positive 4: &quot;/4&quot;</li>
<li>Dividing by a negative 4: &quot;/-4&quot;</li>
</ul>
<p>Then we need to format the final value, which includes the operand, the sign, and the number itself.&#160; Whole numbers like the above examples are straightforward.&#160; Fractional numbers present an additional challenge.&#160; I made the decision to surround fractional operations in parentheses, to set the absolute value apart from the sign, operand, and (as we&#8217;ll see later this post), the variable letter:</p>
<ul>
<li>+(4/3)</li>
<li>-(4/3)</li>
<li>/-(4/3)</li>
<li>*-(4/3)</li>
</ul>
<p>As the Format() function at the end suggests, each constant is made up of 7 pieces:</p>
<ul>
<li>The operand itself (+, -, *, or /)</li>
<li>The sign of the constant</li>
<li>An open parenthesis, if this is a fraction (denoted by a non-1 denominator)</li>
<li>The numerator</li>
<li>A slash, if this is a fraction</li>
<li>The denominator, if this is a fraction</li>
<li>A closing parenthesis, if this is a fraction</li>
</ul>
<p>It is also important to note that the numerator, the denominator, or both, may be negative.&#160; However, it all cases, the presentation of that value will never be something like &quot;-4/-3&quot;.&#160; The signs of the two components effective get evaluated in the expression:</p>
<blockquote>
<p><font face="Courier New">((float)Numerator / (float)Denominator &lt; 0 ? &#8230; : &#8230; )</font></p>
</blockquote>
<p>VariableOperation.ToString() use the exact same logic for coming up with the coefficient, but includes two additional pieces of logic:</p>
<blockquote>
<p><font face="Courier New">public override string ToString()       <br /> {        <br />&#160;&#160;&#160; String InitialCoefficientString;</font></p>
<p>   <font face="Courier New"></font>    </p>
<p><font face="Courier New">&#160;&#160;&#160; InitialCoefficientString = Utility.ToConstantOperationString(this.Numerator, this.Denominator, this.Operand);       <br />&#160;&#160;&#160; if(Math.Abs(this.Numerator) == 1 &amp;&amp; Math.Abs(this.Denominator) == 1) { InitialCoefficientString = InitialCoefficientString.Replace(&quot;1&quot;, &quot;&quot;); }</font></p>
<p>   <font face="Courier New"></font>    </p>
<p><font face="Courier New">&#160;&#160;&#160; return string.Format(&quot;{0}{1}&quot;, InitialCoefficientString, this.Var);       <br /> }</font></p>
</blockquote>
<p>First, it appends the variable letter itself, in the Format() call.&#160; Second, it evaluates the coefficient to see if it is exact &quot;1&quot;.&#160; If so, it drops the coefficient completely, so that the player sees &quot;+x&quot; rather than &quot;+1x&quot;, by simply replacing the &quot;1&quot; with an empty string.&#160; (However, since this version of the game does not allow you to &quot;multiply by x&quot; or &quot;divide by x&quot;, the player wouldn&#8217;t see something like &quot;*x&quot; or &quot;/x&quot; anyway, so this bit of logic is really just future-proofing.)</p>
<p>That&#8217;s all there is for rendering operations.&#160; Let&#8217;s move on to how terms are presented.&#160; </p>
<p>***</p>
<p>Terms have a slightly different set of concerns than operations.&#160; The operations have to show one of four operands, every time, while terms only have to worry about rendering &quot;+&quot; and &quot;-&quot;.&#160; In some cases, an operand is not shown at all, as in the case of leading, positive values:</p>
<blockquote>
<p>4x &#8211; 1 = 15</p>
</blockquote>
<p>This concept of &quot;leading term&quot; crops up a couple of times in the other methods we&#8217;ve looked at.&#160; The signs for the first term on either side of the equal sign get treated a little differently.</p>
<p>As with the operations, the Constant and Variable classes have their ToString() methods overridden.&#160; Let&#8217;s start with Constant:</p>
<blockquote>
<p><font face="Courier New">public override string ToString()       <br /> {        <br />&#160;&#160;&#160; if(this.Numerator == 0) { return &quot;0&quot;; }</font></p>
<p>   <font face="Courier New"></font>    </p>
<p><font face="Courier New">&#160;&#160;&#160; return string.Format(&quot;{0}{1}{2}{3}&quot;,       <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (((float)this.Numerator / (float)this.Denominator) &gt; 0f ? (this.IsFirstOnThisSide ? &quot;&quot; : &quot;+ &quot;) : (this.IsFirstOnThisSide ? &quot;-&quot; : &quot;- &quot;)),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; Math.Abs(this.Numerator),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (Math.Abs(this.Denominator) == 1 ? &quot;&quot; : &quot;/&quot;),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (Math.Abs(this.Denominator) == 1 ? &quot;&quot; : Math.Abs(this.Denominator).ToString()));        <br /> }</font></p>
</blockquote>
<p>Much of this should look familiar from ConstantOperation.&#160; The notable exceptions being the lack of parentheses, and the presentation of the sign.&#160; The latter gets subtly modified depending on whether this is the first term in the equation or not.&#160; First-term additions show no sign:</p>
<blockquote>
<p>4 + 3x = 2</p>
</blockquote>
<p>While other additions show a &quot;+&quot; followed by a space.</p>
<blockquote>
<p>3x + 4 = 2</p>
</blockquote>
<p>The space improves the look of the equation.&#160; Without it, it would look like</p>
<blockquote>
<p>3x +4 = 2</p>
</blockquote>
<p>First-term subtractions show the minus sign with no intervening space (the &quot;-3&quot; here), but other subtractions (the &quot;- 9&quot; here) include the space:</p>
<blockquote>
<p>4x = -3 &#8211; 9</p>
</blockquote>
<p>****</p>
<p>Now let&#8217;s look at Variable terms.&#160; The Variable version of ToString() combines these the approaches:</p>
<blockquote>
<p><font face="Courier New"> public override string ToString()       <br /> {        <br />&#160;&#160;&#160; return string.Format(&quot;{0}{1}{2}{3}{4}{5}{6}&quot;,        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (((float)this.Numerator / (float)this.Denominator) &gt; 0f ? (this.IsFirstOnThisSide ? &quot;&quot; : &quot;+ &quot;) : (this.IsFirstOnThisSide ? &quot;-&quot; : &quot;- &quot;)),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (Math.Abs(this.Denominator) == 1 ? &quot;&quot; : &quot;(&quot;),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (Math.Abs(this.Numerator) == 1 &amp;&amp; Math.Abs(this.Denominator) == 1 ? &quot;&quot; : Math.Abs(this.Numerator).ToString()),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (Math.Abs(this.Denominator) == 1 ? &quot;&quot; : &quot;/&quot;),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (Math.Abs(this.Denominator) == 1 ? &quot;&quot; : Math.Abs(this.Denominator).ToString()),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; (Math.Abs(this.Denominator) == 1 ? &quot;&quot; : &quot;)&quot;),        <br />&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160; this.Var);        <br /> }</font></p>
</blockquote>
<p>Parentheses are included (to distinguish the sign, coefficient, and variable more clearly), as is the &quot;first term&quot; logic.</p>
<p>***</p>
<p>At this point, you might be asking why I ended up with three different approaches to formatting the values.&#160; The requirements for operations, constant terms, and variable terms have overlap, but none of them were complete subsets of the others.&#160; That makes it trickier to factor anything out.&#160; I think you can make the argument, though, that showing a constant operation of &quot;-(3/4)&quot;, and a constant term of &quot;-3/4&quot; (as the game currently does) is inconsistent and should be normalized.&#160; Doing so would go a long way to making it easier to refactor the logic together.&#160; Another improvement for a later version.</p>
<p>This concludes the series on the algebra game.&#160; There are still plenty of things that we&#8217;d like to do with the game before we consider submitting it to one or both app stores: replace the temporary graphics, add usage tracking, add error logging, and so on.&#160; I&#8217;ve had a blast building it to this point and (for the most part) loved the discussions with CJ about its direction.&#160; (We won&#8217;t speak of the &quot;I&#8217;m sorry dear; I really think you need to represent numbers as fractions&quot; conversation again.)</p>
]]></content:encoded>
					
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">1069</post-id>
		<media:content url="https://0.gravatar.com/avatar/cdd1ff8582f800aae5726bcda65725898c8e0e115c35194378bf7bef0941ebcb?s=96&#38;d=identicon&#38;r=G" medium="image">
			<media:title type="html">markegilbert</media:title>
		</media:content>
	</item>
	</channel>
</rss>
