<?xml version="1.0" encoding="UTF-8"?><!-- generator="wordpress/2.0.12-alpha" -->
<rss version="2.0" 
	xmlns:content="http://purl.org/rss/1.0/modules/content/">
<channel>
	<title>Comments on: What&#8217;s wrong with the Internet - HTTP</title>
	<link>http://ilya-sher.org/blog/post/inet-wrong-http/</link>
	<description>A13F3BBB1F25347775112B56DBC19072</description>
	<pubDate>Thu, 09 Sep 2010 04:41:16 +0000</pubDate>
	<generator>http://wordpress.org/?v=2.0.12-alpha</generator>

	<item>
		<title>by: Ilya Sher</title>
		<link>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-48</link>
		<pubDate>Mon, 02 Nov 2009 14:40:59 +0000</pubDate>
		<guid>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-48</guid>
					<description>1.
&gt; Optimization pays off always. Where to stop optimizing and move to something different is a personal preference.
I strongly disagree. Optimization pays off till certain point, depending on circumstances. After that point, other activities will be more profitable.

2. Planned optimization equals development? Is that what you think? Optimization "for fun" can be done in one's spare time. I never meant to discuss that type of "optimization" as it seems obvious that it has no place in commercial organizations.

3. I'm talking about the planned optimization. I agree that it depends on the other alternatives you have. It seemed to me you are always anti-optimization.

4. I asked _your_ opinion as it seemed to me that you will always prefer the risk. After your last post, I guess your answer would be "it depends on the options", which I would agree.

re: content-encoding:
Right, it's not "real" solution. It's just you mentioned RAR. I pointed you to something which is remotely connected to your idea that I know that already exists.

re: asn.1:
As far as I'm concerned, XML is at the top of list of worst things ever created. Anything else is far behind. Actually I only touched ASN.1 briefly so I can't judge.

&gt; You are probably right generally about the “binary vs text” issue.
I'm glad we agree on the main point of the original post :) 

&gt; but the ASN.1 or text-compression solution doesn’t really cut it
ASN.1 probably not but it looks like it's a step in the right direction. Text-compression - surely not.</description>
		<content:encoded><![CDATA[<p>1.<br />
> Optimization pays off always. Where to stop optimizing and move to something different is a personal preference.<br />
I strongly disagree. Optimization pays off till certain point, depending on circumstances. After that point, other activities will be more profitable.</p>
<p>2. Planned optimization equals development? Is that what you think? Optimization &#8220;for fun&#8221; can be done in one&#8217;s spare time. I never meant to discuss that type of &#8220;optimization&#8221; as it seems obvious that it has no place in commercial organizations.</p>
<p>3. I&#8217;m talking about the planned optimization. I agree that it depends on the other alternatives you have. It seemed to me you are always anti-optimization.</p>
<p>4. I asked _your_ opinion as it seemed to me that you will always prefer the risk. After your last post, I guess your answer would be &#8220;it depends on the options&#8221;, which I would agree.</p>
<p>re: content-encoding:<br />
Right, it&#8217;s not &#8220;real&#8221; solution. It&#8217;s just you mentioned RAR. I pointed you to something which is remotely connected to your idea that I know that already exists.</p>
<p>re: asn.1:<br />
As far as I&#8217;m concerned, XML is at the top of list of worst things ever created. Anything else is far behind. Actually I only touched ASN.1 briefly so I can&#8217;t judge.</p>
<p>> You are probably right generally about the “binary vs text” issue.<br />
I&#8217;m glad we agree on the main point of the original post :) </p>
<p>> but the ASN.1 or text-compression solution doesn’t really cut it<br />
ASN.1 probably not but it looks like it&#8217;s a step in the right direction. Text-compression - surely not.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: anon</title>
		<link>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-47</link>
		<pubDate>Mon, 02 Nov 2009 12:41:40 +0000</pubDate>
		<guid>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-47</guid>
					<description>The last post is genuine.

re: questions:
1. Optimization pays off always. Where to stop optimizing and move to something different is a personal preference. Some may say that the time to move on is when you have everything working at the level needed to be profitable, or that which was required by the plan. There's nothing wrong in wanting to optimize indefinitely. If you are implying that optimization doesn't have to have that "diminishing returns" factor, you might also be right. Systemic thinking along with unlimited r&#38;d time sometimes lead to astounding breakthroughs. This is not very "startup"-ish, though.

2. When you _plan_ your optimization, and you see the goal of that optimization clearly, you can estimate the time spent and the results you will get. This is what happens in that "startup" theme, for example. You wouldn't start that project if you would think it's not feasible. You knew, or you had an instinctive belief that you could get it down to 1 server requirement, that's why you started it. That's development. Optimization for fun starts when you don't know what you're looking for, you're just poking at various random parts to check if they can be made more efficient. Or you might as well create a full benchmark suite and work from there. In any case, you're doing it not because you needed it from the start and planned for it, but because it's fun, or it's your personal preference to do that.

3. It depends if the optimization is a part of a planned process that can be estimated well, or an "exploratory" process, finding stuff and fixing it. In the former case, you know exactly the costs and benefits, so you can compare to other stuff you might wanna use the money for. In the latter case, since you can't estimate the benefits or even resources required, you might as well go and do something more "controllable". So it depends on the amounts of money you're talking about. If you don't have near-infinite amounts of money, in most cases, controlled processes bring more profit. Again, this is a matter of personal preference, and sometimes the continued optimization brings undreamed-of benefits suddenly. It's actually lots of fun doing stuff you enjoy, and if you really enjoy it it will bring benefits sooner or later. And for that "sooner or later" part you better have a near-infinite money supply :)

4. There are strategies in taking risks. Read up on it.

re: content-encoding:
You're talking about doing compression at level 5 OSI. Was talking about 4th layer, or something between 3rd and 4th. In any case, it's not really a solution, since the underlying content is still textual.

re: asn.1:
oh, don't go there. it's near the top in the list of the worst things EVER created on earth.

You are probably right generally about the "binary vs text" issue, but the ASN.1 or text-compression solution doesn't really cut it.</description>
		<content:encoded><![CDATA[<p>The last post is genuine.</p>
<p>re: questions:<br />
1. Optimization pays off always. Where to stop optimizing and move to something different is a personal preference. Some may say that the time to move on is when you have everything working at the level needed to be profitable, or that which was required by the plan. There&#8217;s nothing wrong in wanting to optimize indefinitely. If you are implying that optimization doesn&#8217;t have to have that &#8220;diminishing returns&#8221; factor, you might also be right. Systemic thinking along with unlimited r&amp;d time sometimes lead to astounding breakthroughs. This is not very &#8220;startup&#8221;-ish, though.</p>
<p>2. When you _plan_ your optimization, and you see the goal of that optimization clearly, you can estimate the time spent and the results you will get. This is what happens in that &#8220;startup&#8221; theme, for example. You wouldn&#8217;t start that project if you would think it&#8217;s not feasible. You knew, or you had an instinctive belief that you could get it down to 1 server requirement, that&#8217;s why you started it. That&#8217;s development. Optimization for fun starts when you don&#8217;t know what you&#8217;re looking for, you&#8217;re just poking at various random parts to check if they can be made more efficient. Or you might as well create a full benchmark suite and work from there. In any case, you&#8217;re doing it not because you needed it from the start and planned for it, but because it&#8217;s fun, or it&#8217;s your personal preference to do that.</p>
<p>3. It depends if the optimization is a part of a planned process that can be estimated well, or an &#8220;exploratory&#8221; process, finding stuff and fixing it. In the former case, you know exactly the costs and benefits, so you can compare to other stuff you might wanna use the money for. In the latter case, since you can&#8217;t estimate the benefits or even resources required, you might as well go and do something more &#8220;controllable&#8221;. So it depends on the amounts of money you&#8217;re talking about. If you don&#8217;t have near-infinite amounts of money, in most cases, controlled processes bring more profit. Again, this is a matter of personal preference, and sometimes the continued optimization brings undreamed-of benefits suddenly. It&#8217;s actually lots of fun doing stuff you enjoy, and if you really enjoy it it will bring benefits sooner or later. And for that &#8220;sooner or later&#8221; part you better have a near-infinite money supply :)</p>
<p>4. There are strategies in taking risks. Read up on it.</p>
<p>re: content-encoding:<br />
You&#8217;re talking about doing compression at level 5 OSI. Was talking about 4th layer, or something between 3rd and 4th. In any case, it&#8217;s not really a solution, since the underlying content is still textual.</p>
<p>re: asn.1:<br />
oh, don&#8217;t go there. it&#8217;s near the top in the list of the worst things EVER created on earth.</p>
<p>You are probably right generally about the &#8220;binary vs text&#8221; issue, but the ASN.1 or text-compression solution doesn&#8217;t really cut it.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Ilya Sher</title>
		<link>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-46</link>
		<pubDate>Sun, 01 Nov 2009 22:32:37 +0000</pubDate>
		<guid>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-46</guid>
					<description>It looks like you largely ignored my questions.
Trying to understand you fully, I have several questions:
1. Do you think that some level of optimization pays off?
2. Any specific criteria you can use to distinguish between "development" and optimization if the changes make the code more efficient?
3. Do you think that the money saved on optimization will always have alternative usage that will provide more gain than the optimization?
4. Will you take a risk over a "safe" bet?

What's that sudden change in your last post? Is it sarcasm? If it's not, here is the reply.

Regarding RAR:
Trade-off of the network vs CPU must be considered. Actually it is, so we do have "Content-Transfer-Encoding: gzip".

&gt; Or some kind of a universal interpreter, that, given a standardized human-readable protocol description would provide a working binary adaptation module.
If I understand correctly, ASN.1 is heading that general direction. Take a look at http://en.wikipedia.org/wiki/Abstract_Syntax_Notation_One .

&gt; wikimization
Looks very math-oriented.</description>
		<content:encoded><![CDATA[<p>It looks like you largely ignored my questions.<br />
Trying to understand you fully, I have several questions:<br />
1. Do you think that some level of optimization pays off?<br />
2. Any specific criteria you can use to distinguish between &#8220;development&#8221; and optimization if the changes make the code more efficient?<br />
3. Do you think that the money saved on optimization will always have alternative usage that will provide more gain than the optimization?<br />
4. Will you take a risk over a &#8220;safe&#8221; bet?</p>
<p>What&#8217;s that sudden change in your last post? Is it sarcasm? If it&#8217;s not, here is the reply.</p>
<p>Regarding RAR:<br />
Trade-off of the network vs CPU must be considered. Actually it is, so we do have &#8220;Content-Transfer-Encoding: gzip&#8221;.</p>
<p>> Or some kind of a universal interpreter, that, given a standardized human-readable protocol description would provide a working binary adaptation module.<br />
If I understand correctly, ASN.1 is heading that general direction. Take a look at <a href="http://en.wikipedia.org/wiki/Abstract_Syntax_Notation_One" rel="nofollow">http://en.wikipedia.org/wiki/Abstract_Syntax_Notation_One</a> .</p>
<p>> wikimization<br />
Looks very math-oriented.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: anon</title>
		<link>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-45</link>
		<pubDate>Sun, 01 Nov 2009 21:20:04 +0000</pubDate>
		<guid>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-45</guid>
					<description>...

Actually, you're right.

Optimization is a very nice thing.
And binary protocols are really good. They really _are_ that good.
If you take the amount of raw HTML, SMTP, FTP etc flowing through the "intertubes" every second and rar it, there would be quite a considerable amount of saving.

If you're already good in performance optimization, might as well use it for your benefit !

The days when humans really needed to look at this stuff at such a low level are long gone. Same as the first data storage devices were these "punch-cards", and the first protocols were real "protocols" in pen-and-paper-and-a-human-moderator, the "human" touch along with its text-based descriptive attributes will most probably go up higher and higher in the protocol stack. They're already being pushed out from the 4th OSI layer :)

So, if you can find a way to promote this trend efficiently, do it !
A middle ground might be a standard for protocol binarization which would allow any protocol to be binary, while having a one-to-one text-based, human-readable form-mapping. Binary XML ?
Or some kind of a universal interpreter, that, given a standardized human-readable protocol description would provide a working binary adaptation module.

btw, google for "wikimization" - you might find it interesting.

Have ideas about creating the above - let know, might provide funding for your new startup !</description>
		<content:encoded><![CDATA[<p>&#8230;</p>
<p>Actually, you&#8217;re right.</p>
<p>Optimization is a very nice thing.<br />
And binary protocols are really good. They really _are_ that good.<br />
If you take the amount of raw HTML, SMTP, FTP etc flowing through the &#8220;intertubes&#8221; every second and rar it, there would be quite a considerable amount of saving.</p>
<p>If you&#8217;re already good in performance optimization, might as well use it for your benefit !</p>
<p>The days when humans really needed to look at this stuff at such a low level are long gone. Same as the first data storage devices were these &#8220;punch-cards&#8221;, and the first protocols were real &#8220;protocols&#8221; in pen-and-paper-and-a-human-moderator, the &#8220;human&#8221; touch along with its text-based descriptive attributes will most probably go up higher and higher in the protocol stack. They&#8217;re already being pushed out from the 4th OSI layer :)</p>
<p>So, if you can find a way to promote this trend efficiently, do it !<br />
A middle ground might be a standard for protocol binarization which would allow any protocol to be binary, while having a one-to-one text-based, human-readable form-mapping. Binary XML ?<br />
Or some kind of a universal interpreter, that, given a standardized human-readable protocol description would provide a working binary adaptation module.</p>
<p>btw, google for &#8220;wikimization&#8221; - you might find it interesting.</p>
<p>Have ideas about creating the above - let know, might provide funding for your new startup !
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: anon</title>
		<link>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-44</link>
		<pubDate>Sun, 01 Nov 2009 20:57:46 +0000</pubDate>
		<guid>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-44</guid>
					<description>re: spending in restaurant has nothing to do with $75/year utility bills:
First point: you're talking about less than 0.1% of your total annual expenses. Do you really need to optimize at that level ?
Second point: the more efficient product costs more. Your example is unrealistic, but, say, the new product for $150 saves you $10/year. If you can use your money well, the $50 you save this year can bring you much more good than that $10 a year. Especially since it's a nice idea to change toasters once in a while. But look at it at an even better perspective: if you have enough money to eat and buy luxury items, just get that toaster for $150, feel that you need more money and go and earn it. Very simple.

re: 2 providers with one of them cheaper:
Clearly the point is not entering the price war - it will bring both the competitors down. A good manager at one of the providers will decide to differentiate somehow - and that's where the resources should be going to. Unless the service costs a significant portion of person's money flow, the person won't really try to save $5 and get a worse service. The thought-flow goes something like this: "Hmm.. this one costs $X, that one costs $X+5, but the second provider gives free Y and Z, and they have nice advertisement campaign, and I get the right to call the clients of the first provider 'cheapskates'... sounds like a deal !"
On the scales of ISP fees, f.e., the money amounts are so small that people don't really care about them. It's much more of a hassle to them to call the provider and get updated prices and discounts than to pay for the service at last-year rates. And this is the only scale where your "optimization" logic really works, as you can't bring it into high-end luxury services market.

Re: the startup thing:
You forgot a VERY important element. When opening the startup you probably had a plan about the specific project and how to make it work.
When some r&#38;d provides you a benefit of moving from 10-server requirement to 1-server requirement in the matter of 1 day, that's not "performance optimization", that's just plain old "development". That should have been planned in your original plan for that startup, and if it wasn't - shame on you. But after you've done that, you became profitable, and the next month of optimization brings you single-digit percentage improvements - why bother focusing on it ? Leave some developers to optimize it slowly and support it. Move most of your force to new and exciting projects. You won't believe how much developers like new code !
And if you didn't become profitable, and just planning to become such after some magic "performance optimization" fairy helps you, then your startup was planned badly and your investors should be very sad.

At any scale you take in a risk-taking world - the one that exists right now - risk-averse behavior will always lose in the long-term against risk-taking one. Performance optimization when the law of diminishing returns has kicked in, and it ceased to be real r&#38;d is an example of risk-averse behavior. Investing in new projects is risk-taking. Spending is risk-taking, or even risk-seeking. Saving is risk-averse.</description>
		<content:encoded><![CDATA[<p>re: spending in restaurant has nothing to do with $75/year utility bills:<br />
First point: you&#8217;re talking about less than 0.1% of your total annual expenses. Do you really need to optimize at that level ?<br />
Second point: the more efficient product costs more. Your example is unrealistic, but, say, the new product for $150 saves you $10/year. If you can use your money well, the $50 you save this year can bring you much more good than that $10 a year. Especially since it&#8217;s a nice idea to change toasters once in a while. But look at it at an even better perspective: if you have enough money to eat and buy luxury items, just get that toaster for $150, feel that you need more money and go and earn it. Very simple.</p>
<p>re: 2 providers with one of them cheaper:<br />
Clearly the point is not entering the price war - it will bring both the competitors down. A good manager at one of the providers will decide to differentiate somehow - and that&#8217;s where the resources should be going to. Unless the service costs a significant portion of person&#8217;s money flow, the person won&#8217;t really try to save $5 and get a worse service. The thought-flow goes something like this: &#8220;Hmm.. this one costs $X, that one costs $X+5, but the second provider gives free Y and Z, and they have nice advertisement campaign, and I get the right to call the clients of the first provider &#8216;cheapskates&#8217;&#8230; sounds like a deal !&#8221;<br />
On the scales of ISP fees, f.e., the money amounts are so small that people don&#8217;t really care about them. It&#8217;s much more of a hassle to them to call the provider and get updated prices and discounts than to pay for the service at last-year rates. And this is the only scale where your &#8220;optimization&#8221; logic really works, as you can&#8217;t bring it into high-end luxury services market.</p>
<p>Re: the startup thing:<br />
You forgot a VERY important element. When opening the startup you probably had a plan about the specific project and how to make it work.<br />
When some r&amp;d provides you a benefit of moving from 10-server requirement to 1-server requirement in the matter of 1 day, that&#8217;s not &#8220;performance optimization&#8221;, that&#8217;s just plain old &#8220;development&#8221;. That should have been planned in your original plan for that startup, and if it wasn&#8217;t - shame on you. But after you&#8217;ve done that, you became profitable, and the next month of optimization brings you single-digit percentage improvements - why bother focusing on it ? Leave some developers to optimize it slowly and support it. Move most of your force to new and exciting projects. You won&#8217;t believe how much developers like new code !<br />
And if you didn&#8217;t become profitable, and just planning to become such after some magic &#8220;performance optimization&#8221; fairy helps you, then your startup was planned badly and your investors should be very sad.</p>
<p>At any scale you take in a risk-taking world - the one that exists right now - risk-averse behavior will always lose in the long-term against risk-taking one. Performance optimization when the law of diminishing returns has kicked in, and it ceased to be real r&amp;d is an example of risk-averse behavior. Investing in new projects is risk-taking. Spending is risk-taking, or even risk-seeking. Saving is risk-averse.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Ilya Sher</title>
		<link>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-43</link>
		<pubDate>Sun, 01 Nov 2009 14:36:34 +0000</pubDate>
		<guid>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-43</guid>
					<description>It looks like you completely ignore the weights. I'll take it to the extreme. You are a startup company and you have the following two options. 3 days of development and then you need 10 servers or 4 days of development and then you need 1 server just for your POC and first 100 users. You have enough money only for the latter. Would you go for the 3 days and look for another investment round just to complete your POC? This is not a real case, it's just to show that it's not always the same answer and things do have weights.

Don't you think there are cases when extra development is justified to save later on operational costs?

&gt; you won’t gain much benefit when you need to scrap the software
If the decision was correct, the extra development would pay itself off till then.

&gt; “Don’t save. Earn”
If you are talking about a company, of course they should decide whether their resources can be put to better use (earning on something else amount bigger than X) than saving X money. If you are talking about a person that's completely private issue and the person should decide on that. I'm pretty sure that most people, given two equal products that only differ in cost, would generally prefer the cheaper and not to work extra hours for the expensive. Average Joe have to work for the money and he does not care about the amount of money in circulation (not until he's robbed by inflation).
One cent was just an example. Given 2 different providers, offering exactly the same service, having exactly the same market position, and one is a bit cheaper.
Do you think people would prefer to pay less for the Internet? ... or work more?

&gt; spending is a good merit. Saving is not.
I totally disagree. It looks like something big corporations would like us to believe.

&gt; as long as a human needs to understand the protocol
Again, you completely ignore the weights. It is important for humans to understand the protocol but in some cases there are more important things. It looks like you have the same answer for all cases.

&gt; Oh no, you’re saving electricity to save money ?  Why not save on food instead ? Or on luxury items ?
Would you go for (A) $50 toaster + $100 bill per year or (B) $75 toaster + $75 bill per year ? Do you think the answer is somehow affected by the fact that you would like to visit a restaurant tonight? For me, that's completely independent.

&gt; How does google try to save on power, do tell ?
I'll Google on it later.

&gt; And considering most of the equipment is on all the time anyway, how does making it sit idle help ?
It's not busy vs idle, it's less servers vs more servers for the same work.

&gt; The way you can help save electricity is by making power-efficient hardware and investing in that is good for general population too.
I'm sure people are working on this too but that's not my field. Again, it does not have to be this vs more efficient code.

&gt; what would be a better way to spend time: finding new ways to profit, creating new interesting projects, or trying to save opex on existing ones ?
Again you are "global". It depends on each case.

&gt; Of course, if you have factual arguments supporting your point,
I'll have to do some research for that. Thanks for a good idea for another post.

&gt; actual experience at the scale of your focus, bring it on
No. Do you?

&gt; re: cost “definition”
&gt; here you enter a cycle
I don't see any cycle here.

&gt; So, unless you get drastic savings (&gt;20%) with very small investment, you should go on and do something new.
Again, you are very "global". What if I could save 1%, which would be $3K per month, using 1 day of 1 developer which is currently working on another non-critical task that would bring the company $3K a year?

It looks like I should research and write on large-scale operational costs savings.</description>
		<content:encoded><![CDATA[<p>It looks like you completely ignore the weights. I&#8217;ll take it to the extreme. You are a startup company and you have the following two options. 3 days of development and then you need 10 servers or 4 days of development and then you need 1 server just for your POC and first 100 users. You have enough money only for the latter. Would you go for the 3 days and look for another investment round just to complete your POC? This is not a real case, it&#8217;s just to show that it&#8217;s not always the same answer and things do have weights.</p>
<p>Don&#8217;t you think there are cases when extra development is justified to save later on operational costs?</p>
<p>> you won’t gain much benefit when you need to scrap the software<br />
If the decision was correct, the extra development would pay itself off till then.</p>
<p>> “Don’t save. Earn”<br />
If you are talking about a company, of course they should decide whether their resources can be put to better use (earning on something else amount bigger than X) than saving X money. If you are talking about a person that&#8217;s completely private issue and the person should decide on that. I&#8217;m pretty sure that most people, given two equal products that only differ in cost, would generally prefer the cheaper and not to work extra hours for the expensive. Average Joe have to work for the money and he does not care about the amount of money in circulation (not until he&#8217;s robbed by inflation).<br />
One cent was just an example. Given 2 different providers, offering exactly the same service, having exactly the same market position, and one is a bit cheaper.<br />
Do you think people would prefer to pay less for the Internet? &#8230; or work more?</p>
<p>> spending is a good merit. Saving is not.<br />
I totally disagree. It looks like something big corporations would like us to believe.</p>
<p>> as long as a human needs to understand the protocol<br />
Again, you completely ignore the weights. It is important for humans to understand the protocol but in some cases there are more important things. It looks like you have the same answer for all cases.</p>
<p>> Oh no, you’re saving electricity to save money ?  Why not save on food instead ? Or on luxury items ?<br />
Would you go for (A) $50 toaster + $100 bill per year or (B) $75 toaster + $75 bill per year ? Do you think the answer is somehow affected by the fact that you would like to visit a restaurant tonight? For me, that&#8217;s completely independent.</p>
<p>> How does google try to save on power, do tell ?<br />
I&#8217;ll Google on it later.</p>
<p>> And considering most of the equipment is on all the time anyway, how does making it sit idle help ?<br />
It&#8217;s not busy vs idle, it&#8217;s less servers vs more servers for the same work.</p>
<p>> The way you can help save electricity is by making power-efficient hardware and investing in that is good for general population too.<br />
I&#8217;m sure people are working on this too but that&#8217;s not my field. Again, it does not have to be this vs more efficient code.</p>
<p>> what would be a better way to spend time: finding new ways to profit, creating new interesting projects, or trying to save opex on existing ones ?<br />
Again you are &#8220;global&#8221;. It depends on each case.</p>
<p>> Of course, if you have factual arguments supporting your point,<br />
I&#8217;ll have to do some research for that. Thanks for a good idea for another post.</p>
<p>> actual experience at the scale of your focus, bring it on<br />
No. Do you?</p>
<p>> re: cost “definition”<br />
> here you enter a cycle<br />
I don&#8217;t see any cycle here.</p>
<p>> So, unless you get drastic savings (>20%) with very small investment, you should go on and do something new.<br />
Again, you are very &#8220;global&#8221;. What if I could save 1%, which would be $3K per month, using 1 day of 1 developer which is currently working on another non-critical task that would bring the company $3K a year?</p>
<p>It looks like I should research and write on large-scale operational costs savings.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: anon</title>
		<link>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-42</link>
		<pubDate>Sun, 01 Nov 2009 11:58:04 +0000</pubDate>
		<guid>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-42</guid>
					<description>re: opex focus
Operational expenses are generally planned before you use them. That means that you already have enough money or other resources to cover your opex. So, unless you get drastic savings (&#62;20%) with very small investment, you should go on and do something new. Why delve in the past, when it's already working quite well ? Leave some of your profits for internal updates, gaining that 1% efficiency per month and supporting the thing. 
Go on and focus on something else.</description>
		<content:encoded><![CDATA[<p>re: opex focus<br />
Operational expenses are generally planned before you use them. That means that you already have enough money or other resources to cover your opex. So, unless you get drastic savings (&gt;20%) with very small investment, you should go on and do something new. Why delve in the past, when it&#8217;s already working quite well ? Leave some of your profits for internal updates, gaining that 1% efficiency per month and supporting the thing.<br />
Go on and focus on something else.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: anon</title>
		<link>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-41</link>
		<pubDate>Sun, 01 Nov 2009 11:46:16 +0000</pubDate>
		<guid>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-41</guid>
					<description>re: buying hardward "brute-force" instead of software "wisdom" -
It all depends on whether the only problem that needs fixing is your software itself. F.e. the hardware would also be useful for other software, and it will also be quite easy to value in case you wanted to sell it. Not so easy with software, especially if you're making it mostly for your own needs. Thus, your investment in software is very nice - it's generally a very cool thing to do - but is only more "efficient" when looked at from a very narrow point of view. Other than experience gained from the process by your developers, you won't gain much benefit when you need to scrap the software. The new hardware, on the other hand, would provide you gains running both new and old versions of whatever you wanted to run.

Since there is not real scarcity of resources (including money) it's only a matter of personal preference which path to choose. The choice doesn't really matter in face of the astounding amounts of value wasted every second. Not talking even about wars etc, just look at art, or music.

Now you can ask why is money "non-scarce" ? Just look at the amount of money in circulation (trillions) compared to the amount of real money backed by something tangible (billions at most). Money is not scarce. It's not a zero-sum game - most banks don't have any financial ratio limits, other than those set arbitrarily by the oversight committees, and thus influenced by personal "friendships" which are sometimes called "corruption" by the masses.

re: everyone using the 'net saving 1 cent per month:
They don't really care. You wouldn't really care to save 1 cent per month. And nobody sane would. And that's because there is a much bigger amount of money _created_ every month. You don't need to _save_.
As a general idea, go with this: "Don't save. Earn". Which also means that spending is a good merit. Saving is not.

re: cpu-limited communication
Computers communicate using text because humans operate them.
If aliens were operating computers they might've brought some other paradigms. But as long as a human needs to understand the protocol, the human needs text. Whether it's a binary protocol with a text manual, or a text protocol from the start doesn't really matter. The manuals are generally hard to read and decipher, so text protocol is a good middle ground.

&#62; Btw, why are you saving electricity ?
Again, saving my money, nothing else.
Oh no, you're saving electricity to save money ?
Why not save on food instead ? Or on luxury items ?
Did you compare your electricity bill to any of other resources you use ?

re: google working on saving electricity
How does google try to save on power, do tell ? By creating more efficient protocols ? And considering most of the equipment is on all the time anyway, how does making it sit idle help ? The way you can help save electricity is by making power-efficient hardware and investing in that is good for general population too. Obviously, Google has enough profits to pay for the electricity bill. And while at it, what would be a better way to spend time: finding new ways to profit, creating new interesting projects, or trying to save opex on existing ones ? Generally the companies that start saving enter the vicious cycle leading to fatalities. Innovative companies spend and earn, they don't save beyond reason.

Of course, if you have factual arguments supporting your point, and actual experience at the scale of your focus, bring it on.

re: cost "definition" 
here you enter a cycle, trying to define "cost" with "money". next thing you should do is define "money" :)</description>
		<content:encoded><![CDATA[<p>re: buying hardward &#8220;brute-force&#8221; instead of software &#8220;wisdom&#8221; -<br />
It all depends on whether the only problem that needs fixing is your software itself. F.e. the hardware would also be useful for other software, and it will also be quite easy to value in case you wanted to sell it. Not so easy with software, especially if you&#8217;re making it mostly for your own needs. Thus, your investment in software is very nice - it&#8217;s generally a very cool thing to do - but is only more &#8220;efficient&#8221; when looked at from a very narrow point of view. Other than experience gained from the process by your developers, you won&#8217;t gain much benefit when you need to scrap the software. The new hardware, on the other hand, would provide you gains running both new and old versions of whatever you wanted to run.</p>
<p>Since there is not real scarcity of resources (including money) it&#8217;s only a matter of personal preference which path to choose. The choice doesn&#8217;t really matter in face of the astounding amounts of value wasted every second. Not talking even about wars etc, just look at art, or music.</p>
<p>Now you can ask why is money &#8220;non-scarce&#8221; ? Just look at the amount of money in circulation (trillions) compared to the amount of real money backed by something tangible (billions at most). Money is not scarce. It&#8217;s not a zero-sum game - most banks don&#8217;t have any financial ratio limits, other than those set arbitrarily by the oversight committees, and thus influenced by personal &#8220;friendships&#8221; which are sometimes called &#8220;corruption&#8221; by the masses.</p>
<p>re: everyone using the &#8216;net saving 1 cent per month:<br />
They don&#8217;t really care. You wouldn&#8217;t really care to save 1 cent per month. And nobody sane would. And that&#8217;s because there is a much bigger amount of money _created_ every month. You don&#8217;t need to _save_.<br />
As a general idea, go with this: &#8220;Don&#8217;t save. Earn&#8221;. Which also means that spending is a good merit. Saving is not.</p>
<p>re: cpu-limited communication<br />
Computers communicate using text because humans operate them.<br />
If aliens were operating computers they might&#8217;ve brought some other paradigms. But as long as a human needs to understand the protocol, the human needs text. Whether it&#8217;s a binary protocol with a text manual, or a text protocol from the start doesn&#8217;t really matter. The manuals are generally hard to read and decipher, so text protocol is a good middle ground.</p>
<p>&gt; Btw, why are you saving electricity ?<br />
Again, saving my money, nothing else.<br />
Oh no, you&#8217;re saving electricity to save money ?<br />
Why not save on food instead ? Or on luxury items ?<br />
Did you compare your electricity bill to any of other resources you use ?</p>
<p>re: google working on saving electricity<br />
How does google try to save on power, do tell ? By creating more efficient protocols ? And considering most of the equipment is on all the time anyway, how does making it sit idle help ? The way you can help save electricity is by making power-efficient hardware and investing in that is good for general population too. Obviously, Google has enough profits to pay for the electricity bill. And while at it, what would be a better way to spend time: finding new ways to profit, creating new interesting projects, or trying to save opex on existing ones ? Generally the companies that start saving enter the vicious cycle leading to fatalities. Innovative companies spend and earn, they don&#8217;t save beyond reason.</p>
<p>Of course, if you have factual arguments supporting your point, and actual experience at the scale of your focus, bring it on.</p>
<p>re: cost &#8220;definition&#8221;<br />
here you enter a cycle, trying to define &#8220;cost&#8221; with &#8220;money&#8221;. next thing you should do is define &#8220;money&#8221; :)
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: Ilya Sher</title>
		<link>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-40</link>
		<pubDate>Sun, 01 Nov 2009 10:30:17 +0000</pubDate>
		<guid>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-40</guid>
					<description>It looks like you are putting much more weight on easy developing than on operating costs (function of efficiency). Is it cheaper to buy new hardware than spend 1 month of 1 employee to improve efficiency by 1% and reduce the operating costs? It looks like you would go for the hardware anyway.
I argue that it depends on the scale and hence the price. If this 1% reduces the number of servers by 1000, I would go for the developing, because it's cheaper. On the other hand I do use scripting languages as opposed to C, for example, because that is cheaper in majority of the cases I've seen. 

&gt; Unless you have _real_ reasons to save on some resource,
I'm not trying to save the resources. I'm trying to save my money. Think that everyone using the Internet would save 1 cent per month (if we had better protocols). Isn't this huge pile of money worth working a bit harder on the protocols?

&gt; Just don’t fool yourself that you’re doing that for some kind of economics reasons.
What I would like to happen (I'm not doing anything for that except writing this blog yet) _is_ mostly for economy. I am well aware that most of the programmers do things which are financially wrong. I do it sometimes too, just because it's fun but I do it in my spare time. This is _not_ the case here.

&gt; For a better example, why don’t people talk with more coded messages ?
That's trade-off between "network" (communication time) and CPU (brain usage). It will take too much processing power in our brains. You wouldn't want to wait half a minute for an answer for a simple yes/no question. (You can look up for designed languages, people tried something like this; I don't think any of these languages really took off). On the other hand, why would computers ever "want" to communicate in text-based protocols? It's less efficient in both network and CPU!

&gt; Btw, why are you saving electricity ?
Again, saving my money, nothing else.

&gt; It costs almost nothing compared to human worktime ?
Big "gotcha" is here. It depends on amount of work and savings. Savings largely depend on scale. I bet Google works a _lot_ on saving electricity (equals money here). From my personal experience I can tell that there are lot more cases where hardware and electricity are cheaper then the labor. It's _not_ the case here, not at this scale.

&gt; global warming
Last time I checked, global warming was a fraud to impose world-wide carbon taxes as one more step towards world government.

&gt; definition of “cost” 
... is "amount of money, given up in exchange for something else", which means whatever I pay is the cost whether it's for labor or resources.</description>
		<content:encoded><![CDATA[<p>It looks like you are putting much more weight on easy developing than on operating costs (function of efficiency). Is it cheaper to buy new hardware than spend 1 month of 1 employee to improve efficiency by 1% and reduce the operating costs? It looks like you would go for the hardware anyway.<br />
I argue that it depends on the scale and hence the price. If this 1% reduces the number of servers by 1000, I would go for the developing, because it&#8217;s cheaper. On the other hand I do use scripting languages as opposed to C, for example, because that is cheaper in majority of the cases I&#8217;ve seen. </p>
<p>> Unless you have _real_ reasons to save on some resource,<br />
I&#8217;m not trying to save the resources. I&#8217;m trying to save my money. Think that everyone using the Internet would save 1 cent per month (if we had better protocols). Isn&#8217;t this huge pile of money worth working a bit harder on the protocols?</p>
<p>> Just don’t fool yourself that you’re doing that for some kind of economics reasons.<br />
What I would like to happen (I&#8217;m not doing anything for that except writing this blog yet) _is_ mostly for economy. I am well aware that most of the programmers do things which are financially wrong. I do it sometimes too, just because it&#8217;s fun but I do it in my spare time. This is _not_ the case here.</p>
<p>> For a better example, why don’t people talk with more coded messages ?<br />
That&#8217;s trade-off between &#8220;network&#8221; (communication time) and CPU (brain usage). It will take too much processing power in our brains. You wouldn&#8217;t want to wait half a minute for an answer for a simple yes/no question. (You can look up for designed languages, people tried something like this; I don&#8217;t think any of these languages really took off). On the other hand, why would computers ever &#8220;want&#8221; to communicate in text-based protocols? It&#8217;s less efficient in both network and CPU!</p>
<p>> Btw, why are you saving electricity ?<br />
Again, saving my money, nothing else.</p>
<p>> It costs almost nothing compared to human worktime ?<br />
Big &#8220;gotcha&#8221; is here. It depends on amount of work and savings. Savings largely depend on scale. I bet Google works a _lot_ on saving electricity (equals money here). From my personal experience I can tell that there are lot more cases where hardware and electricity are cheaper then the labor. It&#8217;s _not_ the case here, not at this scale.</p>
<p>> global warming<br />
Last time I checked, global warming was a fraud to impose world-wide carbon taxes as one more step towards world government.</p>
<p>> definition of “cost”<br />
&#8230; is &#8220;amount of money, given up in exchange for something else&#8221;, which means whatever I pay is the cost whether it&#8217;s for labor or resources.
</p>
]]></content:encoded>
				</item>
	<item>
		<title>by: anon</title>
		<link>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-39</link>
		<pubDate>Sun, 01 Nov 2009 03:34:36 +0000</pubDate>
		<guid>http://ilya-sher.org/blog/post/inet-wrong-http/#comment-39</guid>
					<description>Regarding your last 2 points - "real world's share of text based protocols" and "stuck with many text based protocols" - it "might" have something to do with "text" being the most efficient consciously human-comprehensible communication mechanism on earth ? There just isn't any simpler way (well, visualization is even better, but much harder to do) to do communication.
So, anything made in text would be quite easily parseable by a human.
Thus, it all comes to the amount of time to create something that could provide you important data.
For HTTP/SMTP/etc the tool you need can be written in a few lines of code.
Of course, assuming TCP/IP is done by the OS here. If it's not, you will feel all the pain of binary protocols.
If you want _another_ human being to look at, understand, and use your protocol in self-created software, you're better off with something human-comprehensible.
This is why this message is not written in a text file, rar'd and then base64 or uuencoded and pasted here. It would take less space, but at what price ? You would probably know how to deal with it by its headers, but why complicate things ? 
Scarcity is a myth. Unless you have _real_ reasons to save on some resource, it will most often cost you much less to find a way around the scarcity. If your game runs at 20fps and you need 30, yea, go find a good programmer to bring it up. If you feel like it and know what you're doing, and like to deal with that stuff, go on, make him work nights and bring the performance to 100fps (so poor folks with old computers can also play). Just don't fool yourself that you're doing that for some kind of economics reasons, you're doing it as a personal indulgence, which btw is generally quite well known in r&#38;d and elsewhere : perfection should be diagnosed as a proper addiction :)

For a better example, why don't people talk with more coded messages ? Why text ? Is it really that efficient ? (hint: yes, for its purposes, it's very efficient and very descriptive)

Btw, why are you saving electricity ? It costs almost nothing compared to human worktime ? And don't even start about the global warming etc - one live human makes more damage to the environment in a year than a full farm of nice hot servers.

About costs, do you know the definition of "cost" ? The resources don't really _cost_ anything. 10% of what you pay is human labor costs, 90% is markup. The resource doesn't have any inherent cost. The only resource you might pay for is human labor, which is exactly what you're trying to waste to fuel the addiction to perfection. Again, nothing wrong with that, human labor is also not scarce at all, it's just that the assumption that this actually matters is false. There isn't much anything scarce, by human metrics, in this world.</description>
		<content:encoded><![CDATA[<p>Regarding your last 2 points - &#8220;real world&#8217;s share of text based protocols&#8221; and &#8220;stuck with many text based protocols&#8221; - it &#8220;might&#8221; have something to do with &#8220;text&#8221; being the most efficient consciously human-comprehensible communication mechanism on earth ? There just isn&#8217;t any simpler way (well, visualization is even better, but much harder to do) to do communication.<br />
So, anything made in text would be quite easily parseable by a human.<br />
Thus, it all comes to the amount of time to create something that could provide you important data.<br />
For HTTP/SMTP/etc the tool you need can be written in a few lines of code.<br />
Of course, assuming TCP/IP is done by the OS here. If it&#8217;s not, you will feel all the pain of binary protocols.<br />
If you want _another_ human being to look at, understand, and use your protocol in self-created software, you&#8217;re better off with something human-comprehensible.<br />
This is why this message is not written in a text file, rar&#8217;d and then base64 or uuencoded and pasted here. It would take less space, but at what price ? You would probably know how to deal with it by its headers, but why complicate things ?<br />
Scarcity is a myth. Unless you have _real_ reasons to save on some resource, it will most often cost you much less to find a way around the scarcity. If your game runs at 20fps and you need 30, yea, go find a good programmer to bring it up. If you feel like it and know what you&#8217;re doing, and like to deal with that stuff, go on, make him work nights and bring the performance to 100fps (so poor folks with old computers can also play). Just don&#8217;t fool yourself that you&#8217;re doing that for some kind of economics reasons, you&#8217;re doing it as a personal indulgence, which btw is generally quite well known in r&amp;d and elsewhere : perfection should be diagnosed as a proper addiction :)</p>
<p>For a better example, why don&#8217;t people talk with more coded messages ? Why text ? Is it really that efficient ? (hint: yes, for its purposes, it&#8217;s very efficient and very descriptive)</p>
<p>Btw, why are you saving electricity ? It costs almost nothing compared to human worktime ? And don&#8217;t even start about the global warming etc - one live human makes more damage to the environment in a year than a full farm of nice hot servers.</p>
<p>About costs, do you know the definition of &#8220;cost&#8221; ? The resources don&#8217;t really _cost_ anything. 10% of what you pay is human labor costs, 90% is markup. The resource doesn&#8217;t have any inherent cost. The only resource you might pay for is human labor, which is exactly what you&#8217;re trying to waste to fuel the addiction to perfection. Again, nothing wrong with that, human labor is also not scarce at all, it&#8217;s just that the assumption that this actually matters is false. There isn&#8217;t much anything scarce, by human metrics, in this world.
</p>
]]></content:encoded>
				</item>
</channel>
</rss>
