Using hexadecimal and MyEtherWallet, you can encode permanent messages onto the Ethereum blockchain. People will then be able read these messages on Etherscan if they know where and how to look.
Go to a text to hexadecimal conversion tool and convert the message you would like to send. Make sure to swap the two fields so that you're converting text to hex. When you swap the fields, a selector will appear below that you can use to ensure no spaces are included in the final hex output:
Go to MyEtherWallet and connect your existing wallet to the site by selecting the “Access My Wallet” button:
Choose your connection type. I use Rainbow, so I select the option with WalletConnect.
Once connected, navigate to “Send Transaction” and toggle the “Advanced” setting that is on this screen. An “Add data” field will appear that you can paste your hexadecimal message into. Make sure this field starts with "0x" or else it won't let you send. Update: MyEtherWallet updated their UI since this guide was written. It should work the same, but if you want to try using the old version it can be accessed here.
Fill out the rest of the transaction information. Leave ETH at 0 or if you're using Rainbow, choose a tiny amount like 0.0001 ETH. Then click send and sign the transaction with your wallet to finish!
Go to the page on Etherscan for the transaction that contains the encoded message.
Scroll down and tap "Click to see More". Then, select "View Input As" > "UTF-8". The data will be converted from hexadecimal back to plain text.