But that is just vertex shaders for things like Shadertoys.
There is much more to computer graphics or GPGPU than this though, Im still learning about that myself X).
[1] https://www.youtube.com/watch?v=eKtsY7hYTPg [2]https://www.youtube.com/watch?v=kfM-yu0iQBk
My main approach to writing shaders is to look at existing programs (e.g. Blender) and see what techniques are in use. The Google Filament renderer documentation [0] is also really good when it comes to BDSF functions.
Some papers from Unreal Engine might also help, such as "Real Shading in Unreal Engine 4" [1]
[0] https://google.github.io/filament/Filament.md.html
[1] https://cdn2.unrealengine.com/Resources/files/2013SiggraphPr...
Programming the shaders themselves are pretty simple imo, they're just pure functions that return color data or triangle positions. The syntax might be a little different than you're used to depending on the shader language, but it should be easy enough to pick up in a day.
If you want to write compute shaders for computation, then it gets a lot more tricky and you need to spend some time learning about memory accesses, the underlying hardware, and profiling.
You need to visit http://thebookofshaders.com/