Creating realistic procedural material
Before even jumping into the node editor, identify the different components you will need for your shader. The first thing to notice is that the surface is completely diffuse. There are no subsurface or glossy components visible. The color consists of a bright yellow and a darker reddish/orangy color. The parts that are facing upwards are paler, weathered by rain and sun. You can get this gradient by using the Dot output of a Normal node. Adjust the contrast of the output with a ColorRamp and use it to mix between the base color and the secondary color.



The dirt that settles in the crevices can be achieved using the Pointiness output with very high contrast. Use this to multiply the color with black to darken the crevices.



In order to randomize the color in hue, value and saturation, you will need a Noise Texture. In this case, I split it up into R, G, and B to work with different patterns without using multiple noise textures. The combined RGB of the noise is also fed into a Bump node to give the surface more roughness.



This would be the base for your shader, the work isn't done here! Now you can start to bring in realism by combining many different noise patterns, by varying the bump and by introducing more inaccuracies in color and roughness using the same simple steps as shown above.