For the visuals, I use Honey Select 2. It’s a NSFW game developed by Illusion (a studio that, sadly, has since shut down). It comes with a tool called NeoStudio, which lets you create scenes featuring the characters you've made in the game. Daz is another solid option, though I’m personally less into its visual style.
If you go with the first option, I highly recommend downloading BetterRepack — it gives you a strong modded foundation to work with right out of the box.
In both cases, there are plenty of tutorials online to guide you through the process.
To edit my visuals, I use Gimp, a free alternative to Photoshop.
As for the code, I use Ren'Py, which is a great framework for building visual novels in a pretty intuitive way. It's built heavily on Python, so any knowledge you have of that language will be really useful if you want to create more advanced features.