<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>thoughts &amp;mdash; StealthyCoder</title>
    <link>https://stealthycoder.writeas.com/tag:thoughts</link>
    <description>Making code ninjas out of everyone</description>
    <pubDate>Fri, 15 May 2026 08:33:38 +0000</pubDate>
    <item>
      <title>Thriving</title>
      <link>https://stealthycoder.writeas.com/thriving?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[According to my experience I find that there are two simplified environments where people can work in. You will thrive in either one, but never in both. This means you can ask this as a question when starting to work at a new place whether or not they will provide an environment where you will thrive in. The first environment I will describe by what the employees will need to do in order to thrive here. !--more--&#xA;&#xA;This first environment requires that the employees constantly update their managers. Every detail they perform they need to send to their superiors and only then the managers (from now on I will call them overhead in reference to Dilbert) will be convinced that the employees are doing their job and doing actual work. The problem of course lies in the fact that you only have to give the update to the overhead and then all is well in the world. The actual work does not need to be done, as long as you communicated about it. It all boils down to the fact that the overhead does not trust the employees to do the work. So in a constant feedback loop if there is no update that means they are not working and therefore there is a constant positive reinforcement of the negative image. Onward to the next environment. &#xA;&#xA;The other or second environment is one where you do not have to give constant updates to the overhead but instead they inform periodically with the employees about the progress or status. This of course boils down to the fact the overhead trusts their employees to do the work and in a constant feedback loop there is positive reinforcement of the positive image they have of their employees. Every time they ask are you hard at work if the answer is a resounding yes and you show actual progress, will make the overhead happy. If you say yes however your work is not up to par, the overhead will not be happy and can have a normal conversation with the employees. &#xA;&#xA;Now for the statement that you can only thrive in one or the other. If you are of the type to constantly spam your managers you will thrive in the first one, but in the second one you will not. The overhead in the second one will find it annoying that constant updates are being sent and will view it with suspicion even though you might be doing the work. If you are of the type to never send updates to the overhead then in the first environment you will not thrive as they think you are not working but in the second the overhead will constantly get positive reinforced image of you as a hard worker. So far I have found that either you do the work and not inform whoever is your superior or you do not actually do a lot of work but you communicate a lot about it. &#xA;&#xA;For me personally I cannot thrive in the first environment. I just sit down and do the work and I expect everyone around me in the company to do the same. We are all there to do our job and that is what I assume everyone is doing. If I find out someone is not doing their job it is quite simple, you are off the team. In contrast if you are doing your job I am very happy because I get that image constantly confirmed. I think it all has to do with trust and your outlook on work ethics of other people. Also for the couple of times there is not that much progress being made or I find that someone is starting to become complacent, then you can have a normal conversation built upon the experience that that is not the norm. It is easier to spot when things are difficult as well. As you can detect it quite easily by seeing that progress is slower than usual for example. In the first the updates about higher workload and pressure generally go unnoticed in the big pile of status updates and it is more difficult to act upon it.&#xA;&#xA;\ For those few instances, hardly ever. &#xA;&#xA;#devlife #thoughts]]&gt;</description>
      <content:encoded><![CDATA[<p>According to my experience I find that there are two simplified environments where people can work in. You will thrive in either one, but never* in both. This means you can ask this as a question when starting to work at a new place whether or not they will provide an environment where you will thrive in. The first environment I will describe by what the employees will need to do in order to thrive here. </p>

<p>This first environment requires that the employees constantly update their managers. Every detail they perform they need to send to their superiors and only then the managers (from now on I will call them overhead in reference to Dilbert) will be convinced that the employees are doing their job and doing actual work. The problem of course lies in the fact that you only have to give the update to the overhead and then all is well in the world. The actual work does not need to be done, as long as you communicated about it. It all boils down to the fact that the overhead does not trust the employees to do the work. So in a constant feedback loop if there is no update that means they are not working and therefore there is a constant positive reinforcement of the negative image. Onward to the next environment.</p>

<p>The other or second environment is one where you do not have to give constant updates to the overhead but instead they inform periodically with the employees about the progress or status. This of course boils down to the fact the overhead trusts their employees to do the work and in a constant feedback loop there is positive reinforcement of the positive image they have of their employees. Every time they ask are you hard at work if the answer is a resounding yes and you show actual progress, will make the overhead happy. If you say yes however your work is not up to par, the overhead will not be happy and can have a normal conversation with the employees.</p>

<p>Now for the statement that you can only thrive in one or the other. If you are of the type to constantly spam your managers you will thrive in the first one, but in the second one you will not. The overhead in the second one will find it annoying that constant updates are being sent and will view it with suspicion even though you might be doing the work. If you are of the type to never send updates to the overhead then in the first environment you will not thrive as they think you are not working but in the second the overhead will constantly get positive reinforced image of you as a hard worker. So far I have found that either you do the work and not inform whoever is your superior or you do not actually do a lot of work but you communicate a lot about it.</p>

<p>For me personally I cannot thrive in the first environment. I just sit down and do the work and I expect everyone around me in the company to do the same. We are all there to do our job and that is what I assume everyone is doing. If I find out someone is not doing their job it is quite simple, you are off the team. In contrast if you are doing your job I am very happy because I get that image constantly confirmed. I think it all has to do with trust and your outlook on work ethics of other people. Also for the couple of times there is not that much progress being made or I find that someone is starting to become complacent, then you can have a normal conversation built upon the experience that that is not the norm. It is easier to spot when things are difficult as well. As you can detect it quite easily by seeing that progress is slower than usual for example. In the first the updates about higher workload and pressure generally go unnoticed in the big pile of status updates and it is more difficult to act upon it.</p>

<p>* For those few instances, hardly ever.</p>

<p><a href="https://stealthycoder.writeas.com/tag:devlife" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">devlife</span></a> <a href="https://stealthycoder.writeas.com/tag:thoughts" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">thoughts</span></a></p>
]]></content:encoded>
      <guid>https://stealthycoder.writeas.com/thriving</guid>
      <pubDate>Sat, 17 Nov 2018 17:22:57 +0000</pubDate>
    </item>
    <item>
      <title>What&#39;s in a name?</title>
      <link>https://stealthycoder.writeas.com/whats-in-a-name?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[Over the course of years I have met my fair share of professionals with all kinds of job titles. To the cute and cuddly chief happiness officer to the outright weird evangelist of something. Then there are titles that get created and sold to you with the premise that you need them. I am looking at you growth hackers. !--more--&#xA;&#xA;In our line of work, being the ones who code and run digital applications, there was a time where you would call yourself software developer. Or developer in general. Then came a period where if you called yourself a developer but not an engineer you were thought of as inferior. &#xA;&#xA;Somehow the name developer was someone who could not think of creative solutions but only execute grunt work. Now there were also prefixes in place or adjectives like backend, frontend or language of choice. That was eventually followed up by full stack, which itself underwent some change in its meaning.&#xA;&#xA;First it was you could do backend and frontend. Then backend, frontend and database. Then backend, frontend, database and cloud. Now I am not sure.  &#xA;&#xA;You see I am not certain what to call myself anymore in this day and age. Also when did that become a problem? Not knowing what to name people who do certain jobs because the tasks they perform become more diverse. Do other fields suffer from this as well, I wonder. &#xA;&#xA;What I do know is one thing. &#xA;&#xA;We are digital craftsmen. &#xA;&#xA;thoughts]]&gt;</description>
      <content:encoded><![CDATA[<p>Over the course of years I have met my fair share of professionals with all kinds of job titles. To the cute and cuddly chief happiness officer to the outright weird evangelist of something. Then there are titles that get created and sold to you with the premise that you need them. I am looking at you growth hackers. </p>

<p>In our line of work, being the ones who code and run digital applications, there was a time where you would call yourself software developer. Or developer in general. Then came a period where if you called yourself a developer but not an engineer you were thought of as inferior.</p>

<p>Somehow the name developer was someone who could not think of creative solutions but only execute grunt work. Now there were also prefixes in place or adjectives like backend, frontend or language of choice. That was eventually followed up by full stack, which itself underwent some change in its meaning.</p>

<p>First it was you could do backend and frontend. Then backend, frontend and database. Then backend, frontend, database and cloud. Now I am not sure.</p>

<p>You see I am not certain what to call myself anymore in this day and age. Also when did that become a problem? Not knowing what to name people who do certain jobs because the tasks they perform become more diverse. Do other fields suffer from this as well, I wonder.</p>

<p>What I do know is one thing.</p>

<p>We are digital craftsmen.</p>

<p><a href="https://stealthycoder.writeas.com/tag:thoughts" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">thoughts</span></a></p>
]]></content:encoded>
      <guid>https://stealthycoder.writeas.com/whats-in-a-name</guid>
      <pubDate>Thu, 22 Nov 2018 20:12:43 +0000</pubDate>
    </item>
    <item>
      <title>Being diligent</title>
      <link>https://stealthycoder.writeas.com/being-diligent?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[I ended the last post with stating we are digital craftsmen. All of us who create something in the digital space, from designers to applications to hardware engineers, we all are digital craftsmen. We also need to protect that state. Just like in the years of yore the craftsmen could not be hurried or pressured into making things faster. Whatever was being made was created at the rate it needed to be created at. Definitely this should be put back into place and enforced by us digital craftsmen. !--more--&#xA;&#xA;Now the system of craftsmen and guilds is very old indeed, yet it holds a nice good structure and flow to it that draws me to it. The guild is overarching all that fall within the same category of craft. In yore it was all smiths were together or all barrel makers. To differentiate now it could be on language or on skill or both. I do not see that you could not join two guilds, the one of Java and of Python for example. &#xA;&#xA;Then all craftsmen join the guild and apprentices can find a craftsmen that will teach them. So they become journeyman and can transition into becoming a craftsmen themselves through hard work. That means the skills can be honed and mastered.  &#xA;&#xA;Also in this day and age I must say I do not solely use these suffixes to mean male humanoids. All humanoids fall in this category. &#xA;&#xA;This path of starting out with no skills is also lost in today&#39;s shopping for labour. They demand only people that have the skills already and experience of course. As if you learn that in academic environments. &#xA;&#xA;In addition to all of this the core is that craftsmen are passionate about their craft and protective as well. They want to create the best, most beautiful and most durable long lasting product there is. That entails that they need to experiment and do things just for the love of the craft. We need freedom to roam around and do things solely for the sake of experimentation and experience gain as well as knowledge gain. The frontier aspect is lost, the exploration of new technologies is only done by academics in a scientific manner.&#xA;&#xA;I want to propose a new guild at the same time. A guild that will all be about: &#xA;Smell the roses coding&#xA;Coding can be substituted for any other craft. &#xA;&#xA;It means to just happily enjoy the craft you are doing without worrying too much about the consequences. &#xA;&#xA;Let me know if you want to join the guild, and if you have a good name for it. &#xA;&#xA;thoughts]]&gt;</description>
      <content:encoded><![CDATA[<p>I ended the last post with stating we are digital craftsmen. All of us who create something in the digital space, from designers to applications to hardware engineers, we all are digital craftsmen. We also need to protect that state. Just like in the years of yore the craftsmen could not be hurried or pressured into making things faster. Whatever was being made was created at the rate it needed to be created at. Definitely this should be put back into place and enforced by us digital craftsmen. </p>

<p>Now the system of craftsmen and guilds is very old indeed, yet it holds a nice good structure and flow to it that draws me to it. The guild is overarching all that fall within the same category of craft. In yore it was all smiths were together or all barrel makers. To differentiate now it could be on language or on skill or both. I do not see that you could not join two guilds, the one of Java and of Python for example.</p>

<p>Then all craftsmen join the guild and apprentices can find a craftsmen that will teach them. So they become journeyman and can transition into becoming a craftsmen themselves through hard work. That means the skills can be honed and mastered.</p>

<p>Also in this day and age I must say I do not solely use these suffixes to mean male humanoids. All humanoids fall in this category.</p>

<p>This path of starting out with no skills is also lost in today&#39;s shopping for labour. They demand only people that have the skills already and experience of course. As if you learn that in academic environments.</p>

<p>In addition to all of this the core is that craftsmen are passionate about their craft and protective as well. They want to create the best, most beautiful and most durable long lasting product there is. That entails that they need to experiment and do things just for the love of the craft. We need freedom to roam around and do things solely for the sake of experimentation and experience gain as well as knowledge gain. The frontier aspect is lost, the exploration of new technologies is only done by academics in a scientific manner.</p>

<p>I want to propose a new guild at the same time. A guild that will all be about:
<em>Smell the roses coding</em>
Coding can be substituted for any other craft.</p>

<p>It means to just happily enjoy the craft you are doing without worrying too much about the consequences.</p>

<p>Let me know if you want to join the guild, and if you have a good name for it.</p>

<p><a href="https://stealthycoder.writeas.com/tag:thoughts" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">thoughts</span></a></p>
]]></content:encoded>
      <guid>https://stealthycoder.writeas.com/being-diligent</guid>
      <pubDate>Sun, 25 Nov 2018 10:34:37 +0000</pubDate>
    </item>
    <item>
      <title>Structure allows for creativity</title>
      <link>https://stealthycoder.writeas.com/structure-allows-for-creativity?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[One of the arguments I have heard numerous times is that creativity or art flourishes when it is basking in a pool of total freedom. I quite often have found that a small set of limitations actually improves creativity. After all&#xA;&#xA;  necessity is the mother of invention. &#xA;!--more--&#xA;I remember quite clearly my days of doing support and not having full access to the source code or the ability to have the customer to upgrade to newer version that I had to think of creative solutions within a very tight bordered off environment. Now of course this is a very limited environment with constricting constraints. Nowadays I have total freedom and yet I put on myself a set of limitations to narrow my limitless field of choices or to come up with a good solution. For example I might say I want the least complex application or the least amount of dependencies or the most ease of use to deploy so non technical personnel can safely deploy. I might place a framework or language constraint. I have to use this framework or language no matter how difficult. &#xA;&#xA;Another way to at least have some structure is in the repository itself. If you have a well defined structure there your mind is free from organisation and scaffolding and can focus on innovative and creative implementations.&#xA;&#xA;So tips on good structure are that you bundle all your scripts according to language each in their folder with . \extension\ . For example all Python scripts in .py and shell scripts in .sh. &#xA;Get all docker, you are using docker right??, related stuff inside docker folder. Then all documentation in docs.&#xA;If you have frontend and backend code split them as well. Maybe have a folder for tooling as well called cli for example. Use a proper Continuous Integration tool as well. &#xA;&#xA;For databases please use a .sql folder containing anonymised seed data. That way onboarding is a breeze.&#xA;&#xA;These folders make it easy to maintain your local setup and therefore remote setup and therefore more room to code. &#xA;&#xA;thoughts]]&gt;</description>
      <content:encoded><![CDATA[<p>One of the arguments I have heard numerous times is that creativity or art flourishes when it is basking in a pool of total freedom. I quite often have found that a small set of limitations actually improves creativity. After all</p>

<blockquote><p>necessity is the mother of invention.

I remember quite clearly my days of doing support and not having full access to the source code or the ability to have the customer to upgrade to newer version that I had to think of creative solutions within a very tight bordered off environment. Now of course this is a very limited environment with constricting constraints. Nowadays I have total freedom and yet I put on myself a set of limitations to narrow my limitless field of choices or to come up with a good solution. For example I might say I want the least complex application or the least amount of dependencies or the most ease of use to deploy so non technical personnel can safely deploy. I might place a framework or language constraint. I have to use this framework or language no matter how difficult.</p></blockquote>

<p>Another way to at least have some structure is in the repository itself. If you have a well defined structure there your mind is free from organisation and scaffolding and can focus on innovative and creative implementations.</p>

<p>So tips on good structure are that you bundle all your scripts according to language each in their folder with . &lt;extension&gt; . For example all Python scripts in <code>.py</code> and shell scripts in <code>.sh</code>.
Get all docker, you are using docker right??, related stuff inside <code>docker</code> folder. Then all documentation in <code>docs</code>.
If you have frontend and backend code split them as well. Maybe have a folder for tooling as well called <code>cli</code> for example. Use a proper Continuous Integration tool as well.</p>

<p>For databases please use a <code>.sql</code> folder containing <strong>anonymised</strong> seed data. That way onboarding is a breeze.</p>

<p>These folders make it easy to maintain your local setup and therefore remote setup and therefore more room to code.</p>

<p><a href="https://stealthycoder.writeas.com/tag:thoughts" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">thoughts</span></a></p>
]]></content:encoded>
      <guid>https://stealthycoder.writeas.com/structure-allows-for-creativity</guid>
      <pubDate>Tue, 18 Dec 2018 18:32:58 +0000</pubDate>
    </item>
    <item>
      <title>Validating an e-mail address</title>
      <link>https://stealthycoder.writeas.com/validating-an-e-mail-address?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[So this post will be short and sweet and filled with nice tech on regexes or regular expressions. Regex is a language on its own and it serves to live as a benefit to parse complicated strings and make it so it is easy for us developers to validate strings or to extract relevant information from it. !--more--&#xA;&#xA;  You have a problem. You use regex to solve it. Now you have two problems. &#xA;&#xA;What is an e-mail address? Is there a specification on how it is supposed to be formed? Indeed there is. There are a couple of them but in general these matter:&#xA;&#xA;RFC822&#xA;RFC6531&#xA;&#xA;RFCs are made by us engineers and are validated and refined by a group of individuals who know their stuff. So these officially state what a e-mail address is supposed to look like and in general you can state the following:&#xA;&#xA;\some characters up to 64 in length\@\some characters up to 255 in length\ and total is not allowed over 256 characters in length. Which means our regular expression does not need to be 3.7k. It simply needs to be the following:&#xA;(.{1,64}@.{1,255}){1,256}&#xA;&#xA;What does it mean though?&#xA;So to break it down step by step. &#xA;The . means any character except a newline character and newline is not allowed in the email addresses&#xA;The {1,64} means one to 64 characters&#xA;The @ means a literal @ character&#xA;The () captures the entire first segment and makes sure you do not overstep the total of 256 limit. &#xA;&#xA;Now a domain can or can not contain multiple . characters so in this case it is fine. This will literally make all e-mails that are valid ok. Is there a caveat? Yes there is. The caveat is this is too loose. There are rules on when to use spacing and when to not use it and you cannot have an unclosed &#34; character for example. In general this regex will solve 99% of the cases out there though I feel. &#xA;&#xA;thoughts]]&gt;</description>
      <content:encoded><![CDATA[<p>So this post will be short and sweet and filled with nice tech on regexes or regular expressions. Regex is a language on its own and it serves to live as a benefit to parse complicated strings and make it so it is easy for us developers to validate strings or to extract relevant information from it. </p>

<blockquote><p>You have a problem. You use regex to solve it. Now you have two problems.</p></blockquote>

<p>What is an e-mail address? Is there a specification on how it is supposed to be formed? Indeed there is. There are a couple of them but in general these matter:</p>
<ul><li><a href="http://tools.ietf.org/html/rfc822#section-6.1" rel="nofollow">RFC822</a></li>
<li><a href="https://tools.ietf.org/html/rfc6531" rel="nofollow">RFC6531</a></li></ul>

<p>RFCs are made by us engineers and are validated and refined by a group of individuals who know their stuff. So these officially state what a e-mail address is supposed to look like and in general you can state the following:</p>

<p><em>&lt;some characters up to 64 in length&gt;@&lt;some characters up to 255 in length&gt;</em> and total is not allowed over 256 characters in length. Which means our regular expression does not need to be <a href="https://code.iamcal.com/php/rfc822/full_regexp.txt" rel="nofollow">3.7k</a>. It simply needs to be the following:
<code>(.{1,64}@.{1,255}){1,256}</code></p>

<h2 id="what-does-it-mean-though" id="what-does-it-mean-though">What does it mean though?</h2>

<p>So to break it down step by step.
1. The <em>.</em> means any character except a newline character and newline is not allowed in the email addresses
2. The {1,64} means one to 64 characters
3. The @ means a literal @ character
4. The () captures the entire first segment and makes sure you do not overstep the total of 256 limit.</p>

<p>Now a domain can or can not contain multiple <em>.</em> characters so in this case it is fine. This will literally make all e-mails that are valid ok. Is there a caveat? Yes there is. The caveat is this is too loose. There are rules on when to use spacing and when to not use it and you cannot have an unclosed “ character for example. In general this regex will solve 99% of the cases out there though I feel.</p>

<p><a href="https://stealthycoder.writeas.com/tag:thoughts" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">thoughts</span></a></p>
]]></content:encoded>
      <guid>https://stealthycoder.writeas.com/validating-an-e-mail-address</guid>
      <pubDate>Fri, 04 Jan 2019 17:17:36 +0000</pubDate>
    </item>
    <item>
      <title>Philosophising on infinity</title>
      <link>https://stealthycoder.writeas.com/philosophising-on-infinity?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[So that is quite the abstract thought immediately straight out the gate. How can someone fathom what infinity is, and therefore be able to reason about it? I will detour into two sections, one religious and one pseudo scientific. In a future post I will tackle a more spiritual one. !--more--&#xA;&#xA;Heaven === Hell&#xA;So that is quite the bold statement, feathers are being ruffled and heels are being dug in. The churning in your inner sanctum begins and you feel uneasy. Ok now that that is out of the way. Breathe in and out couple of times and continue on reading. Please?&#xA;&#xA;Let us assume there is a heaven and a hell. Let us also assume they are not bound to a religion but rather they symbolise the states you will be in after you die. In the first you are eternally blissful and the second eternally tormented. Also eternally is equivalent to infinity. &#xA;&#xA;What does it mean to be in any state for eternity? Let us call heaven +Infinity and hell -Infinity or because I am lazy +I and -I. Another question based on +I or -I could be directional. Would it matter if you walked forever left or right inside empty space?  Or not empty space, right has a never ending corridor that is purple and left has a never ending golden corridor. Would it matter if you were surrounded by purple for the rest of time or does everything lose its meaning because of infinity? The same applies for heaven and hell. Right now you know  probably pain and hopefully happiness. If you had to choose knowing both exist you choose for happiness quite easily. This keeping in mind that you have retained your sanity as determined by a non partisan third party system that is objectively fair and just. If you only know pain and happiness does not exist it loses its meaning. Especially over the course of eternity. I hope you can still follow. &#xA;&#xA;Basically any action repeated ad infinitum loses meaning. Also anything that loses the dichotomy it currently is  in becomes meaningless. It holds meaning because the outcome should matter. Which takes me into the next segment. &#xA;&#xA;Multiverse&#xA;In actual science there exists the multiverse and in pseudo science there exists the notion that there are infinitily many versions of yourself doing all the possible actions and decisions and you are only experiencing one specific path. &#xA;&#xA;This means life just became meaningless. Whatever you choose to do, this reality is only one of an infinite number of possibilities. Therefore there is no blame, no consequence and no outcome. I had this thought prior to seeing Black Mirrors Bendersnatch episode. They arrive at the same conclusion there. &#xA;&#xA;Please have meaning in life by doing what you love thoughtfully and with care.  &#xA;&#xA;thoughts]]&gt;</description>
      <content:encoded><![CDATA[<p>So that is quite the abstract thought immediately straight out the gate. How can someone fathom what infinity is, and therefore be able to reason about it? I will detour into two sections, one religious and one pseudo scientific. In a future post I will tackle a more spiritual one. </p>

<h2 id="heaven-hell" id="heaven-hell">Heaven === Hell</h2>

<p>So that is quite the bold statement, feathers are being ruffled and heels are being dug in. The churning in your inner sanctum begins and you feel uneasy. Ok now that that is out of the way. Breathe in and out couple of times and continue on reading. Please?</p>

<p>Let us assume there is a heaven and a hell. Let us also assume they are not bound to a religion but rather they symbolise the states you will be in after you die. In the first you are eternally blissful and the second eternally tormented. Also eternally is equivalent to infinity.</p>

<p>What does it mean to be in any state for eternity? Let us call heaven +Infinity and hell -Infinity or because I am lazy +I and -I. Another question based on +I or -I could be directional. Would it matter if you walked forever left or right inside empty space?  Or not empty space, right has a never ending corridor that is purple and left has a never ending golden corridor. Would it matter if you were surrounded by purple for the rest of time or does everything lose its meaning because of infinity? The same applies for heaven and hell. Right now you know  probably pain and hopefully happiness. If you had to choose knowing both exist you choose for happiness quite easily. This keeping in mind that you have retained your sanity as determined by a non partisan third party system that is objectively fair and just. If you only know pain and happiness does not exist it loses its meaning. Especially over the course of eternity. I hope you can still follow.</p>

<p>Basically any action repeated ad infinitum loses meaning. Also anything that loses the dichotomy it currently is  in becomes meaningless. It holds meaning because the outcome should matter. Which takes me into the next segment.</p>

<h2 id="multiverse" id="multiverse">Multiverse</h2>

<p>In actual science there exists the multiverse and in pseudo science there exists the notion that there are infinitily many versions of yourself doing all the possible actions and decisions and you are only experiencing one specific path.</p>

<p>This means life just became meaningless. Whatever you choose to do, this reality is only one of an infinite number of possibilities. Therefore there is no blame, no consequence and no outcome. I had this thought prior to seeing Black Mirrors Bendersnatch episode. They arrive at the same conclusion there.</p>

<p>Please have meaning in life by doing what you love thoughtfully and with care.</p>

<p><a href="https://stealthycoder.writeas.com/tag:thoughts" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">thoughts</span></a></p>
]]></content:encoded>
      <guid>https://stealthycoder.writeas.com/philosophising-on-infinity</guid>
      <pubDate>Tue, 08 Jan 2019 17:54:25 +0000</pubDate>
    </item>
    <item>
      <title>Being human</title>
      <link>https://stealthycoder.writeas.com/being-human?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[One of the more interesting features of us hoomans which makes us humans I suppose is our ability to communicate. &#xA;&#xA;Of course there are other  species that communicate, but none so intricate and complex as ours is.  !--more--&#xA;&#xA;Talking  Communication&#xA;&#xA;So let&#39;s get one thing clear, talking is not the same as communicating. Mute people cannot talk yet communicate quite successfully using sign language. If you do not know sign language both parties can talk, but not communicate. &#xA;&#xA;Talking is also not the same as saying things. You can say a lot using your body, tone and other non verbal aspects. &#xA;&#xA;Talking is easy, communication is difficult and sometimes downright impossible. You need two receivers, two transmitters and the necessary equipment to process the signals and boost the quality.&#xA;&#xA;It turns out everyone has a sort of base model receiver/transmitter but customized it so thoroughly that they all send a slightly different signal and therefore it takes tremendous amount of tweaking to make sure you get quality output from the signal. &#xA;&#xA;For some proverbs that run in my family that I quite like that has to do with communication are the following.&#xA;&#xA;Against a traitor you cannot lock your door &#xA;&#xA;Meaning people who lie, cheat, misinform and/or mislead you there are no physical things you can undertake that will help you protect yourself. For example against a burglar you might close / lock your door. &#xA;&#xA;Another one&#39;s books are difficult to read&#xA;&#xA;Meaning you do not know what goes on in someone else&#39;s headspace. So ask for it. &#xA;&#xA;You cannot battle figments of the imagination&#xA;&#xA;If someone thinks something has happened a certain way and refuses to listen to new information you have a broken signal processor and therefore communication is impossible. &#xA;&#xA;thoughts&#xA;]]&gt;</description>
      <content:encoded><![CDATA[<p>One of the more interesting features of us hoomans which makes us humans I suppose is our ability to communicate.</p>

<p>Of course there are other  species that communicate, but none so intricate and complex as ours is.  </p>

<h2 id="talking-communication" id="talking-communication">Talking &lt;&gt; Communication</h2>

<p>So let&#39;s get one thing clear, talking is not the same as communicating. Mute people cannot talk yet communicate quite successfully using sign language. If you do not know sign language both parties can talk, but not communicate.</p>

<p>Talking is also not the same as saying things. You can say a lot using your body, tone and other non verbal aspects.</p>

<p>Talking is easy, communication is difficult and sometimes downright impossible. You need two receivers, two transmitters and the necessary equipment to process the signals and boost the quality.</p>

<p>It turns out everyone has a sort of base model receiver/transmitter but customized it so thoroughly that they all send a slightly different signal and therefore it takes tremendous amount of tweaking to make sure you get quality output from the signal.</p>

<p>For some proverbs that run in my family that I quite like that has to do with communication are the following.</p>

<p><em>Against a traitor you cannot lock your door</em></p>

<p>Meaning people who lie, cheat, misinform and/or mislead you there are no physical things you can undertake that will help you protect yourself. For example against a burglar you might close / lock your door.</p>

<p><em>Another one&#39;s books are difficult to read</em></p>

<p>Meaning you do not know what goes on in someone else&#39;s headspace. So ask for it.</p>

<p><em>You cannot battle figments of the imagination</em></p>

<p>If someone thinks something has happened a certain way and refuses to listen to new information you have a broken signal processor and therefore communication is impossible.</p>

<p><a href="https://stealthycoder.writeas.com/tag:thoughts" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">thoughts</span></a></p>
]]></content:encoded>
      <guid>https://stealthycoder.writeas.com/being-human</guid>
      <pubDate>Tue, 08 Jan 2019 18:16:50 +0000</pubDate>
    </item>
    <item>
      <title>Right here, right now</title>
      <link>https://stealthycoder.writeas.com/right-here-right-now?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[How often have you heard you should only live in the moment, experience everything just as it comes in holding no judgement to it? !--more--&#xA;&#xA;I find it difficult to just live in the moment like that because I feel you should not throw away your past like that. You are who you are because of a multitude of influences of which past experiences are certainly one. I think you can definitely just enjoy something without worrying or overthinking and you should. That does not mean to go ahead and start living from moment to moment not assigning any value to those moments and being in an infinite feedback loop to which there is no outcome. As I have postulated earlier this to me becomes meaningless. &#xA;&#xA;I think firstly accept the state you are in and that is the basis from which to move forward. Always keep moving, slow and sluggish or lightning fast or something in between. The tempo and cadence are always changing but you have to keep moving. Along the way whatever the outcome you will have a story to tell. Maybe a boring one, maybe an exciting one or maybe even an interesting one. The point is you will have a story to tell and know that there are always people willing to listen. &#xA;&#xA;thoughts]]&gt;</description>
      <content:encoded><![CDATA[<p>How often have you heard you should only live in the moment, experience everything just as it comes in holding no judgement to it? </p>

<p>I find it difficult to just live in the moment like that because I feel you should not throw away your past like that. You are who you are because of a multitude of influences of which past experiences are certainly one. I think you can definitely just enjoy something without worrying or overthinking and you should. That does not mean to go ahead and start living from moment to moment not assigning any value to those moments and being in an infinite feedback loop to which there is no outcome. As I have postulated earlier this to me becomes meaningless.</p>

<p>I think firstly accept the state you are in and that is the basis from which to move forward. Always keep moving, slow and sluggish or lightning fast or something in between. The tempo and cadence are always changing but you have to keep moving. Along the way whatever the outcome you will have a story to tell. Maybe a boring one, maybe an exciting one or maybe even an interesting one. The point is you will have a story to tell and know that there are always people willing to listen.</p>

<p><a href="https://stealthycoder.writeas.com/tag:thoughts" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">thoughts</span></a></p>
]]></content:encoded>
      <guid>https://stealthycoder.writeas.com/right-here-right-now</guid>
      <pubDate>Tue, 08 Jan 2019 18:30:50 +0000</pubDate>
    </item>
    <item>
      <title>CRLF</title>
      <link>https://stealthycoder.writeas.com/crlf?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[What now?! Another abbreviation in this gotta type fast with fewest characters possible but still convey the most information possible? Well for us developers the chance is high that you had to search something with those four chars and an Operating System as the search term. !--more--&#xA;&#xA;Meaning&#xA;The 4 chars are actually two pairs of two chars. The first is CR and the second is LF. CR stands for Carriage Return and LF stands for Line Feed.&#xA;&#xA;Typewriter&#xA;Remember those old physical machines where you put whitened wood pulp in and using keys ran into that pulp some iron oxide on a ribbon. Yes, typewriters indeed. Wonderful mechanical machines that made life easier for humans. Now on those machines the sheet of paper would move side to side and up and down. The act of moving back to the beginning is called Carriage Return. The act of moving the sheet of paper is called Line Feeding. See how the terms translate well into modern computers and the terminals they are being run in. &#xA;&#xA;Side note&#xA;So on modern Operating Systems there exists a number of terminals or shells. Underwater they are called tty devices, or TeleTypewriter devices. That was because the first type of digital typewriters had a monitor and a typewriter interface. So even more evidence of history and how it all ties together.&#xA;&#xA;CRLF cont.&#xA;Ok sorry for the detour but it serves a purpose. Operating Systems interpret those characters differently. On Windows you have to do the same action as on a physical typewriter. Return the carriage to the beginning and feed in a new line. Therefore they use CRLF as the ending. On GNU/Linux and derivatives only feeding a line is necessary. Therefore they have LF only line endings. What does it mean then when you run CRLF file on GNU/Linux and co? Well the shell will do the following. Move the cursor back to the beginning and then execute that line and go to the next but there is no more line endings at the end there remains your command as a garbage input. Garbage in means garbage out. So the scripts usually fail. On Windows the same can happen but the system itself is very good at making sure there never is a singular LF if it can help it. &#xA;&#xA;Docker&#xA;What has Docker got to do with this I hear you ask? Ever noticed how most Dockerfile files have got all kinds of RUN commands and not just copy in a shell script and run that? I thought it was much simpler to maintain and read and so I did it. Thinking of how clever I was I suddenly had a team member with Windows and Docker did not work?!?! NANI?!?! After debugging the crap out of it I realized it was CRLF related. Solution is fairly simple though, not use shell scripts unless you copy them in already from a GNU/Linux system or download then from the web. So fellow human software engineers, when using Docker use RUN commands and maybe some staged builds. More on that in a future post/ future posts.&#xA;&#xA;#thoughts #devops ]]&gt;</description>
      <content:encoded><![CDATA[<p>What now?! Another abbreviation in this gotta type fast with fewest characters possible but still convey the most information possible? Well for us developers the chance is high that you had to search something with those four chars and an Operating System as the search term. </p>

<h2 id="meaning" id="meaning">Meaning</h2>

<p>The 4 chars are actually two pairs of two chars. The first is <em>CR</em> and the second is <em>LF</em>. <em>CR</em> stands for <em>Carriage Return</em> and <em>LF</em> stands for <em>Line Feed</em>.</p>

<h2 id="typewriter" id="typewriter">Typewriter</h2>

<p>Remember those old physical machines where you put whitened wood pulp in and using keys ran into that pulp some iron oxide on a ribbon. Yes, typewriters indeed. Wonderful mechanical machines that made life easier for humans. Now on those machines the sheet of paper would move side to side and up and down. The act of moving back to the beginning is called Carriage Return. The act of moving the sheet of paper is called Line Feeding. See how the terms translate well into modern computers and the terminals they are being run in.</p>

<h3 id="side-note" id="side-note">Side note</h3>

<p>So on modern Operating Systems there exists a number of terminals or shells. Underwater they are called tty devices, or TeleTypewriter devices. That was because the first type of digital typewriters had a monitor and a typewriter interface. So even more evidence of history and how it all ties together.</p>

<h2 id="crlf-cont" id="crlf-cont">CRLF cont.</h2>

<p>Ok sorry for the detour but it serves a purpose. Operating Systems interpret those characters differently. On Windows you have to do the same action as on a physical typewriter. Return the carriage to the beginning and feed in a new line. Therefore they use CRLF as the ending. On GNU/Linux and derivatives only feeding a line is necessary. Therefore they have LF only line endings. What does it mean then when you run CRLF file on GNU/Linux and co? Well the shell will do the following. Move the cursor back to the beginning and then execute that line and go to the next but there is no more line endings at the end there remains your command as a garbage input. Garbage in means garbage out. So the scripts usually fail. On Windows the same can happen but the system itself is very good at making sure there never is a singular LF if it can help it.</p>

<h2 id="docker" id="docker">Docker</h2>

<p>What has Docker got to do with this I hear you ask? Ever noticed how most Dockerfile files have got all kinds of RUN commands and not just copy in a shell script and run that? I thought it was much simpler to maintain and read and so I did it. Thinking of how clever I was I suddenly had a team member with Windows and Docker did not work?!?! NANI?!?! After debugging the crap out of it I realized it was CRLF related. Solution is fairly simple though, not use shell scripts unless you copy them in already from a GNU/Linux system or download then from the web. So fellow human software engineers, when using Docker use RUN commands and maybe some staged builds. More on that in a future post/ future posts.</p>

<p><a href="https://stealthycoder.writeas.com/tag:thoughts" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">thoughts</span></a> <a href="https://stealthycoder.writeas.com/tag:devops" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">devops</span></a></p>
]]></content:encoded>
      <guid>https://stealthycoder.writeas.com/crlf</guid>
      <pubDate>Thu, 10 Jan 2019 09:23:21 +0000</pubDate>
    </item>
    <item>
      <title>Oath and protection</title>
      <link>https://stealthycoder.writeas.com/oath-and-protection?pk_campaign=rss-feed</link>
      <description>&lt;![CDATA[Some of you might be familiar with the Hippocratic Oath taken by medical personnel. It states amongst its main lines that you shall not intentionally harm other human beings. That means use your knowledge for healing and not killing or maiming people. Not denying medical aid to whomever needs it. There are quite a few scenarios covered by this statement. !--more--&#xA;&#xA;In software development there is no such real thing. However, there exists the Archimedean Oath. It states amongst its main lines you will do to the best of your capabilities to ensure your work and knowledge is not used for nefarious purposes. You will also strive to become more knowledgeable. There are more statements like this. &#xA;&#xA;So why do I state that this Oath exists and why is it necessary for you to know about it. Well I declined a project on this basis. I will not say what they do because then you will figure out the company and I am under NDA. Needless to say I am against the project and therefore will not work on this. &#xA;&#xA;It makes for a stronger statement knowing about this oath and your ability to reference it confidently. &#xA;&#xA;thoughts]]&gt;</description>
      <content:encoded><![CDATA[<p>Some of you might be familiar with the Hippocratic Oath taken by medical personnel. It states amongst its main lines that you shall not intentionally harm other human beings. That means use your knowledge for healing and not killing or maiming people. Not denying medical aid to whomever needs it. There are quite a few scenarios covered by this statement. </p>

<p>In software development there is no such real thing. However, there exists the Archimedean Oath. It states amongst its main lines you will do to the best of your capabilities to ensure your work and knowledge is not used for nefarious purposes. You will also strive to become more knowledgeable. There are more statements like this.</p>

<p>So why do I state that this Oath exists and why is it necessary for you to know about it. Well I declined a project on this basis. I will not say what they do because then you will figure out the company and I am under NDA. Needless to say I am against the project and therefore will not work on this.</p>

<p>It makes for a stronger statement knowing about this oath and your ability to reference it confidently.</p>

<p><a href="https://stealthycoder.writeas.com/tag:thoughts" class="hashtag" rel="nofollow"><span>#</span><span class="p-category">thoughts</span></a></p>
]]></content:encoded>
      <guid>https://stealthycoder.writeas.com/oath-and-protection</guid>
      <pubDate>Wed, 23 Jan 2019 09:55:20 +0000</pubDate>
    </item>
  </channel>
</rss>