Solidity & Smart Contracts
Solidity is the language for writing Smart Contracts, which are a very essential part of Ethereum based applications. Here is a set of resources for you to learn solidity and implement smart contracts.
Ethereum was developed and was written in Solidity. You can find the repository on github at ethereum/solidity.
FreeCodeCamp has some curated resources for learning this.
You can learn Solidity and Smart Contracts in Python from this video by FreeCodeCamp. The same in Javascript can be found in this video.
FreeCodeCamp also has videos on how to build your first Blockchain App using Ethereum and a full course on Ethereum, Blockchain Development, Smart Contracts and the EVM.
Here are some best practices on how to write smart contracts.
DApp University has covered a lot on these topics too, for example in this playlist.
Here is a blog post on Medium which you may like. Several such blogs are written by developers with interest in developig smart contracts. You can avail them on the interent by searching using the right keywords. One more I found was: Learning Solidity - A Starting Guide.
There are books listed in the books section which will help you out here.
The course on Codedamn - Learn Solidity can also prove pretty useful.