When people who do not have a background in programming  get in touch with me, they usually ask the following questions.
Can I build a Dialogflow bot without complex coding?
Every Dialogflow bot has 4 layers, or components.
Conversation layer - this is the stuff you do inside the Dialogflow console
Webhook layer - when you wish to add business logic to your bot, you will write some code and put it on a server somewhere and point to the code using the Fulfillment URL.
UI layer - you also need a user interface for the bot usually. Example: a website chatbot needs a web UI, a Slack bot will use Slack's user interface (plus appropriate rich controls).
Middleware layer - the code which connects your UI layer (e.g. Slack bot) with your Dialogflow bot
Of these 4 layers, you do need to write code for the webhook layer and the middleware layer. You may need to write code for the UI layer. 
At the end of the day, I don't think it is possible to create a Dialogflow bot without having a developer on your team. 
How can I avoid relying on others (e.g. developers)?
At this point, Dialogflow is not a no-code, drag-and-drop tool. You do need to rely on someone who can write code to build out your webhook business logic.
How can I understand the concepts and when/how to use them?
Once you learn the building blocks of Dialogflow, you will have a good understanding of the basic concepts as well as when/how to use them. The key is to learn the concepts systematically without getting confused. 
How do I get to know what I don't know about Dialogflow?
This is an extension of the previous point. Here, people are usually talking about gaps in their knowledge.
There are three things you should do to get around this problem:
- learn the basics systematically (unfortunately, Dialogflow's online documentation is not very helpful for this)
- make notes about what you don't understand as you learn the basics. These are the gaps in your knowledge.
- distinguish between what you don't know and what you cannot (yet) work on
E.g. You may not know that you need to add an Action field to each intent which calls a webhook. The webhook code will look at the value in the Action field before deciding what code to execute (i.e. add two numbers, or multiply them?)
But even after you know this information, you will probably be able to fill out the appropriate value for the action but not actually implement the webhook logic. You now know something you didn't know before. But you do need to rely on the developer to get the task done.
Based on what I have written till now, there are 3 options for people who don't have a programming background.
1 Learn the absolute minimum, continue to rely on others
You can spend only a small amount of time learning the absolute basics, and rely on others in your team to build out the complex functionality
2 Learn to code
This would require you to spend a fair amount of time. If you do have the time, this is the best option simply because you now have multiple valuable skills.
3 Learn just enough coding for building Dialogflow bots
This is different from learning how to code. In this case, you will learn "just enough programming" to be dangerous 🙂
But jokes aside, the idea here is that you can get a reasonable tradeoff between time spent and the need to continue to rely on others to build out your project.
If you choose option 3, I can help.
I am creating a service which combines 1-on-1 Skype coaching and course material specific for non-programers. It is designed to help you
- learn Dialogflow concepts systematically
- get a basic introduction to programming by building some example bots
- these are not toy bots
- you will be doing data access (e.g. saving user's data to a table) when you are done
- understand things like APIs and how they are "glued" together to achieve business goals
- this is a skill which is becoming more important for non-programmers
Remember that you are not going to be applying for developer jobs after going through my training. But you can
- use Dialogflow bots as a way to constrain and define the curriculum (so you don't waste time learning things you don't need)
- learn enough to know what you don't know
- build out simple prototypes by yourself without relying on others
The service will consists of three 30 minute 1-on-1 Skype coaching calls plus access to some new course material I am creating. You will be using NodeJS as the programming language for the projects. I expect that you should be able to go through the material in about a month.
What if I am completely non-technical?
If you are completely non-technical, this service will not help.
I expect that people who are going through this service have already done at least one of the following three things:
- created simple pivot tables in Excel
- set up custom Google Analytics reports
- used online software like Airtable or similar to store some kind of user data