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


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

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Well it’s not like I remember them, I wasn’t there! Keep in mind just because I can identify the fact that there’s a problem does <em>not</em> mean I know exactly what the problem is let alone what the solution is. I am <em>definitely</em> not claiming to have found the lost knowledge.</p>
<p>But I know something is wrong because software doesn’t work as well as it used to. To start, go back and read the original Apple Human Interface Guidelines for the Mac. The <em>original</em> Mac, from the 80s. Look at how much care they put into the user experience compared to the average webapp today, and ask yourself how we could have moved so much further <em>backwards</em> in 41 years. It really is just straight up depressing.</p>
<p>Here are a couple of principles that I have tried to embrace and which have (unsurprisingly) given me great trouble with existing tools:</p>
<ul>
<li>
<p><em>The UI should instantly update to reflect complex underlying state without tearing.</em> I tried to do this using LiveView, PubSub, and Postgres, and at this point I think I would say that I mostly failed. I made it pretty far, actually, but the “ugly hacks” slowly start to creep in and that obliterates velocity. I have come to recognize that I was simply abusing these tools; they were not made for this.</p>
<p>On the UI side, LiveView is actually quite decent but deep down post-hooks React’s design is more refined. This is not a difference you are going to perceive when working on “simpler” apps. The lack of composition for a number of key constructs (global <code>id</code>) is problematic and the imperative APIs (<code>JS</code> and <code>stream()</code>) are poison.</p>
<p>On the DB side things are worse. Postgres’s consistency guarantees are a clown fiesta to <em>begin with</em> before you try to graft incremental views onto them. I admire that ElectricSQL is trying, but honestly it might be easier to throw it away.</p>
</li>
<li>
<p><em>Impactful actions should be trivial to undo/redo.</em></p>
<p>Actually I got good results with LiveView here initially, as it is a legitimate stateful UI runtime. Forms and REST could never have gotten me that far. The problem is that the “backend” side of the undo/redo impl (command style) is glued to Ecto/Postgres.</p>
<p>SQL databases are just evil for this stuff. A <em>proper</em> undo/redo implementation requires a level of flexibility that is just not present.</p>
</li>
</ul>
<p>There is more but look at how these two simple goals, which were met by desktop software <em>40 years ago</em>, are enough to bring modern tooling to its knees. Form-based saas violates both of these so thoroughly and so deeply that there is no coming back.</p>
<p>Thankfully React’s design is simple and solid enough that I should have no trouble replicating it, so the frontend is easy. The database is… a bit harder, but I’m making real progress! A new stack will rise.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="377772" data-batch-url="/posts/batch_likers">
                        1
                      </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/elixir-influences-on-javascript-es2025/73240/52">Post #51</a>
	                </div>
	            </div>
              <div id="likers-container-377772" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="377772"
                     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="377773" data-post-id="377773">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="tfwright" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/tfwright/120/20299_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  tfwright
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="dimitarvp" data-post="50" data-topic="73240">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/dimitarvp/48/38664_2.png" class="avatar"> dimitarvp:</div>
<blockquote>
<p>But I would argue those are mostly quantifiable and don’t fall under “art”.</p>
</blockquote>
</aside>
<p>How exactly do you quantify “too long” vs “too short”? 42? “too mixed” or “not mixed enough?”</p>
<p>Some of these things you can <em>make</em> quantifiable if you decide you don’t care that much, and just let credo enforce it. But others, mixing concerns I think is a good example, is going to be a matter of taste that nonetheless needs everyone to put care into and discuss with an open mind.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="377773" 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/elixir-influences-on-javascript-es2025/73240/53">Post #52</a>
	                </div>
	            </div>
              <div id="likers-container-377773" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="377773"
                     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 #52"></div>
  </section>
</div>
    <div class="postbit" id="377774" data-post-id="377774">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="dimitarvp" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/dimitarvp/120/38664_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  dimitarvp
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>That’s why I said “mostly”. I can’t quite quantify them to formulae and recipes. Yet.</p>
<p>They are guidelines to strive towards. I wish I had more free time. Sigh.</p>
<aside class="quote no-group" data-username="tfwright" data-post="53" data-topic="73240">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/tfwright/48/20299_2.png" class="avatar"> tfwright:</div>
<blockquote>
<p>But others, mixing concerns I think is a good example, is going to be a matter of taste that nonetheless needs everyone to put care into and discuss with an open mind.</p>
</blockquote>
</aside>
<p>I suppose I have a problem with the word “taste” in particular. Like <a class="mention" href="/u/garrison" rel="nofollow">@garrison</a> said, we can see something is not quite right and we can make it better. But we can’t quite say <em>what</em> exactly is wrong. That however does not make it a matter of taste, IMO. It makes it an active area of research that is still ongoing.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="377774" 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/elixir-influences-on-javascript-es2025/73240/54">Post #53</a>
	                </div>
	            </div>
              <div id="likers-container-377774" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="377774"
                     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 #53"></div>
  </section>
</div>
    <div class="postbit" id="377775" data-post-id="377775">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="sodapopcan" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sodapopcan/120/34668_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  sodapopcan
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>There is a lot going on here, lol.</p>
<p>While unfortunately generally very unpopular, my answer is always pair programming.</p>
<p>For code style, when you’re writing code together all day long you just being to natural adopt the same style as your team-mates and you can hold each other accountable for things like random acronyms as variable.</p>
<p>As far as the topic developers stagnating which I haven’t commented on yet and won’t bother diving into, it completely eliminates the idea of “junior work,” which means you don’t have to stay away from patterns that “will be difficult to juniors or people new to the language to understand.”  Grab a junior as a pair and work on something easy, then work on something really hard.  Very, <em>very</em> quickly they will no longer be junior.</p>
<hr>
<p>I think the lion’s share of my woes with Elixir would be solved if Elixir made it possible to mark functions as effectful, and calling those functions was only syntactically valid on their own line or at the very end of a pipeline.  It’s a silly dream, though <img src="https://forum.elixirforum.com/images/emoji/apple/upside_down_face.png?v=15" title=":upside_down_face:" class="emoji" alt=":upside_down_face:" loading="lazy" width="20" height="20"></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="377775" data-batch-url="/posts/batch_likers">
                        1
                      </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/elixir-influences-on-javascript-es2025/73240/55">Post #54</a>
	                </div>
	            </div>
              <div id="likers-container-377775" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="377775"
                     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 #54"></div>
  </section>
</div>
    <div class="postbit" id="377777" data-post-id="377777">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="dimitarvp" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/dimitarvp/120/38664_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  dimitarvp
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="sodapopcan" data-post="55" data-topic="73240">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sodapopcan/48/34668_2.png" class="avatar"> sodapopcan:</div>
<blockquote>
<p>While unfortunately generally very unpopular, my answer is always pair programming.</p>
</blockquote>
</aside>
<p>I am ashamed to admit I did not like this for most of my career but started practicing it in the last 2-3 years and love it a lot. How stupid I was. But hey, character development!</p>
<aside class="quote no-group" data-username="sodapopcan" data-post="55" data-topic="73240">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sodapopcan/48/34668_2.png" class="avatar"> sodapopcan:</div>
<blockquote>
<p>I think the lion’s share of my woes with Elixir would be solved if Elixir made it possible to mark functions as effectful</p>
</blockquote>
</aside>
<p>As I keep developing as a programmer, this became my chief grief with all languages that don’t have it. I’ll start looking for ways to home-grow it in my projects.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="377777" data-batch-url="/posts/batch_likers">
                        1
                      </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/elixir-influences-on-javascript-es2025/73240/56">Post #55</a>
	                </div>
	            </div>
              <div id="likers-container-377777" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="377777"
                     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 #55"></div>
  </section>
</div>
    <div class="postbit" id="377778" data-post-id="377778">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="tfwright" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/tfwright/120/20299_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  tfwright
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="dimitarvp" data-post="51" data-topic="73240">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/dimitarvp/48/38664_2.png" class="avatar"> dimitarvp:</div>
<blockquote>
<p>Started reading and already liking it but “this requires taste” makes me roll my eyes.</p>
</blockquote>
</aside>
<p>I certainly agree this is sort of an unfortunate example because the <em>writing</em> here is kind of, a bit much. But if you read the actual principles they follow you can see they are only really trying to enforce some only moderately strict rules, honestly, a lot of which <em>can</em> be quantified. I do agree with <a class="mention" href="/u/garrison" rel="nofollow">@garrison</a> that it’s sad that the general state of development is so poor that having principles at all <em>beyond</em> mere formatting rules is something that is worth bragging about. Although I have my own ideas about the reason for that which have little or nothing to do with the opinions of individual developers or even teams.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="377778" data-batch-url="/posts/batch_likers">
                        1
                      </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/elixir-influences-on-javascript-es2025/73240/57">Post #56</a>
	                </div>
	            </div>
              <div id="likers-container-377778" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="377778"
                     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 #56"></div>
  </section>
</div>
    <div class="postbit" id="377779" data-post-id="377779">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="dimitarvp" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/dimitarvp/120/38664_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  dimitarvp
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="tfwright" data-post="57" data-topic="73240">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/tfwright/48/20299_2.png" class="avatar"> tfwright:</div>
<blockquote>
<p>But if you read the actual principles they follow you can see they are only really trying to enforce some only moderately strict rules, honestly, a lot of which <em>can</em> be quantified.</p>
</blockquote>
</aside>
<p>That’s why I like the article.</p>
<aside class="quote no-group quote-modified" data-username="tfwright" data-post="57" data-topic="73240">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/tfwright/48/20299_2.png" class="avatar"> tfwright:</div>
<blockquote>
<p>It’s sad that the general state of development is so poor that having principles at all <em>beyond</em> mere formatting rules is something that is worth bragging about.</p>
</blockquote>
</aside>
<p>Or they are genius but are pretentious pricks. <img src="https://forum.elixirforum.com/uploads/default/original/2X/6/6c3193d1dd46244da3c8c6f719c9f5e2abdd5ae8.gif?v=15" title=":003:" class="emoji emoji-custom" alt=":003:" loading="lazy" width="20" height="20"></p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="377779" 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/elixir-influences-on-javascript-es2025/73240/58">Post #57</a>
	                </div>
	            </div>
              <div id="likers-container-377779" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="377779"
                     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 #57"></div>
  </section>
</div>
    <div class="postbit" id="377780" data-post-id="377780">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="tfwright" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/tfwright/120/20299_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  tfwright
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>Having worked with both pretentious pricks and people who seem annoyed at even being asked to care, I’ll take the pretension every time (partially because being pretty pretentious myself I try to forgive it in others).</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="377780" data-batch-url="/posts/batch_likers">
                        1
                      </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/elixir-influences-on-javascript-es2025/73240/59">Post #58</a>
	                </div>
	            </div>
              <div id="likers-container-377780" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="377780"
                     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 #58"></div>
  </section>
</div>
    <div class="postbit" id="377781" data-post-id="377781">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="dimitarvp" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/dimitarvp/120/38664_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  dimitarvp
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<p>False dichotomy, why not humble geniuses? <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"> But we started severely digressing. Sorry.</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="377781" 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/elixir-influences-on-javascript-es2025/73240/60">Post #59</a>
	                </div>
	            </div>
              <div id="likers-container-377781" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="377781"
                     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 #59"></div>
  </section>
</div>
    <div class="postbit" id="377782" data-post-id="377782">
  <section>
    <div class="post-wrap">


					<div class="post-header">
		        <div class="user-avatar">
		          <img alt="sodapopcan" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/sodapopcan/120/34668_2.png" width="120" height="120" />
		        </div>
					
						<div class="user-details">
		          <div class="user-name">
		            <h3>
                  sodapopcan
                  </h3>
		          </div>
						
						</div>
					
					</div>

	        <div class="thread-main">
	            <div class="post-body" data-turbo="false">
								<aside class="quote no-group" data-username="dimitarvp" data-post="56" data-topic="73240">
<div class="title">
<div class="quote-controls"></div>
<img alt="" width="24" height="24" src="https://forum.elixirforum.com/user_avatar/forum.elixirforum.com/dimitarvp/48/38664_2.png" class="avatar"> dimitarvp:</div>
<blockquote>
<p>I am ashamed to admit I did not like this for most of my career but started practicing it in the last 2-3 years and love it a lot. How stupid I was. But hey, character development!</p>
</blockquote>
</aside>
<p>I don’t know your full experience but a lot of people don’t like it because they are thrown into it with no guidance.  I worked at a full-on XP and paired every day for 2.5 years and it’s been the highlight of my career.  Of course there were other factors like I lucked out in being placed on a particularly good team where everyone just gelled, but it definitely had an impact because a few people left during that time and the general vibe stayed the same.</p>
<p>We did the more “hardcore” way of one person had to switch off every day, so if a story took three days, the two people who started it weren’t the same two people who finished it.  The whole “Jimmy is the only person has any context on that part of the code” wasn’t a thing.  Any given corner of the codebase had at least three people who pretty intimately familiar with it.  It was great!</p> 
	            </div>

	            <div class="base-line">
	                <div class="thread-counters">
	                    <span class="thread-count count-likes js-likers-trigger" title="Likes" data-post-id="377782" data-batch-url="/posts/batch_likers">
                        1
                      </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/elixir-influences-on-javascript-es2025/73240/61">Post #60</a>
	                </div>
	            </div>
              <div id="likers-container-377782" 
                   class="likers-container"
                   data-first-post="false"
                   data-batch-url="/posts/batch_likers">
                   <div class="likers-placeholder" 
                     data-likers-post-id="377782"
                     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 #60"></div>
  </section>
</div>
</template></turbo-stream><turbo-stream action="replace" target="load-more-container"><template><div id="load-more-container" class="load-more-container">
    <a class="load-more-button" data-turbo-stream="true" href="/topics/73240/load_more?page=7">Load more posts (5 remaining)</a>
</div></template></turbo-stream>