<turbo-stream action="append" target="posts_list"><template>    <div class="postbit" id="8756" data-post-id="8756">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="StefanHoutzager" src="/assets/icons/user-9f439610.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  StefanHoutzager
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Ok ok, I admit that I don’t know anything about lambda, ec2 etc. <img src="https://forum.elixirforum.com/images/emoji/apple/wink.png?v=15" title=":wink:" class="emoji" alt=":wink:" loading="lazy" width="20" height="20"> I’m still a bit confused about the comparison of tps numbers. It will be about the full stack I assume. I thought about the transaction size. Records differ in size, transactions can be on more than one record, etc. What does this number say at all, can you compare the quality of different applications this way? I think not <a href="http://www.neotys.com/blog/how-to-test-application-throughput/" class="inline-onebox" rel="noopener nofollow ugc">How to test application throughput: Keep it real - Tricentis</a><br>
(another quick google result worth reading: <a href="https://www.rackaid.com/blog/performance-benchmarks/" class="inline-onebox" rel="noopener nofollow ugc">Are you Paying Attention to the Wrong Web Site Optimization Metrics?</a>)</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="8756" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/the-sam-state-action-model-pattern-general-discussion-blog-posts-wiki/703/47">Post #46</a>
	                </div>
	            </div>
              <div id="likers-container-8756" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="8756"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #46"></div>
  </section>
</div>
    <div class="postbit" id="8873" data-post-id="8873">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="jdubray" src="/assets/icons/user-9f439610.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  jdubray
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Again lambda is not a good use case for sustained large volumes of transactions. No question about it. The sweet spot is more in the &lt; 10 M requests per months, especially when there are spikes of useage or seasonal traffic. There a lots of “apps” that never even come close to that limit.</p>
<p>When you count the operational aspects and HA deployment, IaaS vs Serverless/PaaS is often a no brainer.</p>
<p>All is a question of tradeoff, I am not sure it’s fair to say you should never use X, in my world, lambda is the first choice, nothing even comes close. At eBay or PayPal, I am sure Lambda comes last.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="8873" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/the-sam-state-action-model-pattern-general-discussion-blog-posts-wiki/703/48">Post #47</a>
	                </div>
	            </div>
              <div id="likers-container-8873" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="8873"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #47"></div>
  </section>
</div>
    <div class="postbit" id="8959" data-post-id="8959">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="jdubray" src="/assets/icons/user-9f439610.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  jdubray
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>I’d like to add this article to the list of relevant articles: <a href="http://queue.acm.org/detail.cfm?id=2611829" rel="noopener nofollow ugc">http://queue.acm.org/detail.cfm?id=2611829</a></p>
<p>The Curse of the Excluded Middle<br>
“Mostly functional” programming does not work.</p>
<p>Erik Meijer</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="8959" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/the-sam-state-action-model-pattern-general-discussion-blog-posts-wiki/703/49">Post #48</a>
	                </div>
	            </div>
              <div id="likers-container-8959" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="8959"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #48"></div>
  </section>
</div>
    <div class="postbit" id="8960" data-post-id="8960">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="StefanHoutzager" src="/assets/icons/user-9f439610.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  StefanHoutzager
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>That’s a good article, but which point do you want to make with it?</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="8960" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/the-sam-state-action-model-pattern-general-discussion-blog-posts-wiki/703/50">Post #49</a>
	                </div>
	            </div>
              <div id="likers-container-8960" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="8960"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #49"></div>
  </section>
</div>
    <div class="postbit" id="8993" data-post-id="8993">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="jdubray" src="/assets/icons/user-9f439610.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  jdubray
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>1/ Direct DOM manipulations are an absolute no-no<br>
2/ immutability buys nothing other than a big performance hit<br>
3/ propose / accept / learn is possibly the safest way to handle side-effects in Front-End architectures (granted not in general)</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="8993" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/the-sam-state-action-model-pattern-general-discussion-blog-posts-wiki/703/51">Post #50</a>
	                </div>
	            </div>
              <div id="likers-container-8993" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="8993"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #50"></div>
  </section>
</div>
    <div class="postbit" id="8997" data-post-id="8997">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="StefanHoutzager" src="/assets/icons/user-9f439610.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  StefanHoutzager
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>?? You leave a lot to guess. As I often experienced. It’s ok for me, I might not be clever enough, you do not have to go in details. I take this explanation also for granted (btw talk to Erik about your conclusion after reading his article that “immutability buys nothing other than a big performance hit”. I’m sure he will reward you with a big smile. And a kick out of his office.).</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="8997" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/the-sam-state-action-model-pattern-general-discussion-blog-posts-wiki/703/52">Post #51</a>
	                </div>
	            </div>
              <div id="likers-container-8997" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="8997"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-standard-post cat-standard-post" title="Post #51"></div>
  </section>
</div>
    <div class="postbit" id="9101" data-post-id="9101">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="jdubray" src="/assets/icons/user-9f439610.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  jdubray
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Well at some point you have to mutate something, making the application state immutable is what buy you nothing in terms of managing mutability. Let’s compare:</p>
<pre><code>var m = new Model();
m.accept(proposal).then(access)
</code></pre>
<p>with:<br>
<code>access(m = accept(m, proposal))</code></p>
<p>what’s the difference? a big malloc?</p>
<p>If X is a problem f(X) is rarely a solution, nor X$, not to mention, new X(). You probably need to dig a bit deeper than putting a big function box on some bad code to make it behave properly.</p>
<p>If you spend some time looking at <a href="http://www.i-programmer.info/news/99-professional/7084-leslie-lamport.html" rel="noopener nofollow ugc">TLA+ / Paxos</a> and make an attempt to make mutation a first class citizen of your programming model, perhaps you’ll understand what I mean, otherwise, it looks like we’ll have to agree to disagree.</p>
<p>That being said, and quite strangely to be frank, <a href="https://channel9.msdn.com/Shows/Going+Deep/E2E-Erik-Meijer-and-Leslie-Lamport-Mathematical-Reasoning-and-Distributed-Systems" rel="noopener nofollow ugc">Erik never talks about TLA+…</a> I saw him mentioning it once in one of his talks telling the audience that he’ll have to learn about it, but he didn’t elaborate in any way.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="9101" data-batch-url="/posts/batch_likers">
                        0
                      </span>
                      <!-- <span class="thread-count js-solved-indicator" title="Marked as solution"></span> -->
	                </div>
	                <div class="go-to-post">
	                  <a title="Go to post" alt="Go to post" href="https://forum.elixirforum.com/t/the-sam-state-action-model-pattern-general-discussion-blog-posts-wiki/703/53">Post #52</a>
	                </div>
	            </div>
              <div id="likers-container-9101" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="9101"
                     data-batch-url="/posts/batch_likers">
                  <div class="post-likers"></div>
                </div>
              </div>
	        </div>
			

    </div>

    <div class="triangle-top-right type-last-post cat-last-post" title="Last post!"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <span class="all-loaded">— All posts loaded —</span>
</div></template></turbo-stream>