First, let me start be saying I believe that everyone should learn how to program, the same way everyone should learn to read and write. In today's world programming is the new literacy, so everyone should spend some time learning programming fundamentals. That said, there is a big difference between being familiar with a topic (know how to write) and being a professional (being a published author).
Keeping that in mind, I always have a little bit of trepidation when I hear a CMO, CEO, etc. use the phrase "I know enough programming to be dangerous". If this means they know enough to know when to call in a professional and to listen to that professional's advice, that's great. If it means they want to be more "hands on", that can often spell disaster. I've talked about this phenomenon before, given the complexity of today's modern web frameworks, but I think it's important to underscore how important this is.
Becoming a professional in any serious field takes time, dedication and aptitude, something Greg Jorgensen underscores in his article, Sorry, Digital Ad Exec, I Probably Don’t Want To Work For You. His key points include:
People who are hobby programmers, often make the mistake of misestimated the scale of a programming job. The disconnect often boils down to layered on complexity. In other words, to build an app with twice as many features it will take more than twice the time because of the complex interactions between elements. An application like Facebook (which on the surface may not even appear that complex) has required hundreds of millions of dollars in programming time, yet for the amateur, they may only perceive a few features that line up with code libraries they have worked with. This paired with the principal that simple is not easy, means that there is often a mismatch in perception and execution.
Home improvement stores have staked out a niche, encouraging people to tackle their own home projects. The infrastructure provided there helps guide people to make good choices about:
Unfortunately, there are no such stores for programming, and often getting the wrong people involved at the beginning of a project can be very expensive in the long term. Many people don't realize that large scale websites now cost in the hundreds of thousands of dollars to design and build. Starting with the wrong foundation, can mean a complete teardown later on. For some businesses this means it can be years before their poorly planned initial build can be funded and replaced.
Keeping the potential cost in mind, and the dangers of "doing it yourself", where does that leave a marketing person in need of a website? The answer is that they should find a vendor and choose them very carefully. Keep the following in mind and ask these questions:
In the end, the goal of educating oneself should never be to "become dangerous". Instead I'd like to see a day where stakeholders come to the table claiming to "know enough to know when I need to bring in a professional". As a programmer, that's certainly how I approach house construction.