<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	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:georss="http://www.georss.org/georss"
	xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#"
	
	>
<channel>
	<title>
	Comments on: Technology Musings	</title>
	<atom:link href="https://gregladen.com/blog/2010/03/17/technology-musings/feed/" rel="self" type="application/rss+xml" />
	<link>https://gregladen.com/blog/2010/03/17/technology-musings/</link>
	<description></description>
	<lastBuildDate>Fri, 19 Mar 2010 19:31:56 +0000</lastBuildDate>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.4.6</generator>
	<item>
		<title>
		By: The Swede		</title>
		<link>https://gregladen.com/blog/2010/03/17/technology-musings/#comment-516119</link>

		<dc:creator><![CDATA[The Swede]]></dc:creator>
		<pubDate>Fri, 19 Mar 2010 19:31:56 +0000</pubDate>
		<guid isPermaLink="false">http://scienceblogs.com/gregladen/2010/03/17/technology-musings/#comment-516119</guid>

					<description><![CDATA[Oh, and Mr. Laden, I&#039;m prepared to accept your apology for insulting me repeatedly over being right, and for ignoring my argument and thereby claiming I have made none. Whenever you&#039;re humble enough to admit you&#039;ve been out of your depth the whole time.

I&#039;m not holding my breath though. You appear convinced that the field of Computer Science holds no secrets to someone with your immense breadth and width of varied, professional programming experience in various paradigms and many substantially different languages, and that someone stating you do not understand arguments made is merely territorial and, what was it, a &quot;sloth&quot;.]]></description>
			<content:encoded><![CDATA[<p>Oh, and Mr. Laden, I&#8217;m prepared to accept your apology for insulting me repeatedly over being right, and for ignoring my argument and thereby claiming I have made none. Whenever you&#8217;re humble enough to admit you&#8217;ve been out of your depth the whole time.</p>
<p>I&#8217;m not holding my breath though. You appear convinced that the field of Computer Science holds no secrets to someone with your immense breadth and width of varied, professional programming experience in various paradigms and many substantially different languages, and that someone stating you do not understand arguments made is merely territorial and, what was it, a &#8220;sloth&#8221;.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: The Swede		</title>
		<link>https://gregladen.com/blog/2010/03/17/technology-musings/#comment-516118</link>

		<dc:creator><![CDATA[The Swede]]></dc:creator>
		<pubDate>Fri, 19 Mar 2010 02:35:53 +0000</pubDate>
		<guid isPermaLink="false">http://scienceblogs.com/gregladen/2010/03/17/technology-musings/#comment-516118</guid>

					<description><![CDATA[Yep. One of my colleagues also almost got fired over moving a computer from one cubicle to another. It&#039;s rather nuts.]]></description>
			<content:encoded><![CDATA[<p>Yep. One of my colleagues also almost got fired over moving a computer from one cubicle to another. It&#8217;s rather nuts.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Todd		</title>
		<link>https://gregladen.com/blog/2010/03/17/technology-musings/#comment-516117</link>

		<dc:creator><![CDATA[Todd]]></dc:creator>
		<pubDate>Thu, 18 Mar 2010 21:47:38 +0000</pubDate>
		<guid isPermaLink="false">http://scienceblogs.com/gregladen/2010/03/17/technology-musings/#comment-516117</guid>

					<description><![CDATA[Attaching a Linux system to the network was a firing offense?]]></description>
			<content:encoded><![CDATA[<p>Attaching a Linux system to the network was a firing offense?</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: The Swede		</title>
		<link>https://gregladen.com/blog/2010/03/17/technology-musings/#comment-516116</link>

		<dc:creator><![CDATA[The Swede]]></dc:creator>
		<pubDate>Thu, 18 Mar 2010 14:39:23 +0000</pubDate>
		<guid isPermaLink="false">http://scienceblogs.com/gregladen/2010/03/17/technology-musings/#comment-516116</guid>

					<description><![CDATA[FORTRAN is what I&#039;ve seen the most of, since I currently work in engineering and automation. There are the occasional solutions in C and VB6/VB.NET, but mostly it&#039;s legacy code FORTRAN (which doesn&#039;t mean it&#039;s 1960&#039;s FORTRAN, a lot of it is in more modern varieties) or in specialized applications, usually built around one of the math frameworks like LabView, Matlab or Maple. I&#039;m certain my sample is biased though, since I work a lot with advanced test systems and don&#039;t run into homebrew &quot;spot solutions&quot; much. Except the ones I make myself, using whatever tool I happen to be trying out at the time.

In banks you won&#039;t find much floating point except in on the spot calculations (and those will often be in Excel or something similar). The major currency data types tend to be fixed point, because of the many issues with floating point. When I did data transactions between bank departments using floating point was a sure way to get a stern talking to, even if it wasn&#039;t a firing offense like attaching a Linux system to the network was. Interesting times. There are exceptions of course, and (at least previously lucrative) business ideas built up around the limitations that cause.]]></description>
			<content:encoded><![CDATA[<p>FORTRAN is what I&#8217;ve seen the most of, since I currently work in engineering and automation. There are the occasional solutions in C and VB6/VB.NET, but mostly it&#8217;s legacy code FORTRAN (which doesn&#8217;t mean it&#8217;s 1960&#8217;s FORTRAN, a lot of it is in more modern varieties) or in specialized applications, usually built around one of the math frameworks like LabView, Matlab or Maple. I&#8217;m certain my sample is biased though, since I work a lot with advanced test systems and don&#8217;t run into homebrew &#8220;spot solutions&#8221; much. Except the ones I make myself, using whatever tool I happen to be trying out at the time.</p>
<p>In banks you won&#8217;t find much floating point except in on the spot calculations (and those will often be in Excel or something similar). The major currency data types tend to be fixed point, because of the many issues with floating point. When I did data transactions between bank departments using floating point was a sure way to get a stern talking to, even if it wasn&#8217;t a firing offense like attaching a Linux system to the network was. Interesting times. There are exceptions of course, and (at least previously lucrative) business ideas built up around the limitations that cause.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Eric Lund		</title>
		<link>https://gregladen.com/blog/2010/03/17/technology-musings/#comment-516115</link>

		<dc:creator><![CDATA[Eric Lund]]></dc:creator>
		<pubDate>Thu, 18 Mar 2010 12:27:14 +0000</pubDate>
		<guid isPermaLink="false">http://scienceblogs.com/gregladen/2010/03/17/technology-musings/#comment-516115</guid>

					<description><![CDATA[&lt;i&gt;Most scientific data processing I encounter either uses specialized tools like Matlab or legacy modules in FORTRAN&lt;/i&gt;

You definitely need to get out more. I see a fair amount of scientific data processing code (and have written some of it myself) which doesn&#039;t fall into either of these two categories. Lots of people who write such code for a living still use FORTRAN, but it&#039;s not the same FORTRAN that was used in the 1960s and 1970s. Others use C, which actually does quite well for a naive user, or some variant thereof.

Floating point useless in finance? Let me give you one equation: y = y0 * (1+r/100)^n. That&#039;s the formula for compound interest over n periods with a percentage interest rate per period of r. I&#039;m sure it&#039;s possible to code an integer arithmetic version of that, but it&#039;s much more straightforward to do it in floating point. Some applications, like bank balances, make sense as integers, but floating point arithmetic has its place.

Yes, floating point arithmetic has the limitation of not being able to represent every number exactly. There are standard techniques for minimizing that error and not quoting results to unjustified precision. That&#039;s the whole reason behind double precision, and if that&#039;s not good enough there are ways to implement arbitrary precision.]]></description>
			<content:encoded><![CDATA[<p><i>Most scientific data processing I encounter either uses specialized tools like Matlab or legacy modules in FORTRAN</i></p>
<p>You definitely need to get out more. I see a fair amount of scientific data processing code (and have written some of it myself) which doesn&#8217;t fall into either of these two categories. Lots of people who write such code for a living still use FORTRAN, but it&#8217;s not the same FORTRAN that was used in the 1960s and 1970s. Others use C, which actually does quite well for a naive user, or some variant thereof.</p>
<p>Floating point useless in finance? Let me give you one equation: y = y0 * (1+r/100)^n. That&#8217;s the formula for compound interest over n periods with a percentage interest rate per period of r. I&#8217;m sure it&#8217;s possible to code an integer arithmetic version of that, but it&#8217;s much more straightforward to do it in floating point. Some applications, like bank balances, make sense as integers, but floating point arithmetic has its place.</p>
<p>Yes, floating point arithmetic has the limitation of not being able to represent every number exactly. There are standard techniques for minimizing that error and not quoting results to unjustified precision. That&#8217;s the whole reason behind double precision, and if that&#8217;s not good enough there are ways to implement arbitrary precision.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: The Swede		</title>
		<link>https://gregladen.com/blog/2010/03/17/technology-musings/#comment-516114</link>

		<dc:creator><![CDATA[The Swede]]></dc:creator>
		<pubDate>Thu, 18 Mar 2010 11:50:38 +0000</pubDate>
		<guid isPermaLink="false">http://scienceblogs.com/gregladen/2010/03/17/technology-musings/#comment-516114</guid>

					<description><![CDATA[Most scientific data processing I encounter either uses specialized tools like Matlab or legacy modules in FORTRAN (I&#039;ve had to wrap a LOT of those up in other code). Some use Numerical Python which seems to gain ground rapidly. Few use core languages like Python or BASIC for that kind of work.

Which doesn&#039;t mean core languages can&#039;t be used for that, only that it&#039;s rare, since they&#039;re generally ill suited.]]></description>
			<content:encoded><![CDATA[<p>Most scientific data processing I encounter either uses specialized tools like Matlab or legacy modules in FORTRAN (I&#8217;ve had to wrap a LOT of those up in other code). Some use Numerical Python which seems to gain ground rapidly. Few use core languages like Python or BASIC for that kind of work.</p>
<p>Which doesn&#8217;t mean core languages can&#8217;t be used for that, only that it&#8217;s rare, since they&#8217;re generally ill suited.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: KeithB		</title>
		<link>https://gregladen.com/blog/2010/03/17/technology-musings/#comment-516113</link>

		<dc:creator><![CDATA[KeithB]]></dc:creator>
		<pubDate>Thu, 18 Mar 2010 11:26:54 +0000</pubDate>
		<guid isPermaLink="false">http://scienceblogs.com/gregladen/2010/03/17/technology-musings/#comment-516113</guid>

					<description><![CDATA[The Swede said:
&quot;Floating point math has a very limited applicability; it&#039;s pretty much useless in control systems, finance, media decoders and the like. It&#039;s mostly used where the inherent lack of both speed and precision is immaterial.&quot;

Or in scientific data processing which is where Greg is coming from...

Aren&#039;t you overgeneralizing a bit?  Or is there no market for some dumb little book like &quot;Numerical recipes in C&quot;
]]></description>
			<content:encoded><![CDATA[<p>The Swede said:<br />
&#8220;Floating point math has a very limited applicability; it&#8217;s pretty much useless in control systems, finance, media decoders and the like. It&#8217;s mostly used where the inherent lack of both speed and precision is immaterial.&#8221;</p>
<p>Or in scientific data processing which is where Greg is coming from&#8230;</p>
<p>Aren&#8217;t you overgeneralizing a bit?  Or is there no market for some dumb little book like &#8220;Numerical recipes in C&#8221;</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: The Swede		</title>
		<link>https://gregladen.com/blog/2010/03/17/technology-musings/#comment-516112</link>

		<dc:creator><![CDATA[The Swede]]></dc:creator>
		<pubDate>Thu, 18 Mar 2010 11:20:06 +0000</pubDate>
		<guid isPermaLink="false">http://scienceblogs.com/gregladen/2010/03/17/technology-musings/#comment-516112</guid>

					<description><![CDATA[Actually his complaint is that an integer object returns an integer object as the result of mathematical manipulation of it. From the perspective of an OO language that&#039;s exactly what one would expect.

DrMcCoy also has a valid point. Integer math is the norm in control system, real time response systems and consumer electronics, and that&#039;s where most of today&#039;s computers reside. Floating point math has a very limited applicability; it&#039;s pretty much useless in control systems, finance, media decoders and the like. It&#039;s mostly used where the inherent lack of both speed and precision is immaterial.]]></description>
			<content:encoded><![CDATA[<p>Actually his complaint is that an integer object returns an integer object as the result of mathematical manipulation of it. From the perspective of an OO language that&#8217;s exactly what one would expect.</p>
<p>DrMcCoy also has a valid point. Integer math is the norm in control system, real time response systems and consumer electronics, and that&#8217;s where most of today&#8217;s computers reside. Floating point math has a very limited applicability; it&#8217;s pretty much useless in control systems, finance, media decoders and the like. It&#8217;s mostly used where the inherent lack of both speed and precision is immaterial.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: DrMcCoy		</title>
		<link>https://gregladen.com/blog/2010/03/17/technology-musings/#comment-516111</link>

		<dc:creator><![CDATA[DrMcCoy]]></dc:creator>
		<pubDate>Thu, 18 Mar 2010 11:02:24 +0000</pubDate>
		<guid isPermaLink="false">http://scienceblogs.com/gregladen/2010/03/17/technology-musings/#comment-516111</guid>

					<description><![CDATA[So his complaint is really just about integer vs. float division? o_O

&lt;blockquote&gt;That may have made sense in the 1970s, when the faster execution of integer arithmetic (with integers you need only deal with the mantissa; floating-point types also have an exponent) added up to noticeable levels over the course of a program run&lt;/blockquote&gt;

If you&#039;re talking embedded programming, or even just &quot;Apps&quot; meant to run on PDAs or mobile phones, it still makes sense. Those devices often have no hardware support for floating point arithmetics. Doing it in software is considerably slower. And yes, it does have an impact, very audible for example in audio decoding/generation.

There&#039;s also the problem that floats, at least using the exponent+fraction representation (as used in most hardware floating point units), in general: They can&#039;t represent every possible non-integer value. Often, it doesn&#039;t matter, but in certain cases, those inaccuracies add up, screwing everything up. There&#039;s different ways of storing float values, but they either suffer from similar problems or are significantly slower. Or both.]]></description>
			<content:encoded><![CDATA[<p>So his complaint is really just about integer vs. float division? o_O</p>
<blockquote><p>That may have made sense in the 1970s, when the faster execution of integer arithmetic (with integers you need only deal with the mantissa; floating-point types also have an exponent) added up to noticeable levels over the course of a program run</p></blockquote>
<p>If you&#8217;re talking embedded programming, or even just &#8220;Apps&#8221; meant to run on PDAs or mobile phones, it still makes sense. Those devices often have no hardware support for floating point arithmetics. Doing it in software is considerably slower. And yes, it does have an impact, very audible for example in audio decoding/generation.</p>
<p>There&#8217;s also the problem that floats, at least using the exponent+fraction representation (as used in most hardware floating point units), in general: They can&#8217;t represent every possible non-integer value. Often, it doesn&#8217;t matter, but in certain cases, those inaccuracies add up, screwing everything up. There&#8217;s different ways of storing float values, but they either suffer from similar problems or are significantly slower. Or both.</p>
]]></content:encoded>
		
			</item>
		<item>
		<title>
		By: Eric Lund		</title>
		<link>https://gregladen.com/blog/2010/03/17/technology-musings/#comment-516110</link>

		<dc:creator><![CDATA[Eric Lund]]></dc:creator>
		<pubDate>Thu, 18 Mar 2010 10:00:59 +0000</pubDate>
		<guid isPermaLink="false">http://scienceblogs.com/gregladen/2010/03/17/technology-musings/#comment-516110</guid>

					<description><![CDATA[&lt;i&gt;Because Basic can fucking do division, dudes. Like 2/3. Python can&#039;t.&lt;/i&gt;

The difference is that BASIC uses floating-point as its default numeric type. Most other programming languages default to integer arithmetic. That may have made sense in the 1970s, when the faster execution of integer arithmetic (with integers you need only deal with the mantissa; floating-point types also have an exponent) added up to noticeable levels over the course of a program run. Today, it&#039;s often user hostile: your average user is accustomed to spreadsheets which also treat 2/3 as a floating point operation, not a trained programmer accustomed to thinking in terms of integer arithmetic.

The version of BASIC I used (for the Commodore 64) actually did provide an integer type, but I never used it. To make an integer variable you had to append a certain character (I think it was %) to the variable name, much as you had to append a $ to the name of a string variable. Having had no formal training at that point, I didn&#039;t understand why someone would purposely choose the more restrictive type.]]></description>
			<content:encoded><![CDATA[<p><i>Because Basic can fucking do division, dudes. Like 2/3. Python can&#8217;t.</i></p>
<p>The difference is that BASIC uses floating-point as its default numeric type. Most other programming languages default to integer arithmetic. That may have made sense in the 1970s, when the faster execution of integer arithmetic (with integers you need only deal with the mantissa; floating-point types also have an exponent) added up to noticeable levels over the course of a program run. Today, it&#8217;s often user hostile: your average user is accustomed to spreadsheets which also treat 2/3 as a floating point operation, not a trained programmer accustomed to thinking in terms of integer arithmetic.</p>
<p>The version of BASIC I used (for the Commodore 64) actually did provide an integer type, but I never used it. To make an integer variable you had to append a certain character (I think it was %) to the variable name, much as you had to append a $ to the name of a string variable. Having had no formal training at that point, I didn&#8217;t understand why someone would purposely choose the more restrictive type.</p>
]]></content:encoded>
		
			</item>
	</channel>
</rss>
