Well, I don't know much about electronics, but as a software developer I've got something in mind.
I'd consider digital circuits those which are solely based on binary logic. If something is one, another thing is zero. In analog circuits however there is not just 1 or 0, there's a whole range of values. Imagine charging up a capacitor, it's not either full or empty. It can be half full, or half empty which is important to consider. Or look at an oscilloscope, if you can measure a "clean" square wave I'd say it's digital, every other wave is analog.
That is pretty good, but would be better if you said "...consider digital
signals those...".
The problem is that digital logic gates are merely analogue circuits designed to spend most of the time saturated against Vcc or Gnd. It is usually possible to bias them so they operate in the linear region.
Consider also flip-flops, which most people think of as being in a 0 or 1 state. But when clocking and switching there
will be a small window where the flip flop is deciding "which way to go". Hit that window and the flip-flop will enter a metastable state for an indefinite time. Some circuits
rely on metastability, and the higher the proportion of time spent in the metastable state, the better the circuit is performing! (Software equivalent of metastability: a distributed two-phase ACID transaction failing).
Consider also logic simulators, in which each signal can, often, be assigned 9 different values.