title: Solidity: Why does a faulty input set my boolean to "true"?
body: <p>I'm using remix.ethereum.org</p>
  
  <p>I wrote this very simple smart contract:</p>
  
  <pre><code>pragma solidity ^0.4.19;
  
  contract TicTacToe {
      bool myBool = false;
  
      uint8 myUint8;
      uint256 myUint256;
  
      string myString = "myString";
      bytes myBytes = "myString";
  
      function setMyBoolean(bool myBoolArgument) public {
          myBool = myBoolArgument;
      }
  
      function getMyBoolean() public view returns(bool) {
        return myBool;
      }
  
  }
  </code></pre>
  
  <p>As you can see the default value for <code>myBool</code> is <strong>false</strong>
  I can change this by calling the function <code>setMyBoolean</code>. </p>
  
  <p>If I use this argument and type in <strong>true</strong>, <code>myBool</code> will be set to <strong>true</strong> 
  If I use this argument and type in <strong>false</strong>, <code>myBool</code> will be set to <strong>false</strong></p>
  
  <p>But if I type in any other combination of letters, <code>myBool</code> will be set to <strong>true</strong> as well. This surprises me because the default setting for <code>myBool</code> is <strong>false</strong>.</p>
  
  <p>Why does this happen?</p>